@@ -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