LifeV
BCInterfaceFunctionSolverDefined< BCHandler, FSIOperator > Class Template Reference

BCInterfaceFunctionSolverDefined - Template specialization of BCInterfaceFunctionSolverDefined for 3D FSI problems. More...

#include <BCInterfaceFunctionSolverDefinedFSI3D.hpp>

+ Collaboration diagram for BCInterfaceFunctionSolverDefined< BCHandler, FSIOperator >:

Private Types

enum  FSIMethod { EXACTJACOBIAN, FIXEDPOINT, MONOLITHIC_GE, MONOLITHIC_GI }
 
enum  FSIFunction {
  DerFluidLoadToFluid, DerFluidLoadToStructure, DerHarmonicExtensionVelToFluid, DerStructureDispToSolid,
  FluidInterfaceDisp, FluidLoadToStructure, HarmonicExtensionVelToFluid, SolidLoadToStructure,
  StructureDispToHarmonicExtension, StructureDispToSolid, StructureToFluid, RobinWall
}
 

Private Attributes

FSIFunction M_FSIFunction
 
physicalSolverPtr_Type M_physicalSolver
 
bcName_Type M_name
 
bcFlag_Type M_flag
 
bcType_Type M_type
 
bcMode_Type M_mode
 
bcComponentsVec_Type M_componentsVector
 
vectorFunction_Type M_vectorFunctionRobin
 
FSIOperator::vectorPtr_Type M_robinRHS
 
FSIOperator::vectorPtr_Type M_robinAlphaCoefficient
 
FSIOperator::vectorPtr_Type M_robinBetaCoefficient
 

Type definitions

typedef BCHandler bcHandler_Type
 
typedef std::shared_ptr< bcHandler_TypebcHandlerPtr_Type
 
typedef FSIOperator physicalSolver_Type
 
typedef std::shared_ptr< physicalSolver_TypephysicalSolverPtr_Type
 
typedef BCInterfaceFactory< bcHandler_Type, physicalSolver_Typefactory_Type
 
typedef BCInterfaceFunction< bcHandler_Type, physicalSolver_TypebcFunction_Type
 
typedef std::shared_ptr< bcFunction_TypebcFunctionPtr_Type
 
typedef std::vector< bcFunctionPtr_TypevectorFunction_Type
 
typedef BCInterfaceFunctionParserSolver< bcHandler_Type, physicalSolver_TypefunctionParserSolver_Type
 
typedef std::shared_ptr< functionParserSolver_TypefunctionParserSolverPtr_Type
 
typedef BCInterfaceData3D data_Type
 
typedef std::shared_ptr< data_TypedataPtr_Type
 

Constructors & Destructor

 BCInterfaceFunctionSolverDefined ()
 Constructor. More...
 
virtual ~BCInterfaceFunctionSolverDefined ()
 Destructor. More...
 

Methods

void exportData (dataPtr_Type &data)
 Copy the stored parameters in the data container. More...
 
template<class BCBaseType >
void assignFunction (BCBaseType &base)
 Assign a boundary function to the boundary condition vector base. More...
 
void updatePhysicalSolverVariables ()
 Update the solver variables. More...
 

Set methods

void setData (const dataPtr_Type &data)
 Set data. More...
 
void setPhysicalSolver (const physicalSolverPtr_Type &physicalSolver)
 Set the physical solver. More...
 

Get methods

baseContainer_Type baseType () const
 Detect the correct base type. More...
 

Unimplemented Methods

 BCInterfaceFunctionSolverDefined (const BCInterfaceFunctionSolverDefined &function)
 
BCInterfaceFunctionSolverDefinedoperator= (const BCInterfaceFunctionSolverDefined &function)
 

Private Methods

template<class MethodType >
void checkFunction (BCVectorInterface &base)
 
template<class MethodType >
void checkFunction (BCVector &base)
 
template<class MethodType >
void checkFunction (BCFunctionBase &base)
 

Detailed Description

template<>
class LifeV::BCInterfaceFunctionSolverDefined< BCHandler, FSIOperator >

BCInterfaceFunctionSolverDefined - Template specialization of BCInterfaceFunctionSolverDefined for 3D FSI problems.

Author
Cristiano Malossi

The BCInterfaceFunctionSolverDefined class provides the interface between the BCInterface3D and the solver defined boundary conditions of the FSIOperator.

DETAILS:
The constructor of the class takes a string contains the ID of the boundary condition to impose. The list of available conditions is the FSIFunction enum. These are:

  1. DerFluidLoadToFluid, (not implemented)
  2. DerFluidLoadToStructure,
  3. DerHarmonicExtensionVelToFluid,
  4. DerStructureDispToSolid, (not implemented)
  5. FluidInterfaceDisp, (not working)
  6. FluidLoadToStructure,
  7. HarmonicExtensionVelToFluid,
  8. SolidLoadToStructure,
  9. StructureDispToHarmonicExtension,
  10. StructureDispToSolid, (not implemented)
  11. StructureToFluid
  12. RobinWall

The class automatically recognize which FSI algorithm is used among:

  1. EXACTJACOBIAN;
  2. FIXEDPOINT;
  3. MONOLITHIC_GE;
  4. MONOLITHIC_GI;

