#include "Functions.h" #include "Vector.h" #include "IntervalVector.h" #include "IntervalMatrix.h" #include "IntegerVector.h" #include "IntegerMatrix.h"For using specific procedures of this package it is necessary to include the following header file:
header_constants.hFor the solving algorithm, optimization and continuation algorithms it is necessary to include:
header_Solve_General_Interval.h header_Utilities_Interval.hand use the libraries lib_Solve_General.a, lib_Solve_Simplex.a and lib_Continuation.a.
For analyzing and solving univariate polynomial you need:
header_externe.h header_Analysis_Univariate.h header_Utilities_UP.h header_Solve_UP.hand use the library lib_UP.a. If you intend to solve and analyze trigonometric equation you need:
header_externe.h header_Analysis_Univariate.h header_Utilities_UP.h header_Trigo.hand use the library lib_UP.a and lib_Trigo.a. For using the parser you need:
header_parser.hand the libraries lib_Solve_General_Parser.a, lib_Parser.a.
In addition to these libraries you have to add either lib_No_Slave.a or lib_Slave.a respectively for a sequential and parallel implementation.
The link flags for using BIAS/Profil are:
-lProfilOpt -lProfilNLI -lProfilMISC -lProfil -lBiaswith the following flags (if you have installed the Profil library in /u/Profil and the ALIAS library in /u/ALIAS):
-I/u/Profil/incl -L/u/Profil -L/u/ALIASThe compilation flags must include the -fpermissive options that is necessary for using Profil. Hence a typical makefile will look like:
.C.o: g++ -O -fpermissive -I$(INCL) -w -c -o $*.o $< CC=g++ -g -w -O -fpermissive INCL=/u/ALIAS/Profil/incl LIB=/u/ALIAS/Profil INCLI=/u/ALIAS/Lib-solaris LIB_SOLVE=${INCLI}/lib_Solve_General.a ${INCLI}/lib_No_Slave.a LIB_UP=${INCLI}/lib_UP.a LIB_TRIGO=${INCLI}/lib_Trigo.a LIB_SIMPLEX=${INCLI}/lib_Solve_Simplex.a LIB_CONTINUATION=${INCLI}/lib_Continuation.a LD= -lProfilOpt -lProfilNLI -lProfilMISC -lProfil -lBias Test:Test.o $(CC) -I$(INCL) Test.C -o Test \ -L$(LIB) $(LIB_UP) $(LIB_TRIGO) $(LIB_CONTINUATION) \ $(LIB_SIMPLEX) $(LIB_SOLVE) $(LD) -lmNote that for using the current version you still need to use the Gnu C++ compiler version 2.95 and not higher. Indeed the BIAS/Profil package cannot be compiled with a higher version as it uses an "old" version of C++ (whatever this means for a language that is intended to be reusable ).
If you plan to use pvm for making a parallel implementation of your program then the flag -lm should be substituted by -lm -lpvm3 -lnsl -lm -ldl -lintl -lsocket on a SUN workstation and by -lm -lpvm3 -lnsl -lm -ldl on a PC running Linux. The LIB_SOLVE dependency has also to be modified to:
LIB_SOLVE=${INCLI}/lib_Solve_General.a ${INCLI}/lib_Slave.afor a better efficiency.