Loading...
Searching...
No Matches
TurbDiffusionHyperreduction< volF, T, S > Class Template Reference

Public Member Functions

 TurbDiffusionHyperreduction (Parameters *myParameters, bool mgPoints_0_Neighborhoods_1, T &template_HRInterpField, S &template_HRSnapshotsField, volF *&meanU, PtrList< volF > &spatialModesU)
 Class TurbDiffusionHyperreduction Constructor.
 ~TurbDiffusionHyperreduction ()
 Class TurbDiffusionHyperreduction Destructor.
void precomputeTurbDiffusionFunctions (word &fieldToCompute)
 Precompute and save non polynomial field.
template<typename volGradF>
void computeDefTensor (volGradF tensorMeanU)
 Compute the symmetric tensor of the velocity modes on the magic points submesh.
void common_MeanHRInterpField ()
 Compute the interpolated field's mean on the magic points submesh.
void computeTurbDiffusionHyperreduction ()
 Compute the hyperreduction by callng other methods.

Protected Attributes

StoredParametersm_parameters
 Parameter object containing main information.
autoPtr< UnsteadyNSTurbithacaUnsteadyNSTurb
 Parameter object to evaluate interpolated functions.
autoPtr< HyperReduction< PtrList< S > > > ithacaHyperreduction
 Hyperreduction objects to choose magic points.
label l_nSnapshot
 Number of snapshot, also number of time step.
label l_startTime
 start time of the POD decomposition
label l_nSnapshotSimulation
 Number of Simulation snapshot, also number of time steps.
word snapshotsFolder
 Path to snapshots, number, start and end time indices for each HR POD. If -1, set automatically by the POD class.
label POD_nSnapshot = -1
label POD_startTime = -1
label POD_endTime = -1
template_HRInterpField
 Interpolated field template.
template_HRSnapshotsField
 Snapshots field template.
PtrList< volF > f_spatialModesU
 Pointer list of POD Modes of U.
volF * f_meanU
 Pointer of mean of U.
PtrList< S > f_spatialModesHR
Eigen::MatrixXd m_temporalModesHR
Eigen::MatrixXd m_temporalModesHRSimulation
Eigen::MatrixXd covMatrixHR
word folder_HR
 Export folder for HR operators.
Foam::Time runTime2
 Dummy Foam::Time object for mesh and submesh management.
bool mgPoints_0_Neighborhoods_1
 Boolean to include or not magic points' neighbourhood in the submesh 0 if only magicPoints and 1 if include magicNeighborhoods.
word HRMethod
word HRInterpField
word HRSnapshotsField
word ECPAlgo
bool interpFieldCenteredOrNot

Detailed Description

template<typename volF, typename T, typename S>
class TurbDiffusionHyperreduction< volF, T, S >

Definition at line 48 of file TurbDiffusionHyperreduction.H.

Constructor & Destructor Documentation

◆ TurbDiffusionHyperreduction()

template<typename volF, typename T, typename S>
template TurbDiffusionHyperreduction< volF, T, S >::TurbDiffusionHyperreduction ( Parameters * myParameters,
bool mgPoints_0_Neighborhoods_1,
T & template_HRInterpField,
S & template_HRSnapshotsField,
volF *& meanU,
PtrList< volF > & spatialModesU )

Class TurbDiffusionHyperreduction Constructor.

This class is used to perform the offline part of hyperreduction on a turbulent non-stationnary diffusion

Parameters
[in]myParametersStoredParameters object
[in]mgPoints_0_Neighborhoods_1boolean Include neighboroods in submesh or not
[in]template_HRInterpFieldvolScalarField or volVectorField Template of the interpolated field
[in]template_HRInterpFieldvolScalarField or volVectorField Template of the snapshots field
[in]meanUvolVectorField Mean of the velocity field
[in]spatialModesUPtrList<volVectorField> POD modes of the velocity field

Definition at line 39 of file TurbDiffusionHyperreduction.C.

◆ ~TurbDiffusionHyperreduction()

template<typename volF, typename T, typename S>
template TurbDiffusionHyperreduction< volF, T, S >::~TurbDiffusionHyperreduction ( )

Class TurbDiffusionHyperreduction Destructor.

Definition at line 67 of file TurbDiffusionHyperreduction.C.

Member Function Documentation

