ltbams 1.0.2a2__tar.gz → 1.0.3__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.
Files changed (200) hide show
  1. {ltbams-1.0.2a2/ltbams.egg-info → ltbams-1.0.3}/PKG-INFO +6 -3
  2. {ltbams-1.0.2a2 → ltbams-1.0.3}/README.md +5 -2
  3. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/_version.py +3 -3
  4. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/interface.py +6 -1
  5. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/release-notes.rst +10 -1
  6. {ltbams-1.0.2a2 → ltbams-1.0.3/ltbams.egg-info}/PKG-INFO +6 -3
  7. {ltbams-1.0.2a2 → ltbams-1.0.3}/CONTRIBUTING.rst +0 -0
  8. {ltbams-1.0.2a2 → ltbams-1.0.3}/LICENSE +0 -0
  9. {ltbams-1.0.2a2 → ltbams-1.0.3}/MANIFEST.in +0 -0
  10. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/__init__.py +0 -0
  11. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/__main__.py +0 -0
  12. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/5bus/pjm5bus_demo.xlsx +0 -0
  13. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/5bus/pjm5bus_jumper.xlsx +0 -0
  14. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/5bus/pjm5bus_uced.json +0 -0
  15. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/5bus/pjm5bus_uced.xlsx +0 -0
  16. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/5bus/pjm5bus_uced_esd1.xlsx +0 -0
  17. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/5bus/pjm5bus_uced_ev.xlsx +0 -0
  18. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/ieee123/ieee123.xlsx +0 -0
  19. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/ieee123/ieee123_regcv1.xlsx +0 -0
  20. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/ieee14/ieee14.json +0 -0
  21. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/ieee14/ieee14.raw +0 -0
  22. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/ieee14/ieee14_conn.xlsx +0 -0
  23. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/ieee14/ieee14_uced.xlsx +0 -0
  24. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/ieee39/ieee39.xlsx +0 -0
  25. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/ieee39/ieee39_uced.xlsx +0 -0
  26. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/ieee39/ieee39_uced_esd1.xlsx +0 -0
  27. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/ieee39/ieee39_uced_pvd1.xlsx +0 -0
  28. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/ieee39/ieee39_uced_vis.xlsx +0 -0
  29. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/matpower/benchmark.json +0 -0
  30. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/matpower/case118.m +0 -0
  31. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/matpower/case14.m +0 -0
  32. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/matpower/case300.m +0 -0
  33. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/matpower/case39.m +0 -0
  34. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/matpower/case5.m +0 -0
  35. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/matpower/case_ACTIVSg2000.m +0 -0
  36. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/npcc/npcc.m +0 -0
  37. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/npcc/npcc_uced.xlsx +0 -0
  38. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/pglib/pglib_opf_case39_epri__api.m +0 -0
  39. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/wecc/wecc.m +0 -0
  40. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cases/wecc/wecc_uced.xlsx +0 -0
  41. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/cli.py +0 -0
  42. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/core/__init__.py +0 -0
  43. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/core/documenter.py +0 -0
  44. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/core/matprocessor.py +0 -0
  45. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/core/model.py +0 -0
  46. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/core/param.py +0 -0
  47. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/core/service.py +0 -0
  48. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/core/symprocessor.py +0 -0
  49. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/core/var.py +0 -0
  50. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/extension/__init__.py +0 -0
  51. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/extension/eva.py +0 -0
  52. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/io/__init__.py +0 -0
  53. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/io/json.py +0 -0
  54. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/io/matpower.py +0 -0
  55. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/io/psse.py +0 -0
  56. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/io/pypower.py +0 -0
  57. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/io/xlsx.py +0 -0
  58. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/main.py +0 -0
  59. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/__init__.py +0 -0
  60. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/area.py +0 -0
  61. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/bus.py +0 -0
  62. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/cost.py +0 -0
  63. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/distributed/__init__.py +0 -0
  64. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/distributed/esd1.py +0 -0
  65. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/distributed/ev.py +0 -0
  66. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/distributed/pvd1.py +0 -0
  67. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/group.py +0 -0
  68. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/info.py +0 -0
  69. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/line.py +0 -0
  70. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/renewable/__init__.py +0 -0
  71. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/renewable/regc.py +0 -0
  72. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/reserve.py +0 -0
  73. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/shunt.py +0 -0
  74. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/static/__init__.py +0 -0
  75. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/static/gen.py +0 -0
  76. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/static/pq.py +0 -0
  77. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/timeslot.py +0 -0
  78. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/models/zone.py +0 -0
  79. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/opt/__init__.py +0 -0
  80. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/opt/constraint.py +0 -0
  81. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/opt/exprcalc.py +0 -0
  82. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/opt/expression.py +0 -0
  83. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/opt/objective.py +0 -0
  84. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/opt/omodel.py +0 -0
  85. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/opt/optzbase.py +0 -0
  86. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/opt/param.py +0 -0
  87. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/opt/var.py +0 -0
  88. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/__init__.py +0 -0
  89. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/_compat.py +0 -0
  90. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/core/__init__.py +0 -0
  91. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/core/pips.py +0 -0
  92. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/core/ppoption.py +0 -0
  93. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/core/ppver.py +0 -0
  94. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/core/solver.py +0 -0
  95. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/eps.py +0 -0
  96. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/idx.py +0 -0
  97. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/io.py +0 -0
  98. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/make/__init__.py +0 -0
  99. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/make/matrices.py +0 -0
  100. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/make/pdv.py +0 -0
  101. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/routines/__init__.py +0 -0
  102. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/routines/cpf.py +0 -0
  103. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/routines/cpf_callbacks.py +0 -0
  104. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/routines/opf.py +0 -0
  105. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/routines/opffcns.py +0 -0
  106. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/routines/pflow.py +0 -0
  107. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/toggle.py +0 -0
  108. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/pypower/utils.py +0 -0
  109. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/report.py +0 -0
  110. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/routines/__init__.py +0 -0
  111. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/routines/acopf.py +0 -0
  112. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/routines/cpf.py +0 -0
  113. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/routines/dcopf.py +0 -0
  114. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/routines/dcpf.py +0 -0
  115. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/routines/dcpf0.py +0 -0
  116. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/routines/dopf.py +0 -0
  117. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/routines/ed.py +0 -0
  118. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/routines/pflow.py +0 -0
  119. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/routines/pflow0.py +0 -0
  120. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/routines/routine.py +0 -0
  121. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/routines/rted.py +0 -0
  122. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/routines/type.py +0 -0
  123. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/routines/uc.py +0 -0
  124. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/shared.py +0 -0
  125. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/system.py +0 -0
  126. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/utils/__init__.py +0 -0
  127. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/utils/misc.py +0 -0
  128. {ltbams-1.0.2a2 → ltbams-1.0.3}/ams/utils/paths.py +0 -0
  129. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/Makefile +0 -0
  130. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/make.bat +0 -0
  131. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/_templates/autosummary/base.rst +0 -0
  132. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/_templates/autosummary/class.rst +0 -0
  133. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/_templates/autosummary/module.rst +0 -0
  134. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/_templates/autosummary/module_toctree.rst +0 -0
  135. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/api.rst +0 -0
  136. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/conf.py +0 -0
  137. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/examples/index.rst +0 -0
  138. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/genmodelref.py +0 -0
  139. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/genroutineref.py +0 -0
  140. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/getting_started/copyright.rst +0 -0
  141. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/getting_started/formats/index.rst +0 -0
  142. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/getting_started/formats/matpower.rst +0 -0
  143. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/getting_started/formats/psse.rst +0 -0
  144. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/getting_started/formats/pypower.rst +0 -0
  145. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/getting_started/formats/xlsx.png +0 -0
  146. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/getting_started/formats/xlsx.rst +0 -0
  147. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/getting_started/index.rst +0 -0
  148. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/getting_started/install.rst +0 -0
  149. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/getting_started/overview.rst +0 -0
  150. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/getting_started/testcase.rst +0 -0
  151. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/getting_started/verification.rst +0 -0
  152. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/images/curent.ico +0 -0
  153. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/images/dcopf_time.png +0 -0
  154. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/images/sponsors/CURENT_Logo_NameOnTrans.png +0 -0
  155. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/images/sponsors/CURENT_Logo_Transparent.png +0 -0
  156. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/images/sponsors/CURENT_Logo_Transparent_Name.png +0 -0
  157. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/images/sponsors/doe.png +0 -0
  158. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/index.rst +0 -0
  159. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/modeling/example.rst +0 -0
  160. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/modeling/index.rst +0 -0
  161. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/modeling/model.rst +0 -0
  162. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/modeling/routine.rst +0 -0
  163. {ltbams-1.0.2a2 → ltbams-1.0.3}/docs/source/modeling/system.rst +0 -0
  164. {ltbams-1.0.2a2 → ltbams-1.0.3}/ltbams.egg-info/SOURCES.txt +0 -0
  165. {ltbams-1.0.2a2 → ltbams-1.0.3}/ltbams.egg-info/dependency_links.txt +0 -0
  166. {ltbams-1.0.2a2 → ltbams-1.0.3}/ltbams.egg-info/entry_points.txt +0 -0
  167. {ltbams-1.0.2a2 → ltbams-1.0.3}/ltbams.egg-info/requires.txt +0 -0
  168. {ltbams-1.0.2a2 → ltbams-1.0.3}/ltbams.egg-info/top_level.txt +0 -0
  169. {ltbams-1.0.2a2 → ltbams-1.0.3}/pyproject.toml +0 -0
  170. {ltbams-1.0.2a2 → ltbams-1.0.3}/requirements-dev.txt +0 -0
  171. {ltbams-1.0.2a2 → ltbams-1.0.3}/requirements.txt +0 -0
  172. {ltbams-1.0.2a2 → ltbams-1.0.3}/setup.cfg +0 -0
  173. {ltbams-1.0.2a2 → ltbams-1.0.3}/setup.py +0 -0
  174. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/__init__.py +0 -0
  175. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_1st_system.py +0 -0
  176. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_addressing.py +0 -0
  177. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_andes_mats.py +0 -0
  178. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_case.py +0 -0
  179. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_cli.py +0 -0
  180. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_export_csv.py +0 -0
  181. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_group.py +0 -0
  182. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_interface.py +0 -0
  183. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_io.py +0 -0
  184. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_jumper.py +0 -0
  185. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_known_good.py +0 -0
  186. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_matp.py +0 -0
  187. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_model.py +0 -0
  188. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_omodel.py +0 -0
  189. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_paths.py +0 -0
  190. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_report.py +0 -0
  191. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_repr.py +0 -0
  192. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_routine.py +0 -0
  193. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_rtn_dcopf.py +0 -0
  194. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_rtn_dcpf.py +0 -0
  195. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_rtn_ed.py +0 -0
  196. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_rtn_pflow.py +0 -0
  197. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_rtn_rted.py +0 -0
  198. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_rtn_uc.py +0 -0
  199. {ltbams-1.0.2a2 → ltbams-1.0.3}/tests/test_service.py +0 -0
  200. {ltbams-1.0.2a2 → ltbams-1.0.3}/versioneer.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: ltbams
