Smith  0.1
Smith is an implicit thermal structural mechanics simulation code.
Public Member Functions | List of all members
smith::MultiphysicsTimeIntegrator Class Reference

Time integrator for multiphysics problems, coordinating multiple weak forms. More...

#include <multiphysics_time_integrator.hpp>

Collaboration diagram for smith::MultiphysicsTimeIntegrator:
Collaboration graph
[legend]

Public Member Functions

 MultiphysicsTimeIntegrator (std::shared_ptr< SystemBase > system, std::vector< std::shared_ptr< SystemBase >> cycle_zero_systems={}, std::vector< std::shared_ptr< SystemBase >> post_solve_systems={})
 Construct a multiphysics advancer around main and auxiliary systems. More...
 
void addPostSolveSystem (std::shared_ptr< SystemBase > system)
 Register a system to be solved after the main solve and reaction computation.
 
std::pair< std::vector< FieldState >, std::vector< ReactionState > > advanceState (const TimeInfo &time_info, const FieldState &shape_disp, const std::vector< FieldState > &states, const std::vector< FieldState > &params) const override
 Advance the multiphysics state by one time step. More...
 
- Public Member Functions inherited from smith::StateAdvancer
virtual ~StateAdvancer ()
 destructor
 

Detailed Description

Time integrator for multiphysics problems, coordinating multiple weak forms.

Definition at line 28 of file multiphysics_time_integrator.hpp.

Constructor & Destructor Documentation

◆ MultiphysicsTimeIntegrator()

smith::MultiphysicsTimeIntegrator::MultiphysicsTimeIntegrator ( std::shared_ptr< SystemBase system,
std::vector< std::shared_ptr< SystemBase >>  cycle_zero_systems = {},
std::vector< std::shared_ptr< SystemBase >>  post_solve_systems = {} 
)

Construct a multiphysics advancer around main and auxiliary systems.

Parameters
systemMain system solved every timestep.
cycle_zero_systemsOptional startup systems solved independently before first regular step.
post_solve_systemsOptional systems solved after the main step.

Definition at line 19 of file multiphysics_time_integrator.cpp.

Member Function Documentation

◆ advanceState()

std::pair< std::vector< FieldState >, std::vector< ReactionState > > smith::MultiphysicsTimeIntegrator::advanceState ( const TimeInfo time_info,
const FieldState shape_disp,
const std::vector< FieldState > &  states,
const std::vector< FieldState > &  params 
) const
overridevirtual

Advance the multiphysics state by one time step.

Parameters
time_infoCurrent time information.
shape_dispShape displacement field.
statesCurrent state fields.
paramsParameter fields.
Returns
std::pair<std::vector<FieldState>, std::vector<ReactionState>> Updated states and reactions.

Implements smith::StateAdvancer.

Definition at line 38 of file multiphysics_time_integrator.cpp.


The documentation for this class was generated from the following files: