The repository holds the model of a unidirectional single mode FOPO based upon the system.
Updates in Version 2.0:
-
Introduction of the 7-band Banded Generalised Nonlinear Schrodinger equation for pulse propagation
-
Introduction of the Phase-modulation at every round trip for resonance to be reached
-
Use of Cython Memoryviews and Intel MKL libraries for compilation
-
Requirements:
Installation:
bash build_install.sh
Note: Pass 'cluster' as an argument if you do not have sudo. sudo is used to install mpich for multinode computations.
Testing (unit-tests):
source activate intel && pytest code_testing/test*.py
Execution of FOPO:
bash run_oscilator.sh rounds cores library && bash run_posprocess.sh
Note:
- rounds: Number of round trips
- cores: Number of cores to use
- library: mpi (Code uses mpi4py, needed for multiple nodes on cluster), joblib: Multicore computations, MKL: Runs with MKL libraries
Example: bash run_oscilator.sh 1000 4 mpi; will run the oscillator for 1000 rounds over 4 cores using mpi4py.