MarmotMaterial.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 #pragma once
29 #include "Marmot/MarmotUtils.h"
30 #include <string>
31 
33 
34 protected:
35  const double* materialProperties;
37 
38  double* stateVars;
40 
41 public:
42  const int materialNumber;
43 
45 
46  virtual ~MarmotMaterial();
47 
48  virtual int getNumberOfRequiredStateVars() = 0;
49 
50  virtual void assignStateVars( double* stateVars, int nStateVars );
51 
52  virtual StateView getStateView( const std::string& stateName ) = 0;
53 
55 
57 
58  virtual void initializeYourself();
59 };
MarmotMaterial::MarmotMaterial
MarmotMaterial(const double *materialProperties, int nMaterialProperties, int materialNumber)
MarmotMaterial::assignStateVars
virtual void assignStateVars(double *stateVars, int nStateVars)
StateView
Definition: MarmotUtils.h:29
MarmotMaterial::getNumberOfAssignedStateVars
int getNumberOfAssignedStateVars()
MarmotMaterial::initializeYourself
virtual void initializeYourself()
MarmotUtils.h
MarmotMaterial::~MarmotMaterial
virtual ~MarmotMaterial()
MarmotMaterial::getNumberOfRequiredStateVars
virtual int getNumberOfRequiredStateVars()=0
MarmotMaterial
Definition: MarmotMaterial.h:32
MarmotMaterial::getStateView
virtual StateView getStateView(const std::string &stateName)=0
MarmotMaterial::stateVars
double * stateVars
Definition: MarmotMaterial.h:38
MarmotMaterial::getAssignedStateVars
double * getAssignedStateVars()
MarmotMaterial::materialNumber
const int materialNumber
Definition: MarmotMaterial.h:42
MarmotMaterial::nStateVars
int nStateVars
Definition: MarmotMaterial.h:39
MarmotMaterial::nMaterialProperties
const int nMaterialProperties
Definition: MarmotMaterial.h:36
MarmotMaterial::materialProperties
const double * materialProperties
Definition: MarmotMaterial.h:35