Skip to content

Commit 6f3307d

Browse files
Using for-loop for ctd raising and lowering kernels
1 parent 12f6eb9 commit 6f3307d

File tree

1 file changed

+11
-11
lines changed
  • src/virtualship/instruments

1 file changed

+11
-11
lines changed

src/virtualship/instruments/ctd.py

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -45,20 +45,20 @@ def _sample_salinity(particles, fieldset):
4545

4646

4747
def _ctd_sinking(particles, fieldset):
48-
def ctd_lowering(p):
49-
p.dz = -particles.winch_speed * p.dt / np.timedelta64(1, "s")
50-
p.raising = np.where(p.z + p.dz < p.max_depth, 1, p.raising)
51-
p.dz = np.where(p.z + p.dz < p.max_depth, -p.dz, p.dz)
52-
53-
ctd_lowering(particles[particles.raising == 0])
48+
for i in range(len(particles)):
49+
if particles[i].raising == 0:
50+
particles[i].dz = -particles[i].winch_speed * particles[i].dt / np.timedelta64(1, "s")
51+
if particles[i].z + particles[i].dz < particles[i].max_depth:
52+
particles[i].raising = 1
53+
particles[i].dz = -particles[i].dz
5454

5555

5656
def _ctd_rising(particles, fieldset):
57-
def ctd_rising(p):
58-
p.dz = p.winch_speed * p.dt / np.timedelta64(1, "s")
59-
p.state = np.where(p.z + p.dz > p.min_depth, StatusCode.Delete, p.state)
60-
61-
ctd_rising(particles[particles.raising == 1])
57+
for i in range(len(particles)):
58+
if particles[i].raising == 1:
59+
particles[i].dz = particles[i].winch_speed * particles[i].dt / np.timedelta64(1, "s")
60+
if particles[i].z + particles[i].dz > particles[i].min_depth:
61+
particles[i].state = StatusCode.Delete
6262

6363

6464
def simulate_ctd(

0 commit comments

Comments
 (0)