示例#1
0
 def __init__(self, name="elasticplanestrain"):
   """
   Constructor.
   """
   ElasticMaterial.__init__(self, name)
   self.availableFields = \
       {'vertex': \
          {'info': [],
           'data': []},
        'cell': \
          {'info': ["mu", "lambda", "density", "stable_dt_implicit", "stable_dt_explicit",],
           'data': ["total_strain", "stress", "cauchy_stress"]}}
   self._loggingPrefix = "MaPlSn "
   return
示例#2
0
 def __init__(self, name="maxwellisotropic3d"):
   """
   Constructor.
   """
   ElasticMaterial.__init__(self, name)
   self.availableFields = \
       {'vertex': \
          {'info': [],
           'data': []},
        'cell': \
          {'info': ["mu", "lambda", "density", "stable_dt_implicit", "stable_dt_explicit", "maxwell_time"],
           'data': ["total_strain", "viscous_strain", "stress", "cauchy_stress"]}}
   self._loggingPrefix = "MaMx3D "
   return
示例#3
0
 def __init__(self, name="elasticplanestress"):
   """
   Constructor.
   """
   ElasticMaterial.__init__(self, name)
   self.availableFields = \
       {'vertex': \
          {'info': [],
           'data': []},
        'cell': \
          {'info': ["mu", "lambda", "density", "stable_dt_implicit", "stable_dt_explicit",],
           'data': ["total_strain", "stress", "cauchy_stress"]}}
   self._loggingPrefix = "MaPlSt "
   return
示例#4
0
 def __init__(self, name="maxwellisotropic3d"):
     """
 Constructor.
 """
     ElasticMaterial.__init__(self, name)
     self.availableFields = \
         {'vertex': \
            {'info': [],
             'data': []},
          'cell': \
            {'info': ["mu", "lambda", "density", "stable_dt_implicit", "stable_dt_explicit", "maxwell_time"],
             'data': ["total_strain", "viscous_strain", "stress", "cauchy_stress"]}}
     self._loggingPrefix = "MaMx3D "
     return
示例#5
0
 def __init__(self, name="druckerprager3d"):
   """
   Constructor.
   """
   ElasticMaterial.__init__(self, name)
   self.availableFields = \
       {'vertex': \
          {'info': [],
           'data': []},
        'cell': \
          {'info': ["mu", "lambda", "density", "stable_dt_implicit", "stable_dt_explicit",
                    "alpha_yield", "beta", "alpha_flow"],
           'data': ["total_strain", "stress", "plastic_strain"]}}
   self._loggingPrefix = "MaDP3D "
   return
示例#6
0
 def __init__(self, name="druckerprager3d"):
   """
   Constructor.
   """
   ElasticMaterial.__init__(self, name)
   self.availableFields = \
       {'vertex': \
          {'info': [],
           'data': []},
        'cell': \
          {'info': ["mu", "lambda", "density", "stable_dt_implicit", "stable_dt_explicit",
                    "alpha_yield", "beta", "alpha_flow"],
           'data': ["total_strain", "stress", "cauchy_stress", "plastic_strain"]}}
   self._loggingPrefix = "MaDP3D "
   return
示例#7
0
 def _configure(self):
   """
   Setup members using inventory.
   """
   ElasticMaterial._configure(self)
   if self.inventory.fitMohrCoulomb == "inscribed":
     fitEnum = ModuleDruckerPrager3D.MOHR_COULOMB_INSCRIBED
   elif self.inventory.fitMohrCoulomb == "middle":
     fitEnum = ModuleDruckerPrager3D.MOHR_COULOMB_MIDDLE
   elif self.inventory.fitMohrCoulomb == "circumscribed":
     fitEnum = ModuleDruckerPrager3D.MOHR_COULOMB_CIRCUMSCRIBED
   else:
     raise ValueError("Unknown fit to Mohr-Coulomb yield surface.")
   ModuleDruckerPrager3D.fitMohrCoulomb(self, fitEnum)
   ModuleDruckerPrager3D.allowTensileYield(self, self.inventory.allowTensileYield)
   return
示例#8
0
 def __init__(self, name="powerlaw3d"):
   """
   Constructor.
   """
   ElasticMaterial.__init__(self, name)
   self.availableFields = \
       {'vertex': \
          {'info': [],
           'data': []},
        'cell': \
          {'info': ["mu", "lambda", "density", "stable_dt_implicit", "stable_dt_explicit",
                    "reference_strain_rate", "reference_stress",
                    "power_law_exponent"],
           'data': ["total_strain", "stress", "viscous_strain"]}}
   self._loggingPrefix = "MaPL3D "
   return
