Procedures

ProcedureLocationProcedure TypeDescription
almost_equal helpers_m Interface

Check equality between single or double precision numbers

almost_equal_double helpers_m Function

Checks whether (a-b) / max(a,eps) within tolerance

almost_equal_single helpers_m Function

Checks whether (a-b) / max(a,eps) within tolerance

apply_abstract splitting_m Interface
apply_gauss_seidel_cpu splitting_m Interface
apply_gauss_seidel_redblack_cpu splitting_m Interface
apply_jacobi_cpu splitting_m Interface
aux_sigmoid_func immersed_trace_m Function

Auxiliary to get_dphi_shift function

binomial_coefficient_r elementary_functions_m Function

Computes binomial coefficient n over k Returns -1 for invalid input, i.e. n or k < 0 or k > n

bnd_types_to_bnd_descrs boundaries_perp_m Subroutine
btor cerfons_equilibrium_m Function
btor slab_equilibrium_m Function

magnetic field strength normalised = 1

btor dommaschk_equilibrium_m Function

Evaluates the poloidal component of the vacuum magnetic field B according to B_phi = 1/R dV/dphi

build_adj_inds immersed_m Subroutine

Computes adj_inds. The construction is common to all derived immersed types

build_boundary mesh_cart_m Interface
build_cart mesh_cart_m Interface
build_cart_slab mesh_cart_m Interface
build_connectivity mesh_cart_m Interface
build_district mesh_cart_m Interface
build_ghost_layer mesh_cart_m Interface
build_helmholtz_csr helmholtz_operator_m Subroutine

Builds Helmholtz matrix

build_inds immersed_m Subroutine

Computes inds. The construction is common to all derived immersed types

build_patch mesh_cart_m Interface
build_pinfo mesh_cart_m Interface
build_redblack mesh_cart_m Interface
build_shaped_cart_arrays mesh_cart_m Interface
bx cerfons_equilibrium_m Function
bx slab_equilibrium_m Function

magnetic field component bx = 0

bx dommaschk_equilibrium_m Function

Evaluates the radial component of the vacuum magnetic field B according to B_R = dV/dR

by cerfons_equilibrium_m Function
by slab_equilibrium_m Function

magnetic field component by = 0

by dommaschk_equilibrium_m Function

Evaluates the radial component of the vacuum magnetic field B according to B_Z = dV/dZ

calc_dphi map_factory_m Function

Calculates the difference in toroidal angle dphi between phi_base and phi_target, in the direction phi_direction. The maximum dphi is set by dphi_max, and extra turns can be added with n_turns.

cart_to_mesh_index mesh_cart_m Interface
cart_to_polar coords_polar_m Subroutine

Coordinate transformation from polar to Cartesian

check_fitting_coef dommaschk_equilibrium_m Subroutine

Check fitting_coef for consistency. The first condition (from Eq. 12 in [*]) is strict, while the second and third (from Eq. 13a) only enforce stellarator symmetry, which can be violated. Hence, only a warning is provided there.

check_privflux_regions analytic_divertor_equilibrium_m Subroutine

For simple X-point geometries, can set any points below the X-point as private flux if not in the SOL

communicate_matrixmpi mpi_mapping_auxiliaries_m Subroutine

Assembles a global CSR matrix, which was built partially on individual processes

complete_support_map auxiliaries_test_diffusion_m Subroutine

Completes the operators for the support operator method - Turns map matrices qsupp into parallel gradient matrices - Establishes parallel divergence matrices psupp

compute_bndnmn_matrix_row boundaries_perp_m Subroutine

Computes single row of Neumann boundary matrix

connection_length connection_length_m Function

It computes the connection length for the field line defined by x, y, phi (the distance from boundary to boundary). If (x, y, phi) is located inside the wall, the output is negative. If (x, y, phi) is located in the closed flux surface region, the output is the largest allowable number for PARALLAX precision. If the boundary is reached along the field line, but only in one direction, then the routine will return with the arclength to the found boundary point plus the arclength up to dphi_max in the other direction.

convert_descriptor_char_int descriptors_m Subroutine

converts character, e.g. as specified in parameter files, into actual (integer) descriptor

copy multigrid_m Subroutine

Copies the type to multigrid_copy, setting the internal pointer to mesh_finest

create_abstract solver3d_m Interface
create_abstract splitting_m Interface
create_cart_map_matrix polar_map_factory_m Subroutine

Creates matrix that maps a field from polar mesh to Cartesian mesh (only for closed field line region)

create_CERFACS solver3d_m Interface
create_closed_polygon2d_t polygon_m Function
create_copy csrmat_m Subroutine

Creates a copy of the matrix

create_equilibrium equilibrium_factory_m Subroutine

Creates the selected equilibrium specified by identifier

create_flux_surface_average_csr zonal_averages_factory_m Subroutine

Creates a matrix to compute flux surface average from Cartesian field

create_flux_surface_average_csr_viaaddvols zonal_averages_factory_m Subroutine

Constructs flux surface average matrix via adding volumes of adjacent surfaces

create_gauss_seidel_cpu splitting_m Interface
create_gauss_seidel_redblack_cpu splitting_m Interface
create_immersed immersed_factory_m Subroutine
create_jacobi_cpu splitting_m Interface
create_limiting_polygon2d_t polygon_m Function
create_map_matrix map_factory_m Interface
create_mpcsr multigrid_m Interface
create_mrcsr multigrid_m Interface
create_mrcsr_inner multigrid_m Interface
create_multigrid_solver multigrid_solver_m Interface
create_PIM solver3d_m Interface
create_polar_map_matrix polar_map_factory_m Subroutine

Creates matrix that maps a field from Cartesian to polar mesh

create_surface_average_csr zonal_averages_factory_m Subroutine

Creates a matrix to surface average from Cartesian field

csr_random_init csr_samples_m Subroutine

Fills up matrix a with random values

csr_residuum csrmat_m Subroutine

Computes the residuum ||Ax-b|| / (||b||+eps)

csr_times_vec csrmat_m Subroutine

Multiplies matrix with vector y = A*x Thread safe, i.e. can be called from within parallel region

csr_times_vec_single csrmat_m Function

Computes element row of vector y = A*x Thread safe, i.e. can be called from within parallel region

csr_transpose csrmat_m Subroutine

Transposes matrix a

csr_transpose csrmat_m Subroutine

Transposes matrix a

cxx_debug_info PAccX_m Interface
cxx_destroy PAccX_m Interface
cxx_get_device_count device_handling_m Interface
cxx_init PAccX_m Interface
cxx_set_device device_handling_m Interface
cxx_solve PAccX_m Interface
cxx_sync_device device_handling_m Interface
cxx_update PAccX_m Interface
cycle multigrid_solver_m Interface
deallocate_shaped_cart_arrays mesh_cart_m Interface
debug cerfons_equilibrium_m Subroutine
debug slab_equilibrium_m Subroutine

Prints to console information about the equilibrium

debug dommaschk_equilibrium_m Subroutine
destructor csrmat_m Subroutine

destructor, frees memory

destructor polar_grid_m Interface
destructor_CERFACS solver3d_m Interface
destructor_gauss_seidel_cpu splitting_m Interface
destructor_gauss_seidel_redblack_cpu splitting_m Interface
destructor_immersed_rho_t immersed_rho_m Subroutine

Destructor for immersed_rho_t

destructor_immersed_trace_t immersed_trace_m Subroutine

Destructor for immersed_rho_t

destructor_immersed_vessel_t immersed_vessel_m Subroutine

Destructor for immersed_vessel_t

destructor_jacobi_cpu splitting_m Interface
destructor_multigrid multigrid_m Subroutine

Frees memory associated with multigrid

destructor_multigrid_intermediate_data multigrid_m Subroutine

Frees memory associated with multigrid_intermediate_data

destructor_multigrid_solver multigrid_solver_m Subroutine

Frees memory associated with multigrid solver

destructor_PIM solver3d_m Interface
determine_interpolation_stencil mesh_cart_m Interface
diffvecs_nrm csrmat_m Function

computes norm of difference of two vectors, i.e. ||x-y|| / n

digit_sum_csr helpers_m Subroutine

Calculates the digit sum of the csr matrix mat

display immersed_trace_m Subroutine
display csrmat_m Subroutine

displays some information on matrix

display cerfons_equilibrium_m Subroutine
display slab_equilibrium_m Subroutine

Prints to console information about the equilibrium

display dommaschk_equilibrium_m Subroutine
display immersed_rho_m Subroutine
display immersed_vessel_m Subroutine
display_mesh_cart mesh_cart_m Interface
display_parameters_helmholtz_solver_factory helmholtz_solver_factory_m Subroutine

Displays parameters

display_polar_grid polar_grid_m Interface
distance_to_boundary connection_length_m Subroutine

Computes the distance to the target in each direction If the (x,y,phi) point is located outside of the vessel, the distances are defined negative

district divertor_equilibrium_m Function
district slab_equilibrium_m Function

returns in which district point (x, y, phi) is (see module descriptors_m)

district dommaschk_equilibrium_m Function
district_flux_defined divertor_equilibrium_m Function

Returns a descriptor for a given point, where outer boundary is based on limiting flux surface(s)

district_wall_defined divertor_equilibrium_m Function

Returns a descriptor for a given point, where outer boundary is based on divertor and exclusion polygons

epol divertor_equilibrium_m Subroutine
epol slab_equilibrium_m Subroutine

unit vector along poloidal (along flux surface) direction

epol dommaschk_equilibrium_m Subroutine
erad divertor_equilibrium_m Subroutine
erad slab_equilibrium_m Subroutine

unit vector along radial (across flux surface) direction

erad dommaschk_equilibrium_m Subroutine
exchange_mesh_mpi mesh_cart_m Interface
excl_3rd_quadrant_segment_circtor helpers_m Function

Excludes third quadrant in field line tracing for the circular toroidal equilibrium between phi = [pi/4,pi/2].

exclude_third_quadrant_cerfons helpers_m Function

Excludes third quadrant in field line tracing for cerfons equilibrium

exclude_third_quadrant_circular helpers_m Function

Excludes third quadrant in field line tracing for circular equilibrium

expose_data mesh_cart_m Interface
expose_data csrmat_m Subroutine

Exposes csrmat data through csrmat_data_t object

expose_data multigrid_m Interface
expose_hcsr multigrid_solver_m Interface
expose_hdiags_inv multigrid_solver_m Interface
expose_multigrid_data multigrid_solver_m Interface
extrapolate_boundary_points multigrid_m Interface
extrapolate_ghost_points boundaries_perp_m Subroutine

Extrapolates ghost points via inverse distance extrapolation

factorial elementary_functions_m Function

Factorial of integer n; wrapper around intrinsic gamma function. Output is real to increase overflow threshold. For overflow case, result = Infinity; for n < 0, result = NaN.

factory_petsc helmholtz_solver_factory_m Subroutine

Factory routine for 2D Helmholtz solver, type PETSC. Only the finest mesh of the multigrid will be used.

fci_norms auxiliaries_test_diffusion_m Subroutine

Computes L1, L2 and Lsup norm of solution Integretaion is performed with weighing of FCI flux box volumes

