A finite element library.
At your own peril.
First, you need some external dependencies
sudo apt-get install git swig3.0 cmake doxygen python3-dev python3-numpy \
libboost-all-dev libeigen3-dev libopenblas-dev libmetis-dev libmumps-seq-dev \
libarpack2-dev libomp-dev gmsh
Then, you need to check out the source code
git clone https://github.com/nutofem/nuto.git
Create a build directory and switch to it
mkdir nuto/build && cd nuto/build
Run cmake
cmake ..
Once this ran without errors, you can issue make (-j4
for parallel building)
make -j4
If you want to use the python module, and run all the tests, you need to add the module path to your environment
export PYTHONPATH=<path/to/nuto/build/python>:$PYTHONPATH
In the end, run the test suite to see if all went well
make test
Name | Version | Description |
---|---|---|
CMake | ≥ 3.0 | Build system |
Boost | ≥ 1.54 | General purpose C++ libraries |
Eigen | ≥ 3.2 | C++ template library for linear algebra |
Python | ≥ 3.4 | Python programming language |
NumPy | ≥ 1.8 | Linear algebra in Python |
OpenBLAS | ≥ 0.2.8 | Optimized BLAS library |
METIS | ≥ 5.1 | Serial graph partitioning and fill-reducing matrix ordering |
MUMPS | 4.10 | Parallel sparse direct solver |
OpenMP | ≥ 3.7 | Management of multiple OpenMP threads |
ARPACK | ≥ 3.1.5 | Solver for large scale eigenvalue problems |
Sure, take a look at our documentation.