Subroutine that initializes fields interpolants.
This subroutine initializes either 2-D or 3-D PSPLINE interpolants using the data of fields in the KORC-dervied-type variable F.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(KORC_PARAMS), | intent(in) | :: | params | Core KORC simulation parameters. |
||
integer, | intent(in) | :: | Nrho | |||
integer, | intent(in) | :: | NE | |||
real(kind=rp), | intent(in), | DIMENSION(Nrho) | :: | rho_axis | ||
real(kind=rp), | intent(in), | DIMENSION(NE) | :: | g_axis | ||
real(kind=rp), | intent(in), | DIMENSION(Nrho,NE) | :: | fRE_E | ||
real(kind=rp), | intent(in), | DIMENSION(Nrho,NE) | :: | fRE_pitch |
subroutine initialize_Hollmann_interpolant(params,Nrho,NE,rho_axis,g_axis,fRE_E,fRE_pitch)
!! @note Subroutine that initializes fields interpolants. @endnote
!! This subroutine initializes either 2-D or 3-D PSPLINE interpolants
!! using the data of fields in the KORC-dervied-type variable F.
TYPE(KORC_PARAMS), INTENT(IN) :: params
!! Core KORC simulation parameters.
INTEGER, INTENT(IN) :: Nrho,NE
REAL(rp),DIMENSION(Nrho), INTENT(IN) :: rho_axis
REAL(rp),DIMENSION(NE), INTENT(IN) :: g_axis
REAL(rp),DIMENSION(Nrho,NE), INTENT(IN) :: fRE_E,fRE_pitch
hollmann_2d%NRHO = Nrho
hollmann_2d%NE = NE
! initialize fRE_E
call EZspline_init(hollmann_2d%fRE_E,hollmann_2d%NRHO, &
hollmann_2d%NE,hollmann_2d%BCRHO,hollmann_2d%BCE,ezerr)
call EZspline_error(ezerr)
hollmann_2d%fRE_E%x1 = rho_axis
hollmann_2d%fRE_E%x2 = g_axis
call EZspline_setup(hollmann_2d%fRE_E, fRE_E, ezerr, .TRUE.)
call EZspline_error(ezerr)
! initialize fRE_pitch
call EZspline_init(hollmann_2d%fRE_pitch,hollmann_2d%NRHO, &
hollmann_2d%NE,hollmann_2d%BCRHO,hollmann_2d%BCE,ezerr)
call EZspline_error(ezerr)
hollmann_2d%fRE_pitch%x1 = rho_axis
hollmann_2d%fRE_pitch%x2 = g_axis
call EZspline_setup(hollmann_2d%fRE_pitch, fRE_pitch, &
ezerr, .TRUE.)
call EZspline_error(ezerr)
end subroutine initialize_Hollmann_interpolant