public interface interpol_coeff
Calculates interpolation coefficients
Called by
interface~~interpol_coeff~~CalledByGraph
interface~interpol_coeff
interpol_coeff
proc~bt_cx_rates
bt_cx_rates
proc~bt_cx_rates->interface~interpol_coeff
proc~get_ddpt_anisotropy
get_ddpt_anisotropy
proc~get_ddpt_anisotropy->interface~interpol_coeff
proc~get_rate_matrix
get_rate_matrix
proc~get_rate_matrix->interface~interpol_coeff
proc~bb_cx_rates
bb_cx_rates
proc~bb_cx_rates->interface~interpol_coeff
proc~in_plasma
in_plasma
proc~in_plasma->interface~interpol_coeff
proc~get_dd_rate
get_dd_rate
proc~get_dd_rate->interface~interpol_coeff
proc~pnpa_mc
pnpa_mc
proc~pnpa_mc->proc~bt_cx_rates
proc~get_plasma
get_plasma
proc~pnpa_mc->proc~get_plasma
proc~get_fields
get_fields
proc~pnpa_mc->proc~get_fields
proc~attenuate
attenuate
proc~pnpa_mc->proc~attenuate
proc~store_npa
store_npa
proc~pnpa_mc->proc~store_npa
proc~dcx_spec
dcx_spec
proc~dcx_spec->proc~in_plasma
proc~dcx_spec->proc~get_plasma
proc~store_photons
store_photons
proc~dcx_spec->proc~store_photons
proc~pnpa_f
pnpa_f
proc~pnpa_f->proc~bt_cx_rates
proc~pnpa_f->proc~get_plasma
proc~mc_fastion_pass_grid
mc_fastion_pass_grid
proc~pnpa_f->proc~mc_fastion_pass_grid
proc~pnpa_f->proc~attenuate
proc~pnpa_f->proc~store_npa
proc~get_plasma->proc~in_plasma
proc~pfida_mc
pfida_mc
proc~pfida_mc->proc~bt_cx_rates
proc~pfida_mc->proc~get_plasma
proc~colrad
colrad
proc~pfida_mc->proc~colrad
proc~track_cylindrical
track_cylindrical
proc~pfida_mc->proc~track_cylindrical
proc~pfida_mc->proc~get_fields
proc~store_fida_photons
store_fida_photons
proc~pfida_mc->proc~store_fida_photons
proc~colrad->proc~get_rate_matrix
proc~track
track
proc~track->proc~in_plasma
proc~track->proc~get_plasma
proc~track->proc~get_fields
proc~halo_spec
halo_spec
proc~halo_spec->proc~in_plasma
proc~halo_spec->proc~get_plasma
proc~halo_spec->proc~store_photons
proc~make_beam_grid
make_beam_grid
proc~make_beam_grid->proc~in_plasma
proc~neutral_cx_rate
neutral_cx_rate
proc~neutral_cx_rate->proc~bb_cx_rates
proc~read_mc
read_mc
proc~read_mc->proc~in_plasma
proc~neutron_f
neutron_f
proc~neutron_f->proc~get_dd_rate
proc~neutron_f->proc~get_plasma
proc~neutron_f->proc~get_fields
proc~fida_weights_los
fida_weights_los
proc~fida_weights_los->proc~bt_cx_rates
proc~fida_weights_los->proc~bb_cx_rates
proc~fida_weights_los->proc~in_plasma
proc~fida_weights_los->proc~get_plasma
proc~fida_weights_los->proc~colrad
proc~fida_weights_los->proc~track
proc~fida_weights_los->proc~get_fields
proc~mc_nbi
mc_nbi
proc~mc_nbi->proc~in_plasma
proc~cfpd_f
cfpd_f
proc~cfpd_f->proc~get_ddpt_anisotropy
proc~cfpd_f->proc~get_dd_rate
proc~cfpd_f->proc~get_plasma
proc~cfpd_f->proc~get_fields
proc~track_cylindrical->proc~in_plasma
proc~track_cylindrical->proc~get_plasma
proc~track_cylindrical->proc~get_fields
proc~neutron_mc
neutron_mc
proc~neutron_mc->proc~get_dd_rate
proc~neutron_mc->proc~get_plasma
proc~neutron_mc->proc~get_fields
proc~pfida_f
pfida_f
proc~pfida_f->proc~bt_cx_rates
proc~pfida_f->proc~get_plasma
proc~pfida_f->proc~colrad
proc~pfida_f->proc~track_cylindrical
proc~pfida_f->proc~mc_fastion_pass_grid
proc~pfida_f->proc~store_fida_photons
proc~get_fields->proc~in_plasma
proc~nbi_spec
nbi_spec
proc~nbi_spec->proc~in_plasma
proc~nbi_spec->proc~store_photons
proc~get_plasma_extrema
get_plasma_extrema
proc~get_plasma_extrema->proc~in_plasma
proc~mc_fastion_pass_grid->proc~get_fields
proc~dcx
dcx
proc~dcx->proc~get_plasma
proc~dcx->proc~colrad
proc~dcx->proc~track
proc~get_total_cx_rate
get_total_cx_rate
proc~dcx->proc~get_total_cx_rate
proc~dcx->proc~store_photons
proc~attenuate->proc~get_plasma
proc~attenuate->proc~colrad
proc~npa_weights
npa_weights
proc~npa_weights->proc~get_fields
proc~npa_weights->proc~attenuate
proc~npa_weights->proc~get_total_cx_rate
proc~read_distribution
read_distribution
proc~read_distribution->proc~read_mc
proc~store_fw_photons
store_fw_photons
proc~store_fw_photons->proc~get_fields
proc~fida_f
fida_f
proc~fida_f->proc~get_plasma
proc~fida_f->proc~colrad
proc~fida_f->proc~track
proc~fida_f->proc~get_total_cx_rate
proc~mc_fastion
mc_fastion
proc~fida_f->proc~mc_fastion
proc~fida_f->proc~store_fida_photons
proc~make_passive_grid
make_passive_grid
proc~make_passive_grid->proc~get_plasma_extrema
proc~cold_spec
cold_spec
proc~cold_spec->proc~get_plasma
proc~cold_spec->proc~store_photons
proc~npa_f
npa_f
proc~npa_f->proc~get_plasma
proc~npa_f->proc~attenuate
proc~npa_f->proc~get_total_cx_rate
proc~npa_f->proc~mc_fastion
proc~npa_f->proc~store_npa
proc~get_total_cx_rate->proc~neutral_cx_rate
proc~mc_fastion->proc~get_fields
proc~fida_mc
fida_mc
proc~fida_mc->proc~get_plasma
proc~fida_mc->proc~colrad
proc~fida_mc->proc~track
proc~fida_mc->proc~get_fields
proc~fida_mc->proc~get_total_cx_rate
proc~fida_mc->proc~store_fida_photons
program~fidasim
fidasim
program~fidasim->proc~pnpa_mc
program~fidasim->proc~dcx_spec
program~fidasim->proc~pnpa_f
program~fidasim->proc~pfida_mc
program~fidasim->proc~halo_spec
program~fidasim->proc~make_beam_grid
program~fidasim->proc~neutron_f
program~fidasim->proc~fida_weights_los
program~fidasim->proc~cfpd_f
program~fidasim->proc~neutron_mc
program~fidasim->proc~pfida_f
program~fidasim->proc~nbi_spec
program~fidasim->proc~dcx
program~fidasim->proc~npa_weights
program~fidasim->proc~read_distribution
program~fidasim->proc~fida_f
program~fidasim->proc~cold_spec
program~fidasim->proc~npa_f
program~fidasim->proc~fida_mc
proc~ndmc
ndmc
program~fidasim->proc~ndmc
proc~bremsstrahlung
bremsstrahlung
program~fidasim->proc~bremsstrahlung
proc~halo
halo
program~fidasim->proc~halo
proc~fida_weights_mc
fida_weights_mc
program~fidasim->proc~fida_weights_mc
proc~read_equilibrium
read_equilibrium
program~fidasim->proc~read_equilibrium
proc~npa_mc
npa_mc
program~fidasim->proc~npa_mc
proc~make_diagnostic_grids
make_diagnostic_grids
program~fidasim->proc~make_diagnostic_grids
proc~ndmc->proc~get_plasma
proc~ndmc->proc~colrad
proc~ndmc->proc~track
proc~ndmc->proc~mc_nbi
proc~ndmc->proc~get_fields
proc~store_nbi_photons
store_nbi_photons
proc~ndmc->proc~store_nbi_photons
proc~bremsstrahlung->proc~get_plasma
proc~store_npa->proc~get_fields
proc~store_photons->proc~get_fields
proc~halo->proc~get_plasma
proc~halo->proc~colrad
proc~halo->proc~track
proc~halo->proc~neutral_cx_rate
proc~halo->proc~store_photons
proc~fida_weights_mc->proc~get_plasma
proc~fida_weights_mc->proc~colrad
proc~fida_weights_mc->proc~track
proc~fida_weights_mc->proc~get_fields
proc~fida_weights_mc->proc~store_fw_photons
proc~fida_weights_mc->proc~get_total_cx_rate
proc~read_equilibrium->proc~colrad
proc~npa_mc->proc~get_fields
proc~npa_mc->proc~attenuate
proc~npa_mc->proc~get_total_cx_rate
proc~npa_mc->proc~store_npa
proc~make_diagnostic_grids->proc~track
proc~make_diagnostic_grids->proc~track_cylindrical
proc~make_diagnostic_grids->proc~get_fields
proc~make_diagnostic_grids->proc~make_passive_grid
proc~store_fida_photons->proc~store_photons
proc~store_nbi_photons->proc~store_photons
Nodes of different colours represent the following:
Graph Key
Subroutine
Subroutine
Function
Function
Interface
Interface
Unknown Procedure Type
Unknown Procedure Type
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Module Procedures
private subroutine interpol1D_coeff(xmin, dx, nx, xout, c, err)
Linear interpolation coefficients and index for a 1D grid y(x)
Arguments
Type Intent Optional Attributes Name
real(kind=Float64),
intent(in)
::
xmin Minimum abscissa value
real(kind=Float64),
intent(in)
::
dx Absissa spacing
integer,
intent(in)
::
nx Number of abscissa
real(kind=Float64),
intent(in)
::
xout Abscissa value to interpolate
type(InterpolCoeffs1D ),
intent(out)
::
c Interpolation Coefficients
integer,
intent(out),
optional ::
err Error code
private subroutine interpol1D_coeff_arr(x, xout, c, err)
Linear interpolation coefficients and index for a 1D grid y(x)
Arguments
Type Intent Optional Attributes Name
real(kind=Float64),
intent(in),
dimension(:) ::
x Abscissa values
real(kind=Float64),
intent(in)
::
xout Abscissa value to interpolate
type(InterpolCoeffs1D ),
intent(out)
::
c Interpolation Coefficients
integer,
intent(out),
optional ::
err Error code
private subroutine interpol2D_coeff(xmin, dx, nx, ymin, dy, ny, xout, yout, c, err)
Bilinear interpolation coefficients and indicies for a 2D grid z(x,y)
Arguments
Type Intent Optional Attributes Name
real(kind=Float64),
intent(in)
::
xmin Minimum abscissa
real(kind=Float64),
intent(in)
::
dx Abscissa spacing
integer,
intent(in)
::
nx Number of abscissa
real(kind=Float64),
intent(in)
::
ymin Minimum ordinate
real(kind=Float64),
intent(in)
::
dy Ordinate spacing
integer,
intent(in)
::
ny Number of ordinates points
real(kind=Float64),
intent(in)
::
xout Abscissa value to interpolate
real(kind=Float64),
intent(in)
::
yout Ordinate value to interpolate
type(InterpolCoeffs2D ),
intent(out)
::
c Interpolation Coefficients
integer,
intent(out),
optional ::
err Error code
private subroutine interpol2D_coeff_arr(x, y, xout, yout, c, err)
Arguments
Type Intent Optional Attributes Name
real(kind=Float64),
intent(in),
dimension(:) ::
x Abscissa values
real(kind=Float64),
intent(in),
dimension(:) ::
y Ordinate values
real(kind=Float64),
intent(in)
::
xout Abscissa value to interpolate
real(kind=Float64),
intent(in)
::
yout Ordinate value to interpolate
type(InterpolCoeffs2D ),
intent(out)
::
c Interpolation Coefficients
integer,
intent(out),
optional ::
err Error code
private subroutine cyl_interpol3D_coeff(rmin, dr, nr, zmin, dz, nz, phimin, dphi, nphi, rout, zout, phiout, c, err)
Cylindrical interpolation coefficients and indicies for a 3D grid
Arguments
Type Intent Optional Attributes Name
real(kind=Float64),
intent(in)
::
rmin Minimum R
real(kind=Float64),
intent(in)
::
dr R spacing
integer,
intent(in)
::
nr Number of R points
real(kind=Float64),
intent(in)
::
zmin Minimum Z
real(kind=Float64),
intent(in)
::
dz Z spacing
integer,
intent(in)
::
nz Number of Z points
real(kind=Float64),
intent(in)
::
phimin Minimum phi
real(kind=Float64),
intent(in)
::
dphi Phi spacing
integer,
intent(in)
::
nphi Number of phi points
real(kind=Float64),
intent(in)
::
rout R value to interpolate
real(kind=Float64),
intent(in)
::
zout Z value to interpolate
real(kind=Float64),
intent(in)
::
phiout Phi value to interpolate
type(InterpolCoeffs3D ),
intent(out)
::
c Interpolation Coefficients
integer,
intent(out),
optional ::
err Error code
private subroutine cyl_interpol3D_coeff_arr(r, z, phi, rout, zout, phiout, c, err)
Cylindrical interpolation coefficients and indicies for a 3D grid
Arguments
Type Intent Optional Attributes Name
real(kind=Float64),
intent(in),
dimension(:) ::
r R values
real(kind=Float64),
intent(in),
dimension(:) ::
z Z values
real(kind=Float64),
intent(in),
dimension(:) ::
phi Phi values
real(kind=Float64),
intent(in)
::
rout R value to interpolate
real(kind=Float64),
intent(in)
::
zout Z value to interpolate
real(kind=Float64),
intent(in)
::
phiout Phi value to interpolate
type(InterpolCoeffs3D ),
intent(out)
::
c Interpolation Coefficients
integer,
intent(out),
optional ::
err Error code