N.I.M.R.O.D.  
Modules | Functions/Subroutines

tools.f90 File Reference

Go to the source code of this file.

Modules

module  m_vpropre
 

matrix eigenvalues and eigenvectors


Functions/Subroutines

subroutine choldc (n, A, aa)
subroutine choldcsl (n, A, aa)
real *8 choldet (n, a)
subroutine cholsl (n, A, aa)
subroutine choldc1 (n, a, p)
subroutine MatPrint (s, n, A)
Integer Check_Matrix (n, A)
subroutine MATMULT (n, A, B, C)
DOUBLE PRECISION PHID (Z)
 Normal distribution probabilities.
subroutine dmaxt (maxt, delta, m)
 Find maximum in a vector.
subroutine dchole (a, k, nq, idpos)
 CHOLEsky decomposition.
subroutine dmfsd (a, n, eps, ier)
 Factorize a given symetric matrix.
subroutine dsinv (A, N, EPS, IER, DET)
 Matrix inversion.
subroutine inflateDiag (v, m)
 Inflate a matrix diagonal.
subroutine FINDInv (matrix, inverse, n, errorflag)
 Matrix Inversion (2)
subroutine m_vpropre::EIGEN (NM, N, A, WR, WI, VECS, D, INTC)
subroutine m_vpropre::balanc (nm, n, a, linf, lsup, d)
subroutine m_vpropre::elmhes (nm, n, linf, lsup, a, intc)
subroutine m_vpropre::eltran (nm, n, linf, lsup, a, intc, vecs)
subroutine m_vpropre::hqr2 (nm, n, linf, lsup, a, vecs, wr, wi)
subroutine m_vpropre::balbak (nm, n, linf, lsup, d, z)
subroutine m_vpropre::cdiv (xr, xi, yr, yi, zr, zi)
DOUBLE PRECISION RNRNOR ()
 Normal random numbers with zero mean and unit standard deviation.
DOUBLE PRECISION RNRUNI ()
 Uniform (0, 1) random number generator.

Function Documentation

Integer Check_Matrix ( integer  n,
real*8,dimension(0:n-1,0:n-1)  A 
)

Definition at line 179 of file tools.f90.

subroutine choldc ( integer  n,
real*8,dimension(0:n-1,0:n-1)  A,
real*8,dimension(0:n-1,0:n-1)  aa 
)

Definition at line 10 of file tools.f90.

References choldc1().

Referenced by choldet().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine choldc1 ( integer  n,
real*8,dimension(0:n-1,0:n-1)  a,
real*8,dimension(0:n-1)  p 
)

Definition at line 140 of file tools.f90.

Referenced by choldc(), and choldcsl().

Here is the caller graph for this function:

subroutine choldcsl ( integer  n,
real*8,dimension(0:n-1,0:n-1)  A,
real*8,dimension(0:n-1,0:n-1)  aa 
)

Definition at line 39 of file tools.f90.

References choldc1().

Referenced by cholsl().

Here is the call graph for this function:

Here is the caller graph for this function:

real*8 choldet ( integer  n,
real*8,dimension(0:n-1,0:n-1)  a 
)

Definition at line 73 of file tools.f90.

References choldc().

Here is the call graph for this function:

subroutine cholsl ( integer  n,
real*8,dimension(0:n-1,0:n-1)  A,
real*8,dimension(0:n-1,0:n-1)  aa 
)

Definition at line 99 of file tools.f90.

References choldcsl().

Here is the call graph for this function:

subroutine dchole ( double precision,dimension(k*(k+3)/2),intent(inout)  a,
integer,intent(in)  k,
integer,intent(in)  nq,
integer,intent(inout)  idpos 
)

CHOLEsky decomposition.

AUTHOR : Melanie Prague Daniel Commenges Julia Drylewicz Jeremy guedj Rodolphe Thiebaut

DESCRIPTION :

CHOLEsky decomposition of positive definite symmetric matrix to solve Ax = b.

MODIFICATION :

01/09/2012 - Prague - Refactoring

INFORMATIONS:

Parameters:
[in,out]a
[in]k
[in]nq
[out]idpos

Definition at line 393 of file tools.f90.

Referenced by funcpa(), inflateDiag(), marquardt(), and optim().

Here is the caller graph for this function:

subroutine dmaxt ( double precision,intent(out)  maxt,
double precision,dimension(m),intent(in)  delta,
integer,intent(in)  m 
)

Find maximum in a vector.

AUTHOR : Melanie Prague Daniel Commenges Julia Drylewicz Jeremy guedj Rodolphe Thiebaut

DESCRIPTION :

Give the maximum value in a vector in absolute value

MODIFICATION :

01/09/2012 - Prague - Refactoring

INFORMATIONS:

Parameters:
[in]mVector length
[in]deltaVector where to find the maximum

Definition at line 348 of file tools.f90.

Referenced by marquardt(), and optim().

Here is the caller graph for this function:

subroutine dmfsd ( double precision,dimension(n*(n+1)/2),intent(inout)  A,
integer,intent(in)  n,
double precision,intent(in)  eps,
integer,intent(inout)  ier 
)

