107 translates = [[0, 0, 0], [1.5, 0, 0]]
108 translates_end = [[0, 0, 0], [0.5, 0, 0]]
109 rot = np.array([0.0, 0])
110 rot_end = np.array([0.0, 90])
111 translates = np.array(translates)
112 translates_end = np.array(translates_end)
116 (np.eye(3, 3), np.array(translates[i]))
for i
in range(len(translates))
122 os.path.dirname(__file__),
128 "CylinderNoFar.cgns",
134 osMan.read_meshes_and_init(mesh_names, transforms)
139 inter = np.linspace(0, 1, Nstep)
140 for i
in range(0, Nstep):
141 translate_now = inter[i] * translates_end + (1 - inter[i]) * translates
142 rot_now = inter[i] * rot_end + (1 - inter[i]) * rot
144 from scipy.spatial.transform
import Rotation
as R
148 R.from_euler(
"xyz", [0, 0, rot_now[i]], degrees=
True).as_matrix(),
149 np.array(translate_now[i]),
151 for i
in range(len(translate_now))
153 for iPart, part
in enumerate(osMan.parts):
154 part.transform = transforms[iPart]
156 t0 = time.perf_counter()
157 osMan.process_overset(1.0 / 10)
158 if mpiGlob.rank == 0:
160 f
"[{i+1}/{Nstep}] process done. 🥺 time: [{time.perf_counter() - t0}]"
163 osMan.print_full_mesh_type(together=
True, out_name=f
"os_type_1_{i:04}")