Loading...
Searching...
No Matches
ITHACAPOD::PODTemplate< T > Class Template Reference
Inheritance diagram for ITHACAPOD::PODTemplate< T >:
ITHACAPOD::PODTemplateH1< T, G >

Public Member Functions

 PODTemplate (Parameters *myParameters, const Foam::word &myfield_name, const word &mySnapshots_path="default_path")
void define_paths ()
void computeMeanField ()
void appendMeanfieldtoSpatialModes (Foam::PtrList< T > &spatialModes)
void findTempFile (Eigen::MatrixXd *covMat, int *index1, int *index2)
Foam::word nameTempCovMatrix (int i, int j)
void saveTempCovMatrix (Eigen::MatrixXd &covMatrix, int i, int j)
void deleteTempCovMatrix (int i, int j)
void deletePreviousTempCovMatrix_N (int *valI, int *valJ, int i, int j, int N)
virtual Eigen::MatrixXd buildCovMatrix ()
void addCovMatrixTriCoeff (Eigen::MatrixXd &covMatrix, Foam::PtrList< T > &snapshots, indexTri &indTri)
void addCovMatrixSquareCoeff (Eigen::MatrixXd &covMatrix, Foam::PtrList< T > &snapshots1, Foam::PtrList< T > &snapshots2, indexSquare &indSquare)
void diagonalisation (Eigen::MatrixXd &covMatrix, Eigen::VectorXd &eigenValueseig, Eigen::MatrixXd &eigenVectoreig)
Foam::PtrList< T > computeSpatialModes (Eigen::VectorXd &eigenValueseig, Eigen::MatrixXd &eigenVectoreig)
Eigen::MatrixXd computeTemporalModes (Eigen::VectorXd &eigenValueseig, Eigen::MatrixXd &eigenVectoreig)
void getModes (Foam::PtrList< T > &spatialModes, Eigen::MatrixXd &temporalModes, Eigen::MatrixXd &temporalModesSimulation, Eigen::MatrixXd &covMatrix)
Eigen::MatrixXd computeSimulationTemporalModes (Foam::PtrList< T > &spatialModes)
void compute_lambda (Eigen::MatrixXd &temporalModes)
const T & get_mean () const
void set_b_centeredOrNot (const Foam::label &input_b_centeredOrNot)
void lift (Foam::PtrList< T > &snapshots)
void lift (T &snapshot)
void set_snapFolderParams (label nSnapshot=-1, label nSnapshotSimulation=-1, label startTime=-1, label endTime=-1)

Protected Attributes

StoredParametersm_parameters
Foam::word field_name
const Foam::fileName & casenameData
Foam::label l_nSnapshot
const Foam::label l_nBlocks
Foam::label l_nmodes
Foam::word l_hilbertSp
double weightH1
const double weightBC
const Foam::word patchBC
Foam::label l_startTime
Foam::label l_endTime
Foam::label l_nSnapshotSimulation
const Foam::label l_endTimeSimulation
fileName snapshotsPath
Foam::instantList timeFolders
Foam::fileName name_covMatrix
Foam::word folder_covMatrix
bool exist_covMatrix
Foam::fileName name_eigenValues
Foam::fileName name_eigenValuesNormalized
Foam::fileName name_cumEigenValues
Foam::fileName name_eigenVector
Foam::word folder_eigen
bool exist_eigenDecomposition
Foam::word folder_spatialModes
bool exist_spatialModes
Foam::word folder_temporalModes
bool exist_temporalModes
Foam::word folder_temporalModesSimulation
bool exist_temporalModesSimulation
T * f_field
bool b_centeredOrNot
T * f_meanField
Foam::word folder_mean
bool exist_noMean
Eigen::VectorXd eigenValueseigLam
Eigen::VectorXd lambda
const Foam::word w_eigensolver
const int i_precision
const std::_Ios_Fmtflags ios_outytpe
const Foam::Time runTime2
Eigen::MatrixXi inletIndex
bool lifting
Foam::PtrList< T > liftfield

Detailed Description

template<typename T>
class ITHACAPOD::PODTemplate< T >

Definition at line 44 of file PODTemplate.H.

Constructor & Destructor Documentation

◆ PODTemplate()

template<typename T>
template ITHACAPOD::PODTemplate< T >::PODTemplate ( Parameters * myParameters,
const Foam::word & myfield_name,
const word & mySnapshots_path = "default_path" )

Definition at line 8 of file PODTemplate.C.

◆ ~PODTemplate()

template<typename T>
template ITHACAPOD::PODTemplate< T >::~PODTemplate ( )
virtual

