84 bool TransferData(
unsigned short donorZone,
unsigned short targetZone);
106 unsigned short val_nZone,
Headers of the main subroutines for driving single or multi-zone problems. The subroutines and functi...
ENUM_MULTIZONE GetKind_MZSolver(void) const
Kind of Multizone Solver.
Definition CConfig.hpp:4019
CConfig * driver_config
Definition of the driver configuration.
Definition CDriverBase.hpp:65
Parent class for driving an iteration of a single or multi-zone problem.
Definition CDriver.hpp:51
Class for driving zone-specific iterations.
Definition CMultizoneDriver.hpp:40
su2double ** init_res
Stores the initial residual.
Definition CMultizoneDriver.hpp:49
void Update() override
Update the dual-time solution within multiple zones.
Definition CMultizoneDriver.cpp:443
bool fsi
Definition CMultizoneDriver.hpp:43
void RunGaussSeidel()
Run a Block Gauss-Seidel iteration in all physical zones.
Definition CMultizoneDriver.cpp:289
unsigned short * nVarZone
Definition CMultizoneDriver.hpp:48
void Corrector(unsigned short val_iZone)
Use a corrector step to prevent convergence issues.
Definition CMultizoneDriver.cpp:401
void StartSolver() override
[Overload] Launch the computation for multizone problems.
Definition CMultizoneDriver.cpp:144
su2double structure_criteria_rel
Definition CMultizoneDriver.hpp:56
su2double flow_criteria_rel
Definition CMultizoneDriver.hpp:54
unsigned long TimeIter
Definition CMultizoneDriver.hpp:46
void RunJacobi()
Run a Block-Jacobi iteration in all physical zones.
Definition CMultizoneDriver.cpp:340
~CMultizoneDriver() override
Destructor of the class.
Definition CMultizoneDriver.cpp:126
void Postprocess()
Placeholder for post processing operations to make the interface of this driver identical to CSinglez...
Definition CMultizoneDriver.hpp:138
bool cht
Definition CMultizoneDriver.hpp:44
su2double ** residual_rel
Stores the residual relative to the initial.
Definition CMultizoneDriver.hpp:51
virtual bool GetTimeConvergence() const
Returns whether all specified windowed-time-averaged ouputs have been converged.
Definition CMultizoneDriver.cpp:691
void Preprocess(unsigned long TimeIter) override
Preprocess the multizone iteration.
Definition CMultizoneDriver.cpp:216
void DynamicMeshUpdate(unsigned short val_iZone, unsigned long TimeIter)
Perform a dynamic mesh deformation, including grid velocity computation and update of the multigrid s...
Definition CMultizoneDriver.cpp:524
void Run() override
Solves one time iteration.
Definition CMultizoneDriver.hpp:127
bool TransferData(unsigned short donorZone, unsigned short targetZone)
Routine to provide all the desired physical transfers between the different zones during one iteratio...
Definition CMultizoneDriver.cpp:550
su2double ** residual
Stores the current residual.
Definition CMultizoneDriver.hpp:50
bool Monitor(unsigned long TimeIter) override
Check if simulation converged and return appropriate boolean.
Definition CMultizoneDriver.cpp:643
void Output(unsigned long TimeIter) override
Output the solution in solution file.
Definition CMultizoneDriver.cpp:469
bool OuterConvergence(unsigned long OuterIter)
Check the convergence at the outer level.
Definition CMultizoneDriver.cpp:410
su2double structure_criteria
Definition CMultizoneDriver.hpp:55
su2double flow_criteria
Definition CMultizoneDriver.hpp:53
bool * prefixed_motion
Determines if a fixed motion is imposed in the config file.
Definition CMultizoneDriver.hpp:58
passivedouble su2double
Definition code_config.hpp:181
int SU2_Comm
Definition mpi_structure.hpp:619
@ MZ_BLOCK_JACOBI
Definition of a Block-Jacobi solver.
@ MZ_BLOCK_GAUSS_SEIDEL
Definition of a Block-Gauss-Seidel multizone solver.