elliptic_nome_by_epsilon_13_horner Function

private elemental function elliptic_nome_by_epsilon_13_horner(pw01_eps, pw04_eps, pre_step) result(q)

Calculate the following for the given and :

Arguments

Type IntentOptional Attributes Name
real(kind=real64), intent(in) :: pw01_eps

auxiliary parameter

real(kind=real64), intent(in) :: pw04_eps

real(kind=real64), intent(in) :: pre_step

Return Value real(kind=real64)

elliptic nome


Calls

proc~~elliptic_nome_by_epsilon_13_horner~3~~CallsGraph proc~elliptic_nome_by_epsilon_13_horner~3 elliptic_nome_by_epsilon_13_horner proc~elliptic_nome_by_epsilon_09_horner~3 elliptic_nome_by_epsilon_09_horner proc~elliptic_nome_by_epsilon_13_horner~3->proc~elliptic_nome_by_epsilon_09_horner~3 proc~elliptic_nome_by_epsilon_05_horner~3 elliptic_nome_by_epsilon_05_horner proc~elliptic_nome_by_epsilon_09_horner~3->proc~elliptic_nome_by_epsilon_05_horner~3

Called by

proc~~elliptic_nome_by_epsilon_13_horner~3~~CalledByGraph proc~elliptic_nome_by_epsilon_13_horner~3 elliptic_nome_by_epsilon_13_horner proc~elliptic_nome_by_epsilon_13~3 elliptic_nome_by_epsilon_13 proc~elliptic_nome_by_epsilon_13~3->proc~elliptic_nome_by_epsilon_13_horner~3 proc~elliptic_nome_by_epsilon_17_horner~3 elliptic_nome_by_epsilon_17_horner proc~elliptic_nome_by_epsilon_17_horner~3->proc~elliptic_nome_by_epsilon_13_horner~3 proc~elliptic_nome_13_real64 elliptic_nome_13_real64 proc~elliptic_nome_13_real64->proc~elliptic_nome_by_epsilon_13~3 proc~elliptic_nome_auto_real64 elliptic_nome_auto_real64 proc~elliptic_nome_auto_real64->proc~elliptic_nome_by_epsilon_13~3 proc~elliptic_nome_by_epsilon_17~3 elliptic_nome_by_epsilon_17 proc~elliptic_nome_auto_real64->proc~elliptic_nome_by_epsilon_17~3 proc~elliptic_nome_by_epsilon_21~3 elliptic_nome_by_epsilon_21 proc~elliptic_nome_auto_real64->proc~elliptic_nome_by_epsilon_21~3 proc~elliptic_nome_by_epsilon_25~3 elliptic_nome_by_epsilon_25 proc~elliptic_nome_auto_real64->proc~elliptic_nome_by_epsilon_25~3 proc~elliptic_nome_by_epsilon_29~3 elliptic_nome_by_epsilon_29 proc~elliptic_nome_auto_real64->proc~elliptic_nome_by_epsilon_29~3 proc~elliptic_nome_by_epsilon_33~3 elliptic_nome_by_epsilon_33 proc~elliptic_nome_auto_real64->proc~elliptic_nome_by_epsilon_33~3 proc~elliptic_nome_by_epsilon_17~3->proc~elliptic_nome_by_epsilon_17_horner~3 proc~elliptic_nome_by_epsilon_21_horner~3 elliptic_nome_by_epsilon_21_horner proc~elliptic_nome_by_epsilon_21_horner~3->proc~elliptic_nome_by_epsilon_17_horner~3 interface~elliptic_nome_13 elliptic_nome_13 interface~elliptic_nome_13->proc~elliptic_nome_13_real64 interface~elliptic_nome_auto elliptic_nome_auto interface~elliptic_nome_auto->proc~elliptic_nome_auto_real64 proc~elliptic_nome_17_real64 elliptic_nome_17_real64 proc~elliptic_nome_17_real64->proc~elliptic_nome_by_epsilon_17~3 proc~elliptic_nome_by_epsilon_21~3->proc~elliptic_nome_by_epsilon_21_horner~3 proc~elliptic_nome_by_epsilon_25_horner~3 elliptic_nome_by_epsilon_25_horner proc~elliptic_nome_by_epsilon_25_horner~3->proc~elliptic_nome_by_epsilon_21_horner~3 interface~elliptic_nome_17 elliptic_nome_17 interface~elliptic_nome_17->proc~elliptic_nome_17_real64 proc~elliptic_nome_21_real64 elliptic_nome_21_real64 proc~elliptic_nome_21_real64->proc~elliptic_nome_by_epsilon_21~3 proc~elliptic_nome_by_epsilon_25~3->proc~elliptic_nome_by_epsilon_25_horner~3 proc~elliptic_nome_by_epsilon_29_horner~3 elliptic_nome_by_epsilon_29_horner proc~elliptic_nome_by_epsilon_29_horner~3->proc~elliptic_nome_by_epsilon_25_horner~3 interface~elliptic_nome_21 elliptic_nome_21 interface~elliptic_nome_21->proc~elliptic_nome_21_real64 proc~elliptic_nome_25_real64 elliptic_nome_25_real64 proc~elliptic_nome_25_real64->proc~elliptic_nome_by_epsilon_25~3 proc~elliptic_nome_by_epsilon_29~3->proc~elliptic_nome_by_epsilon_29_horner~3 proc~elliptic_nome_by_epsilon_33_horner~3 elliptic_nome_by_epsilon_33_horner proc~elliptic_nome_by_epsilon_33_horner~3->proc~elliptic_nome_by_epsilon_29_horner~3 interface~elliptic_nome_25 elliptic_nome_25 interface~elliptic_nome_25->proc~elliptic_nome_25_real64 proc~elliptic_nome_29_real64 elliptic_nome_29_real64 proc~elliptic_nome_29_real64->proc~elliptic_nome_by_epsilon_29~3 proc~elliptic_nome_by_epsilon_33~3->proc~elliptic_nome_by_epsilon_33_horner~3 interface~elliptic_nome_29 elliptic_nome_29 interface~elliptic_nome_29->proc~elliptic_nome_29_real64 proc~elliptic_nome_33_real64 elliptic_nome_33_real64 proc~elliptic_nome_33_real64->proc~elliptic_nome_by_epsilon_33~3 interface~elliptic_nome_33 elliptic_nome_33 interface~elliptic_nome_33->proc~elliptic_nome_33_real64

