Skip to content

Commit 6bcc63d

Browse files
committed
Update local varnames in kernels
1 parent 7c0aa5b commit 6bcc63d

2 files changed

Lines changed: 61 additions & 61 deletions

File tree

src/parcels/kernels/_advection.py

Lines changed: 37 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,8 @@ def AdvectionRK2(particles, fieldset): # pragma: no cover
3535
"""Advection of particles using second-order Runge-Kutta integration."""
3636
dt = _constrain_dt_to_within_time_interval(fieldset.time_interval, particles.time, particles.dt)
3737
(u1, v1) = fieldset.UV[particles]
38-
lon1, lat1 = (particles.x + u1 * 0.5 * dt, particles.y + v1 * 0.5 * dt)
39-
(u2, v2) = fieldset.UV[particles.time + 0.5 * dt, particles.z, lat1, lon1, particles]
38+
x1, y1 = (particles.x + u1 * 0.5 * dt, particles.y + v1 * 0.5 * dt)
39+
(u2, v2) = fieldset.UV[particles.time + 0.5 * dt, particles.z, y1, x1, particles]
4040
particles.dx += u2 * dt
4141
particles.dy += v2 * dt
4242

@@ -45,10 +45,10 @@ def AdvectionRK2_3D(particles, fieldset): # pragma: no cover
4545
"""Advection of particles using second-order Runge-Kutta integration including vertical velocity."""
4646
dt = _constrain_dt_to_within_time_interval(fieldset.time_interval, particles.time, particles.dt)
4747
(u1, v1, w1) = fieldset.UVW[particles]
48-
lon1 = particles.x + u1 * 0.5 * dt
49-
lat1 = particles.y + v1 * 0.5 * dt
48+
x1 = particles.x + u1 * 0.5 * dt
49+
y1 = particles.y + v1 * 0.5 * dt
5050
z1 = particles.z + w1 * 0.5 * dt
51-
(u2, v2, w2) = fieldset.UVW[particles.time + 0.5 * dt, z1, lat1, lon1, particles]
51+
(u2, v2, w2) = fieldset.UVW[particles.time + 0.5 * dt, z1, y1, x1, particles]
5252
particles.dx += u2 * dt
5353
particles.dy += v2 * dt
5454
particles.dz += w2 * dt
@@ -58,12 +58,12 @@ def AdvectionRK4(particles, fieldset): # pragma: no cover
5858
"""Advection of particles using fourth-order Runge-Kutta integration."""
5959
dt = _constrain_dt_to_within_time_interval(fieldset.time_interval, particles.time, particles.dt)
6060
(u1, v1) = fieldset.UV[particles]
61-
lon1, lat1 = (particles.x + u1 * 0.5 * dt, particles.y + v1 * 0.5 * dt)
62-
(u2, v2) = fieldset.UV[particles.time + 0.5 * dt, particles.z, lat1, lon1, particles]
63-
lon2, lat2 = (particles.x + u2 * 0.5 * dt, particles.y + v2 * 0.5 * dt)
64-
(u3, v3) = fieldset.UV[particles.time + 0.5 * dt, particles.z, lat2, lon2, particles]
65-
lon3, lat3 = (particles.x + u3 * dt, particles.y + v3 * dt)
66-
(u4, v4) = fieldset.UV[particles.time + dt, particles.z, lat3, lon3, particles]
61+
x1, y1 = (particles.x + u1 * 0.5 * dt, particles.y + v1 * 0.5 * dt)
62+
(u2, v2) = fieldset.UV[particles.time + 0.5 * dt, particles.z, y1, x1, particles]
63+
x2, y2 = (particles.x + u2 * 0.5 * dt, particles.y + v2 * 0.5 * dt)
64+
(u3, v3) = fieldset.UV[particles.time + 0.5 * dt, particles.z, y2, x2, particles]
65+
x3, y3 = (particles.x + u3 * dt, particles.y + v3 * dt)
66+
(u4, v4) = fieldset.UV[particles.time + dt, particles.z, y3, x3, particles]
6767
particles.dx += (u1 + 2 * u2 + 2 * u3 + u4) / 6.0 * dt
6868
particles.dy += (v1 + 2 * v2 + 2 * v3 + v4) / 6.0 * dt
6969

