Flow123d
release_3.0.0-1094-g626f1a1
|
#include <elasticity.hh>
Classes | |
class | EqData |
Public Types | |
typedef Elasticity | FactoryBaseType |
Public Member Functions | |
Elasticity (Mesh &init_mesh, const Input::Record in_rec) | |
Constructor. More... | |
void | zero_time_step () override |
Initialize solution in the zero time. More... | |
bool | evaluate_time_constraint (double &time_constraint) |
void | update_solution () override |
Computes the solution in one time instant. More... | |
void | output_data () |
Postprocesses the solution and writes to output file. More... | |
~Elasticity () | |
Destructor. More... | |
void | initialize () override |
void | calculate_cumulative_balance () |
const Vec & | get_solution () |
EqData & | data () |
Public Member Functions inherited from EquationBase | |
EquationBase () | |
EquationBase (Mesh &mesh, const Input::Record in_rec) | |
virtual | ~EquationBase () |
virtual void | choose_next_time () |
virtual void | set_time_upper_constraint (double dt, std::string message) |
virtual void | set_time_lower_constraint (double dt, std::string message) |
TimeGovernor & | time () |
virtual void | set_time_governor (TimeGovernor &time) |
double | planned_time () |
double | solved_time () |
Mesh & | mesh () |
TimeMark::Type | mark_type () |
FieldSet & | data () |
virtual void | get_solution_vector (double *&vector, unsigned int &size) |
virtual void | get_parallel_solution_vector (Vec &vector) |
Static Public Member Functions | |
static const Input::Type::Record & | get_input_type () |
Declare input record type for the equation TransportDG. More... | |
Private Member Functions | |
void | output_vector_gather () |
void | preallocate () |
void | assemble_stiffness_matrix () |
Assembles the stiffness matrix. More... | |
template<unsigned int dim> | |
void | assemble_volume_integrals () |
Assembles the volume integrals into the stiffness matrix. More... | |
void | set_sources () |
Assembles the right hand side due to volume sources. More... | |
template<unsigned int dim> | |
void | set_sources () |
Assembles the right hand side vector due to volume sources. More... | |
template<unsigned int dim> | |
void | assemble_fluxes_boundary () |
Assembles the fluxes on the boundary. More... | |
template<unsigned int dim> | |
void | assemble_fluxes_element_side () |
Assembles the fluxes between elements of different dimensions. More... | |
void | set_boundary_conditions () |
Assembles the r.h.s. components corresponding to the Dirichlet boundary conditions. More... | |
template<unsigned int dim> | |
void | set_boundary_conditions () |
Assembles the r.h.s. components corresponding to the Dirichlet boundary conditions for a given space dimension. More... | |
Private Attributes | |
Physical parameters | |
EqData | data_ |
Field data for model parameters. More... | |
Parameters of the numerical method | |
Mechanics::FEObjects * | feo |
Finite element objects. More... | |
Solution of algebraic system | |
Vec | rhs |
Vector of right hand side. More... | |
Mat | stiffness_matrix |
The stiffness matrix. More... | |
LinSys * | ls |
Linear algebra system for the transport equation. More... | |
Output to file | |
VectorMPI | output_vec |
Vector of solution data. More... | |
std::shared_ptr< OutputTime > | output_stream_ |
Input::Record | input_rec |
Record with input specification. More... | |
Other | |
bool | allocation_done |
Indicates whether matrices have been preallocated. More... | |
bool | flux_changed |
Indicator of change in advection vector field. More... | |
Static Private Attributes | |
static const int | registrar |
Registrar of class to factory. More... | |
Additional Inherited Members | |
Protected Attributes inherited from EquationBase | |
bool | equation_empty_ |
flag is true if only default constructor was called More... | |
Mesh * | mesh_ |
TimeGovernor * | time_ |
Input::Record | input_record_ |
FieldSet * | eq_data_ |
std::shared_ptr< Balance > | balance_ |
object for calculation and writing the mass balance to file. More... | |
Definition at line 101 of file elasticity.hh.
Definition at line 190 of file elasticity.hh.
Elasticity::Elasticity | ( | Mesh & | init_mesh, |
const Input::Record | in_rec | ||
) |
Constructor.
init_mesh | computational mesh |
in_rec | input record |
Definition at line 241 of file elasticity.cc.
Elasticity::~Elasticity | ( | ) |
Destructor.
Definition at line 308 of file elasticity.cc.
|
private |
Assembles the fluxes on the boundary.
Definition at line 636 of file elasticity.cc.
|
private |
Assembles the fluxes between elements of different dimensions.
Definition at line 677 of file elasticity.cc.
|
private |
Assembles the stiffness matrix.
This routine just calls assemble_volume_integrals(), assemble_fluxes_boundary(), assemble_fluxes_element_element() and assemble_fluxes_element_side() for each space dimension.
Definition at line 482 of file elasticity.cc.
|
private |
Assembles the volume integrals into the stiffness matrix.
Definition at line 519 of file elasticity.cc.
void Elasticity::calculate_cumulative_balance | ( | ) |
|
inline |
|
inline |
Definition at line 162 of file elasticity.hh.
|
static |
Declare input record type for the equation TransportDG.
Definition at line 44 of file elasticity.cc.
|
inline |
Definition at line 184 of file elasticity.hh.
|
overridevirtual |
This method should initialize fields of the equation. All members (e.g. number of components) that are necessary for the field initialization must be set between construction and call of initialize. After this method the upper level coupling may set sharing of some fields between equations.
Reimplemented from EquationBase.
Definition at line 266 of file elasticity.cc.
|
virtual |
Postprocesses the solution and writes to output file.
Reimplemented from EquationBase.
Definition at line 446 of file elasticity.cc.
|
private |
|
private |
|
private |
Assembles the r.h.s. components corresponding to the Dirichlet boundary conditions.
The routine just calls templated method set_boundary_condition() for each space dimension.
Definition at line 798 of file elasticity.cc.
|
private |
Assembles the r.h.s. components corresponding to the Dirichlet boundary conditions for a given space dimension.
Definition at line 812 of file elasticity.cc.
|
private |
Assembles the right hand side due to volume sources.
This method just calls set_sources() for each space dimension.
Definition at line 567 of file elasticity.cc.
|
private |
Assembles the right hand side vector due to volume sources.
Definition at line 580 of file elasticity.cc.
|
overridevirtual |
Computes the solution in one time instant.
Reimplemented from EquationBase.
Definition at line 386 of file elasticity.cc.
|
overridevirtual |
Initialize solution in the zero time.
Reimplemented from EquationBase.
Definition at line 334 of file elasticity.cc.
|
private |
Indicates whether matrices have been preallocated.
Definition at line 316 of file elasticity.hh.
|
private |
Field data for model parameters.
Definition at line 265 of file elasticity.hh.
|
private |
Finite element objects.
Definition at line 274 of file elasticity.hh.
|
private |
Indicator of change in advection vector field.
Definition at line 319 of file elasticity.hh.
|
private |
Record with input specification.
Definition at line 304 of file elasticity.hh.
|
private |
Linear algebra system for the transport equation.
Definition at line 290 of file elasticity.hh.
|
private |
Definition at line 301 of file elasticity.hh.
|
private |
Vector of solution data.
Definition at line 299 of file elasticity.hh.
|
staticprivate |
Registrar of class to factory.
Definition at line 197 of file elasticity.hh.
|
private |
Vector of right hand side.
Definition at line 284 of file elasticity.hh.
|
private |
The stiffness matrix.
Definition at line 287 of file elasticity.hh.