Skip to main content

System Identification Toolbox (Slow is Better)

Project description

pysib — System Identification Toolbox

DOI PyPI License:MIT

pysib is a System Identification 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.2.tar.gz (15.4 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.2-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.2-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.2-cp314-cp314t-macosx_11_0_arm64.whl (39.9 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

pysib-0.2.2-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.2-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.2-cp314-cp314-macosx_11_0_arm64.whl (39.6 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

pysib-0.2.2-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.2-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.2-cp313-cp313-macosx_11_0_arm64.whl (39.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pysib-0.2.2-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.2-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.2-cp312-cp312-macosx_11_0_arm64.whl (39.5 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pysib-0.2.2-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.2-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.2-cp311-cp311-macosx_11_0_arm64.whl (39.4 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pysib-0.2.2-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.2-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.2-cp310-cp310-macosx_11_0_arm64.whl (39.4 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

pysib-0.2.2-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.2-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.2-cp39-cp39-macosx_11_0_arm64.whl (39.4 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: pysib-0.2.2.tar.gz
  • Upload date:
  • Size: 15.4 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.2.tar.gz
Algorithm Hash digest
SHA256 26a9596da28c5eecb40c09d19ce1a12497761327c678b13f30a29e73b239c151
MD5 d8a8af562079738f9befaa4c4ec2b7aa
BLAKE2b-256 4c1a2fd602ac1816e40a3766e75cba24bc3a549c68497b55091136b75b4a74d9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0417fd121e96a0bc14d8ee9c6b0d56d56c61ea5c56881e96006f7283b4d36889
MD5 ca1d5c0151c2fad239986aecb97fa005
BLAKE2b-256 06824b16eb8fe26400e0973ac81db376ff3b47f977ef9f67b17507153401cd35

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 26adcfc25796d57a475a260e5b4fd3d1f7a178b591cd4d93d81b420c66c48cfa
MD5 3b1969c95fde2cedd0ba96a724881fc5
BLAKE2b-256 f86811d1758e8e2767c8a8bd62186185ec3fd4b8eecbc87dc51d320d33c69fff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c89812fc07c3cdd3068bf69fc53495f0aa5ffeadd16e72fba8bdc16db0546013
MD5 d1c3ed2cd5d8921de762e856e8666441
BLAKE2b-256 ee16f27652dc92176698e1e14fe2e886f11650c81d28491e1a45cb729bf7308e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 07531812530dcd5d10f602f53e4957b1619923743c9f993886368647879058c2
MD5 134b52a0908a5a380080731113be8d36
BLAKE2b-256 01340c77617536e115b067578d6741fd35a2412de199e9da64973374128c838e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 44c91893b16ecec58d69e8034e02bd44cab8d697adf1e6dccf945b18e18fead7
MD5 5ef5ad056e47a95b467e9d7d913bf752
BLAKE2b-256 29e04a2d90fc4de70c97f1d7a259f94e96731dd4e769bd3114514caf3910d8a1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 93cb16091589ec9bbb99996e0b78466244b5dea297131489873bf35d8a55e504
MD5 e8dd772b1e724c41595f5c2e5932ed58
BLAKE2b-256 b9ef9c774c6d53ce92088c5dae329bb97fb4c5b145576f74b409bf8313ab5283

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 1091f7993b4367389e6d15290df3d2c3e6402e6ab9c33af8f97d60d919cdac6d
MD5 4242062d64873a9c57d00ff752e5d8cc
BLAKE2b-256 668023cd99e170eea23251f517c588ce83f68243a8325fe265e13ebfd368cdab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d378322e7879130f321cb2fa2608011552186ba46a25ac71941bcb8af9dee964
MD5 fe86011412ca7049029b500db043986b
BLAKE2b-256 f5cf71e40b6370884210e649d02993d09f068640acc71d85b5e1cd66f26b3ca9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9d4cca60c8d506dbf79203d2a2001cc47f7b8e983c7623d9d7c5f9a8e9003ee9
MD5 f2d5296156e57e824d071718c6c6ed63
BLAKE2b-256 939cdb48624b3070237a3f726a7d875384d26f55fdb443462347fdc6c6b67427

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 3e36db913ffec83e6e4668ec2a10b57dafa3c4b816b1d7a0194d544859e46e37
MD5 6faa9805420d3e49aa9a134bc5d81b51
BLAKE2b-256 7c38a8c7ae692b4ad28361f3f8c8403219aeb62bab2c9d0005e1fee981d20507

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ef98008632637a57438b45457eba440d0f8f7fe017702c6e53d47eb7bd619d6f
MD5 577615d96f71c34af67ef031bb332ee3
BLAKE2b-256 54bbd3ac65c5c3b8621cb6017a5408907258d116e048cd87eb2c428302d45be1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 daa57e89ad277e5508102c37b4e341544821327082e34c08871de453cfe34437
MD5 7d1fe3683a0461432a2ed2d896a309af
BLAKE2b-256 2d8a8d1345d519d5cb2d4c8d7c2b06c09433879f471a44596c4a3c47542c7655

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0a9b6abd7632d77def38c9fe2bc2c5ea16c73bc3c64295707bac03d0f0b474ff
MD5 bc0e257b3714db93f5cc15566e324615
BLAKE2b-256 1f3a74f7ab9add485c3032611ecd22df64e6930f04a8088361755bccabe534dc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 66dc643db125a26a2cf67c92d8761b08304649197e9f308f56781f8b8d9ebd50
MD5 e730349360ad053ba661f9d4f9dd7b70
BLAKE2b-256 99ea015b55c113e0ce96e190ed06ae7ad68dab1729253d0d8610a561e8509603

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d38fe598aae2157e1034c822f72cb11eba61acf095fb83cf66a7d69b1dd622d0
MD5 e27f7d9e4abdf48d0e5312978139de9d
BLAKE2b-256 bd49957c408a1bd1cb91ee2221dd89b3efe907b448dc1e5d3f2039cab141a374

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9d6ae97f7bd2a5ea39f0d87b723d51a708804df2d3560012d2d8645c1c4c9d9a
MD5 0245d1e41d7778b322104bb21dad80a3
BLAKE2b-256 025e9eaae89e74c0a8ed2b2c14ea4d01a2c9edc74b7a1db7432536ff29755fe6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5cd2fc61f84eb090c7dd6b06f21e7b835a7058e9844d24a5f805d50e207b4dbb
MD5 0e2ff4653a772efd1bc98f59c284ffc5
BLAKE2b-256 6d5994c71c1db09c5e579668387239a354851ff9c0baf621466ca5560f7a0188

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a8782d6489e8fde5cccefcd76260dddb4edfbb29c591f1bc0e4fdbdcbd345448
MD5 be39599e8ef643390929352523580e37
BLAKE2b-256 4d108cb5be0d156599190a8cba663b8c53059a51166bcd29365fd4775cf159a9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 928af7b46e76a28c3d8c571bad15e9331ceadd702ede4bc798ebe0a3352f01f6
MD5 6d62fc253c1d5a9002cf16ba9339ec00
BLAKE2b-256 f3c7007a5d0de4d60ca9075deab8b1ef6404f3863197f808241f74a79c01fade

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.2-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 85a2d3ce8f2b19c666e48d036531ce328584bd2367f779155a59f67b5a6667a7
MD5 52810d1fad14b4317c590ab8e6e81372
BLAKE2b-256 4655a34ddd4338dd14545075556c266fa36ad0c1e77f70d72f71b4909bb7d050

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pysib-0.2.2-cp39-cp39-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 39.4 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.2-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 56a30e205b06b087f2f4f5d144d4bf74d6240eadcad100ed87c38ce776a304b7
MD5 f51eaeab517dc0f807d4595a9b6f000a
BLAKE2b-256 884b5ac3826486c580bd7c3ac5b90a62198e1949a5c54827d0032559a7e38384

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