korc_simple_equilibrium_pdf Module



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