Exemple #1
0
  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()
Exemple #4
0
    """
    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")