Metafor

ULiege - Aerospace & Mechanical Engineering

User Tools

Site Tools


doc:user:elements:volumes:isohard

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
doc:user:elements:volumes:isohard [2013/07/11 14:44] – created jorisdoc:user:elements:volumes:isohard [2020/07/08 10:16] (current) – [Python] papeleux
Line 1: Line 1:
-====== Ecrouissage isotrope ======+====== Isotropic hardening ======
  
-La classe ''IsotropicHardening'' gère les différentes lois d'écrouissage isotrope.  +The ''IsotropicHardening'' class manages all isotropic hardening laws in Metafor, which are described below.
-Lois implémentées dans Metafor.+
  
  
Line 11: Line 10:
 === Description === === Description ===
  
-Ecrouissage isotrope linéaire+Linear isotropic hardening
  
 $$ $$
Line 17: Line 16:
 $$ $$
  
-=== Paramètres === +=== Parameters === 
  
-^          Nom                                         ^  Codes Metafor ^ Type de dépendance +^          Name                                        ^  Metafor Code  Dependency         
-|Limite élastique initiale $\sigma^{el}$  |  ''IH_SIGEL''  |  ''TM/TO''         | +|Initial yield stress $\sigma^{el}$  |  ''IH_SIGEL''  |  ''TM/TO''         | 
-|Taux d'écrouissage $h $                  |    ''IH_H''    |  ''TM/TO''         +|Plastic Modulus $h $                |    ''IH_H''    |  ''TM/TO''          
 + 
 +**NB**: the plastic modulus is defined as $h = \frac{E E_T}{E - E_T} $, where $E$ is the Young's modulus and $E_T$ the tangent modulus.
  
 ===== SaturatedIsotropicHardening ===== ===== SaturatedIsotropicHardening =====
Line 27: Line 28:
 === Description === === Description ===
  
-Ecrouissage isotrope à saturation+Saturated isotropic hardening
  
 $$ $$
Line 33: Line 34:
 $$ $$
  
-=== Paramètres === +=== Parameters === 
  
-^          Nom                                         ^  Codes Metafor ^ Type de dépendance +^          Name                                        ^  Metafor Code  Dependency         
-|Limite élastique initiale $\sigma^{el}$  |  ''IH_SIGEL''  |  ''TM/TO''         | +|Initial yield stress $\sigma^{el}$  |  ''IH_SIGEL''  |  ''TM/TO''         | 
-|$Q $                                      |    ''IH_Q''    |  ''TM/TO''         |  +|$Q $                                |    ''IH_Q''    |  ''TM/TO''         |  
-|$\xi$                                    |   ''IH_KSI''    ''TM/TO''         +|$\xi$                               |   ''IH_KSI''    ''TM/TO''         
  
 ===== DoubleSaturatedIsotropicHardening ===== ===== DoubleSaturatedIsotropicHardening =====
Line 44: Line 45:
 === Description === === Description ===
  
-Ecrouissage isotrope à double saturation+Double saturated isotropic hardening
  
 $$ $$
Line 50: Line 51:
 $$ $$
  
-=== Paramètres ===+=== Parameters ===
  
-^          Nom               ^  Codes Metafor ^ Type de dépendance +^          Name                                        ^  Metafor Code  Dependency         
-|Limite élastique initiale $\sigma^{el}$  |  ''IH_SIGEL''  |  ''TM/TO''         |+|Initial yield stress $\sigma^{el}$  |  ''IH_SIGEL''  |  ''TM/TO''         |
 |$Q_1$                      |   ''IH_Q1''    |  ''TM/TO''          |$Q_1$                      |   ''IH_Q1''    |  ''TM/TO''         
-|$\xi_1$                    |   ''IH_KS1''    ''TM/TO''         +|$\xi_1$                    |   ''IH_KSI1''    ''TM/TO''         
 |$Q_2$                      |   ''IH_Q2''    |  ''TM/TO''          |$Q_2$                      |   ''IH_Q2''    |  ''TM/TO''         
