funcs Module


FRAC

Fractional part of a number.



RFRAC

Rational FRAC.



CINT

Complex INT.



RINT

Rational INT.



RNINT

Rational NINT.



CMOD

Complex MOD.



RMOD

Rational MOD.



CUBEROOT

Computes the cube root.



CLOG10

Complex common logarithm.



TANHC

Tanhc function.



CTANHC

Complex tanhc function.



ERROR FUNCTIONS

From http://www.netlib.org/specfun

DERFCX



H2HMSD

Convert decimal hours to hours, minutes, and seconds. Seconds are returned as a real value.



HMS2H

Convert hours, minutes, and seconds to decimal hours.



RIEMANNZETA

Riemann zeta function.

Algorithm from "Atlas for Computing Mathematical Functions" by W.J. Thompson, Wiley, 1997.



REDUCE

Reduce an angle to the range [angle_min, angle_max).



KEPLER

Solves the elliptical Kepler's equation by the Markley method.



Uses

  • module~~funcs~~UsesGraph module~funcs funcs module~bessel bessel module~funcs->module~bessel module~stats stats module~funcs->module~stats assert assert module~funcs->assert iso_fortran_env iso_fortran_env module~funcs->iso_fortran_env module~hyper hyper module~funcs->module~hyper module~fgamma fgamma module~funcs->module~fgamma module~trig trig module~funcs->module~trig module~rat rat module~funcs->module~rat module~bessel->assert module~rjk rjk module~bessel->module~rjk module~i1 i1 module~bessel->module~i1 module~k0 k0 module~bessel->module~k0 module~rjb rjb module~bessel->module~rjb module~i0 i0 module~bessel->module~i0 module~k1 k1 module~bessel->module~k1 module~rjy rjy module~bessel->module~rjy module~rji rji module~bessel->module~rji module~stats->assert module~hyper->assert module~hyper->iso_fortran_env module~hyper->module~rat ieee_arithmetic ieee_arithmetic module~hyper->ieee_arithmetic module~global GLOBAL module~hyper->module~global module~fgamma->assert module~trig->assert module~rat->assert module~rat->iso_fortran_env module~global->assert

Used by

  • module~~funcs~~UsedByGraph module~funcs funcs program~rpn RPN program~rpn->module~funcs module~stackops stackops program~rpn->module~stackops module~evals evals program~rpn->module~evals module~stackops->module~funcs module~evals->module~funcs module~evals->module~stackops

Contents


Variables

TypeVisibility AttributesNameInitial
real(kind=wp), private, parameter:: xinf =huge(0._wp)
real(kind=wp), private, parameter:: xmax =xinf
real(kind=wp), private, parameter:: xmin =tiny(0._wp)
complex(kind=wp), private, parameter:: c0 =(0._wp, 0._wp)

Interfaces

public interface cuberoot

  • public elemental function CUBEROOT_r(X) result(cuberoot)

    Arguments

    Type IntentOptional AttributesName
    real(kind=wp), intent(in) :: X

    Return Value real(kind=wp)

  • public elemental function CUBEROOT_c(Z) result(cuberoot)

    Arguments

    Type IntentOptional AttributesName
    complex(kind=wp), intent(in) :: Z

    Return Value complex(kind=wp)

public interface frac

  • public elemental function FRAC_r(X) result(Y)

    Arguments

    Type IntentOptional AttributesName
    real(kind=wp), intent(in) :: X

    Return Value real(kind=wp)

  • public elemental function FRAC_c(X) result(frac)

    Arguments

    Type IntentOptional AttributesName
    complex(kind=wp), intent(in) :: X

    Return Value complex(kind=wp)

public interface sinc

  • public elemental function SINC_r(X) result(sinc)

    Arguments

    Type IntentOptional AttributesName
    real(kind=wp), intent(in) :: X

    Return Value real(kind=wp)

  • public elemental function SINC_c(Z) result(sinc)

    Arguments

    Type IntentOptional AttributesName
    complex(kind=wp), intent(in) :: Z

    Return Value complex(kind=wp)

public interface tanc

  • public elemental function TANC_r(X) result(tanc)

    Arguments

    Type IntentOptional AttributesName
    real(kind=wp), intent(in) :: X

    Return Value real(kind=wp)

  • public elemental function TANC_c(Z) result(tanc)

    Arguments

    Type IntentOptional AttributesName
    complex(kind=wp), intent(in) :: Z

    Return Value complex(kind=wp)