◆ common_MeanHRInterpField()

template<typename volF, typename T, typename S>
template void TurbDiffusionHyperreduction< volF, T, S >::common_MeanHRInterpField ( )

Compute the interpolated field's mean on the magic points submesh.

Saves the result in the StoredParameters object

Definition at line 101 of file TurbDiffusionHyperreduction.C.

◆ computeDefTensor()

template<typename volF, typename T, typename S>
template<typename volGradF>
template void TurbDiffusionHyperreduction< volF, T, S >::computeDefTensor ( volGradF tensorMeanU)

Compute the symmetric tensor of the velocity modes on the magic points submesh.

Saves the result in the StoredParameters object

Definition at line 75 of file TurbDiffusionHyperreduction.C.

◆ computeTurbDiffusionHyperreduction()

template<typename volF, typename T, typename S>
template void TurbDiffusionHyperreduction< volF, T, S >::computeTurbDiffusionHyperreduction ( )

Compute the hyperreduction by callng other methods.

Generic function working to hyperreduce any of the possible fields

Definition at line 398 of file TurbDiffusionHyperreduction.C.

◆ precomputeTurbDiffusionFunctions()

template<typename volF, typename T, typename S>
template void TurbDiffusionHyperreduction< volF, T, S >::precomputeTurbDiffusionFunctions ( word & fieldToCompute)

Precompute and save non polynomial field.

Precompute either the interpolated fields or the snapshot fields depending on the argument

Parameters
[in]fieldToComputeword Name of the field to compute

Definition at line 119 of file TurbDiffusionHyperreduction.C.

Member Data Documentation

◆ covMatrixHR

template<typename volF, typename T, typename S>
Eigen::MatrixXd TurbDiffusionHyperreduction< volF, T, S >::covMatrixHR
protected

Definition at line 97 of file TurbDiffusionHyperreduction.H.

◆ ECPAlgo

template<typename volF, typename T, typename S>
word TurbDiffusionHyperreduction< volF, T, S >::ECPAlgo
protected

Definition at line 119 of file TurbDiffusionHyperreduction.H.

◆ f_meanU

template<typename volF, typename T, typename S>
volF* TurbDiffusionHyperreduction< volF, T, S >::f_meanU
protected

Pointer of mean of U.

Definition at line 85 of file TurbDiffusionHyperreduction.H.

◆ f_spatialModesHR

template<typename volF, typename T, typename S>
PtrList<S> TurbDiffusionHyperreduction< volF, T, S >::f_spatialModesHR
protected

Definition at line 88 of file TurbDiffusionHyperreduction.H.

◆ f_spatialModesU

template<typename volF, typename T, typename S>
PtrList<volF> TurbDiffusionHyperreduction< volF, T, S >::f_spatialModesU
protected

Pointer list of POD Modes of U.

Definition at line 82 of file TurbDiffusionHyperreduction.H.

◆ folder_HR

template<typename volF, typename T, typename S>
word TurbDiffusionHyperreduction< volF, T, S >::folder_HR
protected

Export folder for HR operators.

Definition at line 100 of file TurbDiffusionHyperreduction.H.

◆ HRInterpField

template<typename volF, typename T, typename S>
word TurbDiffusionHyperreduction< volF, T, S >::HRInterpField
protected

Definition at line 113 of file TurbDiffusionHyperreduction.H.

◆ HRMethod

template<typename volF, typename T, typename S>
word TurbDiffusionHyperreduction< volF, T, S >::HRMethod
protected

Definition at line 110 of file TurbDiffusionHyperreduction.H.

◆ HRSnapshotsField

template<typename volF, typename T, typename S>
word TurbDiffusionHyperreduction< volF, T, S >::HRSnapshotsField
protected

Definition at line 116 of file TurbDiffusionHyperreduction.H.

◆ interpFieldCenteredOrNot

template<typename volF, typename T, typename S>
bool TurbDiffusionHyperreduction< volF, T, S >::interpFieldCenteredOrNot
protected

Definition at line 122 of file TurbDiffusionHyperreduction.H.

◆ ithacaHyperreduction

template<typename volF, typename T, typename S>
autoPtr<HyperReduction<PtrList<S> > > TurbDiffusionHyperreduction< volF, T, S >::ithacaHyperreduction
protected

Hyperreduction objects to choose magic points.