Source Code

    elemental function elliptic_nome_by_epsilon_13_horner(pw01_eps, pw04_eps, pre_step) result(q)
        !! Calculate the following for the given \( \varepsilon \) and \( { \varepsilon }^{ 4 } \):
        !! $$
        !! \begin{aligned}
        !! \varepsilon \cdot {}
        !! & (  1 + { \varepsilon }^{ 4 } \cdot \\
        !! & (  2 + { \varepsilon }^{ 4 } \cdot \\
        !! & ( 15 + { \varepsilon }^{ 4 } \cdot \texttt{pre_step} ) \\
        !! & ) \\
        !! & ) \\
        !! \end{aligned}
        !! $$

        real(real64), intent(in) :: pw01_eps !! auxiliary parameter \( \varepsilon \)

        real(real64), intent(in) :: pw04_eps !! \( { \varepsilon }^{ 4 } \)

        real(real64), intent(in) :: pre_step



        real(real64) :: q !! elliptic nome \( q \)



        q = &!
            elliptic_nome_by_epsilon_09_horner(&!
                pw01_eps = pw01_eps                   , &!
                pw04_eps = pw04_eps                   , &!
                pre_step = pw04_eps * pre_step + c_09   &!
            )

    end function elliptic_nome_by_epsilon_13_horner