83 mooseAssert(grain_id <
_grain_volumes.size(),
"grain_id out of bounds");
86 RealGradient force_jacobian;
87 RealGradient torque_jacobian;
99 for (
unsigned int jvar_index = 0; jvar_index <
_op_num; ++jvar_index)
116 const auto force_jac =
_mt / volume * force_jacobian;
117 const auto torque_jac =
118 _mr / volume * torque_jacobian.cross(
_current_elem->vertex_average() - centroid);
136 mooseAssert(grain_id <
_grain_volumes.size(),
"grain_id out of bounds");
registerMooseObject("PhaseFieldApp", MultiGrainRigidBodyMotion)
static const unsigned int invalid_id
std::vector< unsigned int > _grain_ids
obtain the active grain ids
const std::vector< RealGradient > & _grain_forces
unsigned int _c_var
int label for the Concentration
const VariableGradient & _grad_c
Variable gradient for the concentration.
const std::vector< Real > & _grain_force_c_jacobians
const GrainTrackerInterface & _grain_tracker
grain tracker object
const Real _mt
constant value corresponding to grain translation
RealGradient _velocity_advection_jacobian
const std::vector< unsigned int > _vals_var
RealGradient _velocity_advection
storing the advection velocity and corresponding jacobian entries calculated in userobjects
const VectorPostprocessorValue & _grain_volumes
The grain volumes.
const std::vector< std::vector< Real > > & _grain_force_eta_jacobians
const unsigned int _op_num
no. of order parameters
static InputParameters validParams()
const std::vector< RealGradient > & _grain_torques
const Real _mr
constant value corresponding to grain rotation
unsigned int _total_dofs
get the total no. of dofs in the system
virtual const std::vector< unsigned int > & getVarToFeatureVector(dof_id_type elem_id) const =0
Returns a list of active unique feature ids for a particular element.
virtual Point getGrainCentroid(unsigned int grain_id) const =0
Returns the centroid for the given grain number.
const Elem *const & _current_elem
const VariableTestValue & _test
const VariablePhiGradient & _grad_phi
unsigned int number() const
virtual Real computeQpOffDiagJacobian(unsigned int)
virtual Real computeQpNonlocalOffDiagJacobian(unsigned int, dof_id_type)
virtual Real computeQpNonlocalJacobian(dof_id_type)
virtual void getUserObjectJacobian(unsigned int jvar, dof_id_type dof_index)
virtual Real computeQpJacobian()
virtual void calculateAdvectionVelocity()
virtual Real computeQpResidual()
static InputParameters validParams()
MultiGrainRigidBodyMotion(const InputParameters ¶meters)