This piece of software implements the Inexact Variable Metric method (IVM)
for convex constrained optimization introduced in [1] and [2].

[1] R. Andreani, E. G. Birgin, J. M. Martnez and J. Yuan, Spectral projected 
gradient and variable metric methods for optimization with linear inequalities,
IMA Journal of Numerical Analysis 25, pp. 221-252, 2005.

[2] E. G. Birgin, J. M. Martnez and M. Raydan, Inexact Spectral Projected 
Gradient Methods on Convex Sets", IMA Journal of Numerical Analysis 23, pp. 
539-559, 2003. 

Description of the files:
=========================

ivmhess.f      : implements the IVM subroutine with true Hessians
ivmmahessc.f   : is the main program to run ivmhess.f with the CUTE
                 collection problems
modchol.f      : is the Eskow-Schnabel modified Cholesky factorization as
                 published in acm-toms
runivmhess     : is the script required to compile the method toghether with
                 the CUTE subroutines

ivmispg.f      : implements the IVM subroutine with the Spectal approximation
                 of the Hessians
ivmmaispg.f    : is the main program to run ivmispg.f with the CUTE
                 collection problems
runivmispg     : is the script required to compile the method toghether with
                 the CUTE subroutines

ivmhess.f      : implements the IVM subroutine with true Hessians and sparse
                 Cholesky factorization specially implemented for the 3D
                 location problem described in the paper

ivmmahess.f    : is the main file for ivmhess.f which also generates the 3D
                 location problems

runall         : is a script which, toghether with ivmhess.f and ivmmahess.f
                 generates the experiments described in the paper

For an easy (and CUTE independet test) put files ivmmahess.f, ivmhess.f and 
runall in the same directory. Compile typing

f77 ivmmahess.f ivmhess.f -o ivmmahess  

and execute typing

runall.

The output that will be saved in a text file named ivmtable.txt.
