Smith  0.1
Smith is an implicit thermal structural mechanics simulation code.
Classes | Namespaces | Functions
solid_mechanics_with_internal_vars_system.hpp File Reference

Helpers to wire internal-variable materials to composed solid and internal-variable systems. More...

#include "smith/differentiable_numerics/solid_mechanics_system.hpp"
#include "smith/differentiable_numerics/state_variable_system.hpp"
Include dependency graph for solid_mechanics_with_internal_vars_system.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  smith::detail::CoupledSolidInternalVariableMaterialAdapter< MaterialType >
 Adapts coupled internal-variable solids to solid-system material interface. More...
 

Namespaces

 smith
 Accelerator functionality.
 
 smith::detail
 Internal solid mechanics builder after coupling fields are assembled.
 

Functions

template<typename MaterialType , typename AlphaType , typename AlphaDotType , typename DerivType , typename... ParamTypes>
auto smith::detail::evaluateCoupledInternalVariableMaterial (const MaterialType &material, const TimeInfo &t_info, AlphaType alpha, AlphaDotType alpha_dot, DerivType deriv_u, ParamTypes &&... params)
 Dispatch internal-variable material calls with or without explicit TimeInfo.
 
template<typename MaterialType , typename StateType , typename GradUType , typename GradVType , typename AlphaType , typename... ParamTypes>
auto smith::detail::evaluateSolidInternalVariableMaterial (const MaterialType &material, const TimeInfo &t_info, StateType &state, const GradUType &grad_u, const GradVType &grad_v, AlphaType alpha, ParamTypes &&... params)
 Evaluate solid/internal-variable material using TimeInfo-aware signature.
 
template<int dim, int disp_order, typename DispRule , typename SolidCoupling , typename StateSpace , typename StateRule , typename StateCoupling , typename MaterialType >
void smith::setCoupledSolidMechanicsInternalVariableMaterial (std::shared_ptr< SolidMechanicsSystem< dim, disp_order, DispRule, SolidCoupling >> solid, std::shared_ptr< InternalVariableSystem< dim, StateSpace, StateRule, StateCoupling >>, const MaterialType &material, const std::string &domain_name)
 Register a solid material integrand on a SolidMechanicsSystem that is coupled to an InternalVariableSystem carrying internal variables. More...
 
template<int dim, typename StateSpace , typename StateRule , typename StateCoupling , int disp_order, typename DispRule , typename SolidCoupling , typename MaterialType >
void smith::setCoupledInternalVariableMaterial (std::shared_ptr< InternalVariableSystem< dim, StateSpace, StateRule, StateCoupling >> internal_variables, std::shared_ptr< SolidMechanicsSystem< dim, disp_order, DispRule, SolidCoupling >>, const MaterialType &material, const std::string &domain_name)
 Register an internal-variable evolution law using solid displacement coupling. More...
 
template<int dim, int disp_order, typename DispRule , typename SolidCoupling , typename StateSpace , typename StateRule , typename StateCoupling , typename MaterialType >
void smith::setCoupledSolidMechanicsInternalVarsMaterial (std::shared_ptr< SolidMechanicsSystem< dim, disp_order, DispRule, SolidCoupling >> solid, std::shared_ptr< InternalVariableSystem< dim, StateSpace, StateRule, StateCoupling >> state, const MaterialType &material, const std::string &domain_name)
 Backward-compatible alias for setCoupledSolidMechanicsInternalVariableMaterial. More...
 

Detailed Description

Helpers to wire internal-variable materials to composed solid and internal-variable systems.

Definition in file solid_mechanics_with_internal_vars_system.hpp.