Handles setting of parallel boundary conditions according to Taylor expansion along boundary conditions See Appendix B of Andreas Stegmeir et al. 2018 Plasma Phys. Control. Fusion 60 035005. DOI 10.1088/1361-6587/aaa373
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| real(kind=FP), | protected | :: | trace_max_step_size | = | PI/180.0_FP |
Maximum step size of trace algorithm |
|
| real(kind=FP), | protected | :: | depth_alt | = | 0.5_FP |
Depth at which method switches to alternate expression |
|
| real(kind=FP), | protected | :: | wd_alt | = | 0.5_FP |
Width over which method switches to alternate expression |
|
| integer, | protected | :: | hermite_order_alt | = | 2 |
Order of transition (hermite polynomials) to alternate expression |
|
| real(kind=FP), | protected | :: | depth_flb | = | 1.5_FP |
Depth at which method switches to fallback expression |
|
| real(kind=FP), | protected | :: | wd_flb | = | 0.5_FP |
Width over which method switches to fallback expression |
|
| integer, | protected | :: | hermite_order_flb | = | 2 |
Order of transition (hermite polynomials) to fallback expression |
|
| real(kind=FP), | protected | :: | depth_ctgy | = | 2.5_FP |
Depth at which method switches to contingency (deep depth) expression |
|
| real(kind=FP), | protected | :: | wd_ctgy | = | 0.5_FP |
Width over which method switches to contingency expression |
|
| integer, | protected | :: | hermite_order_ctgy | = | 2 |
Order of transition (hermite polynomials) to contingency expression |
Handles setting of boundary conditions at parallel boundaries according to Taylor expansion method
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | public, | allocatable, dimension(:) | :: | b_bnd_direction |
Indicates if the magnetic field is directed towards or away the boundary at the closest parallel boundary: - = 1 : if B points toward the boundary - = -1 : if B points away from the boundary) - = 0 : if no boundary is found nearby (e.g., in closed field line region or when the boundary is too far from the point) |
||
| real(kind=FP), | public, | allocatable, dimension(:,:) | :: | dists_to_bnd |
Distances along the magnetic field line to the boundary |
||
| real(kind=FP), | public, | allocatable, dimension(:) | :: | depth_in_bnd |
Corresponding toridal angle to boundary in units of dphi - Positive values indicate that point is inside boundary - Negative values indicate that point is outside boundary - A value of zero indicates that boundary is too far away (e.g., in closed field line region) |
| final :: destructor_parbnd_taylor_t |
| procedure, public :: init => init_parbnd_taylor | |
| procedure, public :: display | |
| procedure, public :: write_netcdf => write_netcdf_parbnd_taylor | |
| procedure, public :: read_netcdf => read_netcdf_parbnd_taylor | |
| procedure, public :: set_guard_points | |
| procedure, public :: extrapolate_guard_points |