Vector function used to produced the displacement field. """ r0 = 1. theta = .5 * np.pi * x r = y + r0 ux = -x + r * np.cos(theta**2) uy = -y + r * np.sin(theta**2) uz = 0. * z return ux, uy, uz def scalar_function(x, y, z, labels): """ Scalar function used to produced the plotted field. """ return x**2 + y**2 #MESH GENERATION N1, N2, N3 = 8, 8, 8 l1, l2, l3 = .75, 1., .5 m = RegularQuadMesh(N1 = N1, N2 = N2, l1 = l1, l2 = l2).extrude(N = N3, l = l3) #FIELDS GENERATION s = m.nodes.eval_tensorFunction(tensor_function) m.add_field(s, "s") u = m.nodes.eval_vectorFunction(vector_function) m.add_field(u, "u") m.nodes.apply_displacement(u) f = m.nodes.eval_function(scalar_function) m.add_field(f, "f") m.dump2vtk("Mesh-dump2vtk.vtk")
from abapy.postproc import FieldOutput, VectorFieldOutput from abapy.mesh import RegularQuadMesh mesh = RegularQuadMesh() data1 = [2, 2, 5, 10] data2 = [1.0 for i in data1] labels = range(1, len(data1) + 1) fo1, fo2 = ( FieldOutput(labels=labels, data=data1, position="node"), FieldOutput(labels=labels, data=data2, position="node"), ) vector = VectorFieldOutput(data1=fo1, data2=fo2) out = mesh.dump2vtk() + vector.dump2vtk() f = open("vector.vtk", "w") f.write("out") f.close()
from abapy.postproc import FieldOutput, VectorFieldOutput from abapy.mesh import RegularQuadMesh mesh = RegularQuadMesh() data1 = [2, 2, 5, 10] data2 = [1. for i in data1] labels = range(1, len(data1) + 1) fo1, fo2 = FieldOutput(labels=labels, data=data1, position='node'), FieldOutput( labels=labels, data=data2, position='node') vector = VectorFieldOutput(data1=fo1, data2=fo2) out = mesh.dump2vtk() + vector.dump2vtk() f = open('vector.vtk', 'w') f.write("out") f.close()
""" r0 = 1. theta = .5 * np.pi * x r = y + r0 ux = -x + r * np.cos(theta**2) uy = -y + r * np.sin(theta**2) uz = 0. * z return ux, uy, uz def scalar_function(x, y, z, labels): """ Scalar function used to produced the plotted field. """ return x**2 + y**2 # MESH GENERATION N1, N2, N3 = 8, 8, 8 l1, l2, l3 = .75, 1., .5 m = RegularQuadMesh(N1=N1, N2=N2, l1=l1, l2=l2).extrude(N=N3, l=l3) # FIELDS GENERATION s = m.nodes.eval_tensorFunction(tensor_function) m.add_field(s, "s") u = m.nodes.eval_vectorFunction(vector_function) m.add_field(u, "u") m.nodes.apply_displacement(u) f = m.nodes.eval_function(scalar_function) m.add_field(f, "f") m.dump2vtk("Mesh-dump2vtk.vtk")