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

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
doc:user:elements:volumes:isohard [2016/03/30 15:23] – external edit 127.0.0.1doc:user:elements:volumes:isohard [2020/07/08 10:15] – [Python] papeleux
Line 21: Line 21:
 |Initial yield stress $\sigma^{el}$  |  ''IH_SIGEL''  |  ''TM/TO''         | |Initial yield stress $\sigma^{el}$  |  ''IH_SIGEL''  |  ''TM/TO''         |
 |Plastic Modulus $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 94: Line 96:
 === Description === === Description ===
  
-Krupkowsky isotropic hardening+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}
 $$ $$
  
 === Parameters === === Parameters ===
  
-^          Name                                        ^  Metafor Code  ^ Dependency         ^ +^          Name                                                   ^  Metafor Code  ^ Dependency         ^ 
-|Initial equivalent plastic strain |  ''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 248: Line 250:
 |$\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 (__init__),
 +  * a destructor (__del__) 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