Polynomial System Solver Code
pss5 is a polynomial system solver, under development.
Status: Beta
Brought to you by:
malajovich
pss - Polynomial System Solver Version 5.1 pre-release 1 By Gregorio Malajovich, gregorio@ufrj.br Copyright (C) 2002, 2015 Gregorio Malajovich. pss comes with ABSOLUTELY NO WARRANTY.; This is free software, and you are welcome to redistribute it under certain conditions; See the COPYING file for details (type cat COPYING) This is a PRE-RELEASE. It computes mixed volumes, all other actions depend on luck. EASY INSTALLING. You may download the latest version at http://sourceforge.net/projects/pss5/ You will need a linux system with some version of MPI installed (compilers and run-time environment), Lapack and Blas. You also need some usual programming tools like GNU automake, lex and yacc to build the executable. All those are provided in most linux distributions. Fweb and Latex are recommended. Unpack the source code: tar -xvf pss5-pre1.tar.gz This will create a directory pss5. Move to that directory: cd pss5 The easy way: just type ./autogen.sh ./configure Look at the output for errors or unmet dependencies. If all worked smoothly, there will be a Makefile in the current directory. Type make This should create the executable pss in the main directory. To install pss system-wide, you need superuser privileges. If you are in sudoers list, sudo make install Anothe possibility is to get into superuser mode (su -), move back to the directory where you built pss, and type make install If you want just to install pss in your account, the procedure is ./configure --prefix=<your home directory> make make install and no superuser privileges are needed. CHECKING YOUR MAXIMA VERSION You will need a recent version of maxima, and a lisp version tested with Maxima that can deal with linux pipes. Those seem to be lisp(CMUCL),scl(SCL),sbcl(SBCL),lisp(ACL),openmcl(OpenMCL) Enter wxmaxima. Type: system("ls") You should see files from your current directory. Now type: load("graphs"); It will take a while to compile the package. Then, draw_graph( icosahedron_graph()); You should see an icosahedron. If any of those steps failed, reinstall Maxima as explained below. Otherwise, jump to INSTALLING THE MAXIMA INTERFACE. INSTALLING THE MAXIMA INTERFACE 1) Enter in superuser mode, enter aptitude or synaptic and remove packages maxima, wxmaxima and related. 2) Still inside the package manager, install the libalien-wxwidgets-perl package Install a lisp package. I tested cmucl (available only for 32bits memory model) from http://www.cons.org/cmucl/download.html Another possibility is sbcl (available on debian). Unfortunately it cannot load the lapack routines to Maxima. su cd /usr/local tar -xvf ~gregorio/Downloads/cmucl-20f-x86-linux.tar.bz2 exit 3) Download maxima from http://maxima.sourceforge.net 4) Download wxmaxima source from http://wxmaxima.sourceforge.net 5) Unpack: tar -xvf Downloads/maxima-5.35.1.tar.gz tar -xvf Downloads/wxmaxima-14.12.1.tar.gz 6) Install maxima: cd maxima-5.35.1/ ./configure (Check the output to verify dependencies are OK) make su make install exit 7) Install wxmaxima cd wxmaxima-14.12.1/ ./configure (Check the output to verify dependencies are OK) make su make install exit RUNNING PSS ADVANCED INSTALLING. You may also want to choose between different compilers or implementations of a library. Some computer facilities use the "Modules" package to let you choose. For instance, you may have the choice between gcc/g++ with open MPI and LAPACK or Intel compiler with mvapich and Intel MKL. For each choice, you should load the appropriate modules, for instance: module load mvapich2 In case you want to link with MKL, you may want to uncomment a couple of lines in configure.ac, and then follow the instructions. Then you ./configure, make and make install. MORE ADVANCED INSTALLING. If you need to modify the makefiles, change the Makefile.am instead of Makefile.in and Makefile. Before running ./configure, run ./autogen.sh RUNNING WITH MAXIMA. Enter wxmaxima (assuming it is installed). Type: file_search_maxima:append (["/home/gregorio/pss5/src/maxima/$$$.mac"],file_search_maxima); where you replace the path with the path to your pss5 directory. Then, load presentation.wxm and press control-enter together to go from line to line. THE GUI (under development!) Install python-wxtools Install python3-opengl python-wxgtk3.0-dev wx-config --libs --gl-libs TROUBLESHOOTING Some linux distributions do not have Fweb. You may download the source, see http://w3.pppl.gov/~krommes/fweb.html If it fails to compile, there are two things you should check. In the file ratfor.c, comment out the deprecated definition #ifdef NEVER char * strpbrk; #endif In the "configure" script, replace termcap0."$O" by termcap0.o