https://mooseframework.inl.gov
ElasticEnergyMaterial.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 
13 #include "ADRankTwoTensorForward.h"
15 
20 {
21 public:
23 
25 
26  virtual void initialSetup() override;
27 
28 protected:
29  virtual Real computeF() override;
30  virtual Real computeDF(unsigned int i_var) override;
31  virtual Real computeD2F(unsigned int i_var, unsigned int j_var) override;
32 
33  const std::string _base_name;
34 
37  // std::vector<const MaterialProperty<RankTwoTensor> *> _dstress;
38  // std::vector<std::vector<const MaterialProperty<RankTwoTensor> *> > _d2stress;
39 
42  std::vector<const MaterialProperty<RankFourTensor> *> _delasticity_tensor;
43  std::vector<std::vector<const MaterialProperty<RankFourTensor> *>> _d2elasticity_tensor;
45 
48  std::vector<const MaterialProperty<RankTwoTensor> *> _dstrain;
49  std::vector<std::vector<const MaterialProperty<RankTwoTensor> *>> _d2strain;
51 };
Material class to compute the elastic free energy and its derivatives.
virtual void initialSetup() override
const MaterialProperty< RankTwoTensor > & _stress
Stress tensor.
std::vector< std::vector< const MaterialProperty< RankTwoTensor > * > > _d2strain
const std::string _base_name
static InputParameters validParams()
const MaterialProperty< RankFourTensor > & _elasticity_tensor
Elasticity tensor derivatives.
virtual Real computeF() override
ElasticEnergyMaterial(const InputParameters &parameters)
virtual Real computeDF(unsigned int i_var) override
std::vector< const MaterialProperty< RankTwoTensor > * > _dstrain
const MaterialProperty< RankTwoTensor > & _strain
Strain and derivatives.
std::vector< std::vector< const MaterialProperty< RankFourTensor > * > > _d2elasticity_tensor
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const InputParameters & parameters() const
std::vector< const MaterialProperty< RankFourTensor > * > _delasticity_tensor
virtual Real computeD2F(unsigned int i_var, unsigned int j_var) override