Definition at line 90 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

Member Typedef Documentation

◆ bcHandler_Type

◆ bcHandlerPtr_Type

typedef std::shared_ptr< bcHandler_Type > bcHandlerPtr_Type

Definition at line 98 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ physicalSolver_Type

◆ physicalSolverPtr_Type

typedef std::shared_ptr< physicalSolver_Type > physicalSolverPtr_Type

Definition at line 101 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ factory_Type

◆ bcFunction_Type

◆ bcFunctionPtr_Type

typedef std::shared_ptr< bcFunction_Type > bcFunctionPtr_Type

Definition at line 105 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ vectorFunction_Type

typedef std::vector< bcFunctionPtr_Type > vectorFunction_Type

Definition at line 106 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ functionParserSolver_Type

◆ functionParserSolverPtr_Type

◆ data_Type

◆ dataPtr_Type

typedef std::shared_ptr< data_Type > dataPtr_Type

Definition at line 112 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

Member Enumeration Documentation

◆ FSIMethod

enum FSIMethod
private
Enumerator
EXACTJACOBIAN 
FIXEDPOINT 
MONOLITHIC_GE 
MONOLITHIC_GI 

Definition at line 210 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ FSIFunction

enum FSIFunction
private
Enumerator
DerFluidLoadToFluid 
DerFluidLoadToStructure 
DerHarmonicExtensionVelToFluid 
DerStructureDispToSolid 
FluidInterfaceDisp 
FluidLoadToStructure 
HarmonicExtensionVelToFluid 
SolidLoadToStructure 
StructureDispToHarmonicExtension 
StructureDispToSolid 
StructureToFluid 
RobinWall 

Definition at line 215 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

Constructor & Destructor Documentation

◆ BCInterfaceFunctionSolverDefined() [1/2]

Constructor.

Definition at line 45 of file BCInterfaceFunctionSolverDefinedFSI3D.cpp.

◆ ~BCInterfaceFunctionSolverDefined()

virtual ~BCInterfaceFunctionSolverDefined ( )
inlinevirtual

Destructor.

Definition at line 124 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ BCInterfaceFunctionSolverDefined() [2/2]

Member Function Documentation

◆ exportData()

void exportData ( dataPtr_Type data)

Copy the stored parameters in the data container.

Parameters
databoundary condition data loaded from GetPot file

Definition at line 69 of file BCInterfaceFunctionSolverDefinedFSI3D.cpp.

◆ assignFunction()

void assignFunction ( BCBaseType &  base)
inline

Assign a boundary function to the boundary condition vector base.

Parameters
physicalSolverFSI physical solver,
baseboundary condition base

Definition at line 257 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ updatePhysicalSolverVariables()

void updatePhysicalSolverVariables ( )

Update the solver variables.

Definition at line 84 of file BCInterfaceFunctionSolverDefinedFSI3D.cpp.

◆ setData()

void setData ( const dataPtr_Type data)

Set data.

Parameters
databoundary condition data loaded from GetPot file

Definition at line 163 of file BCInterfaceFunctionSolverDefinedFSI3D.cpp.

◆ setPhysicalSolver()

void setPhysicalSolver ( const physicalSolverPtr_Type physicalSolver)
inline

Set the physical solver.

Parameters
physicalSolverphysical solver

Definition at line 165 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ baseType()

baseContainer_Type baseType ( ) const

Detect the correct base type.

Parameters
bcBaseTypethe type of the base

Definition at line 215 of file BCInterfaceFunctionSolverDefinedFSI3D.cpp.

◆ operator=()

◆ checkFunction() [1/3]

void checkFunction ( BCVectorInterface base)
inlineprivate

Definition at line 322 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ checkFunction() [2/3]

void checkFunction ( BCVector base)
inlineprivate

Definition at line 491 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ checkFunction() [3/3]

void checkFunction ( BCFunctionBase base)
inlineprivate

Definition at line 540 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

Field Documentation

◆ M_FSIFunction

FSIFunction M_FSIFunction
private

Definition at line 231 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ M_physicalSolver

physicalSolverPtr_Type M_physicalSolver
private

Definition at line 233 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ M_name

bcName_Type M_name
private

Definition at line 239 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ M_flag

bcFlag_Type M_flag
private

Definition at line 240 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ M_type

bcType_Type M_type
private

Definition at line 241 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ M_mode

bcMode_Type M_mode
private

Definition at line 242 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ M_componentsVector

bcComponentsVec_Type M_componentsVector
private

Definition at line 243 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ M_vectorFunctionRobin

vectorFunction_Type M_vectorFunctionRobin
private

Definition at line 246 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ M_robinRHS

FSIOperator::vectorPtr_Type M_robinRHS
private

Definition at line 247 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ M_robinAlphaCoefficient

FSIOperator::vectorPtr_Type M_robinAlphaCoefficient
private

Definition at line 248 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.

◆ M_robinBetaCoefficient

FSIOperator::vectorPtr_Type M_robinBetaCoefficient
private

Definition at line 249 of file BCInterfaceFunctionSolverDefinedFSI3D.hpp.


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