LifeV
FSI3DBoundaryFlowRateFunction Class Reference

FSI3DBoundaryFlowRateFunction - The FSI3D coupling function. More...

#include <MultiscaleModelFSI3D.hpp>

+ Collaboration diagram for FSI3DBoundaryFlowRateFunction:

Private Attributes

MultiscaleModelFSI3DM_FSI3D
 
function_Type M_function
 
multiscaleID_Type M_fluidFlag
 
FSI3DBoundaryFlowRate_Type M_boundaryFlowRateType
 
std::array< Real, 3 > M_n
 
Real M_area
 
bool M_flowRateIsZero
 

Type definitions

typedef MultiscaleInterface::function_Type function_Type
 
typedef MultiscaleModelFSI3D::FSI3DBoundaryFlowRate_Type FSI3DBoundaryFlowRate_Type
 

Constructors & Destructor

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

Methods

void updateParameters ()
 Update function parameters. More...
 
Real function (const Real &t, const Real &x, const Real &y, const Real &z, const UInt &id)
 Evaluate the coupling quantity. More...
 

Set Methods

void setModel (MultiscaleModelFSI3D *modelFSI3D)
 Set the FSI3D model. More...
 
void setFluidFlag (const multiscaleID_Type &flag)
 Set the fluid flag of the boundary. More...
 
void setNormal (const std::array< Real, 3 > &normal)
 Set the outgoing normal of the fluid boundary. More...
 
void setFunction (const function_Type &function)
 Set the area function. More...
 
void setBoundaryFlowRateType (const FSI3DBoundaryFlowRate_Type &boundaryFlowRateType)
 Set the boundary flow rate type. More...
 

Get methods

const multiscaleID_TypefluidFlag () const
 Get the fluid flag of the boundary. More...
 
const FSI3DBoundaryFlowRate_TypeboundaryFlowRateType () const
 Get the boundary flow rate type. More...
 

Unimplemented Methods

 FSI3DBoundaryFlowRateFunction (const FSI3DBoundaryFlowRateFunction &boundaryFunction)
 
FSI3DBoundaryFlowRateFunctionoperator= (const FSI3DBoundaryFlowRateFunction &boundaryFunction)
 

Private Methods

void useNormalDirectionFlow (const BCBase &boundaryID)
 Impose a flow in the outgoing normal direction. More...
 

Detailed Description

FSI3DBoundaryFlowRateFunction - The FSI3D coupling function.

Author
Cristiano Malossi
Toni Lassila

This simple class provides the implementation for the BC function used by the FSI3D model in order to convert the given flow rate to a velocity profile.

Definition at line 695 of file MultiscaleModelFSI3D.hpp.

Member Typedef Documentation

◆ function_Type

◆ FSI3DBoundaryFlowRate_Type

Constructor & Destructor Documentation

◆ FSI3DBoundaryFlowRateFunction() [1/2]

FSI3DBoundaryFlowRateFunction ( )
inlineexplicit

Constructor.

Definition at line 713 of file MultiscaleModelFSI3D.hpp.

◆ ~FSI3DBoundaryFlowRateFunction()

virtual ~FSI3DBoundaryFlowRateFunction ( )
inlinevirtual

Destructor.

Definition at line 724 of file MultiscaleModelFSI3D.hpp.

◆ FSI3DBoundaryFlowRateFunction() [2/2]

FSI3DBoundaryFlowRateFunction ( const FSI3DBoundaryFlowRateFunction boundaryFunction)
private

Member Function Documentation

◆ updateParameters()

void updateParameters ( )
inline

Update function parameters.

Instead of evaluating all the parameters at each call, we update them once at each time step.

Definition at line 739 of file MultiscaleModelFSI3D.hpp.

◆ function()

Real function ( const Real t,
const Real x,
const Real y,
const Real z,
const UInt id 
)
inline

Evaluate the coupling quantity.

For now, we impose a flat profile in the normal direction. TODO: In the future, this method can be extended in order to prescribe some "predefined" velocity profile such as Poiseuille, Womersley, etc...

Returns
evaluation of the function

Definition at line 797 of file MultiscaleModelFSI3D.hpp.

◆ setModel()

void setModel ( MultiscaleModelFSI3D modelFSI3D)
inline

Set the FSI3D model.

Parameters
modelFSI3Da pointer to the FSI3D model

Definition at line 826 of file MultiscaleModelFSI3D.hpp.

◆ setFluidFlag()

void setFluidFlag ( const multiscaleID_Type flag)
inline

Set the fluid flag of the boundary.

Parameters
flagflag of the fluid boundary

Definition at line 835 of file MultiscaleModelFSI3D.hpp.

◆ setNormal()

void setNormal ( const std::array< Real, 3 > &  normal)
inline

Set the outgoing normal of the fluid boundary.

Parameters
normaloutgoing normal of the fluid boundary

Definition at line 844 of file MultiscaleModelFSI3D.hpp.

◆ setFunction()

void setFunction ( const function_Type function)
inline

Set the area function.

Parameters
functionarea function

Definition at line 853 of file MultiscaleModelFSI3D.hpp.

◆ setBoundaryFlowRateType()

void setBoundaryFlowRateType ( const FSI3DBoundaryFlowRate_Type boundaryFlowRateType)
inline

Set the boundary flow rate type.

Parameters
boundaryFlowRateTypeboundary flow rate type

Definition at line 862 of file MultiscaleModelFSI3D.hpp.

◆ fluidFlag()

const multiscaleID_Type& fluidFlag ( ) const
inline

Get the fluid flag of the boundary.

Returns
flag of the fluid boundary

Definition at line 877 of file MultiscaleModelFSI3D.hpp.

◆ boundaryFlowRateType()

const FSI3DBoundaryFlowRate_Type& boundaryFlowRateType ( ) const
inline

Get the boundary flow rate type.

Returns
boundary flow rate type

Definition at line 886 of file MultiscaleModelFSI3D.hpp.

◆ operator=()

FSI3DBoundaryFlowRateFunction& operator= ( const FSI3DBoundaryFlowRateFunction boundaryFunction)
private

◆ useNormalDirectionFlow()

void useNormalDirectionFlow ( const BCBase boundaryID)
inlineprivate

Impose a flow in the outgoing normal direction.

Definition at line 909 of file MultiscaleModelFSI3D.hpp.

Field Documentation

◆ M_FSI3D

MultiscaleModelFSI3D* M_FSI3D
private

Definition at line 927 of file MultiscaleModelFSI3D.hpp.

◆ M_function

function_Type M_function
private

Definition at line 928 of file MultiscaleModelFSI3D.hpp.

◆ M_fluidFlag

multiscaleID_Type M_fluidFlag
private

Definition at line 929 of file MultiscaleModelFSI3D.hpp.

◆ M_boundaryFlowRateType

FSI3DBoundaryFlowRate_Type M_boundaryFlowRateType
private

Definition at line 930 of file MultiscaleModelFSI3D.hpp.

◆ M_n

std::array< Real, 3 > M_n
private

Definition at line 931 of file MultiscaleModelFSI3D.hpp.

◆ M_area

Real M_area
private

Definition at line 932 of file MultiscaleModelFSI3D.hpp.

◆ M_flowRateIsZero

bool M_flowRateIsZero
private

Definition at line 933 of file MultiscaleModelFSI3D.hpp.


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