Skip to content

Commit 96fac34

Browse files
committed
Update time simulation parameters z
1 parent 50a6f8f commit 96fac34

File tree

3 files changed

+11
-5
lines changed

3 files changed

+11
-5
lines changed

redpic/core/config.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
NAME = "redpic"
88

9-
VERSION = "0.11.7"
9+
VERSION = "0.11.8"
1010

1111
AUTHOR = "Vyacheslav Fedorov"
1212

redpic/solver/base.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,19 @@ def __init__(
1818
t_start: float = 0.0e0,
1919
t_stop: float = 0.0e0,
2020
dt: float = 0.0e0,
21+
z_start: float = 0.0e0,
22+
z_stop: float = 0.0e0,
23+
dz: float = 0.0e0,
2124
):
2225
self.beams = beam if isinstance(beam, Iterable) else [beam]
2326
self.acc = accelerator
2427
self.result = {}
2528
self.t_start = t_start
2629
self.t_stop = t_stop if t_stop else (self.acc.z_stop - self.acc.z_start) / const.c
2730
self.dt = dt if dt else self.acc.dz / const.c
31+
self.z_start = z_start if z_start else self.acc.z_start
32+
self.z_stop = z_stop if z_stop else self.acc.z_stop
33+
self.dz = dz if dz else const.c * self.dt
2834

2935
@abstractmethod
3036
def _track(self, *, n_files: int) -> None:

redpic/solver/red.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,7 @@ def _second_step_red_cuda(
158158

159159
def _track(self, *, n_files: int = cfg.DEFAULT_TRACK_SAVE_N_FILES) -> None:
160160
# Init parameters
161-
z_start, z_stop, dz = self.acc.z_start, self.acc.z_stop, self.acc.dz
161+
z_start, z_stop, dz = self.z_start, self.z_stop, self.dz
162162
t_start, t_stop, dt = self.t_start, self.t_stop, self.dt
163163

164164
Y = np.transpose(np.concatenate([beam.df.to_numpy() for beam in self.beams]))
@@ -224,16 +224,16 @@ def _track(self, *, n_files: int = cfg.DEFAULT_TRACK_SAVE_N_FILES) -> None:
224224
Bx, By, Bz = Bx * gamma * B0, By * gamma * B0, Bz * gamma * B0
225225
Ex, Ey, Ez = Ex * E0, Ey * E0, Ez * E0
226226

227-
progress, meters = t / t_stop * 100, z_start + t * const.c
227+
progress = t / t_stop * 100
228228
if progress % (100 // n_files) < 2 * dt / t_stop * 100:
229229
self.result.update(
230230
{
231-
round(meters, 3): pd.DataFrame(
231+
round(progress, 3): pd.DataFrame(
232232
np.transpose(
233233
np.vstack((Y[0], Y[1], Y[2], Y[3], Y[4], Y[5], Bx, By, Bz, Ex, Ey, Ez, macro_q))
234234
),
235235
columns=["x", "y", "z", "px", "py", "pz", "Bx", "By", "Bz", "Ex", "Ey", "Ez", "charge"],
236236
)
237237
}
238238
)
239-
print("\rz = %.2f m (%.1f %%) " % (meters, progress), end="")
239+
print("\r%.1f %% " % progress, end="")

0 commit comments

Comments
 (0)