Functions

public elemental function FRAC_r(X) result(Y)

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(in) :: X

Return Value real(kind=wp)

public elemental function FRAC_c(X) result(frac)

Arguments

Type IntentOptional AttributesName
complex(kind=wp), intent(in) :: X

Return Value complex(kind=wp)

public elemental function CINT(X) result(Y)

Arguments

Type IntentOptional AttributesName
complex(kind=wp), intent(in) :: X

Return Value complex(kind=wp)

public elemental function RINT(N, D) result(R)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: N
integer, intent(in) :: D

Return Value integer

public elemental function CMOD(X, Y) result(Z)

Arguments

Type IntentOptional AttributesName
complex(kind=wp), intent(in) :: X
complex(kind=wp), intent(in) :: Y

Return Value complex(kind=wp)

public elemental function CUBEROOT_r(X) result(cuberoot)

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(in) :: X

Return Value real(kind=wp)

public elemental function CUBEROOT_c(Z) result(cuberoot)

Arguments

Type IntentOptional AttributesName
complex(kind=wp), intent(in) :: Z

Return Value complex(kind=wp)

public elemental function CLOG10(X)

Arguments

Type IntentOptional AttributesName
complex(kind=wp), intent(in) :: X

Return Value complex(kind=wp)

public elemental function LOG1P(X) result(Y)

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(in) :: X

Return Value real(kind=wp)

public elemental function SINC_r(X) result(sinc)

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(in) :: X

Return Value real(kind=wp)

public elemental function SINC_c(Z) result(sinc)

Arguments

Type IntentOptional AttributesName
complex(kind=wp), intent(in) :: Z

Return Value complex(kind=wp)

public elemental function TANC_r(X) result(tanc)

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(in) :: X

Return Value real(kind=wp)

public elemental function TANC_c(Z) result(tanc)

Arguments

Type IntentOptional AttributesName
complex(kind=wp), intent(in) :: Z

Return Value complex(kind=wp)

public elemental function SINHC(X) result(Y)

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(in) :: X

Return Value real(kind=wp)

public elemental function CSINHC(Z) result(Y)

Arguments

Type IntentOptional AttributesName
complex(kind=wp), intent(in) :: Z

Return Value complex(kind=wp)

public elemental function TANHC(X) result(Y)

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(in) :: X

Return Value real(kind=wp)

public elemental function CTANHC(Z) result(Y)

Arguments

Type IntentOptional AttributesName
complex(kind=wp), intent(in) :: Z

Return Value complex(kind=wp)

public elemental function ERFCX(X)

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(in) :: X

Return Value real(kind=wp)

public elemental function RIEMANNZETA(S, EPS)

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(in) :: S
real(kind=wp), intent(in) :: EPS

Return Value real(kind=wp)

public elemental function REDUCE(THETA, ANGLE_MIN) result(RHO)

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(in) :: THETA
real(kind=wp), intent(in) :: ANGLE_MIN

Return Value real(kind=wp)

public elemental function KEPLER(MA, ECC) result(E5)

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(in) :: MA
real(kind=wp), intent(in) :: ECC

Return Value real(kind=wp)

public elemental function toLower(str)

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: str

Return Value character(len=len(str))

public elemental function toUpper(str)

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: str

Return Value character(len=len(str))


Subroutines

public elemental subroutine RFRAC(N, D, NR, DR)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: N
integer, intent(in) :: D
integer, intent(out) :: NR
integer, intent(out) :: DR

public elemental subroutine RNINT(N, D)

Arguments

Type IntentOptional AttributesName
integer, intent(inout) :: N
integer, intent(inout) :: D

public elemental subroutine RMOD(N1, D1, N2, D2, NR, DR)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: N1
integer, intent(in) :: D1
integer, intent(in) :: N2
integer, intent(in) :: D2
integer, intent(out) :: NR
integer, intent(out) :: DR

public elemental subroutine H2HMSD(DHR, IHR, IMIN, SEC)

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(in) :: DHR
integer, intent(out) :: IHR
integer, intent(out) :: IMIN
real(kind=wp), intent(out) :: SEC

public elemental subroutine HMS2H(IHR, IMIN, SEC, DHR)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: IHR
integer, intent(in) :: IMIN
real(kind=wp), intent(in) :: SEC
real(kind=wp), intent(out) :: DHR