https://mooseframework.inl.gov
Loading...
Searching...
No Matches
Torque.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 "IntegratedBC.h"
13#include "ADIntegratedBC.h"
14
15class Function;
16
17// switch parent class depending on is_ad value
18template <bool is_ad>
19using TorqueParent = typename std::conditional<is_ad, ADIntegratedBC, IntegratedBC>::type;
20
24template <bool is_ad>
25class TorqueTempl : public TorqueParent<is_ad>
26{
27public:
29
30 TorqueTempl(const InputParameters & parameters);
31
32protected:
34
35 Real componentJacobian(unsigned int component);
36
37 virtual Real computeQpJacobian();
38 virtual Real computeQpOffDiagJacobian(unsigned int);
39
41 unsigned int _component;
42
44 const Point _origin;
46 const RealVectorValue _torque;
47
51 const Real & _alpha;
54
56 const unsigned int _ndisp;
58 std::vector<unsigned int> _dvars;
59
61 const Point _dummy_point;
62
64 using TorqueParent<is_ad>::_i;
65 using TorqueParent<is_ad>::_qp;
66 using TorqueParent<is_ad>::_test;
67 using TorqueParent<is_ad>::_q_point;
68};
69
Real PostprocessorValue
Moose::GenericType< Real, is_ad > GenericReal
typename std::conditional< is_ad, ADIntegratedBC, IntegratedBC >::type TorqueParent
Definition Torque.h:19
Apply a torque as tractions distributed over a surface.
Definition Torque.h:26
Real componentJacobian(unsigned int component)
const Point _dummy_point
dummy point (zero) used in evaluating the time dependent prefactor
Definition Torque.h:61
const Function & _factor
prefactor function (can only be time dependent)
Definition Torque.h:49
unsigned int _component
coordinte axis this BC acts on
Definition Torque.h:41
virtual Real computeQpOffDiagJacobian(unsigned int)
Definition Torque.C:122
usingTransientInterfaceMembers
Definition Torque.h:63
virtual Real computeQpJacobian()
Definition Torque.C:115
static InputParameters validParams()
Definition Torque.C:18
virtual GenericReal< is_ad > computeQpResidual()
const PostprocessorValue & _pmi
postprocessor that computes the polar moment of inertia
Definition Torque.h:53
const Real & _alpha
alpha parameter required for HHT time integration scheme
Definition Torque.h:51
const unsigned int _ndisp
number of coupled displacement variables
Definition Torque.h:56
const RealVectorValue _torque
applied torque vector
Definition Torque.h:46
std::vector< unsigned int > _dvars
coupled displacement variables
Definition Torque.h:58
const Point _origin
pivot point for the torque
Definition Torque.h:44