https://mooseframework.inl.gov
Loading...
Searching...
No Matches
MomentBalancing.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
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#pragma once
11
12#include "Kernel.h"
15
26class MomentBalancing : public Kernel
27{
28public:
30
32
33protected:
34 virtual Real computeQpResidual();
35 virtual Real computeQpJacobian();
36 virtual Real computeQpOffDiagJacobian(unsigned int jvar);
37
40
46
48 const unsigned int _component;
49
50 // number of Cosserat rotation components provided by the user
51 const unsigned int _nrots;
52
54 std::vector<unsigned int> _wc_var;
55
56 // number of displacement components provided by the user
57 const unsigned int _ndisp;
58
60 std::vector<unsigned int> _disp_var;
61};
This Kernel computes epsilon_ijk * stress_jk (sum over j and k) "i" is called _component in this clas...
std::vector< unsigned int > _wc_var
the moose variable numbers for the Cosserat rotation degrees of freedom
const unsigned int _nrots
const MaterialProperty< RankTwoTensor > & _stress
the stress tensor (not the moment stress) at the quad-point.
const MaterialProperty< RankFourTensor > & _Jacobian_mult
d(stress tensor)/(d strain tensor) Here strain_ij = grad_j disp_i + epsilon_ijk * wc_k
const unsigned int _component
The Kernel computes epsilon_{component j k}*stress_{j k}.
virtual Real computeQpJacobian()
virtual Real computeQpResidual()
virtual Real computeQpOffDiagJacobian(unsigned int jvar)
std::vector< unsigned int > _disp_var
the moose variable numbers for the displacements
static InputParameters validParams()
const unsigned int _ndisp
const InputParameters & parameters() const