Seismo-VLAB  1.3
An Open-Source Finite Element Software for Meso-Scale Simulations
Ubuntu Operating System

Installation of SVL in Ubuntu (Debian) requires a C++ and Python. These libraries can be easily installed using Debian repositories and we strongly recommend this option.

For example, in Ubuntu 18.04, the complete installation can be done executing the following commands in a terminal:

Install C++/Fortran Compilers
sudo apt-get update
sudo apt-get install wget
sudo apt-get install bash
sudo apt-get install gcc
sudo apt-get install gfortran
sudo apt-get install g++
sudo apt-get install make

Install Python libraries
sudo apt-get install python3.8 (*)
sudo apt-get install python3-numpy
sudo apt-get install python3-scipy
sudo apt-get install python3-matplotlib

Install parallel computing libraries
sudo apt-get install libomp-dev
sudo apt-get install openmpi-bin
sudo apt-get install openmpi-common
sudo apt-get install libopenmpi-dev

Download and Install Eigen C++ library
wget -nv https://gitlab.com/libeigen/eigen/-/archive/3.3.9/eigen-3.3.9.tar.gz
tar -xvf eigen-3.3.9.tar.gz
mv eigen-3.3.9 eigen
sudo mv eigen /usr/include
rm eigen-3.3.9.tar.gz

Install partition and numerical libraries
sudo apt-get install metis
sudo apt-get install libmetis-dev
sudo apt-get install libparmetis-dev
sudo apt-get install libscotch-dev
sudo apt-get install libptscotch-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install liblapack-dev
sudo apt-get install libblacs-mpi-dev

Move metis library to Pre-Analysis folder
cp /usr/bin/mpmetis /SVL/01-Pre_Process/Metis

Install MUMPS direct solver library
sudo apt-get install libmumps-5.1.2 (*)

Install PETSc iterative solver library
sudo apt-get install petsc-dev

Compile the SVL library
cd /SVL/02-Run_Process
make -s DEBUG=False

Before compiling SVL, please check in the Makefile.mk that the mpi library path is right. This library can be locate at MPI_DIR = /usr/include/mpi or MPI_DIR = /usr/include/x86_64-linux-gnu/mpi.

Note
In Ubuntu 16.04 the same process can be done, but python3.5 and libmumps-4.10.0 should be employed at (*) for packages consistency.
In Ubuntu 20.04 the same process can be done, but python3.9 and libmumps-5.2.1 should be employed at (*) for packages consistency.
The previous list of steps can be employed in derived flavors such as Ubuntu MATE, Kubuntu, Xubuntu If SVL is compiled successfully, you should see the following message: SUCCESSFUL LINKAGE. The executable SeismoVLAB.exe was generated, as shown in the following figure:
UbuntuInstall.png