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

MULTIVARIATE T CDF

Name:
    MULTIVARIATE T CDF
Type:
    Let Subcommand
Purpose:
    Compute the cumulative distribution function (CDF) from a multivariate t distribution.
Description:
    The TCDF function computes the CDF of a univariate t distribution. This command extends that capability to the multivariate case (for up to 20 variables).

    The CDF is the integral of the probability density function from negative infinity to the desired value. In addition to the CDF case, this command can handle integration from the specified point to positive infinity and integration from negative infinity to positive infinity.

    For the multivariate case, you need to specify a varible containing the location estimates for each variable, the variance-covariance matrix of the the variables, a parameter defining the degrees of freedom, and variables specifying the limits of integration.

    This command uses codes provided by Alan Genz (see the Reference seciton below). In particular, this code supports three different methods:

    1. SADMVT - a subregion adaptive integration method developed by Alan Genz.

    2. KROMVT - a lattice rule method using randomized Korobov rules.

    3. RANMVT - Genz'a Monte-Carlo integration.

    By default, Dataplot uses the SADMVN method, but you specify one of the other methods (see the Note section below).

Syntax 1:
    LET <par> = MULTIVARIATE T CDF <sigma> <nu> <upplim>
    where <sigma> is a matrix containing the desired variance-covariance matrix;
                <nu> is a number or parameter that specifies the desired degrees of freedom for the t distribution;
                <upplim> is a variable containing the upper levels of integration;
    and where <par> is a parameter containing the computed multivariate t cdf value.

    This syntax computes the cdf function.

Syntax 2:
    LET <par> = MULTIVARIATE T CDF <sigma> <nu> <lowlim> <upplim>
    where <sigma> is a matrix containing the desired variance-covariance matrix;             <nu> is a number or parameter that specifies the desired degrees of freedom for the t distribution;
                <lowlim> is a variable containing the lower levels of integration;
                <upplim> is a variable containing the upper levels of integration;
    and where <par> is a parameter containing the computed multivariate t cdf value.

    This syntax can be used to compute arbitrary integrals of the multivariate t function.

Examples:
    LET NU = 5
    READ MATRIX SIGMA
    1 0.5 0.5
    0.5 1 0.5
    0.5 0.5 1
    END OF DATA
    LET LOWLIM = DATA 1.5 2 0.5
    LET A = MULTIVARIATE T CDF SIGMA NU LOWLIM
Note:
    You can specify which method to use with the following command:

      SET MULTIVARIATE NORMAL <method>

    where <method> is one of the following:

      SADMVN KROMVN RANMVN
Note:
    The accuracy of the routine can be specified by entering one of the following command (before entering the MULTIVARIATE NORMAL CDF command):

      LET ABSEPS = <value>
      LET RELEPS = <value>

    These define the desired absolute and relative errors, respectively. The default absolute error is set to 0 and the default relative error is set to 0.005 (i.e., the relative error is used). This should be a reasonable choice for most applications.

Note:
    The error estimate is returned in the internal parameter NCDFERRS. You can use this parameter like any user created parameter. For example, to see its value, enter PRINT NCDFERRS.
Default:
    None
Synonyms:
    None
Related Commands:
    TCDF = Compute the univariate t cdf function.
    MULTIVARIATE NORMAL CDF = Generate multivariate normal cdf function.
    MULTIVARIATE NORMAL RANDOM NUMBERS = Generate multivariate normal random numbers.
    MULTIVARIATE T RANDOM NUMBERS = Generate multivariate t random numbers.
Reference:
    "Comparison of Methods for the Computation ofMultivariate Normal Probabilities", Alan Genz, Computing Science and Statistics, 25, 1993, pp. 400-405.

    "Numerical Computation of Multivariate Normal Probabilities", Alan Genz, Journal of Computational and Graphical Statistics, 1, 1992, pp. 141-149.

Applications:
    Bayesian Analysis
Implementation Date:
    2003/5
