https://mooseframework.inl.gov
Loading...
Searching...
No Matches
DisplacementAboutAxis.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 "DirichletBCBase.h"
13
14// MOOSE includes
15#include "ColumnMajorMatrix.h"
16
17// Forward Declarations
18class Function;
19
21
27{
28public:
30
32
33protected:
35 virtual Real computeQpValue();
36 virtual void initialSetup();
37
40 ColumnMajorMatrix rotateAroundAxis(const ColumnMajorMatrix & p0, const Real angle);
41
45
49
50 const int _component;
51 const Function & _func;
53 const Point _axis_origin;
55
57 const unsigned int _ndisp;
58
60 std::vector<const VariableValue *> _disp_old;
61
64
67};
void addDisplacementAboutAxisParams(InputParameters &params)
Implements a boundary condition that enforces rotational displacement around an axis on a boundary.
void calculateTransformationMatrices()
Calculate the rotation about the x and y axes based on the provided axis direction vector at the star...
static InputParameters validParams()
virtual Real computeQpValue()
Evaluate the boundary condition at the current quadrature point and timestep.
ColumnMajorMatrix rotateAroundAxis(const ColumnMajorMatrix &p0, const Real angle)
Calculate the tranformation matrix to rotate in x, y, and z depends on the prescribed BC angle and th...
const unsigned int _ndisp
number of displacement components
void calculateUnitDirectionVector()
Check if the provided axis direction vector is a unit vector and normalizes the vector if necessary d...
ColumnMajorMatrix _transformation_matrix
const bool _angular_velocity
flag for incremental formulation
ColumnMajorMatrix _transformation_matrix_inv
std::vector< const VariableValue * > _disp_old
the old displacement value
const InputParameters & parameters() const