www.mooseframework.org
ElasticityTensor.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 #ifndef ELASTICITYTENSOR_H
8 #define ELASTICITYTENSOR_H
9 
10 #include "ColumnMajorMatrix.h"
11 
21 class ElasticityTensor : public ColumnMajorMatrix
22 {
23 public:
30  ElasticityTensor(const bool constant = false);
31 
32  virtual ~ElasticityTensor() {}
33 
38  void calculate(unsigned int qp);
39 
40  virtual ColumnMajorMatrix calculateDerivative(unsigned int qp, unsigned int i);
41 
42 protected:
46  bool _constant;
47 
52 
59  virtual void calculateEntries(unsigned int qp) = 0;
60 };
61 
62 #endif // ELASTICITYTENSOR_H
This class defines a basic set of capabilities any elasticity tensor should have. ...
virtual void calculateEntries(unsigned int qp)=0
Pure virtual (must be overriden by derived class).
virtual ColumnMajorMatrix calculateDerivative(unsigned int qp, unsigned int i)
bool _values_computed
Whether or not the values have been computed once.
ElasticityTensor(const bool constant=false)
Default constructor...
virtual ~ElasticityTensor()
bool _constant
Whether or not the matrix is constant for all of time and space.
void calculate(unsigned int qp)
Public function that will be called whenever the values for this matrix need to be filled in...