@@ -184,8 +184,8 @@ def AdvectionAnalytical(particle, fieldset, time):
184184 time_i = np .linspace (0 , fieldset .U .grid .time [ti + 1 ] - fieldset .U .grid .time [ti ], I_s )
185185 ds_t = min (ds_t , time_i [np .where (time - fieldset .U .grid .time [ti ] < time_i )[0 ][0 ]])
186186
187- xsi , eta , zeta , xi , yi , zi = fieldset .U ._search_indices (
188- particle .lon , particle .lat , particle .depth , particle = particle
187+ zeta , eta , xsi , zi , yi , xi = fieldset .U ._search_indices (
188+ - 1 , particle .depth , particle .lat , particle .lon , particle = particle
189189 )
190190 if withW :
191191 if abs (xsi - 1 ) < tol :
@@ -232,14 +232,14 @@ def AdvectionAnalytical(particle, fieldset, time):
232232 else :
233233 dz = 1.0
234234
235- c1 = fieldset .UV .dist (px [0 ], px [1 ], py [0 ], py [1 ], grid .mesh , np .dot (i_u .phi2D_lin (xsi , 0.0 ), py ))
236- c2 = fieldset .UV .dist (px [1 ], px [2 ], py [1 ], py [2 ], grid .mesh , np .dot (i_u .phi2D_lin (1.0 , eta ), py ))
237- c3 = fieldset .UV .dist (px [2 ], px [3 ], py [2 ], py [3 ], grid .mesh , np .dot (i_u .phi2D_lin (xsi , 1.0 ), py ))
238- c4 = fieldset .UV .dist (px [3 ], px [0 ], py [3 ], py [0 ], grid .mesh , np .dot (i_u .phi2D_lin (0.0 , eta ), py ))
235+ c1 = fieldset .UV .dist (py [0 ], py [1 ], px [0 ], px [1 ], grid .mesh , np .dot (i_u .phi2D_lin (0.0 , xsi ), py ))
236+ c2 = fieldset .UV .dist (py [1 ], py [2 ], px [1 ], px [2 ], grid .mesh , np .dot (i_u .phi2D_lin (eta , 1.0 ), py ))
237+ c3 = fieldset .UV .dist (py [2 ], py [3 ], px [2 ], px [3 ], grid .mesh , np .dot (i_u .phi2D_lin (1.0 , xsi ), py ))
238+ c4 = fieldset .UV .dist (py [3 ], py [0 ], px [3 ], px [0 ], grid .mesh , np .dot (i_u .phi2D_lin (eta , 0.0 ), py ))
239239 rad = np .pi / 180.0
240240 deg2m = 1852 * 60.0
241241 meshJac = (deg2m * deg2m * math .cos (rad * particle .lat )) if grid .mesh == "spherical" else 1
242- dxdy = fieldset .UV .jacobian (xsi , eta , px , py ) * meshJac
242+ dxdy = fieldset .UV .jacobian (py , px , eta , xsi ) * meshJac
243243
244244 if withW :
245245 U0 = direction * fieldset .U .data [ti , zi + 1 , yi + 1 , xi ] * c4 * dz
0 commit comments