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.3.tar.gz (15.8 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.3-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.3-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.3-cp314-cp314t-macosx_11_0_arm64.whl (39.9 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

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

Uploaded CPython 3.14macOS 11.0+ ARM64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10macOS 11.0+ ARM64

pysib-0.2.3-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.3-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.3-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.3.tar.gz.

File metadata

  • Download URL: pysib-0.2.3.tar.gz
  • Upload date:
  • Size: 15.8 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.3.tar.gz
Algorithm Hash digest
SHA256 8e5d597494834326183953c480c1cbbcc7a016c02bcce37ff49e2e919634e81f
MD5 f621990c15da78785ef5d750e5825a21
BLAKE2b-256 e3882550c580c54e572220f9e144e78df13d70c1efb8388ecdc3a77685682f79

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f0485215847168b68cfa2f882072466b93dc61e37fdd4cd16445016d07a6bf05
MD5 4e2d9052facd88131aa052a5b7a1c7a1
BLAKE2b-256 9171e3f20b6740cb4ceb2f323dc74aa969155e9e88a39a913686392bd16a0fb1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 873aeae2f61816b54519c6c2638cc0ac497efb06983181eda5bcbc3a685f4d9e
MD5 6657d84aa42cd22538f22a98796a5aba
BLAKE2b-256 87b8854715353e6bda915058b32f535c44fe7533489a1657d5a68d1eba48af47

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 72e782f70edec7ab16641dee1f14d4a55a517204e7ed9d3650a7b2f7cb665d6d
MD5 8860638f6627925b2f4d0afa78af2fb4
BLAKE2b-256 7ebb8cb54ba016bd6211d1cdd6abf9edabfbf177fb700a3ffd0d007288231b8e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9b5f25e92559d2f68eb2b1adb854e061e544bd605e2204afa83d8937e382ba50
MD5 cec7eb4d2f08977e0e2bf91ab2445ef9
BLAKE2b-256 61d6e0a8ce2cb9a6603ab8a0798ecae7fd6b761415b48f11aafba8ddbd0d5c16

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1f0003073674241cd6071bce7338a76d67eb585e79ac358984b2aa0cc61ef037
MD5 fd49c8a9da59bb6bb3daebdd8e35b70d
BLAKE2b-256 bdbc51cccb95c24ba1deb7aa35fec70ccd828e095a8261994735d9c1c1522e97

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8d89bf147434c6092837618d5f12d623d33600560dd22063a4a61d407bea93c4
MD5 d851901e2c4bfb981645ef11e1f62574
BLAKE2b-256 123804086eaa6bc9bffe8e9f6a47439b524e64c92002bc6a39bd02a47ae26dba

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 bd5275bad08a83392a1c5626c98adcc4581bf8055add3d2cb19d4f5a2dcc5627
MD5 f096f4cf573410679bb70b4339eb3095
BLAKE2b-256 0243c190046cba12ebf3444201ca34c27abe3164b1213e6289762c4046b1648c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 852c200737603b180ec021df4ba7d6b3f0dbe46a7aff733473671ef6dbae9e2a
MD5 34fdb80ba0476e75ced148178e71e82a
BLAKE2b-256 864dd4df9af543ce7eb95402c30e035a40167a1520d543d73b16072fa7a39801

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3bd456b74fa4b0c043ffd36bd24fba6028f8c18bd778329b44bb979df2c095b5
MD5 e193b8ff9c5c4617403e8a54b0ac05ef
BLAKE2b-256 9b3469887719b3a9db38ab79108803b167e81def29a87627355fda6dd9ef38ea

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 9de084211e92e8d37bb3e4e4966d04c1989365d0e5621c4a3b7ecfd62bb2809d
MD5 a3e9f4020c48389c58f19f3afca0a9eb
BLAKE2b-256 e2dbdb8ca3db00267431558a40443357fe45a227f46faa7cf9e4d220e895a482

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3681b94d83a8d584d2ffa3099581eb14bc9aaf30260dad9e0e3c0da315a6294a
MD5 4fce65b90a2ab592066fdf0a169cd818
BLAKE2b-256 f61eb81538a6d68cc6282d8ebf949c9556f91f80ce2bdf437bd0e08f68fea8a3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f165a51a0e1aa341ea2c7293144c6f161f4ebb0ee8dcc5b0c2664debeb4b3e39
MD5 9603931b75c664e145b9f16fde7ecde5
BLAKE2b-256 d3f1b369afd07ddf5eeff4128783040d2c085f6d78a7c86447e860a012ca3761

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8724ce89da1582175fb7053c33e6b61593c70c722ed357227407f5c01a4e5a3b
MD5 1bf03b32b320a7d8d67162b9512deec0
BLAKE2b-256 291e4c0a5ec75ac9b11370f6c02bdc75abb0baa244eda7a8ec19bee2dd0a2d55

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 30951c9236154f07945a0673718d1de4ac6c3a82aa8ca55a875be54e50081147
MD5 47ef45a971d5ee583273a707b880bc69
BLAKE2b-256 db2b96e5146fff7e9afc9df645889c2a225d83766d6ed52fe058821e4a15767c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 873712ccc0baf4b2d1051137cf469222fc24227e190741e378550662e7188ca0
MD5 a2c3a10d809597560bb4226a897d24ba
BLAKE2b-256 c998b21526b69ccd9ccd8b9a65b653f37ba0ce6f0af2893ae7e0e2b9d6ceebed

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 260a4949b806cf30d3b7fe46183be4cb827bc7ee83e622d3a8bc506a200f084c
MD5 93379e8d6ad32df541ed8de28fab2b3e
BLAKE2b-256 6749724c1ddb1671467a116ee4916a0acadde38d716d508fcbf698e563de9638

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 131da26ecf966871dbfc2362a1806b1e34787d3e5ea9bef2ae57bbbf0e47bb82
MD5 2419194b569fccaa49fb8867ddc2856c
BLAKE2b-256 d3a6ac72125239b9120a67505beb39f2ecd37ff8953c55aac94ef82fac7a6c9c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 888ca80c58b57334f59757043840982ee4df0550fbb1368373683fc59fc07f29
MD5 c6cf35b5ddf2661dfa096e3a04ce3416
BLAKE2b-256 673e15bb343f762a3506470902b0cd603d46af500cff5ca9b8627ffc795f5bc3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8e1a299be6c18557f0516f9041fefca038ffb45daf75d1eeed782228e825f8b6
MD5 d7c829619dcf1aee2b416ec12f76bfdb
BLAKE2b-256 511a4855cc3251a7464a6a8aed949c5d405d62bd02b37bff0aee83f92f851255

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pysib-0.2.3-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7bfb52046e3268e0ece8127f39ed7b5da35942ee8dd91bcb41faca8a14865628
MD5 f43540b5add46212d4623c325722614d
BLAKE2b-256 9a49ea548eb001a62ae9506ededa6732b3c6c41d1c0995e77bcd797cf3435b6a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pysib-0.2.3-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.3-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9686efef2ad4fb7aa24178b4d2c5344f50f1aee04c7ac0742864ca22cc99d83d
MD5 24e16c210dc983fcaeb2e0a2470eb9e2
BLAKE2b-256 62c9e9a0888b421a2b4d9391a0c9a558e32d6732635c7d5444585c101a2b84a2

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