3
- Version: 1.0.2a2
3
+ Version: 1.0.3
4
4
  Summary: Python software for scheduling modeling and co-simulation with dynamics.
5
5
  Home-page: https://github.com/CURENT/ams
6
6
  Author: Jinning Wang
@@ -33,7 +33,9 @@ Python Software for Power System Scheduling Modeling and Co-Simulation with Dyna
33
33
  [![License: GPL-3.0](https://img.shields.io/badge/License-GPL--3.0-blue.svg)](https://github.com/CURENT/ams/blob/master/LICENSE)
34
34
  ![platforms](https://anaconda.org/conda-forge/ltbams/badges/platforms.svg)
35
35
  [![Python Versions](https://img.shields.io/badge/Python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12-blue)](https://www.python.org/)
36
+ [![DOI:10.1109/TSTE.2025.3528027](https://zenodo.org/badge/DOI/10.1109/TSTE.2025.3528027.svg)](https://ieeexplore.ieee.org/document/10836855)
36
37
  [![Project Status: Active – The project has reached a stable, usable state and is being actively developed.](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active)
38
+ [![codecov](https://codecov.io/gh/CURENT/ams/graph/badge.svg?token=RZI5GLLBQH)](https://codecov.io/gh/CURENT/ams)
37
39
  ![Repo Size](https://img.shields.io/github/repo-size/CURENT/ams)
38
40
  [![GitHub last commit (master)](https://img.shields.io/github/last-commit/CURENT/ams/master?label=last%20commit%20to%20master)](https://github.com/CURENT/ams/commits/master/)
39
41
  [![GitHub last commit (develop)](https://img.shields.io/github/last-commit/CURENT/ams/develop?label=last%20commit%20to%20develop)](https://github.com/CURENT/ams/commits/develop/)
@@ -143,11 +145,12 @@ pip install git+https://github.com/CURENT/ams.git
143
145
  ```
144
146
 
145
147
  ***NOTE:***
146
- - Version **0.9.9** has known issues and has been yanked from PyPI
147
- - `kvxopt` is recommended to install via `conda` as sometimes ``pip`` struggles to set the correct path for compiled libraries
148
+ - `cvxpy` is distributed with the open source solvers CLARABEL, OSQP, and SCS, but MIP-capable solvers need separate installation
148
149
  - `cvxpy` versions **below 1.5** are incompatible with `numpy` versions **2.0 and above**
149
150
  - If the solver `SCIP` encounters an import error caused by a missing `libscip.9.1.dylib`, try reinstalling its Python interface by running `pip install pyscipopt --no-binary scip --force`
151
+ - `kvxopt` is recommended to install via `conda` as sometimes ``pip`` struggles to set the correct path for compiled libraries
150
152
  - Versions **1.0.0** and **1.0.1** are only available on PyPI
153
+ - Version **0.9.9** has known issues and has been yanked from PyPI
151
154
 
152
155
  # Example Usage
153
156
 
@@ -5,7 +5,9 @@ Python Software for Power System Scheduling Modeling and Co-Simulation with Dyna
5
5
  [![License: GPL-3.0](https://img.shields.io/badge/License-GPL--3.0-blue.svg)](https://github.com/CURENT/ams/blob/master/LICENSE)
6
6
  ![platforms](https://anaconda.org/conda-forge/ltbams/badges/platforms.svg)
7
7
  [![Python Versions](https://img.shields.io/badge/Python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12-blue)](https://www.python.org/)
8
+ [![DOI:10.1109/TSTE.2025.3528027](https://zenodo.org/badge/DOI/10.1109/TSTE.2025.3528027.svg)](https://ieeexplore.ieee.org/document/10836855)
8
9
  [![Project Status: Active – The project has reached a stable, usable state and is being actively developed.](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active)
10
+ [![codecov](https://codecov.io/gh/CURENT/ams/graph/badge.svg?token=RZI5GLLBQH)](https://codecov.io/gh/CURENT/ams)
9
11
  ![Repo Size](https://img.shields.io/github/repo-size/CURENT/ams)
10
12
  [![GitHub last commit (master)](https://img.shields.io/github/last-commit/CURENT/ams/master?label=last%20commit%20to%20master)](https://github.com/CURENT/ams/commits/master/)
11
13
  [![GitHub last commit (develop)](https://img.shields.io/github/last-commit/CURENT/ams/develop?label=last%20commit%20to%20develop)](https://github.com/CURENT/ams/commits/develop/)
@@ -115,11 +117,12 @@ pip install git+https://github.com/CURENT/ams.git
115
117
  ```
116
118
 
117
119
  ***NOTE:***
118
- - Version **0.9.9** has known issues and has been yanked from PyPI
119
- - `kvxopt` is recommended to install via `conda` as sometimes ``pip`` struggles to set the correct path for compiled libraries
120
+ - `cvxpy` is distributed with the open source solvers CLARABEL, OSQP, and SCS, but MIP-capable solvers need separate installation
120
121
  - `cvxpy` versions **below 1.5** are incompatible with `numpy` versions **2.0 and above**
121
122
  - If the solver `SCIP` encounters an import error caused by a missing `libscip.9.1.dylib`, try reinstalling its Python interface by running `pip install pyscipopt --no-binary scip --force`
123
+ - `kvxopt` is recommended to install via `conda` as sometimes ``pip`` struggles to set the correct path for compiled libraries
122
124
  - Versions **1.0.0** and **1.0.1** are only available on PyPI
125
+ - Version **0.9.9** has known issues and has been yanked from PyPI
123
126
 
124
127
  # Example Usage
125
128
 
@@ -8,11 +8,11 @@ import json
8
8
 
9
9
  version_json = '''
10
10
  {
11
- "date": "2025-02-01T21:17:46-0500",
11
+ "date": "2025-03-17T16:36:49-0400",
12
12
  "dirty": false,
13
13
  "error": null,
14
- "full-revisionid": "6a2dcb6840ec8d966fc7249bbfcdfe4b83722e51",
15
- "version": "1.0.2a2"
14
+ "full-revisionid": "d97c7b0b052ca9a5dd266cedb75054b5b0720010",
15
+ "version": "1.0.3"
16
16
  }
17
17
  ''' # END VERSION_JSON
18
18
 
@@ -336,7 +336,12 @@ def parse_addfile(adsys, amsys, addfile):
336
336
 
337
337
  # NOTE: Group TimedEvent needs special treatment
338
338
  # adjust Toggle and Fault models
339
- toggle_df = df_models.get('Toggle') or df_models.get('Toggler')
339
+ keys_toggle = ['Toggle', 'Toggler']
340
+ toggle_df = None
341
+ for key in keys_toggle:
342
+ if key in df_models:
343
+ toggle_df = df_models[key]
344
+ break
340
345
  if toggle_df is not None:
341
346
  toggle_df['dev'] = toggle_df.apply(replace_dev, axis=1,
342
347
  mdl='model', dev='dev',
@@ -6,9 +6,15 @@ Release notes
6
6
 
7
7
  The APIs before v3.0.0 are in beta and may change without prior notice.
8
8
 
9
- Pre-v1.0.0
9
+ v1.0
10
10
  ==========
11
11
 
12
+ v1.0.3 (2024-03-17)
13
+
14
+ --------------------
15
+
16
+ - Bug fix in function ``ams.interface.parse_addfile``, released in v1.0.3a1
17
+
12
18
  v1.0.2 (2024-02-01)
13
19
 
14
20
  --------------------
@@ -35,6 +41,9 @@ v1.0.0 (2024-01-24)
35
41
  - Deprecate method ``get_idx`` and suggest using ``get_all_idxes`` instead
36
42
  - Remove module ``benchmarks.py`` and its tests for simplicity
37
43
 
44
+ Pre-v1.0
45
+ ==========
46
+
38
47
  v0.9.13 (2024-12-05)
39
48
  --------------------
40
49
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: ltbams
3
- Version: 1.0.2a2
3
+ Version: 1.0.3
4
4
  Summary: Python software for scheduling modeling and co-simulation with dynamics.
5
5
  Home-page: https://github.com/CURENT/ams
6
6
  Author: Jinning Wang
@@ -33,7 +33,9 @@ Python Software for Power System Scheduling Modeling and Co-Simulation with Dyna
33
33
  [![License: GPL-3.0](https://img.shields.io/badge/License-GPL--3.0-blue.svg)](https://github.com/CURENT/ams/blob/master/LICENSE)
34
34
  ![platforms](https://anaconda.org/conda-forge/ltbams/badges/platforms.svg)
35
35
  [![Python Versions](https://img.shields.io/badge/Python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12-blue)](https://www.python.org/)
36
+ [![DOI:10.1109/TSTE.2025.3528027](https://zenodo.org/badge/DOI/10.1109/TSTE.2025.3528027.svg)](https://ieeexplore.ieee.org/document/10836855)
36
37
  [![Project Status: Active – The project has reached a stable, usable state and is being actively developed.](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active)
38
+ [![codecov](https://codecov.io/gh/CURENT/ams/graph/badge.svg?token=RZI5GLLBQH)](https://codecov.io/gh/CURENT/ams)
37
39
  ![Repo Size](https://img.shields.io/github/repo-size/CURENT/ams)
38
40
  [![GitHub last commit (master)](https://img.shields.io/github/last-commit/CURENT/ams/master?label=last%20commit%20to%20master)](https://github.com/CURENT/ams/commits/master/)
39
41
  [![GitHub last commit (develop)](https://img.shields.io/github/last-commit/CURENT/ams/develop?label=last%20commit%20to%20develop)](https://github.com/CURENT/ams/commits/develop/)
@@ -143,11 +145,12 @@ pip install git+https://github.com/CURENT/ams.git
143
145
  ```
144
146
 
145
147
  ***NOTE:***
146
- - Version **0.9.9** has known issues and has been yanked from PyPI
147
- - `kvxopt` is recommended to install via `conda` as sometimes ``pip`` struggles to set the correct path for compiled libraries
148
+ - `cvxpy` is distributed with the open source solvers CLARABEL, OSQP, and SCS, but MIP-capable solvers need separate installation
148
149
  - `cvxpy` versions **below 1.5** are incompatible with `numpy` versions **2.0 and above**
149
150
  - If the solver `SCIP` encounters an import error caused by a missing `libscip.9.1.dylib`, try reinstalling its Python interface by running `pip install pyscipopt --no-binary scip --force`
151
+ - `kvxopt` is recommended to install via `conda` as sometimes ``pip`` struggles to set the correct path for compiled libraries
150
152
  - Versions **1.0.0** and **1.0.1** are only available on PyPI
153
+ - Version **0.9.9** has known issues and has been yanked from PyPI
151
154
 
152
155
  # Example Usage
153
156
 
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
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
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
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
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
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
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