void compute_concentration_sources(unsigned int sbi)
Sorption model in immobile zone in case dual porosity is considered.
Abstract base class for equation clasess.
Container for various descendants of FieldCommonBase.
std::vector< VectorSeqDouble > out_conc
void update_solution() override
double transport_matrix_time
const std::vector< std::string > & names()
void set_balance_object(boost::shared_ptr< Balance > balance)
void alloc_transport_vectors()
BCField< 3, FieldValue< 3 >::Vector > bc_conc
MultiField< 3, FieldValue< 3 >::Scalar > conc_mobile
Calculated concentrations in the mobile zone.
Class template representing a field with values dependent on: point, element, and region...
TimeMark::Type target_mark_type
TimeMark type for time marks denoting end of every time interval where transport matrix remains const...
Vec * get_concentration_vector()
void set_initial_condition()
void set_boundary_conditions()
Coupling of a transport model with a reaction model by operator splitting.
void transport_matrix_step_mpi(double time_step)
double ** conc
Concentrations for phase, substance, element.
void calculate_instant_balance()
virtual ~ConvectionTransport()
void get_par_info(int *&el_4_loc, Distribution *&el_ds)
void zero_time_step() override
void output_vector_gather()
Specification of transport model interface.
OutputTime * output_stream_
ConvectionTransport(Mesh &init_mesh, const Input::Record &in_rec)
static Input::Type::Selection sorption_type_selection
Input::Record output_rec
Record with output specification.
boost::shared_ptr< Balance > balance_
(new) object for calculation and writing the mass balance to file.
The class for outputting data during time.
vector< unsigned int > subst_idx
List of indices used to call balance methods for a set of quantities.
Vec * vconc
Concentration vectors for mobile phase.
void read_concentration_sources()
FieldSet output_fields
Fields indended for output, i.e. all input fields plus those representing solution.
Field< 3, FieldValue< 3 >::Integer > region_id
void create_transport_matrix_mpi()
void alloc_transport_structs_mpi()
bool is_convection_matrix_scaled
static Input::Type::Selection output_selection
SubstanceList substances_
Transported substances.
VecScatter vconc_out_scatter
double ** sources_density
temporary arrays to store constant values of fields over time interval
virtual void output_data() override
Write computed fields.
void set_target_time(double target_time)
void calculate_cumulative_balance()
OutputTime * output_stream()
const vector< unsigned int > & get_subst_idx()
double ** cumulative_corr
RegionSet read_boundary_list_item(Input::Record rec)
Override generic method in order to allow specification of the boundary conditions through the old bc...
Class for representation of a vector of fields of the same physical quantity.
double ** get_concentration_matrix()
Field< 3, FieldValue< 3 >::Vector > init_conc
Initial concentrations.
void make_transport_partitioning()