Installation#
To install the PyMarchenko library you will need Python 3.6 or greater.
Dependencies#
Our mandatory dependencies are limited to:
We advise using the Anaconda Python distribution
to ensure that these dependencies are installed via the Conda
package manager. This
is not just a pure stylistic choice but comes with some hidden advantages, such as the linking to
Intel MKL
library (i.e., a highly optimized BLAS library created by Intel).
Step-by-step installation for users#
Activate your Python environment, and simply type the following command in your terminal to install the PyPi distribution:
>> pip install pymarchenko
Alternatively, to access the latest source from github:
>> pip install https://github.com/DIG-Kaust/pymarchenko/archive/main.zip
or just clone the repository
>> git clone https://github.com/DIG-Kaust/pymarchenko.git
or download the zip file from the repository (green button in the top right corner of the main github repo page) and install PyMarchenko from terminal using the command:
>> make install
Step-by-step installation for developers#
Python environment#
Fork and clone the repository by executing the following in your terminal:
>> git clone https://github.com/your_name_here/pymarchenko.git
The first time you clone the repository run the following command:
>> make dev-install
If you prefer to build a new Conda enviroment just for PyMarchenko, run the following command:
>> make dev-install_conda
To ensure that everything has been setup correctly, run tests:
>> make tests
Make sure no tests fail, this guarantees that the installation has been successfull.
If using Conda environment, always remember to activate the conda environment every time you open a new bash shell by typing:
>> conda activate pymarchenko
Documentation#
You can also build the documentation locally by typing the following command:
>> make doc
Once the documentation is created, you can make any change to the source code and rebuild the documentation by simply typing
>> make docupdate
Our documentation is hosted on Github-Pages and created with a Github-Action triggered every time a commit is made to the main branch.