Skip to content

Commit

Permalink
Update to version 1.2 and rebuild docs
Browse files Browse the repository at this point in the history
  • Loading branch information
jfowkes committed Feb 21, 2022
1 parent 214927c commit 39b9da1
Show file tree
Hide file tree
Showing 122 changed files with 4,237 additions and 5,710 deletions.
Binary file modified docs/_build/doctrees/building.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/environment.pickle
Binary file not shown.
Binary file modified docs/_build/doctrees/example.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/functions/pycutest.all_cached_problems.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/functions/pycutest.clear_cache.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/functions/pycutest.find_problems.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/functions/pycutest.import_problem.doctree
Binary file not shown.
Binary file not shown.
Binary file modified docs/_build/doctrees/functions/pycutest.problem_properties.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/history.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/index.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/install.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/interface.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/methods/pycutest.CUTEstProblem.cons.doctree
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified docs/_build/doctrees/methods/pycutest.CUTEstProblem.hess.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/methods/pycutest.CUTEstProblem.hprod.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/methods/pycutest.CUTEstProblem.ihess.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/methods/pycutest.CUTEstProblem.isphess.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/methods/pycutest.CUTEstProblem.jprod.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/methods/pycutest.CUTEstProblem.lagjac.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/methods/pycutest.CUTEstProblem.obj.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/methods/pycutest.CUTEstProblem.objcons.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/methods/pycutest.CUTEstProblem.report.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/methods/pycutest.CUTEstProblem.scons.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/methods/pycutest.CUTEstProblem.slagjac.doctree
Binary file not shown.
Binary file modified docs/_build/doctrees/methods/pycutest.CUTEstProblem.sphess.doctree
Binary file not shown.
2 changes: 1 addition & 1 deletion docs/_build/html/.buildinfo
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 7441b43e250429d5c852ffb92b171d39
config: 2d2797a6bf2ca00b0716567d4ab5f467
tags: 645f666f9bcd5a90fca523b33c5a78b7
2 changes: 1 addition & 1 deletion docs/_build/html/_sources/building.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ We can check the properties of a specific problem with `problem_properties() <fu
print(sorted(probs)[:5])
# Properties of problem ROSENBR
print(pycuttest.problem_properties('ROSENBR'))
print(pycutest.problem_properties('ROSENBR'))
Which produces the output:

Expand Down
29 changes: 18 additions & 11 deletions docs/_build/html/_sources/history.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,29 @@ Version History
===============
This section lists the different versions of PyCUTEst and the updates between them.

Version 0.1 (6 Sep 2018)
------------------------
* Initial release of PyCUTEst
Version 1.2 (21 Feb 2022)
-------------------------
* Use setuptools instead of distutils
* Remove deprecated NumPy calls
* Improve macOS support
* Update documentation

Version 0.2 (6 Jun 2019)
------------------------
* Throw RuntimeError if invalid sif parameters provided
* Recognise local gfortran installation for Mac
* Update required NumPy and SciPy versions for Python 2.7
Version 1.1 (14 Feb 2022)
-------------------------
* Automatically add PYCUTEST_CACHE to PYTHONPATH at runtime (simplifies installation)

Version 1.0 (22 Apr 2020)
-------------------------
* Handle non-letter characters in SIF parameter names
* Fix unclosed file warnings
* Automatically check if PYCUTEST_CACHE variable is in system path

Version 1.1 (14 Feb 2022)
-------------------------
* Automatically add PYCUTEST_CACHE to PYTHONPATH at runtime (simplifies installation)
Version 0.2 (6 Jun 2019)
------------------------
* Throw RuntimeError if invalid sif parameters provided
* Recognise local gfortran installation for Mac
* Update required NumPy and SciPy versions for Python 2.7

Version 0.1 (6 Sep 2018)
------------------------
* Initial release of PyCUTEst
2 changes: 1 addition & 1 deletion docs/_build/html/_sources/index.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ Python interface to the CUTEst optimization test environment

**Release:** |version|

**Date:** 14 February 2022
**Date:** 21 February 2022

**Author:** `Jaroslav Fowkes <jaroslav.fowkes@maths.ox.ac.uk>`_ and `Lindon Roberts <https://lindonroberts.github.io/>`_