finalize_snapsfile snapshots_test_diffusion_m Subroutine

Closes snapsfile

find_zero root_finding_m Subroutine

Finds the zero of function f within interval [a,b] Wrapper for Fortran 77 routine in zeroin.f

findindex_2d list_operations_m Subroutine

Searches in grid lists (li, lj) if it contains point (i, j) and returns its index in lg. If index cannot be found, returns lg=0 Note: (li, lj) shall be uniqued tuple

findloc_i list_operations_m Function

Finds first index i where arr(i) = val. Returns 0 if val not found or size of array is 0

Read more…
findloc_i list_operations_m Function

Finds first index i where arr(i) = val. Returns 0 if val not found or size of array is 0

Read more…
fluxsurf_area polar_grid_m Interface
fluxsurf_vol polar_grid_m Interface
gauss_laguerre gauss_quadrature_m Subroutine

Calculates the nodes and weights to perform Gauss-Laguerre quadrature on the interval [0, infinity)

Read more…
gauss_legendre gauss_quadrature_m Subroutine

Calculates the nodes and weights to perform Gauss-Legendre quadrature on the interval [-1, 1]

Read more…
gaussian elementary_functions_m Function

Gaussian exp[-(x-x0)^2/wx^2]

generate_poincare_data diagnose_poincare Subroutine

For a given equilibrium equi, this routine generates Poincare data on the toroidal planes with angles given in phi_array.

Read more…
get_cart_i mesh_cart_m Interface
get_cart_j mesh_cart_m Interface
get_circular_dtheta_limiter params_equi_circular_m Function
get_circular_q_ref params_equi_circular_m Function
get_circular_qtype params_equi_circular_m Function
get_circular_rho_limiter params_equi_circular_m Function
get_circular_rhomax params_equi_circular_m Function
get_circular_rhomin params_equi_circular_m Function
get_circular_rhoq_ref params_equi_circular_m Function
get_circular_shear params_equi_circular_m Function
get_circular_theta_limiter params_equi_circular_m Function
get_circular_toroidal_hel_amp params_equi_circular_toroidal_m Function
get_circular_toroidal_hel_m params_equi_circular_toroidal_m Function
get_circular_toroidal_hel_n params_equi_circular_toroidal_m Function
get_circular_toroidal_hel_rho params_equi_circular_toroidal_m Function
get_circular_toroidal_hel_sigma params_equi_circular_toroidal_m Function
get_circular_toroidal_kiss_boundary_on params_equi_circular_toroidal_m Function
get_circular_toroidal_q_0 params_equi_circular_toroidal_m Function
get_circular_toroidal_q_quad_param params_equi_circular_toroidal_m Function
get_circular_toroidal_rhomax params_equi_circular_toroidal_m Function
get_circular_toroidal_rhomin params_equi_circular_toroidal_m Function
get_communicator comm_handling_m Function

Returns the MPI communicator

get_device_count device_handling_m Subroutine

Get the number of available devices for the backend specified.

get_district mesh_cart_m Interface
get_dommaschk_bndry_from_file params_equi_dommaschk_m Function
get_dommaschk_exclusion_file params_equi_dommaschk_m Function
get_dommaschk_exclusion_from_file params_equi_dommaschk_m Function
get_dommaschk_exclusion_var params_equi_dommaschk_m Function
get_dommaschk_fitting_coef params_equi_dommaschk_m Function
get_dommaschk_inner_bndry_file params_equi_dommaschk_m Function
get_dommaschk_inner_bndry_var params_equi_dommaschk_m Function
get_dommaschk_l_pol params_equi_dommaschk_m Function
get_dommaschk_m_tor_consecutive params_equi_dommaschk_m Function
get_dommaschk_num_field_periods params_equi_dommaschk_m Function
get_dommaschk_outer_bndry_file params_equi_dommaschk_m Function
get_dommaschk_outer_bndry_var params_equi_dommaschk_m Function
get_dommaschk_phi0 params_equi_dommaschk_m Function
get_dommaschk_rho_file params_equi_dommaschk_m Function
get_dommaschk_rho_from_file params_equi_dommaschk_m Function
get_dommaschk_rhomax params_equi_dommaschk_m Function
get_dommaschk_rhomin params_equi_dommaschk_m Function
get_dommaschk_x0 params_equi_dommaschk_m Function
get_dommaschk_xmax params_equi_dommaschk_m Function
get_dommaschk_xmin params_equi_dommaschk_m Function
get_dommaschk_y0 params_equi_dommaschk_m Function
get_dommaschk_ymax params_equi_dommaschk_m Function
get_dommaschk_ymin params_equi_dommaschk_m Function
get_dphi_shift immersed_trace_m Function

Finds abscissa, where sigmoid function has value charfun_at_target Used to set charfun_at_target correctly

get_drho polar_grid_m Interface
get_dtheta polar_grid_m Interface
get_equilibrium_identifier equilibrium_factory_m Function

Returns equilibrium identifier (see header) if prescribed as string

get_first_idx multigrid_m Function

Returns first_idx at lvl

get_first_idx_boundary multigrid_m Function

Returns first_idx_boundary at lvl

get_first_idx_boundary_lvl_pointer multigrid_m Function

Returns a pointer to the first_idx_boundary_lvl array

get_first_idx_inner multigrid_m Function

Returns first_idx_inner at lvl

get_first_idx_inner_lvl_pointer multigrid_m Function

Returns a pointer to the first_idx_inner_lvl array

get_first_idx_lvl_pointer multigrid_m Function

Returns a pointer to the first_idx_lvl array

get_hcsr_finest_pointer multigrid_solver_m Function

Returns pointer to Helmholtz matrix on finest level

get_immersed_identifier immersed_factory_m Function

Returns equilibrium identifier (see header) if prescribed as string

get_index_neighbor mesh_cart_m Interface
get_kiss_boundary_on params_equi_dommaschk_m Function
get_l_pol dommaschk_equilibrium_m Function
get_lvl mesh_cart_m Interface
get_lvst mesh_cart_m Interface
get_m_tor_consecutive dommaschk_equilibrium_m Function
get_mesh_pointer multigrid_m Function

Returns mesh on desired level

get_mpcsr_pointer multigrid_m Function

Returns pointer to prolongation matrix

get_mpipattern mpi_mapping_auxiliaries_m Subroutine

Divides an integer range into chunks, that can be worked on with separate MPI-processes

get_mrcsr_pointer multigrid_m Function

Returns pointer to restriction matrix

get_n_points mesh_cart_m Interface
get_n_points_black mesh_cart_m Interface
get_n_points_boundary mesh_cart_m Interface
get_n_points_ghost mesh_cart_m Interface
get_n_points_inner mesh_cart_m Interface
get_n_points_red mesh_cart_m Interface
get_nlvls multigrid_m Function

Returns nlvls

get_np multigrid_m Function

Returns the number of total mesh points at the given level

get_np_boundary multigrid_m Function

Returns the number of boundary mesh points at the given level

get_np_inner multigrid_m Function

Returns the number of inner mesh points at the given level

get_np_inner_total multigrid_m Function

Returns number of inner mesh points sumed over all levels

get_np_total multigrid_m Function

Returns number of mesh points sumed over all levels

get_nrho polar_grid_m Interface
get_ntheta polar_grid_m Interface
get_num_field_periods dommaschk_equilibrium_m Function
get_phi mesh_cart_m Interface
get_phi polar_grid_m Interface
get_rho polar_grid_m Interface
get_rhopol_max polar_grid_m Interface
get_rhopol_min polar_grid_m Interface
get_salpha_B_ref params_equi_salpha_m Function
get_salpha_dtheta_limiter params_equi_salpha_m Function
get_salpha_L_ref params_equi_salpha_m Function
get_salpha_minor_r params_equi_salpha_m Function
get_salpha_q_ref params_equi_salpha_m Function
get_salpha_rho_limiter params_equi_salpha_m Function
get_salpha_rhomax params_equi_salpha_m Function
get_salpha_rhomin params_equi_salpha_m Function
get_salpha_shear params_equi_salpha_m Function
get_salpha_theta_limiter params_equi_salpha_m Function
get_size_neighbor mesh_cart_m Interface
get_slab_boxsize params_equi_slab_m Function
get_slab_sol params_equi_slab_m Function
get_slab_yperiodic params_equi_slab_m Function
get_spacing_c mesh_cart_m Interface
get_spacing_f mesh_cart_m Interface
get_stderr screen_io_m Function

Returns the stdout in PARALLAX

get_stdout screen_io_m Function

Returns the stdout in PARALLAX

get_surrounding_indices mesh_cart_m Interface
get_theta polar_grid_m Interface
get_x mesh_cart_m Interface
get_xmin mesh_cart_m Interface
get_y mesh_cart_m Interface
get_ymin mesh_cart_m Interface
getdata_fwdbwdplane mpi_mapping_auxiliaries_m Interface

Overloading routine getdata_fwdbwdplane for integer and real data

handle_error error_handling_m Subroutine

Logs an error to stderr and stops the program. If status_code is PARALLAX_SUCCESS, this subroutine will do nothing.

Read more…
handle_error_netcdf error_handling_m Subroutine

Wrapper of handle error for calls of NetCDF functions. Checks for NetCDF errors and prints a standardized error message.

heaviside elementary_functions_m Function

Heaviside function, i.e. discontinuous step function

helmholtz_single_boundary helmholtz_operator_m Function

Computes helmholtz operator for single boundary point

helmholtz_single_ghost helmholtz_operator_m Function

Computes helmholtz operator for single boundary point

helmholtz_single_inner helmholtz_operator_m Function

Computes helmholtz operator for single inner grid point

helmholtz_solver_factory helmholtz_solver_factory_m Interface
impose_default_device_affinity device_handling_m Subroutine

Assign devices to MPI ranks in order. Only works if number of ranks is greater or equal to number of devices Device assigned to rank rr is (rr modulo total_number_of_devices).

in_vessel divertor_equilibrium_m Function

Returns whether a point (x, y, phi) lies inside the divertor vessel Not especially performant, would be better to check if the point is outside of flux limits rather than checking the full district routine

in_vessel slab_equilibrium_m Function

For slab always inside vessel

in_vessel dommaschk_equilibrium_m Function
init immersed_trace_m Subroutine
init cerfons_equilibrium_m Subroutine
init slab_equilibrium_m Subroutine

Initialises the slab equilibrium

init dommaschk_equilibrium_m Subroutine
init immersed_rho_m Subroutine
init immersed_vessel_m Subroutine
init_B_norm dommaschk_equilibrium_m Subroutine

Determine the magnetic field normalization with the un-normalized value of btor evaluated at the location of the magnetic axis. This is used to normalize all subsequent magnetic field calculations.

init_CD_CN dommaschk_equilibrium_m Subroutine

Compute and store C^D_{m,k}(R) and C^N_{m,k}(R) (Eq. 31 and 32)

init_Imn dommaschk_equilibrium_m Subroutine

Compute and store D_{m,n} and N_{m,n} (as used in Eq. 12 in [*]) via Eq. 3

