13 #include "libmesh/point.h" 42 template <
typename T,
typename T2>
171 template <
typename T,
typename T2>
175 for (
const auto & t1 : table)
178 for (
const auto & t2 : t1.second.second)
179 if (t1.first +
'_' + t2 ==
out)
184 setup(it->second, t1.second.first);
188 mooseError(
"Internal error. The permitted tensor shortcuts must be keys in the " 189 "'_rank_two_cartesian_component_table'.");
193 auto prefix = t1.first +
'_';
194 if (
out.substr(0, prefix.length()) == prefix)
196 setup(
out.substr(prefix.length()), t1.second.first);
const bool _lk_large_kinematics
Simplified flag for small/large deformations, Lagrangian kernel system.
static const std::map< unsigned int, std::string > _order_mapper
MultiMooseEnum _material_output_order
void actGatherActionParameters()
std::set< SubdomainID > _subdomain_id_union
set generated from the combined block restrictions of all SolidMechanics/Master action blocks ...
enum QuasiStaticSolidMechanicsPhysics::StrainAndIncrement _strain_and_increment
std::vector< AuxVariableName > _save_in
residual debugging
virtual InputParameters getKernelParameters(std::string type)
bool setupOutput(std::string out, T table, T2 setup)
Helper function to decode generate_outputs options using a "table" of scalar output quantities and a ...
std::vector< AuxVariableName > _diag_save_in
std::set< SubdomainID > _subdomain_ids
set generated from the passed in vector of subdomain names
unsigned int _ndisp
Number of displacement variables.
void actStressDivergenceTensorsStrain()
LKFormulation
New kernel system kinematics types.
const bool _auto_eigenstrain
automatically gather names of eigenstrain tensors provided by simulation objects
Moose::CoordinateSystemType _coord_system
std::vector< VariableName > _displacements
displacement variables
std::vector< std::string > _generate_output
output materials to generate scalar stress/strain tensor quantities
enum QuasiStaticSolidMechanicsPhysics::PlanarFormulation _planar_formulation
const LKFormulation _lk_formulation
QuasiStaticSolidMechanicsPhysics(const InputParameters ¶ms)
void verifyOrderAndFamilyOutputs()
std::vector< SubdomainName > _subdomain_names
if this vector is not empty the variables, kernels and materials are restricted to these subdomains ...
const std::string _integrator_name
bool _use_displaced_mesh
use displaced mesh (true unless _strain is SMALL)
StrainAndIncrement
strain formulation
enum QuasiStaticSolidMechanicsPhysics::Strain _strain
std::vector< VariableName > _coupled_displacements
Coupled displacement variables.
MultiMooseEnum _material_output_family
bool _cylindrical_axis_point1_valid
booleans used to determine if cylindrical axis points are passed
std::vector< FunctionName > _targets
const std::string & type() const
bool _lk_locking
Simplified volumetric locking correction flag for new kernels.
static std::map< std::string, std::string > _rank_two_cartesian_component_table
std::vector< MaterialPropertyName > _eigenstrain_names
const OutOfPlaneDirection _out_of_plane_direction
void actSubdomainChecks()
const bool _lagrangian_kernels
New or old kernel system.
void actLagrangianKernelStrain()
void setup(EquationSystems &systems, Mesh &mesh, GetPot &args)
static InputParameters validParams()
void mooseError(Args &&... args) const
const std::string _homogenization_strain_name
Point _spherical_center_point
center point for spherical stress/strain quantities
Point _cylindrical_axis_point2
void actOutputGeneration()
bool _spherical_center_point_valid
booleans used to determine if spherical center point is passed
const std::string _base_name
base name for the current master action block
bool _cylindrical_axis_point2_valid
MultiMooseEnum _constraint_types
PlanarFormulation
use an out of plane stress/strain formulation
void actEigenstrainNames()
virtual std::string getKernelType()
Point _cylindrical_axis_point1
points used to determine axis of rotation for cylindrical stress/strain quantities ...
bool _lk_homogenization
Flag indicating if the homogenization system is present for new kernels.