Flow123d  JS_before_hm-1804-gf2ad740aa
Classes | Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Attributes | List of all members
Elasticity Class Reference

#include <elasticity.hh>

Inheritance diagram for Elasticity:
Inheritance graph
[legend]
Collaboration diagram for Elasticity:
Collaboration graph
[legend]

Classes

class  EqData
 
class  EqFields
 

Public Types

typedef Elasticity FactoryBaseType
 

Public Member Functions

 Elasticity (Mesh &init_mesh, const Input::Record in_rec, TimeGovernor *tm=nullptr)
 Constructor. More...
 
void zero_time_step () override
 Initialize solution in the zero time. More...
 
void update_solution () override
 Computes the solution in one time instant. More...
 
void next_time ()
 Pass to next time and update equation data. More...
 
void solve_linear_system ()
 Solve without updating time step and without output. More...
 
void output_data ()
 Postprocesses the solution and writes to output file. More...
 
 ~Elasticity ()
 Destructor. More...
 
void initialize () override
 
void update_output_fields ()
 
void set_potential_load (const Field< 3, FieldValue< 3 >::Scalar > &potential)
 
void calculate_cumulative_balance ()
 
const Vec & get_solution ()
 
EqFieldseq_fields ()
 
EqDataeq_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)
 
TimeGovernortime ()
 
virtual void set_time_governor (TimeGovernor &time)
 
double planned_time ()
 
double solved_time ()
 
Meshmesh ()
 
std::shared_ptr< Balancebalance () const
 
TimeMark::Type mark_type ()
 
FieldSeteq_fieldset ()
 

Static Public Member Functions

static const Input::Type::Recordget_input_type ()
 Declare input record type for the equation TransportDG. More...
 
- Static Public Member Functions inherited from EquationBase
static Input::Type::Recordrecord_template ()
 Template Record with common keys for derived equations. More...
 

Private Member Functions

void preallocate ()
 

Private Attributes

Physical parameters
std::shared_ptr< EqFieldseq_fields_
 Fields for model parameters. More...
 
std::shared_ptr< EqDataeq_data_
 Data for model parameters. More...
 

Static Private Attributes

static const int registrar
 Registrar of class to factory. More...
 

Output to file

static constexpr const char * name_ = "Mechanics_LinearElasticity"
 
std::shared_ptr< OutputTimeoutput_stream_
 
Input::Record input_rec
 Record with input specification. More...
 
GenericAssembly< StiffnessAssemblyElasticity > * stiffness_assembly_
 general assembly objects, hold assembly objects of appropriate dimension More...
 
GenericAssembly< RhsAssemblyElasticity > * rhs_assembly_
 
GenericAssembly< OutpuFieldsAssemblyElasticity > * output_fields_assembly_
 

Additional Inherited Members

- Protected Attributes inherited from EquationBase
bool equation_empty_
 flag is true if only default constructor was called More...
 
Meshmesh_
 
TimeGovernortime_
 
Input::Record input_record_
 
FieldSeteq_fieldset_
 
std::shared_ptr< Balancebalance_
 object for calculation and writing the mass balance to file. More...
 

Detailed Description

Definition at line 47 of file elasticity.hh.

Member Typedef Documentation

◆ FactoryBaseType

Definition at line 193 of file elasticity.hh.

Constructor & Destructor Documentation

◆ Elasticity()

Elasticity::Elasticity ( Mesh init_mesh,
const Input::Record  in_rec,
TimeGovernor tm = nullptr 
)

Constructor.

Parameters
init_meshcomputational mesh
in_recinput record
tmtime governor (if nullptr then it is created from input record)

Definition at line 273 of file elasticity.cc.

◆ ~Elasticity()

Elasticity::~Elasticity ( )

Destructor.

Definition at line 384 of file elasticity.cc.

Member Function Documentation

◆ calculate_cumulative_balance()

void Elasticity::calculate_cumulative_balance ( )

Definition at line 552 of file elasticity.cc.

Here is the caller graph for this function:

◆ eq_data()

EqData& Elasticity::eq_data ( )
inline

Definition at line 189 of file elasticity.hh.