Factorize a given symetric matrix.

AUTHOR : Melanie Prague Daniel Commenges Julia Drylewicz Jeremy guedj Rodolphe Thiebaut

DESCRIPTION :

This is used in choleski decomposition

MODIFICATION :

01/09/2012 - Prague - Refactoring

INFORMATIONS:

Parameters:
[in,out]a
[in]n
[in,out]eps
[in,out]ier

Definition at line 531 of file tools.f90.

Referenced by dsinv().

Here is the caller graph for this function:

subroutine dsinv ( double precision,dimension(n*(n+1)/2),intent(inout)  A,
integer,intent(in)  n,
double precision,intent(inout)  eps,
integer,intent(inout)  ier,
double precision,intent(inout),optional  det 
)

Matrix inversion.

AUTHOR : Melanie Prague Daniel Commenges Julia Drylewicz Jeremy guedj Rodolphe Thiebaut

DESCRIPTION :

Inversion of a symetric matrix. WARNING: ier should be equal to 0 in input.

MODIFICATION :

01/09/2012 - Prague - Refactoring

INFORMATIONS:

Parameters:
[in,out]a
[in]n
[in,out]det
[in,out]ier
[in,out]eps

Definition at line 663 of file tools.f90.

References dmfsd().

Referenced by funcpa(), LCVa(), marquardt(), and optim().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine FINDInv ( double precision,dimension(n,n),intent(in)  matrix,
double precision,dimension(n,n),intent(out)  inverse,
INTEGER,intent(in)  n,
INTEGER,intent(out)  errorflag 
)

Matrix Inversion (2)

AUTHOR : Melanie Prague Daniel Commenges Julia Drylewicz Jeremy guedj Rodolphe Thiebaut

DESCRIPTION :

Inversion of matrix in a matricial way.

MODIFICATION :

01/09/2012 - Prague - Refactoring

INFORMATIONS:

Parameters:
[in]nMatrx length
[in]matrixMatrix to invert
[out]errorflagError status
[out]inverseInverted matrix

Definition at line 907 of file tools.f90.

Referenced by funcpa().

Here is the caller graph for this function:

subroutine inflateDiag ( double precision,dimension(m*(m+3)/2),intent(inout)  v,
integer,intent(in)  m 
)

Inflate a matrix diagonal.

AUTHOR : Melanie Prague Daniel Commenges Julia Drylewicz Jeremy guedj Rodolphe Thiebaut

DESCRIPTION :

Inflate a matrix diagonal to make it inversible.

MODIFICATION :

01/09/2012 - Prague - Refactoring

INFORMATIONS:

Parameters:
[in,out]vHessian matrix
[in]mNumber of parameters

Definition at line 822 of file tools.f90.

References dchole(), ToleranceThreshold::gonfle_da, ToleranceThreshold::gonfle_dm, and ToleranceThreshold::gonfle_ga.

Referenced by funcpa().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine MATMULT ( integer  n,
real*8,dimension(0:n-1,0:n-1)  A,
real*8,dimension(0:n-1,0:n-1)  B,
real*8,dimension(0:n-1,0:n-1)  C 
)

Definition at line 210 of file tools.f90.

subroutine MatPrint ( character*(*)  s,
integer  n,
real*8,dimension(0:n-1,0:n-1)  A 
)

Definition at line 165 of file tools.f90.

DOUBLE PRECISION PHID ( DOUBLE PRECISION,intent(in)  Z)

Normal distribution probabilities.

AUTHOR : Alan Miller

DESCRIPTION :

This subroutine is accurate to 1D-15. Based upon algorithm 5666 for the error function, from: Hart, J.F. et al, 'Computer Approximations', Wiley 1968

MODIFICATION :

30/03/1986 - Miller - Last revision odf PHID

01/09/2012 - Prague - Refactoring

INFORMATIONS:

Parameters:
[in]Zno. of standard deviations from the mean.

Definition at line 257 of file tools.f90.

DOUBLE PRECISION RNRNOR ( )

Normal random numbers with zero mean and unit standard deviation.

AUTHOR : Marsaglia G.

DESCRIPTION :

Normal law realization generator adapted from G. Marsaglia and W. W. Tsang: "A Fast, Easily Implemented Method for Sampling from Decreasing or Symmetric Unimodal Density Functions" SIAM J. Sci. Stat. Comput. 5(1984), pp. 349-359.

MODIFICATION :

01/09/2012 - Prague - Refactoring

INFORMATIONS:

Definition at line 1702 of file tools.f90.

DOUBLE PRECISION RNRUNI ( )

Uniform (0, 1) random number generator.

AUTHOR : L Ecuyer Pierre

DESCRIPTION :

Uniform law realization generator. See L Ecuyer, Pierre (1996),"Combined Multiple Recursive Random Number Generators" Operations Research 44, pp. 816-822.

MODIFICATION :

01/09/2012 - Prague - Refactoring

INFORMATIONS:

Definition at line 1791 of file tools.f90.