ltbams 0.9.11__tar.gz → 0.9.12rc1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- ltbams-0.9.12rc1/PKG-INFO +168 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/_version.py +3 -3
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/release-notes.rst +7 -0
- ltbams-0.9.12rc1/ltbams.egg-info/PKG-INFO +168 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ltbams.egg-info/SOURCES.txt +2 -0
- ltbams-0.9.12rc1/ltbams.egg-info/entry_points.txt +3 -0
- ltbams-0.9.12rc1/ltbams.egg-info/requires.txt +94 -0
- ltbams-0.9.12rc1/setup.py +108 -0
- ltbams-0.9.11/PKG-INFO +0 -11
- ltbams-0.9.11/ltbams.egg-info/PKG-INFO +0 -11
- ltbams-0.9.11/setup.py +0 -17
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/CONTRIBUTING.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/LICENSE +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/MANIFEST.in +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/README.md +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/__init__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/__main__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/benchmarks.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/5bus/pjm5bus_demo.xlsx +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/5bus/pjm5bus_jumper.xlsx +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/5bus/pjm5bus_uced.json +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/5bus/pjm5bus_uced.xlsx +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/5bus/pjm5bus_uced_esd1.xlsx +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/5bus/pjm5bus_uced_ev.xlsx +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/ieee123/ieee123.xlsx +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/ieee123/ieee123_regcv1.xlsx +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/ieee14/ieee14.json +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/ieee14/ieee14.raw +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/ieee14/ieee14_uced.xlsx +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/ieee39/ieee39.xlsx +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/ieee39/ieee39_uced.xlsx +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/ieee39/ieee39_uced_esd1.xlsx +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/ieee39/ieee39_uced_pvd1.xlsx +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/ieee39/ieee39_uced_vis.xlsx +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/matpower/benchmark.json +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/matpower/case118.m +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/matpower/case14.m +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/matpower/case300.m +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/matpower/case39.m +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/matpower/case5.m +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/matpower/case_ACTIVSg2000.m +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/npcc/npcc.m +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/npcc/npcc_uced.xlsx +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/pglib/pglib_opf_case39_epri__api.m +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/wecc/wecc.m +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cases/wecc/wecc_uced.xlsx +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/cli.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/core/__init__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/core/documenter.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/core/matprocessor.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/core/model.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/core/param.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/core/service.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/core/symprocessor.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/core/var.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/extension/__init__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/extension/eva.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/interface.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/io/__init__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/io/json.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/io/matpower.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/io/psse.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/io/pypower.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/io/xlsx.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/main.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/__init__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/area.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/bus.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/cost.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/distributed/__init__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/distributed/esd1.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/distributed/ev.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/distributed/pvd1.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/group.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/info.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/line.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/region.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/renewable/__init__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/renewable/regc.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/reserve.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/shunt.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/static/__init__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/static/gen.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/static/pq.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/models/timeslot.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/opt/__init__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/opt/omodel.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/__init__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/_compat.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/core/__init__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/core/pips.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/core/ppoption.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/core/ppver.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/core/solver.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/eps.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/idx.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/io.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/make/__init__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/make/matrices.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/make/pdv.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/routines/__init__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/routines/cpf.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/routines/cpf_callbacks.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/routines/opf.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/routines/opffcns.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/routines/pflow.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/toggle.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/pypower/utils.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/report.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/routines/__init__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/routines/acopf.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/routines/cpf.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/routines/dcopf.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/routines/dcpf.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/routines/dopf.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/routines/ed.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/routines/pflow.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/routines/routine.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/routines/rted.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/routines/type.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/routines/uc.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/shared.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/system.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/utils/__init__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ams/utils/paths.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/Makefile +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/make.bat +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/_templates/autosummary/base.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/_templates/autosummary/class.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/_templates/autosummary/module.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/_templates/autosummary/module_toctree.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/api.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/conf.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/examples/index.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/genmodelref.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/genroutineref.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/getting_started/copyright.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/getting_started/formats/index.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/getting_started/formats/matpower.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/getting_started/formats/psse.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/getting_started/formats/pypower.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/getting_started/formats/xlsx.png +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/getting_started/formats/xlsx.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/getting_started/index.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/getting_started/install.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/getting_started/overview.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/getting_started/testcase.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/getting_started/verification.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/images/dcopf_time.png +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/images/sponsors/CURENT_Logo_NameOnTrans.png +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/images/sponsors/CURENT_Logo_Transparent.png +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/images/sponsors/CURENT_Logo_Transparent_Name.png +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/images/sponsors/doe.png +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/index.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/modeling/example.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/modeling/index.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/modeling/model.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/modeling/routine.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/docs/source/modeling/system.rst +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ltbams.egg-info/dependency_links.txt +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/ltbams.egg-info/top_level.txt +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/pyproject.toml +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/requirements-extra.txt +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/requirements.txt +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/setup.cfg +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/__init__.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_1st_system.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_addressing.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_andes_mats.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_benchmarks.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_case.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_cli.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_export_csv.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_group.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_interop.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_io.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_jumper.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_known_good.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_matp.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_model.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_paths.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_report.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_repr.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_routine.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_rtn_dcopf.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_rtn_ed.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_rtn_pflow.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_rtn_rted.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_rtn_uc.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/tests/test_service.py +0 -0
- {ltbams-0.9.11 → ltbams-0.9.12rc1}/versioneer.py +0 -0
@@ -0,0 +1,168 @@
|
|
1
|
+
Metadata-Version: 2.1
|
2
|
+
Name: ltbams
|
3
|
+
Version: 0.9.12rc1
|
4
|
+
Summary: Python software for scheduling modeling and co-simulation with dynanics.
|
5
|
+
Home-page: https://github.com/CURENT/ams
|
6
|
+
Author: Jinning Wang
|
7
|
+
Author-email: jinninggm@gmail.com
|
8
|
+
License: GNU Public License v3
|
9
|
+
Platform: UNKNOWN
|
10
|
+
Classifier: Development Status :: 4 - Beta
|
11
|
+
Classifier: Natural Language :: English
|
12
|
+
Classifier: Programming Language :: Python :: 3
|
13
|
+
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
|
14
|
+
Classifier: Environment :: Console
|
15
|
+
Description-Content-Type: text/markdown
|
16
|
+
Provides-Extra: all
|
17
|
+
Provides-Extra: coverage
|
18
|
+
Provides-Extra: dev
|
19
|
+
Provides-Extra: doc
|
20
|
+
Provides-Extra: flake8
|
21
|
+
Provides-Extra: ipython
|
22
|
+
Provides-Extra: myst-parser
|
23
|
+
Provides-Extra: nbsphinx
|
24
|
+
Provides-Extra: numpydoc
|
25
|
+
Provides-Extra: pandoc
|
26
|
+
Provides-Extra: pydata-sphinx-theme
|
27
|
+
Provides-Extra: pyscipopt
|
28
|
+
Provides-Extra: pytest
|
29
|
+
Provides-Extra: pytest-cov
|
30
|
+
Provides-Extra: sphinx
|
31
|
+
Provides-Extra: sphinx-copybutton
|
32
|
+
Provides-Extra: sphinx-panels
|
33
|
+
Provides-Extra: toml
|
34
|
+
License-File: LICENSE
|
35
|
+
|
36
|
+
# LTB AMS
|
37
|
+
|
38
|
+
Python Software for Power System Scheduling Modeling and Co-Simulation with Dynanic, serving as the market simulator for the [CURENT Largescale Testbed][LTB Repository].
|
39
|
+
|
40
|
+
[](https://github.com/CURENT/ams/blob/master/LICENSE)
|
41
|
+

|
42
|
+
[](https://www.python.org/)
|
43
|
+

|
44
|
+
[](https://github.com/CURENT/ams/commits/master/)
|
45
|
+
[](https://github.com/CURENT/ams/commits/develop/)
|
46
|
+
[](https://libraries.io/pypi/ltbams)
|
47
|
+
[](https://mango-dune-07a8b7110.1.azurestaticapps.net/?repo=CURENT%2Fams)
|
48
|
+
|
49
|
+
<img src="docs/source/images/sponsors/CURENT_Logo_NameOnTrans.png" alt="CURENT ERC Logo" width="300" height="auto">
|
50
|
+
|
51
|
+
| | Latest | Stable |
|
52
|
+
|---------------|-----------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------|
|
53
|
+
| Documentation | [](https://ams.readthedocs.io/en/latest/?badge=latest) | [](https://ams.readthedocs.io/en/stable/?badge=stable) |
|
54
|
+
|
55
|
+
|
56
|
+
| Badges | | |
|
57
|
+
|---------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
58
|
+
| Downloads | [](https://pypi.python.org/pypi/ltbams) | [](https://anaconda.org/conda-forge/ltbams) |
|
59
|
+
| Try on Binder | [](https://mybinder.org/v2/gh/curent/ams/master) | |
|
60
|
+
| Code Quality |[](https://app.codacy.com/gh/CURENT/ams/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)| [](https://app.codacy.com/gh/CURENT/ams/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_coverage) |
|
61
|
+
| Build Status | [](https://github.com/curent/ams/actions) | [](https://dev.azure.com/curentltb/ams/_build/latest?definitionId=2&branchName=master) |
|
62
|
+
|
63
|
+
|
64
|
+
# Why AMS
|
65
|
+
|
66
|
+
With the built-in interface with dynamic simulation engine, ANDES, AMS enables Dynamics Interfaced Stability Constrained Production Cost and Market Operation Modeling.
|
67
|
+
|
68
|
+
AMS produces credible scheduling results and competitive performance.
|
69
|
+
The following results show the comparison of DCOPF between AMS and other tools.
|
70
|
+
|
71
|
+
| Cost [\$] | AMS | MATPOWER | pandapower |
|
72
|
+
|----------------:|--------------:|------------:|-----------:|
|
73
|
+
| PEGASE 1354-Bus | 1,173,590.63 | 1,173,590.63 | 1,173,590.63 |
|
74
|
+
| PEGASE 2869-Bus | 2,338,915.61 | 2,338,915.61 | 2,338,915.61 |
|
75
|
+
| GOC 4020-Bus | 793,634.11 | 793,634.11 | 793,634.11 |
|
76
|
+
| EPIGRIDS 5658-Bus| 1,195,466.12 | 1,195,466.12 | 1,195,466.12 |
|
77
|
+
| EPIGRIDS 7336-Bus| 1,855,870.94 | 1,855,870.94 | 1,855,870.94 |
|
78
|
+
|
79
|
+
<img src="docs/source/images/dcopf_time.png" alt="DCOPF Time" width="400" height="auto">
|
80
|
+
|
81
|
+
AMS is currently under active development.
|
82
|
+
Use the following resources to get involved.
|
83
|
+
|
84
|
+
- Start from the [documentation][readthedocs] for installation and tutorial.
|
85
|
+
- Check out examples in the [examples folder][examples]
|
86
|
+
- Read the model verification results in the [examples/verification folder][verification]
|
87
|
+
- Ask a question in the [GitHub Discussions][Github Discussions]
|
88
|
+
- Report bugs or issues by submitting a [GitHub issue][GitHub issues]
|
89
|
+
- Submit contributions using [pull requests][GitHub pull requests]
|
90
|
+
- Read release notes highlighted [here][release notes]
|
91
|
+
- Try in Jupyter Notebook on [Binder][Binder]
|
92
|
+
<!-- + Check out and and cite our [paper][arxiv paper] -->
|
93
|
+
|
94
|
+
# Installation
|
95
|
+
|
96
|
+
***NOTE:***
|
97
|
+
- Version **0.9.9** has known issues. Please avoid using this version
|
98
|
+
- `kvxopt` is recommended to install via `conda` as sometimes ``pip`` struggles to set the correct path for compiled libraries
|
99
|
+
- `cvxpy` versions **below 1.5** are incompatible with `numpy` versions **2.0 and above**
|
100
|
+
|
101
|
+
AMS is released as ``ltbams`` on PyPI and conda-forge.
|
102
|
+
Install from PyPI using pip:
|
103
|
+
|
104
|
+
```bash
|
105
|
+
pip install ltbams
|
106
|
+
```
|
107
|
+
|
108
|
+
Install from conda-forge using conda:
|
109
|
+
|
110
|
+
```bash
|
111
|
+
conda install conda-forge::ltbams
|
112
|
+
```
|
113
|
+
|
114
|
+
Install from GitHub source:
|
115
|
+
|
116
|
+
```bash
|
117
|
+
pip install git+https://github.com/CURENT/ams.git
|
118
|
+
```
|
119
|
+
|
120
|
+
# Example Usage
|
121
|
+
|
122
|
+
Using AMS to run a Real-Time Economic Dispatch (RTED) simulation:
|
123
|
+
|
124
|
+
```python
|
125
|
+
import ams
|
126
|
+
|
127
|
+
ss = ams.load(ams.get_case('ieee14_uced.xlsx'))
|
128
|
+
ss.RTED.run()
|
129
|
+
|
130
|
+
print(ss.RTED.pg.v)
|
131
|
+
```
|
132
|
+
|
133
|
+
# Sponsors and Contributors
|
134
|
+
AMS is the scheduling simulation engine for the CURENT Largescale Testbed (LTB).
|
135
|
+
More information about CURENT LTB can be found at the [LTB Repository][LTB Repository].
|
136
|
+
|
137
|
+
This work was supported in part by the Engineering Research Center Program of the National Science Foundation and the Department of Energy
|
138
|
+
under NSF Award Number EEC-1041877 and the CURENT Industry Partnership Program.
|
139
|
+
|
140
|
+
This work was supported in part by the Advanced Grid Research and Development Program in the Office of Electricity at the U.S. Department of Energy.
|
141
|
+
|
142
|
+
See [GitHub contributors][GitHub contributors] for the contributor list.
|
143
|
+
|
144
|
+
# License
|
145
|
+
AMS is licensed under the [GPL v3 License](./LICENSE).
|
146
|
+
|
147
|
+
# Related Projects
|
148
|
+
- [Popular Open Source Libraries for Power System Analysis](https://github.com/jinningwang/best-of-ps)
|
149
|
+
- [G-PST Tools Portal](https://g-pst.github.io/tools/): An open tools portal with a classification approach
|
150
|
+
- [Open Source Software (OSS) for Electricity Market Research, Teaching, and Training](https://www2.econ.iastate.edu/tesfatsi/ElectricOSS.htm)
|
151
|
+
|
152
|
+
Some commercial solvers provide academic licenses, such as COPT, GUROBI, CPLEX, and MOSEK.
|
153
|
+
|
154
|
+
* * *
|
155
|
+
|
156
|
+
[GitHub releases]: https://github.com/CURENT/ams/releases
|
157
|
+
[GitHub issues]: https://github.com/CURENT/ams/issues
|
158
|
+
[Github Discussions]: https://github.com/CURENT/ams/discussions
|
159
|
+
[GitHub insights]: https://github.com/CURENT/ams/pulse
|
160
|
+
[GitHub pull requests]: https://github.com/CURENT/ams/pulls
|
161
|
+
[GitHub contributors]: https://github.com/CURENT/ams/graphs/contributors
|
162
|
+
[readthedocs]: https://ams.readthedocs.io
|
163
|
+
[release notes]: https://ams.readthedocs.io/en/latest/release-notes.html
|
164
|
+
[examples]: https://github.com/CURENT/ams/tree/master/examples
|
165
|
+
[verification]: https://github.com/CURENT/ams/tree/master/examples/verification
|
166
|
+
[Binder]: https://mybinder.org/v2/gh/curent/ams/master
|
167
|
+
[LTB Repository]: https://github.com/CURENT
|
168
|
+
|
@@ -8,11 +8,11 @@ import json
|
|
8
8
|
|
9
9
|
version_json = '''
|
10
10
|
{
|
11
|
-
"date": "2024-11-
|
11
|
+
"date": "2024-11-14T17:13:01-0500",
|
12
12
|
"dirty": false,
|
13
13
|
"error": null,
|
14
|
-
"full-revisionid": "
|
15
|
-
"version": "0.9.
|
14
|
+
"full-revisionid": "45fb4203850186bec30f88e946f06a972e8de216",
|
15
|
+
"version": "0.9.12rc1"
|
16
16
|
}
|
17
17
|
''' # END VERSION_JSON
|
18
18
|
|
@@ -9,6 +9,13 @@ The APIs before v3.0.0 are in beta and may change without prior notice.
|
|
9
9
|
Pre-v1.0.0
|
10
10
|
==========
|
11
11
|
|
12
|
+
v0.9.12 (202x-xx-xx)
|
13
|
+
--------------------
|
14
|
+
|
15
|
+
RC1
|
16
|
+
~~~~
|
17
|
+
- Reset setup.py to ensure compatibility
|
18
|
+
|
12
19
|
v0.9.11 (2024-11-14)
|
13
20
|
--------------------
|
14
21
|
|
@@ -0,0 +1,168 @@
|
|
1
|
+
Metadata-Version: 2.1
|
2
|
+
Name: ltbams
|
3
|
+
Version: 0.9.12rc1
|
4
|
+
Summary: Python software for scheduling modeling and co-simulation with dynanics.
|
5
|
+
Home-page: https://github.com/CURENT/ams
|
6
|
+
Author: Jinning Wang
|
7
|
+
Author-email: jinninggm@gmail.com
|
8
|
+
License: GNU Public License v3
|
9
|
+
Platform: UNKNOWN
|
10
|
+
Classifier: Development Status :: 4 - Beta
|
11
|
+
Classifier: Natural Language :: English
|
12
|
+
Classifier: Programming Language :: Python :: 3
|
13
|
+
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
|
14
|
+
Classifier: Environment :: Console
|
15
|
+
Description-Content-Type: text/markdown
|
16
|
+
Provides-Extra: all
|
17
|
+
Provides-Extra: coverage
|
18
|
+
Provides-Extra: dev
|
19
|
+
Provides-Extra: doc
|
20
|
+
Provides-Extra: flake8
|
21
|
+
Provides-Extra: ipython
|
22
|
+
Provides-Extra: myst-parser
|
23
|
+
Provides-Extra: nbsphinx
|
24
|
+
Provides-Extra: numpydoc
|
25
|
+
Provides-Extra: pandoc
|
26
|
+
Provides-Extra: pydata-sphinx-theme
|
27
|
+
Provides-Extra: pyscipopt
|
28
|
+
Provides-Extra: pytest
|
29
|
+
Provides-Extra: pytest-cov
|
30
|
+
Provides-Extra: sphinx
|
31
|
+
Provides-Extra: sphinx-copybutton
|
32
|
+
Provides-Extra: sphinx-panels
|
33
|
+
Provides-Extra: toml
|
34
|
+
License-File: LICENSE
|
35
|
+
|
36
|
+
# LTB AMS
|
37
|
+
|
38
|
+
Python Software for Power System Scheduling Modeling and Co-Simulation with Dynanic, serving as the market simulator for the [CURENT Largescale Testbed][LTB Repository].
|
39
|
+
|
40
|
+
[](https://github.com/CURENT/ams/blob/master/LICENSE)
|
41
|
+

|
42
|
+
[](https://www.python.org/)
|
43
|
+

|
44
|
+
[](https://github.com/CURENT/ams/commits/master/)
|
45
|
+
[](https://github.com/CURENT/ams/commits/develop/)
|
46
|
+
[](https://libraries.io/pypi/ltbams)
|
47
|
+
[](https://mango-dune-07a8b7110.1.azurestaticapps.net/?repo=CURENT%2Fams)
|
48
|
+
|
49
|
+
<img src="docs/source/images/sponsors/CURENT_Logo_NameOnTrans.png" alt="CURENT ERC Logo" width="300" height="auto">
|
50
|
+
|
51
|
+
| | Latest | Stable |
|
52
|
+
|---------------|-----------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------|
|
53
|
+
| Documentation | [](https://ams.readthedocs.io/en/latest/?badge=latest) | [](https://ams.readthedocs.io/en/stable/?badge=stable) |
|
54
|
+
|
55
|
+
|
56
|
+
| Badges | | |
|
57
|
+
|---------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
58
|
+
| Downloads | [](https://pypi.python.org/pypi/ltbams) | [](https://anaconda.org/conda-forge/ltbams) |
|
59
|
+
| Try on Binder | [](https://mybinder.org/v2/gh/curent/ams/master) | |
|
60
|
+
| Code Quality |[](https://app.codacy.com/gh/CURENT/ams/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)| [](https://app.codacy.com/gh/CURENT/ams/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_coverage) |
|
61
|
+
| Build Status | [](https://github.com/curent/ams/actions) | [](https://dev.azure.com/curentltb/ams/_build/latest?definitionId=2&branchName=master) |
|
62
|
+
|
63
|
+
|
64
|
+
# Why AMS
|
65
|
+
|
66
|
+
With the built-in interface with dynamic simulation engine, ANDES, AMS enables Dynamics Interfaced Stability Constrained Production Cost and Market Operation Modeling.
|
67
|
+
|
68
|
+
AMS produces credible scheduling results and competitive performance.
|
69
|
+
The following results show the comparison of DCOPF between AMS and other tools.
|
70
|
+
|
71
|
+
| Cost [\$] | AMS | MATPOWER | pandapower |
|
72
|
+
|----------------:|--------------:|------------:|-----------:|
|
73
|
+
| PEGASE 1354-Bus | 1,173,590.63 | 1,173,590.63 | 1,173,590.63 |
|
74
|
+
| PEGASE 2869-Bus | 2,338,915.61 | 2,338,915.61 | 2,338,915.61 |
|
75
|
+
| GOC 4020-Bus | 793,634.11 | 793,634.11 | 793,634.11 |
|
76
|
+
| EPIGRIDS 5658-Bus| 1,195,466.12 | 1,195,466.12 | 1,195,466.12 |
|
77
|
+
| EPIGRIDS 7336-Bus| 1,855,870.94 | 1,855,870.94 | 1,855,870.94 |
|
78
|
+
|
79
|
+
<img src="docs/source/images/dcopf_time.png" alt="DCOPF Time" width="400" height="auto">
|
80
|
+
|
81
|
+
AMS is currently under active development.
|
82
|
+
Use the following resources to get involved.
|
83
|
+
|
84
|
+
- Start from the [documentation][readthedocs] for installation and tutorial.
|
85
|
+
- Check out examples in the [examples folder][examples]
|
86
|
+
- Read the model verification results in the [examples/verification folder][verification]
|
87
|
+
- Ask a question in the [GitHub Discussions][Github Discussions]
|
88
|
+
- Report bugs or issues by submitting a [GitHub issue][GitHub issues]
|
89
|
+
- Submit contributions using [pull requests][GitHub pull requests]
|
90
|
+
- Read release notes highlighted [here][release notes]
|
91
|
+
- Try in Jupyter Notebook on [Binder][Binder]
|
92
|
+
<!-- + Check out and and cite our [paper][arxiv paper] -->
|
93
|
+
|
94
|
+
# Installation
|
95
|
+
|
96
|
+
***NOTE:***
|
97
|
+
- Version **0.9.9** has known issues. Please avoid using this version
|
98
|
+
- `kvxopt` is recommended to install via `conda` as sometimes ``pip`` struggles to set the correct path for compiled libraries
|
99
|
+
- `cvxpy` versions **below 1.5** are incompatible with `numpy` versions **2.0 and above**
|
100
|
+
|
101
|
+
AMS is released as ``ltbams`` on PyPI and conda-forge.
|
102
|
+
Install from PyPI using pip:
|
103
|
+
|
104
|
+
```bash
|
105
|
+
pip install ltbams
|
106
|
+
```
|
107
|
+
|
108
|
+
Install from conda-forge using conda:
|
109
|
+
|
110
|
+
```bash
|
111
|
+
conda install conda-forge::ltbams
|
112
|
+
```
|
113
|
+
|
114
|
+
Install from GitHub source:
|
115
|
+
|
116
|
+
```bash
|
117
|
+
pip install git+https://github.com/CURENT/ams.git
|
118
|
+
```
|
119
|
+
|
120
|
+
# Example Usage
|
121
|
+
|
122
|
+
Using AMS to run a Real-Time Economic Dispatch (RTED) simulation:
|
123
|
+
|
124
|
+
```python
|
125
|
+
import ams
|
126
|
+
|
127
|
+
ss = ams.load(ams.get_case('ieee14_uced.xlsx'))
|
128
|
+
ss.RTED.run()
|
129
|
+
|
130
|
+
print(ss.RTED.pg.v)
|
131
|
+
```
|
132
|
+
|
133
|
+
# Sponsors and Contributors
|
134
|
+
AMS is the scheduling simulation engine for the CURENT Largescale Testbed (LTB).
|
135
|
+
More information about CURENT LTB can be found at the [LTB Repository][LTB Repository].
|
136
|
+
|
137
|
+
This work was supported in part by the Engineering Research Center Program of the National Science Foundation and the Department of Energy
|
138
|
+
under NSF Award Number EEC-1041877 and the CURENT Industry Partnership Program.
|
139
|
+
|
140
|
+
This work was supported in part by the Advanced Grid Research and Development Program in the Office of Electricity at the U.S. Department of Energy.
|
141
|
+
|
142
|
+
See [GitHub contributors][GitHub contributors] for the contributor list.
|
143
|
+
|
144
|
+
# License
|
145
|
+
AMS is licensed under the [GPL v3 License](./LICENSE).
|
146
|
+
|
147
|
+
# Related Projects
|
148
|
+
- [Popular Open Source Libraries for Power System Analysis](https://github.com/jinningwang/best-of-ps)
|
149
|
+
- [G-PST Tools Portal](https://g-pst.github.io/tools/): An open tools portal with a classification approach
|
150
|
+
- [Open Source Software (OSS) for Electricity Market Research, Teaching, and Training](https://www2.econ.iastate.edu/tesfatsi/ElectricOSS.htm)
|
151
|
+
|
152
|
+
Some commercial solvers provide academic licenses, such as COPT, GUROBI, CPLEX, and MOSEK.
|
153
|
+
|
154
|
+
* * *
|
155
|
+
|
156
|
+
[GitHub releases]: https://github.com/CURENT/ams/releases
|
157
|
+
[GitHub issues]: https://github.com/CURENT/ams/issues
|
158
|
+
[Github Discussions]: https://github.com/CURENT/ams/discussions
|
159
|
+
[GitHub insights]: https://github.com/CURENT/ams/pulse
|
160
|
+
[GitHub pull requests]: https://github.com/CURENT/ams/pulls
|
161
|
+
[GitHub contributors]: https://github.com/CURENT/ams/graphs/contributors
|
162
|
+
[readthedocs]: https://ams.readthedocs.io
|
163
|
+
[release notes]: https://ams.readthedocs.io/en/latest/release-notes.html
|
164
|
+
[examples]: https://github.com/CURENT/ams/tree/master/examples
|
165
|
+
[verification]: https://github.com/CURENT/ams/tree/master/examples/verification
|
166
|
+
[Binder]: https://mybinder.org/v2/gh/curent/ams/master
|
167
|
+
[LTB Repository]: https://github.com/CURENT
|
168
|
+
|
@@ -157,6 +157,8 @@ docs/source/modeling/system.rst
|
|
157
157
|
ltbams.egg-info/PKG-INFO
|
158
158
|
ltbams.egg-info/SOURCES.txt
|
159
159
|
ltbams.egg-info/dependency_links.txt
|
160
|
+
ltbams.egg-info/entry_points.txt
|
161
|
+
ltbams.egg-info/requires.txt
|
160
162
|
ltbams.egg-info/top_level.txt
|
161
163
|
tests/__init__.py
|
162
164
|
tests/test_1st_system.py
|
@@ -0,0 +1,94 @@
|
|
1
|
+
andes>=1.8.7
|
2
|
+
cvxpy
|
3
|
+
kvxopt>=1.3.2.1
|
4
|
+
matplotlib
|
5
|
+
numpy
|
6
|
+
openpyxl
|
7
|
+
pandas
|
8
|
+
psutil
|
9
|
+
pybind11
|
10
|
+
scipy
|
11
|
+
sympy!=1.10.0,>=1.6
|
12
|
+
|
13
|
+
[all]
|
14
|
+
coverage
|
15
|
+
flake8
|
16
|
+
ipython
|
17
|
+
myst-parser
|
18
|
+
nbsphinx
|
19
|
+
numpydoc
|
20
|
+
pandoc
|
21
|
+
pydata-sphinx-theme
|
22
|
+
pyscipopt
|
23
|
+
pytest
|
24
|
+
pytest-cov
|
25
|
+
sphinx
|
26
|
+
sphinx-copybutton
|
27
|
+
sphinx-panels
|
28
|
+
toml
|
29
|
+
|
30
|
+
[coverage ]
|
31
|
+
coverage
|
32
|
+
|
33
|
+
[dev]
|
34
|
+
coverage
|
35
|
+
flake8
|
36
|
+
numpydoc
|
37
|
+
pyscipopt
|
38
|
+
pytest
|
39
|
+
pytest-cov
|
40
|
+
toml
|
41
|
+
|
42
|
+
[doc]
|
43
|
+
ipython
|
44
|
+
myst-parser
|
45
|
+
nbsphinx
|
46
|
+
numpydoc
|
47
|
+
pandoc
|
48
|
+
pydata-sphinx-theme
|
49
|
+
pyscipopt
|
50
|
+
sphinx
|
51
|
+
sphinx-copybutton
|
52
|
+
sphinx-panels
|
53
|
+
|
54
|
+
[flake8 ]
|
55
|
+
flake8
|
56
|
+
|
57
|
+
[ipython ]
|
58
|
+
ipython
|
59
|
+
|
60
|
+
[myst-parser ]
|
61
|
+
myst-parser
|
62
|
+
|
63
|
+
[nbsphinx ]
|
64
|
+
nbsphinx
|
65
|
+
|
66
|
+
[numpydoc ]
|
67
|
+
numpydoc
|
68
|
+
|
69
|
+
[pandoc ]
|
70
|
+
pandoc
|
71
|
+
|
72
|
+
[pydata-sphinx-theme ]
|
73
|
+
pydata-sphinx-theme
|
74
|
+
|
75
|
+
[pyscipopt ]
|
76
|
+
pyscipopt
|
77
|
+
|
78
|
+
[pytest ]
|
79
|
+
pytest
|
80
|
+
|
81
|
+
[pytest-cov ]
|
82
|
+
pytest-cov
|
83
|
+
|
84
|
+
[sphinx ]
|
85
|
+
sphinx
|
86
|
+
|
87
|
+
[sphinx-copybutton ]
|
88
|
+
sphinx-copybutton
|
89
|
+
|
90
|
+
[sphinx-panels ]
|
91
|
+
sphinx-panels
|
92
|
+
|
93
|
+
[toml ]
|
94
|
+
toml
|
@@ -0,0 +1,108 @@
|
|
1
|
+
import re
|
2
|
+
import sys
|
3
|
+
import os
|
4
|
+
from collections import defaultdict
|
5
|
+
|
6
|
+
from setuptools import find_packages, setup
|
7
|
+
|
8
|
+
import versioneer
|
9
|
+
|
10
|
+
if sys.version_info < (3, 6):
|
11
|
+
error = """
|
12
|
+
ams does not support Python <= {0}.{1}.
|
13
|
+
Python 3.6 and above is required. Check your Python version like so:
|
14
|
+
|
15
|
+
python3 --version
|
16
|
+
|
17
|
+
This may be due to an out-of-date pip. Make sure you have pip >= 9.0.1.
|
18
|
+
Upgrade pip like so:
|
19
|
+
|
20
|
+
pip install --upgrade pip
|
21
|
+
""".format(3, 6)
|
22
|
+
sys.exit(error)
|
23
|
+
|
24
|
+
here = os.path.abspath(os.path.dirname(__file__))
|
25
|
+
|
26
|
+
with open(os.path.join(here, 'README.md'), encoding='utf-8') as readme_file:
|
27
|
+
readme = readme_file.read()
|
28
|
+
|
29
|
+
|
30
|
+
def parse_requires(filename):
|
31
|
+
with open(os.path.join(here, filename)) as requirements_file:
|
32
|
+
reqs = [
|
33
|
+
line for line in requirements_file.read().splitlines()
|
34
|
+
if not line.startswith('#')
|
35
|
+
]
|
36
|
+
return reqs
|
37
|
+
|
38
|
+
|
39
|
+
def get_extra_requires(filename, add_all=True):
|
40
|
+
"""
|
41
|
+
Build ``extras_require`` from an invert requirements file.
|
42
|
+
|
43
|
+
See:
|
44
|
+
https://hanxiao.io/2019/11/07/A-Better-Practice-for-Managing-extras-require-Dependencies-in-Python/
|
45
|
+
"""
|
46
|
+
|
47
|
+
with open(os.path.join(here, filename)) as fp:
|
48
|
+
extra_deps = defaultdict(set)
|
49
|
+
for k in fp:
|
50
|
+
if k.strip() and not k.startswith('#'):
|
51
|
+
tags = set()
|
52
|
+
if '#' in k:
|
53
|
+
if k.count("#") > 1:
|
54
|
+
raise ValueError("Invalid line: {}".format(k))
|
55
|
+
|
56
|
+
k, v = k.split('#')
|
57
|
+
tags.update(vv.strip() for vv in v.split(','))
|
58
|
+
|
59
|
+
tags.add(re.split('[<=>]', k)[0])
|
60
|
+
for t in tags:
|
61
|
+
extra_deps[t].add(k)
|
62
|
+
|
63
|
+
# add tag `all` at the end
|
64
|
+
if add_all:
|
65
|
+
extra_deps['all'] = set(vv for v in extra_deps.values() for vv in v)
|
66
|
+
|
67
|
+
return extra_deps
|
68
|
+
|
69
|
+
|
70
|
+
extras_require = get_extra_requires("requirements-extra.txt")
|
71
|
+
|
72
|
+
# --- update `extras_conda` to include packages only available in PyPI ---
|
73
|
+
|
74
|
+
setup(
|
75
|
+
name='ltbams',
|
76
|
+
version=versioneer.get_version(),
|
77
|
+
cmdclass=versioneer.get_cmdclass(),
|
78
|
+
description="Python software for scheduling modeling and co-simulation with dynanics.",
|
79
|
+
long_description=readme,
|
80
|
+
long_description_content_type='text/markdown',
|
81
|
+
author="Jinning Wang",
|
82
|
+
author_email='jinninggm@gmail.com',
|
83
|
+
url='https://github.com/CURENT/ams',
|
84
|
+
packages=find_packages(exclude=[]),
|
85
|
+
entry_points={
|
86
|
+
'console_scripts': [
|
87
|
+
'ams = ams.cli:main',
|
88
|
+
],
|
89
|
+
},
|
90
|
+
include_package_data=True,
|
91
|
+
package_data={
|
92
|
+
'ltbams': [
|
93
|
+
# When adding files here, remember to update MANIFEST.in as well,
|
94
|
+
# or else they will not be included in the distribution on PyPI!
|
95
|
+
# 'path/to/data_file',
|
96
|
+
]
|
97
|
+
},
|
98
|
+
install_requires=parse_requires('requirements.txt'),
|
99
|
+
extras_require=extras_require,
|
100
|
+
license="GNU Public License v3",
|
101
|
+
classifiers=[
|
102
|
+
'Development Status :: 4 - Beta',
|
103
|
+
'Natural Language :: English',
|
104
|
+
'Programming Language :: Python :: 3',
|
105
|
+
'License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)',
|
106
|
+
'Environment :: Console',
|
107
|
+
],
|
108
|
+
)
|
ltbams-0.9.11/PKG-INFO
DELETED
ltbams-0.9.11/setup.py
DELETED
@@ -1,17 +0,0 @@
|
|
1
|
-
from setuptools import setup, find_packages
|
2
|
-
|
3
|
-
import versioneer
|
4
|
-
|
5
|
-
setup(
|
6
|
-
name='ltbams',
|
7
|
-
version=versioneer.get_version(),
|
8
|
-
cmdclass=versioneer.get_cmdclass(),
|
9
|
-
packages=find_packages(where="."),
|
10
|
-
package_data={
|
11
|
-
'ams': [
|
12
|
-
# When adding files here, remember to update MANIFEST.in as well,
|
13
|
-
# or else they will not be included in the distribution on PyPI!
|
14
|
-
# 'path/to/data_file',
|
15
|
-
]
|
16
|
-
},
|
17
|
-
)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|