korc_simple_equilibrium_pdf Module


Uses

  • module~~korc_simple_equilibrium_pdf~~UsesGraph module~korc_simple_equilibrium_pdf korc_simple_equilibrium_pdf module~korc_input korc_input module~korc_simple_equilibrium_pdf->module~korc_input module~korc_hpc korc_hpc module~korc_simple_equilibrium_pdf->module~korc_hpc module~korc_hdf5 korc_HDF5 module~korc_simple_equilibrium_pdf->module~korc_hdf5 module~korc_constants korc_constants module~korc_simple_equilibrium_pdf->module~korc_constants module~special_functions special_functions module~korc_simple_equilibrium_pdf->module~special_functions module~korc_types korc_types module~korc_simple_equilibrium_pdf->module~korc_types module~korc_input->module~korc_hpc module~korc_input->module~korc_types module~korc_hpc->module~korc_types omp_lib omp_lib module~korc_hpc->omp_lib mpi mpi module~korc_hpc->mpi module~korc_hdf5->module~korc_hpc module~korc_hdf5->module~korc_constants module~korc_hdf5->module~korc_types HDF5 HDF5 module~korc_hdf5->HDF5 module~korc_constants->module~korc_types iso_c_binding iso_c_binding module~korc_types->iso_c_binding

Used by

  • module~~korc_simple_equilibrium_pdf~~UsedByGraph module~korc_simple_equilibrium_pdf korc_simple_equilibrium_pdf module~korc_velocity_distribution korc_velocity_distribution module~korc_velocity_distribution->module~korc_simple_equilibrium_pdf module~korc_initialize korc_initialize module~korc_initialize->module~korc_velocity_distribution program~main main program~main->module~korc_initialize

Contents


Variables

TypeVisibility AttributesNameInitial
type(PARAMS), private :: pdf_params
real(kind=rp), private, parameter:: xo =(C_ME*C_C**2/C_E)/1.0E6
real(kind=rp), private, parameter:: Tol =1.0E-5_rp
real(kind=rp), private, parameter:: minmax_buffer_size =10.0_rp

Derived Types

type, private :: PARAMS

Components

TypeVisibility AttributesNameInitial
real(kind=rp), public :: E
real(kind=rp), public :: Zeff
real(kind=rp), public :: max_pitch_angle
real(kind=rp), public :: min_pitch_angle
real(kind=rp), public :: po
real(kind=rp), public :: Bo
real(kind=rp), public :: lambda

Functions

private function deg2rad(x)

Arguments

Type IntentOptional AttributesName
real(kind=rp), intent(in) :: x

Return Value real(kind=rp)

private function rad2deg(x)

Arguments

Type IntentOptional AttributesName
real(kind=rp), intent(in) :: x

Return Value real(kind=rp)

private function fRE(eta, p)

Arguments

Type IntentOptional AttributesName
real(kind=rp), intent(in) :: eta
real(kind=rp), intent(in) :: p

Return Value real(kind=rp)

private function random_norm(mean, sigma)

Arguments

Type IntentOptional AttributesName
real(kind=rp), intent(in) :: mean
real(kind=rp), intent(in) :: sigma

Return Value real(kind=rp)

private function IntK(v, x)

Arguments

Type IntentOptional AttributesName
real(kind=rp), intent(in) :: v
real(kind=rp), intent(in) :: x

Return Value real(kind=rp)

public function besselk(v, x)

Arguments

Type IntentOptional AttributesName
real(kind=rp), intent(in) :: v
real(kind=rp), intent(in) :: x

Return Value real(kind=rp)

private function IntBesselK(a, b)

Arguments

Type IntentOptional AttributesName
real(kind=rp), intent(in) :: a
real(kind=rp), intent(in) :: b

Return Value real(kind=rp)

private function PR(eta, p, Bo, l)

Arguments

Type IntentOptional AttributesName
real(kind=rp), intent(in) :: eta
real(kind=rp), intent(in) :: p
real(kind=rp), intent(in) :: Bo
real(kind=rp), intent(in) :: l

Return Value real(kind=rp)


Subroutines

public subroutine get_equilibrium_distribution(params, eta, go, etao)

Arguments

Type IntentOptional AttributesName
type(KORC_PARAMS), intent(in) :: params
real(kind=rp), intent(inout), DIMENSION(:), ALLOCATABLE:: eta
real(kind=rp), intent(in) :: go
real(kind=rp), intent(out) :: etao

private subroutine initialize_params(params, go)

Arguments

Type IntentOptional AttributesName
type(KORC_PARAMS), intent(in) :: params
real(kind=rp), intent(in) :: go

private subroutine P_integral(z, P)

Arguments

Type IntentOptional AttributesName
real(kind=rp), intent(in) :: z
real(kind=rp), intent(out) :: P

private subroutine sample_distribution(params, eta, etao)

Read more…

Arguments

Type IntentOptional AttributesName
type(KORC_PARAMS), intent(in) :: params
real(kind=rp), intent(inout), DIMENSION(:), ALLOCATABLE:: eta
real(kind=rp), intent(out) :: etao

private subroutine save_params(params)

Arguments

Type IntentOptional AttributesName
type(KORC_PARAMS), intent(in) :: params