Flow123d
release_3.0.0-1212-g8801db3
|
#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 98 of file elasticity.hh.
Definition at line 187 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 230 of file elasticity.cc.
Elasticity::~Elasticity | ( | ) |
Destructor.
Definition at line 297 of file elasticity.cc.
|
private |
Assembles the fluxes on the boundary.
Definition at line 625 of file elasticity.cc.
|
private |
Assembles the fluxes between elements of different dimensions.
Definition at line 666 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 471 of file elasticity.cc.
|
private |
Assembles the volume integrals into the stiffness matrix.
Definition at line 508 of file elasticity.cc.
void Elasticity::calculate_cumulative_balance | ( | ) |
|
inline |
|
inline |
Definition at line 159 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 181 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 255 of file elasticity.cc.
|
virtual |
Postprocesses the solution and writes to output file.
Reimplemented from EquationBase.
Definition at line 435 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 787 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 801 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 556 of file elasticity.cc.
|
private |
Assembles the right hand side vector due to volume sources.
Definition at line 569 of file elasticity.cc.
|
overridevirtual |
Computes the solution in one time instant.
Reimplemented from EquationBase.
Definition at line 375 of file elasticity.cc.
|
overridevirtual |
Initialize solution in the zero time.
Reimplemented from EquationBase.
Definition at line 323 of file elasticity.cc.
|
private |
Indicates whether matrices have been preallocated.
Definition at line 313 of file elasticity.hh.
|
private |
Field data for model parameters.
Definition at line 262 of file elasticity.hh.
|
private |
Finite element objects.
Definition at line 271 of file elasticity.hh.
|
private |
Indicator of change in advection vector field.
Definition at line 316 of file elasticity.hh.
|
private |
Record with input specification.
Definition at line 301 of file elasticity.hh.
|
private |
Linear algebra system for the transport equation.
Definition at line 287 of file elasticity.hh.
|
private |
Definition at line 298 of file elasticity.hh.
|
private |
Vector of solution data.
Definition at line 296 of file elasticity.hh.
|
staticprivate |
Registrar of class to factory.
Definition at line 194 of file elasticity.hh.
|
private |
Vector of right hand side.
Definition at line 281 of file elasticity.hh.
|
private |
The stiffness matrix.
Definition at line 284 of file elasticity.hh.