MarmotMaterialHyperElastic.h
Go to the documentation of this file.
1 /* ---------------------------------------------------------------------
2  * _
3  * _ __ ___ __ _ _ __ _ __ ___ ___ | |_
4  * | '_ ` _ \ / _` | '__| '_ ` _ \ / _ \| __|
5  * | | | | | | (_| | | | | | | | | (_) | |_
6  * |_| |_| |_|\__,_|_| |_| |_| |_|\___/ \__|
7  *
8  * Unit of Strength of Materials and Structural Analysis
9  * University of Innsbruck,
10  * 2020 - today
11  *
12  * festigkeitslehre@uibk.ac.at
13  *
14  * Matthias Neuner matthias.neuner@uibk.ac.at
15  * Magdalena Schreter magdalena.schreter@uibk.ac.at
16  *
17  * This file is part of the MAteRialMOdellingToolbox (marmot).
18  *
19  * This library is free software; you can redistribute it and/or
20  * modify it under the terms of the GNU Lesser General Public
21  * License as published by the Free Software Foundation; either
22  * version 2.1 of the License, or (at your option) any later version.
23  *
24  * The full text of the license can be found in the file LICENSE.md at
25  * the top level directory of marmot.
26  * ---------------------------------------------------------------------
27  */
28 
29 #pragma once
31 
54 
55 public:
56  using MarmotMaterialMechanical::MarmotMaterialMechanical;
73  virtual void computeStress( double* S, // PK2
74  double* dSdE, // d PK2 d GL_E
75  const double* FOld,
76  const double* FNew,
77  const double* timeOld,
78  const double dT,
79  double& pNewDT ) override;
80 
95  virtual void computeStressPK2( double* S,
96  double* dSdE,
97  const double* E,
98  const double* timeOld,
99  const double dT,
100  double& pNewDT ) = 0;
101 
105  virtual void computePlaneStressPK2( double* S2D,
106  double* dSdE2D,
107  const double* E2D,
108  const double* timeOld,
109  const double dT,
110  double& pNewDT );
111 
115  virtual void computeUniaxialStressPK2( double* S1D,
116  double* dSdE1D,
117  const double* E1D,
118  const double* timeOld,
119  const double dT,
120  double& pNewDT );
121 };
MarmotMaterialMechanical.h
Marmot::ContinuumMechanics::Elasticity::Isotropic::E
constexpr double E(const double K, const double G)
Definition: MarmotElasticity.h:48
MarmotMaterialHyperElastic
Definition: MarmotMaterialHyperElastic.h:53
MarmotMaterialHyperElastic::computeStressPK2
virtual void computeStressPK2(double *S, double *dSdE, const double *E, const double *timeOld, const double dT, double &pNewDT)=0
MarmotMaterialHyperElastic::computeStress
virtual void computeStress(double *S, double *dSdE, const double *FOld, const double *FNew, const double *timeOld, const double dT, double &pNewDT) override
Definition: MarmotMaterialHyperElastic.cpp:12
MarmotMaterialHyperElastic::computeUniaxialStressPK2
virtual void computeUniaxialStressPK2(double *S1D, double *dSdE1D, const double *E1D, const double *timeOld, const double dT, double &pNewDT)
Definition: MarmotMaterialHyperElastic.cpp:83
MarmotMaterialMechanical
Definition: MarmotMaterialMechanical.h:53
MarmotMaterialHyperElastic::computePlaneStressPK2
virtual void computePlaneStressPK2(double *S2D, double *dSdE2D, const double *E2D, const double *timeOld, const double dT, double &pNewDT)
Definition: MarmotMaterialHyperElastic.cpp:72