Flow123d  jenkins-Flow123d-windows32-release-multijob-51
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Private Attributes | List of all members
OldBcdInput Class Reference

Old BC setting system for backward compatibility. More...

#include <old_bcd.hh>

Collaboration diagram for OldBcdInput:
Collaboration graph
[legend]

Public Types

typedef FieldElementwise
< 3, FieldValue< 3 >::Scalar > 
FieldScalar
 
typedef FieldElementwise
< 3, FieldValue< 3 >::Enum > 
FieldEnum
 
typedef FieldElementwise
< 3, FieldValue< 3 >::Vector > 
FieldVector
 
typedef Field< 3, FieldValue
< 3 >::Scalar > 
Field_Scalar
 
typedef Field< 3, FieldValue
< 3 >::Enum > 
Field_Enum
 
typedef Field< 3, FieldValue
< 3 >::Vector > 
Field_Vector
 
typedef Field_Scalar::FieldBasePtr FieldBaseScalar
 
typedef Field_Enum::FieldBasePtr FieldBaseEnum
 
typedef Field_Vector::FieldBasePtr FieldBaseVector
 

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 OldBcdInputinstance ()
 
static FieldBaseEnum flow_type_hook (Input::Record rec, const FieldCommon &field)
 
static FieldBaseScalar flow_pressure_hook (Input::Record rec, const FieldCommon &field)
 
static FieldBaseScalar flow_flux_hook (Input::Record rec, const FieldCommon &field)
 
static FieldBaseScalar flow_sigma_hook (Input::Record rec, const FieldCommon &field)
 
static FieldBaseVector trans_conc_hook (Input::Record rec, const FieldCommon &field)
 

Public Attributes

shared_ptr< FieldEnumflow_type
 
shared_ptr< FieldScalarflow_pressure
 
shared_ptr< FieldScalarflow_flux
 
shared_ptr< FieldScalarflow_sigma
 
shared_ptr< FieldVectortrans_conc
 
map< unsigned int, unsigned int > id_2_bcd_
 Maps ID to index of corresponding BC element. More...
 

Private Attributes

const Meshmesh_
 
Region some_bc_region_
 
string flow_input_file_
 
string transport_input_file_
 

Detailed Description

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.

Flow boundary file

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.

Transport boundary 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.

Member Typedef Documentation

Definition at line 65 of file old_bcd.hh.

typedef Field<3, FieldValue<3>::Scalar> OldBcdInput::Field_Scalar

Definition at line 64 of file old_bcd.hh.

typedef Field<3, FieldValue<3>::Vector> OldBcdInput::Field_Vector

Definition at line 66 of file old_bcd.hh.

Definition at line 69 of file old_bcd.hh.

Definition at line 68 of file old_bcd.hh.

Definition at line 70 of file old_bcd.hh.

Definition at line 61 of file old_bcd.hh.

Definition at line 60 of file old_bcd.hh.

Definition at line 62 of file old_bcd.hh.

Member Function Documentation

static FieldBaseScalar OldBcdInput::flow_flux_hook ( Input::Record  rec,
const FieldCommon field 
)
inlinestatic

Definition at line 99 of file old_bcd.hh.

Here is the caller graph for this function:

static string OldBcdInput::flow_old_bcd_file_key ( )
inlinestatic

Use this to declare the key with filename.

Definition at line 53 of file old_bcd.hh.

static FieldBaseScalar OldBcdInput::flow_pressure_hook ( Input::Record  rec,
const FieldCommon field 
)
inlinestatic

Definition at line 90 of file old_bcd.hh.

Here is the caller graph for this function:

static FieldBaseScalar OldBcdInput::flow_sigma_hook ( Input::Record  rec,
const FieldCommon field 
)
inlinestatic

Definition at line 108 of file old_bcd.hh.

Here is the caller graph for this function:

static FieldBaseEnum OldBcdInput::flow_type_hook ( Input::Record  rec,
const FieldCommon field 
)
inlinestatic

Definition at line 81 of file old_bcd.hh.

Here is the caller graph for this function:

OldBcdInput * OldBcdInput::instance ( )
static

Definition at line 16 of file old_bcd.cc.

Here is the caller graph for this function:

void OldBcdInput::read_flow ( const Mesh mesh,
const FilePath flow_bcd 
)

Create flow_* fields from given input file.

Definition at line 25 of file old_bcd.cc.

void OldBcdInput::read_flow_record ( Input::Record  rec,
const FieldCommon field 
)
inline

Definition at line 127 of file old_bcd.hh.

Here is the caller graph for this function:

void OldBcdInput::read_transport ( unsigned int  n_substances,
const FilePath transport_bcd 
)

Create trans_conc field from given input file.

Definition at line 149 of file old_bcd.cc.

void OldBcdInput::read_transport_record ( Input::Record  rec,
const FieldCommon field 
)
inline

Definition at line 166 of file old_bcd.hh.

Here is the caller graph for this function:

static FieldBaseVector OldBcdInput::trans_conc_hook ( Input::Record  rec,
const FieldCommon field 
)
inlinestatic

Definition at line 117 of file old_bcd.hh.

Here is the caller graph for this function:

static string OldBcdInput::transport_old_bcd_file_key ( )
inlinestatic

Definition at line 56 of file old_bcd.hh.

Member Data Documentation

shared_ptr<FieldScalar> OldBcdInput::flow_flux

Definition at line 74 of file old_bcd.hh.

string OldBcdInput::flow_input_file_
private

Definition at line 158 of file old_bcd.hh.

shared_ptr<FieldScalar> OldBcdInput::flow_pressure

Definition at line 73 of file old_bcd.hh.

shared_ptr<FieldScalar> OldBcdInput::flow_sigma

Definition at line 75 of file old_bcd.hh.

shared_ptr<FieldEnum> OldBcdInput::flow_type

Definition at line 72 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 152 of file old_bcd.hh.

const Mesh* OldBcdInput::mesh_
private

Definition at line 155 of file old_bcd.hh.

Region OldBcdInput::some_bc_region_
private

Definition at line 156 of file old_bcd.hh.

shared_ptr<FieldVector> OldBcdInput::trans_conc

Definition at line 76 of file old_bcd.hh.

string OldBcdInput::transport_input_file_
private

Definition at line 159 of file old_bcd.hh.


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