www.mooseframework.org
ElementDamper.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
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 // Moose Includes
13 #include "Damper.h"
15 #include "MooseTypes.h"
16 
17 // Forward Declarations
18 class ElementDamper;
19 class SubProblem;
20 class SystemBase;
21 template <typename>
25 class Assembly;
26 
27 template <>
29 
34 {
35 public:
37 
41  Real computeDamping();
42 
46  MooseVariable * getVariable() { return &_var; }
47 
48 protected:
54  virtual Real computeQpDamping() = 0;
55 
59 
62 
65 
67  const Elem * const & _current_elem;
68 
70  unsigned int _qp;
74  const QBase * const & _qrule;
77 
81  const VariableValue & _u;
84 };
85 
const Moose::CoordinateSystemType & _coord_sys
Coordinate system.
Definition: ElementDamper.h:61
const QBase *const & _qrule
Quadrature rule.
Definition: ElementDamper.h:74
const Elem *const & _current_elem
Current element.
Definition: ElementDamper.h:67
const MooseArray< Point > & _q_point
Quadrature points.
Definition: ElementDamper.h:72
Keeps track of stuff related to assembling.
Definition: Assembly.h:62
Class for stuff related to variables.
Definition: Adaptivity.h:29
ElementDamper(const InputParameters &parameters)
Definition: ElementDamper.C:32
MooseVariableFE< Real > MooseVariable
Definition: ElementDamper.h:22
const VariableValue & _u
Holds the current solution at the current quadrature point.
Definition: ElementDamper.h:81
unsigned int _qp
Quadrature point index.
Definition: ElementDamper.h:70
const VariableValue & _u_increment
The current Newton increment.
Definition: ElementDamper.h:79
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
MooseVariableFE< VectorValue< Real > > VectorMooseVariable
Definition: ElementDamper.h:24
Base class for a system (of equations)
Definition: SystemBase.h:92
const InputParameters & parameters() const
Get the parameters of the object.
Definition: MooseObject.h:65
const MooseArray< Real > & _JxW
Transformed Jacobian weights.
Definition: ElementDamper.h:76
THREAD_ID _tid
Thread ID.
Definition: ElementDamper.h:57
CoordinateSystemType
Definition: MooseTypes.h:556
Base class for deriving element dampers.
Definition: ElementDamper.h:33
OutputTools< Real >::VariableValue VariableValue
Definition: MooseTypes.h:197
InputParameters validParams< ElementDamper >()
Definition: ElementDamper.C:23
Generic class for solving transient nonlinear problems.
Definition: SubProblem.h:59
An interface for accessing Materials.
virtual Real computeQpDamping()=0
This MUST be overridden by a child damper.
MooseVariable & _var
Non-linear variable this damper works on.
Definition: ElementDamper.h:64
Base class for deriving dampers.
Definition: Damper.h:29
MooseVariable * getVariable()
Get the variable this damper is acting on.
Definition: ElementDamper.h:46
Assembly & _assembly
Definition: ElementDamper.h:58
const VariableGradient & _grad_u
Holds the current solution gradient at the current quadrature point.
Definition: ElementDamper.h:83
Real computeDamping()
Computes this Damper&#39;s damping for one element.
Definition: ElementDamper.C:53
unsigned int THREAD_ID
Definition: MooseTypes.h:161