/[escript]/trunk/modellib/py_src/mechanics.py
ViewVC logotype

Diff of /trunk/modellib/py_src/mechanics.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 815 by gross, Wed Aug 23 09:31:10 2006 UTC revision 816 by gross, Thu Aug 24 00:03:01 2006 UTC
# Line 153  class DruckerPrager(Mechanics): Line 153  class DruckerPrager(Mechanics):
153             """             """
154             super(DruckerPrager, self).doInitialization()             super(DruckerPrager, self).doInitialization()
155             self.__plastic_stress_old=self.plastic_stress             self.__plastic_stress_old=self.plastic_stress
156             self.__tau_y_old=tau_y=self.shear_length             self.__tau_y_old=self.shear_length
157    
158        def doStepPreprocessing(self,dt):        def doStepPreprocessing(self,dt):
159              """              """
# Line 164  class DruckerPrager(Mechanics): Line 164  class DruckerPrager(Mechanics):
164              """              """
165              super(DruckerPrager, self).doStepPreprocessing(dt)              super(DruckerPrager, self).doStepPreprocessing(dt)
166              self.plastic_stress=self.__plastic_stress_old              self.plastic_stress=self.__plastic_stress_old
             self.tau_y=self.__tau_y_old  
167    
168        def doStep(self,dt):        def doStep(self,dt):
169             G=self.shear_modulus             G=self.shear_modulus
# Line 174  class DruckerPrager(Mechanics): Line 173  class DruckerPrager(Mechanics):
173             tau_Y=self.shear_length             tau_Y=self.shear_length
174             if self.__plastic_stress_old:             if self.__plastic_stress_old:
175                dps=self.plastic_stress-self.__plastic_stress_old                dps=self.plastic_stress-self.__plastic_stress_old
176                h=(tau_Y-self.tau_Y_last)/(dps+self.abs_tol*whereZero(dps))                h=(tau_Y-self.__tau_y_old)/(dps+self.abs_tol*whereZero(dps))
177             else:             else:
178                h=0                h=0
179             # set new tangential operator:             # set new tangential operator:
# Line 191  class DruckerPrager(Mechanics): Line 190  class DruckerPrager(Mechanics):
190        def doStepPostprocessing(self,dt):        def doStepPostprocessing(self,dt):
191            super(DruckerPrager, self).doStepPostprocessing(dt)            super(DruckerPrager, self).doStepPostprocessing(dt)
192            self.plastic_stress=self.__plastic_stress_old=self.plastic_stress            self.plastic_stress=self.__plastic_stress_old=self.plastic_stress
           self.shear_length=self.__tau_y_old  
193    
194        def getNewStress(self,s,gamma_p,du,ds_therm,tau_Y,G,K,alpha,beta,h):        def getNewStress(self,s,gamma_p,du,ds_therm,tau_Y,G,K,alpha,beta,h):
195              k3=kronecker(self.domain)              k3=kronecker(self.domain)

Legend:
Removed from v.815  
changed lines
  Added in v.816

  ViewVC Help
Powered by ViewVC 1.1.26