Loading...
Searching...
No Matches
ReducedFsi Class Reference
Inheritance diagram for ReducedFsi:
reducedSimpleSteadyNS reducedProblem

Public Member Functions

 ReducedFsi ()
 Construct Null.
 ReducedFsi (fsiBasic &problem)
void solveOnline_Pimple (int NmodesUproj, int NmodesPproj, int NmodesDproj, fileName folder="./ITHACAoutput/Online/")
void restart ()
 method to set all fields back to values in 0 folder
bool checkWrite (Time &timeObject)
 Method to save snapshots at a given time.
void PODI (Eigen::MatrixXd coeffL2, Eigen::MatrixXd muu, label NPdModes)
 Method to construct PODI.
void prepareRomData (const word &outputPath)
 Routine to save forces and center of mass.
Public Member Functions inherited from reducedSimpleSteadyNS
 reducedSimpleSteadyNS ()
 Construct Null.
 reducedSimpleSteadyNS (SteadyNSSimple &problem)
 Construct Null.
void solveOnline_Simple (scalar mu_now, int NmodesUproj, int NmodesPproj, int NmodesNut=0, int NmodesSup=0, word Folder="./ITHACAoutput/Reconstruct/")
 Method to perform an online solve using a PPE stabilisation method.
void setOnlineVelocity (Eigen::MatrixXd vel)
 It checks if the number of imposed boundary conditions is correct and set the inlet velocity equal to the given one.
Public Member Functions inherited from reducedProblem
 reducedProblem ()
 Construct Null.
 reducedProblem (reductionProblem &problem)
 Construct with reduced Problem.
virtual void solveOnline ()
 Virtual Method to perform and online Solve.

Public Attributes

fsiBasicproblem
 Full problem.
volScalarModes Pmodes
 The respective modes.
volVectorModes Umodes
pointVectorModes Dmodes
PtrList< dynamicFvMesh > OnlineMeshes
 PtrList to save the meshes.
scalar startTime = 0.0
scalar finalTime = 0.0
scalar timeStep = 0.0
scalar writeEvery = timeStep
scalar nextWrite = 0.0
List< scalar > centerofmassx
 List scalar for access the centerofmass.
List< scalar > centerofmassy
List< scalar > centerofmassz
List< scalar > romforcey
 List to save ROM lift and drag forces.
List< scalar > romforcex
List< scalar > pdcoeffrbf
List< Eigen::MatrixXd > CoeffU
 List of POD coefficients.
List< Eigen::MatrixXd > CoeffP
PtrList< volScalarField > PredFields
PtrList< volVectorField > UredFields
PtrList< pointVectorField > Dfield
 List of Online nodes displacement.
PtrList< volScalarField > Pfield
PtrList< volVectorField > Ufield
PtrList< pointField > ListOfpoints
label counter = problem->counter
Public Attributes inherited from reducedSimpleSteadyNS
volVectorModes ULmodes
 Lifted velocity modes.
SteadyNSSimpleproblem
 Full problem.
Eigen::MatrixXd projGradModP
 Projected gradient of the pressure modes.
Eigen::MatrixXd vel_now
 Imposed boundary conditions.
int maxIterOn = 1000
 Maximum iterations number for the online step.
int counter = 0
 Counter.
int UprojN
int PprojN
Public Attributes inherited from reducedProblem
scalar nu
 Viscosity.
reductionProblemproblem
 Pointer to FOAM problem.

Additional Inherited Members

Static Public Member Functions inherited from reducedProblem
static Eigen::MatrixXd solveLinearSys (List< Eigen::MatrixXd > LinSys, Eigen::MatrixXd x, Eigen::VectorXd &residual, const Eigen::MatrixXd &bc=Eigen::MatrixXd::Zero(0, 0), const std::string solverType="fullPivLu")
 Linear system solver for the online problem.
static Eigen::MatrixXd solveLinearSys (List< Eigen::MatrixXd > LinSys, Eigen::MatrixXd x, Eigen::VectorXd &residual, const std::string solverType)
 Linear system solver for the online problem.

Detailed Description

Definition at line 41 of file ReducedFsi.H.

Constructor & Destructor Documentation

◆ ReducedFsi() [1/2]

ReducedFsi::ReducedFsi ( )

Construct Null.

Definition at line 37 of file ReducedFsi.C.

◆ ReducedFsi() [2/2]

ReducedFsi::ReducedFsi ( fsiBasic & problem)
explicit
Parameters
[in]problema full order Fsi problem

Definition at line 40 of file ReducedFsi.C.

◆ ~ReducedFsi()

ReducedFsi::~ReducedFsi ( )
inline

Definition at line 51 of file ReducedFsi.H.

Member Function Documentation

◆ checkWrite()

bool ReducedFsi::checkWrite ( Time & timeObject)

Method to save snapshots at a given time.

