FEM: nonlinear material, add a third yield point and only write yield points if they are not empty
This commit is contained in:
@@ -603,8 +603,12 @@ class FemInputWriterCcx(FemInputWriter.FemInputWriter):
|
||||
if nl_mat_obj.LinearBaseMaterial == mat_obj:
|
||||
if nl_mat_obj.MaterialModelNonlinearity == "simple hardening":
|
||||
f.write('*PLASTIC\n')
|
||||
f.write(nl_mat_obj.YieldPoint1 + '\n')
|
||||
f.write(nl_mat_obj.YieldPoint2 + '\n')
|
||||
if nl_mat_obj.YieldPoint1:
|
||||
f.write(nl_mat_obj.YieldPoint1 + '\n')
|
||||
if nl_mat_obj.YieldPoint2:
|
||||
f.write(nl_mat_obj.YieldPoint2 + '\n')
|
||||
if nl_mat_obj.YieldPoint3:
|
||||
f.write(nl_mat_obj.YieldPoint3 + '\n')
|
||||
f.write('\n')
|
||||
|
||||
def write_constraints_initialtemperature(self, f):
|
||||
|
||||
@@ -44,8 +44,11 @@ class _FemMaterialMechanicalNonlinear:
|
||||
obj.addProperty("App::PropertyString", "YieldPoint1", "Fem", "Set stress and strain for yield point one, separated by a comma.")
|
||||
obj.YieldPoint1 = "235.0, 0.0"
|
||||
|
||||
obj.addProperty("App::PropertyString", "YieldPoint2", "Fem", "Set stress and strain for yield point one, separated by a comma.")
|
||||
obj.addProperty("App::PropertyString", "YieldPoint2", "Fem", "Set stress and strain for yield point two, separated by a comma.")
|
||||
obj.YieldPoint2 = "241.0, 0.025"
|
||||
|
||||
obj.addProperty("App::PropertyString", "YieldPoint3", "Fem", "Set stress and strain for yield point three, separated by a comma.")
|
||||
obj.YieldPoint3 = ""
|
||||
|
||||
def execute(self, obj):
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user