d_kepds Function

private pure function d_kepds(ds, r0, vr0, alpha, mu)

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(in) :: ds
real(kind=wp), intent(in) :: r0
real(kind=wp), intent(in) :: vr0
real(kind=wp), intent(in) :: alpha
real(kind=wp), intent(in) :: mu

Return Value real(kind=wp)


Calls

proc~~d_kepds~~CallsGraph proc~d_kepds kepler_module::d_kepds proc~stumpff_c kepler_module::stumpff_c proc~d_kepds->proc~stumpff_c proc~stumpff_s kepler_module::stumpff_s proc~d_kepds->proc~stumpff_s

Source Code

    pure function d_kepds(ds, r0, vr0, alpha, mu)

    implicit none

    real(wp),intent(in) :: ds
    real(wp),intent(in) :: r0
    real(wp),intent(in) :: vr0
    real(wp),intent(in) :: alpha
    real(wp),intent(in) :: mu
    real(wp) :: d_kepds

    real(wp) :: c,s,ads2,ds2

    ds2  = ds * ds
    ads2 = alpha * ds2
    s    = stumpff_s(ads2)
    c    = stumpff_c(ads2)

    d_kepds = r0 * vr0 / sqrt(mu) * ds * (one - ads2 * s) + &
              (one - alpha * r0) * ds2 * c + r0

    end function d_kepds