◆ eq_fields()

EqFields& Elasticity::eq_fields ( )
inline

Definition at line 187 of file elasticity.hh.

◆ get_input_type()

const Record & Elasticity::get_input_type ( )
static

Declare input record type for the equation TransportDG.

Definition at line 47 of file elasticity.cc.

Here is the caller graph for this function:

◆ get_solution()

const Vec& Elasticity::get_solution ( )
inline

Definition at line 184 of file elasticity.hh.

◆ initialize()

void Elasticity::initialize ( )
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 315 of file elasticity.cc.

◆ next_time()

void Elasticity::next_time ( )

Pass to next time and update equation data.

Definition at line 482 of file elasticity.cc.

Here is the caller graph for this function:

◆ output_data()

void Elasticity::output_data ( )
virtual

Postprocesses the solution and writes to output file.

Reimplemented from EquationBase.

Definition at line 531 of file elasticity.cc.

Here is the caller graph for this function:

◆ preallocate()

void Elasticity::preallocate ( )
private

Definition at line 457 of file elasticity.cc.

Here is the caller graph for this function:

◆ set_potential_load()

void Elasticity::set_potential_load ( const Field< 3, FieldValue< 3 >::Scalar > &  potential)
inline

Definition at line 179 of file elasticity.hh.

◆ solve_linear_system()

void Elasticity::solve_linear_system ( )

Solve without updating time step and without output.

Definition at line 491 of file elasticity.cc.

Here is the caller graph for this function:

◆ update_output_fields()

void Elasticity::update_output_fields ( )

Definition at line 398 of file elasticity.cc.

Here is the caller graph for this function:

◆ update_solution()

void Elasticity::update_solution ( )
overridevirtual

Computes the solution in one time instant.

Reimplemented from EquationBase.

Definition at line 468 of file elasticity.cc.

◆ zero_time_step()

void Elasticity::zero_time_step ( )
overridevirtual

Initialize solution in the zero time.

Reimplemented from EquationBase.

Definition at line 424 of file elasticity.cc.

Member Data Documentation

◆ eq_data_

std::shared_ptr<EqData> Elasticity::eq_data_
private

Data for model parameters.

Definition at line 214 of file elasticity.hh.

◆ eq_fields_

std::shared_ptr<EqFields> Elasticity::eq_fields_
private

Fields for model parameters.

Definition at line 211 of file elasticity.hh.

◆ input_rec

Input::Record Elasticity::input_rec
private

Record with input specification.

Definition at line 226 of file elasticity.hh.

◆ name_

constexpr const char* Elasticity::name_ = "Mechanics_LinearElasticity"
staticconstexprprivate

Definition at line 232 of file elasticity.hh.

◆ output_fields_assembly_

GenericAssembly< OutpuFieldsAssemblyElasticity >* Elasticity::output_fields_assembly_
private

Definition at line 238 of file elasticity.hh.

◆ output_stream_

std::shared_ptr<OutputTime> Elasticity::output_stream_
private

Definition at line 223 of file elasticity.hh.

◆ registrar

const int Elasticity::registrar
staticprivate
Initial value:
=
Input::register_class< Elasticity, Mesh &, const Input::Record>(std::string(name_) + "_FE") +

Registrar of class to factory.

Definition at line 200 of file elasticity.hh.

◆ rhs_assembly_

GenericAssembly< RhsAssemblyElasticity >* Elasticity::rhs_assembly_
private

Definition at line 237 of file elasticity.hh.

◆ stiffness_assembly_

GenericAssembly< StiffnessAssemblyElasticity >* Elasticity::stiffness_assembly_
private

general assembly objects, hold assembly objects of appropriate dimension

Definition at line 236 of file elasticity.hh.


The documentation for this class was generated from the following files:
Elasticity::name_
static constexpr const char * name_
Definition: elasticity.hh:232
Input::Type::Record::size
unsigned int size() const
Returns number of keys in the Record.
Definition: type_record.hh:602
Elasticity::get_input_type
static const Input::Type::Record & get_input_type()
Declare input record type for the equation TransportDG.
Definition: elasticity.cc:47