Definition at line 77 of file PODTemplate.C.

Member Function Documentation

◆ addCovMatrixSquareCoeff()

template<typename T>
template void ITHACAPOD::PODTemplate< T >::addCovMatrixSquareCoeff ( Eigen::MatrixXd & covMatrix,
Foam::PtrList< T > & snapshots1,
Foam::PtrList< T > & snapshots2,
indexSquare & indSquare )

Definition at line 644 of file PODTemplate.C.

◆ addCovMatrixTriCoeff()

template<typename T>
template void ITHACAPOD::PODTemplate< T >::addCovMatrixTriCoeff ( Eigen::MatrixXd & covMatrix,
Foam::PtrList< T > & snapshots,
indexTri & indTri )

Definition at line 620 of file PODTemplate.C.

◆ appendMeanfieldtoSpatialModes()

template<typename T>
template void ITHACAPOD::PODTemplate< T >::appendMeanfieldtoSpatialModes ( Foam::PtrList< T > & spatialModes)

Definition at line 220 of file PODTemplate.C.

◆ buildCovMatrix()

template<typename T>
template Eigen::MatrixXd ITHACAPOD::PODTemplate< T >::buildCovMatrix ( )
virtual

Definition at line 419 of file PODTemplate.C.

◆ compute_lambda()

template<typename T>
template void ITHACAPOD::PODTemplate< T >::compute_lambda ( Eigen::MatrixXd & temporalModes)

Definition at line 959 of file PODTemplate.C.

◆ computeMeanField()

template<typename T>
template void ITHACAPOD::PODTemplate< T >::computeMeanField ( )

Definition at line 147 of file PODTemplate.C.

◆ computeSimulationTemporalModes()

template<typename T>
template Eigen::MatrixXd ITHACAPOD::PODTemplate< T >::computeSimulationTemporalModes ( Foam::PtrList< T > & spatialModes)

Definition at line 907 of file PODTemplate.C.

◆ computeSpatialModes()

template<typename T>
template PtrList< volScalarField > ITHACAPOD::PODTemplate< T >::computeSpatialModes ( Eigen::VectorXd & eigenValueseig,
Eigen::MatrixXd & eigenVectoreig )

Definition at line 768 of file PODTemplate.C.

◆ computeTemporalModes()

template<typename T>
template Eigen::MatrixXd ITHACAPOD::PODTemplate< T >::computeTemporalModes ( Eigen::VectorXd & eigenValueseig,
Eigen::MatrixXd & eigenVectoreig )

Definition at line 828 of file PODTemplate.C.

◆ define_paths()

template<typename T>
template void ITHACAPOD::PODTemplate< T >::define_paths ( )

Definition at line 85 of file PODTemplate.C.

◆ deletePreviousTempCovMatrix_N()

template<typename T>
template void ITHACAPOD::PODTemplate< T >::deletePreviousTempCovMatrix_N ( int * valI,
int * valJ,
int i,
int j,
int N )

Definition at line 378 of file PODTemplate.C.

◆ deleteTempCovMatrix()

template<typename T>
template void ITHACAPOD::PODTemplate< T >::deleteTempCovMatrix ( int i,
int j )

Definition at line 366 of file PODTemplate.C.

◆ diagonalisation()

template<typename T>
template void ITHACAPOD::PODTemplate< T >::diagonalisation ( Eigen::MatrixXd & covMatrix,
Eigen::VectorXd & eigenValueseig,
Eigen::MatrixXd & eigenVectoreig )

Definition at line 670 of file PODTemplate.C.

◆ findTempFile()

template<typename T>
template void ITHACAPOD::PODTemplate< T >::findTempFile ( Eigen::MatrixXd * covMat,
int * index1,
int * index2 )

Definition at line 229 of file PODTemplate.C.

◆ get_mean()

template<typename T>
const T & ITHACAPOD::PODTemplate< T >::get_mean ( ) const
inline

Definition at line 255 of file PODTemplate.H.

◆ getModes()

template<typename T>
template void ITHACAPOD::PODTemplate< T >::getModes ( Foam::PtrList< T > & spatialModes,
Eigen::MatrixXd & temporalModes,
Eigen::MatrixXd & temporalModesSimulation,
Eigen::MatrixXd & covMatrix )

Definition at line 861 of file PODTemplate.C.

◆ lift()

template<typename T>
void ITHACAPOD::PODTemplate< T >::lift ( T & snapshot)

Definition at line 993 of file PODTemplate.C.

◆ nameTempCovMatrix()

template<typename T>
template word ITHACAPOD::PODTemplate< T >::nameTempCovMatrix ( int i,
int j )

