SED navigation bar go to SED home page go to Dataplot home page go to NIST home page SED Home Page SED Staff SED Projects SED Products and Publications Search SED Pages
Dataplot Vol 2 Vol 1

PB

Name:
    PB (LET)
Type:
    Library Function
Purpose:
    Compute the parabolic cylinder functions or the derivatives of the parabolic cylinder functions.
Description:
    The parabolic cylinder functions are defined as:

    1. D(x,v) = COS(PI*v/2)*w1(x) + SIN(PI*v/2)*w2(x)

      where

      w1(x) = (1/SQRT(PI))*GAMMA(0.5 + 0.5*v)*y1(x)/(2**(-v/2))

      w2(x) = (1/SQRT(PI))*GAMMA(1 + 0.5*v)*y2(x)/(2**(-v/2 - 0.5))

      y1(x) = SUM(a(2*m))*x**(2*m)/(2*m)!  where the summation is from 0 to infinity

      y2(x) = SUM(a(2*m+1))*x**(2*m+1)/(2*m+1)!   where the summation is from 0 to infinity

      and the a coefficients are determined from the following recursive formula

      a(0) = a(1) = 1
      a(2) = a(3) = a = -v - 0.5
      a(n) = a*a(n-2) + (1/4)*(n-2)(n-3)*a(n-4) (n >= 4)

    2. V(x,v) =[1/(GAMMA(1+v)]*[-SIN(PI*v/2)w1(x) + COS(PI*v/2)w2(x)]

      where w1 and w2 are defined as for the Dv(x) function and GAMMA is the gamma function.

    3. W(+/-x,a) =[(COSH(PI*a)**(1/4)]*[G1y1(x) -/+ SQRT(2)*G2y2(x)]

      where y1 and y2 are defined as for the Dv(x) function, COSH is the hyperbolic cosine function, and

      G1 = ABS(GAMMA(0.25 + 0.5ia))

      G2 = ABS(GAMMA(0.75 + 0.5ia))

    Note that there are alternative formulations for the above functions. More details are provided in the sources listed in the References section.

    In addition, Dataplot provides functions for computing the derivatives of each of these functions.

    Dataplot computes these function using the PDBV, PBVV, and PBWA routines from "Computation of Special Functions" (see the References section below).

Syntax 1:
    LET <y> = PBDV(<x>,<v>)             <SUBSET/EXCEPT/FOR qualification>
    where <x> is a variable, number, or parameter containing positive values;
                <v> is a variable, number, or parameter that defines the order of the parabolic function;
                <y> is a variable or a parameter (depending on what <x> and <v> are) where the computed parabolic cylinder values are stored;
    and where the <SUBSET/EXCEPT/FOR qualification> is optional.

    This syntax computes the first form of the parabolic cylinder functions (D(x,v)).

Syntax 2:
    LET <y> = PBDV1(<x>,<v>)             <SUBSET/EXCEPT/FOR qualification>
    where <x> is a variable, number, or parameter containing positive values;
                <v> is a variable, number, or parameter that defines the order of the parabolic cylinder function;
                <y> is a variable or a parameter (depending on what <x> and <v> are) where the computed parabolic cylinder values are stored;
    and where the <SUBSET/EXCEPT/FOR qualification> is optional.

    This syntax computes the derivative of the first form of the parabolic cylinder functions (D(x,v)).

Syntax 3:
    LET <y> = PBVV(<x>,<v>)             <SUBSET/EXCEPT/FOR qualification>
    where <x> is a variable, number, or parameter containing positive values;
                <v> is a variable, number, or parameter that defines the order of the parabolic function;
                <y> is a variable or a parameter (depending on what <x> and <v> are) where the computed parabolic cylinder values are stored;
    and where the <SUBSET/EXCEPT/FOR qualification> is optional.

    This syntax computes the second form of the parabolic cylinder functions (V(x,v)).

Syntax 4:
    LET <y> = PBVV1(<x>,<v>)             <SUBSET/EXCEPT/FOR qualification>
    where <x> is a variable, number, or parameter containing positive values;
                <v> is a variable, number, or parameter that defines the order of the parabolic function;
                <y> is a variable or a parameter (depending on what <x> and <v> are) where the computed parabolic cylinder values are stored;
    and where the <SUBSET/EXCEPT/FOR qualification> is optional.

    This syntax computes the derivative of the second form of the parabolic cylinder functions (V(x,v)).

Syntax 5:
    LET <y> = PBWA(<x>,<a>             <SUBSET/EXCEPT/FOR qualificationi>
    where <x> is a variable, number, or parameter containing positive values;
                <a> is a variable, number, or parameter that defines the order of the parabolic function;
                <y> is a variable or a parameter (depending on what <x> and <v> are) where the computed parabolic cylinder values are stored;
    and where the <SUBSET/EXCEPT/FOR qualification> is optional.

    This syntax computes the third form of the parabolic cylinder functions (W(x,a)).

    This function is limited to the case when the absolute value of <x> is less than 5.

Syntax 6:
    LET <y> = PBWA1(<x>,<a>)             <SUBSET/EXCEPT/FOR qualification>
    where <x> is a variable, number, or parameter containing positive values;
                <a> is a variable, number, or parameter that defines the order of the parabolic function;
                <y> is a variable or a parameter (depending on what <x> and <v> are) where the computed parabolic cylinder values are stored;
    and where the <SUBSET/EXCEPT/FOR qualification> is optional.

    This syntax computes the derivative of the third form of the parabolic cylinder functions (W(x,a)).

    This function is limited to the case when the absolute value of <x> is less than 5.

Examples:
    LET A = PBDV(1.5,2)
    LET A = PBDV1(1.5,2)

    LET Y = PBVV(X,2)
    LET YPRIME = PBVV1(X,2)

    LET Y = PBWA(X,1) FOR X = -3 0.1 3
    LET YPRIME = PBWA1(X,1) FOR X = -3 0.1 3

Default:
    None
Synonyms:
    None
Related Commands:
    CLNGAM = Compute the complex log gamma function.
    CBETA = Compute the complex beta function.
    CLNBETA = Compute the complex log beta function.
    GAMMA = Compute the Gamma function.
    GAMMAI = Compute the incomplete Gamma function.
    DIGAMMA = Compute the digamma function.
Reference:
    "Computation of Special Functions", Shanjie Zhang and Jianming Jin, John Wiley and Sons, 1996, chapter 13.

    "Handbook of Mathematical Functions, Applied Mathematics Series, Vol. 55", Abramowitz and Stegun, National Bureau of Standards, 1964, pp. 685-720.

Applications:
    Special Functions
Implementation Date:
    1997/12
Program 1:
    LINE SOLID DASH
    MULTIPLOT 2 2
    MULTIPLOT CORNER COORDINATES 5 5 95 95
    TITLE V = 1
    PLOT PBDV(X,1) FOR X = 0.1 0.1 5 AND
    PLOT PBDV1(X,1) FOR X = 0.1 0.1 5
    TITLE V = 2
    PLOT PBDV(X,2) FOR X = 0.1 0.1 5 AND
    PLOT PBDV1(X,2) FOR X = 0.1 0.1 5
    TITLE V = 3
    PLOT PBDV(X,3) FOR X = 0.1 0.1 5 AND
    PLOT PBDV1(X,3) FOR X = 0.1 0.1 5
    TITLE V = 4
    PLOT PBDV(X,4) FOR X = 0.1 0.1 5 AND
    PLOT PBDV1(X,4) FOR X = 0.1 0.1 5
    END OF MULTIPLOT
    MOVE 50 95
    JUSTIFICATION CENTER
    TEXT PBDV (AND DERIVATIVE) FUNCTIONS

    plot generated by sample program

Program 2:
    LINE SOLID DASH
    MULTIPLOT 2 2
    MULTIPLOT CORNER COORDINATES 5 5 95 95
    TITLE V = 1
    PLOT PBVV(X,1) FOR X = 0.1 0.1 5 AND
    PLOT PBVV1(X,1) FOR X = 0.1 0.1 5
    TITLE V = 2
    PLOT PBVV(X,2) FOR X = 0.1 0.1 5 AND
    PLOT PBVV1(X,2) FOR X = 0.1 0.1 5
    TITLE V = 3
    PLOT PBVV(X,3) FOR X = 0.1 0.1 5 AND
    PLOT PBVV1(X,3) FOR X = 0.1 0.1 5
    TITLE V = 4
    PLOT PBVV(X,4) FOR X = 0.1 0.1 5 AND
    PLOT PBVV1(X,4) FOR X = 0.1 0.1 5
    END OF MULTIPLOT
    MOVE 50 95
    JUSTIFICATION CENTER
    TEXT PBVV (AND DERIVATIVE) FUNCTIONS

    plot generated by sample program

Program 3:
    LINE SOLID DASH
    MULTIPLOT 2 2
    MULTIPLOT CORNER COORDINATES 5 5 95 95
    TITLE V = 1
    PLOT PBWA(X,1) FOR X = 0.1 0.1 5 AND
    PLOT PBWA1(X,1) FOR X = 0.1 0.1 5
    TITLE V = 2
    PLOT PBWA(X,2) FOR X = 0.1 0.1 5 AND
    PLOT PBWA1(X,2) FOR X = 0.1 0.1 5
    TITLE V = 3
    PLOT PBWA(X,3) FOR X = 0.1 0.1 5 AND
    PLOT PBWA1(X,3) FOR X = 0.1 0.1 5
    TITLE V = 4
    PLOT PBWA(X,4) FOR X = 0.1 0.1 5 AND
    PLOT PBWA1(X,4) FOR X = 0.1 0.1 5
    END OF MULTIPLOT
    MOVE 50 95
    JUSTIFICATION CENTER
    TEXT PBWA (AND DERIVATIVE) FUNCTIONS

    plot generated by sample program

Date created: 6/5/2001
Last updated: 4/4/2003
Please email comments on this WWW page to alan.heckert@nist.gov.