Skip to main content

System Identification Toolbox (Slow is Better)

Project description

pysib — System Identification Toolbox

Slow is Better. pysib is a Python toolbox for identifying discrete-time SISO dynamic systems from input/output data.

The package implements classical polynomial model structures used in system identification, with an emphasis on reliable model estimation rather than fast black-box routines.

Documentation: https://pysib.net/

Install

pip install pysib

Requirements: Python >= 3.9, NumPy, SciPy, Matplotlib, and LAPACK (Accelerate on macOS, liblapack on Linux).

For development from a local checkout:

pip install -e .

Quick Start

import numpy as np
import pysib
from scipy.signal import lfilter

N = 1000
u = np.sin(np.arange(N) * 2 * np.pi / 100)
y = lfilter([0, 1], [1, -0.9], u) + 0.01 * np.random.randn(N)

# Estimate an ARX model by least squares
theta, model = pysib.arx(u, y, na=1, nb=1, nz=1)

# Estimate an Output Error model with the nonlinear optimizer
theta, model = pysib.oe(u, y, nb=1, nf=1, nz=1)

# Use the estimated model
yp = pysib.predict(u, y, model)
ys = pysib.simulate(u, model)

All estimators return (theta, model), where theta is the estimated parameter vector and model is a dictionary with polynomial arrays A, B, C, D, and F.

Included API

  • Estimators: arx, iv, correlation, sm, oe, armax, bj, oe_filtered, armax_filtered, bj_filtered.
  • Model use: predict, simulate.
  • Utility: plota.

See https://pysib.net/ for the complete documentation.

Publications

Test

python3 -m pytest tests/ -v

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

pysib-0.2.0.tar.gz (15.3 kB view details)

Uploaded Source

Built Distributions

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

