LifeV
|
BCInterface1D - LifeV interface to load boundary conditions for 1D problems completely from a GetPot
file.
More...
#include <BCInterface1D.hpp>
Private Attributes | |
dataPtr_Type | M_data |
Constructors & Destructor | |
BCInterface1D () | |
Constructor. More... | |
virtual | ~BCInterface1D () |
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 | setBC (const OneDFSI::bcSide_Type &bcSide, const OneDFSI::bcLine_Type &bcLine, const OneDFSI::bcType_Type &bcType, const BCBaseType &base) |
Add a Boundary Condition using the standard interface of the BCHandler. More... | |
Set Methods | |
void | setFluxSource (const fluxPtr_Type &flux, const sourcePtr_Type &source) |
Set the solution for the members that need it. More... | |
void | setSolution (const solutionPtr_Type &solution) |
Set the solution for the members that need it. More... | |
Get Methods | |
data_Type & | dataContainer () |
Get the data container. More... | |
Unimplemented Methods | |
BCInterface1D (const BCInterface1D &interface1D) | |
BCInterface1D & | operator= (const BCInterface1D &interface1D) |
Private Methods | |
template<class BCInterfaceBaseType > | |
void | createFunction (std::vector< std::shared_ptr< BCInterfaceBaseType > > &baseVector) |
template<class BCBaseType > | |
void | addBcToHandler (BCBaseType &base) |
BCInterface1D - LifeV interface to load boundary conditions for 1D problems completely from a GetPot
file.
This class allows to impose boundary conditions for a 1D 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]
side = left
quantity = Q
line = first
function = 'sin(2*pi*t)'
[OutFlow]
side = right
quantity = W2
line = first
functionSD = Absorbing
where side
, quantity
, and line
are the classical parameters for a 1D 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
. All the parameters are case sensitive.
See BCInterface
base class for more details.
Definition at line 100 of file BCInterface1D.hpp.
typedef BCInterface< BcHandler, PhysicalSolverType > bcInterface_Type |
Definition at line 107 of file BCInterface1D.hpp.
Definition at line 109 of file BCInterface1D.hpp.
Definition at line 110 of file BCInterface1D.hpp.
Definition at line 112 of file BCInterface1D.hpp.
Definition at line 113 of file BCInterface1D.hpp.
Definition at line 115 of file BCInterface1D.hpp.
Definition at line 117 of file BCInterface1D.hpp.
Definition at line 118 of file BCInterface1D.hpp.
Definition at line 120 of file BCInterface1D.hpp.
Definition at line 121 of file BCInterface1D.hpp.
Definition at line 123 of file BCInterface1D.hpp.
Definition at line 124 of file BCInterface1D.hpp.
typedef BCInterfaceData1D data_Type |
Definition at line 126 of file BCInterface1D.hpp.
typedef std::shared_ptr< data_Type > dataPtr_Type |
Definition at line 127 of file BCInterface1D.hpp.
typedef bcHandler_Type::solutionPtr_Type solutionPtr_Type |
Definition at line 129 of file BCInterface1D.hpp.
typedef bcHandler_Type::fluxPtr_Type fluxPtr_Type |
Definition at line 130 of file BCInterface1D.hpp.
typedef bcHandler_Type::sourcePtr_Type sourcePtr_Type |
Definition at line 131 of file BCInterface1D.hpp.
typedef bcHandler_Type::vectorPtrContainer_Type vectorPtrContainer_Type |
Definition at line 132 of file BCInterface1D.hpp.
|
inlineexplicit |
Constructor.
Definition at line 141 of file BCInterface1D.hpp.
|
inlinevirtual |
Destructor.
Definition at line 144 of file BCInterface1D.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 158 of file BCInterface1D.hpp.
|
inlinevirtual |
Insert the current boundary condition in the BChandler.
Implements BCInterface< BcHandler, PhysicalSolverType >.
Definition at line 253 of file BCInterface1D.hpp.
|
inline |
Add a Boundary Condition using the standard interface of the BCHandler.
side | side of the condition |
line | line of the condition |
type | type of the condition |
base | base of the condition |
Definition at line 180 of file BCInterface1D.hpp.
void setFluxSource | ( | const fluxPtr_Type & | flux, |
const sourcePtr_Type & | source | ||
) |
Set the solution for the members that need it.
flux | flux |
source | source |
Definition at line 300 of file BCInterface1D.hpp.
void setSolution | ( | const solutionPtr_Type & | solution | ) |
Set the solution for the members that need it.
solution | solution |
Definition at line 312 of file BCInterface1D.hpp.
|
inlinevirtual |
Get the data container.
Implements BCInterface< BcHandler, PhysicalSolverType >.
Definition at line 214 of file BCInterface1D.hpp.
|
private |
|
inlineprivate |
Definition at line 338 of file BCInterface1D.hpp.
|
inlineprivate |
Definition at line 347 of file BCInterface1D.hpp.
|
private |
Definition at line 245 of file BCInterface1D.hpp.