elliptic_nome_by_epsilon_33_horner Function

private elemental function elliptic_nome_by_epsilon_33_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_33_horner~3~~CallsGraph proc~elliptic_nome_by_epsilon_33_horner~3 elliptic_nome_by_epsilon_33_horner proc~elliptic_nome_by_epsilon_29_horner~3 elliptic_nome_by_epsilon_29_horner proc~elliptic_nome_by_epsilon_33_horner~3->proc~elliptic_nome_by_epsilon_29_horner~3 proc~elliptic_nome_by_epsilon_25_horner~3 elliptic_nome_by_epsilon_25_horner proc~elliptic_nome_by_epsilon_29_horner~3->proc~elliptic_nome_by_epsilon_25_horner~3 proc~elliptic_nome_by_epsilon_21_horner~3 elliptic_nome_by_epsilon_21_horner proc~elliptic_nome_by_epsilon_25_horner~3->proc~elliptic_nome_by_epsilon_21_horner~3 proc~elliptic_nome_by_epsilon_17_horner~3 elliptic_nome_by_epsilon_17_horner proc~elliptic_nome_by_epsilon_21_horner~3->proc~elliptic_nome_by_epsilon_17_horner~3 proc~elliptic_nome_by_epsilon_13_horner~3 elliptic_nome_by_epsilon_13_horner proc~elliptic_nome_by_epsilon_17_horner~3->proc~elliptic_nome_by_epsilon_13_horner~3 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_33_horner~3~~CalledByGraph proc~elliptic_nome_by_epsilon_33_horner~3 elliptic_nome_by_epsilon_33_horner proc~elliptic_nome_by_epsilon_33~3 elliptic_nome_by_epsilon_33 proc~elliptic_nome_by_epsilon_33~3->proc~elliptic_nome_by_epsilon_33_horner~3 proc~elliptic_nome_33_real64 elliptic_nome_33_real64 proc~elliptic_nome_33_real64->proc~elliptic_nome_by_epsilon_33~3 proc~elliptic_nome_auto_real64 elliptic_nome_auto_real64 proc~elliptic_nome_auto_real64->proc~elliptic_nome_by_epsilon_33~3 interface~elliptic_nome_33 elliptic_nome_33 interface~elliptic_nome_33->proc~elliptic_nome_33_real64 interface~elliptic_nome_auto elliptic_nome_auto interface~elliptic_nome_auto->proc~elliptic_nome_auto_real64

Source Code

    elemental function elliptic_nome_by_epsilon_33_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 \\
        !! & (     150 + { \varepsilon }^{ 4 } \cdot \\
        !! & (    1707 + { \varepsilon }^{ 4 } \cdot \\
        !! & (   20910 + { \varepsilon }^{ 4 } \cdot \\
        !! & (  268616 + { \varepsilon }^{ 4 } \cdot \\
        !! & ( 3567400 + { \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_29_horner(&!
                pw01_eps = pw01_eps                   , &!
                pw04_eps = pw04_eps                   , &!
                pre_step = pw04_eps * pre_step + c_29   &!
            )

    end function elliptic_nome_by_epsilon_33_horner