Expand Down
76 changes: 24 additions & 52 deletions docs/_build/html/_sources/install.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Additionally, the following python packages should be installed (these will be i
* NumPy 1.11 or higher (http://www.numpy.org/)
* SciPy 0.18 or higher (http://www.scipy.org/)

**Please Note:** Currently PyCUTEst only supports Mac and Linux. For Windows 10 (or later) users, PyCUTEst can be used through the `Windows Subsystem for Linux <https://docs.microsoft.com/en-us/windows/wsl/>`_, following the Linux installation instructions.
**Please Note:** Currently PyCUTEst only supports Mac and Linux. For Windows 10 (or later), PyCUTEst can be used through the `Windows Subsystem for Linux <https://docs.microsoft.com/en-us/windows/wsl/>`_, following the Linux installation instructions.

Installing CUTEst on Linux
--------------------------
Expand All @@ -28,7 +28,9 @@ These instructions do not include installation of the MATLAB interface. You will
$ git clone https://github.com/ralna/CUTEst ./cutest
$ git clone https://bitbucket.org/optrove/sif ./mastsif
Note that :code:`mastsif` contains all the test problem definitions and is therefore quite large. If you're short on space you may want to copy only the .SIF files for the problems you wish to test on.
Note that :code:`mastsif` contains all the test problem definitions and
is therefore quite large. If you're short on space you may want to copy
only the ``*.SIF`` files for the problems you wish to test on.

Next set the following environment variables in your :code:`~/.bashrc` to point to the installation directories used above:

Expand All @@ -45,17 +47,16 @@ Now we are ready to install CUTEst in double precision (requires :code:`gfortran

.. code-block:: bash
$ cd ./cutest
$ cd /path/to/cutest/cutest/
$ ${ARCHDEFS}/install_optrove
Do you wish to install GALAHAD (Y/n)? N
Do you wish to install CUTEst (Y/n)? Y
Do you require the CUTEst-Matlab interface (y/N)? N
Select platform: 6 # PC with generic 64-bit processor
Select operating system: 3 # Linux
Would you like to review and modify the system commands (y/N)? N
Select fortran compiler: 5 # GNU gfortran compiler
Select fortran compiler: 6 # GNU gfortran compiler
Would you like to review and modify the fortran compiler settings (y/N)? N
Select C compiler: 2 # generic GCC
Select C compiler: 8 # GCC
Would you like to review and modify the C compiler settings (y/N)? N
Would you like to compile SIFDecode (Y/n)? Y
Would you like to compile CUTEst (Y/n)? Y
Expand All @@ -69,15 +70,15 @@ And CUTEst should run from here. To test that the installation works, issue the
$ cd $SIFDECODE/src ; make -f $SIFDECODE/makefiles/$MYARCH test
$ cd $CUTEST/src ; make -f $CUTEST/makefiles/$MYARCH test
**Please Note:** *currently PyCUTEst only supports gfortran and uses the default version on your path (as returned by* :code:`gfortran -v` *). Please ensure this is the same version that you install CUTEst with above, this should be the case if you select the generic* :code:`GNU gfortran compiler` *as the fortran compiler in the installer above.*
**Please Note:** *currently PyCUTEst only supports gfortran and uses the default version on your path (as returned by* :code:`gfortran -v` *). Please ensure this is the same version that you install CUTEst with above otherwise you may experience segmentation faults, this should be the case if you select the generic* :code:`GNU gfortran compiler` *as the fortran compiler in the installer above.*

Installing CUTEst on Mac
------------------------
For simplicity, we recommend installing CUTEst using Homebrew as detailed below (but you can also install CUTEst manually by following the Linux installation instructions above). First it is important to ensure that you have the latest version of Xcode Command Line Tools installed (or the latest version of Xcode), please ensure this is the case by following `this guide <http://railsapps.github.io/xcode-command-line-tools.html>`_. Now install the Homebrew package manager:
Install CUTEst using Homebrew as detailed below (installing CUTEst manually on Mac is not supported). First it is important to ensure that you have the latest version of Xcode Command Line Tools installed (or the latest version of Xcode), please ensure this is the case by following `this guide <https://mac.install.guide/commandlinetools/index.html>`_. Now install the Homebrew package manager:

.. code-block:: bash
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Then you can easily install CUTEst:

Expand All @@ -87,36 +88,24 @@ Then you can easily install CUTEst:
$ brew install cutest --without-single --with-matlab # if using Matlab interface
$ brew install mastsif # if you want all the test problems
$ for f in "archdefs" "mastsif" "sifdecode" "cutest"; do \
$ echo ". $(brew --prefix $f)/$f.bashrc" >> ~/.bashrc; \
$ echo ". $(brew --prefix $f)/$f.bashrc" >> ~/.bashrc; \
$ done
**Please Note:** *you may see warnings such as* :code:`ld: warning: object file (RANGE.o) was built for newer macOS version (11.5) than being linked (10.15)` *when using PyCUTEst on Mac, to suppress these warnings please set the environment variable* :code:`MACOSX_DEPLOYMENT_TARGET` *to your current macOS version (e.g.* :code:`export MACOSX_DEPLOYMENT_TARGET=11.5` *in this example, you can make this permanent by adding it your* :code:`~/.bashrc` *file).*

Installing PyCUTEst using pip
-----------------------------
For easy installation, use `pip <http://www.pip-installer.org/>`_ as root:

.. code-block:: bash
$ [sudo] pip install pycutest
or alternatively *easy_install*:
For easy installation, use `pip <http://www.pip-installer.org/>`_:

.. code-block:: bash
$ [sudo] easy_install pycutest
If you do not have root privileges or you want to install PyCUTEst for your private use, you can use:

.. code-block:: bash
$ pip install --user pycutest
which will install PyCUTEst in your home directory.
$ pip install pycutest
Note that if an older install of PyCUTEst is present on your system you can use:

.. code-block:: bash
$ [sudo] pip install --upgrade pycutest
$ pip install --upgrade pycutest
to upgrade PyCUTEst to the latest version.

Expand All @@ -126,15 +115,14 @@ You will then need to create a folder which will store all your compiled problem
$ mkdir pycutest_cache
And set an environment variable to add this to tell PyCUTEst about this directory, by adding to your :code:`~/.bashrc` file:
And set an environment variable to tell PyCUTEst about this directory, by adding to your :code:`~/.bashrc` file:

.. code-block:: bash
export PYCUTEST_CACHE="/path/to/pycutest_cache"
If you do not set this environment variable, then PyCUTEst will create a cache folder of compiled problems inside your current working directory.


Manual installation of PyCUTEst
-------------------------------
Alternatively, you can download the source code from `Github <https://github.com/jfowkes/pycutest>`_ and unpack as follows:
Expand All @@ -148,41 +136,25 @@ PyCUTEst is written in pure Python and requires no compilation. It can be instal

.. code-block:: bash
$ [sudo] pip install .
$ pip install .
If you do not have root privileges or you want to install PyCUTEst for your private use, you can use:
**Please Note:** *don't forget to set up your cache and associated environment variable (see above).*

.. code-block:: bash
$ pip install --user .
which will install PyCUTEst in your home directory.

Don't forget to set up your cache and associated environment variable (see above).

To upgrade PyCUTEst to the latest version, navigate to the top-level directory (i.e. the one containing :code:`setup.py`) and rerun the installation using :code:`pip`, as above:
To upgrade PyCUTEst to the latest version, navigate to the top-level directory (i.e. the one containing :code:`setup.py`) and re-run the installation using :code:`pip`, as above:

.. code-block:: bash
$ git pull
$ [sudo] pip install . # with root privileges
$ pip install .
Testing
-------
If you installed PyCUTEst manually, you can test your installation by running:

.. code-block:: bash
$ python setup.py test
Alternatively, this documentation provides some simple examples of how to run PyCUTEst.
This documentation provides some simple examples of how to run PyCUTEst.

Uninstallation
--------------
If PyCUTEst was installed using *pip* you can uninstall as follows:
You can uninstall PyCUTEst as follows:

.. code-block:: bash
$ [sudo] pip uninstall pycutest
otherwise you have to remove the installed files by hand (located in your python site-packages directory).
$ pip uninstall pycutest
Loading

0 comments on commit 39b9da1

Please sign in to comment.