| Module | Source File | Description |
|---|---|---|
| MODgvec_Analyze | analyze.F90 | Analyze and output equilibrium data |
| MODgvec_Analyze_Vars | analyze_vars.F90 | |
| MODgvec_base | base.F90 | 2D Fourier base in the two angular directions: (poloidal,toroidal) ~ (m,n) ~ (theta,zeta) [0,2pi]x[0,2pi/nfp] |
| MODgvec_Basis1D | basis1d.F90 | Routines to provide and evaluate 1D polynomial Lagrange basis functions, interpolation and integration points |
| MODgvec_BiotSavart | BiotSavart.F90 | |
| MODgvec_boundaryFromFile | boundaryFromFile.F90 | deallocate everything |
| MODgvec_c_hmap | c_hmap.F90 | contains only the abstract type to point to a specific map h (maps omega_p x S^1 --> omega) |
| MODgvec_c_sol_var | c_sol_var.F90 | contains only abstract type c_sol_var |
| MODgvec_cla | cla.F90 | |
| MODgvec_cla_kinds | cla.F90 | |
| MODgvec_cubic_spline | cubic_spline.F90 | Define a cubic spline by points and function values, with boundary conditions and represent it as a B-Spline for evaluation |
| MODgvec_fBase | fbase.F90 | 2D Fourier base in the two angular directions: (poloidal,toroidal) ~ (m,n) ~ (theta,zeta) [0,2pi]x[0,2pi/nfp] |
| MODgvec_Globals | globals.F90 | Here globally used variables /functions are defined |
| MODgvec_gvec_to_castor3d_Vars | gvec_to_castor3d_vars.F90 | |
| modgvec_gvec_to_gene_c_bind | gvec_to_gene_c_bind.F90 | |
| MODgvec_gvec_to_gene_Vars | gvec_to_gene_vars.F90 | |
| MODgvec_gvec_to_hopr_vars | gvec_to_hopr_vars.F90 | |
| MODgvec_gvec_to_jorek | gvec_to_jorek.F90 | |
| MODgvec_gvec_to_jorek_Vars | gvec_to_jorek_vars.F90 | |
| MODgvec_hmap | hmap.F90 | |
| MODgvec_hmap_axisNB | hmap_axisNB.F90 | This map uses a given periodic input curve X0(zeta) along the curve parameter zeta in [0,2pi]. It is very similar to a Frenet-Serret frame (TNB frame), but with normal N and binormal B vectors as input functions as well. h: X_0(\zeta) + q_1 N(\zeta) + q_2 B(\zeta) the tangent is T=X_0', and N and B are assumed to be continous along zeta, so no switches. Note that since N, B are input functions, they are not assumed to be unit length nor orthogonal, but together with the tangent of the curve T = X_0' , (T, N, B) should form a linearly independent set of basis vectors, with T.(B x N) > 0. |
| MODgvec_hmap_cyl | hmap_cyl.F90 | contains the type that points to the routines of one chosen hmap_cyl |
| MODgvec_hmap_frenet | hmap_frenet.F90 | This map uses the Frenet frame of a given periodic input curve X0(zeta) along the curve parameter zeta in [0,2pi]. It uses the signed orthonormal Frenet-Serret frame (TNB frame) that can be computed from derivatives of X0 in zeta. h: X_0(\zeta) + q_1 \sigma N(\zeta) + q_2 \sigma B(\zeta) with a sign switching function \sigma(\zeta), that accounts for points of zero curvature. the tangent is T=X_0' / |X_0'|, the bi-normal is B= (X_0' x X_0'') / |X_0' x X_0''|, and the normal N= B X T Derivatives use the Frenet-Serret formulas: |
| MODgvec_hmap_knot | hmap_knot.F90 | contains the type that points to the routines of one chosen hmap_knot |
| MODgvec_hmap_RZ | hmap_RZ.F90 | contains the type that points to the routines of one chosen hmap_RZ |
| MODgvec_IO_NETCDF | io_netcdf.F90 | Provides simplified read routines for netcdf files, via a class "t_ncfile" start with defining a variable as CLASS(t_ncfile),ALLOCATABLE :: nc and to allocate and initialize CALL ncfile_init(nc,Filename,rwo_mode) |
| MODgvec_lambda_solve | lambda_solve.F90 | CONTAINS routine to solve for lambda at a specific flux surface (for example for the boudnary condition at the last flux surface) |
| MODgvec_LinAlg | linalg.F90 | Provides the linear algebra wrapper routines using LAPACK. |
| MODgvec_MHD3D | mhd3d.F90 | CONTAINS INITIALIZATION OF MHD 3D Energy functional that will be minimized |
| MODgvec_MHD3D_evalFunc | mhd3d_evalfunc.F90 | Evaluate the MHD3D functional and its derivative |
| MODgvec_MHD3D_minimize | mhd3d_minimize.F90 | CONTAINS minimizer for MHD3D functional |
| MODgvec_MHD3D_Vars | mhd3d_vars.F90 | |
| MODgvec_MPI | mod_mpi.F90 | MPI related stuff, including communication |
| MODgvec_Newton | newton.F90 | Some simple Newton solvers |
| MODgvec_Output | output.F90 | |
| MODgvec_Output_CSV | output_csv.F90 | |
| MODgvec_Output_netcdf | output_netcdf.F90 | Write structured visualization data to multidimensional arrays of a netcdf file |
| MODgvec_Output_Vars | output_vars.F90 | |
| MODgvec_Output_VTK | output_vtk.F90 | Write to unstructured VTK file |
| MODgvec_py_binding | binding.F90 | |
| MODgvec_py_run | run.F90 | |
| MODgvec_py_state | state.F90 | |
| MODgvec_ReadInTools | readintools.F90 | Readin routines for the input file |
| MODgvec_ReadState | readstate.F90 | |
| MODgvec_ReadState_Vars | readstate_vars.F90 | |
| MODgvec_Restart | restart.F90 | |
| MODgvec_Restart_Vars | restart_vars.F90 | |
| MODgvec_rProfile_base | c_rprofile.F90 | Abstract class for radial profiles |
| MODgvec_rProfile_bspl | rprofile_bspline.F90 | Defines a 1-D profile in rho^2 via B-Spline knots and coefficients |
| MODgvec_rProfile_poly | rprofile_polynomial.F90 | Defines a 1-D profile in rho^2 via a power polynomial. |
| MODgvec_rungvec | rungvec.F90 | |
| MODgvec_sBase | sbase.F90 | 1D basis in radial coordinate "s". Contains sbase type definition and associated routines |
| MODgvec_SFL_Boozer | sfl_boozer.F90 | Transform to Straight-field line BOOZER coordinates |
| MODgvec_sGrid | sgrid.F90 | 1D grid in radial coordinate "s": Contains sgrid type definition and associated routines |
| MODgvec_sol_var_MHD3D | sol_var_mhd3d.F90 | Solution variable for MHD3D functional |
| MODgvec_Transform_SFL | transform_sfl.F90 | Transform to Straight-field line angles, PEST / BOOZER |
| MODgvec_VMEC | vmec.F90 | Initializes variables to evaluate a VMEC dataset. In radial direction, a cubic spline is used to interpolate the data. Calls readin of VMEC "wout" datafile (netcdf format). |
| MODgvec_VMEC_Readin | vmec_readin.F90 | |
| MODgvec_VMEC_Vars | vmec_vars.F90 | |
| MODgvec_write_modes | write_modes.F90 | Analyze and output equilibrium data |
| sll_m_assert | sll_m_assert.F90 | |
| sll_m_boundary_condition_descriptors | sll_m_boundary_condition_descriptors.F90 | Describe different boundary conditions |
| sll_m_bsplines | sll_m_bsplines.F90 | Access point to B-splines of arbitrary degree providing factory function |
| sll_m_bsplines_base | sll_m_bsplines_base.F90 | Abstract class for B-splines of arbitrary degree |
| sll_m_bsplines_non_uniform | sll_m_bsplines_non_uniform.F90 | Derived type for non-uniform B-splines of arbitrary degree |
| sll_m_bsplines_uniform | sll_m_bsplines_uniform.F90 | Derived type for uniform B-splines of arbitrary degree |
| sll_m_errors | sll_m_errors.F90 | |
| sll_m_spline_1d | sll_m_spline_1d.F90 | Module for 1D splines, linear combination of B-spline functions. |
| sll_m_spline_interpolator_1d | sll_m_spline_interpolator_1d.F90 | Interpolator for 1D splines of arbitrary degree, |
| sll_m_spline_matrix | sll_m_spline_matrix.F90 | Access point to matrix class providing factory function |
| sll_m_spline_matrix_banded | sll_m_spline_matrix_banded.F90 | Derived type for banded matrices |
| sll_m_spline_matrix_base | sll_m_spline_matrix_base.F90 | @brief Abstract class for small matrix library with basic operations: set matrix element, factorize, solve and write to output |
| sll_m_spline_matrix_dense | sll_m_spline_matrix_dense.F90 | Derived type for dense matrices |
| sll_m_working_precision | sll_m_working_precision.F90 | @brief Module to select the kind parameter. @details In future developement we consider to put here some ISO_C bindings to call selalib from python. |
| timings | mod_timings.F90 |