pysib-0.2.0-cp314-cp314t-musllinux_1_2_x86_64.whl (8.8 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

pysib-0.2.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pysib-0.2.0-cp314-cp314t-macosx_11_0_arm64.whl (39.8 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

pysib-0.2.0-cp314-cp314-musllinux_1_2_x86_64.whl (8.8 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

pysib-0.2.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pysib-0.2.0-cp314-cp314-macosx_11_0_arm64.whl (39.4 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

pysib-0.2.0-cp313-cp313-musllinux_1_2_x86_64.whl (8.8 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

pysib-0.2.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pysib-0.2.0-cp313-cp313-macosx_11_0_arm64.whl (39.3 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pysib-0.2.0-cp312-cp312-musllinux_1_2_x86_64.whl (8.8 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

pysib-0.2.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pysib-0.2.0-cp312-cp312-macosx_11_0_arm64.whl (39.3 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pysib-0.2.0-cp311-cp311-musllinux_1_2_x86_64.whl (8.8 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

pysib-0.2.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pysib-0.2.0-cp311-cp311-macosx_11_0_arm64.whl (39.3 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pysib-0.2.0-cp310-cp310-musllinux_1_2_x86_64.whl (8.8 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

pysib-0.2.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pysib-0.2.0-cp310-cp310-macosx_11_0_arm64.whl (39.3 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pysib-0.2.0-cp39-cp39-musllinux_1_2_x86_64.whl (8.8 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

pysib-0.2.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pysib-0.2.0-cp39-cp39-macosx_11_0_arm64.whl (39.2 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

Details for the file pysib-0.2.0.tar.gz.

File metadata

  • Download URL: pysib-0.2.0.tar.gz
  • Upload date:
  • Size: 15.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for pysib-0.2.0.tar.gz
Algorithm Hash digest
SHA256 a818c292a8e6c5748f29050f6523af13db10c909fdfa418afdfc30efc62fb25c
MD5 8264ec03d5f80b2ea4de5d1205a32024
BLAKE2b-256 3b3c98869935240a218f81639c254f25685da75ff870b40704cb5f7f586c306d

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 48eb18c7ef7c6af482466c12e0aa20d965f053cf3c69f5b7b7e196a41498a8d5
MD5 4273489367ec5184c25be61f367b6bd5
BLAKE2b-256 7cad7beaf0e6e888977bf6534441bc1c295136824bd1375b138e442759085c80

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1518565169cd1e237d04dab6ea3bda4e5abad0d2354c9fb7fad66c2ff309c11e
MD5 33374c56ea4cf6ffa47602e6a7a3b473
BLAKE2b-256 8fb459b4f7e9786eaf84fe4c337580c46761425810acdc325deaaef3c6fca138

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 91ed51da6a4cc25210dac5db71f6563b0a29791c315b41a543a5340d1cd3c333
MD5 7755196bd657a71621d3f127c1e26746
BLAKE2b-256 6795c87a951490dac83e2109cb43997ce3d02c5176819026dfbd40227eb7550e

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8aa2813e0a992f3b4687b72fb2ae32dac48a88dcea8f53b10882ff1df80c069f
MD5 b5551de0fde07ee365d96e94c1c96be8
BLAKE2b-256 b97e3bb7c5b885965d9aeb46e8b4bdc31122a26185baea726dea9bb5b7eafc62

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3d5b7bb7db642e7266b88030c0479669ae0fb256bf53bf0ff214e0a590ccc1a5
MD5 3e9db76e9dd51d19e678ce095bf2a634
BLAKE2b-256 a1fe65629bee99d4b83bcbd8f173255d39239011b119ee3b53024f2085ecf530

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4390c9e0e2907f48e1db22bc1ccf4d14e4d2746b229db850dd57b4a01fa21d59
MD5 919876180c3ef8f4d5170b28baba759c
BLAKE2b-256 a4c7c7b451393fa7430e339fef2537c74ae702b9aa37ad61123efdb2df7a1c91

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 073a886ee3f6597bb913a3c24e5d09691dd5ca57c323f2097201948fc3cf64cf
MD5 7a3f4950f96c3e2429dbc757fd0d78c8
BLAKE2b-256 54f799d022d264b9276990e2a1aa3f29a040824ccf020dc54a1ff06d71f39746

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 807ab8c29186d84c9e71d729bff6b16c1e4db71eabfe9d629dddab49c43624ac
MD5 4b8792ad4007812dbcd5954bf490768b
BLAKE2b-256 53f6e35a726cc263c47bdbfbf9bb14d9c515d4172a1b91a7398ebfe54b73f79c

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bda3ee536c674af7a3c31840693058a6d72435dc457efa4a348305e57d4ca5ac
MD5 db63bf385391930aa7a1129e996a2c39
BLAKE2b-256 1b5b42a0c6a1088ed1b700ac9084ea8a5d4e11f5043a70611241fdde2433b38d

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ca06a417f56714d6ab88b394c0df8cdfec550ef7aea6866515698e0ae93e6c28
MD5 11091aeb7455c7d6443172db08330ded
BLAKE2b-256 4513c8067f5436283fc9c12e506fb22044e31b4117b1bdbdcbd14bf5a61c7248

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1387b52d4737bbf6539c63ac4456f96166f36fedeb2403a4b382217b831ea1d2
MD5 20c361f95c14f7ed8c858da901ded6ad
BLAKE2b-256 1967bbd01fc06fc6c3ae157381aab5d942e48271047576de9f4145ef5d4d2857

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 731fc1de0fc743fb2050f0d4010962ea8a94948c2c37f2fa8518106fc6f8094a
MD5 f5d03905e6ce7e70202e5554fdf6c523
BLAKE2b-256 68072b7c29475f72672a24881032185783cedc507d23b13cf0b7bf9485bae3da

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4396da926a2cc38a81f689f11a59eef4ed7df5644f6e348c5a5664a39d1994ff
MD5 db788b3bacb8d4b6f37ccddb12f0ec78
BLAKE2b-256 899c7a402542faf087d102873d238186cf5b3d6173d9ffdad9778ce276e5b4ff

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d3d66e8fa605b66c12169b64279539c4e9752930a927899534b001fe7cc574ac
MD5 ae8044b915253371d4039cfb4850e024
BLAKE2b-256 d84f46d68faf51ac752b77ae8fa223ce2a25da2b56eda25a2b6c0fbe0852f04b

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8bc7029c5f6a0d959958f4d3001a9e02eda0dbbf712104c70fab521120bf109c
MD5 7f39ac6f15df6c396efc719f5f28bb21
BLAKE2b-256 993e4447962c20c6c7ac40e9d815385f0359d1105684ca0a47aa69087cce8740

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ddc2cf1efb4906d6eddce61655af903ed2b3a8c2bf21a87e56f9e3b4afd2f0e6
MD5 f8ae4595361d5673f8f2661cbf5d7d4e
BLAKE2b-256 3c133a2336e2247b530993aec839adee53a04bd8e9af49e59dcb50dfafb3aa4d

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 467fff8e401631ac5c6692df92ddb28ca5f620c5c374228a455dda9fa1d03649
MD5 54f174bff4ad88a09a2fc8f0decd792c
BLAKE2b-256 ee5bbd87158cce85ce090201f88b0af96e6f9b3717f9ec7174b353731f76df68

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 abc0b9aa326e9545dca56525820f9444c5f0b52ba5caa7e4f67eeef7583c5041
MD5 bb6abaed6629578524604a65c5355871
BLAKE2b-256 80f4d3cd816553580bb47c12dd8800f6ca57883be2630628f5c06132bb324b87

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ae3ee2432295d3af1591ec4db5bebf197adaf194b0a674ce3496052ce7315520
MD5 f6c5d269faafb655442f8be58cc1d83d
BLAKE2b-256 4b0d33e1945988df21ec7fafaa5ed7c45edb97616bcf4efef549806519405afa

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pysib-0.2.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dd5b7d4f479bc54a96b241a6fbab010b62cfd25c8c2abb9e8b40bda83bdb9d17
MD5 f725f96deffde5b06bf77268f28fbea4
BLAKE2b-256 2d5066f3cd2e12eb7402b4633e6501853d1272cfa8fe998216e58d6c0192b719

See more details on using hashes here.

File details

Details for the file pysib-0.2.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

  • Download URL: pysib-0.2.0-cp39-cp39-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 39.2 kB
  • Tags: CPython 3.9, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for pysib-0.2.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 47596a4d1f5e0f49ff5239866dbcbb6fca423436e50dcdd24d5aa2af3d632b93
MD5 287b3c1132fc3ffdd7eca489bec731b4
BLAKE2b-256 877f6c5841d90beaa7e42c9091ce0a5f36c638df6abf7c18b7b9ee2fd00ae268

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