https://mooseframework.inl.gov
Loading...
Searching...
No Matches
ADDistributedLoadShell.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 "GenericKernel.h"
13#include "MooseTypes.h"
14#include "MooseTypes.h"
15#include "libmesh/quadrature_gauss.h"
16
17class Function;
18
24template <bool is_ad>
26{
27public:
29
31
32protected:
33 virtual GenericReal<is_ad> computeQpResidual() override;
34
36
38 const unsigned int _ndisp;
40 unsigned int _component;
42 const Function * const _function;
43
46
48 std::vector<unsigned int> _disp_var;
49
51 std::vector<const Node *> _nodes;
52
54 RealVectorValue _v1;
56 RealVectorValue _v2;
58 RealVectorValue _normal;
59
61 using GenericKernel<is_ad>::_i;
62 using GenericKernel<is_ad>::_name;
64 using GenericKernel<is_ad>::_q_point;
65 using GenericKernel<is_ad>::_qp;
66 using GenericKernel<is_ad>::_test;
67 using GenericKernel<is_ad>::_var;
68};
69
71{
72public:
74
75protected:
76};
77
ADDistributedLoadShellTempl< true > ADADDistributedLoadShell
Moose::GenericType< Real, is_ad > GenericReal
ADDistributedLoadShell applies a distributed load on the shell element in a given direction defined b...
const bool _project_load_to_normal
if this parameter is set true, the load will be applied normal to the shell plane
std::vector< const Node * > _nodes
Vector storing pointers to the nodes of the shell element.
static InputParameters validParams()
std::vector< unsigned int > _disp_var
Variable numbers of coupled displacement variables.
virtual GenericReal< is_ad > computeQpResidual() override
RealVectorValue _v2
An auxiliary in-plane vector used to calculate the normal vector to the shell.
const Function *const _function
distributed load value defined through function
GenericReal< is_ad > computeFactor() const
RealVectorValue _normal
Normal vector to the shell plane calcualted from cross product of _v1 and _v2.
unsigned int _component
displacement component to apply the pressure to the shell
const unsigned int _ndisp
Number of displacement variables.
RealVectorValue _v1
An auxiliary in-plane vector used to calculate the normal vector to the shell.
const MooseArray< Point > & _q_point
const Elem *const & _current_elem
MooseVariable & _var
const VariableTestValue & _test
const InputParameters & parameters() const
const std::string & _name