Line data Source code
1 : //* This file is part of the MOOSE framework 2 : //* https://www.mooseframework.org 3 : //* 4 : //* All rights reserved, see COPYRIGHT for full restrictions 5 : //* https://github.com/idaholab/moose/blob/master/COPYRIGHT 6 : //* 7 : //* Licensed under LGPL 2.1, please see LICENSE for details 8 : //* https://www.gnu.org/licenses/lgpl-2.1.html 9 : 10 : #include "CZMComputeGlobalTractionBase.h" 11 : 12 : InputParameters 13 198 : CZMComputeGlobalTractionBase::validParams() 14 : { 15 198 : InputParameters params = InterfaceMaterial::validParams(); 16 : 17 198 : params.addClassDescription( 18 : "Base class for computing the equilibrium traction and its derivatives."); 19 198 : params.suppressParameter<bool>("use_displaced_mesh"); 20 396 : params.addParam<std::string>("base_name", "Material property base name"); 21 198 : return params; 22 0 : } 23 : 24 93 : CZMComputeGlobalTractionBase::CZMComputeGlobalTractionBase(const InputParameters & parameters) 25 : : InterfaceMaterial(parameters), 26 327 : _base_name(isParamValid("base_name") && !getParam<std::string>("base_name").empty() 27 93 : ? getParam<std::string>("base_name") + "_" 28 : : ""), 29 186 : _traction_global(declarePropertyByName<RealVectorValue>(_base_name + "traction_global")), 30 93 : _interface_traction( 31 93 : getMaterialPropertyByName<RealVectorValue>(_base_name + "interface_traction")), 32 93 : _dtraction_djump_global( 33 93 : declarePropertyByName<RankTwoTensor>(_base_name + "dtraction_djump_global")), 34 93 : _dinterface_traction_djump( 35 93 : getMaterialPropertyByName<RankTwoTensor>(_base_name + "dinterface_traction_djump")), 36 279 : _czm_total_rotation(getMaterialPropertyByName<RankTwoTensor>(_base_name + "czm_total_rotation")) 37 : { 38 93 : } 39 : 40 : void 41 36872 : CZMComputeGlobalTractionBase::computeQpProperties() 42 : { 43 : // rotate local traction and derivatives to the global coordinate system 44 36872 : computeEquilibriumTracionAndDerivatives(); 45 36872 : }