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.9.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.9-py3-none-any.whl (13.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: qmm_core-0.2.9.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.9.tar.gz
Algorithm Hash digest
SHA256 d67189fd1ff8126e5b891ebb3bdd7b6ae053c87d3b3715b5af7c5b9839dc7004
MD5 7d17761306bbbda57134afb773b33a1e
BLAKE2b-256 8a57ff36bbb0cde879a32307aab1d5334f8d13ca2b595962b30833e224acbdc2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: qmm_core-0.2.9-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.9-py3-none-any.whl
Algorithm Hash digest
SHA256 8042a5f4679fe741cbe505e1cfe9ffc9a9001a33acb95d97e2a7816377c981d0
MD5 0aa3cd123c78d76cf2b0372974f8d0cc
BLAKE2b-256 c239ed72be3661b283f13975c20cd7977b1edb5f4c89e598678cebf3bf57e56e

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