-
Notifications
You must be signed in to change notification settings - Fork 133
Troubleshooting
We strongly encourage using conda
to maintain the Python libraries on which RAVEN depends. Note that conda can be installed locally without administrative privileges on most systems. However, if conda
is not available, the necessary libraries and versions can be obtained by the following call:
cd raven
python scripts/TestHarness/testers/RavenUtils.py --conda-install
This will print to terminal a command that includes a listing of all the libraries, some with specific tagged versions. These libraries may be installed through pip
or other Python or OS package managers, after which RAVEN can be run.
If library versions other than the specific tagged versions are installed, RAVEN will exit when run and complain of improper libraries for the version of RAVEN you are trying to run.
If there are missing libraries, (for example if you get errors like ImportError: No module named sklearn
) then the Installing RAVEN Libraries page should be used to try and fix the problem.
In the raven directory, the command:
./run_tests --library_report
can be used to see which libraries are being used and which are missing.
Older versions of the MOOSE redistributable package (From http://mooseframework.org/getting-started/osx/ ) contains everything needed to run RAVEN except the scikit-learn package for Python. If this package is missing, running the tests looks like this...
[RAVENUser][~/projects/raven]> ./run_tests
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named sklearn
No raven_libs found and missing modules sklearn
core_example.PWR_CoreChannel_pre_dist.................................... skipped (Broken for unknown reason)
core_example.PWR_CoreChannel_controlled_var_csv......... skipped (Broken, and Josh is not sure what it te...)
core_example.TypPWR_Mult_CoreChannels_control_csv................................. skipped (Relap issue #111)
core_example.TypPWR_Mult_CoreChannels_control..................................... skipped (Relap issue #111)
check_errors.missing_python_file.......................................................................... OK
core_example.simple_branch................................................................................ OK
core_example.pump......................................................................................... OK
DtControlAndProximity.Dt_controlling_test................................................................. OK
DtControlAndProximity.TimeController_test................................................................. OK
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named sklearn
framework.simple_framework skipped (Missing python modules: sklearn PYTHONPATH=/Users/bobk/raven_libs/pylibs/lib/python2.7/site-packages/:/opt/moose/distcc-3.2rc1/lib/python2.6/site-packages)
Fortunately, the redistributable includes the Miniconda package manager which can be used to install it.
[RAVENUser][~]> sudo su
Password:
sh-3.2# conda install scikit-learn
Fetching package metadata: ....
Solving package specifications: .
Package plan for installation in environment /opt/moose/miniconda:
The following packages will be downloaded:
package | build
---------------------------|-----------------
sqlite-3.8.4.1 | 1 824 KB
tk-8.5.18 | 0 1.9 MB
conda-env-2.1.4 | py27_0 15 KB
nose-1.3.4 | py27_1 189 KB
numpy-1.9.2 | py27_0 2.9 MB
requests-2.6.0 | py27_0 594 KB
setuptools-15.0 | py27_0 436 KB
conda-3.10.1 | py27_0 164 KB
pip-6.1.1 | py27_0 1.4 MB
scikit-learn-0.16.0 | np19py27_0 3.3 MB
------------------------------------------------------------
Total: 11.7 MB
The following NEW packages will be INSTALLED:
nose: 1.3.4-py27_1
pip: 6.1.1-py27_0
scikit-learn: 0.16.0-np19py27_0
The following packages will be UPDATED:
conda: 3.10.0-py27_0 --> 3.10.1-py27_0
conda-env: 2.1.3-py27_0 --> 2.1.4-py27_0
numpy: 1.9.1-py27_0 --> 1.9.2-py27_0
requests: 2.5.3-py27_0 --> 2.6.0-py27_0
setuptools: 12.2-py27_0 --> 15.0-py27_0
sqlite: 3.8.4.1-0 --> 3.8.4.1-1
tk: 8.5.15-0 --> 8.5.18-0
Proceed ([y]/n)? y
Fetching packages ...
sqlite-3.8.4.1 100% |################################| Time: 0:00:01 650.17 kB/s
tk-8.5.18-0.ta 100% |################################| Time: 0:00:02 717.50 kB/s
conda-env-2.1. 100% |################################| Time: 0:00:00 203.41 kB/s
nose-1.3.4-py2 100% |################################| Time: 0:00:00 359.41 kB/s
numpy-1.9.2-py 100% |################################| Time: 0:00:05 554.83 kB/s
requests-2.6.0 100% |################################| Time: 0:00:00 639.57 kB/s
setuptools-15. 100% |################################| Time: 0:00:00 597.81 kB/s
conda-3.10.1-p 100% |################################| Time: 0:00:00 466.21 kB/s
pip-6.1.1-py27 100% |################################| Time: 0:00:01 771.29 kB/s
scikit-learn-0 100% |################################| Time: 0:00:04 865.69 kB/s
Extracting packages ...
[ COMPLETE ] |##################################################| 100%
Unlinking packages ...
[ COMPLETE ] |##################################################| 100%
Linking packages ...
[ COMPLETE ] |##################################################| 100%
sh-3.2#
If there are problems with distribution1D or interpolationND these are problems with the crow libraries. These can be built with make framework_modules
in the raven directory.
If some of the data can not be retrieved from the internet (or git clone or update commands fail) possibly the proxy is not being used. See INL proxy
On some systems (for example Ubuntu 16 and Windows 7) the default backend for matplotlib is set to Qt5Agg
, which may not be properly set up after installing libraries through conda. A simple fix is to change the default backend to something more generic, for example TkAgg
.
The matplotlib defaults file for the raven_libraries
conda environment is usually located in ~/miniconda2/envs/raven_libraries/lib/python2.7/site-packages/matplotlib/mpl-data/matplotlibrc
. If not, the location can be discovered via the following python commands (from here):
>>> import matplotlib
>>> matplotlib.matplotlib_fname()
'/home/foo/.config/matplotlib/matplotlibrc'
The keyword to change is "backend".
The problems using QT5Agg
seem not to be present if matplotlib
is updated to version 2.1.1 or later. RAVEN will likely move to this library version in a future update.