-|$\xi_2$                    |   ''IH_KS2''    ''TM/TO''         +|$\xi_2$                    |   ''IH_KSI2''    ''TM/TO''         
  
 ===== RambergOsgoodIsotropicHardening ===== ===== RambergOsgoodIsotropicHardening =====
  
 === Description === === Description ===
- +Ramberg-Osgood isotropic hardening
-Ecrouissage isotrope de Ramberg-Osgood+
  
 $$ $$
Line 69: Line 69:
 $$ $$
  
-=== Paramètres ===+=== Parameters ===
  
-^          Nom                                          ^  Codes Metafor ^ Type de dépendance +^          Name                                        ^  Metafor Code  Dependency         
-|Limite élastique initiale $\sigma^{el}$    ''IH_SIGEL''  |  ''TM/TO''         |+|Initial yield stress $\sigma^{el}$    ''IH_SIGEL''  |  ''TM/TO''         |
 |$A $                                      |    ''IH_A''    |  ''TM/TO''          |$A $                                      |    ''IH_A''    |  ''TM/TO''         
 |$n $                                      |    ''IH_N''    |  ''TM/TO''          |$n $                                      |    ''IH_N''    |  ''TM/TO''         
Line 80: Line 80:
 === Description === === Description ===
  
-Ecrouissage isotrope de Swift (une forme plus commune de Ramberg - Osgood)+Swift isotropic hardening (a more common formulation of Ramberg - Osgood)
  
 $$ $$
Line 86: Line 86:
 $$ $$
  
-=== Paramètres ===+=== Parameters ===
  
-^          Nom                                          ^  Codes Metafor ^ Type de dépendance +^          Name                                        ^  Metafor Code  Dependency         
-|Limite élastique initiale $\sigma^{el}$    ''IH_SIGEL''  |  ''TM/TO''         |+|Initial yield stress $\sigma^{el}$    ''IH_SIGEL''  |  ''TM/TO''         |
 |$B $                                      |    ''IH_B''    |  ''TM/TO''          |$B $                                      |    ''IH_B''    |  ''TM/TO''         
 |$n $                                      |    ''IH_N''    |  ''TM/TO''          |$n $                                      |    ''IH_N''    |  ''TM/TO''         
Line 96: Line 96:
 === Description === === Description ===
  
-Ecrouissage isotrope de Krupkowsky+Krupkowski isotropic hardening
  
 $$ $$
-\sigma_{vm} = K \left(\bar{\varepsilon}^{vp}_ {0} + \bar{\varepsilon}^{vp}\right)^{n}+\sigma_{vm} = K \left(\bar{\varepsilon}^{vp}_{0} + \bar{\varepsilon}^{vp}\right)^{n}
 $$ $$
  
-=== Paramètres ===+=== Parameters ===
  
-^          Nom                                          ^  Codes Metafor ^ Type de dépendance +^          Name                                                   ^  Metafor Code  Dependency         
-|Defo Plastique équivalente initiale |  ''IH_EVPL0''  |  ''TM/TO''         | +Initial equivalent plastic strain $\bar{\varepsilon}^{vp}_{0}$  |  ''IH_EVPL0''  |  ''TM/TO''         | 
-|$K $                                      |    ''IH_K''    |  ''TM/TO''         |  +strength coefficient  $K$                                       |    ''IH_K''    |  ''TM/TO''         |  
-|$n $                                      |    ''IH_N''    |  ''TM/TO''         +strain hardening exponent $n$                                   |    ''IH_N''    |  ''TM/TO''         
  
 ===== Nl8pIsotropicHardening ===== ===== Nl8pIsotropicHardening =====
Line 113: Line 113:
 === Description === === Description ===
  
