LifeV
|
solver for Fluid-Structure Interaction More...
#include <FSISolver.hpp>
Typedefs | |
typedef FSIOperator | FSIOper_Type |
typedef std::shared_ptr< FSIOper_Type > | FSIOperPtr_Type |
typedef FSIOperator::mesh_Type | mesh_Type |
typedef FSIOperator::fluid_Type | fluid_Type |
typedef FSIOperator::solid_Type | solid_Type |
typedef fluid_Type::function_Type | fluidFunction_Type |
typedef solid_Type::function | solidFunction_Type |
typedef fluid_Type::source_Type | fluidSource_Type |
typedef solid_Type::source_Type | solidSource_Type |
typedef FSIOperator::fluidBchandlerPtr_Type | fluidBchandlerPtr_Type |
typedef FSIOperator::solidBchandlerPtr_Type | solidBchandlerPtr_Type |
typedef FSIOperator::fluidBchandler_Type | fluidBchandler_Type |
typedef FSIOperator::solidBchandler_Type | solidBchandler_Type |
typedef fluid_Type::data_Type | fluidData_Type |
typedef solid_Type::data_Type | solidData_Type |
typedef FSIOperator::dataPtr_Type | dataPtr_Type |
typedef FSIOperator::vector_Type | vector_Type |
typedef FSIOperator::vectorPtr_Type | vectorPtr_Type |
Constructors, destructor | |
FSISolver () | |
default/only constructor for the FSI solver More... | |
virtual | ~FSISolver () |
default/only destructor for the FSI solver More... | |
Get Functions | |
FSIOperPtr_Type const & | FSIOper () const |
get the FSI operator More... | |
bool | isFluid () |
get the displacement, which will be on the solidInterfaceMap More... | |
bool | isSolid () |
Set Functions | |
void | setSourceTerms (const fluidSource_Type &fluidSource, const solidSource_Type &solidSource) |
void | setFSI () |
set the FSI operator to be used to couple the fluid and the structure More... | |
void | setFluidBC (const fluidBchandlerPtr_Type &bc_fluid) |
void | setLinFluidBC (const fluidBchandlerPtr_Type &bc_dfluid) |
void | setInvLinFluidBC (const fluidBchandlerPtr_Type &bc_dfluid_inv) |
void | setHarmonicExtensionBC (const fluidBchandlerPtr_Type &bc_he) |
void | setSolidBC (const solidBchandlerPtr_Type &bc_solid) |
void | setLinSolidBC (const solidBchandlerPtr_Type &bc_dsolid) |
void | setInvLinSolidBC (const solidBchandlerPtr_Type &bc_dsolid_inv) |
void | setFluxBC (const fluidBchandlerPtr_Type &bc_fluid) |
void | setRobinBC (const fluidBchandlerPtr_Type &bc_fluid) |
Methods | |
FSIOperPtr_Type | M_oper |
dataPtr_Type | M_data |
std::shared_ptr< MapEpetra > | M_fluidInterfaceMap |
std::shared_ptr< MapEpetra > | M_solidInterfaceMap |
std::shared_ptr< Epetra_MpiComm > | M_epetraComm |
std::shared_ptr< Epetra_MpiComm > | M_epetraWorldComm |
std::shared_ptr< MPI_Comm > | M_localComm |
std::shared_ptr< MPI_Comm > | M_interComm |
std::ofstream | M_out_iter |
std::ofstream | M_out_res |
void | setData (const dataPtr_Type &data) |
void | setup () |
virtual void | initialize (std::vector< vectorPtr_Type > u0=std::vector< vectorPtr_Type >(0), std::vector< vectorPtr_Type > ds0=std::vector< vectorPtr_Type >(0), std::vector< vectorPtr_Type > df0=std::vector< vectorPtr_Type >(0)) |
virtual void | initializeMonolithicOperator (std::vector< vectorPtr_Type > u0=std::vector< vectorPtr_Type >(0), std::vector< vectorPtr_Type > ds0=std::vector< vectorPtr_Type >(0), std::vector< vectorPtr_Type > df0=std::vector< vectorPtr_Type >(0)) |
LIFEV_DEPRECATED (void iterate()) | |
void | iterate (vectorPtr_Type &solution) |
void | showMe () |
FSISolver (FSISolver const &) | |
forbid copy constructor More... | |
FSISolver & | operator= (FSISolver const &) |
forbid copy operator More... | |
solver for Fluid-Structure Interaction
This class handles the FSI iterations, it is generalized in the context of geometric multiscale applications by the class MS_ModelFSI, thus it will become obsolete.
FSISolver
uses the FSI operators whose base class is FSI
to solve the FSI problem. It behaves from an interface point of view very much like a NS solver or solid solver.
The temporal loop is externalized: the member function iterate(time)
must be called at each time steps. The time data is the one associated with the fluid.
FSISolver
allows to change the FSI operator using the setFSI(name)
member function that needs the name
of the new FSI operator to be used.
Definition at line 92 of file FSISolver.hpp.
typedef FSIOperator FSIOper_Type |
Definition at line 100 of file FSISolver.hpp.
typedef std::shared_ptr<FSIOper_Type> FSIOperPtr_Type |
Definition at line 101 of file FSISolver.hpp.
typedef FSIOperator::mesh_Type mesh_Type |
Definition at line 103 of file FSISolver.hpp.
typedef FSIOperator::fluid_Type fluid_Type |
Definition at line 105 of file FSISolver.hpp.
typedef FSIOperator::solid_Type solid_Type |
Definition at line 106 of file FSISolver.hpp.
Definition at line 108 of file FSISolver.hpp.
Definition at line 109 of file FSISolver.hpp.
Definition at line 111 of file FSISolver.hpp.
Definition at line 112 of file FSISolver.hpp.
Definition at line 114 of file FSISolver.hpp.
Definition at line 115 of file FSISolver.hpp.
Definition at line 117 of file FSISolver.hpp.
Definition at line 118 of file FSISolver.hpp.
typedef fluid_Type::data_Type fluidData_Type |
Definition at line 120 of file FSISolver.hpp.
typedef solid_Type::data_Type solidData_Type |
Definition at line 121 of file FSISolver.hpp.
Definition at line 123 of file FSISolver.hpp.
typedef FSIOperator::vector_Type vector_Type |
Definition at line 125 of file FSISolver.hpp.
Definition at line 126 of file FSISolver.hpp.
FSISolver | ( | ) |
default/only constructor for the FSI solver
data_file
. An empty string (default) means that it uses the operator defined in data_file
Definition at line 47 of file FSISolver.cpp.
|
inlinevirtual |
default/only destructor for the FSI solver
Definition at line 144 of file FSISolver.hpp.
|
inline |
get the FSI operator
Definition at line 155 of file FSISolver.hpp.
|
inline |
get the displacement, which will be on the solidInterfaceMap
get access to the bchandler_type
for the velocity get access to the bchandler_type
for the velocity get access to the bchandler_type
for the displacement
Definition at line 182 of file FSISolver.hpp.
|
inline |
Definition at line 186 of file FSISolver.hpp.
void setSourceTerms | ( | const fluidSource_Type & | fluidSource, |
const solidSource_Type & | solidSource | ||
) |
Definition at line 407 of file FSISolver.cpp.
void setFSI | ( | ) |
set the FSI operator to be used to couple the fluid and the structure
__op | FSI operator name |
Definition at line 415 of file FSISolver.cpp.
void setFluidBC | ( | const fluidBchandlerPtr_Type & | bc_fluid | ) |
Definition at line 422 of file FSISolver.cpp.
void setLinFluidBC | ( | const fluidBchandlerPtr_Type & | bc_dfluid | ) |
Definition at line 431 of file FSISolver.cpp.
void setInvLinFluidBC | ( | const fluidBchandlerPtr_Type & | bc_dfluid_inv | ) |
Definition at line 440 of file FSISolver.cpp.
void setHarmonicExtensionBC | ( | const fluidBchandlerPtr_Type & | bc_he | ) |
Definition at line 449 of file FSISolver.cpp.
void setSolidBC | ( | const solidBchandlerPtr_Type & | bc_solid | ) |
Definition at line 458 of file FSISolver.cpp.
void setLinSolidBC | ( | const solidBchandlerPtr_Type & | bc_dsolid | ) |
Definition at line 467 of file FSISolver.cpp.
void setInvLinSolidBC | ( | const solidBchandlerPtr_Type & | bc_dsolid_inv | ) |
Definition at line 476 of file FSISolver.cpp.
void setFluxBC | ( | const fluidBchandlerPtr_Type & | bc_fluid | ) |
void setRobinBC | ( | const fluidBchandlerPtr_Type & | bc_fluid | ) |
void setData | ( | const dataPtr_Type & | data | ) |
Definition at line 68 of file FSISolver.cpp.
void setup | ( | void | ) |
Definition at line 235 of file FSISolver.cpp.
|
virtual |
Definition at line 245 of file FSISolver.cpp.
|
virtual |
Definition at line 282 of file FSISolver.cpp.
LIFEV_DEPRECATED | ( | void | iterate() | ) |
void iterate | ( | vectorPtr_Type & | solution | ) |
Definition at line 289 of file FSISolver.cpp.
|
inline |
Definition at line 241 of file FSISolver.hpp.
|
private |
Definition at line 252 of file FSISolver.hpp.
|
private |
Definition at line 254 of file FSISolver.hpp.
|
private |
Definition at line 256 of file FSISolver.hpp.
|
private |
Definition at line 257 of file FSISolver.hpp.
|
private |
Definition at line 259 of file FSISolver.hpp.
|
private |
Definition at line 260 of file FSISolver.hpp.
|
private |
Definition at line 261 of file FSISolver.hpp.
|
private |
Definition at line 262 of file FSISolver.hpp.
|
private |
Definition at line 264 of file FSISolver.hpp.
|
private |
Definition at line 265 of file FSISolver.hpp.