Skip to main content

Cortix is a Python library for system-level module coupling, execution, and analysis.

Project description

Cortix


Build Status PyPI version PyPI - Python Version AUR Binder

What is Cortix?

  • Cortix is a Python library for system-level module coupling, execution, and analysis.
  • Cortix takes as input a collection of computational modules and provides an environment for the coupling of those modules into a single simulation.
  • Cortix handles:
    • Communication between the modules
    • Numerical integration
    • Data visualization

The basic concepts in Cortix are the creation of an Application and a Simulation involving Tasks.

Installing

Cortix can be installed on any Unix-based machine via pip. Simply run

pip install cortix

to install the latest version of cortix.

Usage

Cortix is a library and it is best used when copied to its own directory, say inside a project directory of your choice, e.g., /somepath/myproject/cortix/, or anywhere else in your system, e.g., /somepath/cortix. Then add either /somepath/myproject/cortix to $PYTHONPATH or /somepath/cortix to $PYTHONPATH, respectively.

Cortix has a directory (examples/) that contains examples for input files, and a driver file. At the moment these input files are past files used in the development of Cortix. A driver file is needed to run Cortix. There is an example (examples/driver-cortix.py) that can be copied to say: /somepath/driver-test.py or /somepath/myproject/driver-test.py. An input configuration (xml) file is also needed. An example is provided in the examples/input/ directory (cortix-config.xml). Then to run Cortix, enter the directory of the driver and run the driver ./driver-test.py which will run an MPI process for Cortix and an additional MPI process for each launched module as a single MPI process or as a pool of processes. To capture the Cortix screen output of log messages (and other standard output messages), issue the bash command /driver-cortix.py >& screen.out under Linux (inspect the output file screen.out when the run is finished). Extensive logging of runtime information is stored in the <work_dir> directory specified in the cortix-config.xml input file.

Testing

Testing is facilitated through PyTest. To execute the tests, run the py.test command from the tests directory.

Developers

Documentation

Project details


Download files

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

Files for cortix, version 0.0.6
Filename, size File type Python version Upload date Hashes
Filename, size cortix-0.0.6-py3-none-any.whl (422.7 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size cortix-0.0.6.tar.gz (387.4 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page