-Ecrouissage isotrope non linéaire paramètres. +Nonlinear isotropic hardening with parametersFirst one implemented, can be used to do almost everything. 
-Loi historique de Metafor (permet de faire quasi ce qu'on veut).+
  
 $$ $$
-\begin {eqnarray*} +\sigma_{vm} = \left(P_2-P_1\right) \left(1-\exp\left(-P_3\bar{\varepsilon}^{vp}\right)\right) + P_4\left(\bar{\varepsilon}^{vp}\right)^{P_5} 
-\sigma_{vm} &=\left(P_2-P_1\right)\, \left(1-\exp\left(-P_3\,\bar{\varepsilon}^{vp}\right)\right)\, \, P_4\left(\bar{\varepsilon}^{vp}\right)^{P_5} \, \\ +$$ 
-            & & \, P_1\left(1+P_6\,\bar{\varepsilon}^{vp}\right)^{P_7} \, \, P_8\,\bar{\varepsilon}^{vp+$$ 
-\end{eqnarray*}++ P_1\left(1+P_6\bar{\varepsilon}^{vp}\right)^{P_7} +  P_8\bar{\varepsilon}^{vp}
 $$ $$
  
-=== Paramètres ===+=== Parameters ===
  
-Nom   ^  Codes Metafor ^ Type de dépendance ^+         Name                                        ^  Metafor Code  Dependency         ^
 |$P_1$ |    ''IH_P1''       ''TM/TO''      | |$P_1$ |    ''IH_P1''       ''TM/TO''      |
 |$P_2$ |    ''IH_P2''       ''TM/TO''      |  |$P_2$ |    ''IH_P2''       ''TM/TO''      | 
Line 139: Line 139:
 === Description === === Description ===
  
-Ecrouissage isotrope linéaire par morceau. +Piecewise linear isotropic hardeningA function is associated to the yield stress.
-Associe une fonction quelconque à la limite élastique (par exemple pour faire du linéaire par morceau).+
  
 $$ $$
Line 146: Line 145:
 $$ $$
  
-=== Paramètres ===+=== Parameters ===
  
-^          Nom                                          ^  Codes Metafor ^ Type de dépendance +^          Name                                        ^  Metafor Code  Dependency         
-|Limite élastique initiale $\sigma^{el}$    ''IH_SIGEL''  |  ''GD''         |+|Initial yield stress $\sigma^{el}$    ''IH_SIGEL''  |  ''IF_EPL''         |
  
-Une fonction d'évolution doit nécessairement être associée à ''IH_SIGEL'' (dépendant des déplacements généralisés ''GD'').+An [[doc:user:general:fonctions]] must be associated to ''IH_SIGEL'' (depending on ''Field(IF_EPL)'').
  
  
Line 157: Line 156:
  
 === Description === === Description ===
- 
-Ecrouissage isotrope de type puissance. 
  
 $$ $$
Line 164: Line 161:
 $$ $$
  
-L'intégration de cette loi se fait de manière itérative.+This law is integrated with an iterative method.
  
-=== Paramètres ===+=== Parameters ===
  
- Nom               ^  Codes Metafor  Type de dépendance  ^+         Name                                        ^  Metafor Code  Dependency         ^
 |$P_1$  |    ''IH_P1''    |      ''TM/TO''       | |$P_1$  |    ''IH_P1''    |      ''TM/TO''       |
 |$P_2$  |    ''IH_P2''    |      ''TM/TO''        |$P_2$  |    ''IH_P2''    |      ''TM/TO''       
Line 179: Line 176:
 === Description === === Description ===
  
-Ecrouissage isotrope de type "Smatch".+"Smatch" isotropic hardening.
  
 $$ $$
Line 186: Line 183:
 $$ $$
  
-=== Paramètres ===+=== Parameters ===
  
- Nom               ^  Codes Metafor  Type de dépendance  ^+         Name           ^  Metafor Code  Dependency         ^
 |$P_1$  |    ''IH_P1''    |      ''TM/TO''       | |$P_1$  |    ''IH_P1''    |      ''TM/TO''       |
 |$P_2$  |    ''IH_P2''    |      ''TM/TO''        |$P_2$  |    ''IH_P2''    |      ''TM/TO''       
Line 202: Line 199:
 === Description === === Description ===
  
-Ecrouissage isotrope de type "Goijaerts".+"Goijaerts" isotropic hardening
  
 $$ $$
Line 208: Line 205:
 $$ $$
  
-=== Paramètres ===+=== Parameters ===
  
- Nom               ^  Codes Metafor  Type de dépendance  ^+         Name                                        ^  Metafor Code  Dependency         ^
 |$M_1$  |    ''IH_M1''    |      ''TM/TO''       | |$M_1$  |    ''IH_M1''    |      ''TM/TO''       |
 |$M_2$  |    ''IH_M2''    |      ''TM/TO''        |$M_2$  |    ''IH_M2''    |      ''TM/TO''       
Line 223: Line 220:
 === Description === === Description ===
  
-Ecrouissage isotrope de type "Kocks-Mecking".+"Kocks-Mecking" isotropic hardening
  
 $$ $$
Line 234: Line 231:
 $$ $$
  
-avec la contrainte limite de transition entre les stades et 4+where the transition yield stress between stages and is defined as
  
 $$ $$
Line 240: Line 237:
 $$ $$
  
-et la défo plastique de transition correspondante : +and the corresponding yield strain as 
  
 $$ $$
Line 246: Line 243:
 $$ $$
  
-=== Paramètres ===+=== Parameters ===
  
-Nom                       ^  Codes Metafor       Type de dépendance  ^+         Name                                        ^  Metafor Code  Dependency         ^
 |$\sigma_0$    |   ''IH_SIGEL''      |  ''TM/TO''           | |$\sigma_0$    |   ''IH_SIGEL''      |  ''TM/TO''           |
 |$\beta$         ''KM_BETA''        ''TM/TO''            |$\beta$         ''KM_BETA''        ''TM/TO''           
 |$\Theta_{0}$  |   ''KM_THETA0''      ''TM/TO''            |$\Theta_{0}$  |   ''KM_THETA0''      ''TM/TO''           
 |$\Theta_{IV}$ |   ''KM_THETA4''      ''TM/TO''           | |$\Theta_{IV}$ |   ''KM_THETA4''      ''TM/TO''           |
 +
 +===== Python =====
 +
 +User defined Isotropic Hardening by a pythonDirector :
 +
 +Python Director allows user to define their own Isotropic Hardening law. Five functions has to be defined in the Python Class : 
 +  * a constructor (<code>__init__</code>),
 +  * a destructor (<code>__del__</code>) that must never be called, 
 +  * computeSvm  (epl, pLaw)
 +  * computeH (epl, pLaw)
 +  * computePotential (epl, pLaw) for hyperElastics models
 +See the example below of a Linear Isotropic Hardening : 
 +<code>
 +
 +class MyIsoH(PythonIsotropicHardening):
 +    def __init__(self, _no, _svm0, _h):
 +        print("MyIsoH : __init__")
 +        PythonIsotropicHardening.__init__(self,_no)
 +        self.svm0 = _svm0
 +        self.h    = _h
 +        print("no = ", _no)
 +        print("self.svm0 = ", self.svm0)
 +        print("self.h = ", self.h)
 +        print("MyIsoH : __init__ finished")
 +        print("computeSvm(0.0) = " , self.computeSvm(0.0, None))
 +    def __del__(self):
 +        print("MyIsoH : __del__")
 +        print("callToDestructor of MyIsoH not allowed. Add MyIsoH.__disown__()")
 +        input('')
 +        exit(1)
 +    def computeSvm(self, epl, pLaw) :
 +        #print "MyIsoH compute SVM"
 +        return self.svm0+epl*self.h
 +    def computeH(self, epl, pLaw) :
 +        #print "MyIsoH compute H"
 +        return self.h
 +    def computePotential(self, epl, pLaw) :
 +        #print "MyIsoH compute Potential"
 +        return (self.svm0+self.h*epl*0.5)*epl
 +</code>
  
  
doc/user/elements/volumes/isohard.txt · Last modified: 2020/07/08 10:16 by papeleux

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki