elliptic_nome_fortran Module

Compute nome for elliptic integrals corresponding to modulus

Note

  • 山内二郎, 宇野利雄, 一松信 共編
    電子計算機のための数値計算法 3
    培風館, 1972.
    数理科学シリーズ ; 5
    NDLサーチ
  • A002103 - OEIS

Uses

  • module~~elliptic_nome_fortran~~UsesGraph module~elliptic_nome_fortran elliptic_nome_fortran module~elliptic_nome_fortran_real128 elliptic_nome_fortran_real128 module~elliptic_nome_fortran->module~elliptic_nome_fortran_real128 module~elliptic_nome_fortran_real32 elliptic_nome_fortran_real32 module~elliptic_nome_fortran->module~elliptic_nome_fortran_real32 module~elliptic_nome_fortran_real64 elliptic_nome_fortran_real64 module~elliptic_nome_fortran->module~elliptic_nome_fortran_real64 ieee_arithmetic ieee_arithmetic module~elliptic_nome_fortran_real128->ieee_arithmetic iso_fortran_env iso_fortran_env module~elliptic_nome_fortran_real128->iso_fortran_env module~elliptic_nome_fortran_real32->ieee_arithmetic module~elliptic_nome_fortran_real32->iso_fortran_env module~elliptic_nome_fortran_real64->ieee_arithmetic module~elliptic_nome_fortran_real64->iso_fortran_env

Interfaces

public interface elliptic_nome_01

Calculate the elliptic nome using the Horner's method and the following polynomial:

  • public elemental function elliptic_nome_01_real32(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real32), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real32)

    elliptic nome

  • public elemental function elliptic_nome_01_real64(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

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

    elliptic modulus

    Return Value real(kind=real64)

    elliptic nome

  • public elemental function elliptic_nome_01_real128(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real128), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real128)

    elliptic nome

public interface elliptic_nome_05

Calculate the elliptic nome using the Horner's method and the following polynomial:

  • public elemental function elliptic_nome_05_real32(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real32), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real32)

    elliptic nome

  • public elemental function elliptic_nome_05_real64(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

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

    elliptic modulus

    Return Value real(kind=real64)

    elliptic nome

  • public elemental function elliptic_nome_05_real128(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real128), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real128)

    elliptic nome

public interface elliptic_nome_09

Calculate the elliptic nome using the Horner's method and the following polynomial:

  • public elemental function elliptic_nome_09_real32(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real32), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real32)

    elliptic nome

  • public elemental function elliptic_nome_09_real64(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

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

    elliptic modulus

    Return Value real(kind=real64)

    elliptic nome

  • public elemental function elliptic_nome_09_real128(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real128), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real128)

    elliptic nome

public interface elliptic_nome_13

Calculate the elliptic nome using the Horner's method and the following polynomial:

  • public elemental function elliptic_nome_13_real32(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real32), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real32)

    elliptic nome

  • public elemental function elliptic_nome_13_real64(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

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

    elliptic modulus

    Return Value real(kind=real64)

    elliptic nome

  • public elemental function elliptic_nome_13_real128(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real128), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real128)

    elliptic nome

public interface elliptic_nome_17

Calculate the elliptic nome using the Horner's method and the following polynomial:

  • public elemental function elliptic_nome_17_real32(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real32), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real32)

    elliptic nome

  • public elemental function elliptic_nome_17_real64(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

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

    elliptic modulus

    Return Value real(kind=real64)

    elliptic nome

  • public elemental function elliptic_nome_17_real128(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real128), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real128)

    elliptic nome

public interface elliptic_nome_21

Calculate the elliptic nome using the Horner's method and the following polynomial:

  • public elemental function elliptic_nome_21_real32(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real32), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real32)

    elliptic nome

  • public elemental function elliptic_nome_21_real64(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

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

    elliptic modulus

    Return Value real(kind=real64)

    elliptic nome

  • public elemental function elliptic_nome_21_real128(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real128), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real128)

    elliptic nome

public interface elliptic_nome_25

Calculate the elliptic nome using the Horner's method and the following polynomial:

  • public elemental function elliptic_nome_25_real32(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real32), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real32)

    elliptic nome

  • public elemental function elliptic_nome_25_real64(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

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

    elliptic modulus

    Return Value real(kind=real64)

    elliptic nome

  • public elemental function elliptic_nome_25_real128(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real128), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real128)

    elliptic nome

public interface elliptic_nome_29

Calculate the elliptic nome using the Horner's method and the following polynomial:

  • public elemental function elliptic_nome_29_real32(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real32), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real32)

    elliptic nome

  • public elemental function elliptic_nome_29_real64(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

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

    elliptic modulus

    Return Value real(kind=real64)

    elliptic nome

  • public elemental function elliptic_nome_29_real128(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real128), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real128)

    elliptic nome

public interface elliptic_nome_33

Calculate the elliptic nome using the Horner's method and the following polynomial:

  • public elemental function elliptic_nome_33_real32(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real32), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real32)

    elliptic nome

  • public elemental function elliptic_nome_33_real64(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

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

    elliptic modulus

    Return Value real(kind=real64)

    elliptic nome

  • public elemental function elliptic_nome_33_real128(k) result(q)

    Calculate the elliptic nome using the Horner's method and the following polynomial:

    Note

    • The elliptic modulus should satisfy .

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real128), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real128)

    elliptic nome

public interface elliptic_nome_auto

  • public elemental function elliptic_nome_auto_real32(k) result(q)

    Calculate the elliptic nome for the given elliptic modulus

    Note

    • The elliptic modulus should satisfy .
    • If the calculation does not converge, it returns NaN.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real32), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real32)

    elliptic nome

  • public elemental function elliptic_nome_auto_real64(k) result(q)

    Calculate the elliptic nome for the given elliptic modulus

    Note

    • The elliptic modulus should satisfy .
    • If the calculation does not converge, it returns NaN.

    Arguments

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

    elliptic modulus

    Return Value real(kind=real64)

    elliptic nome

  • public elemental function elliptic_nome_auto_real128(k) result(q)

    Calculate the elliptic nome for the given elliptic modulus

    Note

    • The elliptic modulus should satisfy .
    • If the calculation does not converge, it returns NaN.

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real128), intent(in) :: k

    elliptic modulus

    Return Value real(kind=real128)

    elliptic nome