Line data Source code
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 : #include "ALEKernel.h" 11 : 12 : // MOOSE includes 13 : #include "MooseVariable.h" 14 : 15 : InputParameters 16 36554 : ALEKernel::validParams() 17 : { 18 36554 : InputParameters params = Kernel::validParams(); 19 36554 : params.addClassDescription("Sets up derivatives with respect to initial configuration"); 20 36554 : return params; 21 0 : } 22 : 23 18223 : ALEKernel::ALEKernel(const InputParameters & parameters) 24 : : DerivativeMaterialInterface<Kernel>(parameters), 25 18223 : _assembly_undisplaced(_fe_problem.assembly(_tid, _sys.number())), 26 18223 : _var_undisplaced( 27 18223 : _fe_problem.getStandardVariable(_tid, parameters.get<NonlinearVariableName>("variable"))), 28 18223 : _grad_phi_undisplaced(_assembly_undisplaced.gradPhi()), 29 18223 : _grad_test_undisplaced(_var_undisplaced.gradPhi()) 30 : { 31 18223 : } 32 : 33 : void 34 35440 : ALEKernel::computeJacobian() 35 : { 36 35440 : _fe_problem.prepareShapes(_var.number(), _tid); 37 35440 : Kernel::computeJacobian(); 38 35440 : } 39 : 40 : void 41 71024 : ALEKernel::computeOffDiagJacobian(const unsigned int jvar) 42 : { 43 71024 : _fe_problem.prepareShapes(jvar, _tid); 44 71024 : Kernel::computeOffDiagJacobian(jvar); 45 71024 : }