libMesh
|
Manages storage and variables for transient systems. More...
#include <transient_system.h>
Public Types | |
typedef TransientSystem< Base > | sys_type |
The type of system. More... | |
Public Member Functions | |
TransientSystem (EquationSystems &es, const std::string &name, const unsigned int number) | |
Constructor. More... | |
virtual | ~TransientSystem () |
Destructor. More... | |
sys_type & | system () |
virtual void | clear () override |
Clear all the data structures associated with the system. More... | |
virtual std::string | system_type () const override |
Number | old_solution (const dof_id_type global_dof_number) const |
Number | older_solution (const dof_id_type global_dof_number) const |
Public Attributes | |
std::unique_ptr< NumericVector< Number > > | old_local_solution |
All the values I need to compute my contribution to the simulation at hand. More... | |
std::unique_ptr< NumericVector< Number > > | older_local_solution |
All the values I need to compute my contribution to the simulation at hand. More... | |
Protected Member Functions | |
virtual void | re_update () override |
Re-update the local values when the mesh has changed. More... | |
Private Member Functions | |
virtual void | add_old_vectors () |
Helper function for (re-)adding old and older solution vectors. More... | |
Manages storage and variables for transient systems.
This class is a specialized system for solving transient systems, e.g., systems with a time dependency. It provides appropriate storage, manages variables and ensures consistency for these systems.
This template class adds the functionality to manage, in addition to the solution vector, an old solution and an older solution vector. These vectors are useful to simulate transient systems.
Used for solving transient systems of equations.
Definition at line 57 of file transient_system.h.
typedef TransientSystem<Base> libMesh::TransientSystem< Base >::sys_type |
The type of system.
Definition at line 77 of file transient_system.h.
libMesh::TransientSystem< Base >::TransientSystem | ( | EquationSystems & | es, |
const std::string & | name, | ||
const unsigned int | number | ||
) |
Constructor.
Initializes required data structures.
Definition at line 39 of file transient_system.C.
|
virtual |
|
privatevirtual |
Helper function for (re-)adding old and older solution vectors.
Definition at line 146 of file transient_system.C.
|
overridevirtual |
Clear all the data structures associated with the system.
Reimplemented in libMesh::TransientRBConstruction.
Definition at line 65 of file transient_system.C.
Number libMesh::TransientSystem< Base >::old_solution | ( | const dof_id_type | global_dof_number | ) | const |
Definition at line 122 of file transient_system.C.
Referenced by assemble_cd(), and assemble_stokes().
Number libMesh::TransientSystem< Base >::older_solution | ( | const dof_id_type | global_dof_number | ) | const |
Definition at line 134 of file transient_system.C.
|
overrideprotectedvirtual |
Re-update the local values when the mesh has changed.
This method takes the data updated by update()
and makes it up-to-date on the current mesh.
Definition at line 87 of file transient_system.C.
|
inline |
|
inlineoverridevirtual |
"Transient"
prepended to T::system_type(). Helps in identifying the system type in an equation system file. Definition at line 166 of file transient_system.h.
std::unique_ptr<NumericVector<Number> > libMesh::TransientSystem< Base >::old_local_solution |
All the values I need to compute my contribution to the simulation at hand.
Think of this as the current solution with any ghost values needed from other processors.
Definition at line 119 of file transient_system.h.
Referenced by main(), run_timestepping(), SystemsTest::testProjectCube(), SystemsTest::testProjectLine(), SystemsTest::testProjectSquare(), and SystemsTest::tripleValueTest().
std::unique_ptr<NumericVector<Number> > libMesh::TransientSystem< Base >::older_local_solution |
All the values I need to compute my contribution to the simulation at hand.
Think of this as the current solution with any ghost values needed from other processors.
Definition at line 127 of file transient_system.h.
Referenced by run_timestepping(), SystemsTest::testProjectCube(), SystemsTest::testProjectLine(), SystemsTest::testProjectSquare(), and SystemsTest::tripleValueTest().