Skip to main content

An ambient noise package

Project description

NoiseFlow

Prerequisites

NoiseFlow now supports Clang and GCC compiler in MacOS and Linux system separately, and all installation processes are under the conda environment, and we recommend to use miniconda. Make sure to install the following pre-packages before installing noiseflow:

If you use Clang in Mac, please install OpenMP via brew as following:

brew install openmp

And use pip and conda to install the following packages:

pip install joblib

conda install -c conda-forge numpy scipy matplotlib 
conda install -c conda-forge obspy
conda install -c conda-forge fftw
conda install -c conda-forge pybind11
conda install -c conda-forge xtensor xsimd xtl xtensor-blas xtensor-python
conda install -c conda-forge xtensor-fftw  #(usually failed at most time)  

The xtensor-fftw and KFR need to be installed from source, first download them:

git clone https://github.com/OUCyf/noiseflow.git
cd noiseflow
git submodule init
git submodule update

Note the xtensor-fftw do not support M1 chip, and if it is failed to install via conda, you can install it from source into conda environment as $CONDA_PREFIX

cd ./extern/xtensor-fftw
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=$CONDA_PREFIX
make install

The KFR package is C++ DSP framework, should be installed in ./extern/kfr from source

cd ./extern/kfr
mkdir build && cd build
cmake ..
make install

Installation

Now you can install NoiseFlow. If you use MacOS, please make sure to use Clang as the complier

export CXX=clang++
# unset CXX
python setup.py install

If you use Linux, please use GCC as the compiler

export CXX=g++-13
python setup.py install

If you use HPC with module tool, you can use both Clang and GCC, for example using NOTS in Rice University.

# use gcc
module load GCC/13.1.0
export CXX=g++
python setup.py install
INCLUDE_CMAKE_EXTENSION=1 pip install .

# use clang
module load GCCcore/11.2.0
module load Clang/13.0.1
export CXX=clang++
python setup.py install
conda install -c conda-forge stockwell

NOISEFLOW_USE_CPP=1 pip install --no-binary :all: noiseflow --no-cache-dir

git submodule add https://gitclone.com/github.com/kfrlib/kfr.git extern/kfr

Noiseflow is dual-licensed, available under both commercial and apache license.

If you want to use noiseflow in a commercial product or a closed-source project, you need to purchase a Commercial License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

noiseflow-0.0.1a3.tar.gz (54.1 kB view hashes)

Uploaded Source

Built Distribution

noiseflow-0.0.1a3-cp39-cp39-macosx_13_0_arm64.whl (843.3 kB view hashes)

Uploaded CPython 3.9 macOS 13.0+ ARM64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page