init_mag_axis_loc dommaschk_equilibrium_m Subroutine

Initializes two arrays (equidistant in phi) of x- and y-coordinates of magnetic axis within the first field period calculated via field line tracing. These are used as data points for fast interpolation in 'mag_axis_loc'

init_mesh_cart mesh_cart_m Interface
init_rho_array dommaschk_equilibrium_m Subroutine

Calculates the value of rho for every surface in the given rho file. Used later in rho calculation, to interpolate between surfaces

initialize_multigrid multigrid_m Interface
initialize_multigrid_solver multigrid_solver_m Interface
initialize_np_and_idx_arrays multigrid_m Interface
initialize_polar_grid polar_grid_m Interface
initialize_snapsfile snapshots_test_diffusion_m Subroutine

Creates a snapfile and sets dimension and variables

insertion_sort list_operations_m Subroutine

Sorts integer tuple arr in ascending order according to row decr

interpol1d interpolation_m Function

Performs a 1D polynomial interpolation

interpol_coeffs interpolation_m Subroutine

computes coefficients of interpolation such that quantity at position x,y can be computed as

Read more…
intersection_lines euclidean_geo_m Subroutine

Computes intersection point of two lines going through points [pa, qa] and [pb, qb]

is_axisymmetric divertor_equilibrium_m Function
is_axisymmetric slab_equilibrium_m Function
is_axisymmetric dommaschk_equilibrium_m Function
is_boundary_point mesh_cart_m Interface
is_ghost_point mesh_cart_m Interface
is_inner_point mesh_cart_m Interface
is_master comm_handling_m Function

Returns if the current proc is the MPI master or not

is_yperiodic slab_equilibrium_m Function

Returns .true. if the equilibrium is y periodic and .false. otherwise

jacobian divertor_equilibrium_m Function
jacobian slab_equilibrium_m Function

Jacobian of geometry (J=1)

jacobian dommaschk_equilibrium_m Function
jacobian_polar coords_polar_m Function

Jacobian of polar coordinate system To compute derivatives on rho, finite difference is used N.B. currently only axisymmetric (2D), proper inclusion of toroidal phi will change this function

linspace array_generation_m Function

Returns an array of evenly spaced points over an interval from left to right. The endpoints on both sides can optionally be included. Optionally staggering can be used which effectively shifts all points by half the grid spacing to the right, creating a staggered grid. In that case the rightmost point will exceed the right boundary specified.

mag_axis_loc divertor_equilibrium_m Subroutine

Returns the coordinates of magnetic axis

mag_axis_loc slab_equilibrium_m Subroutine

Returns the coordinates of magnetic axis

mag_axis_loc dommaschk_equilibrium_m Subroutine

Returns the coordinates of magnetic axis

make_polygon divertor_equilibrium_m Subroutine

Initialises a polygon object "polygon" with points {X_points, Y_points} If local_min and local_max are given, a limiting_polygon2d_t is created, which stores these limits for later recall N.b. X_points and Y_points should be given normalised

make_polygon_from_params divertor_equilibrium_m Subroutine

Makes polygon from

multigrid_read_netcdf multigrid_m Interface
multigrid_write_netcdf multigrid_m Interface
nf90_handle_err screen_io_m Subroutine

Checks for NetCDF errors and prints a standardized error message

normal_to_boundary mesh_cart_m Interface
on_grid divertor_equilibrium_m Function

Returns whether a point (x, y, phi) lies on the computational grid

parallel_diffusion_shortley_weller auxiliaries_test_diffusion_m Subroutine

Parallel diffusion according to Shortley-Weller scheme

parallel_diffusion_supp auxiliaries_test_diffusion_m Subroutine

Parallel divergence (from staggered to full mesh)

parallel_divergence_supp auxiliaries_test_diffusion_m Subroutine

Parallel divergence (from staggered to full mesh)

parallel_gradient_supp auxiliaries_test_diffusion_m Subroutine

Parallel gradient (from full to staggered mesh)

perf_get_time_last perf_m Function

Returns time [s] spent in last profiling section

perf_print perf_m Subroutine

Prints profiling statistics to screen

perf_reset perf_m Subroutine

Resets profiling (if nm is not present, all profiling sections are reset)

perf_start perf_m Subroutine

Starts profiling

perf_stop perf_m Subroutine

Starts profiling

point_inside mesh_cart_m Interface
polar_to_cart coords_polar_m Subroutine

Coordinate transformation from Cartesian to polar

polyder polynomials_m Function

Returns the derivative of a 1D polynomial given by its coefficients array

polygon_projection divertor_equilibrium_m Subroutine

Find the x and y components of a unit vector along the nearest polygon edge The polygon boundary dV is expected to have positive (counterclockwise) orientation Can check this with signed_area (in initialisation)

polyval polynomials_m Interface
print_usage diagnose_poincare Subroutine

Prints the intended usage of the executable

progress_bar screen_io_m Subroutine

prints a progress bar for loops to screen

prolong multigrid_m Interface
psi cerfons_equilibrium_m Function
rank_list list_operations_m Interface
read_bndry_polygons dommaschk_equilibrium_m Interface
read_circtor_bnd_params params_equi_circular_toroidal_m Subroutine

Reads parameters for describing boundary segments

read_equi_params_flare_type params_equi_flare_m Subroutine

Reads the equi_params_flare_type namelist from the given file

read_flare_bnd_params params_equi_flare_m Subroutine

Reads parameters for describing boundary segments

read_flare_equi_params params_equi_flare_m Subroutine

Reads parameters for a specific equilibrium type of flare

read_flare_rho_params params_equi_flare_m Subroutine

Reads parameters for describing flux surfaces *rho)

read_netcdf csrmat_m Subroutine

Reads csr matrix from file

read_netcdf_helmholtz helmholtz_netcdfio_m Subroutine

Reads a Helmholtz problem to NETCDF file

read_netcdf_immersed immersed_m Interface
read_netcdf_mesh_cart mesh_cart_m Interface
read_netcdf_polar polar_grid_m Interface
read_params_circular params_equi_circular_m Subroutine

Reads the equi circular namelist from the given filename

read_params_circular_toroidal params_equi_circular_toroidal_m Subroutine

Reads the equi_circular_toroidal namelist from the given file

read_params_dommaschk params_equi_dommaschk_m Subroutine
read_params_immersed_rho immersed_rho_m Subroutine

Reads parameters for rho based immersed boundary

read_params_immersed_trace immersed_trace_m Subroutine

Reads parameters for trace based immersion

read_params_salpha params_equi_salpha_m Subroutine

Reads the equi salpha namelist from the given filename

read_params_slab params_equi_slab_m Subroutine

Reads the equi slab namelist from the given filename

read_rho_polygons dommaschk_equilibrium_m Interface
relative_difference reldiff_m Function
reorder mesh_cart_m Interface
residuum multigrid_solver_m Interface
restrict multigrid_m Interface
restrict_inner multigrid_m Interface
rho divertor_equilibrium_m Function

Flux surface label normalised such that rho = 0 at the magnetic axis, and rho = 1 at the separatrix

rho slab_equilibrium_m Function

flux surface label = x

rho dommaschk_equilibrium_m Function
safety_factor safety_factor_m Function

Compute safety factor q(rho)

set_device_id device_handling_m Subroutine

Given a specific backend, set the device to use

set_error_mode error_handling_m Subroutine

Sets the way PARALLAX responds to internal errors. When set to errors return, the error is logged into stderr without program termination, expecting that the error will be handled by the calling routine. When set to errors are fatal, the code will be terminated with error stop.

set_perpbnds boundaries_perp_m Subroutine

Sets non-homogeneous perpendicular boundary condition for some quantity u

set_phi mesh_cart_m Interface
set_phi_coarse multigrid_m Subroutine

Sets phi value on coarse meshes to a new value On finest mesh that is pointed to, needs to be set separately

set_stderr screen_io_m Subroutine

Redirects the stderr in PARALLAX to the given unit

set_stdout screen_io_m Subroutine

Redirects the stdout in PARALLAX to the given unit

set_tolerance fieldline_tracer_m Subroutine

Sets the DOP853 relative and absolute error tolerances for each equation solved during the field line tracing

setup_comm comm_handling_m Subroutine

Sets the communication to the given communicator. Allows to change the rank of the master proc.

shortest_dist_to_bound connection_length_m Subroutine

It computes the shortest distance to the boundary along B. If (x, y, phi) is located inside the wall, the output is negative. If (x, y, phi) is located in the closed flux surface region, the output is the largest allowable number for PARALLAX precision.

sigmoid immersed_trace_m Function

Sigmoid function going from y=0 to y=1 between x=x0-wx/2 to x=x0+wx/2

solout_none safety_factor_m Subroutine

An empty function needed in order to run the field line tracer

solve_abstract solver3d_m Interface
solve_CERFACS solver3d_m Interface
solve_PIM solver3d_m Interface
solver3d_factory solver3d_factory_m Subroutine

Factory routine for solver3d

sort_and_sum list_operations_m Subroutine

Uniques and sorts values according to j-ascending ordering Same j-values are summed up in val

sort_row list_operations_m Subroutine

Simple bubble sort for small arrays. Different from the sort_and_sum function below as it does not include the summed-up part.

sort_tuples list_operations_m Subroutine

Sorts integer tuples arr in ascending order, where pecedence of rows in sorting is prescribed

sortsum csrmat_m Subroutine

sorts and sums entries in ascending j-order for each row

step_hermite elementary_functions_m Function

Smooth step function based on Hermite interpolation exactly zero for x < wx/2 and one for x > wx/2 see https://en.wikipedia.org/wiki/Smoothstep

step_tanh elementary_functions_m Function

Smooth step function based on hyperbolic tangent

sync_device device_handling_m Subroutine

Get the number of available devices for the backend specified.

testfun_co testfunctions_m Function

Test function for polarisation coefficeint

testfun_dudrhon testfunctions_m Function

Gradient normal to flux surface label, via finite difference on analytic solution with small grid distance

testfun_helm_u testfunctions_m Function
testfun_lambda testfunctions_m Function

Test function for lambda

testfun_u testfunctions_m Function

Test_function u

testfun_xi testfunctions_m Function

Test function for xi

trace fieldline_tracer_m Subroutine

Performs integration along field line. If condition is present, performs field line tracing while condition is true

unique_tuples list_operations_m Subroutine

Removes duplicate entries from integer tuple arr

update_multigrid_solver multigrid_solver_m Interface
write_circtor_bnd_params params_equi_circular_toroidal_m Subroutine

Writes parameters for describing boundary segments

write_equi_params_flare_type params_equi_flare_m Subroutine

Writes the equi_params_flare_type namelist

write_flare_bnd_params params_equi_flare_m Subroutine

Writes parameters for describing boundary segments

write_flare_equi_params params_equi_flare_m Subroutine

Writes parameters for a specific equilibrium type of flare

write_flare_rho_params params_equi_flare_m Subroutine

Writes parameters for describing rho segments

write_netcdf csrmat_m Subroutine

writes csr matrix to file

write_netcdf_helmholtz helmholtz_netcdfio_m Subroutine

Writes a Helmholtz problem to NETCDF file