Definition at line 378 of file ReducedFsi.C.

◆ PODI()

void ReducedFsi::PODI ( Eigen::MatrixXd coeffL2,
Eigen::MatrixXd muu,
label NPdModes )

Method to construct PODI.

Definition at line 61 of file ReducedFsi.C.

◆ prepareRomData()

void ReducedFsi::prepareRomData ( const word & outputPath)

Routine to save forces and center of mass.

Definition at line 394 of file ReducedFsi.C.

◆ solveOnline_Pimple()

void ReducedFsi::solveOnline_Pimple ( int NmodesUproj,
int NmodesPproj,
int NmodesDproj,
fileName folder = "./ITHACAoutput/Online/" )
Parameters
[in]mu_nowis the parameter. It is defined in with an Eigen::MatrixXd and must have one col and as many rows depending on the number of parameters.
[in]NmodesUprojThe number of modes required for velocity projection
[in]NmodesPprojThe number of modes required for pressure projection
[in]NmodesDprojThe number of modes required for interpolation
[in]FolderThe folder where we want to esport solutions (default is "./ITHACAoutput/Online/")

Correct again the boundary fields

update the new pointDisplacement

Displacement has changed. Update boundary conditions //

Solve for the reduced coefficient for pressure

Correct the velocity

Definition at line 113 of file ReducedFsi.C.

Member Data Documentation

◆ centerofmassx

List<scalar> ReducedFsi::centerofmassx

List scalar for access the centerofmass.

Definition at line 69 of file ReducedFsi.H.

◆ centerofmassy

List<scalar> ReducedFsi::centerofmassy

Definition at line 70 of file ReducedFsi.H.

◆ centerofmassz

List<scalar> ReducedFsi::centerofmassz

Definition at line 71 of file ReducedFsi.H.

◆ CoeffP

List<Eigen::MatrixXd> ReducedFsi::CoeffP

Definition at line 79 of file ReducedFsi.H.

◆ CoeffU

List<Eigen::MatrixXd> ReducedFsi::CoeffU

List of POD coefficients.

Definition at line 78 of file ReducedFsi.H.

◆ counter

label ReducedFsi::counter = problem->counter

Definition at line 88 of file ReducedFsi.H.

◆ Dfield

PtrList<pointVectorField> ReducedFsi::Dfield

List of Online nodes displacement.

Definition at line 84 of file ReducedFsi.H.

◆ Dmodes

pointVectorModes ReducedFsi::Dmodes

Definition at line 58 of file ReducedFsi.H.

◆ finalTime

scalar ReducedFsi::finalTime = 0.0

Definition at line 64 of file ReducedFsi.H.

◆ ListOfpoints

PtrList<pointField> ReducedFsi::ListOfpoints

Definition at line 87 of file ReducedFsi.H.

◆ nextWrite

scalar ReducedFsi::nextWrite = 0.0

Definition at line 67 of file ReducedFsi.H.

◆ OnlineMeshes

PtrList<dynamicFvMesh> ReducedFsi::OnlineMeshes

PtrList to save the meshes.

Definition at line 60 of file ReducedFsi.H.

◆ pdcoeffrbf

List<scalar> ReducedFsi::pdcoeffrbf

Definition at line 76 of file ReducedFsi.H.

◆ Pfield

PtrList<volScalarField> ReducedFsi::Pfield

Definition at line 85 of file ReducedFsi.H.

◆ Pmodes

volScalarModes ReducedFsi::Pmodes

The respective modes.

Definition at line 56 of file ReducedFsi.H.

◆ PredFields

PtrList<volScalarField> ReducedFsi::PredFields

Definition at line 81 of file ReducedFsi.H.

◆ problem

fsiBasic* ReducedFsi::problem

Full problem.

Definition at line 54 of file ReducedFsi.H.

◆ romforcex

List<scalar> ReducedFsi::romforcex

Definition at line 74 of file ReducedFsi.H.

◆ romforcey

List<scalar> ReducedFsi::romforcey

List to save ROM lift and drag forces.

Definition at line 73 of file ReducedFsi.H.

◆ startTime

scalar ReducedFsi::startTime = 0.0

Definition at line 63 of file ReducedFsi.H.

◆ timeStep

scalar ReducedFsi::timeStep = 0.0

Definition at line 65 of file ReducedFsi.H.

◆ Ufield

PtrList<volVectorField> ReducedFsi::Ufield

Definition at line 86 of file ReducedFsi.H.

◆ Umodes

volVectorModes ReducedFsi::Umodes

Definition at line 57 of file ReducedFsi.H.

◆ UredFields

PtrList<volVectorField> ReducedFsi::UredFields

Definition at line 82 of file ReducedFsi.H.

◆ writeEvery

scalar ReducedFsi::writeEvery = timeStep

Definition at line 66 of file ReducedFsi.H.


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