Program:
    let abseps = 0.0
    let releps = 0.005
    read matrix sigma
     1.0         0.75      0.75 0.75 0.75
     0.75        1.0       0.75 0.75 0.75
     0.75        0.75      1.0  0.75 0.75
     0.75        0.75      0.75 1.0  0.75
     0.75        0.75      0.75 0.75 1.0
    end of data
    .
    let cpumin = -infinity
    let lowl = data cpumin  cpumin  cpumin  cpumin cpumin
    let uppl = data   2       2       2        2     2
    .
    let nu = 10
    let a = multivariate t cdf sigma nu lowl uppl
    let nu = 20
    let a = multivariate t cdf sigma nu lowl uppl
    let nu = 30
    let a = multivariate t cdf sigma nu lowl uppl
    let nu = 40
    let a = multivariate t cdf sigma nu lowl uppl
    .
    set multivariate normal kromvt
    let nu=10
    let a = multivariate t cdf sigma nu lowl uppl
    let nu=20
    let a = multivariate t cdf sigma nu lowl uppl
    let nu=30
    let a = multivariate t cdf sigma nu lowl uppl
    let nu=40
    let a = multivariate t cdf sigma nu lowl uppl
    .
    set multivariate normal ranmvt
    let nu=10
    let a = multivariate t cdf sigma nu lowl uppl
    let nu=20
    let a = multivariate t cdf sigma nu lowl uppl
    let nu=30
    let a = multivariate t cdf sigma nu lowl uppl
    let nu=40
    let a = multivariate t cdf sigma nu lowl uppl
        
    Dataplot generated the following output
           *******************
           **  let nu = 10  **
           *******************
      
      
     THE COMPUTED VALUE OF THE CONSTANT NU       =   0.1000000E+02
      
      
           *****************************************************
           **  let a = multivariate t cdf sigma nu lowl uppl  **
           *****************************************************
      
      
     THE COMPUTED VALUE OF THE CONSTANT A             =  0.90810883E+00
      
      
           *******************
           **  let nu = 20  **
           *******************
      
      
     THE COMPUTED VALUE OF THE CONSTANT NU       =   0.2000000E+02
      
      
           *****************************************************
           **  let a = multivariate t cdf sigma nu lowl uppl  **
           *****************************************************
      
      
     THE COMPUTED VALUE OF THE CONSTANT A             =  0.92174983E+00
      
      
           *******************
           **  let nu = 30  **
           *******************
      
      
     THE COMPUTED VALUE OF THE CONSTANT NU       =   0.3000000E+02
      
      
           *****************************************************
           **  let a = multivariate t cdf sigma nu lowl uppl  **
           *****************************************************
      
      
     THE COMPUTED VALUE OF THE CONSTANT A             =  0.92641902E+00
      
      
           *******************
           **  let nu = 40  **
           *******************
      
      
     THE COMPUTED VALUE OF THE CONSTANT NU       =   0.4000000E+02
      
      
           *****************************************************
           **  let a = multivariate t cdf sigma nu lowl uppl  **
           *****************************************************
      
      
     THE COMPUTED VALUE OF THE CONSTANT A             =  0.92877501E+00
      
      
           *********
           **  .  **
           *********
      
      
           **************************************
           **  set multivariate normal kromvt  **
           **************************************
      
      
     THE FORTRAN COMMON CHARACTER VARIABLE MULTNORM HAS JUST BEEN SET TO KROM
      
           *****************
           **  let nu=10  **
           *****************
      
      
     THE COMPUTED VALUE OF THE CONSTANT NU       =   0.1000000E+02
      
      
           *****************************************************
           **  let a = multivariate t cdf sigma nu lowl uppl  **
           *****************************************************
      
      
     THE COMPUTED VALUE OF THE CONSTANT A             =  0.90869933E+00
      
      
           *****************
           **  let nu=20  **
           *****************
      
      
     THE COMPUTED VALUE OF THE CONSTANT NU       =   0.2000000E+02
      
      
           *****************************************************
           **  let a = multivariate t cdf sigma nu lowl uppl  **
           *****************************************************
      
      
     THE COMPUTED VALUE OF THE CONSTANT A             =  0.92239201E+00
      
      
           *****************
           **  let nu=30  **
           *****************
      
      
     THE COMPUTED VALUE OF THE CONSTANT NU       =   0.3000000E+02
      
      
           *****************************************************
           **  let a = multivariate t cdf sigma nu lowl uppl  **
           *****************************************************
      
      
     THE COMPUTED VALUE OF THE CONSTANT A             =  0.92682952E+00
      
      
           *****************
           **  let nu=40  **
           *****************
      
      
     THE COMPUTED VALUE OF THE CONSTANT NU       =   0.4000000E+02
      
      
           *****************************************************
           **  let a = multivariate t cdf sigma nu lowl uppl  **
           *****************************************************
      
      
     THE COMPUTED VALUE OF THE CONSTANT A             =  0.92917287E+00
      
      
           *********
           **  .  **
           *********
      
      
           **************************************
           **  set multivariate normal ranmvt  **
           **************************************
      
      
     THE FORTRAN COMMON CHARACTER VARIABLE MULTNORM HAS JUST BEEN SET TO RANM
      
           *****************
           **  let nu=10  **
           *****************
      
      
     THE COMPUTED VALUE OF THE CONSTANT NU       =   0.1000000E+02
      
      
           *****************************************************
           **  let a = multivariate t cdf sigma nu lowl uppl  **
           *****************************************************
      
      
     THE COMPUTED VALUE OF THE CONSTANT A             =  0.91197872E+00
      
      
           *****************
           **  let nu=20  **
           *****************
      
      
     THE COMPUTED VALUE OF THE CONSTANT NU       =   0.2000000E+02
      
      
           *****************************************************
           **  let a = multivariate t cdf sigma nu lowl uppl  **
           *****************************************************
      
      
     THE COMPUTED VALUE OF THE CONSTANT A             =  0.92616749E+00
      
      
           *****************
           **  let nu=30  **
           *****************
      
      
     THE COMPUTED VALUE OF THE CONSTANT NU       =   0.3000000E+02
      
      
           *****************************************************
           **  let a = multivariate t cdf sigma nu lowl uppl  **
           *****************************************************
      
      
     THE COMPUTED VALUE OF THE CONSTANT A             =  0.92844337E+00
      
      
           *****************
           **  let nu=40  **
           *****************
      
      
     THE COMPUTED VALUE OF THE CONSTANT NU       =   0.4000000E+02
      
      
           *****************************************************
           **  let a = multivariate t cdf sigma nu lowl uppl  **
           *****************************************************
      
      
     THE COMPUTED VALUE OF THE CONSTANT A             =  0.92901456E+00
        

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