Flow123d
jenkins-Flow123d-linux-release-multijob-282
|
Old BC setting system for backward compatibility. More...
#include <old_bcd.hh>
Classes | |
class | FieldFactory |
Public Types | |
typedef FieldElementwise < 3, FieldValue< 3 >::Scalar > | FieldScalar |
typedef FieldElementwise < 3, FieldValue< 3 >::Enum > | FieldEnum |
typedef FieldElementwise < 3, FieldValue< 3 >::Vector > | FieldVector |
Public Member Functions | |
void | read_flow_record (Input::Record rec, const FieldCommon &field) |
void | read_transport_record (Input::Record rec, const FieldCommon &field) |
void | read_flow (const Mesh &mesh, const FilePath &flow_bcd) |
void | read_transport (unsigned int n_substances, const FilePath &transport_bcd) |
Static Public Member Functions | |
static string | flow_old_bcd_file_key () |
static string | transport_old_bcd_file_key () |
static OldBcdInput * | instance () |
Public Attributes | |
shared_ptr< FieldEnum > | flow_type |
shared_ptr< FieldScalar > | flow_pressure |
shared_ptr< FieldScalar > | flow_flux |
shared_ptr< FieldScalar > | flow_sigma |
shared_ptr< FieldVector > | trans_conc |
std::shared_ptr < OldBcdInput::FieldFactory < 3, FieldValue< 3 >::Enum > > | flow_type_factory |
std::shared_ptr < OldBcdInput::FieldFactory < 3, FieldValue< 3 >::Scalar > > | flow_pressure_factory |
std::shared_ptr < OldBcdInput::FieldFactory < 3, FieldValue< 3 >::Scalar > > | flow_flux_factory |
std::shared_ptr < OldBcdInput::FieldFactory < 3, FieldValue< 3 >::Scalar > > | flow_sigma_factory |
std::shared_ptr < OldBcdInput::FieldFactory < 3, FieldValue< 3 >::Vector > > | trans_conc_factory |
map< unsigned int, unsigned int > | id_2_bcd_ |
Maps ID to index of corresponding BC element. More... | |
Private Member Functions | |
OldBcdInput () | |
Private Attributes | |
const Mesh * | mesh_ |
Region | some_bc_region_ |
string | flow_input_file_ |
string | transport_input_file_ |
Old BC setting system for backward compatibility.
The class provides a singleton object for support of old input files with boundary conditions. The method read_flow
, reads the flow boundary file and creates FieldElementwise objects for the BC type, the pressure, the flux and the sigma. More over it fills map that assigns boundary elements to the boundary IDs. This map si used by possible call of the read_transport
method that reads the transport boundary file and creates the FieldElementwise for the boundary concentrations.
The boundary condition file for the flow problem contains section $BoundaryConditions
in which the first line specifies the number of BC lines. One BC line consists of the boudary face ID, the BC type (1 - Dirichlet, 2 - Neumann, 3 - Robin) followed by the BC data: the pressure value (Dirichlet BC), or the flux value (Neumann BC), or the pressure and the coefficient (Robin BC). After the boundary data there is face specification, it consists of the specification type (the value 2 is only supported), the element ID and index of its side that corresponds to the face. Sides are numbered from zero to dim-1
, i-th
side opposing to the i-th
node of the element according to the ordering in specification of the element in the mesh file.
Concentration data can be specified only on faces that appears in the flow boundary file. The file has to contain section $Transport_BCD
which starts with number of transport BC lines. One transport BC line consists of line ID (ignored), boundary ID (the BC line ID from the flow boundary file), boundary values for all substances used by the transport module.
Definition at line 47 of file old_bcd.hh.
typedef FieldElementwise<3, FieldValue<3>::Enum> OldBcdInput::FieldEnum |
Definition at line 63 of file old_bcd.hh.
typedef FieldElementwise<3, FieldValue<3>::Scalar> OldBcdInput::FieldScalar |
Definition at line 62 of file old_bcd.hh.
typedef FieldElementwise<3, FieldValue<3>::Vector> OldBcdInput::FieldVector |
Definition at line 64 of file old_bcd.hh.
|
private |
|
inlinestatic |
Use this to declare the key with filename.
Definition at line 55 of file old_bcd.hh.
|
static |
Create flow_* fields from given input file.
Definition at line 39 of file old_bcd.cc.
|
inline |
void OldBcdInput::read_transport | ( | unsigned int | n_substances, |
const FilePath & | transport_bcd | ||
) |
Create trans_conc field from given input file.
Definition at line 163 of file old_bcd.cc.
|
inline |
|
inlinestatic |
Definition at line 58 of file old_bcd.hh.
shared_ptr<FieldScalar> OldBcdInput::flow_flux |
Definition at line 68 of file old_bcd.hh.
std::shared_ptr< OldBcdInput::FieldFactory<3, FieldValue<3>::Scalar> > OldBcdInput::flow_flux_factory |
Definition at line 112 of file old_bcd.hh.
|
private |
Definition at line 148 of file old_bcd.hh.
shared_ptr<FieldScalar> OldBcdInput::flow_pressure |
Definition at line 67 of file old_bcd.hh.
std::shared_ptr< OldBcdInput::FieldFactory<3, FieldValue<3>::Scalar> > OldBcdInput::flow_pressure_factory |
Definition at line 111 of file old_bcd.hh.
shared_ptr<FieldScalar> OldBcdInput::flow_sigma |
Definition at line 69 of file old_bcd.hh.
std::shared_ptr< OldBcdInput::FieldFactory<3, FieldValue<3>::Scalar> > OldBcdInput::flow_sigma_factory |
Definition at line 113 of file old_bcd.hh.
shared_ptr<FieldEnum> OldBcdInput::flow_type |
Definition at line 66 of file old_bcd.hh.
std::shared_ptr< OldBcdInput::FieldFactory<3, FieldValue<3>::Enum> > OldBcdInput::flow_type_factory |
Definition at line 110 of file old_bcd.hh.
map<unsigned int, unsigned int> OldBcdInput::id_2_bcd_ |
Maps ID to index of corresponding BC element.
Definition at line 140 of file old_bcd.hh.
|
private |
Definition at line 145 of file old_bcd.hh.
|
private |
Definition at line 146 of file old_bcd.hh.
shared_ptr<FieldVector> OldBcdInput::trans_conc |
Definition at line 70 of file old_bcd.hh.
std::shared_ptr< OldBcdInput::FieldFactory<3, FieldValue<3>::Vector> > OldBcdInput::trans_conc_factory |
Definition at line 114 of file old_bcd.hh.
|
private |
Definition at line 149 of file old_bcd.hh.