Releases: boutproject/hypnotoad
Releases · boutproject/hypnotoad
0.5.2
Bug fixes
- Document that editable installs are recommended for developers in manual and
exception message (#167)
By John Omotani
New features
- Save R,Z locations for all four corners of each cell (#168)
By John Omotani PsiContour.plot()
andFineContour.plot()
can be called with anax
argument, and passingpsi
is optional (#163)
By Ben Dudson
0.5.1
New features
- Command line utility to get flux surfaces from a geqdsk file and save them to
NetCDF (#156)
By John Omotani
0.5.0
Breaking changes
- Renamed command line programs to make the style consistent. All now use '-'
as a separator, not '_' (#142)
By John Omotani - Change how initial spacing of points on separatrix for nonorthogonal grids is
calculated (this spacing is used to construct the underlying orthogonal
grid). Now use weights that are just
{cos(0.5*pi*i/index_length)**2
,sin(0.5*pi*i/index_length)**2
} rather than
trying to construct a function that will give the same spacings when called
with the 'orthogonal spacing' that came from the initial call passed in as
sfunc_orthogonal
. This means that the underlying orthogonal grid does not
rely at all onnonorthogonal_*
settings, so removes an issue where some
grids could only be constructed by generating first with one set of
nonorthogonal_*
settings, then changing them and regridding. It also
removes the possibility of a "Weight too small. Suggest increasing poloidal
'range' settings" error, since the branch that produced that error no longer
exists. Does change the nonorthogonal grids that will be produced by
hypnotoad, although the integrated tests pass without updating the expected
results, so the changes should be small (less than 1e-9 for the integrated
test cases) (#138)
By John Omotani
Bug fixes
- Catch error when
psi_sol_inner
is set wrong. Add suggestions to 'gradient
at end should be positive' error message (#130)
By Ben Dudson - Fix
psi_axis
check whenreverse_current=True
(#131)
By John Omotani - Errors when setting options could crash GUI. Can now change string options in
GUI. Reset to old value if invalid value is passed for some option. Type name
is actually shown in error message pop-up when incorrect type is passed
(#134)
By John Omotani - Fix potential error in check of X-point
psi
vs.psinorm_sol
(#143)
By John Omotani
New features
- Create a manual for hypnotoad (#145)
By John Omotani - Convenience script for making a plot of an equilibrium from a geqdsk file (#139)
By John Omotani - If an
int
(or otherNumber
) literal is passed to a float-type option, it
is converted implicitly instead of causing an error. (#134)
By John Omotani
0.4.4
Bug fixes
- Fix for circular geometries with non-constant q (#120)
By John Omotani
New features
- Command to recreate input file and gfile from a grid file (#119)
By John Omotani - Save all variables at
xlow
positions (as*_xlow
), as these can be used by BOUT++ to createCELL_XLOW
Coordinates
objects. Also save the positions of the cell corners (Rxy_corners
andZxy_corners
) as these may be useful for plotting (#118)
By John Omotani - Add executable
hypnotoad_plot_grid_cells
that takes a grid file as input and usesxbout
to plot the grid cells from the newly added corner positions (#118)
By John Omotani
0.4.3
Bug fixes
- Small fixes and minor optimizations for nonorthogonal gridding (#113)
By John Omotani - Pass
psi
to keyword argument where this update had been missed previously
(#113)
By John Omotani - Fix plotting of poloidal lines in Mesh.plotPoints() (#113)
By John Omotani - Minor fixes updating TORPEX case (#106)
By John Omotani - Fix crash in hypnotoad-gui if input file did not contain an 'orthogonal'
setting (#106)
By John Omotani
New features
- Save poloidal distances along psi contours to grid file (#116)
By John Omotani - Option to reverse sign of toroidal magnetic field Bt for TokamakEquilibrium (#114)
By John Omotani - Enable DCT interpolation scheme in TokamakEquilibrum, can be selected with new option
psi_interpolation_method (#113)
By John Omotani - Add xpoint_offset option for TORPEX case (#113)
By John Omotani - Clean up of examples. Input files from examples/tokamak can now be used with
hypnotoad-gui (#106)
By John Omotani - psi_axis and psi_bdry are added to the grid file for post-processing.
The calculated values should be consistent with the EFIT data (#112)
By Qian Xia
0.4.2
One-line update to fix packaging so hypnotoad installs correctly.
0.4.1
0.4.1 (26th May 2021)
Bug fixes
- Check if an equilibrium can be gridded as a connected double-null before gridding. Prevents creation of invalid grids where second X-point is outside the first flux-surface in the SOL (#104)
By John Omotani
0.4.0
0.4.0 (26th May 2021)
Breaking changes
- Method for calculating zShift made more accurate. This will change the calculated zShift for the same input file (#101)
- Default value for 'curvature_type' changed from "curl(b/B) with x-y derivatives" to "curl(b/B)". New default should be more accurate and more consistent when changing grid sizes, but will produce slightly different output from the same input file. If the old behaviour is needed, set 'curvature_type = "curl(b/B) with x-y derivatives"' explicitly (#100)
New features
- Accuracy of calculation of zShift improved by integrating on FineContours rather than PsiContours (#101)
By John Omotani - Circular, concentric flux surfaces magnetic geometry (#100)
By John Omotani - Non-grid based method for calculating curvature (#100)
By John Omotani - Parallelise most expensive loops (#99)
By John Omotani - Fix position of start and end points of contours when refining and add more tolerance settings, to enable more reproducible grid generation (#95)
By John Omotani - Options are saved as a YAML string in "hypnotoad_inputs_yaml" to make them easier to read in code later. (#98)
By John Omotani - When exceptions are caught by the GUI, print the traceback as well as the exception message (#95)
By John Omotani
Testing
- Integrated tests, based on an analytic, connected double-null equilibrium (#97, fixes #50)
By John Omotani
Bug fixes
- Save all options to grid files. Previously only Equilibrium options were saved. Now also Mesh and nonorthogonal options (#98)
By John Omotani - Setting to adjust extension of FineContours past targets, may help to avoid crashes on problematic equilibria (#96)
By John Omotani - Diagnostic plots produced when some errors occur had invalid linestyles - use markers instead (#95, fixes #94)
By John Omotani
0.3.1
New features
- More robust calculation of distances in FineCountour.getDistance(), using
closest approach to line segments. Can be important for grids with sharp angles (#87)
By Ben Dudson
Bug fixes
- Ensure FineContours always extend to the end of their parent PsiContour (#86, fixes
#84)
By Ben Dudson
0.3.0
Breaking changes
- Changed function used for determining radial positioning of grid points. Function now
guaranteed to be monotonic, so is more robust. However this does change the output
slightly compared to previous versions (#64)
By John Omotani - Rename target_poloidal_spacing_length, nonorthogonal_target_poloidal_spacing_length,
nonorthogonal_target_poloidal_spacing_range,
nonorthogonal_target_poloidal_spacing_range_inner,
nonorthogonal_target_poloidal_spacing_range_outer renamed to target_all, because
extra settings were added to modify each of these parameters individually for each
target (#75)
By John Omotani
New features
- Python script to compare two grid files. Script uses xBOUT. Added to utils/
subdirectory of repo, and not installed with hypnotoad package (to avoid adding
dependency on xBOUT) (#83)
By John Omotani - Option to start grid at upper-outer divertor instead of lower-inner (#80)
By John Omotani - Smoothing copied from IDL hypnotoad for components of curvature vector (#79)
By John Omotani - Check for unrecognised options in input files and raise an error if any are found
(#76)
By John Omotani - Extra settings added so spacings can be controlled separately at each target (#74)
By John Omotani - EquilibriumRegion.getSqrtPoloidalDistanceFunc() upgraded to ensure that when
it extrapolates the distance function is always monotonic. This is used when
y_boundary_guards is greater than 0 (#73)
By John Omotani - Command line argument for hypnotoad_geqdsk to call pdb.set_trace() to make it
easier to debug exceptions with pdb (#72)
By John Omotani - When grid file is created from a geqdsk input, save the filename, and the
contents of the geqdsk file to the grid file (#71, closes #70)
By John Omotani - UUID unique identifier saved into each grid file (#67, closes #66)
By John Omotani
Bug fixes
- String outputs written as file attributes rather than variables (#69, fixes #68)
By John Omotani - Failure when target_poloidal_spacing_length set to number (rather than the
default None) when y_boundary_guards is non-zero (#64)
By John Omotani - BoutMesh options now settable in GUI (#63)
By John Omotani - Changing settings in File->Preferences caused GUI to crash (#62, fixes #61)
By John Omotani