FEM: calculix writer, rename set writing methods to a generic one

This commit is contained in:
Bernd Hahnebach
2021-07-11 13:49:16 +02:00
parent 241ffb81ad
commit e2e012e2d0
13 changed files with 24 additions and 24 deletions

View File

@@ -44,7 +44,7 @@ def get_constraint_title():
return "Centrif Constraints"
def write_elements(f, femobj, centrif_obj, ccxwriter):
def write_meshdata_constraint(f, femobj, centrif_obj, ccxwriter):
f.write("*ELSET,ELSET={}\n".format(centrif_obj.Name))
# use six to be sure to be Python 2.7 and 3.x compatible
if isinstance(femobj["FEMElements"], six.string_types):

View File

@@ -38,7 +38,7 @@ def get_constraint_title():
return "Contact Constraints"
def write_surfacefaces(f, femobj, contact_obj, ccxwriter):
def write_meshdata_constraint(f, femobj, contact_obj, ccxwriter):
# slave DEP
f.write("*SURFACE, NAME=DEP{}\n".format(contact_obj.Name))
for i in femobj["ContactSlaveFaces"]:

View File

@@ -38,7 +38,7 @@ def get_constraint_title():
return "Displacement constraint applied"
def write_nodes(f, femobj, disp_obj, ccxwriter):
def write_meshdata_constraint(f, femobj, disp_obj, ccxwriter):
f.write("*NSET,NSET={}\n".format(disp_obj.Name))
for n in femobj["Nodes"]:
f.write("{},\n".format(n))

View File