Definition at line 343 of file PODTemplate.C.

◆ saveTempCovMatrix()

template<typename T>
template void ITHACAPOD::PODTemplate< T >::saveTempCovMatrix ( Eigen::MatrixXd & covMatrix,
int i,
int j )

Definition at line 356 of file PODTemplate.C.

◆ set_b_centeredOrNot()

template<typename T>
void ITHACAPOD::PODTemplate< T >::set_b_centeredOrNot ( const Foam::label & input_b_centeredOrNot)
inline

Definition at line 260 of file PODTemplate.H.

◆ set_snapFolderParams()

template<typename T>
void ITHACAPOD::PODTemplate< T >::set_snapFolderParams ( label nSnapshot = -1,
label nSnapshotSimulation = -1,
label startTime = -1,
label endTime = -1 )
inline

Definition at line 275 of file PODTemplate.H.

Member Data Documentation

◆ b_centeredOrNot

template<typename T>
bool ITHACAPOD::PODTemplate< T >::b_centeredOrNot
protected

Definition at line 114 of file PODTemplate.H.

◆ casenameData

template<typename T>
const Foam::fileName& ITHACAPOD::PODTemplate< T >::casenameData
protected

Definition at line 51 of file PODTemplate.H.

◆ eigenValueseigLam

template<typename T>
Eigen::VectorXd ITHACAPOD::PODTemplate< T >::eigenValueseigLam
protected

Definition at line 120 of file PODTemplate.H.

◆ exist_covMatrix

template<typename T>
bool ITHACAPOD::PODTemplate< T >::exist_covMatrix
protected

Definition at line 87 of file PODTemplate.H.

◆ exist_eigenDecomposition

template<typename T>
bool ITHACAPOD::PODTemplate< T >::exist_eigenDecomposition
protected

Definition at line 95 of file PODTemplate.H.

◆ exist_noMean

template<typename T>
bool ITHACAPOD::PODTemplate< T >::exist_noMean
protected

Definition at line 117 of file PODTemplate.H.

◆ exist_spatialModes

template<typename T>
bool ITHACAPOD::PODTemplate< T >::exist_spatialModes
protected

Definition at line 99 of file PODTemplate.H.

◆ exist_temporalModes

template<typename T>
bool ITHACAPOD::PODTemplate< T >::exist_temporalModes
protected

Definition at line 103 of file PODTemplate.H.

◆ exist_temporalModesSimulation

template<typename T>
bool ITHACAPOD::PODTemplate< T >::exist_temporalModesSimulation
protected

Definition at line 107 of file PODTemplate.H.

◆ f_field

template<typename T>
T* ITHACAPOD::PODTemplate< T >::f_field
protected

Definition at line 110 of file PODTemplate.H.

◆ f_meanField

template<typename T>
T* ITHACAPOD::PODTemplate< T >::f_meanField
protected

Definition at line 115 of file PODTemplate.H.

◆ field_name

template<typename T>
Foam::word ITHACAPOD::PODTemplate< T >::field_name
protected

Definition at line 49 of file PODTemplate.H.

◆ folder_covMatrix

template<typename T>
Foam::word ITHACAPOD::PODTemplate< T >::folder_covMatrix
protected

Definition at line 86 of file PODTemplate.H.

◆ folder_eigen

template<typename T>
Foam::word ITHACAPOD::PODTemplate< T >::folder_eigen
protected

Definition at line 94 of file PODTemplate.H.

◆ folder_mean

template<typename T>
Foam::word ITHACAPOD::PODTemplate< T >::folder_mean
protected

Definition at line 116 of file PODTemplate.H.

◆ folder_spatialModes

template<typename T>
Foam::word ITHACAPOD::PODTemplate< T >::folder_spatialModes
protected

Definition at line 98 of file PODTemplate.H.

◆ folder_temporalModes

template<typename T>
Foam::word ITHACAPOD::PODTemplate< T >::folder_temporalModes
protected

Definition at line 102 of file PODTemplate.H.

◆ folder_temporalModesSimulation

template<typename T>
Foam::word ITHACAPOD::PODTemplate< T >::folder_temporalModesSimulation
protected

Definition at line 106 of file PODTemplate.H.

◆ i_precision

template<typename T>
const int ITHACAPOD::PODTemplate< T >::i_precision
protected

Definition at line 124 of file PODTemplate.H.

◆ inletIndex

template<typename T>
Eigen::MatrixXi ITHACAPOD::PODTemplate< T >::inletIndex
protected

Definition at line 129 of file PODTemplate.H.

◆ ios_outytpe

