LifeV
|
BCInterface3D - LifeV interface to load boundary conditions for 3D problems completely from a GetPot
file.
More...
#include <BCInterface3D.hpp>
Private Attributes | |
dataPtr_Type | M_data |
vectorFunctionRobin_Type | M_vectorFunctionRobin |
vectorFunctionDirectional_Type | M_vectorFunctionDirection |
vectorDataInterpolator_Type | M_vectorDataInterpolator |
Constructors & Destructor | |
BCInterface3D () | |
Constructor. More... | |
virtual | ~BCInterface3D () |
Destructor. More... | |
Methods | |
void | readBC (const std::string &fileName, const std::string &dataSection, const std::string &name) |
Read a specific boundary condition from a file and add it to the data container. More... | |
void | insertBC () |
Insert the current boundary condition in the BChandler. More... | |
External interface for BCHandler functions | |
template<class BCBaseType > | |
void | addBC (const bcName_Type &name, const bcFlag_Type &flag, const bcType_Type &type, const bcMode_Type &mode, BCBaseType &base) |
Add a Boundary Condition using the standard interface of the BCHandler. More... | |
template<class BCBaseType , class BCCompType > | |
void | addBC (const bcName_Type &name, const bcFlag_Type &flag, const bcType_Type &type, const bcMode_Type &mode, BCBaseType &base, const BCCompType &comp) |
Add a Boundary Condition with component using the standard interface of the BCHandler. More... | |
Set Methods | |
void | setPhysicalSolver (const physicalSolverPtr_Type &physicalSolver) |
Set a physical solver. More... | |
Get Methods | |
data_Type & | dataContainer () |
Get the data container. More... | |
Unimplemented Methods | |
BCInterface3D (const BCInterface3D &bcInterface3D) | |
BCInterface3D & | operator= (const BCInterface3D &bcInterface3D) |
Private Methods | |
template<class BCBaseType > | |
void | createFunctionRobin (BCBaseType &base) |
template<class BCBaseType > | |
void | createFunctionDirectional (BCBaseType &base) |
void | createFunctionDataInterpolator () |
template<class BCBaseType > | |
void | addBcToHandler (BCBaseType &base) |
BCInterface3D - LifeV interface to load boundary conditions for 3D problems completely from a GetPot
file.
This class allows to impose boundary conditions for a 3D problem completely from a file.
EXAMPLE - DATA FILE
In the GetPot data file, BCInterface
reads a new section: [boundary_conditions]
.
Inside the new section there is a list of boundary conditions which correspond to other sub-section with the same name, for example: list = 'InFlow OutFlow'
Each boundary condition has a similar structure. The list of properties depends from the type of the boundary condition. For example:
[InFlow]
type = Essential
flag = 2
mode = Full
component = 3
function = '[0, 0, 3*0.03*(1/4-(x^2+y^2)]'
[OutFlow]
type = Essential
flag = 3
mode = Full
component = 3
function = '0'
where type
, flag
, mode
, component
are the classical parameters for a 3D boundary condition. The string function
represents the base module and can be replaced by other derived/alternative modules. The following functions are available (see the related classes for more information):
function
, which is implemented in BCInterfaceFunctionParser
; functionFile
, which is implemented in BCInterfaceFunctionParserFile
; functionSolver
, which is implemented in BCInterfaceFunctionParserSolver
; functionFileSolver
, which is implemented in BCInterfaceFunctionParserFileSolver
; functionUD
, which is implemented in BCInterfaceFunctionUserDefined
; functionSD
, which is implemented in BCInterfaceFunctionSolverDefined
; dataInterpolator
, which is implemented inBCDataInterpolator
; All the parameters are case sensitive.
See BCInterface
base class for more details.
Definition at line 118 of file BCInterface3D.hpp.
typedef BCInterface< BcHandler, PhysicalSolverType > bcInterface_Type |
Definition at line 125 of file BCInterface3D.hpp.
Definition at line 127 of file BCInterface3D.hpp.
Definition at line 128 of file BCInterface3D.hpp.
Definition at line 130 of file BCInterface3D.hpp.
Definition at line 131 of file BCInterface3D.hpp.
Definition at line 133 of file BCInterface3D.hpp.
Definition at line 135 of file BCInterface3D.hpp.
Definition at line 136 of file BCInterface3D.hpp.
Definition at line 138 of file BCInterface3D.hpp.
Definition at line 139 of file BCInterface3D.hpp.
typedef BCInterfaceData3D data_Type |
Definition at line 141 of file BCInterface3D.hpp.
typedef std::shared_ptr< data_Type > dataPtr_Type |
Definition at line 142 of file BCInterface3D.hpp.
typedef BCFunctionRobin bcFunctionRobin_Type |
Definition at line 144 of file BCInterface3D.hpp.
typedef std::shared_ptr< bcFunctionRobin_Type > bcFunctionRobinPtr_Type |
Definition at line 145 of file BCInterface3D.hpp.
typedef std::vector< bcFunctionRobinPtr_Type > vectorFunctionRobin_Type |
Definition at line 146 of file BCInterface3D.hpp.
Definition at line 148 of file BCInterface3D.hpp.
typedef std::shared_ptr< bcFunctionDirectional_Type > bcFunctionDirectionalPtr_Type |
Definition at line 149 of file BCInterface3D.hpp.
typedef std::vector< bcFunctionDirectionalPtr_Type > vectorFunctionDirectional_Type |
Definition at line 150 of file BCInterface3D.hpp.
Definition at line 152 of file BCInterface3D.hpp.
typedef std::shared_ptr< bcFunctionDataInterpolator_Type > bcFunctionDataInterpolatorPtr_Type |
Definition at line 153 of file BCInterface3D.hpp.
typedef std::vector< bcFunctionDataInterpolatorPtr_Type > vectorDataInterpolator_Type |
Definition at line 154 of file BCInterface3D.hpp.
|
explicit |
Constructor.
Definition at line 298 of file BCInterface3D.hpp.
|
inlinevirtual |
Destructor.
Definition at line 166 of file BCInterface3D.hpp.
|
private |
|
inlinevirtual |
Read a specific boundary condition from a file and add it to the data container.
fileName | Name of the data file |
dataSection | section in the data file |
name | name of the boundary condition |
Implements BCInterface< BcHandler, PhysicalSolverType >.
Definition at line 180 of file BCInterface3D.hpp.
|
virtual |
Insert the current boundary condition in the BChandler.
Implements BCInterface< BcHandler, PhysicalSolverType >.
Definition at line 317 of file BCInterface3D.hpp.
|
inline |
Add a Boundary Condition using the standard interface of the BCHandler.
name | name of the condition |
flag | list of flags |
type | type of the condition |
mode | mode of the condition |
base | base of the condition |
Definition at line 203 of file BCInterface3D.hpp.
|
inline |
Add a Boundary Condition with component using the standard interface of the BCHandler.
name | name of the condition |
flag | list of flags |
type | type of the condition |
mode | mode of the condition |
base | base of the condition |
comp | component of the condition |
Definition at line 218 of file BCInterface3D.hpp.
|
virtual |
Set a physical solver.
physicalSolver | physical solver |
Reimplemented from BCInterface< BcHandler, PhysicalSolverType >.
Definition at line 388 of file BCInterface3D.hpp.
|
inlinevirtual |
Get the data container.
Implements BCInterface< BcHandler, PhysicalSolverType >.
Definition at line 245 of file BCInterface3D.hpp.
|
private |
|
inlineprivate |
Definition at line 419 of file BCInterface3D.hpp.
|
inlineprivate |
Definition at line 439 of file BCInterface3D.hpp.
|
inlineprivate |
Definition at line 459 of file BCInterface3D.hpp.
|
inlineprivate |
Definition at line 470 of file BCInterface3D.hpp.
|
private |
Definition at line 281 of file BCInterface3D.hpp.
|
private |
Definition at line 284 of file BCInterface3D.hpp.
|
private |
Definition at line 287 of file BCInterface3D.hpp.
|
private |
Definition at line 290 of file BCInterface3D.hpp.