[Coin-ipopt] Re: some problems about CUTEr interface
John Hedengren
john.hedengren at gmail.com
Fri Feb 3 13:16:28 EST 2006
Zaiwen,
Thanks for the info. The problem occured because IPOPT (ipoma.f) opened a
file called OUTSDIF.d (UNIT=60) and then passed the unit number to CSETUP
subroutine of the CUTEr package. CUTEr was compiled with Intel Fortran and
IPOPT with gfortran. Apparently they don't share open files well. There
were no linking issues and I didn't have to do steps #1 or #3. I just
recompiled CUTEr and SIFDEC with g95.
Another quick piece of advise for those compiling CUTEr and SIFDEC with g95
option: I had to make a symbolic link because they changed the name of the
compiler for the new compiler name in Fedora Core 4.
ln /usr/bin/gfortran /usr/bin/g95 --symbolic
-John
2006/2/2, Zaiwen Wen <zw2109 at columbia.edu>:
>
>
> My configuration for Ipopt is:
>
> ./configure --with-blas="-L/opt/intel/mkl721/lib/32 -lmkl_lapack
> -lmkl_ia32 -lguide -lpthread" \
> CXXLIBS='-L/usr/lib/gcc/i386-redhat-linux/4.0.2 -lstdc++ -lm -lgcc '
> F77=gfortran
>
> My configuration for CUTEr is:
> CUTEr.large.pc.lnx.g95
>
>
> I have the following experience:
>
> 1. in File /Apps/CUTErInterface/CUTErInterface.f
>
> ----------------------------------------
> C
> C Call IPOPT
> C
> IPROBLEM = IPCREATE(N, X_L, X_U, M, G_L, G_U, NELE_JAC, NELE_HESS,
> 1 EV_F, EV_G, EV_GRAD_F, EV_JAC_G, EV_HESS)
>
> ---------------------------------------
>
> should be:
>
> --------------------------------------
>
>
> IPROBLEM = IPCREATE(N, X_L, X_U, M, G_L, G_U, NELE_JAC, NELE_HESS,
> 1 IDX_STY, EV_F, EV_G, EV_GRAD_F, EV_JAC_G, EV_HESS)
>
> one should also add definition:
> integer IDX_STY
> parameter (IDX_STY = 1 )
> ---------------------------------------
>
> The definition of the function "IPCREATE" is in file:
> /Interfaces/IpStdFInterface.c
>
>
> 2. According to my experience, if the fortran compiler for ipopt and CUTEr
> are different, there will be some conflictions during compilation when
> using "sdipo\ipo".
>
>
> 3.
>
> Since the new script "ipo" defines
> setenv SYSLIBS "`cat ${MYCUTER}/double/lib/ipo.liblist`",
> it will probably cause some problems for the following lines in the
> script "runpackage" in "CUTEr/mycuter/bin"
>
> $LOAD $FFLAGS -o ${PAC}min ELFUN.o GROUP.o RANGE.o $EXTER $DRIVER \
> $SUBR $ALT_LIB_PATH -L$LIBDIR $SYSLIBS -lcuter $BLAS $LAPACK
>
> After these two lines modifed to:
>
> $LOAD $FFLAGS -o ${PAC}min ELFUN.o GROUP.o RANGE.o $EXTER $DRIVER \
> $SUBR $ALT_LIB_PATH -L$LIBDIR -lcuter $SYSLIBS
>
> sdipo and ipo work perferctly.
>
>
>
> Wish these information will be helpful.
>
>
> Best Regards!
> Zaiwen
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://list.coin-or.org/pipermail/ipopt/attachments/20060203/8dab1cf8/attachment.html
More information about the Coin-ipopt
mailing list