{"id":326942,"name":"PyPSA-China","description":"A open-source model of the Chinese energy system covering electricity and heat that co-optimizes dispatch and investments under user-set constraints, such as limits to environmental impacts, to minimize costs.","url":"https://github.com/pik-piam/pypsa-china-pik","last_synced_at":"2026-04-29T22:00:48.709Z","repository":{"id":263853324,"uuid":"884360927","full_name":"pik-piam/PyPSA-China-PIK","owner":"pik-piam","description":"PyPSA-China: An Open Optimisation model of the Chinese Energy System","archived":false,"fork":true,"pushed_at":"2026-02-13T15:43:10.000Z","size":182187,"stargazers_count":31,"open_issues_count":5,"forks_count":8,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-27T21:02:28.194Z","etag":null,"topics":["energy-system-model","optimisation"],"latest_commit_sha":null,"homepage":"https://pik-piam.github.io/PyPSA-China-PIK/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"Xiaowei-Z/PyPSA-China","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pik-piam.png","metadata":{},"created_at":"2024-11-06T16:00:45.000Z","updated_at":"2026-04-23T15:55:05.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/pik-piam/PyPSA-China-PIK","commit_stats":null,"previous_names":["pik-piam/pypsa-china-pik"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pik-piam/PyPSA-China-PIK","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pik-piam%2FPyPSA-China-PIK","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pik-piam%2FPyPSA-China-PIK/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pik-piam%2FPyPSA-China-PIK/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pik-piam%2FPyPSA-China-PIK/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pik-piam","download_url":"https://codeload.github.com/pik-piam/PyPSA-China-PIK/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pik-piam%2FPyPSA-China-PIK/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32445555,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T20:22:27.477Z","status":"ssl_error","status_checked_at":"2026-04-29T20:22:26.507Z","response_time":110,"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"}},"owner":{"login":"pik-piam","name":"Potsdam Integrated Assessment Modelling (PIAM)","uuid":"29039634","kind":"organization","description":"Tools developed for use with data and models related to PIK's research.","email":null,"website":"https://www.pik-potsdam.de/","location":"Potsdam Institute for Climate Impact Research (PIK), Germany","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/29039634?v=4","repositories_count":50,"last_synced_at":"2023-02-27T11:50:27.848Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pik-piam","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-10T20:11:55.333Z","updated_at":"2023-02-27T11:50:27.863Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pik-piam","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pik-piam/repositories"},"packages":[],"commits":{"id":11513497,"full_name":"pik-piam/pypsa-china-pik","default_branch":"master","total_commits":993,"total_committers":4,"total_bot_commits":5,"total_bot_committers":1,"mean_commits":248.25,"dds":0.1963746223564955,"past_year_total_commits":648,"past_year_total_committers":2,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":324.0,"past_year_dds":0.25308641975308643,"last_synced_at":"2026-04-27T21:01:01.170Z","last_synced_commit":"ca187e681a6a73d2f2fc63d8fb8cda3fc898cde1","created_at":"2025-10-18T00:02:55.843Z","updated_at":"2026-04-27T21:00:57.021Z","committers":[{"name":"irr-github","email":"ivan.ramirez@pik-potsdam.de","login":"irr-github","count":798},{"name":"beijingzyl","email":"1772066848@qq.com","login":"beijingzyl","count":176},{"name":"Xiaowei-Z","email":"jizhouxw@sjtu.edu.cn","login":"Xiaowei-Z","count":14},{"name":"pre-commit-ci[bot]","email":"66853113+pre-commit-ci[bot]","login":"pre-commit-ci[bot]","count":5}],"past_year_committers":[{"name":"irr-github","email":"ivan.ramirez@pik-potsdam.de","login":"irr-github","count":484},{"name":"beijingzyl","email":"1772066848@qq.com","login":"beijingzyl","count":164}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/pik-piam%2Fpypsa-china-pik/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-29T00:00:10.453Z","repositories_count":6223065,"commits_count":899908149,"contributors_count":34898202,"owners_count":1147472,"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":"pik-piam/PyPSA-China-PIK","html_url":"https://github.com/pik-piam/PyPSA-China-PIK","last_synced_at":"2026-04-13T14:00:19.221Z","status":"error","issues_count":18,"pull_requests_count":68,"avg_time_to_close_issue":2908974.6666666665,"avg_time_to_close_pull_request":890770.0208333334,"issues_closed_count":3,"pull_requests_closed_count":48,"pull_request_authors_count":2,"issue_authors_count":4,"avg_comments_per_issue":0.1111111111111111,"avg_comments_per_pull_request":0.058823529411764705,"merged_pull_requests_count":48,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":7,"past_year_pull_requests_count":67,"past_year_avg_time_to_close_issue":3830954.0,"past_year_avg_time_to_close_pull_request":890770.0208333334,"past_year_issues_closed_count":2,"past_year_pull_requests_closed_count":48,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":4,"past_year_avg_comments_per_issue":0.2857142857142857,"past_year_avg_comments_per_pull_request":0.05970149253731343,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":48,"created_at":"2025-08-29T12:27:37.369Z","updated_at":"2026-04-13T14:00:19.221Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pik-piam%2FPyPSA-China-PIK","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pik-piam%2FPyPSA-China-PIK/issues","issue_labels_count":{"enhancement":5,"documentation":2,"question":2,"bug":2,"invalid":2},"pull_request_labels_count":{"enhancement":28,"bug":12,"documentation":4,"Remind-coupling":2,"data":1,"invalid":1,"Post-process":1},"issue_author_associations_count":{"COLLABORATOR":16,"NONE":2},"pull_request_author_associations_count":{"COLLABORATOR":54,"NONE":14},"issue_authors":{"irr-github":15,"1june123":1,"he1203-hub":1,"gu-xiaoyang":1},"pull_request_authors":{"irr-github":54,"beijingzyl":14},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-23T00:00:09.119Z","repositories_count":14373668,"issues_count":34463301,"pull_requests_count":112829659,"authors_count":11243519,"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":{"bug":1,"enhancement":1},"past_year_pull_request_labels_count":{"enhancement":22,"bug":10,"documentation":3,"Remind-coupling":2,"data":1,"invalid":1,"Post-process":1},"past_year_issue_author_associations_count":{"COLLABORATOR":3,"NONE":2},"past_year_pull_request_author_associations_count":{"COLLABORATOR":36,"NONE":13},"past_year_issue_authors":{"irr-github":3,"gu-xiaoyang":1,"he1203-hub":1},"past_year_pull_request_authors":{"irr-github":36,"beijingzyl":13},"maintainers":[{"login":"irr-github","count":69,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/irr-github"},{"login":"1june123","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/1june123"}],"active_maintainers":[{"login":"irr-github","count":39,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/irr-github"}]},"events":{"total":{"DeleteEvent":2,"MemberEvent":3,"PullRequestEvent":84,"ForkEvent":1,"IssuesEvent":34,"WatchEvent":20,"IssueCommentEvent":10,"PushEvent":72,"PullRequestReviewCommentEvent":164,"PullRequestReviewEvent":186,"CreateEvent":7},"last_year":{"PullRequestEvent":50,"IssuesEvent":7,"WatchEvent":11,"IssueCommentEvent":4,"PushEvent":47,"PullRequestReviewEvent":143,"PullRequestReviewCommentEvent":130,"CreateEvent":4}},"keywords":["energy-system-model","optimisation"],"dependencies":[],"score":4.969813299576001,"created_at":"2025-10-18T00:02:50.419Z","updated_at":"2026-04-29T22:00:48.726Z","avatar_url":"https://github.com/pik-piam.png","language":"Python","category":"Energy Systems","sub_category":"Global and Regional Energy System Models","monthly_downloads":0,"total_dependent_repos":0,"total_dependent_packages":0,"readme":"# PyPSA-China：An Open-Source Optimisation model of the Chinese Energy System\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Documentation](https://img.shields.io/badge/docs-latest-blue.svg)](https://pik-piam.github.io/PyPSA-China-PIK/)\n[![GitHub release](https://img.shields.io/github/v/release/pik-piam/PyPSA-China-PIK)](https://github.com/pik-piam/PyPSA-China-PIK/releases)\n\nPyPSA-China (PIK) is a open-source model of the Chinese energy system covering electricity and heat. It co-optimizes dispatch and investments under user-set constraints, such as limits to environmental impacts, to minimize costs. The model works at provincial resolution and can simulate a full year at hourly resolution.\n\n## PIK version\nThis is the PIK implementation of the PyPSA-China power model, first published by Hailiang Liu et al for their study of [hydro-power in china](https://doi.org/10.1016/j.apenergy.2019.02.009) and extended by Xiaowei Zhou et al for their  [\"Multi-energy system horizon planning: Early decarbonisation in China avoids stranded assets\"](doi.org/10.1049/ein2.12011) paper. It is adapted from the Zhou version by the [PIK RD3-ETL team](https://www.pik-potsdam.de/en/institute/labs/energy-transition/energy-transition-lab), with the aim of coupling it to the [REMIND](https://www.pik-potsdam.de/en/institute/departments/transformation-pathways/models/remind) integrated assessment model. A reference guide is available as part of the [documentation](https://pik-piam.github.io/PyPSA-China-PIK/).\n\n## Overview\nPyPSA-China should be understood as a modelling worklow, using snakemake as workflow manager, around the [PyPSA python power system analysis](https://pypsa.org/) package. The workflow collects data, builds the power system network and plots the results. It is akin to its more mature sister project, [PyPSA-EUR](https://github.com/PyPSA/pypsa-eur), from which it is derived.\n\nUnlike PyPSA-EUR, which simplifies high resolution electricity grid data to a user-defined network size, the PyPSA-China network is currently fixed to one node per province (with a 340 node version in the works). This is in large part due to data availability issues.\n\nThe PyPSA can perform a number of different study types (investment decision, operational decisions, simulate AC power flows). Currently only capacity expansion problems are explicitly implemented in PyPSA-China.\n\nThe PyPSA-CHINA-PIK is currently under development. Please contact us if you intend to use it for publications.\n\n## Quick Links\n\n- 📖 [Documentation](https://pik-piam.github.io/PyPSA-China-PIK/)\n- 📝 [Changelog](CHANGELOG.md)\n- 🚀 [Releases](https://github.com/pik-piam/PyPSA-China-PIK/releases)\n- 🤝 [Contributing Guide](CONTRIBUTING.md)\n- 📋 [Release Guide](docs/release-guide.md) (for maintainers)\n\n# License\nThe code is released under the [MIT license](https://github.com/irr-github/PyPSA-China-PIK/blob/main/LICENSES/MIT.txt), however some of the data used is more restrictive. \n\n# Documentation\nThe documentation can be found at https://pik-piam.github.io/PyPSA-China-PIK/\n\n# Getting started\n\n## Installation\n\nAn installation guide is provided at https://pik-piam.github.io/PyPSA-China-PIK/ \n\n## Getting the data\nYou will need to enable data retrieval in the config\n```yaml\nenable:\n  build_cutout: false # if you want to build your own (requires ERA5 api access)\n  retrieve_cutout: true # if you want to download the pre-computed one from zenodo\n  retrieve_raster: true # get raster data\n```\nSome of the files are very large - expect a slow process!\n\n- You can also download the data manually and  copy it over to the correct folder. The source and target destinations are the input/output of the `fetch_` rules in `workflow/rules/fetch_data.smk`\n- **PIK HPC users only** you can also copy the data from other users\n\n## Usage\n\nDetailed instructions in the documentation. \n### local execution\n- local execution can be started (once the environment is activated) with `snakemake`\n- to customize the options, create `my_config.yaml` and launch `snakemake --configfile `my_config.yaml`. Configuration options are summarised in the documentation.\n### Remote execution\nThis is relevant for slurm HPCs and other remotes with a submit job command\n- The workflow can be launched with `snakemake --profile config/compute_profile`\n- [PIK HPC users only] use `snakemake --profile config/pik_hpc_profile`\n- If you are not running on the PIK hpc, you will need make a new profile for your machine under `config/\u003ccompute_profile\u003e/config.yaml`\n\n\n\n\n","funding_links":[],"readme_doi_urls":["https://doi.org/10.1016/j.apenergy.2019.02.009"],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://ost.ecosyste.ms/api/v1/projects/326942","html_url":"https://ost.ecosyste.ms/projects/326942"}