Definition at line 58 of file TurbDiffusionHyperreduction.H.

◆ ithacaUnsteadyNSTurb

template<typename volF, typename T, typename S>
autoPtr<UnsteadyNSTurb> TurbDiffusionHyperreduction< volF, T, S >::ithacaUnsteadyNSTurb
protected

Parameter object to evaluate interpolated functions.

Definition at line 55 of file TurbDiffusionHyperreduction.H.

◆ l_nSnapshot

template<typename volF, typename T, typename S>
label TurbDiffusionHyperreduction< volF, T, S >::l_nSnapshot
protected

Number of snapshot, also number of time step.

Definition at line 61 of file TurbDiffusionHyperreduction.H.

◆ l_nSnapshotSimulation

template<typename volF, typename T, typename S>
label TurbDiffusionHyperreduction< volF, T, S >::l_nSnapshotSimulation
protected

Number of Simulation snapshot, also number of time steps.

Definition at line 67 of file TurbDiffusionHyperreduction.H.

◆ l_startTime

template<typename volF, typename T, typename S>
label TurbDiffusionHyperreduction< volF, T, S >::l_startTime
protected

start time of the POD decomposition

Definition at line 64 of file TurbDiffusionHyperreduction.H.

◆ m_parameters

template<typename volF, typename T, typename S>
StoredParameters* TurbDiffusionHyperreduction< volF, T, S >::m_parameters
protected

Parameter object containing main information.

Definition at line 52 of file TurbDiffusionHyperreduction.H.

◆ m_temporalModesHR

template<typename volF, typename T, typename S>
Eigen::MatrixXd TurbDiffusionHyperreduction< volF, T, S >::m_temporalModesHR
protected

Definition at line 91 of file TurbDiffusionHyperreduction.H.

◆ m_temporalModesHRSimulation

template<typename volF, typename T, typename S>
Eigen::MatrixXd TurbDiffusionHyperreduction< volF, T, S >::m_temporalModesHRSimulation
protected

Definition at line 94 of file TurbDiffusionHyperreduction.H.

◆ mgPoints_0_Neighborhoods_1

template<typename volF, typename T, typename S>
bool TurbDiffusionHyperreduction< volF, T, S >::mgPoints_0_Neighborhoods_1
protected

Boolean to include or not magic points' neighbourhood in the submesh 0 if only magicPoints and 1 if include magicNeighborhoods.

Definition at line 107 of file TurbDiffusionHyperreduction.H.

◆ POD_endTime

template<typename volF, typename T, typename S>
label TurbDiffusionHyperreduction< volF, T, S >::POD_endTime = -1
protected

Definition at line 73 of file TurbDiffusionHyperreduction.H.

◆ POD_nSnapshot

template<typename volF, typename T, typename S>
label TurbDiffusionHyperreduction< volF, T, S >::POD_nSnapshot = -1
protected

Definition at line 71 of file TurbDiffusionHyperreduction.H.

◆ POD_startTime

template<typename volF, typename T, typename S>
label TurbDiffusionHyperreduction< volF, T, S >::POD_startTime = -1
protected

Definition at line 72 of file TurbDiffusionHyperreduction.H.

◆ runTime2

template<typename volF, typename T, typename S>
Foam::Time TurbDiffusionHyperreduction< volF, T, S >::runTime2
protected

Dummy Foam::Time object for mesh and submesh management.

Definition at line 103 of file TurbDiffusionHyperreduction.H.

◆ snapshotsFolder

template<typename volF, typename T, typename S>
word TurbDiffusionHyperreduction< volF, T, S >::snapshotsFolder
protected

Path to snapshots, number, start and end time indices for each HR POD. If -1, set automatically by the POD class.

Definition at line 70 of file TurbDiffusionHyperreduction.H.

◆ template_HRInterpField

template<typename volF, typename T, typename S>
T TurbDiffusionHyperreduction< volF, T, S >::template_HRInterpField
protected

Interpolated field template.

Definition at line 76 of file TurbDiffusionHyperreduction.H.

◆ template_HRSnapshotsField

template<typename volF, typename T, typename S>
S TurbDiffusionHyperreduction< volF, T, S >::template_HRSnapshotsField
protected

Snapshots field template.

Definition at line 79 of file TurbDiffusionHyperreduction.H.


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