Skip to main content

A software platform for analysing the structure and function of complex systems

Project description

Qualitative Mathematical Modelling (QMM) in Python

QMM Logo

Qualitative Mathematical Modelling (QMM) is a method for analysing the structure of complex systems where general causal relationships are known but precise quantitative data are lacking. By utilising signed digraphs to visualise network structure, QMM enables users to build models of real-world systems and generate scientifically robust and testable predictions of system response to perturbations. As an open-source software tool, QMM provides insights into system behaviour for researchers and practitioners across various fields, including ecology, natural resource management, epidemiology, economics, and the social sciences.

Features

  • Interactive web application for creating signed digraph (network) models representing the mathematical structure of a complex system.
  • Python package (qmm) for qualitative mathematical modelling, including core modules for defining model structure, stability analysis, perturbation analysis and making qualitative predictions.

Contact

For any additional information or questions, please contact:

Jayden Hyman: j.hyman@uq.edu.au

How to use

  1. Install Python and required packages:

    Option 1: Using Anaconda and JupyterLab (Recommended)

    a. Install Anaconda from https://www.anaconda.com/products/distribution

    b. Launch Anaconda Navigator

    c. Create a new environment:

    • Click on "Environments" in the left sidebar
    • Click "Create" at the bottom
    • Name your environment (e.g., "qmm") and select Python 3.10
    • Click "Create"
    • In the "Environments" list, click on your newly created environment

    d. Install JupyterLab:

    • With your new environment selected, go to the "Home" tab
    • Find JupyterLab in the list of applications
    • Click "Install"

    This method uses Anaconda's default packages, which include NumPy, SymPy, NetworkX, Pandas, Numba, and Graphviz. JupyterLab provides an integrated development environment for running QMM package functions.

    Option 2: Using Miniconda

    a. Install Miniconda from https://docs.conda.io/en/latest/miniconda.html

    b. Open a Miniconda prompt and create a new environment:

    conda create -n qmm python=3.10
    conda activate qmm
    

    c. Install the required packages:

    conda install numpy=1.26.4 networkx=3.3 pandas=2.0.2 numba=0.60.0 sympy=1.13
    conda install -c conda-forge graphviz=0.20.3
    
  2. Use the web application to create signed digraph models: Open in browser

  3. The qmm.ipynb file provides core functions to analyse signed digraph models. To get started with analysing your model, open this file in JupyterLab or your preferred Python IDE.

Documentation

Detailed documentation for the qmm package and its modules is not currently available.

Licensing

This model is licensed under a BSD 3-Clause License. See LICENSE.md for further information.

Attribution

A Zenodo will be available in the near future for attribution.

Contributing

We welcome contributions to improve and expand the QMM software. As the project is in its early stages of development, we appreciate your patience and support in helping us refine the software.

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

qmm_core-0.2.7.tar.gz (14.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qmm_core-0.2.7-py3-none-any.whl (13.9 kB view details)

Uploaded Python 3

File details

Details for the file qmm_core-0.2.7.tar.gz.

File metadata

  • Download URL: qmm_core-0.2.7.tar.gz
  • Upload date:
  • Size: 14.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for qmm_core-0.2.7.tar.gz
Algorithm Hash digest
SHA256 96e02b4194e38323fd5ed5a4a8cc445da9c31e704b6c48669f69af9e93429f55
MD5 a51ce83748b6862036fc9eec9250a0eb
BLAKE2b-256 dc0b0cebead220f9444a9095d84edacdb4b3e9894a7c5c7ea3afd43fd5e7a08c

See more details on using hashes here.

File details

Details for the file qmm_core-0.2.7-py3-none-any.whl.

File metadata

  • Download URL: qmm_core-0.2.7-py3-none-any.whl
  • Upload date:
  • Size: 13.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for qmm_core-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 6d1d89102b87ee96be4d7fd46ad9364045a18e8503037030dfbff1c3bcb9ac55
MD5 910f5cbb3369334ca962d8c204beb186
BLAKE2b-256 f9309320699d8a433e6ed4fd1ec5aec3c335193d1d5bca64035738d039813b72

See more details on using hashes here.

Supported by

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