{"id":32158793,"url":"https://github.com/andreasvarga/descriptorsystems.jl","last_synced_at":"2026-02-18T21:02:11.786Z","repository":{"id":37704241,"uuid":"301780611","full_name":"andreasvarga/DescriptorSystems.jl","owner":"andreasvarga","description":"Manipulation of generalized state-space (descriptor) system representations using Julia","archived":false,"fork":false,"pushed_at":"2026-01-19T16:36:29.000Z","size":2748,"stargazers_count":25,"open_issues_count":3,"forks_count":4,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-19T22:49:15.831Z","etag":null,"topics":["control-systems","dae","descriptor-systems","differential-algebraic-equations","julia","linear-systems-theory","system-analysis-and-design"],"latest_commit_sha":null,"homepage":"","language":"Julia","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/andreasvarga.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-10-06T15:58:00.000Z","updated_at":"2026-01-19T16:34:30.000Z","dependencies_parsed_at":"2024-02-10T12:27:59.792Z","dependency_job_id":"ecdefaa1-ba51-4822-a064-097bbfb6fbc9","html_url":"https://github.com/andreasvarga/DescriptorSystems.jl","commit_stats":{"total_commits":154,"total_committers":3,"mean_commits":"51.333333333333336","dds":"0.025974025974025983","last_synced_commit":"e326f386eae2cdea62ffd5905ceb65bdc124bbf8"},"previous_names":[],"tags_count":35,"template":false,"template_full_name":null,"purl":"pkg:github/andreasvarga/DescriptorSystems.jl","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andreasvarga%2FDescriptorSystems.jl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andreasvarga%2FDescriptorSystems.jl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andreasvarga%2FDescriptorSystems.jl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andreasvarga%2FDescriptorSystems.jl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andreasvarga","download_url":"https://codeload.github.com/andreasvarga/DescriptorSystems.jl/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andreasvarga%2FDescriptorSystems.jl/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29596125,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-18T20:59:56.587Z","status":"ssl_error","status_checked_at":"2026-02-18T20:58:41.434Z","response_time":162,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["control-systems","dae","descriptor-systems","differential-algebraic-equations","julia","linear-systems-theory","system-analysis-and-design"],"created_at":"2025-10-21T13:01:09.927Z","updated_at":"2026-02-18T21:02:11.781Z","avatar_url":"https://github.com/andreasvarga.png","language":"Julia","funding_links":[],"categories":[],"sub_categories":[],"readme":"# DescriptorSystems.jl\n\n[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.4568159.svg)](https://doi.org/10.5281/zenodo.4568159)\n[![DocBuild](https://github.com/andreasvarga/DescriptorSystems.jl/workflows/CI/badge.svg)](https://github.com/andreasvarga/DescriptorSystems.jl/actions)\n[![codecov.io](https://codecov.io/gh/andreasvarga/DescriptorSystems.jl/coverage.svg?branch=main)](https://codecov.io/gh/andreasvarga/DescriptorSystems.jl?branch=main)\n[![Latest](https://img.shields.io/badge/docs-latest-blue.svg)](https://andreasvarga.github.io/DescriptorSystems.jl/dev/)\n[![LinkedIn Badge](https://img.shields.io/badge/LinkedIn-Article-informational?style=flat\u0026logo=linkedin\u0026logoColor=white\u0026color=0D76A8)](https://www.linkedin.com/pulse/descriptorsystems-julias-descriptor-system-tools-andreas-varga-sfdge/?trackingId=XCVEKcqKSjmk9GjGcGL1kA%3D%3D)\n[![The MIT License](https://img.shields.io/badge/license-MIT-brightgreen.svg?style=flat-square)](https://github.com/andreasvarga/DescriptorSystems.jl/blob/main/LICENSE.md)\n\n## Manipulation of generalized state-space (descriptor) system representations\n\n## Compatibility\n\nJulia 1.10 and higher.\n\n## How to install\n\n````JULIA\npkg\u003e add DescriptorSystems\npkg\u003e test DescriptorSystems\n````\n\nFor a short interactive demonstration of the main functions execute \n\n````JULIA\nusing DescriptorSystems\ncd(joinpath(pkgdir(DescriptorSystems), \"test\"))\ninclude(\"DSToolsDemo.jl\")\n````\n\n## About\n\n`DescriptorSystems.jl` is a collection of Julia functions for numerical computations related to generalized state-space (descriptor) system representations in the continuous-time form\n\n     Edx(t)/dt = Ax(t) + Bu(t) ,\n     y(t)      = Cx(t) + Du(t) ,\n\nor in the discrete-time form\n\n     Ex(t+1) = Ax(t) + Bu(t) ,\n     y(t)    = Cx(t) + Du(t) ,\n\nwhere `x(t)`, `u(t)` and `y(t)` are the system state vector, system input vector and system output vector, respectively, and `t` is the continuous or discrete time variable.  \n\nThis collection also allows the operation on and manipulation of rational and polynomial matrices via their\ndescriptor system realizations.\n\nThe functionality of many of the implemented functions parallel or even extend the functionality of the\nControl System Toolbox of MATLAB and is similar to that of the [`DSTOOLS`](https://github.com/andreasvarga/DescriptorSystemTools) collection of tools. The underlying computational functions are based on the\n[`MatrixPencils.jl`](https://github.com/andreasvarga/MatrixPencils.jl) and\n[`MatrixEquations.jl`](https://github.com/andreasvarga/MatrixEquations.jl) packages.\n\nMany of the functions implement the computational procedures described in Chapter 10 of the book:\n\n* Andreas Varga, \"[Solving Fault Diagnosis Problems - Linear Synthesis Techniques](http://www.springer.com/us/book/9783319515588)\", vol. 84 of Studies in Systems, Decision and Control, Springer International Publishing, xxviii+394, 2017.\n\nThis book provides additional information on the mathematical background on rational matrices and descriptor systems, and gives detailed descriptions of most of the underlying procedures.\n\nThe current version of the package includes the following categories of functions:\n\n* Building descriptor system state-space models\n\n* Building rational transfer function input-output models\n\n* Basic operations on descriptor system models\n\n* Basic conversions of descriptor system models, including discretization\n\n* Interconnecting descriptor system models\n\n* Simplification of descriptor system models\n\n* Descriptor system analysis\n\n* Factorization of descriptor system transfer function matrices\n\n* Advanced operations on transfer function matrices via their descriptor system realizations\n\n* Solution of model-matching problems\n\n* Time response computation\n\n## Future plans\n\nFuture developments will address support for several new classes of generalized LTI systems types (e.g., for polynomial system models).\n\n## Supplementary information\n\nSupplementary information on the existing functionality is also available on [arXiv](https://arxiv.org/abs/1707.07140) in the documentation of the companion Matlab [`DSTOOLS`](https://github.com/andreasvarga/DescriptorSystemTools) collection.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandreasvarga%2Fdescriptorsystems.jl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandreasvarga%2Fdescriptorsystems.jl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandreasvarga%2Fdescriptorsystems.jl/lists"}