示例#9
0
 def _configure(self):
   """
   Setup members using inventory.
   """
   ElasticMaterial._configure(self)
   if self.inventory.fitMohrCoulomb == "inscribed":
     fitEnum = ModuleDruckerPrager3D.MOHR_COULOMB_INSCRIBED
   elif self.inventory.fitMohrCoulomb == "middle":
     fitEnum = ModuleDruckerPrager3D.MOHR_COULOMB_MIDDLE
   elif self.inventory.fitMohrCoulomb == "circumscribed":
     fitEnum = ModuleDruckerPrager3D.MOHR_COULOMB_CIRCUMSCRIBED
   else:
     raise ValueError("Unknown fit to Mohr-Coulomb yield surface.")
   ModuleDruckerPrager3D.fitMohrCoulomb(self, fitEnum)
   ModuleDruckerPrager3D.allowTensileYield(self, self.inventory.allowTensileYield)
   return
示例#10
0
 def __init__(self, name="powerlaw3d"):
   """
   Constructor.
   """
   ElasticMaterial.__init__(self, name)
   self.availableFields = \
       {'vertex': \
          {'info': [],
           'data': []},
        'cell': \
          {'info': ["mu", "lambda", "density", "stable_dt_implicit", "stable_dt_explicit",
                    "reference_strain_rate", "reference_stress",
                    "power_law_exponent"],
           'data': ["total_strain", "stress", "cauchy_stress", "viscous_strain"]}}
   self._loggingPrefix = "MaPL3D "
   return
示例#11
0
 def __init__(self, name="genmaxwellplanestrain"):
   """
   Constructor.
   """
   ElasticMaterial.__init__(self, name)
   self.availableFields = \
       {'vertex': \
          {'info': [],
           'data': []},
        'cell': \
          {'info': ["mu", "lambda", "density", "stable_dt_implicit", "stable_dt_explicit",
                    "shear_ratio", "maxwell_time"],
           'data': ["stress_zz_initial",
                    "total_strain", "stress",
                    "viscous_strain_1", 
                    "viscous_strain_2", 
                    "viscous_strain_3",
                    ]}}
   self._loggingPrefix = "MaGM2D "
   return
示例#12
0
 def __init__(self, name="genmaxwellplanestrain"):
     """
 Constructor.
 """
     ElasticMaterial.__init__(self, name)
     self.availableFields = \
         {'vertex': \
            {'info': [],
             'data': []},
          'cell': \
            {'info': ["mu", "lambda", "density", "stable_dt_implicit", "stable_dt_explicit",
                      "shear_ratio", "maxwell_time"],
             'data': ["stress_zz_initial",
                      "total_strain", "stress", "cauchy_stress",
                      "viscous_strain_1",
                      "viscous_strain_2",
                      "viscous_strain_3",
                      ]}}
     self._loggingPrefix = "MaGM2D "
     return
 def __init__(self, name="genmaxwellqpqsisotropic3d"):
   """
   Constructor.
   """
   ElasticMaterial.__init__(self, name)
   self.availableFields = \
       {'vertex': \
          {'info': [],
           'data': []},
        'cell': \
          {'info': ["mu", "k", "density", "stable_dt_implicit", "stable_dt_explicit",
                    "shear_ratio", 
                    "bulk_ratio",
                    "maxwell_time_shear",
                    "maxwell_time_bulk"],
           'data': ["total_strain", "stress", "cauchy_stress",
                    "viscous_deviatoric_strain", 
                    "viscous_mean_strain", 
                    ]}}
   self._loggingPrefix = "MaGQ3D "
   return
示例#14
0
 def __init__(self, name="genmaxwellqpqsisotropic3d"):
     """
 Constructor.
 """
     ElasticMaterial.__init__(self, name)
     self.availableFields = \
         {'vertex': \
            {'info': [],
             'data': []},
          'cell': \
            {'info': ["mu", "k", "density", "stable_dt_implicit", "stable_dt_explicit",
                      "shear_ratio",
                      "bulk_ratio",
                      "maxwell_time_shear",
                      "maxwell_time_bulk"],
             'data': ["total_strain", "stress", "cauchy_stress",
                      "viscous_deviatoric_strain",
                      "viscous_mean_strain",
                      ]}}
     self._loggingPrefix = "MaGQ3D "
     return