https://github.com/slaclab/facet-matlabtng
New matlab tools repository for FACET-II
https://github.com/slaclab/facet-matlabtng
Last synced: 3 months ago
JSON representation
New matlab tools repository for FACET-II
- Host: GitHub
- URL: https://github.com/slaclab/facet-matlabtng
- Owner: slaclab
- Created: 2021-02-25T23:13:55.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2025-02-25T00:08:41.000Z (over 1 year ago)
- Last Synced: 2025-04-14T15:43:57.713Z (about 1 year ago)
- Language: MATLAB
- Size: 183 MB
- Stars: 2
- Watchers: 8
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README
Awesome Lists containing this project
README
Matlab TNG
----------
Matlab 2020 GUIs and beyond . . .
. . . Engage!
Lucretia
--------
Lucretia is a physics toolbox for the simulation of high-performance single-pass electron beam transport systems. It is designed to support studies of linear collider Low Emittance Transport (bunch compressor, linear accelerator, final focus), and also the transport and acceleration system of linac-driven free electron lasers.
The src directory contains all the m-file source code as well as binaries for supported platforms for the current production version of Matlab.
To rebuild the mex binaries, go to src/mexsrc, edit and run the Makefile or Matlab build.m (some help available in Makefile or build.m file). The supported compiler is the system gcc compiler.
To build ground motion and/or xsif parser binaries, go into the mexsrc/matgm and/or mexsrc/xsif direcories. These have fortran source files and the supported compiler is the system gfortran compiler.
The main source code of Lucretia exists as Matlab functions and mex files inside the src directory sub-directories. To use, copy Lucretia directory to desired installation location. From within Matlab, add the Lucretia/src/* directories to your search path.
To use the mex files (e.g. for the main tracking routine "TrackThru"), you should add the relevent shared object files to your shared library search path. e.g. for 32-bit linux set LD_LIBRARY_PATH environment variable to Lucretia/sr/Libs/linux-x86, for 64-bit linux add the path .../linux-x86_64.
The documentation exists as web html files, launch home.html in your browser to view.