www.mooseframework.org
TrussMaterial.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 #include "Material.h"
13 
14 // Forward Declarations
15 class TrussMaterial;
16 
17 template <>
18 InputParameters validParams<TrussMaterial>();
19 
20 class TrussMaterial : public Material
21 {
22 public:
23  static InputParameters validParams();
24 
25  TrussMaterial(const InputParameters & parameters);
26 
27 protected:
28  virtual void initQpStatefulProperties();
29  virtual void computeProperties();
30 
31  virtual void computeQpStrain() = 0;
32  virtual void computeQpStress() = 0;
33 
34  std::vector<MooseVariable *> _disp_var;
35 
36  const std::string _base_name;
37 
38  unsigned int _ndisp;
39  const VariableValue & _youngs_modulus;
40 
41  MaterialProperty<Real> & _total_stretch;
42  MaterialProperty<Real> & _elastic_stretch;
43  MaterialProperty<Real> & _axial_stress;
44  MaterialProperty<Real> & _e_over_l;
45 
48 };
validParams< TrussMaterial >
InputParameters validParams< TrussMaterial >()
TrussMaterial::_current_length
Real _current_length
Definition: TrussMaterial.h:47
TrussMaterial::computeQpStress
virtual void computeQpStress()=0
TrussMaterial::initQpStatefulProperties
virtual void initQpStatefulProperties()
Definition: TrussMaterial.C:55
TrussMaterial::validParams
static InputParameters validParams()
Definition: TrussMaterial.C:23
TrussMaterial::_base_name
const std::string _base_name
Definition: TrussMaterial.h:36
TrussMaterial::_ndisp
unsigned int _ndisp
Definition: TrussMaterial.h:38
TrussMaterial::TrussMaterial
TrussMaterial(const InputParameters &parameters)
Definition: TrussMaterial.C:37
TrussMaterial
Definition: TrussMaterial.h:20
TrussMaterial::computeProperties
virtual void computeProperties()
Definition: TrussMaterial.C:63
TrussMaterial::_e_over_l
MaterialProperty< Real > & _e_over_l
Definition: TrussMaterial.h:44
TrussMaterial::computeQpStrain
virtual void computeQpStrain()=0
TrussMaterial::_total_stretch
MaterialProperty< Real > & _total_stretch
Definition: TrussMaterial.h:41
TrussMaterial::_youngs_modulus
const VariableValue & _youngs_modulus
Definition: TrussMaterial.h:39
TrussMaterial::_axial_stress
MaterialProperty< Real > & _axial_stress
Definition: TrussMaterial.h:43
TrussMaterial::_origin_length
Real _origin_length
Definition: TrussMaterial.h:46
TrussMaterial::_elastic_stretch
MaterialProperty< Real > & _elastic_stretch
Definition: TrussMaterial.h:42
TrussMaterial::_disp_var
std::vector< MooseVariable * > _disp_var
Definition: TrussMaterial.h:34