PR Function

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)


Calls

proc~~pr~2~~CallsGraph proc~pr~2 PR proc~p_integral~2 P_integral proc~pr~2->proc~p_integral~2 proc~deg2rad~5 deg2rad proc~pr~2->proc~deg2rad~5 proc~intbesselk~2 IntBesselK proc~p_integral~2->proc~intbesselk~2 proc~intk~2 IntK proc~p_integral~2->proc~intk~2 proc~besselk~2 besselk proc~intbesselk~2->proc~besselk~2

Called by

proc~~pr~2~~CalledByGraph proc~pr~2 PR proc~frexpr fRExPR proc~frexpr->proc~pr~2 proc~fre_hxpr fRE_HxPR proc~fre_hxpr->proc~pr~2

Contents

Source Code

PR

Source Code

  FUNCTION PR(eta,p,Bo,l)
    REAL(rp), INTENT(IN) :: eta ! in radians
    REAL(rp), INTENT(IN) :: p ! dimensionless (in units of mc)
    REAL(rp), INTENT(IN) :: Bo
    REAL(rp), INTENT(IN) :: l
    REAL(rp) :: PR
    REAL(rp) :: g
    REAL(rp) :: v
    REAL(rp) :: k
    REAL(rp) :: lc
    REAL(rp) :: z
    REAL(rp) :: Pi

    g = SQRT(p**2 + 1.0_rp)
    v = C_C*SQRT(1.0_rp - 1.0_rp/g**2)

    k = C_E*Bo*SIN(deg2rad(eta))/(g*C_ME*v)

    lc = (4.0_rp*C_PI/3.0_rp)/(k*g**3) ! Critical wavelength

    z = lc/l

    call P_integral(z,Pi)

    PR = (C_C*C_E**2)*Pi/(SQRT(3.0_rp)*C_E0*g**2*l**3)
  END FUNCTION PR