Skip to content

Commit a41a7c8

Browse files
committed
Examples: Default openPMD Backend
We default to ADIOS2 output when available for performance in the I/O of our `BeamMonitor` element. For CI and correctness tests, because sometimes it is easier/faster to install from packages (e.g., Debian), we hard-code the HDF5 openPMD backend, to avoid that the test behaves differently if ADIOS2 is present (switches to bp) or not (switches to h5). Now, we can actually let the code switch automatically because with openPMD 0.16+, we have a generic pattern `.%E` in analsy scripts to read the written files and match the first openPMD backend that works (by file name extension). That way, we can now simplify our examples by not adding the extra lines to control the openPMD backend anymore.
1 parent 0d15878 commit a41a7c8

File tree

197 files changed

+141
-208
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

197 files changed

+141
-208
lines changed

docs/source/dataanalysis/dataanalysis.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ Example to print the integrated orbit path length ``s`` at each beam monitor pos
5252
5353
import openpmd_api as io
5454
55-
series = io.Series("diags/openPMD/monitor.h5", io.Access.read_only)
55+
series = io.Series("diags/openPMD/monitor.%E", io.Access.read_only)
5656
5757
for k_i, i in series.iterations.items():
5858
beam = i.particles["beam"]

examples/achromatic_spectrometer/analysis_spectrometer.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ def get_moments(beam):
3535

3636

3737
# initial/final beam
38-
series = io.Series("diags/openPMD/monitor.h5", io.Access.read_only)
38+
series = io.Series("diags/openPMD/monitor.%E", io.Access.read_only)
3939
last_step = list(series.iterations)[-1]
4040
initial = series.iterations[1].particles["beam"].to_df()
4141
final = series.iterations[last_step].particles["beam"].to_df()

examples/achromatic_spectrometer/input_spectrometer.in

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ lattice.elements = monitor bend1 plasma_lens drift1 monitor
2525
lattice.nslice = 25
2626

2727
monitor.type = beam_monitor
28-
monitor.backend = h5
2928

3029
bend1.type = sbend_exact
3130
bend1.ds = 1.0

examples/achromatic_spectrometer/run_spectrometer.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
sim.add_particles(bunch_charge_C, distr, npart)
4444

4545
# add beam diagnostics
46-
monitor = elements.BeamMonitor("monitor", backend="h5")
46+
monitor = elements.BeamMonitor("monitor")
4747

4848
# design the accelerator lattice
4949
ns = 25 # number of slices per ds in the element

examples/alignment/analysis_alignment.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ def get_moments(beam):
3737

3838

3939
# initial/final beam
40-
series = io.Series("diags/openPMD/monitor.h5", io.Access.read_only)
40+
series = io.Series("diags/openPMD/monitor.%E", io.Access.read_only)
4141
last_step = list(series.iterations)[-1]
4242
initial = series.iterations[1].particles["beam"].to_df()
4343
final = series.iterations[last_step].particles["beam"].to_df()

examples/alignment/input_alignment.in

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ lattice.elements = monitor quad_err monitor
2525
lattice.nslice = 1
2626

2727
monitor.type = beam_monitor
28-
monitor.backend = h5
2928

3029
quad_err.type = quad
3130
quad_err.ds = 1.0

examples/alignment/run_alignment.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
sim.add_particles(bunch_charge_C, distr, npart)
4444

4545
# add beam diagnostics
46-
monitor = elements.BeamMonitor("monitor", backend="h5")
46+
monitor = elements.BeamMonitor("monitor")
4747

4848
# design the accelerator lattice)
4949
ns = 1 # number of slices per ds in the element

examples/aperture/analysis_absorber.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,12 +34,12 @@ def get_moments(beam):
3434

3535

3636
# initial/final beam
37-
series = io.Series("diags/openPMD/monitor.h5", io.Access.read_only)
37+
series = io.Series("diags/openPMD/monitor.%E", io.Access.read_only)
3838
last_step = list(series.iterations)[-1]
3939
initial = series.iterations[1].particles["beam"].to_df()
4040
final = series.iterations[last_step].particles["beam"].to_df()
4141

42-
series_lost = io.Series("diags/openPMD/particles_lost.h5", io.Access.read_only)
42+
series_lost = io.Series("diags/openPMD/particles_lost.%E", io.Access.read_only)
4343
particles_lost = series_lost.iterations[0].particles["beam"].to_df()
4444

4545
# compare number of particles

examples/aperture/analysis_aperture.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,12 +34,12 @@ def get_moments(beam):
3434

3535

3636
# initial/final beam
37-
series = io.Series("diags/openPMD/monitor.h5", io.Access.read_only)
37+
series = io.Series("diags/openPMD/monitor.%E", io.Access.read_only)
3838
last_step = list(series.iterations)[-1]
3939
initial = series.iterations[1].particles["beam"].to_df()
4040
final = series.iterations[last_step].particles["beam"].to_df()
4141

42-
series_lost = io.Series("diags/openPMD/particles_lost.h5", io.Access.read_only)
42+
series_lost = io.Series("diags/openPMD/particles_lost.%E", io.Access.read_only)
4343
particles_lost = series_lost.iterations[0].particles["beam"].to_df()
4444

4545
# compare number of particles

examples/aperture/analysis_aperture_periodic.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,12 +34,12 @@ def get_moments(beam):
3434

3535

3636
# initial/final beam
37-
series = io.Series("diags/openPMD/monitor.h5", io.Access.read_only)
37+
series = io.Series("diags/openPMD/monitor.%E", io.Access.read_only)
3838
last_step = list(series.iterations)[-1]
3939
initial = series.iterations[1].particles["beam"].to_df()
4040
final = series.iterations[last_step].particles["beam"].to_df()
4141

42-
series_lost = io.Series("diags/openPMD/particles_lost.h5", io.Access.read_only)
42+
series_lost = io.Series("diags/openPMD/particles_lost.%E", io.Access.read_only)
4343
particles_lost = series_lost.iterations[0].particles["beam"].to_df()
4444

4545
# compare number of particles

0 commit comments

Comments
 (0)