simba-accelerator 0.1.3__tar.gz → 0.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- simba_accelerator-0.2.0/.coverage +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/MANIFEST.in +0 -2
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/PKG-INFO +24 -16
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/README.md +21 -11
- simba_accelerator-0.2.0/docs/source/Framework.rst +10 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/SimCodes.rst +2 -2
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/examples/notebooks/beams_example.ipynb +0 -2
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/examples/notebooks/getting_started.ipynb +2 -2
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/examples/notebooks/utility_functions.ipynb +2 -2
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/getting-started.rst +9 -9
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/index.rst +1 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/installation.rst +5 -1
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/loading-a-lattice.rst +10 -10
- simba_accelerator-0.2.0/docs/source/simba.Framework_objects.rst +7 -0
- simba_accelerator-0.2.0/examples/notebooks/CLA-S02-DIA-SCR-03.openpmd.hdf5 +0 -0
- simba_accelerator-0.2.0/examples/notebooks/beams_example.ipynb +1403 -0
- simba_accelerator-0.2.0/examples/notebooks/getting_started.ipynb +292 -0
- simba_accelerator-0.2.0/examples/notebooks/utility_functions.ipynb +348 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/pyproject.toml +2 -4
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/requirements.txt +2 -2
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/ASTRA/ASTRA.py +9 -9
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/CSRTrack/CSRTrack.py +1 -1
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Cheetah/Cheetah.py +2 -2
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Elegant/Elegant.py +38 -22
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Elegant/commands_Elegant.yaml +1 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/GPT/GPT.py +3 -3
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Generators/Generators.py +8 -8
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Generators/astra.py +2 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Genesis/Genesis.py +37 -33
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/OPAL/OPAL.py +1 -1
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Ocelot/Ocelot.py +1 -1
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Executables.yaml +2 -1
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Framework.py +175 -226
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/FrameworkHelperFunctions.py +97 -3
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Framework_objects.py +73 -83
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/__init__.py +2 -1
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/gdf.py +1 -1
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/openpmd.py +1 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/plot.py +94 -169
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/sdds.py +13 -7
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/SDDSFile.py +9 -4
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Twiss/__init__.py +12 -12
- simba_accelerator-0.2.0/simba/Modules/Twiss/elegant.py +178 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Twiss/genesis.py +21 -22
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/optimisation/xopt.py +11 -7
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/plotting/plotting.py +148 -145
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba_accelerator.egg-info/PKG-INFO +24 -16
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba_accelerator.egg-info/SOURCES.txt +9 -52
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba_accelerator.egg-info/requires.txt +2 -4
- simba_accelerator-0.2.0/tests/framework_test.py +448 -0
- simba_accelerator-0.2.0/tests/twiss.py +10 -0
- simba_accelerator-0.2.0/tests/xopt_test.py +10 -0
- simba_accelerator-0.2.0/unit_tests/.coverage +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/unit_tests/test_beam.py +4 -6
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/unit_tests/test_field.py +3 -3
- simba_accelerator-0.2.0/unit_tests/test_framework.py +296 -0
- simba_accelerator-0.2.0/unit_tests/test_framework_lattice.py +62 -0
- simba_accelerator-0.2.0/unit_tests/test_framework_objects.py +101 -0
- simba_accelerator-0.2.0/unit_tests/test_generator.py +158 -0
- simba_accelerator-0.2.0/unit_tests/test_track.py +281 -0
- simba_accelerator-0.2.0/unit_tests/test_twiss.py +31 -0
- simba_accelerator-0.1.3/docs/source/setting-up-a-lattice.rst +0 -123
- simba_accelerator-0.1.3/examples/notebooks/.ipynb_checkpoints/params-checkpoint.yaml +0 -954
- simba_accelerator-0.1.3/examples/notebooks/beams_example.ipynb +0 -581
- simba_accelerator-0.1.3/examples/notebooks/getting_started.ipynb +0 -279
- simba_accelerator-0.1.3/examples/notebooks/utility_functions.ipynb +0 -407
- simba_accelerator-0.1.3/simba/Codes/Elegant/.ipynb_checkpoints/Elegant-checkpoint.py +0 -1214
- simba_accelerator-0.1.3/tests/framework_test.py +0 -448
- simba_accelerator-0.1.3/tests/twiss.py +0 -10
- simba_accelerator-0.1.3/tests/xopt_test.py +0 -10
- simba_accelerator-0.1.3/unit_tests/FODO.yaml +0 -291
- simba_accelerator-0.1.3/unit_tests/fodo/astra/BEGIN.hdf5 +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/astra/END.hdf5 +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/astra/FODO.0040.001 +0 -1000
- simba_accelerator-0.1.3/unit_tests/fodo/astra/FODO.Error.001 +0 -1
- simba_accelerator-0.1.3/unit_tests/fodo/astra/FODO.Log.001 +0 -5000
- simba_accelerator-0.1.3/unit_tests/fodo/astra/FODO.Xemit.001 +0 -40
- simba_accelerator-0.1.3/unit_tests/fodo/astra/FODO.Xemit2.001 +0 -40
- simba_accelerator-0.1.3/unit_tests/fodo/astra/FODO.Yemit.001 +0 -40
- simba_accelerator-0.1.3/unit_tests/fodo/astra/FODO.Yemit2.001 +0 -40
- simba_accelerator-0.1.3/unit_tests/fodo/astra/FODO.Zemit.001 +0 -40
- simba_accelerator-0.1.3/unit_tests/fodo/astra/FODO.Zemit2.001 +0 -40
- simba_accelerator-0.1.3/unit_tests/fodo/astra/FODO.in +0 -83
- simba_accelerator-0.1.3/unit_tests/fodo/astra/FODO.lab-E.001 +0 -33
- simba_accelerator-0.1.3/unit_tests/fodo/astra/FODO.log +0 -175
- simba_accelerator-0.1.3/unit_tests/fodo/astra/FODO.ref.001 +0 -20
- simba_accelerator-0.1.3/unit_tests/fodo/astra/FODO_E.Log.001 +0 -3627
- simba_accelerator-0.1.3/unit_tests/fodo/astra/FODO_input.astra +0 -1000
- simba_accelerator-0.1.3/unit_tests/fodo/astra/NORRAN +0 -1
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/BEGIN.SDDS +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/BEGIN.hdf5 +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/Beam_Summary.hdf5 +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/END.SDDS +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/END.hdf5 +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/FODO.cen +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/FODO.ele +0 -54
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/FODO.flr +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/FODO.log +0 -261
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/FODO.loss +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/FODO.lte +0 -10
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/FODO.mat +0 -181
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/FODO.sdds +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/FODO.sig +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/FODO.twi +0 -112
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/Twiss_Summary.hdf5 +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/elegant/settings.def +0 -6
- simba_accelerator-0.1.3/unit_tests/fodo/gpt/BEGIN.hdf5 +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/gpt/FODO.gdf +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/ocelot/BEGIN.hdf5 +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/ocelot/BEGIN.ocelot.npz +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/ocelot/END.hdf5 +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/ocelot/END.ocelot.npz +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/ocelot/END.openpmd.hdf5 +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/ocelot/END.test.hdf5 +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/ocelot/FODO.py +0 -16
- simba_accelerator-0.1.3/unit_tests/fodo/ocelot/FODO_mbi.dat.npy +0 -0
- simba_accelerator-0.1.3/unit_tests/fodo/ocelot/FODO_twiss.npz +0 -0
- simba_accelerator-0.1.3/unit_tests/test_changes.yaml +0 -6
- simba_accelerator-0.1.3/unit_tests/test_framework.py +0 -129
- simba_accelerator-0.1.3/unit_tests/test_framework_objects.py +0 -101
- simba_accelerator-0.1.3/unit_tests/test_track.py +0 -281
- simba_accelerator-0.1.3/unit_tests/test_twiss.py +0 -31
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/.github/workflows/python-publish.yml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/.gitignore +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/Makefile +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/.venv/pyvenv.cfg +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/2.0 +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/=3.8 +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/Makefile +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/make.bat +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/rebuild.sh +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/requirements.txt +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/Framework_objects.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/assets/elegant-fodo.png +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/assets/ocelot-fodo.png +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/conf.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/examples/notebooks/CLA-S02-DIA-SCR-03.openpmd.hdf5 +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/modules.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/references.bib +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Codes.ASTRA.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Codes.CSRTrack.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Codes.Cheetah.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Codes.Elegant.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Codes.GPT.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Codes.Generators.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Codes.MAD8.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Codes.OPAL.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Codes.Ocelot.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Codes.Xsuite.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Codes.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Modules.Beams.Particles.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Modules.Beams.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Modules.Fields.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Modules.Matrices.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Modules.Twiss.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Modules.optimisation.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Modules.plotting.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.Modules.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/docs/source/simba.rst +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/examples/notebooks/params.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/make.bat +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/readthedocs.yml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/setup.cfg +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/setup.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/.gitignore +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/ASTRA/ASTRARules.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/ASTRA/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/CSRTrack/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/CSRTrack/csrtrack_defaults.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Cheetah/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Cheetah/cheetah_defaults.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Elegant/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Elegant/elements_Elegant.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Elegant/keyword_conversion_rules_elegant.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Executables.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/GPT/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Generators/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Generators/aliases.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Generators/astra.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Generators/elegant.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Generators/gpt.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Generators/gpt.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Generators/keywords.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Generators/opal.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Generators/opal.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Generators/species.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Genesis/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Genesis/commands_Genesis.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/OPAL/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/OPAL/commands_Opal.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/OPAL/globals_Opal.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Ocelot/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Ocelot/mbi.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Ocelot/ocelot_defaults.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Ocelot/savebeamopenpmd.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Wake_T/Wake_T.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Xsuite/Xsuite.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/Xsuite/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Codes/type_conversion_rules.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Framework_Settings.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Framework_elements.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Framework_lattices.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/.gitignore +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/Particles/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/Particles/centroids.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/Particles/emittance.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/Particles/kde.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/Particles/minimumVolumeEllipse.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/Particles/mve.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/Particles/sigmas.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/Particles/slice.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/Particles/twiss.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/astra.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/cheetah.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/genesis.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/hdf5.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/mad8.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/ocelot.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/opal.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/vsim.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/wake_t.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Beams/xsuite.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Fields/FieldParameter.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Fields/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Fields/astra.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Fields/gdf.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Fields/hdf5.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Fields/opal.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Fields/sdds.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/MathParser.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Matrices/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Matrices/elegant.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Matrices/hdf5.py +0 -0
- /simba_accelerator-0.1.3/simba/Modules/Twiss/elegant.py → /simba_accelerator-0.2.0/simba/Modules/Twiss/.ipynb_checkpoints/elegant-checkpoint.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Twiss/astra.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Twiss/cheetah.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Twiss/gpt.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Twiss/hdf5.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Twiss/ocelot.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Twiss/opal.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Twiss/plot.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/Twiss/xsuite.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/constants.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/gdf_beam.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/gdf_emit.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/id_number.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/id_number_server.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/merge_two_dicts.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/optimisation/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/optimisation/constraints.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/optimisation/nelder_mead.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/optimisation/optimiser.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/plotting/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/plotting/latticeDraw.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/plotting/multiAxisPlot.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/plotting/multiPlot.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/pmd_units.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/symmlinks.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Modules/units.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/Vision_Mission.docx +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/__init__.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/elementkeywords.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/hosts.yaml +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba/yaml_checker.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba_accelerator.egg-info/dependency_links.txt +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/simba_accelerator.egg-info/top_level.txt +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/tests/CLARA/Settings/250pC/1/constants.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/tests/CLARA/src/FEBE_Simple_NM.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/tests/CLARA/test.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/tests/ISIS/LEBT/testing_SimFrame_LEBT.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/tests/ISIS/MEBT/testing_SimFrame_MEBT.py +0 -0
- {simba_accelerator-0.1.3 → simba_accelerator-0.2.0}/tests/xopt_example/example.yaml +0 -0
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: simba-accelerator
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.2.0
|
|
4
4
|
Summary: A python framework for particle accelerator simulations
|
|
5
5
|
Author-email: James Jones <james.jones@stfc.ac.uk>
|
|
6
6
|
Maintainer-email: James Jones <james.jones@stfc.ac.uk>, Alex Brynes <alexander.brynes@stfc.ac.uk>, Mark Johnson <mark.johnson@stfc.ac.uk>
|
|
@@ -11,7 +11,7 @@ Project-URL: Issues, https://github.com/astec-stfc/simba/-/issues/
|
|
|
11
11
|
Classifier: Programming Language :: Python :: 3.10
|
|
12
12
|
Requires-Python: >=3.10
|
|
13
13
|
Description-Content-Type: text/markdown
|
|
14
|
-
Requires-Dist: deepdiff>=
|
|
14
|
+
Requires-Dist: deepdiff>=8.6
|
|
15
15
|
Requires-Dist: h5py>=2.10
|
|
16
16
|
Requires-Dist: munch>=2.5
|
|
17
17
|
Requires-Dist: numpy>=2
|
|
@@ -38,17 +38,15 @@ Requires-Dist: cheetah-accelerator>=0.7.5
|
|
|
38
38
|
Requires-Dist: openpmd-beamphysics>=0.10
|
|
39
39
|
Requires-Dist: xopt
|
|
40
40
|
Requires-Dist: Wake-T>=0.8.0
|
|
41
|
-
Requires-Dist:
|
|
41
|
+
Requires-Dist: laura-accelerator
|
|
42
42
|
Provides-Extra: test
|
|
43
43
|
Requires-Dist: pytest; extra == "test"
|
|
44
44
|
Requires-Dist: pytest-cov; extra == "test"
|
|
45
|
-
Requires-Dist: MasterLattice; extra == "test"
|
|
46
45
|
Provides-Extra: docs
|
|
47
46
|
Requires-Dist: sphinx>=8; extra == "docs"
|
|
48
47
|
Requires-Dist: sphinx-rtd-theme; extra == "docs"
|
|
49
48
|
Requires-Dist: myst-nb; extra == "docs"
|
|
50
49
|
Requires-Dist: sphinx_autodoc_typehints>=3; extra == "docs"
|
|
51
|
-
Requires-Dist: MasterLattice; extra == "docs"
|
|
52
50
|
Requires-Dist: sphinxcontrib-bibtex; extra == "docs"
|
|
53
51
|
Dynamic: requires-python
|
|
54
52
|
|
|
@@ -61,7 +59,7 @@ Dynamic: requires-python
|
|
|
61
59
|
Our mission statement is *"To create a start to end framework for consistent, transparent simulations of particle
|
|
62
60
|
accelerators and FELs that anybody can use, and that everybody trusts."*
|
|
63
61
|
|
|
64
|
-
By leveraging a [standard accelerator lattice format](https://github.com/astec-stfc/
|
|
62
|
+
By leveraging a [standard accelerator lattice format](https://github.com/astec-stfc/laura.git), `SIMBA`
|
|
65
63
|
is able to generate and run input files for a range of accelerator simulation codes, enabling seamless transfer
|
|
66
64
|
of input and output distributions.
|
|
67
65
|
|
|
@@ -98,12 +96,21 @@ The package and its dependencies can be installed using the following command in
|
|
|
98
96
|
```bash
|
|
99
97
|
pip install .
|
|
100
98
|
```
|
|
99
|
+
|
|
100
|
+
Install from PyPI
|
|
101
|
+
-----------------
|
|
102
|
+
|
|
103
|
+
Alternatively, `SIMBA` can be installed directly from PyPI using:
|
|
104
|
+
|
|
105
|
+
```bash
|
|
106
|
+
pip install simba-accelerator
|
|
107
|
+
```
|
|
101
108
|
|
|
102
109
|
Optional Dependencies
|
|
103
110
|
---------------------
|
|
104
111
|
|
|
105
112
|
In order to access the accelerator code executables, they must also inform ``SIMBA`` of their
|
|
106
|
-
locations. See the entry on [SimCodes](https://simba.readthedocs.io/en/latest/SimCodes.html).
|
|
113
|
+
locations. See the entry on [SimCodes](https://simba-accelerator.readthedocs.io/en/latest/SimCodes.html).
|
|
107
114
|
|
|
108
115
|
Participation
|
|
109
116
|
-------------
|
|
@@ -121,9 +128,9 @@ We are also happy to help with installation and setting up your accelerator latt
|
|
|
121
128
|
Getting started with SIMBA
|
|
122
129
|
-----------------------------
|
|
123
130
|
|
|
124
|
-
Accelerator lattices in
|
|
131
|
+
Accelerator lattices in `SIMBA` are derived from the [LAURA](https://github.com/astec-stfc/laura/)
|
|
125
132
|
standard lattice format. This is a schema for providing generic descriptions of accelerator elements and
|
|
126
|
-
layouts
|
|
133
|
+
layouts; see [LAURA documentation](https://laura-accelerator.readthedocs.io/en/latest/).
|
|
127
134
|
|
|
128
135
|
Given that this format is designed to capture all relevant information about accelerator elements,
|
|
129
136
|
and that it includes a built-in translator module for exporting lattice files to various simulation codes,
|
|
@@ -168,20 +175,21 @@ groups:
|
|
|
168
175
|
bunch_compressor:
|
|
169
176
|
type: chicane
|
|
170
177
|
elements: [CLA-VBC-MAG-DIP-01, CLA-VBC-MAG-DIP-02, CLA-VBC-MAG-DIP-03, CLA-VBC-MAG-DIP-04]
|
|
171
|
-
layout: /path/to/
|
|
172
|
-
section: /path/to/
|
|
173
|
-
element_list: /path/to/
|
|
178
|
+
layout: /path/to/laura-lattices/CLARA/layouts.yaml
|
|
179
|
+
section: /path/to/laura-lattices/CLARA/sections.yaml
|
|
180
|
+
element_list: /path/to/laura-lattices/CLARA/YAML/
|
|
174
181
|
|
|
175
182
|
```
|
|
176
183
|
|
|
177
184
|
This lattice definition would produce several output files (called ``injector400.in``, ``Linac.lte``,
|
|
178
185
|
and ``FEBE.py``) for running in the **ASTRA**, **Elegant** and **Ocelot** beam tracking codes.
|
|
179
186
|
|
|
180
|
-
The elements are loaded from the directory ``/path/to/
|
|
187
|
+
The elements are loaded from the directory ``/path/to/laura-lattices/CLARA/YAML/`` defined above.
|
|
181
188
|
|
|
182
189
|
As this simulation starts from the cathode, the ``input`` definition is required for the first
|
|
183
190
|
`injector400` ``file`` block. An alternative method for starting is to specify ``input/particle_definition`` to
|
|
184
|
-
point to an existing
|
|
191
|
+
point to an existing
|
|
192
|
+
[beam file](https://simba-accelerator.readthedocs.io/en/latest/examples/notebooks/beams_example.html).
|
|
185
193
|
|
|
186
194
|
For `follow-on` lattice runs, it is sufficient to define the ``output: start_element``, which should match the
|
|
187
195
|
``output: end_element`` definition from the previous ``file`` block.
|
|
@@ -199,9 +207,9 @@ import simba.Framework as fw
|
|
|
199
207
|
# "verbose" will print a progressbar if true
|
|
200
208
|
simcodes_location = "/path/to/simcodes/directory"
|
|
201
209
|
framework = fw.Framework(
|
|
202
|
-
master_lattice="/path/to/
|
|
210
|
+
master_lattice="/path/to/laura-lattices/CLARA",
|
|
203
211
|
directory="./example",
|
|
204
|
-
generator_defaults="/path/to/
|
|
212
|
+
generator_defaults="/path/to/laura-lattices/CLARA/Generators/clara.yaml",
|
|
205
213
|
simcodes_location=simcodes_location,
|
|
206
214
|
clean=True,
|
|
207
215
|
verbose=True,
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
Our mission statement is *"To create a start to end framework for consistent, transparent simulations of particle
|
|
8
8
|
accelerators and FELs that anybody can use, and that everybody trusts."*
|
|
9
9
|
|
|
10
|
-
By leveraging a [standard accelerator lattice format](https://github.com/astec-stfc/
|
|
10
|
+
By leveraging a [standard accelerator lattice format](https://github.com/astec-stfc/laura.git), `SIMBA`
|
|
11
11
|
is able to generate and run input files for a range of accelerator simulation codes, enabling seamless transfer
|
|
12
12
|
of input and output distributions.
|
|
13
13
|
|
|
@@ -44,12 +44,21 @@ The package and its dependencies can be installed using the following command in
|
|
|
44
44
|
```bash
|
|
45
45
|
pip install .
|
|
46
46
|
```
|
|
47
|
+
|
|
48
|
+
Install from PyPI
|
|
49
|
+
-----------------
|
|
50
|
+
|
|
51
|
+
Alternatively, `SIMBA` can be installed directly from PyPI using:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
pip install simba-accelerator
|
|
55
|
+
```
|
|
47
56
|
|
|
48
57
|
Optional Dependencies
|
|
49
58
|
---------------------
|
|
50
59
|
|
|
51
60
|
In order to access the accelerator code executables, they must also inform ``SIMBA`` of their
|
|
52
|
-
locations. See the entry on [SimCodes](https://simba.readthedocs.io/en/latest/SimCodes.html).
|
|
61
|
+
locations. See the entry on [SimCodes](https://simba-accelerator.readthedocs.io/en/latest/SimCodes.html).
|
|
53
62
|
|
|
54
63
|
Participation
|
|
55
64
|
-------------
|
|
@@ -67,9 +76,9 @@ We are also happy to help with installation and setting up your accelerator latt
|
|
|
67
76
|
Getting started with SIMBA
|
|
68
77
|
-----------------------------
|
|
69
78
|
|
|
70
|
-
Accelerator lattices in
|
|
79
|
+
Accelerator lattices in `SIMBA` are derived from the [LAURA](https://github.com/astec-stfc/laura/)
|
|
71
80
|
standard lattice format. This is a schema for providing generic descriptions of accelerator elements and
|
|
72
|
-
layouts
|
|
81
|
+
layouts; see [LAURA documentation](https://laura-accelerator.readthedocs.io/en/latest/).
|
|
73
82
|
|
|
74
83
|
Given that this format is designed to capture all relevant information about accelerator elements,
|
|
75
84
|
and that it includes a built-in translator module for exporting lattice files to various simulation codes,
|
|
@@ -114,20 +123,21 @@ groups:
|
|
|
114
123
|
bunch_compressor:
|
|
115
124
|
type: chicane
|
|
116
125
|
elements: [CLA-VBC-MAG-DIP-01, CLA-VBC-MAG-DIP-02, CLA-VBC-MAG-DIP-03, CLA-VBC-MAG-DIP-04]
|
|
117
|
-
layout: /path/to/
|
|
118
|
-
section: /path/to/
|
|
119
|
-
element_list: /path/to/
|
|
126
|
+
layout: /path/to/laura-lattices/CLARA/layouts.yaml
|
|
127
|
+
section: /path/to/laura-lattices/CLARA/sections.yaml
|
|
128
|
+
element_list: /path/to/laura-lattices/CLARA/YAML/
|
|
120
129
|
|
|
121
130
|
```
|
|
122
131
|
|
|
123
132
|
This lattice definition would produce several output files (called ``injector400.in``, ``Linac.lte``,
|
|
124
133
|
and ``FEBE.py``) for running in the **ASTRA**, **Elegant** and **Ocelot** beam tracking codes.
|
|
125
134
|
|
|
126
|
-
The elements are loaded from the directory ``/path/to/
|
|
135
|
+
The elements are loaded from the directory ``/path/to/laura-lattices/CLARA/YAML/`` defined above.
|
|
127
136
|
|
|
128
137
|
As this simulation starts from the cathode, the ``input`` definition is required for the first
|
|
129
138
|
`injector400` ``file`` block. An alternative method for starting is to specify ``input/particle_definition`` to
|
|
130
|
-
point to an existing
|
|
139
|
+
point to an existing
|
|
140
|
+
[beam file](https://simba-accelerator.readthedocs.io/en/latest/examples/notebooks/beams_example.html).
|
|
131
141
|
|
|
132
142
|
For `follow-on` lattice runs, it is sufficient to define the ``output: start_element``, which should match the
|
|
133
143
|
``output: end_element`` definition from the previous ``file`` block.
|
|
@@ -145,9 +155,9 @@ import simba.Framework as fw
|
|
|
145
155
|
# "verbose" will print a progressbar if true
|
|
146
156
|
simcodes_location = "/path/to/simcodes/directory"
|
|
147
157
|
framework = fw.Framework(
|
|
148
|
-
master_lattice="/path/to/
|
|
158
|
+
master_lattice="/path/to/laura-lattices/CLARA",
|
|
149
159
|
directory="./example",
|
|
150
|
-
generator_defaults="/path/to/
|
|
160
|
+
generator_defaults="/path/to/laura-lattices/CLARA/Generators/clara.yaml",
|
|
151
161
|
simcodes_location=simcodes_location,
|
|
152
162
|
clean=True,
|
|
153
163
|
verbose=True,
|
|
@@ -30,7 +30,7 @@ Creating a SimCodes Directory
|
|
|
30
30
|
-----------------------------
|
|
31
31
|
|
|
32
32
|
One can create a top-level directory containing sub-folders for each tracking code, and instantiate :mod:`SIMBA`
|
|
33
|
-
with a ``
|
|
33
|
+
with a ``simcodes`` argument:
|
|
34
34
|
|
|
35
35
|
.. code-block:: python
|
|
36
36
|
|
|
@@ -40,7 +40,7 @@ with a ``simcodes_location`` argument:
|
|
|
40
40
|
|
|
41
41
|
fw = Framework(
|
|
42
42
|
directory=directory,
|
|
43
|
-
|
|
43
|
+
simcodes=simcodes_location,
|
|
44
44
|
)
|
|
45
45
|
|
|
46
46
|
Alternatively, one can set up :mod:`SIMBA` without this argument and set up the ``SimCodes`` location afterwards:
|
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
"id": "1fd06310-63aa-4f50-b67f-d63893108de5",
|
|
14
14
|
"metadata": {},
|
|
15
15
|
"source": [
|
|
16
|
-
"This notebook will show how to set up `SIMBA`, load in a `
|
|
16
|
+
"This notebook will show how to set up `SIMBA`, load in a `LAURA` object and settings for tracking, and show how to plot the results.\n",
|
|
17
17
|
"\n",
|
|
18
|
-
"It is assumed that a `
|
|
18
|
+
"It is assumed that a `LAURA` lattice directory and a `SimCodes` directory have been prepared and set with environment variables (see the docs [here](https://simba-accelerator.readthedocs.io/en/latest/SimCodes.html)). "
|
|
19
19
|
]
|
|
20
20
|
},
|
|
21
21
|
{
|
|
@@ -99,7 +99,7 @@
|
|
|
99
99
|
"name": "stdout",
|
|
100
100
|
"output_type": "stream",
|
|
101
101
|
"text": [
|
|
102
|
-
"{'beam': {'filename': None, 'code': None}, 'GPTLICENSE': '', 'delete_tracking_files': False, 'astra_use_wsl': 1, 'master_subdir': '/home/xkc85723/Documents/simba/docs/source/examples/notebooks/getting_started', '
|
|
102
|
+
"{'beam': {'filename': None, 'code': None}, 'GPTLICENSE': '', 'delete_tracking_files': False, 'astra_use_wsl': 1, 'master_subdir': '/home/xkc85723/Documents/simba/docs/source/examples/notebooks/getting_started', 'master_lattice': '/home/xkc85723/Documents/laura-lattices/CLARA/./', 'simcodes_location': '/home/xkc85723/Documents/venv/lib/python3.12/site-packages/SimCodes/'}\n"
|
|
103
103
|
]
|
|
104
104
|
}
|
|
105
105
|
],
|
|
@@ -127,7 +127,7 @@
|
|
|
127
127
|
"name": "stdout",
|
|
128
128
|
"output_type": "stream",
|
|
129
129
|
"text": [
|
|
130
|
-
"FrameworkSettings({'settingsFilename': '/home/xkc85723/Documents/
|
|
130
|
+
"FrameworkSettings({'settingsFilename': '/home/xkc85723/Documents/laura-lattices/CLARA/./Lattices/clara400_v13_combined.def', 'global': {}, 'generator': {'code': 'astra', 'default': 'clara_400_3ps'}, 'section': '/home/xkc85723/Documents/laura-lattices/CLARA/sections.yaml', 'element_list': '/home/xkc85723/Documents/laura-lattices/CLARA/YAML/', 'groups': {'bunch_compressor': {'type': 'chicane', 'elements': ['CLA-VBC-MAG-DIP-01', 'CLA-VBC-MAG-DIP-02', 'CLA-VBC-MAG-DIP-03', 'CLA-VBC-MAG-DIP-04']}}, 'elements': {}, 'files': {'injector400': {'code': 'astra', 'charge': {'cathode': True, 'space_charge_mode': '2D', 'mirror_charge': True}, 'input': {'particle_definition': 'initial_distribution'}, 'output': {'zstart': 0, 'end_element': 'CLA-S02-SIM-APER-01'}}, 'Linac': {'code': 'elegant', 'output': {'start_element': 'CLA-S02-SIM-APER-01', 'end_element': 'CLA-FEA-SIM-START-01'}}, 'FEBE': {'code': 'elegant', 'charge': {'cathode': False, 'space_charge_mode': '3D'}, 'input': {}, 'output': {'start_element': 'CLA-FEA-SIM-START-01', 'end_element': 'CLA-FED-SIM-DUMP-01-START'}}}, 'layout': '/home/xkc85723/Documents/laura-lattices/CLARA/layouts.yaml'})\n"
|
|
131
131
|
]
|
|
132
132
|
}
|
|
133
133
|
],
|
|
@@ -8,9 +8,9 @@ Getting started with SIMBA
|
|
|
8
8
|
Lattice Definition
|
|
9
9
|
------------------
|
|
10
10
|
|
|
11
|
-
Accelerator lattices in :mod:`SIMBA` are derived from the `
|
|
11
|
+
Accelerator lattices in :mod:`SIMBA` are derived from the `LAURA <https://github.com/astec-stfc/laura/>`_
|
|
12
12
|
standard lattice format. This is a schema for providing generic descriptions of accelerator elements and
|
|
13
|
-
layouts; see the `
|
|
13
|
+
layouts; see the `LAURA documentation <https://laura-accelerator.readthedocs.io/en/latest/#>`_ for more details.
|
|
14
14
|
|
|
15
15
|
Given that this format is designed to capture all relevant information about accelerator elements,
|
|
16
16
|
and that it includes a built-in translator module for exporting lattice files to various simulation codes,
|
|
@@ -21,10 +21,10 @@ We would be remiss not to begin with a simple FODO:
|
|
|
21
21
|
|
|
22
22
|
.. code-block:: python
|
|
23
23
|
|
|
24
|
-
from
|
|
25
|
-
from
|
|
26
|
-
from
|
|
27
|
-
from
|
|
24
|
+
from laura.models.element import Quadrupole, Marker # noqa E402
|
|
25
|
+
from laura.models.elementList import MachineModel # noqa E402
|
|
26
|
+
from laura.Exporters.YAML import export_machine
|
|
27
|
+
from laura import LAURA # noqa E402
|
|
28
28
|
|
|
29
29
|
outdir = "/path/to/lattice/directory"
|
|
30
30
|
|
|
@@ -102,7 +102,7 @@ We would be remiss not to begin with a simple FODO:
|
|
|
102
102
|
}
|
|
103
103
|
}
|
|
104
104
|
|
|
105
|
-
machine =
|
|
105
|
+
machine = LAURA(element_list=[m1, q1f, q1d, m3], layout=layouts, section=sections)
|
|
106
106
|
export_machine(path=f"{outdir}/Lattice", machine=machine, overwrite=True)
|
|
107
107
|
|
|
108
108
|
Generating an input beam
|
|
@@ -113,7 +113,7 @@ The simulation requires a macroparticle distribution to run. This can be generat
|
|
|
113
113
|
|
|
114
114
|
.. code-block:: python
|
|
115
115
|
|
|
116
|
-
from simba.Codes.Generators
|
|
116
|
+
from simba.Codes.Generators imoutdirport frameworkGenerator
|
|
117
117
|
import simba.Modules.Beams as rbf
|
|
118
118
|
|
|
119
119
|
gen = frameworkGenerator(
|
|
@@ -147,7 +147,7 @@ This involves passing a group of settings to :mod:`SIMBA`, including:
|
|
|
147
147
|
* The simulation code used to run each section;
|
|
148
148
|
* Additional settings, such as the enabling of collective effects, or transverse matching parameters for the initial beam;
|
|
149
149
|
* Settings for beam generation;
|
|
150
|
-
* Locations for :mod:`
|
|
150
|
+
* Locations for :mod:`LAURA` files.
|
|
151
151
|
|
|
152
152
|
These are all read in when :mod:`SIMBA` is instantiated. The example below shows how to create these settings in :mod:`python`;
|
|
153
153
|
alternatively, one can create a settings file in YAML and pass that in; see :ref:`Loading a lattice <loading-a-lattice>`:
|
|
@@ -41,7 +41,11 @@ To check that the install was completed successfully, run this command from the
|
|
|
41
41
|
Install from pypi / conda-forge
|
|
42
42
|
-------------------------------
|
|
43
43
|
|
|
44
|
-
|
|
44
|
+
:mod:`SIMBA` is available from pypi:
|
|
45
|
+
|
|
46
|
+
.. code-block:: bash
|
|
47
|
+
|
|
48
|
+
pip install simba-accelerator
|
|
45
49
|
|
|
46
50
|
Required Dependencies
|
|
47
51
|
---------------------
|
|
@@ -4,16 +4,16 @@ Loading in a Lattice File
|
|
|
4
4
|
=========================
|
|
5
5
|
|
|
6
6
|
:ref:`Getting started <getting-started>` demonstrated how to create a
|
|
7
|
-
`
|
|
7
|
+
`LAURA <https://github.com/astec-stfc/laura/>`_ lattice in :mod:`python`.
|
|
8
8
|
This page will describe how to generate a :mod:`SIMBA` instance based on pre-existing
|
|
9
|
-
`
|
|
9
|
+
`LAURA <https://github.com/astec-stfc/laura/>`_ element and lattice definitions.
|
|
10
10
|
|
|
11
11
|
.. _setup-from-file:
|
|
12
12
|
|
|
13
13
|
Setting up a Simulation From Files
|
|
14
14
|
----------------------------------
|
|
15
15
|
|
|
16
|
-
Given a :mod:`
|
|
16
|
+
Given a :mod:`LAURA` ``MachineModel``, which contains:
|
|
17
17
|
|
|
18
18
|
* All of the elements in an accelerator lattice;
|
|
19
19
|
* The various sections that compose that lattice;
|
|
@@ -58,18 +58,18 @@ for the CLARA :cite:`PhysRevAccelBeams.23.044801` :cite:`PhysRevAccelBeams.27.04
|
|
|
58
58
|
bunch_compressor:
|
|
59
59
|
type: chicane
|
|
60
60
|
elements: [CLA-VBC-MAG-DIP-01, CLA-VBC-MAG-DIP-02, CLA-VBC-MAG-DIP-03, CLA-VBC-MAG-DIP-04]
|
|
61
|
-
layout: /path/to/
|
|
62
|
-
section: /path/to/
|
|
63
|
-
element_list: /path/to/
|
|
61
|
+
layout: /path/to/laura-lattices/CLARA/layouts.yaml
|
|
62
|
+
section: /path/to/laura-lattices/CLARA/sections.yaml
|
|
63
|
+
element_list: /path/to/laura-lattices/CLARA/YAML/
|
|
64
64
|
|
|
65
65
|
This lattice definition would produce several output files (called ``injector400.in``, ``Linac.lte``,
|
|
66
66
|
and ``FEBE.py``) for running in the **ASTRA**, **Elegant** and **Ocelot** beam tracking codes.
|
|
67
67
|
|
|
68
|
-
The elements are loaded from the directory ``/path/to/
|
|
68
|
+
The elements are loaded from the directory ``/path/to/laura-lattices/CLARA/YAML/`` defined above.
|
|
69
69
|
|
|
70
70
|
As this simulation starts from the cathode, the ``input`` definition is required for the first
|
|
71
71
|
`injector400` ``file`` block. An alternative method for starting is to specify ``input/particle_definition`` to
|
|
72
|
-
point to an existing beam file
|
|
72
|
+
point to an existing beam file.
|
|
73
73
|
|
|
74
74
|
For `follow-on` lattice runs, it is sufficient to define the ``output: start_element``, which should match the ``output: end_element`` definition
|
|
75
75
|
from the previous ``file`` block.
|
|
@@ -78,7 +78,7 @@ from the previous ``file`` block.
|
|
|
78
78
|
Running SIMBA
|
|
79
79
|
-------------
|
|
80
80
|
|
|
81
|
-
The following example assumes that `
|
|
81
|
+
The following example assumes that `LAURA <https://github.com/astec-stfc/laura/>`_ has already been installed
|
|
82
82
|
(see :ref:`Installation <installation>`) and that the :ref:`SimCodes <simcodes>` directory has
|
|
83
83
|
been prepared.
|
|
84
84
|
|
|
@@ -92,7 +92,7 @@ been prepared.
|
|
|
92
92
|
# "verbose" will print a progressbar if true
|
|
93
93
|
simcodes_location = "/path/to/simcodes/directory"
|
|
94
94
|
framework = fw.Framework(
|
|
95
|
-
master_lattice="/path/to/
|
|
95
|
+
master_lattice="/path/to/laura-lattices/CLARA",
|
|
96
96
|
directory="./example",
|
|
97
97
|
generator_defaults="clara.yaml",
|
|
98
98
|
simcodes_location=simcodes_location,
|