modules
core
MarmotMechanicsCore
include
Marmot
MarmotMaterialHypoElasticAD.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
* Alexander Dummer alexander.dummer@uibk.ac.at
15
*
16
* This file is part of the MAteRialMOdellingToolbox (marmot).
17
*
18
* This library is free software; you can redistribute it and/or
19
* modify it under the terms of the GNU Lesser General Public
20
* License as published by the Free Software Foundation; either
21
* version 2.1 of the License, or (at your option) any later version.
22
*
23
* The full text of the license can be found in the file LICENSE.md at
24
* the top level directory of marmot.
25
* ---------------------------------------------------------------------
26
*/
27
28
#pragma once
29
#include "
Marmot/MarmotMaterialHypoElastic.h
"
30
#include "autodiff/forward/dual.hpp"
31
32
class
MarmotMaterialHypoElasticAD
:
public
MarmotMaterialHypoElastic
{
33
34
public
:
35
using
MarmotMaterialHypoElastic::MarmotMaterialHypoElastic;
36
37
virtual
void
computeStressAD
( autodiff::dual* stress,
38
const
autodiff::dual* dStrain,
39
const
double
* timeOld,
40
const
double
dT,
41
double
& pNewDT ) = 0;
42
43
virtual
void
computeStress
(
double
* stress,
44
double
* dStressDDStrain,
45
const
double
* dStrain,
46
const
double
* timeOld,
47
const
double
dT,
48
double
& pNewDT )
override
;
49
};
MarmotMaterialHypoElastic.h
MarmotMaterialHypoElasticAD
Definition:
MarmotMaterialHypoElasticAD.h:32
MarmotMaterialHypoElasticAD::computeStress
virtual void computeStress(double *stress, double *dStressDDStrain, const double *dStrain, const double *timeOld, const double dT, double &pNewDT) override
Definition:
MarmotMaterialHypoElasticAD.cpp:8
MarmotMaterialHypoElasticAD::computeStressAD
virtual void computeStressAD(autodiff::dual *stress, const autodiff::dual *dStrain, const double *timeOld, const double dT, double &pNewDT)=0
MarmotMaterialHypoElastic
Definition:
MarmotMaterialHypoElastic.h:54