The entry points to GS2 when using it as a library have been
refactored, with some deprecated routines having been removed. The
main entry point is still run_gs2
, but this now takes only two
arguments: the program state
, and an option to delay finalising
the simulation until finish_gs2
is called. The user is expected to
take care of initialising and finalising MPI, and passing the MPI
communicator through state%mp_comm
.
The change to the GS2 entry points means that some interfaces to external codes, such as Trinity, have also been removed. The caller should now handle any customisation to the GS2 setup/teardown.
The "replay" feature to recalculate some diagnostics on a previous run has been removed. This feature only interacted with the "new" diagnostics module, and only a certain subset of diagnostics.
Correction for collisional treatment with new_trap_int = T
may change results.
Correction for nonadiabatic dfn initial conditions with adiabatic species may prevent reproducibility of previous simulations (but not change the physics of the time advance).
No new known issues.
No new known issues.
From v8.1 onwards, we will be recording breaking changes. GS2 development policy is to minmize disruption to users by only introducing breaking changes into major and minor releases (e.g. v8, v8.1, but not v8.1.1). By "breaking change", we mean anything (that isn't a bug fix!) that will change the physics results or lead to different/unexpected code behaviour without the user changing anything in their input file. This typically means changes to defaults, or improvements to physics/algorithms that change the results but aren't fixing a definite bug.
The breaking changes for v8.1 are:
dt0
) is stored in
the restart file and is restored when delt_option = 'check_restart'
. The
value used can still be overridden by setting dt0
. This breaks backwards
compatibility with pre-8.1 restart files: now if delt_max
is not found in
the restart file then we would fail to set the maximum time step or the time
step history from the restart file, and an error is thrown.opt_redist_init
is no longer an option - we only support the optimal
version of the redistribution initialization routine. Users need to
remove opt_redist_init
from layout_knobs
namelist in input files.rplot
,
zplot
, rprime
and zprime
. This has the potential to break analysis
scripts. write_fluxes
and write_fluxes_by_mode
now
default to true
for nonlinear runs and false
for nonlinear runs.rm -rf tests/benchmarks/init
rm -rf tests/benchmarks/timestep
ncdump
on an in use file is likely
to return a HDF error. To avoid this and allow access during a run
one can set HDF5_USE_FILE_LOCKING=FALSE
in the environment
(e.g. export
this in bash)*.g_lo <-> le_lo
redistribute PR #549 | David Dickinsonwrite_hrate
with write_heating
PR #484 | Peter Hillbig
is initialised prior to use. PR #508 | David Dickinsonfile_safety_check
in new diagnostics PR #452 | Peter Hillis not
with !=
in python helper PR #441 | David Dickinsonsave_glo_info_and_grids/save_velocities
in old diagnostics PR #419 | Peter Hillng2
to be set directly in the input file. PR #399 | David Dickinsoninclude_explicit_source_in_restart
input flag PR #208 | David Dickinsononly
to rules
to determine when to rebuild the website. PR #301 | David Dickinsoninit_antenna
rather than read_parameters
during init. PR #226 | David Dickinsonplotdata
call earlier in eikcoefs to avoid issue with theta being redefined. PR #225 | David Dickinsonopt_redist_init
flag from benchmarking input files PR #191 | Joseph Parkernopass
to a couple of generated config lines PR #187 | David Dickinsonnth
rather than ntgrid
to leqin
PR #372 | David Dickinsoneikcoefs
when using CHEASE equilibrium PR #271 | Stephen Biggs-Foxmod
call with a potential second argument of 0 PR #282 | David Dickinsonwrite_eigenfunc
in new diagnostics PR #281 | Joseph Parkerforce_maxwell_reinit
input file value PR #255 | Stephen Biggs-Foxapar_m
to improve cancellation PR #280 | David DickinsonBLUEGENEARGS
makeflag PR #277 | Joseph Parkerdump_grids
PR #258 | David Dickinson$(BINDIR)
) if it doesn't exist. PR #235 | David Dickinsonmake depend
generating the dependency file twice PR #90 | David Dickinson