I have results from a 2D axisymmetric simulation and would like to extrapolate this into 3D by rotation around the axis. The filters Rotational Extrusion or VolumeOfRevolution work well for scalar quantities but I can I rotate the velocity field ? The orientation of the initial vectors should change from one radial plane to the other…with for instance the X component transformed into the radial component but I cannot get such a result. Does any of you have experience with this problem ? Thank you in advance,
EJMD
To transform vector data, such as velocity, you might need to use the Python Calculator
, although this process can be cumbersome.
For instance, if you have an axisymmetric model on the x-z plane that needs to be rotated around the z-axis and converted into 3D, the vector data for velocity would need to be transformed using the Python Calculator
as follows:
from copy import deepcopy
import numpy as np
# Here, the vector array is assumed to be named velocity.
outputArray = deepcopy(velocity)
r = np.sqrt(points[:,0]**2 + points[:,1]**2)
ids = np.where(r>0)
outputArray[ids,0] = velocity[ids,0] * points[ids,0] / r[ids]
outputArray[ids,1] = velocity[ids,0] * points[ids,1] / r[ids]
return outputArray
A simple sample State file is attached below.
axis_sym.zip (53.6 KB)
I hope this is useful to you.
It is very helpful. Thanks a lot.
EJMD