@@ -38,7 +38,7 @@ def get_constraint_title():
return "Fixed Constraints"
def write_nodes(f, femobj, fix_obj, ccxwriter):
def write_meshdata_constraint(f, femobj, fix_obj, ccxwriter):
if (
ccxwriter.femmesh.Volumes
and (len(ccxwriter.shellthickness_objects) > 0 or len(ccxwriter.beamsection_objects) > 0)

View File

@@ -34,7 +34,7 @@ def get_sets_name():
return "constraints_force_node_loads"
def write_nodeloads(f, femobj, force_obj, ccxwriter):
def write_meshdata_constraint(f, femobj, force_obj, ccxwriter):
direction_vec = femobj["Object"].DirectionVector
for ref_shape in femobj["NodeLoadTable"]:
f.write("** " + ref_shape[0] + "\n")

View File

@@ -34,7 +34,7 @@ def get_sets_name():
return "constraints_heatflux_element_face_heatflux"
def write_heatflux(f, femobj, heatflux_obj, ccxwriter):
def write_meshdata_constraint(f, femobj, heatflux_obj, ccxwriter):
if heatflux_obj.ConstraintType == "Convection":
heatflux_key_word = "FILM"
heatflux_facetype = "F"

View File

@@ -41,7 +41,7 @@ def get_constraint_title():
return "PlaneRotation Constraints"
def write_nodes(f, femobj, fric_obj, ccxwriter):
def write_meshdata_constraint(f, femobj, fric_obj, ccxwriter):
# write nodes to file
if not ccxwriter.femnodes_mesh:
ccxwriter.femnodes_mesh = ccxwriter.femmesh.Nodes

View File

@@ -34,7 +34,7 @@ def get_sets_name():
return "constraints_pressure_element_face_loads"
def write_pressure(f, femobj, prs_obj, ccxwriter):
def write_meshdata_constraint(f, femobj, prs_obj, ccxwriter):
rev = -1 if prs_obj.Reversed else 1
f.write("*DLOAD\n")
for ref_shape in femobj["PressureFaces"]:

View File

@@ -38,7 +38,7 @@ def get_constraint_title():
return "SectionPrint Constraints"
def write_surfacefaces(f, femobj, sectionprint_obj, ccxwriter):
def write_meshdata_constraint(f, femobj, sectionprint_obj, ccxwriter):
f.write("*SURFACE, NAME=SECTIONFACE{}\n".format(sectionprint_obj.Name))
for i in femobj["SectionPrintFaces"]:
f.write("{},S{}\n".format(i[0], i[1]))

View File

@@ -38,7 +38,7 @@ def get_constraint_title():
return "Fixed temperature constraint applied"
def write_nodes(f, femobj, temp_obj, ccxwriter):
def write_meshdata_constraint(f, femobj, temp_obj, ccxwriter):
f.write("*NSET,NSET={}\n".format(temp_obj.Name))
for n in femobj["Nodes"]:
f.write("{},\n".format(n))

View File

@@ -38,7 +38,7 @@ def get_constraint_title():
return "Tie Constraints"
def write_surfacefaces(f, femobj, tie_obj, ccxwriter):
def write_meshdata_constraint(f, femobj, tie_obj, ccxwriter):
# slave DEP
f.write("*SURFACE, NAME=TIE_DEP{}\n".format(tie_obj.Name))
for i in femobj["TieSlaveFaces"]:

View File

@@ -41,7 +41,7 @@ def get_constraint_title():
return "Transform Constraints"
def write_nodes(f, femobj, trans_obj, ccxwriter):
def write_meshdata_constraint(f, femobj, trans_obj, ccxwriter):
if trans_obj.TransformType == "Rectangular":
f.write("*NSET,NSET=Rect{}\n".format(trans_obj.Name))
elif trans_obj.TransformType == "Cylindrical":

View File

@@ -373,7 +373,7 @@ class FemInputWriterCcx(writerbase.FemInputWriter):
femobjs=self.fixed_objects,
analysis_types=con_fixed.get_analysis_types(),
write_name=con_fixed.get_sets_name(),
sets_writer_method=con_fixed.write_nodes,
sets_writer_method=con_fixed.write_meshdata_constraint,
caller_method_name=sys._getframe().f_code.co_name,
)
@@ -395,7 +395,7 @@ class FemInputWriterCcx(writerbase.FemInputWriter):
femobjs=self.displacement_objects,
analysis_types=con_displacement.get_analysis_types(),
write_name=con_displacement.get_sets_name(),
sets_writer_method=con_displacement.write_nodes,
sets_writer_method=con_displacement.write_meshdata_constraint,
caller_method_name=sys._getframe().f_code.co_name,
)
@@ -418,7 +418,7 @@ class FemInputWriterCcx(writerbase.FemInputWriter):
femobjs=self.planerotation_objects,
analysis_types=con_planerotation.get_analysis_types(),
write_name=con_planerotation.get_sets_name(),
sets_writer_method=con_planerotation.write_nodes,
sets_writer_method=con_planerotation.write_meshdata_constraint,
caller_method_name=sys._getframe().f_code.co_name,
)
@@ -440,7 +440,7 @@ class FemInputWriterCcx(writerbase.FemInputWriter):
femobjs=self.contact_objects,
analysis_types=con_contact.get_analysis_types(),
write_name=con_contact.get_sets_name(),
sets_writer_method=con_contact.write_surfacefaces,
sets_writer_method=con_contact.write_meshdata_constraint,
caller_method_name=sys._getframe().f_code.co_name,
)
@@ -462,7 +462,7 @@ class FemInputWriterCcx(writerbase.FemInputWriter):
femobjs=self.tie_objects,
analysis_types=con_tie.get_analysis_types(),
write_name=con_tie.get_sets_name(),
sets_writer_method=con_tie.write_surfacefaces,
sets_writer_method=con_tie.write_meshdata_constraint,
caller_method_name=sys._getframe().f_code.co_name,
)
@@ -484,7 +484,7 @@ class FemInputWriterCcx(writerbase.FemInputWriter):
femobjs=self.sectionprint_objects,
analysis_types=con_sectionprint.get_analysis_types(),
write_name=con_sectionprint.get_sets_name(),
sets_writer_method=con_sectionprint.write_surfacefaces,
sets_writer_method=con_sectionprint.write_meshdata_constraint,
caller_method_name=sys._getframe().f_code.co_name,
)
@@ -506,7 +506,7 @@ class FemInputWriterCcx(writerbase.FemInputWriter):
femobjs=self.transform_objects,
analysis_types=con_transform.get_analysis_types(),
write_name=con_transform.get_sets_name(),
sets_writer_method=con_transform.write_nodes,
sets_writer_method=con_transform.write_meshdata_constraint,
caller_method_name=sys._getframe().f_code.co_name,
)
@@ -528,7 +528,7 @@ class FemInputWriterCcx(writerbase.FemInputWriter):
femobjs=self.temperature_objects,
analysis_types=con_temperature.get_analysis_types(),
write_name=con_temperature.get_sets_name(),
sets_writer_method=con_temperature.write_nodes,
sets_writer_method=con_temperature.write_meshdata_constraint,
caller_method_name=sys._getframe().f_code.co_name,
)
@@ -602,7 +602,7 @@ class FemInputWriterCcx(writerbase.FemInputWriter):
femobjs=self.centrif_objects,
analysis_types=con_centrif.get_analysis_types(),
write_name=con_centrif.get_sets_name(),
sets_writer_method=con_centrif.write_elements,
sets_writer_method=con_centrif.write_meshdata_constraint,
caller_method_name=sys._getframe().f_code.co_name,
)
@@ -624,7 +624,7 @@ class FemInputWriterCcx(writerbase.FemInputWriter):
femobjs=self.force_objects,
analysis_types=con_force.get_analysis_types(),
write_name=con_force.get_sets_name(),
sets_writer_method=con_force.write_nodeloads,
sets_writer_method=con_force.write_meshdata_constraint,
caller_method_name=sys._getframe().f_code.co_name,
write_before="*CLOAD\n"
)
@@ -637,7 +637,7 @@ class FemInputWriterCcx(writerbase.FemInputWriter):
femobjs=self.pressure_objects,
analysis_types=con_pressure.get_analysis_types(),
write_name=con_pressure.get_sets_name(),
sets_writer_method=con_pressure.write_pressure,
sets_writer_method=con_pressure.write_meshdata_constraint,
caller_method_name=sys._getframe().f_code.co_name,
)
@@ -649,7 +649,7 @@ class FemInputWriterCcx(writerbase.FemInputWriter):
femobjs=self.heatflux_objects,
analysis_types=con_heatflux.get_analysis_types(),
write_name=con_heatflux.get_sets_name(),
sets_writer_method=con_heatflux.write_heatflux,
sets_writer_method=con_heatflux.write_meshdata_constraint,
caller_method_name=sys._getframe().f_code.co_name,
)