Skip to content

Commit c78f754

Browse files
committed
clarify branches in field.get_meshes_vec
1 parent 09eae54 commit c78f754

File tree

1 file changed

+19
-14
lines changed

1 file changed

+19
-14
lines changed

src/stagpy/field.py

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -161,28 +161,33 @@ def get_meshes_vec(
161161
fldx: x component
162162
fldy: y component
163163
"""
164-
if step.geom.threed and step.geom.cartesian:
164+
if step.geom.curvilinear:
165+
if step.geom.twod_yz:
166+
pcoord = step.geom.p_walls
167+
pmesh = np.outer(pcoord, np.ones(step.geom.nrtot))
168+
vec_phi = step.fields[var + "2"].values[0, :, :, 0]
169+
vec_r = step.fields[var + "3"].values[0, :, :, 0]
170+
vec1 = vec_r * np.cos(pmesh) - vec_phi * np.sin(pmesh)
171+
vec2 = vec_phi * np.cos(pmesh) + vec_r * np.sin(pmesh)
172+
pcoord, rcoord = step.geom.p_walls, step.geom.r_centers
173+
pmesh, rmesh = np.meshgrid(pcoord, rcoord, indexing="ij")
174+
xmesh, ymesh = rmesh * np.cos(pmesh), rmesh * np.sin(pmesh)
175+
return xmesh, ymesh, vec1, vec2
176+
else:
177+
raise NotImplementedError()
178+
179+
# cartesian
180+
if step.geom.threed:
165181
(xcoord, ycoord), (vec1, vec2) = _threed_extract(conf, step, var)
166182
elif step.geom.twod_xz:
167183
xcoord, ycoord = step.geom.x_walls, step.geom.z_centers
168184
vec1 = step.fields[var + "1"].values[:, 0, :, 0]
169185
vec2 = step.fields[var + "3"].values[:, 0, :, 0]
170-
elif step.geom.cartesian and step.geom.twod_yz:
186+
else: # twod_yz
171187
xcoord, ycoord = step.geom.y_walls, step.geom.z_centers
172188
vec1 = step.fields[var + "2"].values[0, :, :, 0]
173189
vec2 = step.fields[var + "3"].values[0, :, :, 0]
174-
else: # spherical yz
175-
pcoord = step.geom.p_walls
176-
pmesh = np.outer(pcoord, np.ones(step.geom.nrtot))
177-
vec_phi = step.fields[var + "2"].values[0, :, :, 0]
178-
vec_r = step.fields[var + "3"].values[0, :, :, 0]
179-
vec1 = vec_r * np.cos(pmesh) - vec_phi * np.sin(pmesh)
180-
vec2 = vec_phi * np.cos(pmesh) + vec_r * np.sin(pmesh)
181-
pcoord, rcoord = step.geom.p_walls, step.geom.r_centers
182-
pmesh, rmesh = np.meshgrid(pcoord, rcoord, indexing="ij")
183-
xmesh, ymesh = rmesh * np.cos(pmesh), rmesh * np.sin(pmesh)
184-
if step.geom.cartesian:
185-
xmesh, ymesh = np.meshgrid(xcoord, ycoord, indexing="ij")
190+
xmesh, ymesh = np.meshgrid(xcoord, ycoord, indexing="ij")
186191
return xmesh, ymesh, vec1, vec2
187192

188193

0 commit comments

Comments
 (0)