{"id":81466,"name":"qgs","description":"Models the dynamics of a 2-layer quasi-geostrophic channel atmosphere on a beta-plane, coupled to a simple land or shallow-water ocean component.","url":"https://github.com/climdyn/qgs","last_synced_at":"2026-06-13T03:30:27.137Z","repository":{"id":45979076,"uuid":"246609584","full_name":"Climdyn/qgs","owner":"Climdyn","description":"A 2-layer quasi-geostrophic atmospheric model in Python. Can be coupled to a simple land or shallow-water ocean component.","archived":false,"fork":false,"pushed_at":"2025-06-11T16:56:23.000Z","size":36112,"stargazers_count":41,"open_issues_count":2,"forks_count":9,"subscribers_count":3,"default_branch":"master","last_synced_at":"2026-05-24T18:06:04.113Z","etag":null,"topics":["atmospheric-models","climate","climate-variability","meteorology","numba","ocean-atmosphere-model","python"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","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/Climdyn.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-03-11T15:32:55.000Z","updated_at":"2026-02-23T16:23:33.000Z","dependencies_parsed_at":"2023-09-21T19:33:28.901Z","dependency_job_id":"f9cafbe1-7ffb-424a-a418-01e547c677d9","html_url":"https://github.com/Climdyn/qgs","commit_stats":{"total_commits":106,"total_committers":3,"mean_commits":"35.333333333333336","dds":0.06603773584905659,"last_synced_commit":"a9171a2549fdc67262a2c3f436f0700798d8cea8"},"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/Climdyn/qgs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Climdyn","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33624221,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-28T02:00:06.440Z","response_time":99,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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"}},"owner":{"login":"Climdyn","name":"RMIB - Dynamical Meteorology and Climatology","uuid":"17494336","kind":"organization","description":"The Dynamical Meteorology and Climatology Unit is part of the R\u0026D Department of the Royal Meteorological Institute of Belgium.","email":null,"website":"http://climdyn.meteo.be","location":"Brussels, Belgium","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/17494336?v=4","repositories_count":3,"last_synced_at":"2023-03-10T18:35:50.521Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/Climdyn","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2023-02-14T20:41:33.627Z","updated_at":"2023-03-10T18:35:50.525Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Climdyn","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Climdyn/repositories"},"packages":[{"id":8233320,"name":"qgs","ecosystem":"pypi","description":"A 2-layer quasi-geostrophic atmospheric model. Can be coupled to a simple land or shallow-water ocean component.","homepage":null,"licenses":"MIT License","normalized_licenses":["MIT"],"repository_url":"https://github.com/Climdyn/qgs","keywords_array":["meteorology","climate","climate-variability","atmospheric-models","ocean-atmosphere-model"],"namespace":null,"versions_count":2,"first_release_published_at":"2023-06-17T10:26:30.000Z","latest_release_published_at":"2025-03-28T16:06:09.000Z","latest_release_number":"1.0.0","last_synced_at":"2026-06-10T02:01:00.533Z","created_at":"2023-09-05T06:06:33.126Z","updated_at":"2026-06-10T02:01:00.533Z","registry_url":"https://pypi.org/project/qgs/","install_command":"pip install qgs --index-url https://pypi.org/simple","documentation_url":"https://qgs.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":["Development Status :: 5 - Production/Stable","Framework :: Jupyter","Intended Audience :: Science/Research","License :: OSI Approved :: MIT License","Operating System :: OS Independent","Programming Language :: Python","Programming Language :: Python :: 3","Programming Language :: Python :: 3.10","Programming Language :: Python :: 3.11","Programming Language :: Python :: 3.9","Topic :: Scientific/Engineering :: Atmospheric Science"],"normalized_name":"qgs","project_status":null},"repo_metadata":{"id":45979076,"uuid":"246609584","full_name":"Climdyn/qgs","owner":"Climdyn","description":"A 2-layer quasi-geostrophic atmospheric model in Python. Can be coupled to a simple land or shallow-water ocean component.","archived":false,"fork":false,"pushed_at":"2024-10-12T16:49:34.000Z","size":24497,"stargazers_count":34,"open_issues_count":0,"forks_count":10,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-10-29T22:31:27.634Z","etag":null,"topics":["atmospheric-models","climate","climate-variability","meteorology","numba","ocean-atmosphere-model","python"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","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/Climdyn.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-03-11T15:32:55.000Z","updated_at":"2024-10-19T17:06:58.000Z","dependencies_parsed_at":"2023-09-21T19:33:28.901Z","dependency_job_id":"4aee6ed5-cb20-4faa-8693-750e8d6a8a66","html_url":"https://github.com/Climdyn/qgs","commit_stats":{"total_commits":106,"total_committers":3,"mean_commits":"35.333333333333336","dds":0.06603773584905659,"last_synced_commit":"a9171a2549fdc67262a2c3f436f0700798d8cea8"},"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Climdyn","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222155732,"owners_count":16940398,"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"},"owner_record":{"login":"Climdyn","name":"RMIB - Dynamical Meteorology and Climatology","uuid":"17494336","kind":"organization","description":"The Dynamical Meteorology and Climatology Unit is part of the R\u0026D Department of the Royal Meteorological Institute of Belgium.","email":null,"website":"http://climdyn.meteo.be","location":"Brussels, Belgium","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/17494336?v=4","repositories_count":3,"last_synced_at":"2023-03-10T18:35:50.521Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/Climdyn","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2023-02-14T20:41:33.627Z","updated_at":"2023-03-10T18:35:50.525Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Climdyn","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Climdyn/repositories"},"tags":[{"name":"v0.2.8","sha":"33200fa71119e14f34cbc6041273fbb13fdd9cfa","kind":"commit","published_at":"2023-06-18T18:36:13.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.8","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.8/manifests"},{"name":"v0.2.7","sha":"c372ba378fe250b94e99f76fa5df0da082184f57","kind":"commit","published_at":"2023-03-16T10:47:47.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.7","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.7/manifests"},{"name":"v0.2.6","sha":"1b8c5ffbf5d4c2949e7c8aa7b090ac3e39004b80","kind":"commit","published_at":"2022-11-30T15:39:26.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.6","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.6/manifests"},{"name":"v0.2.5","sha":"b2a7a18ce025e8b459654ad965e80c42f2db8638","kind":"commit","published_at":"2021-10-14T14:05:15.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.5","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.5/manifests"},{"name":"v0.2.4","sha":"1069e47ae789ae1440f7ffd1de6cac791fe9daad","kind":"commit","published_at":"2021-07-07T21:54:14.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.4","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.4/manifests"},{"name":"v0.2.3","sha":"79fab5edd9c92bf4fb073428f4160576f27e263d","kind":"commit","published_at":"2021-06-21T15:41:32.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.3","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.3/manifests"},{"name":"v0.2.2","sha":"4a232d7e8a5d8b932618680eeae8836eae165948","kind":"commit","published_at":"2021-03-07T11:12:40.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.2","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.2/manifests"},{"name":"v0.2.1","sha":"1f16589a345d2c6498f3bebaeca6cd58ccbd0d84","kind":"commit","published_at":"2020-12-20T09:49:52.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.1","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"b8277d7233014389da17f31cc1c83f3bfa12f856","kind":"commit","published_at":"2020-07-13T13:25:56.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.0","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.0/manifests"},{"name":"v0.1.0","sha":"29829e090522e420522f2f61bfc46fc7839f43ab","kind":"tag","published_at":"2020-03-19T13:41:01.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.1.0","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.1.0/manifests"}]},"repo_metadata_updated_at":"2024-10-30T02:59:04.646Z","dependent_packages_count":0,"downloads":482,"downloads_period":"last-month","dependent_repos_count":0,"rankings":{"downloads":59.67753536322225,"dependent_repos_count":69.6078431372549,"dependent_packages_count":7.466124823681255,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":45.58383444138614},"purl":"pkg:pypi/qgs","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/qgs","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pypi/qgs","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/qgs/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2024-10-29T21:02:58.933Z","issues_count":10,"pull_requests_count":20,"avg_time_to_close_issue":18068321.2,"avg_time_to_close_pull_request":57145.05,"issues_closed_count":10,"pull_requests_closed_count":20,"pull_request_authors_count":4,"issue_authors_count":4,"avg_comments_per_issue":2.8,"avg_comments_per_pull_request":0.3,"merged_pull_requests_count":17,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":269705.3333333333,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":2,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/issues","maintainers":[{"login":"jodemaey","count":21,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jodemaey"}],"active_maintainers":[{"login":"jodemaey","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jodemaey"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/qgs/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/qgs/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/qgs/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/qgs/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/qgs/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/qgs/codemeta","maintainers":[{"uuid":"climdyn","login":"climdyn","name":null,"email":null,"url":null,"packages_count":5,"html_url":"https://pypi.org/user/climdyn/","role":null,"created_at":"2023-09-05T07:17:51.708Z","updated_at":"2023-09-05T07:17:51.708Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/climdyn/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":883834,"maintainers_count":378426,"namespaces_count":0,"keywords_count":289179,"github":"pypi","metadata":{"funded_packages_count":54301},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2026-06-10T05:13:28.296Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/namespaces"}},{"id":4121271,"name":"github.com/Climdyn/qgs","ecosystem":"go","description":"","homepage":null,"licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/Climdyn/qgs","keywords_array":[],"namespace":"github.com/Climdyn","versions_count":13,"first_release_published_at":"2020-03-19T13:37:28.000Z","latest_release_published_at":"2025-03-28T15:50:30.000Z","latest_release_number":"v1.0.0","last_synced_at":"2026-06-10T02:01:02.608Z","created_at":"2022-04-12T14:57:30.132Z","updated_at":"2026-06-10T02:01:02.608Z","registry_url":"https://pkg.go.dev/github.com/Climdyn/qgs","install_command":"go get github.com/Climdyn/qgs","documentation_url":"https://pkg.go.dev/github.com/Climdyn/qgs#section-documentation","metadata":{},"repo_metadata":{"id":45979076,"uuid":"246609584","full_name":"Climdyn/qgs","owner":"Climdyn","description":"A 2-layer quasi-geostrophic atmospheric model in Python. Can be coupled to a simple land or shallow-water ocean component.","archived":false,"fork":false,"pushed_at":"2025-06-11T16:56:23.000Z","size":36112,"stargazers_count":40,"open_issues_count":2,"forks_count":9,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-10-20T08:46:54.334Z","etag":null,"topics":["atmospheric-models","climate","climate-variability","meteorology","numba","ocean-atmosphere-model","python"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","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/Climdyn.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-03-11T15:32:55.000Z","updated_at":"2025-10-17T15:13:48.000Z","dependencies_parsed_at":"2023-09-21T19:33:28.901Z","dependency_job_id":"4aee6ed5-cb20-4faa-8693-750e8d6a8a66","html_url":"https://github.com/Climdyn/qgs","commit_stats":{"total_commits":106,"total_committers":3,"mean_commits":"35.333333333333336","dds":0.06603773584905659,"last_synced_commit":"a9171a2549fdc67262a2c3f436f0700798d8cea8"},"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/Climdyn/qgs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Climdyn","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280151540,"owners_count":26281249,"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","status":"online","status_checked_at":"2025-10-20T02:00:06.978Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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"},"owner_record":{"login":"Climdyn","name":"RMIB - Dynamical Meteorology and Climatology","uuid":"17494336","kind":"organization","description":"The Dynamical Meteorology and Climatology Unit is part of the R\u0026D Department of the Royal Meteorological Institute of Belgium.","email":null,"website":"http://climdyn.meteo.be","location":"Brussels, Belgium","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/17494336?v=4","repositories_count":3,"last_synced_at":"2023-03-10T18:35:50.521Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/Climdyn","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2023-02-14T20:41:33.627Z","updated_at":"2023-03-10T18:35:50.525Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Climdyn","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Climdyn/repositories"},"tags":[{"name":"v1.0.0","sha":"15988323381a59476688eb4f72a19af19dcce012","kind":"commit","published_at":"2025-03-28T15:50:30.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v1.0.0","html_url":"https://github.com/Climdyn/qgs/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v1.0.0/manifests"},{"name":"v0.9.9","sha":"1d88c991188e34d83c630db53c96bbcde955e24d","kind":"commit","published_at":"2025-03-28T13:25:37.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.9.9","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.9.9","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.9.9","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.9.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.9.9/manifests"},{"name":"v0.9.10","sha":"1d88c991188e34d83c630db53c96bbcde955e24d","kind":"commit","published_at":"2025-03-28T13:25:37.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.9.10","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.9.10/manifests"},{"name":"v0.2.8","sha":"33200fa71119e14f34cbc6041273fbb13fdd9cfa","kind":"commit","published_at":"2023-06-18T18:36:13.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.8","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.8","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.8","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.8/manifests"},{"name":"v0.2.7","sha":"c372ba378fe250b94e99f76fa5df0da082184f57","kind":"commit","published_at":"2023-03-16T10:47:47.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.7","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.7/manifests"},{"name":"v0.2.6","sha":"1b8c5ffbf5d4c2949e7c8aa7b090ac3e39004b80","kind":"commit","published_at":"2022-11-30T15:39:26.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.6","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.6/manifests"},{"name":"v0.2.5","sha":"b2a7a18ce025e8b459654ad965e80c42f2db8638","kind":"commit","published_at":"2021-10-14T14:05:15.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.5","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.5/manifests"},{"name":"v0.2.4","sha":"1069e47ae789ae1440f7ffd1de6cac791fe9daad","kind":"commit","published_at":"2021-07-07T21:54:14.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.4","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.4/manifests"},{"name":"v0.2.3","sha":"79fab5edd9c92bf4fb073428f4160576f27e263d","kind":"commit","published_at":"2021-06-21T15:41:32.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.3","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.3/manifests"},{"name":"v0.2.2","sha":"4a232d7e8a5d8b932618680eeae8836eae165948","kind":"commit","published_at":"2021-03-07T11:12:40.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.2","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.2/manifests"},{"name":"v0.2.1","sha":"1f16589a345d2c6498f3bebaeca6cd58ccbd0d84","kind":"commit","published_at":"2020-12-20T09:49:52.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.1","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"b8277d7233014389da17f31cc1c83f3bfa12f856","kind":"commit","published_at":"2020-07-13T13:25:56.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.0","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.0/manifests"},{"name":"v0.1.0","sha":"29829e090522e420522f2f61bfc46fc7839f43ab","kind":"tag","published_at":"2020-03-19T13:41:01.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.1.0","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.1.0/manifests"}]},"repo_metadata_updated_at":"2025-10-22T01:13:43.317Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":9.345852080216646,"dependent_packages_count":6.999148183520997,"stargazers_count":null,"forks_count":null,"average":8.172500131868823},"purl":"pkg:golang/github.com/%21climdyn/qgs","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/Climdyn/qgs","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/Climdyn/qgs","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/Climdyn/qgs/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-10-19T19:17:28.455Z","issues_count":12,"pull_requests_count":24,"avg_time_to_close_issue":18068321.2,"avg_time_to_close_pull_request":143179.39130434784,"issues_closed_count":10,"pull_requests_closed_count":23,"pull_request_authors_count":4,"issue_authors_count":4,"avg_comments_per_issue":2.3333333333333335,"avg_comments_per_pull_request":1.0833333333333333,"merged_pull_requests_count":20,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":2,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":493223.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":6,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":2.857142857142857,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":5,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/issues","maintainers":[{"login":"jodemaey","count":28,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jodemaey"}],"active_maintainers":[{"login":"jodemaey","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jodemaey"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FClimdyn%2Fqgs/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FClimdyn%2Fqgs/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FClimdyn%2Fqgs/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FClimdyn%2Fqgs/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FClimdyn%2Fqgs/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2FClimdyn%2Fqgs/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":2167447,"maintainers_count":0,"namespaces_count":792747,"keywords_count":113213,"github":"golang","metadata":{"funded_packages_count":53976},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2026-06-10T05:03:23.672Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/namespaces"}},{"id":4123916,"name":"github.com/climdyn/qgs","ecosystem":"go","description":"","homepage":null,"licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/climdyn/qgs","keywords_array":[],"namespace":"github.com/climdyn","versions_count":13,"first_release_published_at":"2020-03-19T13:37:28.000Z","latest_release_published_at":"2025-03-28T15:50:30.000Z","latest_release_number":"v1.0.0","last_synced_at":"2026-06-10T02:01:02.947Z","created_at":"2022-04-12T15:08:06.253Z","updated_at":"2026-06-10T02:01:02.947Z","registry_url":"https://pkg.go.dev/github.com/climdyn/qgs","install_command":"go get github.com/climdyn/qgs","documentation_url":"https://pkg.go.dev/github.com/climdyn/qgs#section-documentation","metadata":{},"repo_metadata":{"id":45979076,"uuid":"246609584","full_name":"Climdyn/qgs","owner":"Climdyn","description":"A 2-layer quasi-geostrophic atmospheric model in Python. Can be coupled to a simple land or shallow-water ocean component.","archived":false,"fork":false,"pushed_at":"2025-06-11T16:56:23.000Z","size":36112,"stargazers_count":40,"open_issues_count":2,"forks_count":9,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-10-20T08:46:54.334Z","etag":null,"topics":["atmospheric-models","climate","climate-variability","meteorology","numba","ocean-atmosphere-model","python"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","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/Climdyn.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-03-11T15:32:55.000Z","updated_at":"2025-10-17T15:13:48.000Z","dependencies_parsed_at":"2023-09-21T19:33:28.901Z","dependency_job_id":"4aee6ed5-cb20-4faa-8693-750e8d6a8a66","html_url":"https://github.com/Climdyn/qgs","commit_stats":{"total_commits":106,"total_committers":3,"mean_commits":"35.333333333333336","dds":0.06603773584905659,"last_synced_commit":"a9171a2549fdc67262a2c3f436f0700798d8cea8"},"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/Climdyn/qgs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Climdyn","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280361450,"owners_count":26317682,"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","status":"online","status_checked_at":"2025-10-21T02:00:06.614Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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"},"owner_record":{"login":"Climdyn","name":"RMIB - Dynamical Meteorology and Climatology","uuid":"17494336","kind":"organization","description":"The Dynamical Meteorology and Climatology Unit is part of the R\u0026D Department of the Royal Meteorological Institute of Belgium.","email":null,"website":"http://climdyn.meteo.be","location":"Brussels, Belgium","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/17494336?v=4","repositories_count":3,"last_synced_at":"2023-03-10T18:35:50.521Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/Climdyn","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2023-02-14T20:41:33.627Z","updated_at":"2023-03-10T18:35:50.525Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Climdyn","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Climdyn/repositories"},"tags":[{"name":"v1.0.0","sha":"15988323381a59476688eb4f72a19af19dcce012","kind":"commit","published_at":"2025-03-28T15:50:30.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v1.0.0","html_url":"https://github.com/Climdyn/qgs/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v1.0.0/manifests"},{"name":"v0.9.9","sha":"1d88c991188e34d83c630db53c96bbcde955e24d","kind":"commit","published_at":"2025-03-28T13:25:37.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.9.9","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.9.9","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.9.9","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.9.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.9.9/manifests"},{"name":"v0.9.10","sha":"1d88c991188e34d83c630db53c96bbcde955e24d","kind":"commit","published_at":"2025-03-28T13:25:37.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.9.10","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.9.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.9.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.9.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.9.10/manifests"},{"name":"v0.2.8","sha":"33200fa71119e14f34cbc6041273fbb13fdd9cfa","kind":"commit","published_at":"2023-06-18T18:36:13.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.8","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.8","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.8","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.8/manifests"},{"name":"v0.2.7","sha":"c372ba378fe250b94e99f76fa5df0da082184f57","kind":"commit","published_at":"2023-03-16T10:47:47.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.7","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.7/manifests"},{"name":"v0.2.6","sha":"1b8c5ffbf5d4c2949e7c8aa7b090ac3e39004b80","kind":"commit","published_at":"2022-11-30T15:39:26.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.6","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.6/manifests"},{"name":"v0.2.5","sha":"b2a7a18ce025e8b459654ad965e80c42f2db8638","kind":"commit","published_at":"2021-10-14T14:05:15.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.5","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.5/manifests"},{"name":"v0.2.4","sha":"1069e47ae789ae1440f7ffd1de6cac791fe9daad","kind":"commit","published_at":"2021-07-07T21:54:14.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.4","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.4/manifests"},{"name":"v0.2.3","sha":"79fab5edd9c92bf4fb073428f4160576f27e263d","kind":"commit","published_at":"2021-06-21T15:41:32.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.3","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.3/manifests"},{"name":"v0.2.2","sha":"4a232d7e8a5d8b932618680eeae8836eae165948","kind":"commit","published_at":"2021-03-07T11:12:40.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.2","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.2/manifests"},{"name":"v0.2.1","sha":"1f16589a345d2c6498f3bebaeca6cd58ccbd0d84","kind":"commit","published_at":"2020-12-20T09:49:52.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.1","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"b8277d7233014389da17f31cc1c83f3bfa12f856","kind":"commit","published_at":"2020-07-13T13:25:56.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.2.0","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.2.0/manifests"},{"name":"v0.1.0","sha":"29829e090522e420522f2f61bfc46fc7839f43ab","kind":"tag","published_at":"2020-03-19T13:41:01.000Z","download_url":"https://codeload.github.com/Climdyn/qgs/tar.gz/v0.1.0","html_url":"https://github.com/Climdyn/qgs/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/Climdyn/qgs@v0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/tags/v0.1.0/manifests"}]},"repo_metadata_updated_at":"2025-10-22T01:13:49.610Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":9.345852080216646,"dependent_packages_count":6.999148183520997,"stargazers_count":null,"forks_count":null,"average":8.172500131868823},"purl":"pkg:golang/github.com/climdyn/qgs","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/climdyn/qgs","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/climdyn/qgs","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/climdyn/qgs/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-10-19T19:17:28.455Z","issues_count":12,"pull_requests_count":24,"avg_time_to_close_issue":18068321.2,"avg_time_to_close_pull_request":143179.39130434784,"issues_closed_count":10,"pull_requests_closed_count":23,"pull_request_authors_count":4,"issue_authors_count":4,"avg_comments_per_issue":2.3333333333333335,"avg_comments_per_pull_request":1.0833333333333333,"merged_pull_requests_count":20,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":2,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":493223.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":6,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":2.857142857142857,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":5,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/issues","maintainers":[{"login":"jodemaey","count":28,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jodemaey"}],"active_maintainers":[{"login":"jodemaey","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jodemaey"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fclimdyn%2Fqgs/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fclimdyn%2Fqgs/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fclimdyn%2Fqgs/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fclimdyn%2Fqgs/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fclimdyn%2Fqgs/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fclimdyn%2Fqgs/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":2167447,"maintainers_count":0,"namespaces_count":792747,"keywords_count":113213,"github":"golang","metadata":{"funded_packages_count":53976},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2026-06-10T05:03:23.672Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/namespaces"}}],"commits":{"id":1254379,"full_name":"Climdyn/qgs","default_branch":"master","total_commits":120,"total_committers":3,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":40.0,"dds":0.07499999999999996,"past_year_total_commits":0,"past_year_total_committers":0,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":0.0,"past_year_dds":0.0,"last_synced_at":"2026-06-10T02:01:28.389Z","last_synced_commit":"15988323381a59476688eb4f72a19af19dcce012","created_at":"2023-03-27T11:33:14.282Z","updated_at":"2026-06-10T02:01:28.366Z","committers":[{"name":"Jonathan Demaeyer","email":"jodemaey@meteo.be","login":"jodemaey","count":111},{"name":"ushham","email":"oisin.hamilton@meteo.be","login":"ushham","count":5},{"name":"Lesley De Cruz","email":"lesley.decruz@meteo.be","login":"ladc","count":4}],"past_year_committers":[],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-06-10T00:00:07.748Z","repositories_count":6254998,"commits_count":884221111,"contributors_count":35061382,"owners_count":1164094,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"Climdyn/qgs","html_url":"https://github.com/Climdyn/qgs","last_synced_at":"2026-05-30T21:00:36.012Z","status":"error","issues_count":12,"pull_requests_count":24,"avg_time_to_close_issue":18068321.2,"avg_time_to_close_pull_request":143179.39130434784,"issues_closed_count":10,"pull_requests_closed_count":23,"pull_request_authors_count":4,"issue_authors_count":4,"avg_comments_per_issue":2.3333333333333335,"avg_comments_per_pull_request":1.0833333333333333,"merged_pull_requests_count":20,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":2,"past_year_pull_requests_count":7,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":493223.5,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":6,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":2.857142857142857,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":5,"created_at":"2023-05-09T10:35:01.479Z","updated_at":"2026-05-30T21:00:36.012Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/Climdyn%2Fqgs/issues","issue_labels_count":{"enhancement":4,"bug":4,"fixed":3,"documentation":3,"support":1},"pull_request_labels_count":{"enhancement":2,"bug":2,"critical":1},"issue_author_associations_count":{"MEMBER":6,"NONE":6},"pull_request_author_associations_count":{"MEMBER":22,"NONE":2,"CONTRIBUTOR":1},"issue_authors":{"jodemaey":6,"sadielbartholomew":3,"patnr":2,"ifengfan":1},"pull_request_authors":{"jodemaey":22,"ladc":1,"sadielbartholomew":1,"arfon":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-06-10T00:00:24.323Z","repositories_count":14786702,"issues_count":33450188,"pull_requests_count":110045870,"authors_count":11298013,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{},"past_year_pull_request_author_associations_count":{},"past_year_issue_authors":{},"past_year_pull_request_authors":{},"maintainers":[{"login":"jodemaey","count":28,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jodemaey"}],"active_maintainers":[]},"events":{"total":{"ReleaseEvent":3,"DeleteEvent":2,"PullRequestEvent":3,"IssuesEvent":1,"WatchEvent":6,"IssueCommentEvent":12,"PushEvent":29,"PullRequestReviewEvent":6,"PullRequestReviewCommentEvent":5,"CreateEvent":5},"last_year":{"WatchEvent":1}},"keywords":["atmospheric-models","climate","climate-variability","meteorology","numba","ocean-atmosphere-model","python"],"dependencies":[{"ecosystem":"pypi","filepath":"requirements.txt","sha":null,"kind":"manifest","created_at":"2022-09-23T08:50:55.374Z","updated_at":"2022-09-23T08:50:55.374Z","repository_link":"https://github.com/Climdyn/qgs/blob/master/requirements.txt","dependencies":[{"id":5943242585,"package_name":"ipython","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":5943242586,"package_name":"jupyter","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":5943242587,"package_name":"matplotlib","ecosystem":"pypi","requirements":"\u003e=3.4","direct":true,"kind":"runtime","optional":false},{"id":5943242588,"package_name":"numba","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":5943242589,"package_name":"numpy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":5943242590,"package_name":"python","ecosystem":"pypi","requirements":"\u003e=3.8","direct":true,"kind":"runtime","optional":false},{"id":5943242591,"package_name":"scipy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":5943242592,"package_name":"sympy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":5943242593,"package_name":"sphinx","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":5943242594,"package_name":"sphinx_rtd_theme","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":5943242595,"package_name":"sparse","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":5943242596,"package_name":"julia","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":5943242597,"package_name":"diffeqpy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":5943242598,"package_name":"sphinxcontrib-bibtex","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":5943242599,"package_name":"pebble","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":5943242600,"package_name":"pytest","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/checks.yml","sha":null,"kind":"manifest","created_at":"2023-09-21T19:33:26.594Z","updated_at":"2023-09-21T19:33:26.594Z","repository_link":"https://github.com/Climdyn/qgs/blob/master/.github/workflows/checks.yml","dependencies":[{"id":13856743300,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":13856743301,"package_name":"actions/cache","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":13856743302,"package_name":"conda-incubator/setup-miniconda","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"conda","filepath":"environment.yml","sha":null,"kind":"manifest","created_at":"2023-09-21T19:33:27.164Z","updated_at":"2023-09-21T19:33:27.164Z","repository_link":"https://github.com/Climdyn/qgs/blob/master/environment.yml","dependencies":[{"id":13856743317,"package_name":"ffmpeg","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":13856743318,"package_name":"ipython","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":13856743319,"package_name":"jupyter","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":13856743320,"package_name":"matplotlib","ecosystem":"conda","requirements":"\u003e=3.4","direct":true,"kind":"runtime","optional":false},{"id":13856743321,"package_name":"numba","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":13856743322,"package_name":"numpy","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":13856743323,"package_name":"pebble","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":13856743324,"package_name":"pip","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":13856743325,"package_name":"pytest","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":13856743326,"package_name":"python","ecosystem":"conda","requirements":"\u003e=3.8","direct":true,"kind":"runtime","optional":false},{"id":13856743327,"package_name":"scipy","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":13856743328,"package_name":"sparse","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":13856743329,"package_name":"sphinx","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":13856743330,"package_name":"sphinx_rtd_theme","ecosystem":"conda","requirements":"\u003e0.5.1","direct":true,"kind":"runtime","optional":false},{"id":13856743331,"package_name":"sympy","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"pyproject.toml","sha":null,"kind":"manifest","created_at":"2023-09-21T19:33:27.624Z","updated_at":"2023-09-21T19:33:27.624Z","repository_link":"https://github.com/Climdyn/qgs/blob/master/pyproject.toml","dependencies":[{"id":13856743339,"package_name":"ipython","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":13856743340,"package_name":"jupyter","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":13856743341,"package_name":"matplotlib","ecosystem":"pypi","requirements":"\u003e=3.4","direct":true,"kind":"runtime","optional":false},{"id":13856743342,"package_name":"numba","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":13856743343,"package_name":"numpy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":13856743344,"package_name":"scipy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":13856743345,"package_name":"sympy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":13856743346,"package_name":"sparse","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":13856743351,"package_name":"pebble","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]}],"score":11.039829058014245,"created_at":"2023-09-19T11:40:56.558Z","updated_at":"2026-06-13T03:30:27.142Z","avatar_url":"https://github.com/Climdyn.png","language":"Jupyter Notebook","category":"Atmosphere","sub_category":"Atmospheric Composition and Dynamics","monthly_downloads":482,"total_dependent_repos":0,"total_dependent_packages":0,"readme":"\nQuasi-Geostrophic Spectral model (qgs)\n======================================\n\n\n[![PyPI version](https://badge.fury.io/py/qgs.svg)](https://badge.fury.io/py/qgs)\n[![PyPI pyversions](https://img.shields.io/pypi/pyversions/qgs.svg)](https://pypi.org/project/qgs/)\n[![DOI](https://zenodo.org/badge/246609584.svg)](https://zenodo.org/badge/latestdoi/246609584)\n[![DOI](https://joss.theoj.org/papers/10.21105/joss.02597/status.svg)](https://doi.org/10.21105/joss.02597)\n[![Documentation Status](https://readthedocs.org/projects/qgs/badge/?version=latest)](https://qgs.readthedocs.io/en/latest/?badge=latest)\n[![tests](https://github.com/Climdyn/qgs/actions/workflows/checks.yml/badge.svg?branch=master)](https://github.com/Climdyn/qgs/actions/workflows/checks.yml)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nGeneral Information\n-------------------\n\nqgs is a Python implementation of an atmospheric model for midlatitudes.  It models the dynamics of\na 2-layer [quasi-geostrophic](https://en.wikipedia.org/wiki/Quasi-geostrophic_equations) channel\natmosphere on a [beta-plane](https://en.wikipedia.org/wiki/Beta_plane), coupled to a simple land or\n[shallow-water](https://en.wikipedia.org/wiki/Shallow_water_equations) ocean component. \n\n![](https://github.com/Climdyn/qgs/blob/master/misc/figs/readme.gif?raw=true)\n\n\u003e **You can try qgs online !**  \n\u003e Simply click on one of the following links to access an introductory tutorial:\n\u003e [![Open in colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/Climdyn/qgs/blob/master/notebooks/introduction_qgs.ipynb)\n\u003e [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/Climdyn/qgs/master?filepath=notebooks/introduction_qgs.ipynb)\n\u003e [\u003cimg src=\"https://deepnote.com/buttons/launch-in-deepnote-small.svg\"\u003e](https://deepnote.com/launch?name=MyProject\u0026url=https://github.com/Climdyn/qgs/tree/master/notebooks/introduction_qgs.ipynb)\n\n\nAbout\n-----\n\n(c) 2020-2025 qgs Developers and Contributors\n\nPart of the code originates from the Python [MAOOAM](https://github.com/Climdyn/MAOOAM) implementation by Maxime Tondeur and Jonathan Demaeyer.\n\nSee [LICENSE.txt](https://raw.githubusercontent.com/Climdyn/qgs/master/LICENSE.txt) for license information.\n\n**Please cite the code description article if you use (a part of) this software for a publication:**\n\n* Demaeyer J., De Cruz, L. and Vannitsem, S. , (2020). qgs: A flexible Python framework of reduced-order multiscale climate models. \n  *Journal of Open Source Software*, **5**(56), 2597,   [https://doi.org/10.21105/joss.02597](https://doi.org/10.21105/joss.02597).\n\nPlease consult the qgs [code repository](http://www.github.com/Climdyn/qgs) for updates.\n\n\nInstallation\n------------\n\n#### With pip\n\nThe easiest way to install and run qgs is to use [pip](https://pypi.org/).\nType in a terminal\n\n    pip install qgs\n\nand you are set!\n\nAdditionally, you can clone the repository\n\n    git clone https://github.com/Climdyn/qgs.git\n\nand perform a test by running the script\n\n    python qgs/qgs_rp.py\n\nto see if everything runs smoothly (this should take less than a minute).\n\n\u003e **Note:** \n\u003e With the pip installation, in order to be able to generate the movies with the diagnostics, \n\u003e you need to install separately [ffmpeg](https://ffmpeg.org/).\n\n#### With Anaconda\n\nThe second easiest way to install and run qgs is to use an appropriate environment created through [Anaconda](https://www.anaconda.com/).\n\nFirst install Anaconda and clone the repository:\n\n    git clone https://github.com/Climdyn/qgs.git\n\nThen install and activate the Python3 Anaconda environment:\n\n    conda env create -f environment.yml\n    conda activate qgs\n\nYou can then perform a test by running the script\n\n    python qgs_rp.py\n    \nto see if everything runs smoothly (this should take less than a minute).\n\n#### Note for Windows and MacOS users\n\nPresently, qgs is compatible with Windows and MacOS but users wanting to use qgs inside their Python scripts must guard the main script with a\n\n```\nif __name__ == \"__main__\":\n```\n\nclause and add the following lines below\n\n```\n  from multiprocessing import freeze_support\n  freeze_support()\n```\n\nAbout this usage, see for example the main scripts `qgs_rp.py` and `qgs_maooam.py` in the root folder.\nNote that the Jupyter notebooks are not concerned by this recommendation and work perfectly well on both operating systems.\n\n\u003e **Why?** These lines are required to make the multiprocessing library works with these operating systems. See [here](https://docs.python.org/3.8/library/multiprocessing.html) for more details, \n\u003e and in particular [this section](https://docs.python.org/3.8/library/multiprocessing.html#the-spawn-and-forkserver-start-methods).\n\n\n#### Activating DifferentialEquations.jl optional support\n\nIn addition to the qgs builtin Runge-Kutta integrator, the qgs model can alternatively be integrated with a package called [DifferentialEquations.jl](https://github.com/SciML/DifferentialEquations.jl) written in [Julia](https://julialang.org/), and available through the\n[diffeqpy](https://github.com/SciML/diffeqpy) Python package.\nThe diffeqpy package first installation step is done by Anaconda in the qgs environment but then you must [install Julia](https://julialang.org/downloads/) and follow the final manual installation instruction found in the [diffeqpy README](https://github.com/SciML/diffeqpy).\n\nThese can be summed up as opening a terminal and doing:\n```\nconda activate qgs\npython\n```\nand then inside the Python command line interface do:\n\n```\n\u003e\u003e\u003e import diffeqpy\n\u003e\u003e\u003e diffeqpy.install()\n```\nwhich will then finalize the installation. An example of a notebook using this package is available in the documentation and on [readthedocs](https://qgs.readthedocs.io/en/latest/files/examples/diffeq.html).\n\nDocumentation\n-------------\n\nTo build the documentation, please run (with the conda environment activated):\n\n    cd documentation\n    make html\n\nYou may need to install [make](https://www.gnu.org/software/make/) if it is not already present on your system.\nOnce built, the documentation is available [here](./documentation/build/html/index.html).\n\nThe documentation is also available online on read the docs: [https://qgs.readthedocs.io/](https://qgs.readthedocs.io/)\n\nUsage\n-----\n\nqgs can be used by editing and running the script `qgs_rp.py` and `qgs_maooam.py` found in the main folder.\n\nFor more advanced usages, please read the [User Guides](https://qgs.readthedocs.io/en/latest/files/user_guide.html).\n\nExamples\n--------\n\nAnother nice way to run the model is through the use of Jupyter notebooks. \nSimple examples can be found in the [notebooks folder](./notebooks).\nFor instance, running \n\n    conda activate qgs\n    cd notebooks\n    jupyter-notebook\n    \nwill lead you to your favorite browser where you can load and run the examples.\n\nDependencies\n------------\n\nqgs needs mainly:\n\n   * [Numpy](https://numpy.org/) for numeric support\n   * [sparse](https://sparse.pydata.org/) for sparse multidimensional arrays support\n   * [Numba](https://numba.pydata.org/) for code acceleration\n   * [Sympy](https://www.sympy.org/) for symbolic manipulation of inner products\n   \nCheck the yaml file [environment.yml](https://raw.githubusercontent.com/Climdyn/qgs/master/environment.yml) for the dependencies.\n\nForthcoming developments\n------------------------\n\n* Scientific development (short-to-mid-term developments)\n    + Non-autonomous equation (seasonality, etc...)\n    + Energy diagnostics\n* Technical midterm developments\n    + Vectorization of the tensor computation\n* Long-term development track\n    + Active advection\n    + True quasi-geostrophic ocean when using ocean model version\n    + Salinity in the ocean \n    + Numerical basis of function\n  \nContributing to qgs\n-------------------\n\nIf you want to contribute actively to the roadmap detailed above, please contact the main authors.\n\nIn addition, if you have made changes that you think will be useful to others, please feel free to suggest these as a pull request on the [qgs Github repository](https://github.com/Climdyn/qgs).\n\nMore information and guidance about how to do a pull request for qgs can be found in the documentation [here](https://qgs.readthedocs.io/en/latest/files/general_information.html#contributing-to-qgs).\n\nOther atmospheric models in Python\n----------------------------------\n\nNon-exhaustive list:\n\n* [Q-GCM](http://q-gcm.org/): A mid-latitude grid based ocean-atmosphere model like MAOOAM. Code in Fortran,\n                                interface is in Python.\n* [pyqg](https://github.com/pyqg/pyqg): A pseudo-spectral Python solver for quasi-geostrophic systems.\n* [Isca](https://execlim.github.io/IscaWebsite/index.html): Research GCM written in Fortran and largely\n            configured with Python scripts, with internal coding changes required for non-standard cases.\n            \n            \n","funding_links":[],"readme_doi_urls":["https://doi.org/10.21105/joss.02597"],"works":{"https://doi.org/10.21105/joss.02597":{"id":"https://openalex.org/W3115758238","doi":"https://doi.org/10.21105/joss.02597","title":"qgs: A flexible Python framework of reduced-order multiscale climate models","display_name":"qgs: A flexible Python framework of reduced-order multiscale climate models","publication_year":2020,"publication_date":"2020-12-24","ids":{"openalex":"https://openalex.org/W3115758238","doi":"https://doi.org/10.21105/joss.02597","mag":"3115758238"},"language":"en","primary_location":{"is_oa":true,"landing_page_url":"https://doi.org/10.21105/joss.02597","pdf_url":"https://joss.theoj.org/papers/10.21105/joss.02597.pdf","source":{"id":"https://openalex.org/S4210214273","display_name":"Journal of open source software","issn_l":"2475-9066","issn":["2475-9066"],"is_oa":true,"is_in_doaj":true,"host_organization":"https://openalex.org/P4310315853","host_organization_name":"Open Journals","host_organization_lineage":["https://openalex.org/P4310315853"],"host_organization_lineage_names":["Open Journals"],"type":"journal"},"license":"cc-by","version":"publishedVersion","is_accepted":true,"is_published":true},"type":"article","type_crossref":"journal-article","open_access":{"is_oa":true,"oa_status":"gold","oa_url":"https://joss.theoj.org/papers/10.21105/joss.02597.pdf","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5029707767","display_name":"Jonathan Demaeyer","orcid":"https://orcid.org/0000-0002-5098-404X"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Jonathan Demaeyer","raw_affiliation_string":"","raw_affiliation_strings":[]},{"author_position":"middle","author":{"id":"https://openalex.org/A5061768262","display_name":"Lesley De Cruz","orcid":"https://orcid.org/0000-0003-4458-8953"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Lesley De Cruz","raw_affiliation_string":"","raw_affiliation_strings":[]},{"author_position":"last","author":{"id":"https://openalex.org/A5065411100","display_name":"Stéphane Vannitsem","orcid":"https://orcid.org/0000-0002-1734-1042"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Stéphane Vannitsem","raw_affiliation_string":"","raw_affiliation_strings":[]}],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":{"value":0,"currency":"USD","value_usd":0,"provenance":"doaj"},"apc_paid":{"value":0,"currency":"USD","value_usd":0,"provenance":"doaj"},"has_fulltext":true,"fulltext_origin":"pdf","cited_by_count":9,"cited_by_percentile_year":{"min":89,"max":90},"biblio":{"volume":"5","issue":"56","first_page":"2597","last_page":"2597"},"is_retracted":false,"is_paratext":false,"keywords":[{"keyword":"flexible python framework","score":0.4131},{"keyword":"qgs","score":0.3012},{"keyword":"models","score":0.2846},{"keyword":"reduced-order","score":0.25}],"concepts":[{"id":"https://openalex.org/C519991488","wikidata":"https://www.wikidata.org/wiki/Q28865","display_name":"Python (programming language)","level":2,"score":0.8890489},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.52875036},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.48124123}],"mesh":[],"locations_count":3,"locations":[{"is_oa":true,"landing_page_url":"https://doi.org/10.21105/joss.02597","pdf_url":"https://joss.theoj.org/papers/10.21105/joss.02597.pdf","source":{"id":"https://openalex.org/S4210214273","display_name":"Journal of open source software","issn_l":"2475-9066","issn":["2475-9066"],"is_oa":true,"is_in_doaj":true,"host_organization":"https://openalex.org/P4310315853","host_organization_name":"Open Journals","host_organization_lineage":["https://openalex.org/P4310315853"],"host_organization_lineage_names":["Open Journals"],"type":"journal"},"license":"cc-by","version":"publishedVersion","is_accepted":true,"is_published":true},{"is_oa":true,"landing_page_url":"https://biblio.ugent.be/publication/8746909","pdf_url":"https://biblio.ugent.be/publication/8746909/file/8763481.pdf","source":{"id":"https://openalex.org/S4306400478","display_name":"Ghent University Academic Bibliography (Ghent University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"host_organization":"https://openalex.org/I32597200","host_organization_name":"Ghent University","host_organization_lineage":["https://openalex.org/I32597200"],"host_organization_lineage_names":["Ghent University"],"type":"repository"},"license":"cc-by","version":"publishedVersion","is_accepted":true,"is_published":true},{"is_oa":true,"landing_page_url":"https://biblio.ugent.be/publication/8746909/file/8763481","pdf_url":"https://biblio.ugent.be/publication/8746909/file/8763481","source":{"id":"https://openalex.org/S4306400478","display_name":"Ghent University Academic Bibliography (Ghent University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"host_organization":"https://openalex.org/I32597200","host_organization_name":"Ghent University","host_organization_lineage":["https://openalex.org/I32597200"],"host_organization_lineage_names":["Ghent University"],"type":"repository"},"license":"cc-by","version":"publishedVersion","is_accepted":true,"is_published":true}],"best_oa_location":{"is_oa":true,"landing_page_url":"https://doi.org/10.21105/joss.02597","pdf_url":"https://joss.theoj.org/papers/10.21105/joss.02597.pdf","source":{"id":"https://openalex.org/S4210214273","display_name":"Journal of open source software","issn_l":"2475-9066","issn":["2475-9066"],"is_oa":true,"is_in_doaj":true,"host_organization":"https://openalex.org/P4310315853","host_organization_name":"Open Journals","host_organization_lineage":["https://openalex.org/P4310315853"],"host_organization_lineage_names":["Open Journals"],"type":"journal"},"license":"cc-by","version":"publishedVersion","is_accepted":true,"is_published":true},"sustainable_development_goals":[{"id":"https://metadata.un.org/sdg/13","display_name":"Climate action","score":0.86}],"grants":[],"referenced_works_count":16,"referenced_works":["https://openalex.org/W1536003252","https://openalex.org/W2016561808","https://openalex.org/W2245493112","https://openalex.org/W2472803348","https://openalex.org/W2619381903","https://openalex.org/W2765355324","https://openalex.org/W2888656724","https://openalex.org/W2966542782","https://openalex.org/W2990844065","https://openalex.org/W3098309884","https://openalex.org/W3099878876","https://openalex.org/W3100343915","https://openalex.org/W3100706400","https://openalex.org/W3101131237","https://openalex.org/W3103145119","https://openalex.org/W4244547303"],"related_works":["https://openalex.org/W1906486629","https://openalex.org/W4318619745","https://openalex.org/W3021560500","https://openalex.org/W4243252198","https://openalex.org/W656686947","https://openalex.org/W3007645298","https://openalex.org/W3160881136","https://openalex.org/W2584070953","https://openalex.org/W1825954513","https://openalex.org/W2036149106"],"ngrams_url":"https://api.openalex.org/works/W3115758238/ngrams","abstract_inverted_index":null,"cited_by_api_url":"https://api.openalex.org/works?filter=cites:W3115758238","counts_by_year":[{"year":2023,"cited_by_count":2},{"year":2022,"cited_by_count":3},{"year":2021,"cited_by_count":4}],"updated_date":"2023-12-12T22:22:07.954826","created_date":"2021-01-05"}},"citation_counts":{"https://doi.org/10.21105/joss.02597":9},"total_citations":9,"keywords_from_contributors":[],"project_url":"https://ost.ecosyste.ms/api/v1/projects/81466","html_url":"https://ost.ecosyste.ms/projects/81466"}