13 #include "libmesh/point.h" 47 template <
typename T,
typename T2>
182 template <
typename T,
typename T2>
186 for (
const auto & t1 : table)
189 for (
const auto & t2 : t1.second.second)
190 if (t1.first +
'_' + t2 ==
out)
195 setup(it->second, t1.second.first);
199 mooseError(
"Internal error. The permitted tensor shortcuts must be keys in the " 200 "'_rank_two_cartesian_component_table'.");
204 auto prefix = t1.first +
'_';
205 if (
out.substr(0, prefix.length()) == prefix)
207 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 ...
const bool _compatibility_mode
OLD-compat shim: auto-configures the Lagrangian kernel system to reproduce StressDivergenceTensors + ...
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
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. True if new_system = true OR compatibility_mode = true. ...
void actLagrangianKernelStrain()
void setup(EquationSystems &systems, Mesh &mesh, GetPot &args)
const bool _lk_locking
Simplified volumetric locking correction flag for new kernels.
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 ...
const bool _lk_h_off_jac
Whether to use the off diagonal scalar jacobian for the homogenization system.
std::string remapCompatOutputProp(const std::string &prop_name) const
Apply compatibility_mode remapping to a property name pulled from the _rank_two_* output tables: in c...
bool _lk_homogenization
Flag indicating if the homogenization system is present for new kernels.