template<typename T>
const std::_Ios_Fmtflags ITHACAPOD::PODTemplate< T >::ios_outytpe
protected

Definition at line 125 of file PODTemplate.H.

◆ l_endTime

template<typename T>
Foam::label ITHACAPOD::PODTemplate< T >::l_endTime
protected

Definition at line 70 of file PODTemplate.H.

◆ l_endTimeSimulation

template<typename T>
const Foam::label ITHACAPOD::PODTemplate< T >::l_endTimeSimulation
protected

Definition at line 75 of file PODTemplate.H.

◆ l_hilbertSp

template<typename T>
Foam::word ITHACAPOD::PODTemplate< T >::l_hilbertSp
protected

Definition at line 60 of file PODTemplate.H.

◆ l_nBlocks

template<typename T>
const Foam::label ITHACAPOD::PODTemplate< T >::l_nBlocks
protected

Definition at line 55 of file PODTemplate.H.

◆ l_nmodes

template<typename T>
Foam::label ITHACAPOD::PODTemplate< T >::l_nmodes
protected

Definition at line 57 of file PODTemplate.H.

◆ l_nSnapshot

template<typename T>
Foam::label ITHACAPOD::PODTemplate< T >::l_nSnapshot
protected

Definition at line 53 of file PODTemplate.H.

◆ l_nSnapshotSimulation

template<typename T>
Foam::label ITHACAPOD::PODTemplate< T >::l_nSnapshotSimulation
protected

Definition at line 73 of file PODTemplate.H.

◆ l_startTime

template<typename T>
Foam::label ITHACAPOD::PODTemplate< T >::l_startTime
protected

Definition at line 68 of file PODTemplate.H.

◆ lambda

template<typename T>
Eigen::VectorXd ITHACAPOD::PODTemplate< T >::lambda
protected

Definition at line 121 of file PODTemplate.H.

◆ liftfield

template<typename T>
Foam::PtrList<T> ITHACAPOD::PODTemplate< T >::liftfield
protected

Definition at line 131 of file PODTemplate.H.

◆ lifting

template<typename T>
bool ITHACAPOD::PODTemplate< T >::lifting
protected

Definition at line 130 of file PODTemplate.H.

◆ m_parameters

template<typename T>
StoredParameters* ITHACAPOD::PODTemplate< T >::m_parameters
protected

Definition at line 47 of file PODTemplate.H.

◆ name_covMatrix

template<typename T>
Foam::fileName ITHACAPOD::PODTemplate< T >::name_covMatrix
protected

Definition at line 85 of file PODTemplate.H.

◆ name_cumEigenValues

template<typename T>
Foam::fileName ITHACAPOD::PODTemplate< T >::name_cumEigenValues
protected

Definition at line 92 of file PODTemplate.H.

◆ name_eigenValues

template<typename T>
Foam::fileName ITHACAPOD::PODTemplate< T >::name_eigenValues
protected

Definition at line 90 of file PODTemplate.H.

◆ name_eigenValuesNormalized

template<typename T>
Foam::fileName ITHACAPOD::PODTemplate< T >::name_eigenValuesNormalized
protected

Definition at line 91 of file PODTemplate.H.

◆ name_eigenVector

template<typename T>
Foam::fileName ITHACAPOD::PODTemplate< T >::name_eigenVector
protected

Definition at line 93 of file PODTemplate.H.

◆ patchBC

template<typename T>
const Foam::word ITHACAPOD::PODTemplate< T >::patchBC
protected

Definition at line 66 of file PODTemplate.H.

◆ runTime2

template<typename T>
const Foam::Time ITHACAPOD::PODTemplate< T >::runTime2
protected

Definition at line 127 of file PODTemplate.H.

◆ snapshotsPath

template<typename T>
fileName ITHACAPOD::PODTemplate< T >::snapshotsPath
protected

Definition at line 79 of file PODTemplate.H.

◆ timeFolders

template<typename T>
Foam::instantList ITHACAPOD::PODTemplate< T >::timeFolders
protected

Definition at line 82 of file PODTemplate.H.

◆ w_eigensolver

template<typename T>
const Foam::word ITHACAPOD::PODTemplate< T >::w_eigensolver
protected

Definition at line 123 of file PODTemplate.H.

◆ weightBC

template<typename T>
const double ITHACAPOD::PODTemplate< T >::weightBC
protected

Definition at line 64 of file PODTemplate.H.

◆ weightH1

template<typename T>
double ITHACAPOD::PODTemplate< T >::weightH1
protected

Definition at line 62 of file PODTemplate.H.


The documentation for this class was generated from the following files: