ASPECT
|
Classes | |
struct | Properties |
Public Member Functions | |
void | reset () |
Public Attributes | |
std::vector< std::unique_ptr< Assemblers::Interface< dim > > > | stokes_preconditioner |
std::vector< std::unique_ptr< Assemblers::Interface< dim > > > | stokes_system |
std::vector< std::unique_ptr< Assemblers::Interface< dim > > > | stokes_system_on_boundary_face |
std::vector< std::vector< std::unique_ptr< Assemblers::Interface< dim > > > > | advection_system |
std::vector< std::vector< std::unique_ptr< Assemblers::Interface< dim > > > > | advection_system_on_boundary_face |
std::vector< std::vector< std::unique_ptr< Assemblers::Interface< dim > > > > | advection_system_on_interior_face |
Properties | stokes_preconditioner_assembler_properties |
Properties | stokes_system_assembler_properties |
Properties | stokes_system_assembler_on_boundary_face_properties |
std::vector< Properties > | advection_system_assembler_properties |
std::vector< Properties > | advection_system_assembler_on_face_properties |
A class that owns member variables representing all assemblers that need to be called when assembling right hand side vectors, matrices, or complete linear systems. We use this approach in order to support the following cases:
switch
or if
statements in the code, or one could encapsulate each equation or approximation into a collection of assemblers for this particular purpose. The approach chosen here in essence allows the implementation of each set of equations in its own scope, and we then just need to store a pointer to the object that assembles the Stokes system (for example) for the selected approximation. The pointer to this function is stored in the appropriate member variable of this class.Definition at line 124 of file simulator.h.
void aspect::Assemblers::Manager< dim >::reset | ( | ) |
Reset the state of the manager and remove all Assemblers.
std::vector<std::unique_ptr<Assemblers::Interface<dim> > > aspect::Assemblers::Manager< dim >::stokes_preconditioner |
A vector of pointers containing all assemblers for the Stokes preconditioner. These assemblers are called once per cell.
Definition at line 699 of file interface.h.
std::vector<std::unique_ptr<Assemblers::Interface<dim> > > aspect::Assemblers::Manager< dim >::stokes_system |
A vector of pointers containing all assemblers that compute cell contributions for the Stokes system. These assemblers are called once per cell.
Definition at line 706 of file interface.h.
std::vector<std::unique_ptr<Assemblers::Interface<dim> > > aspect::Assemblers::Manager< dim >::stokes_system_on_boundary_face |
A vector of pointers containing all assemblers that compute face contributions for the Stokes system. These assemblers are called once per face at a boundary with the properly initialized inputs, therefore they allow terms that only exist on boundary faces (e.g. traction boundary conditions).
Definition at line 715 of file interface.h.
std::vector<std::vector<std::unique_ptr<Assemblers::Interface<dim> > > > aspect::Assemblers::Manager< dim >::advection_system |
A vector of vectors of pointers containing a list of all assemblers for each individual advection system. These assemblers are called once per cell.
Definition at line 722 of file interface.h.
std::vector<std::vector<std::unique_ptr<Assemblers::Interface<dim> > > > aspect::Assemblers::Manager< dim >::advection_system_on_boundary_face |
A vector of vectors of pointers containing a list of all assemblers for the individual advection systems that compute face contributions at boundaries. These assemblers are called once per boundary face with the properly initialized inputs, therefore they allow terms that only exist on boundary faces (e.g. flux boundary conditions).
Definition at line 731 of file interface.h.
std::vector<std::vector<std::unique_ptr<Assemblers::Interface<dim> > > > aspect::Assemblers::Manager< dim >::advection_system_on_interior_face |
A vector of vectors of pointers containing a list of all assemblers for the individual advection systems that compute face contributions on faces between cells. These assemblers are called once per interior face with the properly initialized inputs, therefore they allow terms that only exist on interior faces (e.g. DG penalty terms).
Definition at line 740 of file interface.h.
Properties aspect::Assemblers::Manager< dim >::stokes_preconditioner_assembler_properties |
Lists of properties for the various equations we want to assemble. These property lists are set in Simulator::set_assemblers() where we add individual functions to the vectors of assembler objects above.
Definition at line 808 of file interface.h.
Properties aspect::Assemblers::Manager< dim >::stokes_system_assembler_properties |
Definition at line 809 of file interface.h.
Properties aspect::Assemblers::Manager< dim >::stokes_system_assembler_on_boundary_face_properties |
Definition at line 810 of file interface.h.
std::vector<Properties> aspect::Assemblers::Manager< dim >::advection_system_assembler_properties |
Definition at line 811 of file interface.h.
std::vector<Properties> aspect::Assemblers::Manager< dim >::advection_system_assembler_on_face_properties |
Definition at line 812 of file interface.h.