FEM: z88 tasks and writer, make use of mesh set data getter class

This commit is contained in:
Bernd Hahnebach
2021-08-06 09:29:14 +02:00
parent 6dbe713d7b
commit ec3b79aa9d
2 changed files with 16 additions and 6 deletions

View File

@@ -38,6 +38,7 @@ from . import writer
from .. import run
from .. import settings
from feminout import importZ88O2Results
from femmesh import meshsetsgetter
from femtools import femutils
from femtools import membertools
@@ -58,11 +59,24 @@ class Prepare(run.Prepare):
def run(self):
self.pushStatus("Preparing solver input...\n")
# get mesh set data
# TODO see calculix tasks get mesh set data
mesh_obj = membertools.get_mesh_to_solve(self.analysis)[0] # pre check done already
meshdatagetter = meshsetsgetter.MeshSetsGetter(
self.analysis,
self.solver,
mesh_obj,
membertools.AnalysisMember(self.analysis),
)
meshdatagetter.get_mesh_sets()
# write solver input
w = writer.FemInputWriterZ88(
self.analysis,
self.solver,
membertools.get_mesh_to_solve(self.analysis)[0], # pre check has been done already
membertools.AnalysisMember(self.analysis),
mesh_obj,
meshdatagetter.member,
self.directory
)
path = w.write_solver_input()

View File

@@ -142,8 +142,6 @@ class FemInputWriterZ88(writerbase.FemInputWriter):
constraints_data = [] # will be a list of tuple for better sorting
# fixed constraints
# get nodes
self.get_constraints_fixed_nodes()
# write nodes to constraints_data (different from writing to file in ccxInpWriter
for femobj in self.fixed_objects:
for n in femobj["Nodes"]:
@@ -152,8 +150,6 @@ class FemInputWriterZ88(writerbase.FemInputWriter):
constraints_data.append((n, "{} 3 2 0\n".format(n)))
# forces constraints
# check shape type of reference shape and get node loads
self.get_constraints_force_nodeloads()
# write node loads to constraints_data
# a bit different from writing to file for ccxInpWriter
for femobj in self.force_objects: