___________________________________________________________________
 |                                                                 |
 |                                 CHOL                            |
 |_________________________________________________________________|

 MEANING: CHOL subroutine
 CONTEXT: NONMEM utility routine

 USAGE:
 INTEGER MODE,N,IER
 REAL R
 DIMENSION R(5)
 CALL CHOL (MODE,N,R,IER)

 DISCUSSION:
 CHOL is a NONMEM utility routine that may be called by any  user  rou-
 tine.  It computes the Cholesky square root of a given positive defin-
 ite matrix A, i.e., the lower triangular matrix B satisfying BB' = A.

 Input argument:

  MODE
      An integer variable or integer constant.
      0 - the required initialization call.
      1 - a normal call.

  N   An integer variable or integer constant  between  1  and  5;  the
      dimension of the matrix.

  R   A real array of dimension at least N; always single precision.
      The ith row of the matrix A, at the i+1 st. call to  CHOL.   Ele-
      ments R(j) with j>i are ignored.

  IER
      Upon input when MODE is 0:
      0 - CHOL should terminate NONMEM execution  when  the  matrix  is
      algorithmically not positive definite.
      1 - CHOL should always return control to PRED.

 Output argument:

  R   The ith row of B, upon return from the i+1 st. call to CHOL.

  IER
      0 - Normal return.
      1 - matrix is algorithmically not positive definite.   (This  can
      only happen if IER was 1 at the call with MODE=0.)

 If the dimension of A is NxN, then CHOL  is  called  N+1  times.   The
 first  call initializes the routine.  On the i+1 st. call, the ith row
 is passed to CHOL, and CHOL returns the ith row of B (i=1,..., N).

REFERENCES: Guide II Section D.4, D.4.2
REFERENCES: Guide II Figure 20

  
Go to main index.
  
Created by nmhelp2html v. 1.0 written by Niclas Jonsson (Modified by AJB 5/2006,11/2007)