A quasi-optical beam-tracing code for electron cyclotron waves absorption and current drive in tokamaks
Go to file
Michele Guerini Rocco 166086d369
replace equilibrium module with an object
Similarly to eb648039 this change replaces the `equilibrium` module with
a new `gray_equil` module providing the same functionality without using
global variables.

  - `read_eqdsk`, `read_equil_an` are replaced by a single `load_equil`
    routine that handles all equilibrium kind (analytical, numerical,
    and vacuum).

  - `scale_equil` is merged into `load_equil`, which besides reading
    the equilibrium from file peforms the rescaling and interpolation based
    on the `gray_parameters` settings and the equilibrium kind.

    To operate on G-EQDSK data specifically, the `change_cocors` and
    `scale_eqdsk` are still available. The numeric equilibrium must then
    be initialised manually by calling equil%init().

  - `set_equil_spline`, `set_equil_an`, `unset_equil_spline`
     are completely removed as the module no longer has any internal state.

  - `fq` is replaced by `equil%safety`; `bfield` by `equil%b_field`;
    `frhotor`, `frhopol` by `equil%pol2tor` and `equil%pol2tor`;
    and the remaining subroutines by other methods of `abstract_equil`
    retaining the old name.

  - the `contours_psi` subroutine is replaced by `equil%flux_contour`,
    with a slightly changed invocation but same functionality.

  - the `gray_data` type is no longer required ans has been removed: all
    the core subroutines now access the input data only though either
    `abstract_equil`, `abstract_plasma` or the `limiter` contour.
2024-11-03 09:18:33 +01:00
doc doc/gray.ini.5: fix some typos 2024-05-21 13:57:16 +02:00
schemas Remove unused imports 2024-05-17 11:01:14 +02:00
scripts tests: use new file and column names 2024-10-07 16:19:31 +02:00
src replace equilibrium module with an object 2024-11-03 09:18:33 +01:00
srcjetto fixed incompatibilities with allocatable arrays (pgf90 compiler, JETTO); fixed input/output scaling (gray/jetto interface); fixed error in read_beams2 for small beam tables 2016-06-01 13:49:35 +00:00
tests tests: add test for gray -s 2024-10-07 16:19:31 +02:00
.gitignore .gitignore: remove gray_cli_params.f90 2024-04-12 17:33:34 +02:00
configure fix static compilation on macOS 2024-01-24 14:37:21 +01:00
default.nix add tests 2024-02-09 11:16:17 +01:00
LICENSE.md move vendored libraries to their own directory 2024-04-29 10:08:16 +02:00
Makefile Makefile: split install target for binaries and documentation 2024-05-30 17:52:40 +02:00