@@ -72,18 +72,18 @@ def AdvectionRK4_3D(particles, fieldset): # pragma: no cover
7272
"""Advection of particles using fourth-order Runge-Kutta integration including vertical velocity."""
7373
dt = _constrain_dt_to_within_time_interval(fieldset.time_interval, particles.time, particles.dt)
7474
(u1, v1, w1) = fieldset.UVW[particles]
75-
lon1 = particles.x + u1 * 0.5 * dt
76-
lat1 = particles.y + v1 * 0.5 * dt
75+
x1 = particles.x + u1 * 0.5 * dt
76+
y1 = particles.y + v1 * 0.5 * dt
7777
z1 = particles.z + w1 * 0.5 * dt
78-
(u2, v2, w2) = fieldset.UVW[particles.time + 0.5 * dt, z1, lat1, lon1, particles]
79-
lon2 = particles.x + u2 * 0.5 * dt
80-
lat2 = particles.y + v2 * 0.5 * dt
78+
(u2, v2, w2) = fieldset.UVW[particles.time + 0.5 * dt, z1, y1, x1, particles]
79+
x2 = particles.x + u2 * 0.5 * dt
80+
y2 = particles.y + v2 * 0.5 * dt
8181
z2 = particles.z + w2 * 0.5 * dt
82-
(u3, v3, w3) = fieldset.UVW[particles.time + 0.5 * dt, z2, lat2, lon2, particles]
83-
lon3 = particles.x + u3 * dt
84-
lat3 = particles.y + v3 * dt
82+
(u3, v3, w3) = fieldset.UVW[particles.time + 0.5 * dt, z2, y2, x2, particles]
83+
x3 = particles.x + u3 * dt
84+
y3 = particles.y + v3 * dt
8585
z3 = particles.z + w3 * dt
86-
(u4, v4, w4) = fieldset.UVW[particles.time + dt, z3, lat3, lon3, particles]
86+
(u4, v4, w4) = fieldset.UVW[particles.time + dt, z3, y3, x3, particles]
8787
particles.dx += (u1 + 2 * u2 + 2 * u3 + u4) / 6 * dt
8888
particles.dy += (v1 + 2 * v2 + 2 * v3 + v4) / 6 * dt
8989
particles.dz += (w1 + 2 * w2 + 2 * w3 + w4) / 6 * dt
@@ -120,39 +120,39 @@ def AdvectionRK45(particles, fieldset): # pragma: no cover
120120
b5 = [16.0 / 135.0, 0.0, 6656.0 / 12825.0, 28561.0 / 56430.0, -9.0 / 50.0, 2.0 / 55.0]
121121