write_netcdf_immersed immersed_m Interface
write_netcdf_mesh_cart mesh_cart_m Interface
write_netcdf_polar polar_grid_m Interface
write_params_circular params_equi_circular_m Subroutine

Writes the equi circular namelist to the given filename

write_params_circular_toroidal params_equi_circular_toroidal_m Subroutine

Writes the equi_circular_toroidal namelist into the given filename

write_params_dommaschk params_equi_dommaschk_m Subroutine
write_params_salpha params_equi_salpha_m Subroutine

Writes the equi salpha namelist to the given filename

write_params_slab params_equi_slab_m Subroutine

Writes the equi slab namelist to the given filename

write_poincare diagnose_poincare Subroutine

Writes generated poincare data to a NetCDF file

write_to_snapsfile snapshots_test_diffusion_m Subroutine

Writes variables to snapsfile

write_vtk_mesh vis_vtk3d_m Subroutine

Writes mesh to vtk files Based on VTKFortran library (https://github.com/szaghi/VTKFortran/) For description of cell types and their definition of connectivity see https://kitware.github.io/vtk-examples/site/VTKBook/05Chapter5/ here used (quad, bi-quadrtatic quad, hexahedron, quadratic hexahedron) For their VTK descriptor see https://vtk.org/doc/nightly/html/vtkCellType_8h_source.html

zeroin zeroin.f Function
call~~graph~~CallGraph interface~almost_equal almost_equal proc~almost_equal_double almost_equal_double interface~almost_equal->proc~almost_equal_double proc~almost_equal_single almost_equal_single interface~almost_equal->proc~almost_equal_single interface~apply_abstract apply_abstract interface~apply_gauss_seidel_cpu splitting_gauss_seidel_cpu_t%apply_gauss_seidel_cpu interface~apply_gauss_seidel_redblack_cpu splitting_gauss_seidel_redblack_cpu_t%apply_gauss_seidel_redblack_cpu interface~apply_jacobi_cpu splitting_jacobi_cpu_t%apply_jacobi_cpu interface~build_boundary mesh_cart_t%build_boundary interface~build_cart mesh_cart_t%build_cart interface~build_cart_slab mesh_cart_t%build_cart_slab interface~build_connectivity mesh_cart_t%build_connectivity interface~build_district mesh_cart_t%build_district interface~build_ghost_layer mesh_cart_t%build_ghost_layer interface~build_patch mesh_cart_t%build_patch interface~build_pinfo mesh_cart_t%build_pinfo interface~build_redblack mesh_cart_t%build_redblack interface~build_shaped_cart_arrays mesh_cart_t%build_shaped_cart_arrays interface~cart_to_mesh_index mesh_cart_t%cart_to_mesh_index interface~create_abstract create_abstract interface~create_abstract~2 create_abstract interface~create_cerfacs solver3d_CERFACS_t%create_CERFACS interface~create_gauss_seidel_cpu splitting_gauss_seidel_cpu_t%create_gauss_seidel_cpu interface~create_gauss_seidel_redblack_cpu splitting_gauss_seidel_redblack_cpu_t%create_gauss_seidel_redblack_cpu interface~create_jacobi_cpu splitting_jacobi_cpu_t%create_jacobi_cpu interface~create_map_matrix create_map_matrix interface~create_mpcsr multigrid_t%create_mpcsr interface~create_mrcsr multigrid_t%create_mrcsr interface~create_mrcsr_inner multigrid_t%create_mrcsr_inner interface~create_multigrid_solver multigrid_solver_t%create_multigrid_solver interface~create_pim solver3d_PIM_t%create_PIM interface~cxx_debug_info cxx_debug_info interface~cxx_destroy cxx_destroy interface~cxx_get_device_count cxx_get_device_count interface~cxx_init cxx_init interface~cxx_set_device cxx_set_device interface~cxx_solve cxx_solve interface~cxx_sync_device cxx_sync_device interface~cxx_update cxx_update interface~cycle multigrid_solver_t%cycle interface~deallocate_shaped_cart_arrays mesh_cart_t%deallocate_shaped_cart_arrays interface~destructor destructor interface~destructor_cerfacs destructor_CERFACS interface~destructor_gauss_seidel_cpu destructor_gauss_seidel_cpu interface~destructor_gauss_seidel_redblack_cpu destructor_gauss_seidel_redblack_cpu interface~destructor_jacobi_cpu destructor_jacobi_cpu interface~destructor_pim destructor_PIM interface~determine_interpolation_stencil mesh_cart_t%determine_interpolation_stencil interface~display_mesh_cart mesh_cart_t%display_mesh_cart interface~display_polar_grid polar_grid_t%display_polar_grid interface~exchange_mesh_mpi mesh_cart_t%exchange_mesh_mpi interface~expose_data mesh_cart_t%expose_data interface~expose_data~2 multigrid_t%expose_data interface~expose_hcsr multigrid_solver_t%expose_hcsr interface~expose_hdiags_inv multigrid_solver_t%expose_hdiags_inv interface~expose_multigrid_data multigrid_solver_t%expose_multigrid_data interface~extrapolate_boundary_points multigrid_t%extrapolate_boundary_points interface~fluxsurf_area polar_grid_t%fluxsurf_area interface~fluxsurf_vol polar_grid_t%fluxsurf_vol interface~get_cart_i mesh_cart_t%get_cart_i interface~get_cart_j mesh_cart_t%get_cart_j interface~get_district mesh_cart_t%get_district interface~get_drho polar_grid_t%get_drho interface~get_dtheta polar_grid_t%get_dtheta interface~get_index_neighbor mesh_cart_t%get_index_neighbor interface~get_lvl mesh_cart_t%get_lvl interface~get_lvst mesh_cart_t%get_lvst interface~get_n_points mesh_cart_t%get_n_points interface~get_n_points_black mesh_cart_t%get_n_points_black interface~get_n_points_boundary mesh_cart_t%get_n_points_boundary interface~get_n_points_ghost mesh_cart_t%get_n_points_ghost interface~get_n_points_inner mesh_cart_t%get_n_points_inner interface~get_n_points_red mesh_cart_t%get_n_points_red interface~get_nrho polar_grid_t%get_nrho interface~get_ntheta polar_grid_t%get_ntheta interface~get_phi mesh_cart_t%get_phi interface~get_phi~2 polar_grid_t%get_phi interface~get_rho polar_grid_t%get_rho interface~get_rhopol_max polar_grid_t%get_rhopol_max interface~get_rhopol_min polar_grid_t%get_rhopol_min interface~get_size_neighbor mesh_cart_t%get_size_neighbor interface~get_spacing_c mesh_cart_t%get_spacing_c interface~get_spacing_f mesh_cart_t%get_spacing_f interface~get_surrounding_indices mesh_cart_t%get_surrounding_indices interface~get_theta polar_grid_t%get_theta interface~get_x mesh_cart_t%get_x interface~get_xmin mesh_cart_t%get_xmin interface~get_y mesh_cart_t%get_y interface~get_ymin mesh_cart_t%get_ymin interface~getdata_fwdbwdplane getdata_fwdbwdplane interface~helmholtz_solver_factory helmholtz_solver_factory proc~factory_petsc factory_petsc interface~helmholtz_solver_factory->proc~factory_petsc interface~init_mesh_cart mesh_cart_t%init_mesh_cart interface~initialize_multigrid multigrid_t%initialize_multigrid interface~initialize_multigrid_solver multigrid_solver_t%initialize_multigrid_solver interface~initialize_np_and_idx_arrays multigrid_t%initialize_np_and_idx_arrays interface~initialize_polar_grid polar_grid_t%initialize_polar_grid interface~is_boundary_point mesh_cart_t%is_boundary_point interface~is_ghost_point mesh_cart_t%is_ghost_point interface~is_inner_point mesh_cart_t%is_inner_point interface~multigrid_read_netcdf multigrid_t%multigrid_read_netcdf interface~multigrid_write_netcdf multigrid_t%multigrid_write_netcdf interface~normal_to_boundary mesh_cart_t%normal_to_boundary interface~point_inside mesh_cart_t%point_inside interface~polyval polyval interface~prolong multigrid_t%prolong interface~rank_list rank_list interface~read_bndry_polygons dommaschk_t%read_bndry_polygons interface~read_netcdf_immersed immersed_t%read_netcdf_immersed interface~read_netcdf_mesh_cart mesh_cart_t%read_netcdf_mesh_cart interface~read_netcdf_polar polar_grid_t%read_netcdf_polar interface~read_rho_polygons dommaschk_t%read_rho_polygons interface~reorder mesh_cart_t%reorder interface~residuum multigrid_solver_t%residuum interface~restrict multigrid_t%restrict interface~restrict_inner multigrid_t%restrict_inner interface~set_phi mesh_cart_t%set_phi interface~solve_abstract solve_abstract interface~solve_cerfacs solver3d_CERFACS_t%solve_CERFACS interface~solve_pim solver3d_PIM_t%solve_PIM interface~update_multigrid_solver multigrid_solver_t%update_multigrid_solver interface~write_netcdf_immersed immersed_t%write_netcdf_immersed interface~write_netcdf_mesh_cart mesh_cart_t%write_netcdf_mesh_cart interface~write_netcdf_polar polar_grid_t%write_netcdf_polar proc~get_stdout get_stdout proc~almost_equal_double->proc~get_stdout proc~almost_equal_single->proc~get_stdout proc~aux_sigmoid_func aux_sigmoid_func_t%aux_sigmoid_func proc~step_hermite step_hermite proc~aux_sigmoid_func->proc~step_hermite proc~binomial_coefficient_r binomial_coefficient_r proc~bnd_types_to_bnd_descrs bnd_types_to_bnd_descrs proc~bnd_types_to_bnd_descrs->interface~get_district proc~bnd_types_to_bnd_descrs->interface~get_n_points_boundary proc~handle_error handle_error proc~bnd_types_to_bnd_descrs->proc~handle_error proc~btor~2 cerfons_t%btor proc~psi cerfons_t%psi proc~btor~2->proc~psi proc~btor~4 slab_t%btor proc~btor~7 dommaschk_t%btor proc~build_adj_inds immersed_t%build_adj_inds proc~build_adj_inds->interface~get_index_neighbor proc~build_adj_inds->interface~get_n_points proc~unique_tuples unique_tuples proc~build_adj_inds->proc~unique_tuples proc~build_helmholtz_csr build_helmholtz_csr proc~build_helmholtz_csr->interface~get_index_neighbor proc~build_helmholtz_csr->interface~get_n_points proc~build_helmholtz_csr->interface~get_n_points_boundary proc~build_helmholtz_csr->interface~get_n_points_ghost proc~build_helmholtz_csr->interface~get_n_points_inner proc~build_helmholtz_csr->interface~get_spacing_c proc~build_helmholtz_csr->interface~rank_list proc~compute_bndnmn_matrix_row compute_bndnmn_matrix_row proc~build_helmholtz_csr->proc~compute_bndnmn_matrix_row proc~build_helmholtz_csr->proc~handle_error proc~build_inds immersed_t%build_inds proc~build_inds->interface~get_n_points proc~bx~2 cerfons_t%bx proc~bx~2->proc~step_hermite proc~bx~4 slab_t%bx proc~bx~7 dommaschk_t%bx proc~by~2 cerfons_t%by proc~by~2->proc~step_hermite proc~by~4 slab_t%by proc~by~7 dommaschk_t%by proc~calc_dphi calc_dphi proc~cart_to_polar cart_to_polar rho rho proc~cart_to_polar->rho proc~check_fitting_coef dommaschk_t%check_fitting_coef proc~check_fitting_coef->proc~handle_error proc~check_privflux_regions analytic_divertor_equilibrium_t%check_privflux_regions proc~communicate_matrixmpi communicate_matrixmpi proc~get_stderr get_stderr proc~communicate_matrixmpi->proc~get_stderr mpi_allgather mpi_allgather proc~communicate_matrixmpi->mpi_allgather mpi_allgatherv mpi_allgatherv proc~communicate_matrixmpi->mpi_allgatherv mpi_allreduce mpi_allreduce proc~communicate_matrixmpi->mpi_allreduce mpi_comm_rank mpi_comm_rank proc~communicate_matrixmpi->mpi_comm_rank mpi_comm_size mpi_comm_size proc~communicate_matrixmpi->mpi_comm_size mpi_exscan mpi_exscan proc~communicate_matrixmpi->mpi_exscan proc~complete_support_map complete_support_map proc~complete_support_map->interface~exchange_mesh_mpi proc~complete_support_map->interface~get_n_points proc~complete_support_map->interface~get_phi proc~complete_support_map->interface~get_spacing_f proc~complete_support_map->interface~get_x proc~complete_support_map->interface~get_y proc~complete_support_map->interface~getdata_fwdbwdplane proc~csr_transpose~2 csr_transpose proc~complete_support_map->proc~csr_transpose~2 proc~get_communicator get_communicator proc~complete_support_map->proc~get_communicator proc~trace trace proc~complete_support_map->proc~trace btor btor proc~complete_support_map->btor proc~compute_bndnmn_matrix_row->interface~get_index_neighbor proc~compute_bndnmn_matrix_row->interface~get_spacing_c proc~compute_bndnmn_matrix_row->interface~normal_to_boundary proc~compute_bndnmn_matrix_row->proc~get_stderr proc~connection_length connection_length proc~distance_to_boundary distance_to_boundary proc~connection_length->proc~distance_to_boundary proc~convert_descriptor_char_int convert_descriptor_char_int proc~convert_descriptor_char_int->proc~get_stderr proc~copy multigrid_t%copy proc~create_cart_map_matrix create_cart_map_matrix proc~create_cart_map_matrix->interface~get_district proc~create_cart_map_matrix->interface~get_drho proc~create_cart_map_matrix->interface~get_dtheta proc~create_cart_map_matrix->interface~get_n_points proc~create_cart_map_matrix->interface~get_nrho proc~create_cart_map_matrix->interface~get_ntheta proc~create_cart_map_matrix->interface~get_phi proc~create_cart_map_matrix->interface~get_rhopol_min proc~create_cart_map_matrix->interface~get_x proc~create_cart_map_matrix->interface~get_y proc~create_cart_map_matrix->proc~cart_to_polar proc~create_cart_map_matrix->proc~get_stdout proc~interpol_coeffs interpol_coeffs proc~create_cart_map_matrix->proc~interpol_coeffs proc~is_master is_master proc~create_cart_map_matrix->proc~is_master proc~sortsum csrmat_t%sortsum proc~create_cart_map_matrix->proc~sortsum proc~create_closed_polygon2d_t create_closed_polygon2d_t none~create_polygon2d polygon2d_t%create_polygon2d proc~create_closed_polygon2d_t->none~create_polygon2d proc~create_copy csrmat_t%create_copy proc~create_equilibrium create_equilibrium proc~create_equilibrium->proc~handle_error proc~create_equilibrium->proc~is_master debug debug proc~create_equilibrium->debug display display proc~create_equilibrium->display init init proc~create_equilibrium->init proc~create_flux_surface_average_csr create_flux_surface_average_csr proc~create_flux_surface_average_csr->interface~get_drho proc~create_flux_surface_average_csr->interface~get_dtheta proc~create_flux_surface_average_csr->interface~get_nrho proc~create_flux_surface_average_csr->interface~get_ntheta proc~create_flux_surface_average_csr->interface~get_phi~2 proc~create_flux_surface_average_csr->interface~get_rho proc~create_flux_surface_average_csr->interface~get_theta proc~create_flux_surface_average_csr->proc~get_stdout proc~create_flux_surface_average_csr->proc~is_master proc~jacobian_polar jacobian_polar proc~create_flux_surface_average_csr->proc~jacobian_polar proc~polar_to_cart polar_to_cart proc~create_flux_surface_average_csr->proc~polar_to_cart proc~sort_and_sum sort_and_sum proc~create_flux_surface_average_csr->proc~sort_and_sum jacobian jacobian proc~create_flux_surface_average_csr->jacobian proc~create_flux_surface_average_csr_viaaddvols create_flux_surface_average_csr_viaaddvols proc~create_flux_surface_average_csr_viaaddvols->interface~get_drho proc~create_flux_surface_average_csr_viaaddvols->interface~get_n_points proc~create_flux_surface_average_csr_viaaddvols->interface~get_nrho proc~create_flux_surface_average_csr_viaaddvols->interface~get_phi~2 proc~create_flux_surface_average_csr_viaaddvols->interface~get_rho proc~create_flux_surface_average_csr_viaaddvols->interface~get_x proc~create_flux_surface_average_csr_viaaddvols->interface~get_y proc~create_flux_surface_average_csr_viaaddvols->proc~get_stdout proc~create_flux_surface_average_csr_viaaddvols->proc~is_master proc~create_flux_surface_average_csr_viaaddvols->jacobian proc~create_flux_surface_average_csr_viaaddvols->rho proc~create_immersed create_immersed proc~create_immersed->proc~handle_error proc~create_immersed->init proc~create_limiting_polygon2d_t create_limiting_polygon2d_t proc~create_limiting_polygon2d_t->none~create_polygon2d proc~create_polar_map_matrix create_polar_map_matrix proc~create_polar_map_matrix->interface~get_n_points proc~create_polar_map_matrix->interface~get_nrho proc~create_polar_map_matrix->interface~get_ntheta proc~create_polar_map_matrix->interface~get_phi~2 proc~create_polar_map_matrix->interface~get_rho proc~create_polar_map_matrix->interface~get_spacing_f proc~create_polar_map_matrix->interface~get_surrounding_indices proc~create_polar_map_matrix->interface~get_theta proc~create_polar_map_matrix->interface~get_x proc~create_polar_map_matrix->interface~get_y proc~create_polar_map_matrix->proc~get_stdout proc~create_polar_map_matrix->proc~interpol_coeffs proc~create_polar_map_matrix->proc~is_master proc~create_polar_map_matrix->proc~polar_to_cart proc~create_polar_map_matrix->proc~sortsum proc~create_surface_average_csr create_surface_average_csr proc~create_surface_average_csr->interface~get_drho proc~create_surface_average_csr->interface~get_dtheta proc~create_surface_average_csr->interface~get_nrho proc~create_surface_average_csr->interface~get_ntheta proc~create_surface_average_csr->interface~get_phi~2 proc~create_surface_average_csr->interface~get_rho proc~create_surface_average_csr->interface~get_theta proc~create_surface_average_csr->proc~get_stdout proc~create_surface_average_csr->proc~is_master proc~create_surface_average_csr->proc~jacobian_polar proc~create_surface_average_csr->proc~polar_to_cart proc~create_surface_average_csr->proc~sort_and_sum proc~create_surface_average_csr->jacobian proc~csr_random_init csr_random_init proc~csr_residuum csr_residuum proc~csr_times_vec csr_times_vec proc~csr_times_vec_single csr_times_vec_single proc~csr_transpose csr_transpose proc~csr_transpose->proc~handle_error mkl_dcsrcoo mkl_dcsrcoo proc~csr_transpose->mkl_dcsrcoo proc~sort_row sort_row proc~csr_transpose~2->proc~sort_row proc~debug~2 cerfons_t%debug proc~debug~2->proc~get_stdout none~polygon_string~3 closed_polygon2d_t%polygon_string proc~debug~2->none~polygon_string~3 proc~debug~4 slab_t%debug proc~debug~4->proc~get_stdout proc~debug~7 dommaschk_t%debug proc~debug~7->proc~get_stdout proc~destructor destructor proc~destructor_immersed_rho_t destructor_immersed_rho_t proc~destructor_immersed_trace_t destructor_immersed_trace_t proc~destructor_immersed_vessel_t destructor_immersed_vessel_t proc~destructor_multigrid destructor_multigrid proc~destructor_multigrid_intermediate_data destructor_multigrid_intermediate_data proc~destructor_multigrid_solver destructor_multigrid_solver proc~diffvecs_nrm diffvecs_nrm proc~digit_sum_csr digit_sum_csr proc~display immersed_trace_t%display proc~display->proc~get_stdout proc~display->proc~handle_error proc~display_parameters_helmholtz_solver_factory parameters_helmholtz_solver_factory%display_parameters_helmholtz_solver_factory proc~display_parameters_helmholtz_solver_factory->proc~get_stdout proc~display_parameters_helmholtz_solver_factory->proc~is_master proc~display~10 immersed_rho_t%display proc~display~10->proc~get_stdout proc~display~10->proc~handle_error proc~display~13 immersed_vessel_t%display proc~display~3 csrmat_t%display proc~display~3->proc~get_stdout proc~display~4 cerfons_t%display proc~display~4->proc~get_stdout proc~display~4->none~polygon_string~3 proc~display~6 slab_t%display proc~display~6->proc~get_stdout proc~display~9 dommaschk_t%display proc~display~9->proc~get_stdout proc~distance_to_boundary->proc~handle_error proc~distance_to_boundary->proc~trace in_vessel in_vessel proc~distance_to_boundary->in_vessel proc~district divertor_equilibrium_t%district proc~district_flux_defined divertor_equilibrium_t%district_flux_defined proc~district->proc~district_flux_defined proc~district_wall_defined divertor_equilibrium_t%district_wall_defined proc~district->proc~district_wall_defined proc~district->proc~handle_error proc~district_flux_defined->proc~handle_error proc~on_grid divertor_equilibrium_t%on_grid proc~district_flux_defined->proc~on_grid proc~rho divertor_equilibrium_t%rho proc~district_flux_defined->proc~rho check_privflux_regions check_privflux_regions proc~district_flux_defined->check_privflux_regions proc~district_wall_defined->proc~rho proc~district_wall_defined->check_privflux_regions none~pt_inside closed_polygon2d_t%pt_inside proc~district_wall_defined->none~pt_inside proc~district~4 slab_t%district proc~district~6 dommaschk_t%district proc~district~6->none~pt_inside proc~epol divertor_equilibrium_t%epol bx bx proc~epol->bx by by proc~epol->by none~bpol equilibrium_t%bpol proc~epol->none~bpol proc~epol~4 slab_t%epol proc~epol~6 dommaschk_t%epol proc~epol~6->proc~bx~7 proc~epol~6->proc~by~7 proc~erad divertor_equilibrium_t%erad proc~erad->bx proc~erad->by proc~erad->none~bpol proc~erad~4 slab_t%erad proc~erad~6 dommaschk_t%erad proc~erad~6->proc~bx~7 proc~erad~6->proc~by~7 proc~excl_3rd_quadrant_segment_circtor excl_3rd_quadrant_segment_circtor proc~exclude_third_quadrant_cerfons exclude_third_quadrant_cerfons proc~exclude_third_quadrant_circular exclude_third_quadrant_circular proc~expose_data csrmat_t%expose_data proc~extrapolate_ghost_points extrapolate_ghost_points proc~extrapolate_ghost_points->interface~get_index_neighbor proc~extrapolate_ghost_points->interface~get_n_points_ghost proc~extrapolate_ghost_points->interface~get_size_neighbor proc~extrapolate_ghost_points->interface~is_ghost_point proc~factorial factorial proc~factory_petsc->proc~get_stdout proc~factory_petsc->proc~is_master create create proc~factory_petsc->create proc~factory_petsc->init proc~fci_norms fci_norms proc~fci_norms->interface~get_n_points proc~fci_norms->mpi_allreduce proc~finalize_snapsfile finalize_snapsfile proc~handle_error_netcdf handle_error_netcdf proc~finalize_snapsfile->proc~handle_error_netcdf nf90_close nf90_close proc~finalize_snapsfile->nf90_close proc~find_zero find_zero func func proc~find_zero->func proc~findindex_2d findindex_2d proc~findindex_2d->proc~get_stderr proc~findloc_i findloc_i proc~findloc_i~2 findloc_i proc~gauss_laguerre gauss_laguerre proc~gauss_legendre gauss_legendre proc~gaussian gaussian proc~generate_poincare_data generate_poincare_data proc~generate_poincare_data->proc~get_stdout proc~generate_poincare_data->proc~handle_error proc~generate_poincare_data->proc~trace proc~write_poincare write_poincare proc~generate_poincare_data->proc~write_poincare mpi_wtime mpi_wtime proc~generate_poincare_data->mpi_wtime proc~get_circular_dtheta_limiter get_circular_dtheta_limiter proc~get_circular_q_ref get_circular_q_ref proc~get_circular_qtype get_circular_qtype proc~get_circular_rho_limiter get_circular_rho_limiter proc~get_circular_rhomax get_circular_rhomax proc~get_circular_rhomin get_circular_rhomin proc~get_circular_rhoq_ref get_circular_rhoq_ref proc~get_circular_shear get_circular_shear proc~get_circular_theta_limiter get_circular_theta_limiter proc~get_circular_toroidal_hel_amp get_circular_toroidal_hel_amp proc~get_circular_toroidal_hel_m get_circular_toroidal_hel_m proc~get_circular_toroidal_hel_n get_circular_toroidal_hel_n proc~get_circular_toroidal_hel_rho get_circular_toroidal_hel_rho proc~get_circular_toroidal_hel_sigma get_circular_toroidal_hel_sigma proc~get_circular_toroidal_kiss_boundary_on get_circular_toroidal_kiss_boundary_on proc~get_circular_toroidal_q_0 get_circular_toroidal_q_0 proc~get_circular_toroidal_q_quad_param get_circular_toroidal_q_quad_param proc~get_circular_toroidal_rhomax get_circular_toroidal_rhomax proc~get_circular_toroidal_rhomin get_circular_toroidal_rhomin proc~get_device_count get_device_count proc~get_device_count->interface~cxx_get_device_count proc~get_device_count->proc~handle_error proc~get_dommaschk_bndry_from_file get_dommaschk_bndry_from_file proc~get_dommaschk_exclusion_file get_dommaschk_exclusion_file proc~get_dommaschk_exclusion_from_file get_dommaschk_exclusion_from_file proc~get_dommaschk_exclusion_var get_dommaschk_exclusion_var proc~get_dommaschk_fitting_coef get_dommaschk_fitting_coef proc~get_dommaschk_inner_bndry_file get_dommaschk_inner_bndry_file proc~get_dommaschk_inner_bndry_var get_dommaschk_inner_bndry_var proc~get_dommaschk_l_pol get_dommaschk_l_pol proc~get_dommaschk_m_tor_consecutive get_dommaschk_m_tor_consecutive proc~get_dommaschk_num_field_periods get_dommaschk_num_field_periods proc~get_dommaschk_outer_bndry_file get_dommaschk_outer_bndry_file proc~get_dommaschk_outer_bndry_var get_dommaschk_outer_bndry_var proc~get_dommaschk_phi0 get_dommaschk_phi0 proc~get_dommaschk_rho_file get_dommaschk_rho_file proc~get_dommaschk_rho_from_file get_dommaschk_rho_from_file proc~get_dommaschk_rhomax get_dommaschk_rhomax proc~get_dommaschk_rhomin get_dommaschk_rhomin proc~get_dommaschk_x0 get_dommaschk_x0 proc~get_dommaschk_xmax get_dommaschk_xmax proc~get_dommaschk_xmin get_dommaschk_xmin proc~get_dommaschk_y0 get_dommaschk_y0 proc~get_dommaschk_ymax get_dommaschk_ymax proc~get_dommaschk_ymin get_dommaschk_ymin proc~get_dphi_shift get_dphi_shift proc~get_dphi_shift->proc~find_zero proc~get_dphi_shift->proc~handle_error proc~get_equilibrium_identifier get_equilibrium_identifier proc~get_equilibrium_identifier->proc~handle_error proc~get_first_idx multigrid_t%get_first_idx proc~get_first_idx_boundary multigrid_t%get_first_idx_boundary proc~get_first_idx_boundary_lvl_pointer multigrid_t%get_first_idx_boundary_lvl_pointer proc~get_first_idx_inner multigrid_t%get_first_idx_inner proc~get_first_idx_inner_lvl_pointer multigrid_t%get_first_idx_inner_lvl_pointer proc~get_first_idx_lvl_pointer multigrid_t%get_first_idx_lvl_pointer proc~get_hcsr_finest_pointer multigrid_solver_t%get_hcsr_finest_pointer proc~get_immersed_identifier get_immersed_identifier proc~get_immersed_identifier->proc~handle_error proc~get_kiss_boundary_on get_kiss_boundary_on proc~get_l_pol dommaschk_t%get_l_pol proc~get_m_tor_consecutive dommaschk_t%get_m_tor_consecutive proc~get_mesh_pointer multigrid_t%get_mesh_pointer proc~get_mesh_pointer->proc~get_stderr proc~get_mpcsr_pointer multigrid_t%get_mpcsr_pointer proc~get_mpipattern get_mpipattern proc~get_mpipattern->mpi_comm_rank proc~get_mpipattern->mpi_comm_size proc~get_mrcsr_pointer multigrid_t%get_mrcsr_pointer proc~get_nlvls multigrid_t%get_nlvls proc~get_np multigrid_t%get_np proc~get_np_boundary multigrid_t%get_np_boundary proc~get_np_inner multigrid_t%get_np_inner proc~get_np_inner_total multigrid_t%get_np_inner_total proc~get_np_inner_total->proc~get_first_idx_inner proc~get_np_total multigrid_t%get_np_total proc~get_np_total->proc~get_first_idx proc~get_num_field_periods dommaschk_t%get_num_field_periods proc~get_salpha_b_ref get_salpha_B_ref proc~get_salpha_dtheta_limiter get_salpha_dtheta_limiter proc~get_salpha_l_ref get_salpha_L_ref proc~get_salpha_minor_r get_salpha_minor_r proc~get_salpha_q_ref get_salpha_q_ref proc~get_salpha_rho_limiter get_salpha_rho_limiter proc~get_salpha_rhomax get_salpha_rhomax proc~get_salpha_rhomin get_salpha_rhomin proc~get_salpha_shear get_salpha_shear proc~get_salpha_theta_limiter get_salpha_theta_limiter proc~get_slab_boxsize get_slab_boxsize proc~get_slab_sol get_slab_sol proc~get_slab_yperiodic get_slab_yperiodic none~handle_error error_handler_t%handle_error proc~handle_error->none~handle_error none~handle_error_netcdf error_handler_t%handle_error_netcdf proc~handle_error_netcdf->none~handle_error_netcdf proc~heaviside heaviside proc~helmholtz_single_boundary helmholtz_single_boundary proc~helmholtz_single_boundary->proc~compute_bndnmn_matrix_row proc~helmholtz_single_boundary->proc~get_stderr proc~helmholtz_single_ghost helmholtz_single_ghost proc~helmholtz_single_inner helmholtz_single_inner proc~impose_default_device_affinity impose_default_device_affinity proc~impose_default_device_affinity->proc~get_communicator proc~impose_default_device_affinity->proc~get_device_count proc~impose_default_device_affinity->proc~handle_error proc~set_device_id set_device_id proc~impose_default_device_affinity->proc~set_device_id proc~impose_default_device_affinity->mpi_comm_rank proc~in_vessel divertor_equilibrium_t%in_vessel proc~in_vessel->proc~district proc~in_vessel->none~pt_inside proc~in_vessel~4 slab_t%in_vessel proc~in_vessel~6 dommaschk_t%in_vessel proc~in_vessel~6->proc~district~6 proc~intersection_lines intersection_lines proc~in_vessel~6->proc~intersection_lines proc~mag_axis_loc~6 dommaschk_t%mag_axis_loc proc~in_vessel~6->proc~mag_axis_loc~6 none~polygon_at_tor_xsection kisslinger_t%polygon_at_tor_xsection proc~in_vessel~6->none~polygon_at_tor_xsection proc~init immersed_trace_t%init proc~init->interface~get_n_points proc~init->interface~get_phi proc~init->interface~get_x proc~init->interface~get_y proc~init->proc~build_adj_inds proc~init->proc~build_inds proc~init->proc~distance_to_boundary proc~init->proc~get_dphi_shift proc~init->proc~handle_error proc~read_params_immersed_trace immersed_trace_t%read_params_immersed_trace proc~init->proc~read_params_immersed_trace proc~sigmoid sigmoid proc~init->proc~sigmoid proc~init->in_vessel proc~init_b_norm dommaschk_t%init_B_norm proc~init_b_norm->proc~btor~7 proc~init_cd_cn dommaschk_t%init_CD_CN proc~init_cd_cn->proc~factorial proc~init_imn dommaschk_t%init_Imn proc~init_imn->proc~factorial proc~init_imn->proc~handle_error proc~init_mag_axis_loc dommaschk_t%init_mag_axis_loc proc~init_mag_axis_loc->proc~handle_error proc~init_mag_axis_loc->proc~trace proc~init_rho_array dommaschk_t%init_rho_array none~signed_area polygon2d_t%signed_area proc~init_rho_array->none~signed_area proc~initialize_snapsfile initialize_snapsfile proc~initialize_snapsfile->interface~get_n_points proc~initialize_snapsfile->proc~handle_error_netcdf nf90_create nf90_create proc~initialize_snapsfile->nf90_create nf90_def_dim nf90_def_dim proc~initialize_snapsfile->nf90_def_dim nf90_def_var nf90_def_var proc~initialize_snapsfile->nf90_def_var nf90_enddef nf90_enddef proc~initialize_snapsfile->nf90_enddef proc~init~11 immersed_vessel_t%init proc~init~11->interface~get_n_points proc~init~11->interface~get_phi proc~init~11->interface~get_x proc~init~11->interface~get_y proc~init~11->proc~build_adj_inds proc~init~11->proc~build_inds proc~init~11->in_vessel proc~init~3 cerfons_t%init proc~init~3->proc~get_stderr proc~make_polygon_from_params divertor_equilibrium_t%make_polygon_from_params proc~init~3->proc~make_polygon_from_params proc~init~5 slab_t%init proc~init~5->proc~get_slab_boxsize proc~init~5->proc~get_slab_sol proc~init~5->proc~get_slab_yperiodic proc~read_params_slab read_params_slab proc~init~5->proc~read_params_slab proc~init~8 dommaschk_t%init proc~init~8->interface~read_bndry_polygons proc~init~8->interface~read_rho_polygons proc~init~8->proc~check_fitting_coef proc~init~8->proc~get_dommaschk_bndry_from_file proc~init~8->proc~get_dommaschk_exclusion_file proc~init~8->proc~get_dommaschk_exclusion_from_file proc~init~8->proc~get_dommaschk_exclusion_var proc~init~8->proc~get_dommaschk_fitting_coef proc~init~8->proc~get_dommaschk_inner_bndry_file proc~init~8->proc~get_dommaschk_inner_bndry_var proc~init~8->proc~get_dommaschk_l_pol proc~init~8->proc~get_dommaschk_m_tor_consecutive proc~init~8->proc~get_dommaschk_num_field_periods proc~init~8->proc~get_dommaschk_outer_bndry_file proc~init~8->proc~get_dommaschk_outer_bndry_var proc~init~8->proc~get_dommaschk_phi0 proc~init~8->proc~get_dommaschk_rho_file proc~init~8->proc~get_dommaschk_rho_from_file proc~init~8->proc~get_dommaschk_rhomax proc~init~8->proc~get_dommaschk_rhomin proc~init~8->proc~get_dommaschk_x0 proc~init~8->proc~get_dommaschk_xmax proc~init~8->proc~get_dommaschk_xmin proc~init~8->proc~get_dommaschk_y0 proc~init~8->proc~get_dommaschk_ymax proc~init~8->proc~get_dommaschk_ymin proc~init~8->proc~get_kiss_boundary_on proc~init~8->proc~init_b_norm proc~init~8->proc~init_cd_cn proc~init~8->proc~init_imn proc~init~8->proc~init_mag_axis_loc proc~init~8->proc~init_rho_array proc~read_params_dommaschk read_params_dommaschk proc~init~8->proc~read_params_dommaschk none~init~18 kisslinger_t%init proc~init~8->none~init~18 proc~init~9 immersed_rho_t%init proc~init~9->interface~get_n_points proc~init~9->interface~get_phi proc~init~9->interface~get_x proc~init~9->interface~get_y proc~init~9->proc~build_adj_inds proc~init~9->proc~build_inds proc~read_params_immersed_rho immersed_rho_t%read_params_immersed_rho proc~init~9->proc~read_params_immersed_rho proc~init~9->proc~step_hermite proc~init~9->rho proc~insertion_sort insertion_sort proc~interpol1d interpol1d proc~interpol1d->proc~handle_error proc~interpol_coeffs->proc~get_stderr dgetrf dgetrf proc~interpol_coeffs->dgetrf dgetri dgetri proc~interpol_coeffs->dgetri sgetrf sgetrf proc~interpol_coeffs->sgetrf sgetri sgetri proc~interpol_coeffs->sgetri proc~is_axisymmetric divertor_equilibrium_t%is_axisymmetric proc~is_axisymmetric~4 slab_t%is_axisymmetric proc~is_axisymmetric~6 dommaschk_t%is_axisymmetric proc~is_master->mpi_comm_rank proc~is_yperiodic slab_t%is_yperiodic proc~jacobian divertor_equilibrium_t%jacobian proc~jacobian_polar->proc~cart_to_polar proc~jacobian_polar->jacobian proc~jacobian~4 slab_t%jacobian proc~jacobian~6 dommaschk_t%jacobian proc~linspace linspace proc~mag_axis_loc divertor_equilibrium_t%mag_axis_loc proc~mag_axis_loc~4 slab_t%mag_axis_loc proc~mag_axis_loc~6->proc~interpol1d proc~make_polygon divertor_equilibrium_t%make_polygon proc~make_polygon->proc~create_closed_polygon2d_t proc~make_polygon->proc~create_limiting_polygon2d_t proc~make_polygon->proc~get_stderr proc~make_polygon_from_params->proc~get_stderr proc~make_polygon_from_params->proc~make_polygon proc~make_polygon_from_params->none~signed_area proc~nf90_handle_err nf90_handle_err nf90_strerror nf90_strerror proc~nf90_handle_err->nf90_strerror proc~on_grid->none~pt_inside proc~parallel_diffusion_shortley_weller parallel_diffusion_shortley_weller proc~parallel_diffusion_shortley_weller->interface~get_n_points proc~parallel_diffusion_shortley_weller->interface~getdata_fwdbwdplane proc~parallel_diffusion_shortley_weller->proc~csr_times_vec proc~parallel_diffusion_supp parallel_diffusion_supp proc~parallel_divergence_supp parallel_divergence_supp proc~parallel_diffusion_supp->proc~parallel_divergence_supp proc~parallel_gradient_supp parallel_gradient_supp proc~parallel_diffusion_supp->proc~parallel_gradient_supp proc~parallel_divergence_supp->interface~get_n_points proc~parallel_divergence_supp->interface~getdata_fwdbwdplane proc~parallel_divergence_supp->proc~csr_times_vec proc~parallel_gradient_supp->interface~get_n_points proc~parallel_gradient_supp->interface~getdata_fwdbwdplane proc~parallel_gradient_supp->proc~csr_times_vec proc~perf_get_time_last perf_get_time_last proc~perf_get_time_last->proc~get_stderr proc~perf_print perf_print proc~perf_print->proc~get_stderr proc~perf_print->proc~get_stdout proc~perf_print->proc~is_master proc~perf_print->mpi_allreduce proc~perf_reset perf_reset proc~perf_reset->proc~get_stderr proc~perf_start perf_start proc~perf_start->proc~get_stderr proc~perf_start->mpi_wtime proc~perf_stop perf_stop proc~perf_stop->proc~get_stderr proc~perf_stop->mpi_wtime proc~polar_to_cart->proc~find_zero proc~polar_to_cart->proc~get_stderr mag_axis_loc mag_axis_loc proc~polar_to_cart->mag_axis_loc proc~polyder polyder proc~polygon_projection divertor_equilibrium_t%polygon_projection proc~polygon_projection->bx proc~polygon_projection->by none~closest_polyedge polygon2d_t%closest_polyedge proc~polygon_projection->none~closest_polyedge proc~print_usage print_usage proc~print_usage->proc~get_stdout proc~progress_bar progress_bar proc~read_circtor_bnd_params read_circtor_bnd_params proc~read_circtor_bnd_params->proc~handle_error proc~read_equi_params_flare_type read_equi_params_flare_type proc~read_equi_params_flare_type->proc~handle_error proc~read_flare_bnd_params read_flare_bnd_params proc~read_flare_bnd_params->proc~handle_error proc~read_flare_equi_params read_flare_equi_params proc~read_flare_equi_params->proc~handle_error proc~read_flare_rho_params read_flare_rho_params proc~read_flare_rho_params->proc~handle_error proc~read_netcdf csrmat_t%read_netcdf proc~read_netcdf->proc~handle_error proc~read_netcdf->proc~handle_error_netcdf nf90_get_att nf90_get_att proc~read_netcdf->nf90_get_att nf90_get_var nf90_get_var proc~read_netcdf->nf90_get_var nf90_inq_dimid nf90_inq_dimid proc~read_netcdf->nf90_inq_dimid nf90_inq_varid nf90_inq_varid proc~read_netcdf->nf90_inq_varid nf90_inquire_dimension nf90_inquire_dimension proc~read_netcdf->nf90_inquire_dimension proc~read_netcdf_helmholtz read_netcdf_helmholtz proc~read_netcdf_helmholtz->proc~nf90_handle_err proc~read_netcdf_helmholtz->nf90_get_att proc~read_netcdf_helmholtz->nf90_get_var proc~read_netcdf_helmholtz->nf90_inq_varid proc~read_params_circular read_params_circular proc~read_params_circular->proc~get_stdout proc~read_params_circular->proc~handle_error proc~read_params_circular_toroidal read_params_circular_toroidal proc~read_params_circular_toroidal->proc~get_stdout proc~read_params_circular_toroidal->proc~handle_error proc~read_params_dommaschk->proc~get_stdout proc~read_params_dommaschk->proc~handle_error proc~read_params_immersed_rho->proc~handle_error proc~read_params_immersed_trace->proc~handle_error proc~read_params_salpha read_params_salpha proc~read_params_salpha->proc~get_stdout proc~read_params_salpha->proc~handle_error proc~read_params_slab->proc~get_stdout proc~read_params_slab->proc~handle_error proc~relative_difference relative_difference psi psi proc~rho->psi proc~rho~4 slab_t%rho proc~rho~6 dommaschk_t%rho proc~rho~6->proc~handle_error proc~rho~6->none~create_polygon2d none~dist_to_polyedge polygon2d_t%dist_to_polyedge proc~rho~6->none~dist_to_polyedge proc~rho~6->none~pt_inside proc~safety_factor safety_factor proc~safety_factor->proc~get_stderr initialize initialize proc~safety_factor->initialize integrate integrate proc~safety_factor->integrate proc~set_device_id->interface~cxx_set_device proc~set_device_id->proc~handle_error proc~set_error_mode set_error_mode none~set_error_mode error_handler_t%set_error_mode proc~set_error_mode->none~set_error_mode proc~set_perpbnds set_perpbnds proc~set_perpbnds->interface~get_index_neighbor proc~set_perpbnds->interface~get_n_points_boundary proc~set_perpbnds->interface~get_spacing_c proc~set_perpbnds->interface~normal_to_boundary proc~set_perpbnds->proc~get_stderr proc~set_phi_coarse multigrid_t%set_phi_coarse proc~set_phi_coarse->interface~set_phi proc~set_phi_coarse->proc~get_stderr proc~set_stderr set_stderr proc~set_stdout set_stdout proc~set_tolerance set_tolerance proc~setup_comm setup_comm proc~shortest_dist_to_bound shortest_dist_to_bound proc~shortest_dist_to_bound->proc~distance_to_boundary proc~sigmoid->proc~step_hermite proc~solout_none dop853_pitch_t%solout_none proc~solver3d_factory solver3d_factory proc~solver3d_factory->proc~handle_error proc~sort_tuples sort_tuples proc~sort_tuples->proc~insertion_sort proc~step_hermite->proc~binomial_coefficient_r proc~step_hermite->proc~heaviside proc~step_tanh step_tanh proc~step_tanh->proc~heaviside proc~sync_device sync_device proc~sync_device->interface~cxx_sync_device proc~sync_device->proc~handle_error proc~testfun_co testfun_co proc~testfun_co->proc~get_stderr proc~testfun_co->rho theta theta proc~testfun_co->theta proc~testfun_dudrhon testfun_dudrhon proc~testfun_u testfun_u proc~testfun_dudrhon->proc~testfun_u erad erad proc~testfun_dudrhon->erad proc~testfun_helm_u testfun_helm_u proc~testfun_helm_u->proc~get_stderr proc~testfun_helm_u->proc~testfun_co proc~testfun_lambda testfun_lambda proc~testfun_helm_u->proc~testfun_lambda proc~testfun_helm_u->proc~testfun_u proc~testfun_xi testfun_xi proc~testfun_helm_u->proc~testfun_xi proc~testfun_helm_u->rho proc~testfun_helm_u->theta proc~testfun_lambda->proc~get_stderr proc~testfun_lambda->rho proc~testfun_lambda->theta proc~testfun_u->proc~get_stderr proc~testfun_u->rho proc~testfun_u->theta proc~testfun_xi->proc~get_stderr proc~testfun_xi->rho proc~testfun_xi->theta proc~trace->proc~get_stderr proc~trace->proc~handle_error destroy destroy proc~trace->destroy proc~trace->initialize proc~trace->integrate proc~write_circtor_bnd_params write_circtor_bnd_params proc~write_circtor_bnd_params->proc~get_stdout proc~write_circtor_bnd_params->proc~handle_error proc~write_equi_params_flare_type write_equi_params_flare_type proc~write_equi_params_flare_type->proc~get_stdout proc~write_equi_params_flare_type->proc~handle_error proc~write_flare_bnd_params write_flare_bnd_params proc~write_flare_bnd_params->proc~get_stdout proc~write_flare_bnd_params->proc~handle_error proc~write_flare_equi_params write_flare_equi_params proc~write_flare_equi_params->proc~get_stdout proc~write_flare_equi_params->proc~handle_error proc~write_flare_rho_params write_flare_rho_params proc~write_flare_rho_params->proc~get_stdout proc~write_flare_rho_params->proc~handle_error proc~write_netcdf csrmat_t%write_netcdf proc~write_netcdf->proc~handle_error_netcdf proc~write_netcdf->nf90_def_dim proc~write_netcdf->nf90_def_var proc~write_netcdf->nf90_enddef nf90_put_att nf90_put_att proc~write_netcdf->nf90_put_att nf90_put_var nf90_put_var proc~write_netcdf->nf90_put_var nf90_redef nf90_redef proc~write_netcdf->nf90_redef proc~write_netcdf_helmholtz write_netcdf_helmholtz proc~write_netcdf_helmholtz->interface~get_district proc~write_netcdf_helmholtz->interface~get_n_points proc~write_netcdf_helmholtz->interface~get_n_points_boundary proc~write_netcdf_helmholtz->interface~get_n_points_ghost proc~write_netcdf_helmholtz->interface~get_n_points_inner proc~write_netcdf_helmholtz->proc~build_helmholtz_csr proc~write_netcdf_helmholtz->proc~get_stderr proc~write_netcdf_helmholtz->proc~nf90_handle_err proc~write_netcdf_helmholtz->proc~write_netcdf proc~write_netcdf_helmholtz->nf90_def_dim nf90_def_grp nf90_def_grp proc~write_netcdf_helmholtz->nf90_def_grp proc~write_netcdf_helmholtz->nf90_def_var proc~write_netcdf_helmholtz->nf90_enddef proc~write_netcdf_helmholtz->nf90_put_att proc~write_netcdf_helmholtz->nf90_put_var proc~write_params_circular write_params_circular proc~write_params_circular->proc~handle_error proc~write_params_circular_toroidal write_params_circular_toroidal proc~write_params_circular_toroidal->proc~handle_error proc~write_params_dommaschk write_params_dommaschk proc~write_params_dommaschk->proc~get_dommaschk_fitting_coef proc~write_params_dommaschk->proc~handle_error proc~write_params_salpha write_params_salpha proc~write_params_salpha->proc~handle_error proc~write_params_slab write_params_slab proc~write_params_slab->proc~handle_error proc~write_poincare->proc~handle_error_netcdf proc~write_poincare->nf90_close proc~write_poincare->nf90_create proc~write_poincare->nf90_def_dim proc~write_poincare->nf90_def_var proc~write_poincare->nf90_put_att proc~write_poincare->nf90_put_var proc~write_to_snapsfile write_to_snapsfile proc~write_to_snapsfile->proc~handle_error_netcdf proc~write_to_snapsfile->nf90_put_var proc~write_vtk_mesh write_vtk_mesh proc~write_vtk_mesh->interface~get_cart_i proc~write_vtk_mesh->interface~get_cart_j proc~write_vtk_mesh->interface~get_n_points proc~write_vtk_mesh->interface~get_spacing_f proc~write_vtk_mesh->interface~get_xmin proc~write_vtk_mesh->interface~get_ymin proc~write_vtk_mesh->proc~findindex_2d proc~write_vtk_mesh->proc~get_stderr proc~write_vtk_mesh->proc~get_stdout proc~write_vtk_mesh->proc~is_master proc~write_vtk_mesh->proc~trace proc~write_vtk_mesh->proc~unique_tuples proc~write_vtk_mesh->jacobian write_connectivity write_connectivity proc~write_vtk_mesh->write_connectivity write_geo write_geo proc~write_vtk_mesh->write_geo write_piece write_piece proc~write_vtk_mesh->write_piece proc~zeroin zeroin program~benchmark_helmholtz_solvers benchmark_helmholtz_solvers program~benchmark_helmholtz_solvers->interface~get_district program~benchmark_helmholtz_solvers->interface~get_n_points program~benchmark_helmholtz_solvers->interface~get_n_points_boundary program~benchmark_helmholtz_solvers->interface~get_n_points_ghost program~benchmark_helmholtz_solvers->interface~get_n_points_inner program~benchmark_helmholtz_solvers->interface~get_x program~benchmark_helmholtz_solvers->interface~get_y program~benchmark_helmholtz_solvers->interface~helmholtz_solver_factory program~benchmark_helmholtz_solvers->interface~initialize_multigrid program~benchmark_helmholtz_solvers->interface~multigrid_read_netcdf program~benchmark_helmholtz_solvers->interface~multigrid_write_netcdf program~benchmark_helmholtz_solvers->proc~convert_descriptor_char_int program~benchmark_helmholtz_solvers->proc~create_equilibrium program~benchmark_helmholtz_solvers->proc~display_parameters_helmholtz_solver_factory program~benchmark_helmholtz_solvers->proc~get_communicator program~benchmark_helmholtz_solvers->proc~get_equilibrium_identifier program~benchmark_helmholtz_solvers->proc~get_stdout program~benchmark_helmholtz_solvers->proc~handle_error program~benchmark_helmholtz_solvers->proc~handle_error_netcdf program~benchmark_helmholtz_solvers->proc~impose_default_device_affinity program~benchmark_helmholtz_solvers->proc~is_master program~benchmark_helmholtz_solvers->proc~perf_print program~benchmark_helmholtz_solvers->proc~perf_start program~benchmark_helmholtz_solvers->proc~perf_stop program~benchmark_helmholtz_solvers->proc~read_netcdf_helmholtz program~benchmark_helmholtz_solvers->proc~testfun_co program~benchmark_helmholtz_solvers->proc~testfun_dudrhon program~benchmark_helmholtz_solvers->proc~testfun_helm_u program~benchmark_helmholtz_solvers->proc~testfun_lambda program~benchmark_helmholtz_solvers->proc~testfun_u program~benchmark_helmholtz_solvers->proc~testfun_xi program~benchmark_helmholtz_solvers->proc~write_netcdf_helmholtz program~benchmark_helmholtz_solvers->mpi_comm_rank program~benchmark_helmholtz_solvers->mpi_comm_size mpi_finalize mpi_finalize program~benchmark_helmholtz_solvers->mpi_finalize mpi_init mpi_init program~benchmark_helmholtz_solvers->mpi_init program~benchmark_helmholtz_solvers->nf90_close program~benchmark_helmholtz_solvers->nf90_create nf90_open nf90_open program~benchmark_helmholtz_solvers->nf90_open petscfinalize petscfinalize program~benchmark_helmholtz_solvers->petscfinalize petscinitialize petscinitialize program~benchmark_helmholtz_solvers->petscinitialize solve solve program~benchmark_helmholtz_solvers->solve update update program~benchmark_helmholtz_solvers->update program~diagnose_poincare diagnose_poincare program~diagnose_poincare->proc~create_equilibrium program~diagnose_poincare->proc~generate_poincare_data program~diagnose_poincare->proc~get_communicator program~diagnose_poincare->proc~get_equilibrium_identifier program~diagnose_poincare->proc~handle_error program~diagnose_poincare->proc~linspace program~diagnose_poincare->proc~polar_to_cart program~diagnose_poincare->proc~print_usage program~diagnose_poincare->mpi_comm_size program~diagnose_poincare->mpi_init program~test_diffusion test_diffusion program~test_diffusion->interface~create_map_matrix program~test_diffusion->interface~exchange_mesh_mpi program~test_diffusion->interface~get_n_points program~test_diffusion->interface~get_spacing_f program~test_diffusion->interface~get_x program~test_diffusion->interface~get_y program~test_diffusion->interface~init_mesh_cart program~test_diffusion->interface~reorder program~test_diffusion->interface~write_netcdf_mesh_cart program~test_diffusion->proc~complete_support_map program~test_diffusion->proc~create_equilibrium program~test_diffusion->proc~fci_norms program~test_diffusion->proc~finalize_snapsfile program~test_diffusion->proc~gaussian program~test_diffusion->proc~get_communicator program~test_diffusion->proc~get_equilibrium_identifier program~test_diffusion->proc~get_stdout program~test_diffusion->proc~handle_error program~test_diffusion->proc~handle_error_netcdf program~test_diffusion->proc~initialize_snapsfile program~test_diffusion->proc~is_master program~test_diffusion->proc~parallel_diffusion_shortley_weller program~test_diffusion->proc~parallel_diffusion_supp program~test_diffusion->proc~perf_print program~test_diffusion->proc~perf_start program~test_diffusion->proc~perf_stop program~test_diffusion->proc~trace program~test_diffusion->proc~write_to_snapsfile program~test_diffusion->proc~write_vtk_mesh program~test_diffusion->btor finalize finalize program~test_diffusion->finalize program~test_diffusion->initialize program~test_diffusion->mpi_comm_rank program~test_diffusion->mpi_comm_size program~test_diffusion->mpi_finalize program~test_diffusion->mpi_init program~test_diffusion->nf90_close program~test_diffusion->nf90_create program~test_diffusion->write_piece
Help