https://mooseframework.inl.gov
Loading...
Searching...
No Matches
SCZMComputeDisplacementJumpBase.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
14
15#define usingSCZMComputeDisplacementJumpBaseMembers \
16 usingInterfaceMaterialMembers; \
17 using SCZMComputeDisplacementJumpBase<is_ad>::_base_name; \
18 using SCZMComputeDisplacementJumpBase<is_ad>::_ndisp; \
19 using SCZMComputeDisplacementJumpBase<is_ad>::_disp; \
20 using SCZMComputeDisplacementJumpBase<is_ad>::_disp_neighbor; \
21 using SCZMComputeDisplacementJumpBase<is_ad>::_displacement_jump_global; \
22 using SCZMComputeDisplacementJumpBase<is_ad>::_interface_displacement_jump; \
23 using SCZMComputeDisplacementJumpBase<is_ad>::_czm_total_rotation
24
30template <bool is_ad>
32{
33public:
36
37protected:
43
44 virtual void initialSetup() override final;
45
47 void computeGlobalDisplacementJump() override;
48
50 void computeRotationMatrices() override;
51
54 std::vector<const GenericVariableGradient<is_ad> *> _grad_disp;
55 std::vector<const GenericVariableGradient<is_ad> *> _grad_disp_neighbor;
57
60
63};
Computes and stores the distance vectors and true surface normals from surrogate boundary quadrature ...
This interface material class computes the displacement jump in the interface natural coordinate syst...
const unsigned int _ndisp
number of displacement components
GenericMaterialProperty< RealVectorValue, is_ad > & _displacement_jump_global
the displacement jump in global and interface coordiantes
GenericMaterialProperty< RankTwoTensor, is_ad > & _czm_total_rotation
the rotation matrix transforming from the interface to the global coordinate systems
unsigned int _qp
MooseMesh & _mesh
const InputParameters & parameters() const
This interface material class computes the displacement jump in the interface natural coordinate syst...
const BoundaryShortestDistanceToSurface * _sbm_distance_uo
Distance/normal provider user object.
std::vector< const GenericVariableGradient< is_ad > * > _grad_disp
the coupled displacement gradients
void computeRotationMatrices() override
Computes the rotation using the true-interface normal.
bool _shifted
Flag indicating whether shifted terms are included.
std::vector< const GenericVariableGradient< is_ad > * > _grad_disp_neighbor
void computeGlobalDisplacementJump() override
Computes the jump at the true interface using displacement gradients.