{"id":14989181,"url":"https://github.com/alejoduarte23/ssi-cov","last_synced_at":"2025-04-12T01:10:54.573Z","repository":{"id":249359626,"uuid":"828305231","full_name":"AlejoDuarte23/SSI-COV","owner":"AlejoDuarte23","description":"The SSICOV is a system identification method for structural health monitoring (SHM) using Stochastic Subspace Identification (SSI). It processes acceleration data to extract modal parameters of a structure.","archived":false,"fork":false,"pushed_at":"2025-01-21T15:14:32.000Z","size":2213,"stargazers_count":6,"open_issues_count":0,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-25T20:51:11.527Z","etag":null,"topics":["matplotlib","modal-analysis","numpy","scikit-learn","scipy","signal-processing","system-identification"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc0-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AlejoDuarte23.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2024-07-13T18:14:58.000Z","updated_at":"2025-01-21T15:14:35.000Z","dependencies_parsed_at":"2024-07-25T02:17:48.469Z","dependency_job_id":"26065fcb-90e9-44b4-aa98-d6591c385b26","html_url":"https://github.com/AlejoDuarte23/SSI-COV","commit_stats":{"total_commits":12,"total_committers":3,"mean_commits":4.0,"dds":"0.33333333333333337","last_synced_commit":"e1496b3ac0c4cc3a7d1327b9c5b91414153d1b79"},"previous_names":["alejoduarte23/ssi-cov"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlejoDuarte23%2FSSI-COV","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlejoDuarte23%2FSSI-COV/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlejoDuarte23%2FSSI-COV/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlejoDuarte23%2FSSI-COV/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AlejoDuarte23","download_url":"https://codeload.github.com/AlejoDuarte23/SSI-COV/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248501861,"owners_count":21114684,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["matplotlib","modal-analysis","numpy","scikit-learn","scipy","signal-processing","system-identification"],"created_at":"2024-09-24T14:17:49.055Z","updated_at":"2025-04-12T01:10:54.547Z","avatar_url":"https://github.com/AlejoDuarte23.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# SSICOV Class\n\nThe `SSICOV` class a system identification method for structural health monitoring (SHM) using Stochastic Subspace Identification (SSI). It processes acceleration data to extract modal parameters of a structure.\n\n## Installation\n\n```bash\npip install -r requirements.txt\n```\n\n## Usage\nYou can check this video to see it in action:\n[![Watch the video](https://img.youtube.com/vi/v4p26xE53NI/maxresdefault.jpg)](https://www.youtube.com/watch?v=v4p26xE53NI)\n\n### Initialization\n\nCreate an instance of the `SSICOV` class with the required parameters.\n\n```python\nimport numpy as np\nfrom SSICOV import SSICOV\n\nssicov = SSICOV(acc, fs, Ts, Nc, Nmax, Nmin)\n```\n\n### Methods\n\n#### `NexT`\n\nCalculates the Impulse Response Function (IRF) using cross-correlation of the input acceleration data.\n\n```python\nIRF = ssicov.NexT()\n```\n\n#### `blockToeplitz`\n\nGenerates the block Toeplitz matrix and performs Singular Value Decomposition (SVD).\n\n```python\nU, S, V, T1 = ssicov.blockToeplitz(IRF)\n```\n\n#### `modalID`\n\nIdentifies modal parameters from the SVD components.\n\n```python\nfn, zeta, phi = ssicov.modalID(U, S, Nmodes, Nyy, fs)\n```\n\n#### `stabilityCheck`\n\nChecks the stability of the identified modes.\n\n```python\nfn, zeta, phi, MAC, stability_status = ssicov.stabilityCheck(fn0, zeta0, phi0, fn1, zeta1, phi1)\n```\n\n#### `getStablePoles`\n\nFilters and returns the stable poles from the identified modes.\n\n```python\nfnS, zetaS, phiS, MACS = ssicov.getStablePoles(fn, zeta, phi, MAC, stability_status)\n```\n\n#### `run`\n\nRuns the complete SSI process and returns the stable modal parameters.\n\n```python\nfnS, zetaS, phiS, MACS, stability_status, fn2 = ssicov.run()\nplotStabDiag(fn2, acc, fs, stability_status, Nmin, Nmax, acc.shape[1], 0, 7.5)\n\n```\n\n## OUTPUT\n![STAB diagram](data/SSI.svg)\n## Utilities\n\nThe class uses several utility functions for timing and size printing. Ensure to include these utility functions in your project.\n\n```python\nfrom utils import print_input_sizes, timeit\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falejoduarte23%2Fssi-cov","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falejoduarte23%2Fssi-cov","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falejoduarte23%2Fssi-cov/lists"}