neworder
neworder is a microsimulation framework inspired by openm++, MODGEN and, to a lesser extent, the python-based LIAM2 tool, and can be thought of as a powerful best-of-both-worlds hybrid of MODGEN and LIAM2. Modellers can define their models in a simple, well-known language, yet benefit from the efficiency of compiled code and parallel execution:
- python module: easy to install and integrate, available on all common platforms
- low barriers to entry: users need only write standard python code, little or no new coding skills required.
- flexibility: models are specified in python code, so can be arbitrarily complex
- data agnosticism: the framework does not impose any constraints on data formats for either sources or outputs.
- reusability: leverage python modules like numpy, pandas and matplotlib.
- reproducibility: built-in, customisable random generator seeding strategies
- speed: the module is predominantly written in optimised C++ and provides fast Monte-Carlo, statistical and data manipulation functions.
- compatibility: operate directly on numpy arrays and pandas DataFrames
- scalability: can be run on a desktop or a HPC cluster, supporting parallel execution using MPI.
System Requirements
neworder requires python 3.12 or above and runs on 64-bit linux, OSX and Windows platforms. To take advantage of the optional parallel execution functionality, you will also need an MPI implementation, such as open-mpi or mpich. Note that MPI packages are not currently available for Windows via pip - Windows users must install an MPI runtime separately (e.g. MS-MPI) and use the parallel-native extra.
Installation
The package can be installed from pypi.
For a basic (serial only) installation,
pip install neworder
or to enable parallel execution using MPI use one of the following:
pip install neworder[parallel-openmpi] # install the openmpi runtime in the virtual environment
pip install neworder[parallel-mpich] # install the mpich runtime in the virtual environment
pip install neworder[parallel-native] # use the system's mpi runtime
and to enable the (geo)spatial graph functionality:
pip install neworder[geospatial]
or a combination of the two:
pip install neworder[parallel-openmpi,geospatial]
Documentation
To get started first see the detailed documentation here. Then, check out "Hello World" and the other examples.
Using an AI coding agent?
neworder ships an installable agent skill - run neworder-skill --install and your agent gets a
built-in reference for writing neworder models correctly. See
Agent Skill.
Metadata
Release files for neworder 1.7.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| neworder-1.7.2.tar.gz | 47.5 kB | Details |
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| neworder-1.7.2-cp314-cp314t-win_amd64.whl | CPython 3.14 | CPython 3.14 free-threading | Windows x86-64 | Details |
| neworder-1.7.2-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl | CPython 3.14 | CPython 3.14 free-threading | Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 | Details |
| neworder-1.7.2-cp314-cp314t-macosx_11_0_arm64.whl | CPython 3.14 | CPython 3.14 free-threading | macOS 11.0+ ARM64 | Details |
| neworder-1.7.2-cp314-cp314-win_amd64.whl | CPython 3.14 | CPython 3.14 | Windows x86-64 | Details |
| neworder-1.7.2-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl | CPython 3.14 | CPython 3.14 | Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 | Details |
| neworder-1.7.2-cp314-cp314-macosx_11_0_arm64.whl | CPython 3.14 | CPython 3.14 | macOS 11.0+ ARM64 | Details |
| neworder-1.7.2-cp313-cp313-win_amd64.whl | CPython 3.13 | CPython 3.13 | Windows x86-64 | Details |
| neworder-1.7.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl | CPython 3.13 | CPython 3.13 | Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 | Details |
| neworder-1.7.2-cp313-cp313-macosx_11_0_arm64.whl | CPython 3.13 | CPython 3.13 | macOS 11.0+ ARM64 | Details |
| neworder-1.7.2-cp312-cp312-win_amd64.whl | CPython 3.12 | CPython 3.12 | Windows x86-64 | Details |
| neworder-1.7.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl | CPython 3.12 | CPython 3.12 | Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 | Details |
| neworder-1.7.2-cp312-cp312-macosx_11_0_arm64.whl | CPython 3.12 | CPython 3.12 | macOS 11.0+ ARM64 | Details |
Total release size: 3.9 MB
Release files / neworder-1.7.2.tar.gz
| Download URL | neworder-1.7.2.tar.gz |
|---|---|
| Size | 47.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fe5e334dc0e4fad335f3976f5cd5506ede52f511e55779f50c50c8112e33586f
|
|
BLAKE2b-256 checksum How to use checksums |
4ecd75ceb15e1ba36ccb1ea686213eac47b9cd72190d1839cd95b899a54b5eef
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / neworder-1.7.2-cp314-cp314t-win_amd64.whl
| Download URL | neworder-1.7.2-cp314-cp314t-win_amd64.whl |
|---|---|
| Size | 419.6 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading Windows x86-64 |
|
SHA-256 checksum How to use checksums |
ab5c8e190a2d0eec1114204ba5c68744eed344b00bb4b93686cc20c9f0562cbc
|
|
BLAKE2b-256 checksum How to use checksums |
bf1116e316c7856a18630424e37c89ecf5e35a89abaeb637795999f04367e0e1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / neworder-1.7.2-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | neworder-1.7.2-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 307.4 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
a66e370d812a965915680d71c7532a286b344552b15fe9de026cea0c464f7790
|
|
BLAKE2b-256 checksum How to use checksums |
15fd9a584331da953e0b5535fcd64a28724c58e8832ee36daab9c109660b47bd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / neworder-1.7.2-cp314-cp314t-macosx_11_0_arm64.whl
| Download URL | neworder-1.7.2-cp314-cp314t-macosx_11_0_arm64.whl |
|---|---|
| Size | 263.7 kB |
| Tags | CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
4c986403cc1316c016ebd66032023bcf9915560d06a7881b7d906e279442d24b
|
|
BLAKE2b-256 checksum How to use checksums |
d9705c10bcc85987610ddc8d8c825021c7a20138763d5e619e0f30ddaf486809
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / neworder-1.7.2-cp314-cp314-win_amd64.whl
| Download URL | neworder-1.7.2-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 409.3 kB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
c1141a2994150e298948e9145c061e8c2419470135e79c1d32a76a56dbe683e7
|
|
BLAKE2b-256 checksum How to use checksums |
269fd151aaee9c4fd0f7557f7017b5b16942ba127a72a360518c555e4854e8d0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / neworder-1.7.2-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | neworder-1.7.2-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 310.4 kB |
| Tags | CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
56ad3114037137d20b20d2ee4a3e839ffffc3d30bc9e3d293708b29eed77a60d
|
|
BLAKE2b-256 checksum How to use checksums |
93ac0c4507e3cd8e13f465f9f40f5281da74b5c229da58115ec4bed4139b54e6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / neworder-1.7.2-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | neworder-1.7.2-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 250.2 kB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
56abe7dcd42b86d4d80abdcce23776a92081a7e0037b0205f9943dc362e1f112
|
|
BLAKE2b-256 checksum How to use checksums |
6bcf02925569616db0dfb60fc1d74610f2e51d26e11d98f36a148e77e4cc3a60
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / neworder-1.7.2-cp313-cp313-win_amd64.whl
| Download URL | neworder-1.7.2-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 399.3 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
79f1df6a24deeea3c89b00937431c7f88fb36929a161e9ba704089848ba40172
|
|
BLAKE2b-256 checksum How to use checksums |
064f876539f6c5cd340bab922831b2c739a98da52e1f7497eff62589f8b8e13b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / neworder-1.7.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | neworder-1.7.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 310.6 kB |
| Tags | CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
f830afd2d904948db4955f458f84d6a9589747040a2301ff9379c6ed976addcc
|
|
BLAKE2b-256 checksum How to use checksums |
1dab77c86fbf7a8f5b368fa1b3765c2673ac5e6d1f5288ffa573a6f33127fd19
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / neworder-1.7.2-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | neworder-1.7.2-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 249.8 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
34c8454b028b05c20721c7e0b10b1fed4c216f4c90a9539200210e4f75eecc45
|
|
BLAKE2b-256 checksum How to use checksums |
329c7578bd8d73ce5920cfceb2241c7b07fd02b3837d8a959b8502fd6f2357ab
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / neworder-1.7.2-cp312-cp312-win_amd64.whl
| Download URL | neworder-1.7.2-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 399.3 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
50f7b1d60e35dcb1fb9540885e07f228f964094d25ff8bc9f939d6191d15e164
|
|
BLAKE2b-256 checksum How to use checksums |
32037a16ffef3c9f539d43464ca92e91608c3438fd203d0f4a9396c4254f5a34
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / neworder-1.7.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | neworder-1.7.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 310.8 kB |
| Tags | CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
6d5666d32480dce964ffaecf0b08d1b763faf881eedaf99fdff7639e364dc50d
|
|
BLAKE2b-256 checksum How to use checksums |
a38389532194a7055cac7a6e8858b79f2710ed693b9fc24b309e68689f48a504
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / neworder-1.7.2-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | neworder-1.7.2-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 249.7 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
e35e7531d504da5dfb18e49fb736faf9ccc74cdfd5a99eff3d8190a7f9fa04ee
|
|
BLAKE2b-256 checksum How to use checksums |
5dd66dcbfa9d72f5bc70d80e59ef5ec2845c1aa2fce35a359b783c5fc64634c6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|