122122
(u1, v1) = fieldset.UV[particles]
123-
lon1, lat1 = (particles.x + u1 * A[0][0] * dt, particles.y + v1 * A[0][0] * dt)
124-
(u2, v2) = fieldset.UV[particles.time + c[0] * dt, particles.z, lat1, lon1, particles]
125-
lon2, lat2 = (
123+
x1, y1 = (particles.x + u1 * A[0][0] * dt, particles.y + v1 * A[0][0] * dt)
124+
(u2, v2) = fieldset.UV[particles.time + c[0] * dt, particles.z, y1, x1, particles]
125+
x2, y2 = (
126126
particles.x + (u1 * A[1][0] + u2 * A[1][1]) * dt,
127127
particles.y + (v1 * A[1][0] + v2 * A[1][1]) * dt,
128128
)
129-
(u3, v3) = fieldset.UV[particles.time + c[1] * dt, particles.z, lat2, lon2, particles]
130-
lon3, lat3 = (
129+
(u3, v3) = fieldset.UV[particles.time + c[1] * dt, particles.z, y2, x2, particles]
130+
x3, y3 = (
131131
particles.x + (u1 * A[2][0] + u2 * A[2][1] + u3 * A[2][2]) * dt,
132132
particles.y + (v1 * A[2][0] + v2 * A[2][1] + v3 * A[2][2]) * dt,
133133
)
134-
(u4, v4) = fieldset.UV[particles.time + c[2] * dt, particles.z, lat3, lon3, particles]
135-
lon4, lat4 = (
134+
(u4, v4) = fieldset.UV[particles.time + c[2] * dt, particles.z, y3, x3, particles]
135+
x4, y4 = (
136136
particles.x + (u1 * A[3][0] + u2 * A[3][1] + u3 * A[3][2] + u4 * A[3][3]) * dt,
137137
particles.y + (v1 * A[3][0] + v2 * A[3][1] + v3 * A[3][2] + v4 * A[3][3]) * dt,
138138
)
139-
(u5, v5) = fieldset.UV[particles.time + c[3] * dt, particles.z, lat4, lon4, particles]
140-
lon5, lat5 = (
139+
(u5, v5) = fieldset.UV[particles.time + c[3] * dt, particles.z, y4, x4, particles]
140+
x5, y5 = (
141141
particles.x + (u1 * A[4][0] + u2 * A[4][1] + u3 * A[4][2] + u4 * A[4][3] + u5 * A[4][4]) * dt,
142142
particles.y + (v1 * A[4][0] + v2 * A[4][1] + v3 * A[4][2] + v4 * A[4][3] + v5 * A[4][4]) * dt,
143143
)
144-
(u6, v6) = fieldset.UV[particles.time + c[4] * dt, particles.z, lat5, lon5, particles]
144+
(u6, v6) = fieldset.UV[particles.time + c[4] * dt, particles.z, y5, x5, particles]
145145

146-
lon_4th = (u1 * b4[0] + u2 * b4[1] + u3 * b4[2] + u4 * b4[3] + u5 * b4[4]) * dt
147-
lat_4th = (v1 * b4[0] + v2 * b4[1] + v3 * b4[2] + v4 * b4[3] + v5 * b4[4]) * dt
148-
lon_5th = (u1 * b5[0] + u2 * b5[1] + u3 * b5[2] + u4 * b5[3] + u5 * b5[4] + u6 * b5[5]) * dt
149-
lat_5th = (v1 * b5[0] + v2 * b5[1] + v3 * b5[2] + v4 * b5[3] + v5 * b5[4] + v6 * b5[5]) * dt
146+
x_4th = (u1 * b4[0] + u2 * b4[1] + u3 * b4[2] + u4 * b4[3] + u5 * b4[4]) * dt
147+
y_4th = (v1 * b4[0] + v2 * b4[1] + v3 * b4[2] + v4 * b4[3] + v5 * b4[4]) * dt
148+
x_5th = (u1 * b5[0] + u2 * b5[1] + u3 * b5[2] + u4 * b5[3] + u5 * b5[4] + u6 * b5[5]) * dt
149+
y_5th = (v1 * b5[0] + v2 * b5[1] + v3 * b5[2] + v4 * b5[3] + v5 * b5[4] + v6 * b5[5]) * dt
150150

151-
kappa = np.sqrt(np.pow(lon_5th - lon_4th, 2) + np.pow(lat_5th - lat_4th, 2))
151+
kappa = np.sqrt(np.pow(x_5th - x_4th, 2) + np.pow(y_5th - y_4th, 2))
152152

153153
good_particles = (kappa <= fieldset.RK45_tol) | (np.fabs(dt) <= np.fabs(fieldset.RK45_min_dt))
154-
particles.dx += np.where(good_particles, lon_5th, 0)
155-
particles.dy += np.where(good_particles, lat_5th, 0)
154+
particles.dx += np.where(good_particles, x_5th, 0)
155+
particles.dy += np.where(good_particles, y_5th, 0)
156156

157157
increase_dt_particles = (
158158
good_particles & (kappa <= fieldset.RK45_tol / 10) & (np.fabs(dt * 2) <= np.fabs(fieldset.RK45_max_dt))

src/parcels/kernels/_sigmagrids.py

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -48,38 +48,38 @@ def AdvectionRK4_3D_CROCO(particles, fieldset): # pragma: no cover
4848
(u1, v1) = fieldset.UV[particles.time, sig, particles.y, particles.x, particles]
4949
w1 = fieldset.W[particles.time, sig, particles.y, particles.x, particles]
5050
w1 *= sigma / fieldset.h[particles.time, np.zeros_like(particles.z), particles.y, particles.x]
51-
lon1 = particles.x + u1 * 0.5 * dt
52-
lat1 = particles.y + v1 * 0.5 * dt
51+
x1 = particles.x + u1 * 0.5 * dt
52+
y1 = particles.y + v1 * 0.5 * dt
5353
sig_dep1 = sigma + w1 * 0.5 * dt
54-
dep1 = sig_dep1 * fieldset.h[particles.time, np.zeros_like(particles.z), lat1, lon1]
54+
dep1 = sig_dep1 * fieldset.h[particles.time, np.zeros_like(particles.z), y1, x1]
5555

56-
sig1 = convert_z_to_sigma_croco(fieldset, particles.time + 0.5 * dt, dep1, lat1, lon1, particles)
57-
(u2, v2) = fieldset.UV[particles.time + 0.5 * dt, sig1, lat1, lon1, particles]
58-
w2 = fieldset.W[particles.time + 0.5 * dt, sig1, lat1, lon1, particles]
59-
w2 *= sig_dep1 / fieldset.h[particles.time, np.zeros_like(particles.z), lat1, lon1]
60-
lon2 = particles.x + u2 * 0.5 * dt
61-
lat2 = particles.y + v2 * 0.5 * dt
56+
sig1 = convert_z_to_sigma_croco(fieldset, particles.time + 0.5 * dt, dep1, y1, x1, particles)
57+
(u2, v2) = fieldset.UV[particles.time + 0.5 * dt, sig1, y1, x1, particles]
58+
w2 = fieldset.W[particles.time + 0.5 * dt, sig1, y1, x1, particles]
59+
w2 *= sig_dep1 / fieldset.h[particles.time, np.zeros_like(particles.z), y1, x1]
60+
x2 = particles.x + u2 * 0.5 * dt
61+
y2 = particles.y + v2 * 0.5 * dt
6262
sig_dep2 = sigma + w2 * 0.5 * dt
63-
dep2 = sig_dep2 * fieldset.h[particles.time, np.zeros_like(particles.z), lat2, lon2]
63+
dep2 = sig_dep2 * fieldset.h[particles.time, np.zeros_like(particles.z), y2, x2]
6464

65-
sig2 = convert_z_to_sigma_croco(fieldset, particles.time + 0.5 * dt, dep2, lat2, lon2, particles)
66-
(u3, v3) = fieldset.UV[particles.time + 0.5 * dt, sig2, lat2, lon2, particles]
67-
w3 = fieldset.W[particles.time + 0.5 * dt, sig2, lat2, lon2, particles]
68-
w3 *= sig_dep2 / fieldset.h[particles.time, np.zeros_like(particles.z), lat2, lon2]
69-
lon3 = particles.x + u3 * dt
70-
lat3 = particles.y + v3 * dt
65+
sig2 = convert_z_to_sigma_croco(fieldset, particles.time + 0.5 * dt, dep2, y2, x2, particles)
66+
(u3, v3) = fieldset.UV[particles.time + 0.5 * dt, sig2, y2, x2, particles]
67+
w3 = fieldset.W[particles.time + 0.5 * dt, sig2, y2, x2, particles]
68+
w3 *= sig_dep2 / fieldset.h[particles.time, np.zeros_like(particles.z), y2, x2]
69+
x3 = particles.x + u3 * dt
70+
y3 = particles.y + v3 * dt
7171
sig_dep3 = sigma + w3 * dt
72-
dep3 = sig_dep3 * fieldset.h[particles.time, np.zeros_like(particles.z), lat3, lon3]
72+
dep3 = sig_dep3 * fieldset.h[particles.time, np.zeros_like(particles.z), y3, x3]
7373

74-
sig3 = convert_z_to_sigma_croco(fieldset, particles.time + dt, dep3, lat3, lon3, particles)
75-
(u4, v4) = fieldset.UV[particles.time + dt, sig3, lat3, lon3, particles]
76-
w4 = fieldset.W[particles.time + dt, sig3, lat3, lon3, particles]
77-
w4 *= sig_dep3 / fieldset.h[particles.time, np.zeros_like(particles.z), lat3, lon3]
78-
lon4 = particles.x + u4 * dt
79-
lat4 = particles.y + v4 * dt
74+
sig3 = convert_z_to_sigma_croco(fieldset, particles.time + dt, dep3, y3, x3, particles)
75+
(u4, v4) = fieldset.UV[particles.time + dt, sig3, y3, x3, particles]
76+
w4 = fieldset.W[particles.time + dt, sig3, y3, x3, particles]
77+
w4 *= sig_dep3 / fieldset.h[particles.time, np.zeros_like(particles.z), y3, x3]
78+
x4 = particles.x + u4 * dt
79+
y4 = particles.y + v4 * dt
8080
sig_dep4 = sigma + w4 * dt
8181

82-
dep4 = sig_dep4 * fieldset.h[particles.time, np.zeros_like(particles.z), lat4, lon4]
82+
dep4 = sig_dep4 * fieldset.h[particles.time, np.zeros_like(particles.z), y4, x4]
8383
particles.dx += (u1 + 2 * u2 + 2 * u3 + u4) / 6 * dt
8484
particles.dy += (v1 + 2 * v2 + 2 * v3 + v4) / 6 * dt
8585
particles.dz += (

0 commit comments

Comments
 (0)