ltbams 1.0.0__py3-none-any.whl → 1.0.2a1__py3-none-any.whl

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 (554) hide show
  1. ams/_version.py +4 -4
  2. ams/main.py +0 -2
  3. ams/shared.py +29 -0
  4. docs/source/images/curent.ico +0 -0
  5. docs/source/release-notes.rst +13 -0
  6. {ltbams-1.0.0.dist-info → ltbams-1.0.2a1.dist-info}/METADATA +5 -26
  7. ltbams-1.0.2a1.dist-info/RECORD +188 -0
  8. ltbams-1.0.2a1.dist-info/top_level.txt +3 -0
  9. tests/test_report.py +11 -5
  10. tests/test_rtn_ed.py +10 -6
  11. tests/test_rtn_rted.py +9 -9
  12. tests/test_rtn_uc.py +25 -25
  13. ams/routines/pflow1.py +0 -156
  14. docs/build/doctrees/nbsphinx/_examples_demo_demo_AGC_20_1.png +0 -0
  15. docs/build/doctrees/nbsphinx/_examples_demo_demo_AGC_37_1.png +0 -0
  16. docs/build/doctrees/nbsphinx/_examples_demo_demo_AGC_39_1.png +0 -0
  17. docs/build/html/_images/_examples_demo_demo_AGC_20_1.png +0 -0
  18. docs/build/html/_images/_examples_demo_demo_AGC_37_1.png +0 -0
  19. docs/build/html/_images/_examples_demo_demo_AGC_39_1.png +0 -0
  20. docs/build/html/_images/xlsx.png +0 -0
  21. docs/build/html/_static/file.png +0 -0
  22. docs/build/html/_static/minus.png +0 -0
  23. docs/build/html/_static/plus.png +0 -0
  24. docs/source/_generated/_generated/ams.core.model.Model.alter.rst +0 -6
  25. docs/source/_generated/_generated/ams.core.model.Model.class_name.rst +0 -6
  26. docs/source/_generated/_generated/ams.core.model.Model.doc.rst +0 -6
  27. docs/source/_generated/_generated/ams.core.model.Model.get.rst +0 -6
  28. docs/source/_generated/_generated/ams.core.model.Model.get_idx.rst +0 -6
  29. docs/source/_generated/_generated/ams.core.model.Model.idx2uid.rst +0 -6
  30. docs/source/_generated/_generated/ams.core.model.Model.list2array.rst +0 -6
  31. docs/source/_generated/_generated/ams.core.model.Model.set.rst +0 -6
  32. docs/source/_generated/_generated/ams.core.model.Model.set_backref.rst +0 -6
  33. docs/source/_generated/_generated/ams.core.param.RParam.class_name.rst +0 -6
  34. docs/source/_generated/_generated/ams.core.param.RParam.dtype.rst +0 -6
  35. docs/source/_generated/_generated/ams.core.param.RParam.evaluate.rst +0 -6
  36. docs/source/_generated/_generated/ams.core.param.RParam.get_idx.rst +0 -6
  37. docs/source/_generated/_generated/ams.core.param.RParam.n.rst +0 -6
  38. docs/source/_generated/_generated/ams.core.param.RParam.parse.rst +0 -6
  39. docs/source/_generated/_generated/ams.core.param.RParam.shape.rst +0 -6
  40. docs/source/_generated/_generated/ams.core.param.RParam.size.rst +0 -6
  41. docs/source/_generated/_generated/ams.core.param.RParam.update.rst +0 -6
  42. docs/source/_generated/_generated/ams.core.param.RParam.v.rst +0 -6
  43. docs/source/_generated/_generated/ams.core.service.LoadScale.assign_memory.rst +0 -6
  44. docs/source/_generated/_generated/ams.core.service.LoadScale.class_name.rst +0 -6
  45. docs/source/_generated/_generated/ams.core.service.LoadScale.evaluate.rst +0 -6
  46. docs/source/_generated/_generated/ams.core.service.LoadScale.get_names.rst +0 -6
  47. docs/source/_generated/_generated/ams.core.service.LoadScale.n.rst +0 -6
  48. docs/source/_generated/_generated/ams.core.service.LoadScale.parse.rst +0 -6
  49. docs/source/_generated/_generated/ams.core.service.LoadScale.shape.rst +0 -6
  50. docs/source/_generated/_generated/ams.core.service.LoadScale.size.rst +0 -6
  51. docs/source/_generated/_generated/ams.core.service.LoadScale.update.rst +0 -6
  52. docs/source/_generated/_generated/ams.core.service.LoadScale.v.rst +0 -6
  53. docs/source/_generated/_generated/ams.core.service.MinDur.assign_memory.rst +0 -6
  54. docs/source/_generated/_generated/ams.core.service.MinDur.class_name.rst +0 -6
  55. docs/source/_generated/_generated/ams.core.service.MinDur.evaluate.rst +0 -6
  56. docs/source/_generated/_generated/ams.core.service.MinDur.get_names.rst +0 -6
  57. docs/source/_generated/_generated/ams.core.service.MinDur.n.rst +0 -6
  58. docs/source/_generated/_generated/ams.core.service.MinDur.parse.rst +0 -6
  59. docs/source/_generated/_generated/ams.core.service.MinDur.shape.rst +0 -6
  60. docs/source/_generated/_generated/ams.core.service.MinDur.size.rst +0 -6
  61. docs/source/_generated/_generated/ams.core.service.MinDur.update.rst +0 -6
  62. docs/source/_generated/_generated/ams.core.service.MinDur.v.rst +0 -6
  63. docs/source/_generated/_generated/ams.core.service.MinDur.v0.rst +0 -6
  64. docs/source/_generated/_generated/ams.core.service.MinDur.v1.rst +0 -6
  65. docs/source/_generated/_generated/ams.core.service.NumExpandDim.assign_memory.rst +0 -6
  66. docs/source/_generated/_generated/ams.core.service.NumExpandDim.class_name.rst +0 -6
  67. docs/source/_generated/_generated/ams.core.service.NumExpandDim.evaluate.rst +0 -6
  68. docs/source/_generated/_generated/ams.core.service.NumExpandDim.get_names.rst +0 -6
  69. docs/source/_generated/_generated/ams.core.service.NumExpandDim.n.rst +0 -6
  70. docs/source/_generated/_generated/ams.core.service.NumExpandDim.parse.rst +0 -6
  71. docs/source/_generated/_generated/ams.core.service.NumExpandDim.shape.rst +0 -6
  72. docs/source/_generated/_generated/ams.core.service.NumExpandDim.size.rst +0 -6
  73. docs/source/_generated/_generated/ams.core.service.NumExpandDim.update.rst +0 -6
  74. docs/source/_generated/_generated/ams.core.service.NumExpandDim.v.rst +0 -6
  75. docs/source/_generated/_generated/ams.core.service.NumExpandDim.v0.rst +0 -6
  76. docs/source/_generated/_generated/ams.core.service.NumExpandDim.v1.rst +0 -6
  77. docs/source/_generated/_generated/ams.core.service.NumHstack.assign_memory.rst +0 -6
  78. docs/source/_generated/_generated/ams.core.service.NumHstack.class_name.rst +0 -6
  79. docs/source/_generated/_generated/ams.core.service.NumHstack.evaluate.rst +0 -6
  80. docs/source/_generated/_generated/ams.core.service.NumHstack.get_names.rst +0 -6
  81. docs/source/_generated/_generated/ams.core.service.NumHstack.n.rst +0 -6
  82. docs/source/_generated/_generated/ams.core.service.NumHstack.parse.rst +0 -6
  83. docs/source/_generated/_generated/ams.core.service.NumHstack.shape.rst +0 -6
  84. docs/source/_generated/_generated/ams.core.service.NumHstack.size.rst +0 -6
  85. docs/source/_generated/_generated/ams.core.service.NumHstack.update.rst +0 -6
  86. docs/source/_generated/_generated/ams.core.service.NumHstack.v.rst +0 -6
  87. docs/source/_generated/_generated/ams.core.service.NumHstack.v0.rst +0 -6
  88. docs/source/_generated/_generated/ams.core.service.NumHstack.v1.rst +0 -6
  89. docs/source/_generated/_generated/ams.core.service.NumOp.assign_memory.rst +0 -6
  90. docs/source/_generated/_generated/ams.core.service.NumOp.class_name.rst +0 -6
  91. docs/source/_generated/_generated/ams.core.service.NumOp.evaluate.rst +0 -6
  92. docs/source/_generated/_generated/ams.core.service.NumOp.get_names.rst +0 -6
  93. docs/source/_generated/_generated/ams.core.service.NumOp.n.rst +0 -6
  94. docs/source/_generated/_generated/ams.core.service.NumOp.parse.rst +0 -6
  95. docs/source/_generated/_generated/ams.core.service.NumOp.shape.rst +0 -6
  96. docs/source/_generated/_generated/ams.core.service.NumOp.size.rst +0 -6
  97. docs/source/_generated/_generated/ams.core.service.NumOp.update.rst +0 -6
  98. docs/source/_generated/_generated/ams.core.service.NumOp.v.rst +0 -6
  99. docs/source/_generated/_generated/ams.core.service.NumOp.v0.rst +0 -6
  100. docs/source/_generated/_generated/ams.core.service.NumOp.v1.rst +0 -6
  101. docs/source/_generated/_generated/ams.core.service.NumOpDual.assign_memory.rst +0 -6
  102. docs/source/_generated/_generated/ams.core.service.NumOpDual.class_name.rst +0 -6
  103. docs/source/_generated/_generated/ams.core.service.NumOpDual.evaluate.rst +0 -6
  104. docs/source/_generated/_generated/ams.core.service.NumOpDual.get_names.rst +0 -6
  105. docs/source/_generated/_generated/ams.core.service.NumOpDual.n.rst +0 -6
  106. docs/source/_generated/_generated/ams.core.service.NumOpDual.parse.rst +0 -6
  107. docs/source/_generated/_generated/ams.core.service.NumOpDual.shape.rst +0 -6
  108. docs/source/_generated/_generated/ams.core.service.NumOpDual.size.rst +0 -6
  109. docs/source/_generated/_generated/ams.core.service.NumOpDual.update.rst +0 -6
  110. docs/source/_generated/_generated/ams.core.service.NumOpDual.v.rst +0 -6
  111. docs/source/_generated/_generated/ams.core.service.NumOpDual.v0.rst +0 -6
  112. docs/source/_generated/_generated/ams.core.service.NumOpDual.v1.rst +0 -6
  113. docs/source/_generated/_generated/ams.core.service.RBaseService.assign_memory.rst +0 -6
  114. docs/source/_generated/_generated/ams.core.service.RBaseService.class_name.rst +0 -6
  115. docs/source/_generated/_generated/ams.core.service.RBaseService.evaluate.rst +0 -6
  116. docs/source/_generated/_generated/ams.core.service.RBaseService.get_names.rst +0 -6
  117. docs/source/_generated/_generated/ams.core.service.RBaseService.n.rst +0 -6
  118. docs/source/_generated/_generated/ams.core.service.RBaseService.parse.rst +0 -6
  119. docs/source/_generated/_generated/ams.core.service.RBaseService.shape.rst +0 -6
  120. docs/source/_generated/_generated/ams.core.service.RBaseService.size.rst +0 -6
  121. docs/source/_generated/_generated/ams.core.service.RBaseService.update.rst +0 -6
  122. docs/source/_generated/_generated/ams.core.service.RBaseService.v.rst +0 -6
  123. docs/source/_generated/_generated/ams.core.service.ROperationService.assign_memory.rst +0 -6
  124. docs/source/_generated/_generated/ams.core.service.ROperationService.class_name.rst +0 -6
  125. docs/source/_generated/_generated/ams.core.service.ROperationService.evaluate.rst +0 -6
  126. docs/source/_generated/_generated/ams.core.service.ROperationService.get_names.rst +0 -6
  127. docs/source/_generated/_generated/ams.core.service.ROperationService.n.rst +0 -6
  128. docs/source/_generated/_generated/ams.core.service.ROperationService.parse.rst +0 -6
  129. docs/source/_generated/_generated/ams.core.service.ROperationService.shape.rst +0 -6
  130. docs/source/_generated/_generated/ams.core.service.ROperationService.size.rst +0 -6
  131. docs/source/_generated/_generated/ams.core.service.ROperationService.update.rst +0 -6
  132. docs/source/_generated/_generated/ams.core.service.ROperationService.v.rst +0 -6
  133. docs/source/_generated/_generated/ams.core.service.RampSub.assign_memory.rst +0 -6
  134. docs/source/_generated/_generated/ams.core.service.RampSub.class_name.rst +0 -6
  135. docs/source/_generated/_generated/ams.core.service.RampSub.evaluate.rst +0 -6
  136. docs/source/_generated/_generated/ams.core.service.RampSub.get_names.rst +0 -6
  137. docs/source/_generated/_generated/ams.core.service.RampSub.n.rst +0 -6
  138. docs/source/_generated/_generated/ams.core.service.RampSub.parse.rst +0 -6
  139. docs/source/_generated/_generated/ams.core.service.RampSub.shape.rst +0 -6
  140. docs/source/_generated/_generated/ams.core.service.RampSub.size.rst +0 -6
  141. docs/source/_generated/_generated/ams.core.service.RampSub.update.rst +0 -6
  142. docs/source/_generated/_generated/ams.core.service.RampSub.v.rst +0 -6
  143. docs/source/_generated/_generated/ams.core.service.RampSub.v0.rst +0 -6
  144. docs/source/_generated/_generated/ams.core.service.RampSub.v1.rst +0 -6
  145. docs/source/_generated/_generated/ams.core.service.ValueService.assign_memory.rst +0 -6
  146. docs/source/_generated/_generated/ams.core.service.ValueService.class_name.rst +0 -6
  147. docs/source/_generated/_generated/ams.core.service.ValueService.evaluate.rst +0 -6
  148. docs/source/_generated/_generated/ams.core.service.ValueService.get_names.rst +0 -6
  149. docs/source/_generated/_generated/ams.core.service.ValueService.n.rst +0 -6
  150. docs/source/_generated/_generated/ams.core.service.ValueService.parse.rst +0 -6
  151. docs/source/_generated/_generated/ams.core.service.ValueService.shape.rst +0 -6
  152. docs/source/_generated/_generated/ams.core.service.ValueService.size.rst +0 -6
  153. docs/source/_generated/_generated/ams.core.service.ValueService.update.rst +0 -6
  154. docs/source/_generated/_generated/ams.core.service.ValueService.v.rst +0 -6
  155. docs/source/_generated/_generated/ams.core.service.VarReduction.assign_memory.rst +0 -6
  156. docs/source/_generated/_generated/ams.core.service.VarReduction.class_name.rst +0 -6
  157. docs/source/_generated/_generated/ams.core.service.VarReduction.evaluate.rst +0 -6
  158. docs/source/_generated/_generated/ams.core.service.VarReduction.get_names.rst +0 -6
  159. docs/source/_generated/_generated/ams.core.service.VarReduction.n.rst +0 -6
  160. docs/source/_generated/_generated/ams.core.service.VarReduction.parse.rst +0 -6
  161. docs/source/_generated/_generated/ams.core.service.VarReduction.shape.rst +0 -6
  162. docs/source/_generated/_generated/ams.core.service.VarReduction.size.rst +0 -6
  163. docs/source/_generated/_generated/ams.core.service.VarReduction.update.rst +0 -6
  164. docs/source/_generated/_generated/ams.core.service.VarReduction.v.rst +0 -6
  165. docs/source/_generated/_generated/ams.core.service.VarReduction.v0.rst +0 -6
  166. docs/source/_generated/_generated/ams.core.service.VarReduction.v1.rst +0 -6
  167. docs/source/_generated/_generated/ams.core.service.VarSelect.assign_memory.rst +0 -6
  168. docs/source/_generated/_generated/ams.core.service.VarSelect.class_name.rst +0 -6
  169. docs/source/_generated/_generated/ams.core.service.VarSelect.evaluate.rst +0 -6
  170. docs/source/_generated/_generated/ams.core.service.VarSelect.get_names.rst +0 -6
  171. docs/source/_generated/_generated/ams.core.service.VarSelect.n.rst +0 -6
  172. docs/source/_generated/_generated/ams.core.service.VarSelect.parse.rst +0 -6
  173. docs/source/_generated/_generated/ams.core.service.VarSelect.shape.rst +0 -6
  174. docs/source/_generated/_generated/ams.core.service.VarSelect.size.rst +0 -6
  175. docs/source/_generated/_generated/ams.core.service.VarSelect.update.rst +0 -6
  176. docs/source/_generated/_generated/ams.core.service.VarSelect.v.rst +0 -6
  177. docs/source/_generated/_generated/ams.core.service.VarSelect.v0.rst +0 -6
  178. docs/source/_generated/_generated/ams.core.service.VarSelect.v1.rst +0 -6
  179. docs/source/_generated/_generated/ams.core.service.ZonalSum.assign_memory.rst +0 -6
  180. docs/source/_generated/_generated/ams.core.service.ZonalSum.class_name.rst +0 -6
  181. docs/source/_generated/_generated/ams.core.service.ZonalSum.evaluate.rst +0 -6
  182. docs/source/_generated/_generated/ams.core.service.ZonalSum.get_names.rst +0 -6
  183. docs/source/_generated/_generated/ams.core.service.ZonalSum.n.rst +0 -6
  184. docs/source/_generated/_generated/ams.core.service.ZonalSum.parse.rst +0 -6
  185. docs/source/_generated/_generated/ams.core.service.ZonalSum.shape.rst +0 -6
  186. docs/source/_generated/_generated/ams.core.service.ZonalSum.size.rst +0 -6
  187. docs/source/_generated/_generated/ams.core.service.ZonalSum.update.rst +0 -6
  188. docs/source/_generated/_generated/ams.core.service.ZonalSum.v.rst +0 -6
  189. docs/source/_generated/_generated/ams.core.service.ZonalSum.v0.rst +0 -6
  190. docs/source/_generated/_generated/ams.core.service.ZonalSum.v1.rst +0 -6
  191. docs/source/_generated/_generated/ams.interface.Dynamic.is_tds.rst +0 -6
  192. docs/source/_generated/_generated/ams.interface.Dynamic.link_andes.rst +0 -6
  193. docs/source/_generated/_generated/ams.interface.Dynamic.receive.rst +0 -6
  194. docs/source/_generated/_generated/ams.interface.Dynamic.send.rst +0 -6
  195. docs/source/_generated/_generated/ams.opt.constraint.Constraint.class_name.rst +0 -6
  196. docs/source/_generated/_generated/ams.opt.constraint.Constraint.e.rst +0 -6
  197. docs/source/_generated/_generated/ams.opt.constraint.Constraint.evaluate.rst +0 -6
  198. docs/source/_generated/_generated/ams.opt.constraint.Constraint.n.rst +0 -6
  199. docs/source/_generated/_generated/ams.opt.constraint.Constraint.parse.rst +0 -6
  200. docs/source/_generated/_generated/ams.opt.constraint.Constraint.shape.rst +0 -6
  201. docs/source/_generated/_generated/ams.opt.constraint.Constraint.size.rst +0 -6
  202. docs/source/_generated/_generated/ams.opt.constraint.Constraint.v.rst +0 -6
  203. docs/source/_generated/_generated/ams.opt.exprcalc.ExpressionCalc.class_name.rst +0 -6
  204. docs/source/_generated/_generated/ams.opt.exprcalc.ExpressionCalc.e.rst +0 -6
  205. docs/source/_generated/_generated/ams.opt.exprcalc.ExpressionCalc.evaluate.rst +0 -6
  206. docs/source/_generated/_generated/ams.opt.exprcalc.ExpressionCalc.get_idx.rst +0 -6
  207. docs/source/_generated/_generated/ams.opt.exprcalc.ExpressionCalc.n.rst +0 -6
  208. docs/source/_generated/_generated/ams.opt.exprcalc.ExpressionCalc.parse.rst +0 -6
  209. docs/source/_generated/_generated/ams.opt.exprcalc.ExpressionCalc.shape.rst +0 -6
  210. docs/source/_generated/_generated/ams.opt.exprcalc.ExpressionCalc.size.rst +0 -6
  211. docs/source/_generated/_generated/ams.opt.exprcalc.ExpressionCalc.v.rst +0 -6
  212. docs/source/_generated/_generated/ams.opt.expression.Expression.class_name.rst +0 -6
  213. docs/source/_generated/_generated/ams.opt.expression.Expression.e.rst +0 -6
  214. docs/source/_generated/_generated/ams.opt.expression.Expression.evaluate.rst +0 -6
  215. docs/source/_generated/_generated/ams.opt.expression.Expression.get_idx.rst +0 -6
  216. docs/source/_generated/_generated/ams.opt.expression.Expression.n.rst +0 -6
  217. docs/source/_generated/_generated/ams.opt.expression.Expression.parse.rst +0 -6
  218. docs/source/_generated/_generated/ams.opt.expression.Expression.shape.rst +0 -6
  219. docs/source/_generated/_generated/ams.opt.expression.Expression.size.rst +0 -6
  220. docs/source/_generated/_generated/ams.opt.expression.Expression.v.rst +0 -6
  221. docs/source/_generated/_generated/ams.opt.objective.Objective.class_name.rst +0 -6
  222. docs/source/_generated/_generated/ams.opt.objective.Objective.e.rst +0 -6
  223. docs/source/_generated/_generated/ams.opt.objective.Objective.evaluate.rst +0 -6
  224. docs/source/_generated/_generated/ams.opt.objective.Objective.n.rst +0 -6
  225. docs/source/_generated/_generated/ams.opt.objective.Objective.parse.rst +0 -6
  226. docs/source/_generated/_generated/ams.opt.objective.Objective.shape.rst +0 -6
  227. docs/source/_generated/_generated/ams.opt.objective.Objective.size.rst +0 -6
  228. docs/source/_generated/_generated/ams.opt.objective.Objective.v.rst +0 -6
  229. docs/source/_generated/_generated/ams.opt.omodel.OModel.class_name.rst +0 -6
  230. docs/source/_generated/_generated/ams.opt.omodel.OModel.evaluate.rst +0 -6
  231. docs/source/_generated/_generated/ams.opt.omodel.OModel.finalize.rst +0 -6
  232. docs/source/_generated/_generated/ams.opt.omodel.OModel.init.rst +0 -6
  233. docs/source/_generated/_generated/ams.opt.omodel.OModel.initialized.rst +0 -6
  234. docs/source/_generated/_generated/ams.opt.omodel.OModel.parse.rst +0 -6
  235. docs/source/_generated/_generated/ams.opt.omodel.OModel.update.rst +0 -6
  236. docs/source/_generated/_generated/ams.opt.omodel.OModelBase.class_name.rst +0 -6
  237. docs/source/_generated/_generated/ams.opt.omodel.OModelBase.evaluate.rst +0 -6
  238. docs/source/_generated/_generated/ams.opt.omodel.OModelBase.finalize.rst +0 -6
  239. docs/source/_generated/_generated/ams.opt.omodel.OModelBase.init.rst +0 -6
  240. docs/source/_generated/_generated/ams.opt.omodel.OModelBase.initialized.rst +0 -6
  241. docs/source/_generated/_generated/ams.opt.omodel.OModelBase.parse.rst +0 -6
  242. docs/source/_generated/_generated/ams.opt.omodel.OModelBase.update.rst +0 -6
  243. docs/source/_generated/_generated/ams.opt.optbase.OptzBase.class_name.rst +0 -6
  244. docs/source/_generated/_generated/ams.opt.optbase.OptzBase.evaluate.rst +0 -6
  245. docs/source/_generated/_generated/ams.opt.optbase.OptzBase.n.rst +0 -6
  246. docs/source/_generated/_generated/ams.opt.optbase.OptzBase.parse.rst +0 -6
  247. docs/source/_generated/_generated/ams.opt.optbase.OptzBase.shape.rst +0 -6
  248. docs/source/_generated/_generated/ams.opt.optbase.OptzBase.size.rst +0 -6
  249. docs/source/_generated/_generated/ams.opt.param.Param.class_name.rst +0 -6
  250. docs/source/_generated/_generated/ams.opt.param.Param.evaluate.rst +0 -6
  251. docs/source/_generated/_generated/ams.opt.param.Param.n.rst +0 -6
  252. docs/source/_generated/_generated/ams.opt.param.Param.parse.rst +0 -6
  253. docs/source/_generated/_generated/ams.opt.param.Param.shape.rst +0 -6
  254. docs/source/_generated/_generated/ams.opt.param.Param.size.rst +0 -6
  255. docs/source/_generated/_generated/ams.opt.param.Param.update.rst +0 -6
  256. docs/source/_generated/_generated/ams.opt.var.Var.class_name.rst +0 -6
  257. docs/source/_generated/_generated/ams.opt.var.Var.evaluate.rst +0 -6
  258. docs/source/_generated/_generated/ams.opt.var.Var.get_idx.rst +0 -6
  259. docs/source/_generated/_generated/ams.opt.var.Var.n.rst +0 -6
  260. docs/source/_generated/_generated/ams.opt.var.Var.parse.rst +0 -6
  261. docs/source/_generated/_generated/ams.opt.var.Var.shape.rst +0 -6
  262. docs/source/_generated/_generated/ams.opt.var.Var.size.rst +0 -6
  263. docs/source/_generated/_generated/ams.opt.var.Var.v.rst +0 -6
  264. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.addConstrs.rst +0 -6
  265. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.addRParam.rst +0 -6
  266. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.addService.rst +0 -6
  267. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.addVars.rst +0 -6
  268. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.class_name.rst +0 -6
  269. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.dc2ac.rst +0 -6
  270. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.disable.rst +0 -6
  271. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.doc.rst +0 -6
  272. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.enable.rst +0 -6
  273. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.export_csv.rst +0 -6
  274. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.get.rst +0 -6
  275. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.init.rst +0 -6
  276. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.run.rst +0 -6
  277. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.set.rst +0 -6
  278. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.solve.rst +0 -6
  279. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.summary.rst +0 -6
  280. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.unpack.rst +0 -6
  281. docs/source/_generated/_generated/ams.routines.dcopf.DCOPF.update.rst +0 -6
  282. docs/source/_generated/_generated/ams.routines.pflow.PFlow.addConstrs.rst +0 -6
  283. docs/source/_generated/_generated/ams.routines.pflow.PFlow.addRParam.rst +0 -6
  284. docs/source/_generated/_generated/ams.routines.pflow.PFlow.addService.rst +0 -6
  285. docs/source/_generated/_generated/ams.routines.pflow.PFlow.addVars.rst +0 -6
  286. docs/source/_generated/_generated/ams.routines.pflow.PFlow.class_name.rst +0 -6
  287. docs/source/_generated/_generated/ams.routines.pflow.PFlow.dc2ac.rst +0 -6
  288. docs/source/_generated/_generated/ams.routines.pflow.PFlow.disable.rst +0 -6
  289. docs/source/_generated/_generated/ams.routines.pflow.PFlow.doc.rst +0 -6
  290. docs/source/_generated/_generated/ams.routines.pflow.PFlow.enable.rst +0 -6
  291. docs/source/_generated/_generated/ams.routines.pflow.PFlow.export_csv.rst +0 -6
  292. docs/source/_generated/_generated/ams.routines.pflow.PFlow.get.rst +0 -6
  293. docs/source/_generated/_generated/ams.routines.pflow.PFlow.init.rst +0 -6
  294. docs/source/_generated/_generated/ams.routines.pflow.PFlow.run.rst +0 -6
  295. docs/source/_generated/_generated/ams.routines.pflow.PFlow.set.rst +0 -6
  296. docs/source/_generated/_generated/ams.routines.pflow.PFlow.solve.rst +0 -6
  297. docs/source/_generated/_generated/ams.routines.pflow.PFlow.summary.rst +0 -6
  298. docs/source/_generated/_generated/ams.routines.pflow.PFlow.unpack.rst +0 -6
  299. docs/source/_generated/_generated/ams.routines.pflow.PFlow.update.rst +0 -6
  300. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.addConstrs.rst +0 -6
  301. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.addRParam.rst +0 -6
  302. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.addService.rst +0 -6
  303. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.addVars.rst +0 -6
  304. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.class_name.rst +0 -6
  305. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.dc2ac.rst +0 -6
  306. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.disable.rst +0 -6
  307. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.doc.rst +0 -6
  308. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.enable.rst +0 -6
  309. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.export_csv.rst +0 -6
  310. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.get.rst +0 -6
  311. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.init.rst +0 -6
  312. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.run.rst +0 -6
  313. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.set.rst +0 -6
  314. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.solve.rst +0 -6
  315. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.summary.rst +0 -6
  316. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.unpack.rst +0 -6
  317. docs/source/_generated/_generated/ams.routines.routine.RoutineBase.update.rst +0 -6
  318. docs/source/_generated/_generated/ams.system.System.add.rst +0 -6
  319. docs/source/_generated/_generated/ams.system.System.as_dict.rst +0 -6
  320. docs/source/_generated/_generated/ams.system.System.calc_pu_coeff.rst +0 -6
  321. docs/source/_generated/_generated/ams.system.System.call_models.rst +0 -6
  322. docs/source/_generated/_generated/ams.system.System.collect_config.rst +0 -6
  323. docs/source/_generated/_generated/ams.system.System.collect_ref.rst +0 -6
  324. docs/source/_generated/_generated/ams.system.System.connectivity.rst +0 -6
  325. docs/source/_generated/_generated/ams.system.System.e_clear.rst +0 -6
  326. docs/source/_generated/_generated/ams.system.System.f_update.rst +0 -6
  327. docs/source/_generated/_generated/ams.system.System.fg_to_dae.rst +0 -6
  328. docs/source/_generated/_generated/ams.system.System.find_devices.rst +0 -6
  329. docs/source/_generated/_generated/ams.system.System.find_models.rst +0 -6
  330. docs/source/_generated/_generated/ams.system.System.from_ipysheet.rst +0 -6
  331. docs/source/_generated/_generated/ams.system.System.g_islands.rst +0 -6
  332. docs/source/_generated/_generated/ams.system.System.g_update.rst +0 -6
  333. docs/source/_generated/_generated/ams.system.System.get_z.rst +0 -6
  334. docs/source/_generated/_generated/ams.system.System.import_groups.rst +0 -6
  335. docs/source/_generated/_generated/ams.system.System.import_models.rst +0 -6
  336. docs/source/_generated/_generated/ams.system.System.import_routines.rst +0 -6
  337. docs/source/_generated/_generated/ams.system.System.import_types.rst +0 -6
  338. docs/source/_generated/_generated/ams.system.System.init.rst +0 -6
  339. docs/source/_generated/_generated/ams.system.System.j_islands.rst +0 -6
  340. docs/source/_generated/_generated/ams.system.System.j_update.rst +0 -6
  341. docs/source/_generated/_generated/ams.system.System.l_update_eq.rst +0 -6
  342. docs/source/_generated/_generated/ams.system.System.l_update_var.rst +0 -6
  343. docs/source/_generated/_generated/ams.system.System.link_ext_param.rst +0 -6
  344. docs/source/_generated/_generated/ams.system.System.precompile.rst +0 -6
  345. docs/source/_generated/_generated/ams.system.System.prepare.rst +0 -6
  346. docs/source/_generated/_generated/ams.system.System.reload.rst +0 -6
  347. docs/source/_generated/_generated/ams.system.System.remove_pycapsule.rst +0 -6
  348. docs/source/_generated/_generated/ams.system.System.report.rst +0 -6
  349. docs/source/_generated/_generated/ams.system.System.reset.rst +0 -6
  350. docs/source/_generated/_generated/ams.system.System.s_update_post.rst +0 -6
  351. docs/source/_generated/_generated/ams.system.System.s_update_var.rst +0 -6
  352. docs/source/_generated/_generated/ams.system.System.save_config.rst +0 -6
  353. docs/source/_generated/_generated/ams.system.System.set_address.rst +0 -6
  354. docs/source/_generated/_generated/ams.system.System.set_config.rst +0 -6
  355. docs/source/_generated/_generated/ams.system.System.set_dae_names.rst +0 -6
  356. docs/source/_generated/_generated/ams.system.System.set_output_subidx.rst +0 -6
  357. docs/source/_generated/_generated/ams.system.System.set_var_arrays.rst +0 -6
  358. docs/source/_generated/_generated/ams.system.System.setup.rst +0 -6
  359. docs/source/_generated/_generated/ams.system.System.store_adder_setter.rst +0 -6
  360. docs/source/_generated/_generated/ams.system.System.store_existing.rst +0 -6
  361. docs/source/_generated/_generated/ams.system.System.store_no_check_init.rst +0 -6
  362. docs/source/_generated/_generated/ams.system.System.store_sparse_pattern.rst +0 -6
  363. docs/source/_generated/_generated/ams.system.System.store_switch_times.rst +0 -6
  364. docs/source/_generated/_generated/ams.system.System.summary.rst +0 -6
  365. docs/source/_generated/_generated/ams.system.System.supported_models.rst +0 -6
  366. docs/source/_generated/_generated/ams.system.System.supported_routines.rst +0 -6
  367. docs/source/_generated/_generated/ams.system.System.switch_action.rst +0 -6
  368. docs/source/_generated/_generated/ams.system.System.to_andes.rst +0 -6
  369. docs/source/_generated/_generated/ams.system.System.to_ipysheet.rst +0 -6
  370. docs/source/_generated/_generated/ams.system.System.undill.rst +0 -6
  371. docs/source/_generated/_generated/ams.system.System.vars_to_dae.rst +0 -6
  372. docs/source/_generated/_generated/ams.system.System.vars_to_models.rst +0 -6
  373. docs/source/_generated/_generated/ams.utils.paths.DisplayablePath.display_filename_prefix_last.rst +0 -6
  374. docs/source/_generated/_generated/ams.utils.paths.DisplayablePath.display_filename_prefix_middle.rst +0 -6
  375. docs/source/_generated/_generated/ams.utils.paths.DisplayablePath.display_parent_prefix_last.rst +0 -6
  376. docs/source/_generated/_generated/ams.utils.paths.DisplayablePath.display_parent_prefix_middle.rst +0 -6
  377. docs/source/_generated/_generated/ams.utils.paths.DisplayablePath.displayable.rst +0 -6
  378. docs/source/_generated/_generated/ams.utils.paths.DisplayablePath.displayname.rst +0 -6
  379. docs/source/_generated/_generated/ams.utils.paths.DisplayablePath.make_tree.rst +0 -6
  380. docs/source/_generated/ams.cli.create_parser.rst +0 -6
  381. docs/source/_generated/ams.cli.main.rst +0 -6
  382. docs/source/_generated/ams.cli.preamble.rst +0 -6
  383. docs/source/_generated/ams.cli.rst +0 -32
  384. docs/source/_generated/ams.core.model.Model.rst +0 -56
  385. docs/source/_generated/ams.core.model.rst +0 -30
  386. docs/source/_generated/ams.core.param.RParam.rst +0 -49
  387. docs/source/_generated/ams.core.param.rst +0 -30
  388. docs/source/_generated/ams.core.service.LoadScale.rst +0 -51
  389. docs/source/_generated/ams.core.service.MinDur.rst +0 -53
  390. docs/source/_generated/ams.core.service.NumExpandDim.rst +0 -53
  391. docs/source/_generated/ams.core.service.NumHstack.rst +0 -53
  392. docs/source/_generated/ams.core.service.NumOp.rst +0 -53
  393. docs/source/_generated/ams.core.service.NumOpDual.rst +0 -53
  394. docs/source/_generated/ams.core.service.RBaseService.rst +0 -51
  395. docs/source/_generated/ams.core.service.ROperationService.rst +0 -51
  396. docs/source/_generated/ams.core.service.RampSub.rst +0 -53
  397. docs/source/_generated/ams.core.service.ValueService.rst +0 -51
  398. docs/source/_generated/ams.core.service.VarReduction.rst +0 -53
  399. docs/source/_generated/ams.core.service.VarSelect.rst +0 -53
  400. docs/source/_generated/ams.core.service.ZonalSum.rst +0 -53
  401. docs/source/_generated/ams.core.service.rst +0 -42
  402. docs/source/_generated/ams.interface.Dynamic.rst +0 -41
  403. docs/source/_generated/ams.interface.build_group_table.rst +0 -6
  404. docs/source/_generated/ams.interface.make_link_table.rst +0 -6
  405. docs/source/_generated/ams.interface.parse_addfile.rst +0 -6
  406. docs/source/_generated/ams.interface.replace_dev.rst +0 -6
  407. docs/source/_generated/ams.interface.rst +0 -43
  408. docs/source/_generated/ams.interface.sync_adsys.rst +0 -6
  409. docs/source/_generated/ams.interface.to_andes.rst +0 -6
  410. docs/source/_generated/ams.interface.verify_pf.rst +0 -6
  411. docs/source/_generated/ams.io.guess.rst +0 -6
  412. docs/source/_generated/ams.io.json.rst +0 -30
  413. docs/source/_generated/ams.io.json.write.rst +0 -6
  414. docs/source/_generated/ams.io.matpower.mpc2system.rst +0 -6
  415. docs/source/_generated/ams.io.matpower.read.rst +0 -6
  416. docs/source/_generated/ams.io.matpower.rst +0 -33
  417. docs/source/_generated/ams.io.matpower.system2mpc.rst +0 -6
  418. docs/source/_generated/ams.io.matpower.testlines.rst +0 -6
  419. docs/source/_generated/ams.io.parse.rst +0 -6
  420. docs/source/_generated/ams.io.psse.rst +0 -23
  421. docs/source/_generated/ams.io.pypower.ppc2system.rst +0 -6
  422. docs/source/_generated/ams.io.pypower.py2ppc.rst +0 -6
  423. docs/source/_generated/ams.io.pypower.read.rst +0 -6
  424. docs/source/_generated/ams.io.pypower.rst +0 -34
  425. docs/source/_generated/ams.io.pypower.system2ppc.rst +0 -6
  426. docs/source/_generated/ams.io.pypower.testlines.rst +0 -6
  427. docs/source/_generated/ams.io.rst +0 -45
  428. docs/source/_generated/ams.io.xlsx.rst +0 -30
  429. docs/source/_generated/ams.io.xlsx.write.rst +0 -6
  430. docs/source/_generated/ams.main.config_logger.rst +0 -6
  431. docs/source/_generated/ams.main.demo.rst +0 -6
  432. docs/source/_generated/ams.main.doc.rst +0 -6
  433. docs/source/_generated/ams.main.edit_conf.rst +0 -6
  434. docs/source/_generated/ams.main.find_log_path.rst +0 -6
  435. docs/source/_generated/ams.main.load.rst +0 -6
  436. docs/source/_generated/ams.main.misc.rst +0 -6
  437. docs/source/_generated/ams.main.print_license.rst +0 -6
  438. docs/source/_generated/ams.main.remove_output.rst +0 -6
  439. docs/source/_generated/ams.main.rst +0 -44
  440. docs/source/_generated/ams.main.run.rst +0 -6
  441. docs/source/_generated/ams.main.run_case.rst +0 -6
  442. docs/source/_generated/ams.main.save_conf.rst +0 -6
  443. docs/source/_generated/ams.main.selftest.rst +0 -6
  444. docs/source/_generated/ams.main.set_logger_level.rst +0 -6
  445. docs/source/_generated/ams.main.versioninfo.rst +0 -6
  446. docs/source/_generated/ams.opt.constraint.Constraint.rst +0 -43
  447. docs/source/_generated/ams.opt.constraint.rst +0 -30
  448. docs/source/_generated/ams.opt.exprcalc.ExpressionCalc.rst +0 -46
  449. docs/source/_generated/ams.opt.exprcalc.rst +0 -30
  450. docs/source/_generated/ams.opt.expression.Expression.rst +0 -46
  451. docs/source/_generated/ams.opt.expression.rst +0 -30
  452. docs/source/_generated/ams.opt.objective.Objective.rst +0 -43
  453. docs/source/_generated/ams.opt.objective.rst +0 -30
  454. docs/source/_generated/ams.opt.omodel.OModel.rst +0 -48
  455. docs/source/_generated/ams.opt.omodel.OModelBase.rst +0 -48
  456. docs/source/_generated/ams.opt.omodel.rst +0 -31
  457. docs/source/_generated/ams.opt.optbase.OptzBase.rst +0 -41
  458. docs/source/_generated/ams.opt.optbase.ensure_mats_and_parsed.rst +0 -6
  459. docs/source/_generated/ams.opt.optbase.ensure_symbols.rst +0 -6
  460. docs/source/_generated/ams.opt.optbase.rst +0 -38
  461. docs/source/_generated/ams.opt.param.Param.rst +0 -44
  462. docs/source/_generated/ams.opt.param.rst +0 -30
  463. docs/source/_generated/ams.opt.rst +0 -40
  464. docs/source/_generated/ams.opt.var.Var.rst +0 -45
  465. docs/source/_generated/ams.opt.var.rst +0 -30
  466. docs/source/_generated/ams.routines.dcopf.DCOPF.rst +0 -83
  467. docs/source/_generated/ams.routines.dcopf.rst +0 -30
  468. docs/source/_generated/ams.routines.pflow.PFlow.rst +0 -83
  469. docs/source/_generated/ams.routines.pflow.rst +0 -30
  470. docs/source/_generated/ams.routines.routine.RoutineBase.rst +0 -83
  471. docs/source/_generated/ams.routines.routine.collect_data.rst +0 -6
  472. docs/source/_generated/ams.routines.routine.initialize_data_dict.rst +0 -6
  473. docs/source/_generated/ams.routines.routine.rst +0 -38
  474. docs/source/_generated/ams.system.System.rst +0 -189
  475. docs/source/_generated/ams.system.disable_method.rst +0 -6
  476. docs/source/_generated/ams.system.disable_methods.rst +0 -6
  477. docs/source/_generated/ams.system.example.rst +0 -6
  478. docs/source/_generated/ams.system.rst +0 -39
  479. docs/source/_generated/ams.utils.paths.DisplayablePath.rst +0 -42
  480. docs/source/_generated/ams.utils.paths.ams_root.rst +0 -6
  481. docs/source/_generated/ams.utils.paths.cases_root.rst +0 -6
  482. docs/source/_generated/ams.utils.paths.confirm_overwrite.rst +0 -6
  483. docs/source/_generated/ams.utils.paths.get_case.rst +0 -6
  484. docs/source/_generated/ams.utils.paths.get_config_path.rst +0 -6
  485. docs/source/_generated/ams.utils.paths.get_dot_andes_path.rst +0 -6
  486. docs/source/_generated/ams.utils.paths.get_log_dir.rst +0 -6
  487. docs/source/_generated/ams.utils.paths.get_pkl_path.rst +0 -6
  488. docs/source/_generated/ams.utils.paths.get_pycode_path.rst +0 -6
  489. docs/source/_generated/ams.utils.paths.list_cases.rst +0 -6
  490. docs/source/_generated/ams.utils.paths.rst +0 -47
  491. docs/source/_generated/ams.utils.paths.tests_root.rst +0 -6
  492. docs/source/groupdoc/ACLine.rst +0 -92
  493. docs/source/groupdoc/ACShort.rst +0 -51
  494. docs/source/groupdoc/ACTopology.rst +0 -66
  495. docs/source/groupdoc/Collection.rst +0 -84
  496. docs/source/groupdoc/Cost.rst +0 -135
  497. docs/source/groupdoc/DG.rst +0 -204
  498. docs/source/groupdoc/Horizon.rst +0 -97
  499. docs/source/groupdoc/Information.rst +0 -36
  500. docs/source/groupdoc/RenGen.rst +0 -63
  501. docs/source/groupdoc/Reserve.rst +0 -135
  502. docs/source/groupdoc/StaticGen.rst +0 -229
  503. docs/source/groupdoc/StaticLoad.rst +0 -53
  504. docs/source/groupdoc/StaticShunt.rst +0 -45
  505. docs/source/groupdoc/Undefined.rst +0 -63
  506. docs/source/groupdoc/VSG.rst +0 -125
  507. docs/source/modeling/_generated/_generated/ams.opt.Constraint.class_name.rst +0 -6
  508. docs/source/modeling/_generated/_generated/ams.opt.Constraint.e.rst +0 -6
  509. docs/source/modeling/_generated/_generated/ams.opt.Constraint.evaluate.rst +0 -6
  510. docs/source/modeling/_generated/_generated/ams.opt.Constraint.n.rst +0 -6
  511. docs/source/modeling/_generated/_generated/ams.opt.Constraint.parse.rst +0 -6
  512. docs/source/modeling/_generated/_generated/ams.opt.Constraint.shape.rst +0 -6
  513. docs/source/modeling/_generated/_generated/ams.opt.Constraint.size.rst +0 -6
  514. docs/source/modeling/_generated/_generated/ams.opt.Constraint.v.rst +0 -6
  515. docs/source/modeling/_generated/_generated/ams.opt.OModel.class_name.rst +0 -6
  516. docs/source/modeling/_generated/_generated/ams.opt.OModel.evaluate.rst +0 -6
  517. docs/source/modeling/_generated/_generated/ams.opt.OModel.finalize.rst +0 -6
  518. docs/source/modeling/_generated/_generated/ams.opt.OModel.init.rst +0 -6
  519. docs/source/modeling/_generated/_generated/ams.opt.OModel.initialized.rst +0 -6
  520. docs/source/modeling/_generated/_generated/ams.opt.OModel.parse.rst +0 -6
  521. docs/source/modeling/_generated/_generated/ams.opt.OModel.update.rst +0 -6
  522. docs/source/modeling/_generated/_generated/ams.opt.Objective.class_name.rst +0 -6
  523. docs/source/modeling/_generated/_generated/ams.opt.Objective.e.rst +0 -6
  524. docs/source/modeling/_generated/_generated/ams.opt.Objective.evaluate.rst +0 -6
  525. docs/source/modeling/_generated/_generated/ams.opt.Objective.n.rst +0 -6
  526. docs/source/modeling/_generated/_generated/ams.opt.Objective.parse.rst +0 -6
  527. docs/source/modeling/_generated/_generated/ams.opt.Objective.shape.rst +0 -6
  528. docs/source/modeling/_generated/_generated/ams.opt.Objective.size.rst +0 -6
  529. docs/source/modeling/_generated/_generated/ams.opt.Objective.v.rst +0 -6
  530. docs/source/modeling/_generated/_generated/ams.opt.Var.class_name.rst +0 -6
  531. docs/source/modeling/_generated/_generated/ams.opt.Var.evaluate.rst +0 -6
  532. docs/source/modeling/_generated/_generated/ams.opt.Var.get_idx.rst +0 -6
  533. docs/source/modeling/_generated/_generated/ams.opt.Var.n.rst +0 -6
  534. docs/source/modeling/_generated/_generated/ams.opt.Var.parse.rst +0 -6
  535. docs/source/modeling/_generated/_generated/ams.opt.Var.shape.rst +0 -6
  536. docs/source/modeling/_generated/_generated/ams.opt.Var.size.rst +0 -6
  537. docs/source/modeling/_generated/_generated/ams.opt.Var.v.rst +0 -6
  538. docs/source/modeling/_generated/ams.opt.Constraint.rst +0 -43
  539. docs/source/modeling/_generated/ams.opt.OModel.rst +0 -48
  540. docs/source/modeling/_generated/ams.opt.Objective.rst +0 -43
  541. docs/source/modeling/_generated/ams.opt.Var.rst +0 -45
  542. docs/source/modelref.rst +0 -66
  543. docs/source/routineref.rst +0 -38
  544. docs/source/typedoc/ACED.rst +0 -91
  545. docs/source/typedoc/DCED.rst +0 -1869
  546. docs/source/typedoc/DCUC.rst +0 -899
  547. docs/source/typedoc/DED.rst +0 -390
  548. docs/source/typedoc/PF.rst +0 -376
  549. docs/source/typedoc/UndefinedType.rst +0 -8
  550. icebar/ips/ips.py +0 -668
  551. ltbams-1.0.0.dist-info/RECORD +0 -725
  552. ltbams-1.0.0.dist-info/top_level.txt +0 -5
  553. {ltbams-1.0.0.dist-info → ltbams-1.0.2a1.dist-info}/WHEEL +0 -0
  554. {ltbams-1.0.0.dist-info → ltbams-1.0.2a1.dist-info}/entry_points.txt +0 -0
@@ -1,1869 +0,0 @@
1
- .. _DCED:
2
-
3
- ================================================================================
4
- DCED
5
- ================================================================================
6
- Type for DC-based economic dispatch.
7
-
8
- Common Parameters: c2, c1, c0, pmax, pmin, pd, ptdf, rate_a
9
-
10
- Common Vars: pg
11
-
12
- Common Constraints: pb, lub, llb
13
-
14
- Available routines:
15
- DCOPF_,
16
- ED_,
17
- EDDG_,
18
- EDES_,
19
- RTED_,
20
- RTEDDG_,
21
- RTEDES_,
22
- RTEDVIS_
23
-
24
- .. _DCOPF:
25
-
26
- --------------------------------------------------------------------------------
27
- DCOPF
28
- --------------------------------------------------------------------------------
29
- DC optimal power flow (DCOPF).
30
-
31
- The nodal price is calculated as ``pi`` in ``pic``.
32
-
33
- References
34
- ----------
35
- 1. R. D. Zimmerman, C. E. Murillo-Sanchez, and R. J. Thomas, “MATPOWER: Steady-State Operations, Planning, and
36
- Analysis Tools for Power Systems Research and Education,” IEEE Trans. Power Syst., vol. 26, no. 1, pp. 12–19,
37
- Feb. 2011
38
-
39
- Objective
40
- ----------------------------------
41
-
42
- +------+----------------------------------------------------------------------+
43
- | Unit | Expression |
44
- +======+======================================================================+
45
- | *$* | :math:`min. \sum(c_{2} p_g^{2})+ \sum(c_{1} p_g)+ \sum(u_{g} c_{0})` |
46
- +------+----------------------------------------------------------------------+
47
-
48
- Expressions
49
- ----------------------------------
50
-
51
- +--------+----------------+------------------------------------------------------+--------+-----------+
52
- | Name | Description | Expression | Unit | Source |
53
- +========+================+======================================================+========+===========+
54
- | plf | Line flow | :math:`B_{f} \theta_{bus} + P_{f}^{inj}` | *p.u.* | Line |
55
- +--------+----------------+------------------------------------------------------+--------+-----------+
56
- | pmaxe | Effective pmax | :math:`c_{trl,n,e} p_{g, 0} + c_{trl, e} p_{g, max}` | *p.u.* | StaticGen |
57
- +--------+----------------+------------------------------------------------------+--------+-----------+
58
- | pmine | Effective pmin | :math:`c_{trl,n,e} p_{g, 0} + c_{trl, e} p_{g, min}` | *p.u.* | StaticGen |
59
- +--------+----------------+------------------------------------------------------+--------+-----------+
60
-
61
- Constraints
62
- ----------------------------------
63
-
64
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
65
- | Name | Description | Expression |
66
- +========+===================================+============================================================================================+
67
- | pb | power balance | :math:`B_{bus} \theta_{bus} + P_{bus}^{inj} + C_{l} p_{d} + C_{sh} g_{sh} - C_{g} p_g = 0` |
68
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
69
- | sbus | align slack bus angle | :math:`c_{sb} \theta_{bus} = 0` |
70
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
71
- | pglb | pg min | :math:`-p_g + p_{g, min, e} \leq 0` |
72
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
73
- | pgub | pg max | :math:`p_g - p_{g, max, e} \leq 0` |
74
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
75
- | plflb | line flow lower bound | :math:`-p_{lf} - u_{l} R_{ATEA} \leq 0` |
76
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
77
- | plfub | line flow upper bound | :math:`p_{lf} - u_{l} R_{ATEA} \leq 0` |
78
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
79
- | alflb | line angle difference lower bound | :math:`-C_{ft}^T \theta_{bus} + \theta_{bus, min} \leq 0` |
80
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
81
- | alfub | line angle difference upper bound | :math:`C_{ft}^T \theta_{bus} - \theta_{bus, max} \leq 0` |
82
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
83
-
84
- Vars
85
- ----------------------------------
86
-
87
- +-------+----------------------+------------------------------------+--------+-------------+------------+
88
- | Name | Symbol | Description | Unit | Source | Properties |
89
- +=======+======================+====================================+========+=============+============+
90
- | pg | :math:`p_g` | Gen active power | *p.u.* | StaticGen.p | |
91
- +-------+----------------------+------------------------------------+--------+-------------+------------+
92
- | vBus | :math:`v_{Bus}` | Bus voltage magnitude, placeholder | *p.u.* | Bus.v | |
93
- +-------+----------------------+------------------------------------+--------+-------------+------------+
94
- | aBus | :math:`\theta_{bus}` | Bus voltage angle | *rad* | Bus.a | |
95
- +-------+----------------------+------------------------------------+--------+-------------+------------+
96
-
97
- ExpressionCalcs
98
- ----------------------------------
99
-
100
- +------+-------------------+------------------+----------+--------+
101
- | Name | Description | Expression | Unit | Source |
102
- +======+===================+==================+==========+========+
103
- | pi | LMP, dual of <pb> | :math:`\phi[pb]` | *$/p.u.* | Bus |
104
- +------+-------------------+------------------+----------+--------+
105
-
106
- Services
107
- ---------
108
-
109
- +---------+---------------------+---------------------------------+-----------+
110
- | Name | Symbol | Description | Type |
111
- +=========+=====================+=================================+===========+
112
- | csb | :math:`c_{sb}` | select slack bus | VarSelect |
113
- +---------+---------------------+---------------------------------+-----------+
114
- | ctrle | :math:`c_{trl, e}` | Effective Gen controllability | NumOpDual |
115
- +---------+---------------------+---------------------------------+-----------+
116
- | nctrl | :math:`c_{trl,n}` | Effective Gen uncontrollability | NumOp |
117
- +---------+---------------------+---------------------------------+-----------+
118
- | nctrle | :math:`c_{trl,n,e}` | Effective Gen uncontrollability | NumOpDual |
119
- +---------+---------------------+---------------------------------+-----------+
120
-
121
- Parameters
122
- ----------------------------------
123
-
124
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
125
- | Name | Symbol | Description | Unit | Source |
126
- +==========+===========================+=====================================+==============+======================+
127
- | ug | :math:`u_{g}` | Gen connection status | | StaticGen.u |
128
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
129
- | pg0 | :math:`p_{g, 0}` | Gen initial active power | *p.u.* | StaticGen.p0 |
130
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
131
- | gsh | :math:`g_{sh}` | shunt conductance | | Shunt.g |
132
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
133
- | buss | :math:`B_{us,s}` | Bus slack | | Slack.bus |
134
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
135
- | pd | :math:`p_{d}` | active demand | *p.u.* | StaticLoad.p0 |
136
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
137
- | Cg | :math:`C_{g}` | Gen connection matrix | | MatProcessor.Cg |
138
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
139
- | Cl | :math:`C_{l}` | Load connection matrix | | MatProcessor.Cl |
140
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
141
- | CftT | :math:`C_{ft}^T` | Transpose of line connection matrix | | MatProcessor.CftT |
142
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
143
- | Csh | :math:`C_{sh}` | Shunt connection matrix | | MatProcessor.Csh |
144
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
145
- | Bbus | :math:`B_{bus}` | Bus admittance matrix | | MatProcessor.Bbus |
146
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
147
- | Bf | :math:`B_{f}` | Bf matrix | | MatProcessor.Bf |
148
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
149
- | Pbusinj | :math:`P_{bus}^{inj}` | Bus power injection vector | | MatProcessor.Pbusinj |
150
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
151
- | Pfinj | :math:`P_{f}^{inj}` | Line power injection vector | | MatProcessor.Pfinj |
152
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
153
- | c2 | :math:`c_{2}` | Gen cost coefficient 2 | *$/(p.u.^2)* | GCost.c2 |
154
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
155
- | c1 | :math:`c_{1}` | Gen cost coefficient 1 | *$/(p.u.)* | GCost.c1 |
156
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
157
- | c0 | :math:`c_{0}` | Gen cost coefficient 0 | *$* | GCost.c0 |
158
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
159
- | ctrl | :math:`c_{trl}` | Gen controllability | | StaticGen.ctrl |
160
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
161
- | pmax | :math:`p_{g, max}` | Gen maximum active power | *p.u.* | StaticGen.pmax |
162
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
163
- | pmin | :math:`p_{g, min}` | Gen minimum active power | *p.u.* | StaticGen.pmin |
164
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
165
- | ul | :math:`u_{l}` | Line connection status | | Line.u |
166
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
167
- | rate_a | :math:`R_{ATEA}` | long-term flow limit | *p.u.* | Line.rate_a |
168
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
169
- | amax | :math:`\theta_{bus, max}` | max line angle difference | | Line.amax |
170
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
171
- | amin | :math:`\theta_{bus, min}` | min line angle difference | | Line.amin |
172
- +----------+---------------------------+-------------------------------------+--------------+----------------------+
173
-
174
-
175
- .. _ED:
176
-
177
- --------------------------------------------------------------------------------
178
- ED
179
- --------------------------------------------------------------------------------
180
- DC-based multi-period economic dispatch (ED).
181
- Dispath interval ``config.t`` (:math:`T_{cfg}`) is introduced,
182
- 1 [Hour] by default.
183
-
184
- ED extends DCOPF as follows:
185
-
186
- - Vars ``pg``, ``pru``, ``prd`` are extended to 2D
187
- - 2D Vars ``rgu`` and ``rgd`` are introduced
188
- - Param ``ug`` is sourced from ``EDTSlot.ug`` as generator commitment
189
-
190
- Notes
191
- -----
192
- 1. Formulations has been adjusted with interval ``config.t``
193
-
194
- 2. The tie-line flow is not implemented in this model.
195
-
196
- 3. `EDTSlot.ug` is used instead of `StaticGen.u` for generator commitment.
197
-
198
- Objective
199
- ----------------------------------
200
-
201
- +------+----------------------------------------------------------------------------------------------------------------------------+
202
- | Unit | Expression |
203
- +======+============================================================================================================================+
204
- | *$* | :math:`min. \sum(T_{cfg}^{2} c_{2} p_g^{2})+ T_{cfg} \sum(c_{1} p_g + c_{sr} p_{r,s})+ \sum(u_{g} c_{0} 1_{tl})` |
205
- +------+----------------------------------------------------------------------------------------------------------------------------+
206
-
207
- Expressions
208
- ----------------------------------
209
-
210
- +--------+----------------+--------------------------------------------------------------------+--------+-----------+
211
- | Name | Description | Expression | Unit | Source |
212
- +========+================+====================================================================+========+===========+
213
- | plf | 2D Line flow | :math:`B_{f} \theta_{bus} + P_{f}^{inj} 1_{tl}` | *p.u.* | Line |
214
- +--------+----------------+--------------------------------------------------------------------+--------+-----------+
215
- | pmaxe | Effective pmax | :math:`c_{trl,n,e} p_{g, 0} 1_{tl} + c_{trl, e} 1_{tl} p_{g, max}` | *p.u.* | StaticGen |
216
- +--------+----------------+--------------------------------------------------------------------+--------+-----------+
217
- | pmine | Effective pmin | :math:`c_{trl,n,e} p_{g, 0} 1_{tl} + c_{trl, e} 1_{tl} p_{g, min}` | *p.u.* | StaticGen |
218
- +--------+----------------+--------------------------------------------------------------------+--------+-----------+
219
-
220
- Constraints
221
- ----------------------------------
222
-
223
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
224
- | Name | Description | Expression |
225
- +========+===================================+============================================================================================================+
226
- | pb | power balance | :math:`B_{bus} \theta_{bus} + P_{bus}^{inj} 1_{tl} + C_{l} p_{d,s} + C_{sh} g_{sh} 1_{tl} - C_{g} p_g = 0` |
227
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
228
- | sbus | align slack bus angle | :math:`c_{sb} \theta_{bus} = 0` |
229
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
230
- | pglb | pg min | :math:`-p_g + p_{g, min, e} \leq 0` |
231
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
232
- | pgub | pg max | :math:`p_g - p_{g, max, e} \leq 0` |
233
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
234
- | plflb | line flow lower bound | :math:`-B_{f} \theta_{bus} - P_{f}^{inj} 1_{tl} - u_{l} R_{ATEA} 1_{tl} \leq 0` |
235
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
236
- | plfub | line flow upper bound | :math:`B_{f} \theta_{bus} + P_{f}^{inj} 1_{tl} - u_{l} R_{ATEA} 1_{tl} \leq 0` |
237
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
238
- | alflb | line angle difference lower bound | :math:`-C_{ft}^T \theta_{bus} + \theta_{bus, min} 1_{tl} \leq 0` |
239
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
240
- | alfub | line angle difference upper bound | :math:`C_{ft}^T \theta_{bus} - \theta_{bus, max} 1_{tl} \leq 0` |
241
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
242
- | rbu | RegUp reserve balance | :math:`S_{g} u_{g} p_{r,u} - d_{u, d} 1_{tl} = 0` |
243
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
244
- | rbd | RegDn reserve balance | :math:`S_{g} u_{g} p_{r,d} - d_{d, d} 1_{tl} = 0` |
245
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
246
- | rru | RegUp reserve source | :math:`p_g + p_{r,u} - u_{g} p_{g, max} 1_{tl} \leq 0` |
247
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
248
- | rrd | RegDn reserve source | :math:`-p_g + p_{r,d} + u_{g} p_{g, min} 1_{tl} \leq 0` |
249
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
250
- | rgu | Gen ramping up | :math:`p_g M_{r} - T_{cfg} R_{30,R} \leq 0` |
251
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
252
- | rgd | Gen ramping down | :math:`-p_g M_{r} - T_{cfg} R_{30,R} \leq 0` |
253
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
254
- | prsb | spinning reserve balance | :math:`u_{g} p_{g, max} 1_{tl} - p_g - p_{r,s} = 0` |
255
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
256
- | rsr | spinning reserve requirement | :math:`-S_{g} p_{r,s} + d_{s,r,z} \leq 0` |
257
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
258
- | rgu0 | Initial gen ramping up | :math:`u_{g}[: 0], p_g[:, 0] - p_{g, 0}[:, 0] - R_{30} \leq 0` |
259
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
260
- | rgd0 | Initial gen ramping down | :math:`u_{g}[: 0], -p_g[:, 0] + p_{g, 0}[:, 0] - R_{30} \leq 0` |
261
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
262
-
263
- Vars
264
- ----------------------------------
265
-
266
- +-------+----------------------+------------------+--------+-------------+------------+
267
- | Name | Symbol | Description | Unit | Source | Properties |
268
- +=======+======================+==================+========+=============+============+
269
- | pg | :math:`p_g` | 2D Gen power | *p.u.* | StaticGen.p | |
270
- +-------+----------------------+------------------+--------+-------------+------------+
271
- | vBus | :math:`v_{Bus}` | 2D Bus voltage | *p.u.* | Bus.v | |
272
- +-------+----------------------+------------------+--------+-------------+------------+
273
- | aBus | :math:`\theta_{bus}` | 2D Bus angle | *rad* | Bus.a | |
274
- +-------+----------------------+------------------+--------+-------------+------------+
275
- | pru | :math:`p_{r,u}` | 2D RegUp power | *p.u.* | StaticGen | nonneg |
276
- +-------+----------------------+------------------+--------+-------------+------------+
277
- | prd | :math:`p_{r,d}` | 2D RegDn power | *p.u.* | StaticGen | nonneg |
278
- +-------+----------------------+------------------+--------+-------------+------------+
279
- | prs | :math:`p_{r,s}` | spinning reserve | *p.u.* | StaticGen | nonneg |
280
- +-------+----------------------+------------------+--------+-------------+------------+
281
-
282
- ExpressionCalcs
283
- ----------------------------------
284
-
285
- +------+-------------------+------------------+----------+--------+
286
- | Name | Description | Expression | Unit | Source |
287
- +======+===================+==================+==========+========+
288
- | pi | LMP, dual of <pb> | :math:`\phi[pb]` | *$/p.u.* | Bus |
289
- +------+-------------------+------------------+----------+--------+
290
-
291
- Services
292
- ---------
293
-
294
- +---------+-----------------------+--------------------------------------------------+-----------+
295
- | Name | Symbol | Description | Type |
296
- +=========+=======================+==================================================+===========+
297
- | csb | :math:`c_{sb}` | select slack bus | VarSelect |
298
- +---------+-----------------------+--------------------------------------------------+-----------+
299
- | ctrle | :math:`c_{trl, e}` | Effective Gen controllability | NumOpDual |
300
- +---------+-----------------------+--------------------------------------------------+-----------+
301
- | nctrl | :math:`c_{trl,n}` | Effective Gen uncontrollability | NumOp |
302
- +---------+-----------------------+--------------------------------------------------+-----------+
303
- | nctrle | :math:`c_{trl,n,e}` | Effective Gen uncontrollability | NumOpDual |
304
- +---------+-----------------------+--------------------------------------------------+-----------+
305
- | gs | :math:`S_{g}` | Sum Gen vars vector in shape of zone | ZonalSum |
306
- +---------+-----------------------+--------------------------------------------------+-----------+
307
- | ds | :math:`S_{d}` | Sum pd vector in shape of zone | ZonalSum |
308
- +---------+-----------------------+--------------------------------------------------+-----------+
309
- | pdz | :math:`p_{d,z}` | zonal total load | NumOpDual |
310
- +---------+-----------------------+--------------------------------------------------+-----------+
311
- | dud | :math:`d_{u, d}` | zonal RegUp reserve requirement | NumOpDual |
312
- +---------+-----------------------+--------------------------------------------------+-----------+
313
- | ddd | :math:`d_{d, d}` | zonal RegDn reserve requirement | NumOpDual |
314
- +---------+-----------------------+--------------------------------------------------+-----------+
315
- | tlv | :math:`1_{tl}` | time length vector | NumOp |
316
- +---------+-----------------------+--------------------------------------------------+-----------+
317
- | pds | :math:`p_{d,s}` | Scaled load | LoadScale |
318
- +---------+-----------------------+--------------------------------------------------+-----------+
319
- | Mr | :math:`M_{r}` | Subtraction matrix for ramping | RampSub |
320
- +---------+-----------------------+--------------------------------------------------+-----------+
321
- | RR30 | :math:`R_{30,R}` | Repeated ramp rate | NumHstack |
322
- +---------+-----------------------+--------------------------------------------------+-----------+
323
- | dsrpz | :math:`d_{s,r, p, z}` | zonal spinning reserve requirement in percentage | NumOpDual |
324
- +---------+-----------------------+--------------------------------------------------+-----------+
325
- | dsr | :math:`d_{s,r,z}` | zonal spinning reserve requirement | NumOpDual |
326
- +---------+-----------------------+--------------------------------------------------+-----------+
327
- | ugt | :math:`u_{g}` | input ug transpose | NumOp |
328
- +---------+-----------------------+--------------------------------------------------+-----------+
329
-
330
- Parameters
331
- ----------------------------------
332
-
333
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
334
- | Name | Symbol | Description | Unit | Source |
335
- +===========+===========================+============================================+==============+======================+
336
- | ug | :math:`u_{g}` | unit commitment decisions | | EDTSlot.ug |
337
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
338
- | pg0 | :math:`p_{g, 0}` | Gen initial active power | *p.u.* | StaticGen.p0 |
339
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
340
- | gsh | :math:`g_{sh}` | shunt conductance | | Shunt.g |
341
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
342
- | buss | :math:`B_{us,s}` | Bus slack | | Slack.bus |
343
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
344
- | pd | :math:`p_{d}` | active demand | *p.u.* | StaticLoad.p0 |
345
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
346
- | Cg | :math:`C_{g}` | Gen connection matrix | | MatProcessor.Cg |
347
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
348
- | Cl | :math:`C_{l}` | Load connection matrix | | MatProcessor.Cl |
349
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
350
- | CftT | :math:`C_{ft}^T` | Transpose of line connection matrix | | MatProcessor.CftT |
351
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
352
- | Csh | :math:`C_{sh}` | Shunt connection matrix | | MatProcessor.Csh |
353
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
354
- | Bbus | :math:`B_{bus}` | Bus admittance matrix | | MatProcessor.Bbus |
355
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
356
- | Bf | :math:`B_{f}` | Bf matrix | | MatProcessor.Bf |
357
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
358
- | Pbusinj | :math:`P_{bus}^{inj}` | Bus power injection vector | | MatProcessor.Pbusinj |
359
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
360
- | Pfinj | :math:`P_{f}^{inj}` | Line power injection vector | | MatProcessor.Pfinj |
361
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
362
- | c2 | :math:`c_{2}` | Gen cost coefficient 2 | *$/(p.u.^2)* | GCost.c2 |
363
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
364
- | c1 | :math:`c_{1}` | Gen cost coefficient 1 | *$/(p.u.)* | GCost.c1 |
365
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
366
- | c0 | :math:`c_{0}` | Gen cost coefficient 0 | *$* | GCost.c0 |
367
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
368
- | ctrl | :math:`c_{trl}` | Gen controllability | | StaticGen.ctrl |
369
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
370
- | pmax | :math:`p_{g, max}` | Gen maximum active power | *p.u.* | StaticGen.pmax |
371
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
372
- | pmin | :math:`p_{g, min}` | Gen minimum active power | *p.u.* | StaticGen.pmin |
373
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
374
- | ul | :math:`u_{l}` | Line connection status | | Line.u |
375
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
376
- | rate_a | :math:`R_{ATEA}` | long-term flow limit | *p.u.* | Line.rate_a |
377
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
378
- | amax | :math:`\theta_{bus, max}` | max line angle difference | | Line.amax |
379
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
380
- | amin | :math:`\theta_{bus, min}` | min line angle difference | | Line.amin |
381
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
382
- | zg | :math:`z_{one,g}` | Gen zone | | StaticGen.zone |
383
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
384
- | zd | :math:`z_{one,d}` | Load zone | | StaticLoad.zone |
385
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
386
- | R10 | :math:`R_{10}` | 10-min ramp rate | *p.u./h* | StaticGen.R10 |
387
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
388
- | cru | :math:`c_{r,u}` | RegUp reserve coefficient | *$/(p.u.)* | SFRCost.cru |
389
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
390
- | crd | :math:`c_{r,d}` | RegDown reserve coefficient | *$/(p.u.)* | SFRCost.crd |
391
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
392
- | du | :math:`d_{u}` | RegUp reserve requirement in percentage | *%* | SFR.du |
393
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
394
- | dd | :math:`d_{d}` | RegDown reserve requirement in percentage | *%* | SFR.dd |
395
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
396
- | sd | :math:`s_{d}` | zonal load factor for ED | | EDTSlot.sd |
397
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
398
- | timeslot | :math:`t_{s,idx}` | Time slot for multi-period ED | | EDTSlot.idx |
399
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
400
- | R30 | :math:`R_{30}` | 30-min ramp rate | *p.u./h* | StaticGen.R30 |
401
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
402
- | dsr | :math:`d_{sr}` | spinning reserve requirement in percentage | *%* | SR.demand |
403
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
404
- | csr | :math:`c_{sr}` | cost for spinning reserve | *$/(p.u.*h)* | SRCost.csr |
405
- +-----------+---------------------------+--------------------------------------------+--------------+----------------------+
406
-
407
-
408
- Config Fields in [ED]
409
-
410
- +--------+-----------------+-------+------------------------+-----------------+
411
- | Option | Symbol | Value | Info | Accepted values |
412
- +========+=================+=======+========================+=================+
413
- | t | :math:`T_{cfg}` | 1 | time interval in hours | |
414
- +--------+-----------------+-------+------------------------+-----------------+
415
-
416
-
417
- .. _EDDG:
418
-
419
- --------------------------------------------------------------------------------
420
- EDDG
421
- --------------------------------------------------------------------------------
422
- ED with distributed generation :ref:`DG`.
423
-
424
- Note that EDDG only inlcudes DG output power. If ESD1 is included,
425
- EDES should be used instead, otherwise there is no SOC.
426
-
427
- Objective
428
- ----------------------------------
429
-
430
- +------+----------------------------------------------------------------------------------------------------------------------------+
431
- | Unit | Expression |
432
- +======+============================================================================================================================+
433
- | *$* | :math:`min. \sum(T_{cfg}^{2} c_{2} p_g^{2})+ T_{cfg} \sum(c_{1} p_g + c_{sr} p_{r,s})+ \sum(u_{g} c_{0} 1_{tl})` |
434
- +------+----------------------------------------------------------------------------------------------------------------------------+
435
-
436
- Expressions
437
- ----------------------------------
438
-
439
- +--------+----------------+--------------------------------------------------------------------+--------+-----------+
440
- | Name | Description | Expression | Unit | Source |
441
- +========+================+====================================================================+========+===========+
442
- | plf | 2D Line flow | :math:`B_{f} \theta_{bus} + P_{f}^{inj} 1_{tl}` | *p.u.* | Line |
443
- +--------+----------------+--------------------------------------------------------------------+--------+-----------+
444
- | pmaxe | Effective pmax | :math:`c_{trl,n,e} p_{g, 0} 1_{tl} + c_{trl, e} 1_{tl} p_{g, max}` | *p.u.* | StaticGen |
445
- +--------+----------------+--------------------------------------------------------------------+--------+-----------+
446
- | pmine | Effective pmin | :math:`c_{trl,n,e} p_{g, 0} 1_{tl} + c_{trl, e} 1_{tl} p_{g, min}` | *p.u.* | StaticGen |
447
- +--------+----------------+--------------------------------------------------------------------+--------+-----------+
448
-
449
- Constraints
450
- ----------------------------------
451
-
452
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
453
- | Name | Description | Expression |
454
- +========+===================================+============================================================================================================+
455
- | pb | power balance | :math:`B_{bus} \theta_{bus} + P_{bus}^{inj} 1_{tl} + C_{l} p_{d,s} + C_{sh} g_{sh} 1_{tl} - C_{g} p_g = 0` |
456
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
457
- | sbus | align slack bus angle | :math:`c_{sb} \theta_{bus} = 0` |
458
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
459
- | pglb | pg min | :math:`-p_g + p_{g, min, e} \leq 0` |
460
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
461
- | pgub | pg max | :math:`p_g - p_{g, max, e} \leq 0` |
462
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
463
- | plflb | line flow lower bound | :math:`-B_{f} \theta_{bus} - P_{f}^{inj} 1_{tl} - u_{l} R_{ATEA} 1_{tl} \leq 0` |
464
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
465
- | plfub | line flow upper bound | :math:`B_{f} \theta_{bus} + P_{f}^{inj} 1_{tl} - u_{l} R_{ATEA} 1_{tl} \leq 0` |
466
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
467
- | alflb | line angle difference lower bound | :math:`-C_{ft}^T \theta_{bus} + \theta_{bus, min} 1_{tl} \leq 0` |
468
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
469
- | alfub | line angle difference upper bound | :math:`C_{ft}^T \theta_{bus} - \theta_{bus, max} 1_{tl} \leq 0` |
470
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
471
- | rbu | RegUp reserve balance | :math:`S_{g} u_{g} p_{r,u} - d_{u, d} 1_{tl} = 0` |
472
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
473
- | rbd | RegDn reserve balance | :math:`S_{g} u_{g} p_{r,d} - d_{d, d} 1_{tl} = 0` |
474
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
475
- | rru | RegUp reserve source | :math:`p_g + p_{r,u} - u_{g} p_{g, max} 1_{tl} \leq 0` |
476
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
477
- | rrd | RegDn reserve source | :math:`-p_g + p_{r,d} + u_{g} p_{g, min} 1_{tl} \leq 0` |
478
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
479
- | rgu | Gen ramping up | :math:`p_g M_{r} - T_{cfg} R_{30,R} \leq 0` |
480
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
481
- | rgd | Gen ramping down | :math:`-p_g M_{r} - T_{cfg} R_{30,R} \leq 0` |
482
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
483
- | prsb | spinning reserve balance | :math:`u_{g} p_{g, max} 1_{tl} - p_g - p_{r,s} = 0` |
484
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
485
- | rsr | spinning reserve requirement | :math:`-S_{g} p_{r,s} + d_{s,r,z} \leq 0` |
486
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
487
- | rgu0 | Initial gen ramping up | :math:`u_{g}[: 0], p_g[:, 0] - p_{g, 0}[:, 0] - R_{30} \leq 0` |
488
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
489
- | rgd0 | Initial gen ramping down | :math:`u_{g}[: 0], -p_g[:, 0] + p_{g, 0}[:, 0] - R_{30} \leq 0` |
490
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
491
- | cdgb | Select DG power from pg | :math:`C_{DG} p_g - p_{g,DG} = 0` |
492
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------+
493
-
494
- Vars
495
- ----------------------------------
496
-
497
- +-------+----------------------+------------------+--------+-------------+------------+
498
- | Name | Symbol | Description | Unit | Source | Properties |
499
- +=======+======================+==================+========+=============+============+
500
- | pg | :math:`p_g` | 2D Gen power | *p.u.* | StaticGen.p | |
501
- +-------+----------------------+------------------+--------+-------------+------------+
502
- | vBus | :math:`v_{Bus}` | 2D Bus voltage | *p.u.* | Bus.v | |
503
- +-------+----------------------+------------------+--------+-------------+------------+
504
- | aBus | :math:`\theta_{bus}` | 2D Bus angle | *rad* | Bus.a | |
505
- +-------+----------------------+------------------+--------+-------------+------------+
506
- | pru | :math:`p_{r,u}` | 2D RegUp power | *p.u.* | StaticGen | nonneg |
507
- +-------+----------------------+------------------+--------+-------------+------------+
508
- | prd | :math:`p_{r,d}` | 2D RegDn power | *p.u.* | StaticGen | nonneg |
509
- +-------+----------------------+------------------+--------+-------------+------------+
510
- | prs | :math:`p_{r,s}` | spinning reserve | *p.u.* | StaticGen | nonneg |
511
- +-------+----------------------+------------------+--------+-------------+------------+
512
- | pgdg | :math:`p_{g,DG}` | DG output power | *p.u.* | DG | |
513
- +-------+----------------------+------------------+--------+-------------+------------+
514
-
515
- ExpressionCalcs
516
- ----------------------------------
517
-
518
- +------+-------------------+------------------+----------+--------+
519
- | Name | Description | Expression | Unit | Source |
520
- +======+===================+==================+==========+========+
521
- | pi | LMP, dual of <pb> | :math:`\phi[pb]` | *$/p.u.* | Bus |
522
- +------+-------------------+------------------+----------+--------+
523
-
524
- Services
525
- ---------
526
-
527
- +---------+-----------------------+--------------------------------------------------+-----------+
528
- | Name | Symbol | Description | Type |
529
- +=========+=======================+==================================================+===========+
530
- | csb | :math:`c_{sb}` | select slack bus | VarSelect |
531
- +---------+-----------------------+--------------------------------------------------+-----------+
532
- | ctrle | :math:`c_{trl, e}` | Effective Gen controllability | NumOpDual |
533
- +---------+-----------------------+--------------------------------------------------+-----------+
534
- | nctrl | :math:`c_{trl,n}` | Effective Gen uncontrollability | NumOp |
535
- +---------+-----------------------+--------------------------------------------------+-----------+
536
- | nctrle | :math:`c_{trl,n,e}` | Effective Gen uncontrollability | NumOpDual |
537
- +---------+-----------------------+--------------------------------------------------+-----------+
538
- | gs | :math:`S_{g}` | Sum Gen vars vector in shape of zone | ZonalSum |
539
- +---------+-----------------------+--------------------------------------------------+-----------+
540
- | ds | :math:`S_{d}` | Sum pd vector in shape of zone | ZonalSum |
541
- +---------+-----------------------+--------------------------------------------------+-----------+
542
- | pdz | :math:`p_{d,z}` | zonal total load | NumOpDual |
543
- +---------+-----------------------+--------------------------------------------------+-----------+
544
- | dud | :math:`d_{u, d}` | zonal RegUp reserve requirement | NumOpDual |
545
- +---------+-----------------------+--------------------------------------------------+-----------+
546
- | ddd | :math:`d_{d, d}` | zonal RegDn reserve requirement | NumOpDual |
547
- +---------+-----------------------+--------------------------------------------------+-----------+
548
- | tlv | :math:`1_{tl}` | time length vector | NumOp |
549
- +---------+-----------------------+--------------------------------------------------+-----------+
550
- | pds | :math:`p_{d,s}` | Scaled load | LoadScale |
551
- +---------+-----------------------+--------------------------------------------------+-----------+
552
- | Mr | :math:`M_{r}` | Subtraction matrix for ramping | RampSub |
553
- +---------+-----------------------+--------------------------------------------------+-----------+
554
- | RR30 | :math:`R_{30,R}` | Repeated ramp rate | NumHstack |
555
- +---------+-----------------------+--------------------------------------------------+-----------+
556
- | dsrpz | :math:`d_{s,r, p, z}` | zonal spinning reserve requirement in percentage | NumOpDual |
557
- +---------+-----------------------+--------------------------------------------------+-----------+
558
- | dsr | :math:`d_{s,r,z}` | zonal spinning reserve requirement | NumOpDual |
559
- +---------+-----------------------+--------------------------------------------------+-----------+
560
- | ugt | :math:`u_{g}` | input ug transpose | NumOp |
561
- +---------+-----------------------+--------------------------------------------------+-----------+
562
- | cd | :math:`C_{DG}` | Select DG power from pg | VarSelect |
563
- +---------+-----------------------+--------------------------------------------------+-----------+
564
-
565
- Parameters
566
- ----------------------------------
567
-
568
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
569
- | Name | Symbol | Description | Unit | Source |
570
- +===========+===========================+===================================================+==============+======================+
571
- | ug | :math:`u_{g}` | unit commitment decisions | | EDTSlot.ug |
572
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
573
- | pg0 | :math:`p_{g, 0}` | Gen initial active power | *p.u.* | StaticGen.p0 |
574
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
575
- | gsh | :math:`g_{sh}` | shunt conductance | | Shunt.g |
576
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
577
- | buss | :math:`B_{us,s}` | Bus slack | | Slack.bus |
578
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
579
- | pd | :math:`p_{d}` | active demand | *p.u.* | StaticLoad.p0 |
580
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
581
- | Cg | :math:`C_{g}` | Gen connection matrix | | MatProcessor.Cg |
582
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
583
- | Cl | :math:`C_{l}` | Load connection matrix | | MatProcessor.Cl |
584
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
585
- | CftT | :math:`C_{ft}^T` | Transpose of line connection matrix | | MatProcessor.CftT |
586
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
587
- | Csh | :math:`C_{sh}` | Shunt connection matrix | | MatProcessor.Csh |
588
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
589
- | Bbus | :math:`B_{bus}` | Bus admittance matrix | | MatProcessor.Bbus |
590
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
591
- | Bf | :math:`B_{f}` | Bf matrix | | MatProcessor.Bf |
592
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
593
- | Pbusinj | :math:`P_{bus}^{inj}` | Bus power injection vector | | MatProcessor.Pbusinj |
594
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
595
- | Pfinj | :math:`P_{f}^{inj}` | Line power injection vector | | MatProcessor.Pfinj |
596
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
597
- | c2 | :math:`c_{2}` | Gen cost coefficient 2 | *$/(p.u.^2)* | GCost.c2 |
598
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
599
- | c1 | :math:`c_{1}` | Gen cost coefficient 1 | *$/(p.u.)* | GCost.c1 |
600
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
601
- | c0 | :math:`c_{0}` | Gen cost coefficient 0 | *$* | GCost.c0 |
602
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
603
- | ctrl | :math:`c_{trl}` | Gen controllability | | StaticGen.ctrl |
604
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
605
- | pmax | :math:`p_{g, max}` | Gen maximum active power | *p.u.* | StaticGen.pmax |
606
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
607
- | pmin | :math:`p_{g, min}` | Gen minimum active power | *p.u.* | StaticGen.pmin |
608
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
609
- | ul | :math:`u_{l}` | Line connection status | | Line.u |
610
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
611
- | rate_a | :math:`R_{ATEA}` | long-term flow limit | *p.u.* | Line.rate_a |
612
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
613
- | amax | :math:`\theta_{bus, max}` | max line angle difference | | Line.amax |
614
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
615
- | amin | :math:`\theta_{bus, min}` | min line angle difference | | Line.amin |
616
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
617
- | zg | :math:`z_{one,g}` | Gen zone | | StaticGen.zone |
618
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
619
- | zd | :math:`z_{one,d}` | Load zone | | StaticLoad.zone |
620
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
621
- | R10 | :math:`R_{10}` | 10-min ramp rate | *p.u./h* | StaticGen.R10 |
622
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
623
- | cru | :math:`c_{r,u}` | RegUp reserve coefficient | *$/(p.u.)* | SFRCost.cru |
624
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
625
- | crd | :math:`c_{r,d}` | RegDown reserve coefficient | *$/(p.u.)* | SFRCost.crd |
626
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
627
- | du | :math:`d_{u}` | RegUp reserve requirement in percentage | *%* | SFR.du |
628
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
629
- | dd | :math:`d_{d}` | RegDown reserve requirement in percentage | *%* | SFR.dd |
630
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
631
- | sd | :math:`s_{d}` | zonal load factor for ED | | EDTSlot.sd |
632
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
633
- | timeslot | :math:`t_{s,idx}` | Time slot for multi-period ED | | EDTSlot.idx |
634
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
635
- | R30 | :math:`R_{30}` | 30-min ramp rate | *p.u./h* | StaticGen.R30 |
636
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
637
- | dsr | :math:`d_{sr}` | spinning reserve requirement in percentage | *%* | SR.demand |
638
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
639
- | csr | :math:`c_{sr}` | cost for spinning reserve | *$/(p.u.*h)* | SRCost.csr |
640
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
641
- | gendg | :math:`g_{DG}` | gen of DG | | DG.gen |
642
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
643
- | gammapd | :math:`\gamma_{p,DG}` | Ratio of DG.pge w.r.t to that of static generator | | DG.gammap |
644
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
645
-
646
-
647
- Config Fields in [EDDG]
648
-
649
- +--------+-----------------+-------+------------------------+-----------------+
650
- | Option | Symbol | Value | Info | Accepted values |
651
- +========+=================+=======+========================+=================+
652
- | t | :math:`T_{cfg}` | 1 | time interval in hours | |
653
- +--------+-----------------+-------+------------------------+-----------------+
654
-
655
-
656
- .. _EDES:
657
-
658
- --------------------------------------------------------------------------------
659
- EDES
660
- --------------------------------------------------------------------------------
661
- ED with energy storage :ref:`ESD1`.
662
- The bilinear term in the formulation is linearized with big-M method.
663
-
664
- Objective
665
- ----------------------------------
666
-
667
- +------+----------------------------------------------------------------------------------------------------------------------------+
668
- | Unit | Expression |
669
- +======+============================================================================================================================+
670
- | *$* | :math:`min. \sum(T_{cfg}^{2} c_{2} p_g^{2})+ T_{cfg} \sum(c_{1} p_g + c_{sr} p_{r,s})+ \sum(u_{g} c_{0} 1_{tl})` |
671
- +------+----------------------------------------------------------------------------------------------------------------------------+
672
-
673
- Expressions
674
- ----------------------------------
675
-
676
- +--------+----------------+--------------------------------------------------------------------+--------+-----------+
677
- | Name | Description | Expression | Unit | Source |
678
- +========+================+====================================================================+========+===========+
679
- | plf | 2D Line flow | :math:`B_{f} \theta_{bus} + P_{f}^{inj} 1_{tl}` | *p.u.* | Line |
680
- +--------+----------------+--------------------------------------------------------------------+--------+-----------+
681
- | pmaxe | Effective pmax | :math:`c_{trl,n,e} p_{g, 0} 1_{tl} + c_{trl, e} 1_{tl} p_{g, max}` | *p.u.* | StaticGen |
682
- +--------+----------------+--------------------------------------------------------------------+--------+-----------+
683
- | pmine | Effective pmin | :math:`c_{trl,n,e} p_{g, 0} 1_{tl} + c_{trl, e} 1_{tl} p_{g, min}` | *p.u.* | StaticGen |
684
- +--------+----------------+--------------------------------------------------------------------+--------+-----------+
685
-
686
- Constraints
687
- ----------------------------------
688
-
689
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
690
- | Name | Description | Expression |
691
- +========+===================================+========================================================================================================================+
692
- | pb | power balance | :math:`B_{bus} \theta_{bus} + P_{bus}^{inj} 1_{tl} + C_{l} p_{d,s} + C_{sh} g_{sh} 1_{tl} - C_{g} p_g = 0` |
693
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
694
- | sbus | align slack bus angle | :math:`c_{sb} \theta_{bus} = 0` |
695
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
696
- | pglb | pg min | :math:`-p_g + p_{g, min, e} \leq 0` |
697
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
698
- | pgub | pg max | :math:`p_g - p_{g, max, e} \leq 0` |
699
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
700
- | plflb | line flow lower bound | :math:`-B_{f} \theta_{bus} - P_{f}^{inj} 1_{tl} - u_{l} R_{ATEA} 1_{tl} \leq 0` |
701
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
702
- | plfub | line flow upper bound | :math:`B_{f} \theta_{bus} + P_{f}^{inj} 1_{tl} - u_{l} R_{ATEA} 1_{tl} \leq 0` |
703
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
704
- | alflb | line angle difference lower bound | :math:`-C_{ft}^T \theta_{bus} + \theta_{bus, min} 1_{tl} \leq 0` |
705
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
706
- | alfub | line angle difference upper bound | :math:`C_{ft}^T \theta_{bus} - \theta_{bus, max} 1_{tl} \leq 0` |
707
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
708
- | rbu | RegUp reserve balance | :math:`S_{g} u_{g} p_{r,u} - d_{u, d} 1_{tl} = 0` |
709
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
710
- | rbd | RegDn reserve balance | :math:`S_{g} u_{g} p_{r,d} - d_{d, d} 1_{tl} = 0` |
711
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
712
- | rru | RegUp reserve source | :math:`p_g + p_{r,u} - u_{g} p_{g, max} 1_{tl} \leq 0` |
713
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
714
- | rrd | RegDn reserve source | :math:`-p_g + p_{r,d} + u_{g} p_{g, min} 1_{tl} \leq 0` |
715
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
716
- | rgu | Gen ramping up | :math:`p_g M_{r} - T_{cfg} R_{30,R} \leq 0` |
717
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
718
- | rgd | Gen ramping down | :math:`-p_g M_{r} - T_{cfg} R_{30,R} \leq 0` |
719
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
720
- | prsb | spinning reserve balance | :math:`u_{g} p_{g, max} 1_{tl} - p_g - p_{r,s} = 0` |
721
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
722
- | rsr | spinning reserve requirement | :math:`-S_{g} p_{r,s} + d_{s,r,z} \leq 0` |
723
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
724
- | rgu0 | Initial gen ramping up | :math:`u_{g}[: 0], p_g[:, 0] - p_{g, 0}[:, 0] - R_{30} \leq 0` |
725
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
726
- | rgd0 | Initial gen ramping down | :math:`u_{g}[: 0], -p_g[:, 0] + p_{g, 0}[:, 0] - R_{30} \leq 0` |
727
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
728
- | cdgb | Select DG power from pg | :math:`C_{DG} p_g - p_{g,DG} = 0` |
729
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
730
- | SOClb | SOC lower bound | :math:`-SOC + SOC_{min} \leq 0` |
731
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
732
- | SOCub | SOC upper bound | :math:`SOC - SOC_{max} \leq 0` |
733
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
734
- | cescb | Select pce from DG | :math:`C_{ESD} p_{g,DG} - p_{c,ESD} = 0` |
735
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
736
- | cesdb | Select pde from DG | :math:`C_{ESD} p_{g,DG} - p_{d,ESD} = 0` |
737
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
738
- | cdb | Charging decision bound | :math:`u_{c,ESD} + u_{d,ESD} - 1 = 0` |
739
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
740
- | zce1 | zce bound 1 | :math:`-z_{c,ESD} + p_{c,ESD} \leq 0` |
741
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
742
- | zce2 | zce bound 2 | :math:`z_{c,ESD} - p_{c,ESD} - M_{big} (1-u_{c,ESD}) \leq 0` |
743
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
744
- | zce3 | zce bound 3 | :math:`z_{c,ESD} - M_{big} u_{c,ESD} \leq 0` |
745
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
746
- | zde1 | zde bound 1 | :math:`-z_{d,ESD} + p_{d,ESD} \leq 0` |
747
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
748
- | zde2 | zde bound 2 | :math:`z_{d,ESD} - p_{d,ESD} - M_{big} (1-u_{d,ESD}) \leq 0` |
749
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
750
- | zde3 | zde bound 3 | :math:`z_{d,ESD} - M_{big} u_{d,ESD} \leq 0` |
751
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
752
- | SOCb | ESD1 SOC balance | :math:`E_{n,R} SOC M_{r,ES} - T_{cfg} \eta_{c,R} z_{c,ESD}[:, 1:] + T_{cfg} R_{\eta_d,R} z_{d,ESD}[:, 1:] = 0` |
753
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
754
- | SOCb0 | ESD1 SOC initial balance | :math:`E_n SOC[:, 0] - SOC_{init} - T_{cfg} \eta_c z_{c,ESD}[:, 0] + T_{cfg} \frac{1}{\eta_d} z_{d,ESD}[:, 0] = 0` |
755
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
756
- | SOCr | SOC requirement | :math:`SOC[:, -1] - SOC_{init} = 0` |
757
- +--------+-----------------------------------+------------------------------------------------------------------------------------------------------------------------+
758
-
759
- Vars
760
- ----------------------------------
761
-
762
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
763
- | Name | Symbol | Description | Unit | Source | Properties |
764
- +=======+======================+================================================================+========+=============+============+
765
- | pg | :math:`p_g` | 2D Gen power | *p.u.* | StaticGen.p | |
766
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
767
- | vBus | :math:`v_{Bus}` | 2D Bus voltage | *p.u.* | Bus.v | |
768
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
769
- | aBus | :math:`\theta_{bus}` | 2D Bus angle | *rad* | Bus.a | |
770
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
771
- | pru | :math:`p_{r,u}` | 2D RegUp power | *p.u.* | StaticGen | nonneg |
772
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
773
- | prd | :math:`p_{r,d}` | 2D RegDn power | *p.u.* | StaticGen | nonneg |
774
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
775
- | prs | :math:`p_{r,s}` | spinning reserve | *p.u.* | StaticGen | nonneg |
776
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
777
- | pgdg | :math:`p_{g,DG}` | DG output power | *p.u.* | DG | |
778
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
779
- | SOC | :math:`SOC` | ESD1 State of Charge | *%* | ESD1 | pos |
780
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
781
- | pce | :math:`p_{c,ESD}` | ESD1 charging power | *p.u.* | ESD1 | nonneg |
782
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
783
- | pde | :math:`p_{d,ESD}` | ESD1 discharging power | *p.u.* | ESD1 | nonneg |
784
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
785
- | uce | :math:`u_{c,ESD}` | ESD1 charging decision | | ESD1 | boolean |
786
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
787
- | ude | :math:`u_{d,ESD}` | ESD1 discharging decision | | ESD1 | boolean |
788
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
789
- | zce | :math:`z_{c,ESD}` | Aux var for charging, :math:`z_{c,ESD}=u_{c,ESD}*p_{c,ESD}` | | ESD1 | nonneg |
790
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
791
- | zde | :math:`z_{d,ESD}` | Aux var for discharging, :math:`z_{d,ESD}=u_{d,ESD}*p_{d,ESD}` | | ESD1 | nonneg |
792
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
793
-
794
- ExpressionCalcs
795
- ----------------------------------
796
-
797
- +------+-------------------+------------------+----------+--------+
798
- | Name | Description | Expression | Unit | Source |
799
- +======+===================+==================+==========+========+
800
- | pi | LMP, dual of <pb> | :math:`\phi[pb]` | *$/p.u.* | Bus |
801
- +------+-------------------+------------------+----------+--------+
802
-
803
- Services
804
- ---------
805
-
806
- +---------+--------------------------+--------------------------------------------------+-----------+
807
- | Name | Symbol | Description | Type |
808
- +=========+==========================+==================================================+===========+
809
- | csb | :math:`c_{sb}` | select slack bus | VarSelect |
810
- +---------+--------------------------+--------------------------------------------------+-----------+
811
- | ctrle | :math:`c_{trl, e}` | Effective Gen controllability | NumOpDual |
812
- +---------+--------------------------+--------------------------------------------------+-----------+
813
- | nctrl | :math:`c_{trl,n}` | Effective Gen uncontrollability | NumOp |
814
- +---------+--------------------------+--------------------------------------------------+-----------+
815
- | nctrle | :math:`c_{trl,n,e}` | Effective Gen uncontrollability | NumOpDual |
816
- +---------+--------------------------+--------------------------------------------------+-----------+
817
- | gs | :math:`S_{g}` | Sum Gen vars vector in shape of zone | ZonalSum |
818
- +---------+--------------------------+--------------------------------------------------+-----------+
819
- | ds | :math:`S_{d}` | Sum pd vector in shape of zone | ZonalSum |
820
- +---------+--------------------------+--------------------------------------------------+-----------+
821
- | pdz | :math:`p_{d,z}` | zonal total load | NumOpDual |
822
- +---------+--------------------------+--------------------------------------------------+-----------+
823
- | dud | :math:`d_{u, d}` | zonal RegUp reserve requirement | NumOpDual |
824
- +---------+--------------------------+--------------------------------------------------+-----------+
825
- | ddd | :math:`d_{d, d}` | zonal RegDn reserve requirement | NumOpDual |
826
- +---------+--------------------------+--------------------------------------------------+-----------+
827
- | tlv | :math:`1_{tl}` | time length vector | NumOp |
828
- +---------+--------------------------+--------------------------------------------------+-----------+
829
- | pds | :math:`p_{d,s}` | Scaled load | LoadScale |
830
- +---------+--------------------------+--------------------------------------------------+-----------+
831
- | Mr | :math:`M_{r}` | Subtraction matrix for ramping | RampSub |
832
- +---------+--------------------------+--------------------------------------------------+-----------+
833
- | RR30 | :math:`R_{30,R}` | Repeated ramp rate | NumHstack |
834
- +---------+--------------------------+--------------------------------------------------+-----------+
835
- | dsrpz | :math:`d_{s,r, p, z}` | zonal spinning reserve requirement in percentage | NumOpDual |
836
- +---------+--------------------------+--------------------------------------------------+-----------+
837
- | dsr | :math:`d_{s,r,z}` | zonal spinning reserve requirement | NumOpDual |
838
- +---------+--------------------------+--------------------------------------------------+-----------+
839
- | ugt | :math:`u_{g}` | input ug transpose | NumOp |
840
- +---------+--------------------------+--------------------------------------------------+-----------+
841
- | cd | :math:`C_{DG}` | Select DG power from pg | VarSelect |
842
- +---------+--------------------------+--------------------------------------------------+-----------+
843
- | REtaD | :math:`\frac{1}{\eta_d}` | | NumOp |
844
- +---------+--------------------------+--------------------------------------------------+-----------+
845
- | Mb | :math:`M_{big}` | 10 times of max of pmax as big M | NumOp |
846
- +---------+--------------------------+--------------------------------------------------+-----------+
847
- | ces | :math:`C_{ESD}` | Select ESD power from DG | VarSelect |
848
- +---------+--------------------------+--------------------------------------------------+-----------+
849
- | Mre | :math:`M_{r,ES}` | Subtraction matrix for SOC | RampSub |
850
- +---------+--------------------------+--------------------------------------------------+-----------+
851
- | EnR | :math:`E_{n,R}` | Repeated En as 2D matrix, (ng, ng-1) | NumHstack |
852
- +---------+--------------------------+--------------------------------------------------+-----------+
853
- | EtaCR | :math:`\eta_{c,R}` | Repeated Etac as 2D matrix, (ng, ng-1) | NumHstack |
854
- +---------+--------------------------+--------------------------------------------------+-----------+
855
- | REtaDR | :math:`R_{\eta_d,R}` | Repeated REtaD as 2D matrix, (ng, ng-1) | NumHstack |
856
- +---------+--------------------------+--------------------------------------------------+-----------+
857
-
858
- Parameters
859
- ----------------------------------
860
-
861
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
862
- | Name | Symbol | Description | Unit | Source |
863
- +===========+===========================+===================================================+==============+======================+
864
- | ug | :math:`u_{g}` | unit commitment decisions | | EDTSlot.ug |
865
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
866
- | pg0 | :math:`p_{g, 0}` | Gen initial active power | *p.u.* | StaticGen.p0 |
867
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
868
- | gsh | :math:`g_{sh}` | shunt conductance | | Shunt.g |
869
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
870
- | buss | :math:`B_{us,s}` | Bus slack | | Slack.bus |
871
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
872
- | pd | :math:`p_{d}` | active demand | *p.u.* | StaticLoad.p0 |
873
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
874
- | Cg | :math:`C_{g}` | Gen connection matrix | | MatProcessor.Cg |
875
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
876
- | Cl | :math:`C_{l}` | Load connection matrix | | MatProcessor.Cl |
877
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
878
- | CftT | :math:`C_{ft}^T` | Transpose of line connection matrix | | MatProcessor.CftT |
879
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
880
- | Csh | :math:`C_{sh}` | Shunt connection matrix | | MatProcessor.Csh |
881
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
882
- | Bbus | :math:`B_{bus}` | Bus admittance matrix | | MatProcessor.Bbus |
883
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
884
- | Bf | :math:`B_{f}` | Bf matrix | | MatProcessor.Bf |
885
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
886
- | Pbusinj | :math:`P_{bus}^{inj}` | Bus power injection vector | | MatProcessor.Pbusinj |
887
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
888
- | Pfinj | :math:`P_{f}^{inj}` | Line power injection vector | | MatProcessor.Pfinj |
889
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
890
- | c2 | :math:`c_{2}` | Gen cost coefficient 2 | *$/(p.u.^2)* | GCost.c2 |
891
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
892
- | c1 | :math:`c_{1}` | Gen cost coefficient 1 | *$/(p.u.)* | GCost.c1 |
893
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
894
- | c0 | :math:`c_{0}` | Gen cost coefficient 0 | *$* | GCost.c0 |
895
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
896
- | ctrl | :math:`c_{trl}` | Gen controllability | | StaticGen.ctrl |
897
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
898
- | pmax | :math:`p_{g, max}` | Gen maximum active power | *p.u.* | StaticGen.pmax |
899
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
900
- | pmin | :math:`p_{g, min}` | Gen minimum active power | *p.u.* | StaticGen.pmin |
901
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
902
- | ul | :math:`u_{l}` | Line connection status | | Line.u |
903
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
904
- | rate_a | :math:`R_{ATEA}` | long-term flow limit | *p.u.* | Line.rate_a |
905
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
906
- | amax | :math:`\theta_{bus, max}` | max line angle difference | | Line.amax |
907
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
908
- | amin | :math:`\theta_{bus, min}` | min line angle difference | | Line.amin |
909
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
910
- | zg | :math:`z_{one,g}` | Gen zone | | StaticGen.zone |
911
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
912
- | zd | :math:`z_{one,d}` | Load zone | | StaticLoad.zone |
913
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
914
- | R10 | :math:`R_{10}` | 10-min ramp rate | *p.u./h* | StaticGen.R10 |
915
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
916
- | cru | :math:`c_{r,u}` | RegUp reserve coefficient | *$/(p.u.)* | SFRCost.cru |
917
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
918
- | crd | :math:`c_{r,d}` | RegDown reserve coefficient | *$/(p.u.)* | SFRCost.crd |
919
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
920
- | du | :math:`d_{u}` | RegUp reserve requirement in percentage | *%* | SFR.du |
921
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
922
- | dd | :math:`d_{d}` | RegDown reserve requirement in percentage | *%* | SFR.dd |
923
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
924
- | sd | :math:`s_{d}` | zonal load factor for ED | | EDTSlot.sd |
925
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
926
- | timeslot | :math:`t_{s,idx}` | Time slot for multi-period ED | | EDTSlot.idx |
927
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
928
- | R30 | :math:`R_{30}` | 30-min ramp rate | *p.u./h* | StaticGen.R30 |
929
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
930
- | dsr | :math:`d_{sr}` | spinning reserve requirement in percentage | *%* | SR.demand |
931
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
932
- | csr | :math:`c_{sr}` | cost for spinning reserve | *$/(p.u.*h)* | SRCost.csr |
933
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
934
- | gendg | :math:`g_{DG}` | gen of DG | | DG.gen |
935
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
936
- | gammapd | :math:`\gamma_{p,DG}` | Ratio of DG.pge w.r.t to that of static generator | | DG.gammap |
937
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
938
- | En | :math:`E_n` | Rated energy capacity | *MWh* | ESD1.En |
939
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
940
- | SOCmax | :math:`SOC_{max}` | Maximum allowed value for SOC in limiter | *%* | ESD1.SOCmax |
941
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
942
- | SOCmin | :math:`SOC_{min}` | Minimum required value for SOC in limiter | *%* | ESD1.SOCmin |
943
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
944
- | SOCinit | :math:`SOC_{init}` | Initial SOC | *%* | ESD1.SOCinit |
945
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
946
- | EtaC | :math:`\eta_c` | Efficiency during charging | *%* | ESD1.EtaC |
947
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
948
- | EtaD | :math:`\eta_d` | Efficiency during discharging | *%* | ESD1.EtaD |
949
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
950
- | genesd | :math:`g_{ESD}` | gen of ESD1 | | ESD1.idx |
951
- +-----------+---------------------------+---------------------------------------------------+--------------+----------------------+
952
-
953
-
954
- Config Fields in [EDES]
955
-
956
- +--------+-----------------+-------+------------------------+-----------------+
957
- | Option | Symbol | Value | Info | Accepted values |
958
- +========+=================+=======+========================+=================+
959
- | t | :math:`T_{cfg}` | 1 | time interval in hours | |
960
- +--------+-----------------+-------+------------------------+-----------------+
961
-
962
-
963
- .. _RTED:
964
-
965
- --------------------------------------------------------------------------------
966
- RTED
967
- --------------------------------------------------------------------------------
968
- DC-based real-time economic dispatch (RTED).
969
- RTED extends DCOPF with:
970
-
971
- - Mapping dicts to interface with ANDES
972
- - Function ``dc2ac`` to do the AC conversion
973
- - Vars for SFR reserve: ``pru`` and ``prd``
974
- - Param for linear SFR cost: ``cru`` and ``crd``
975
- - Param for SFR requirement: ``du`` and ``dd``
976
- - Param for ramping: start point ``pg0`` and ramping limit ``R10``
977
- - Param ``pg0``, which can be retrieved from dynamic simulation results.
978
-
979
- The function ``dc2ac`` sets the ``vBus`` value from solved ACOPF.
980
- Without this conversion, dynamic simulation might fail due to the gap between
981
- DC-based dispatch results and AC-based dynamic initialization.
982
-
983
- Notes
984
- -----
985
- 1. Formulations has been adjusted with interval ``config.t``, 5/60 [Hour] by default.
986
-
987
- 2. The tie-line flow has not been implemented in formulations.
988
-
989
- Objective
990
- ----------------------------------
991
-
992
- +------+-------------------------------------------------------------------------------------------------------------------------------------------+
993
- | Unit | Expression |
994
- +======+===========================================================================================================================================+
995
- | *$* | :math:`min. T_{cfg}^{2} \sum(c_{2} p_g^{2}) + \sum(u_{g} c_{0})+ T_{cfg} \sum(c_{1} p_g + c_{r,u} p_{r,u} + c_{r,d} p_{r,d})` |
996
- +------+-------------------------------------------------------------------------------------------------------------------------------------------+
997
-
998
- Expressions
999
- ----------------------------------
1000
-
1001
- +--------+----------------+------------------------------------------------------+--------+-----------+
1002
- | Name | Description | Expression | Unit | Source |
1003
- +========+================+======================================================+========+===========+
1004
- | plf | Line flow | :math:`B_{f} \theta_{bus} + P_{f}^{inj}` | *p.u.* | Line |
1005
- +--------+----------------+------------------------------------------------------+--------+-----------+
1006
- | pmaxe | Effective pmax | :math:`c_{trl,n,e} p_{g, 0} + c_{trl, e} p_{g, max}` | *p.u.* | StaticGen |
1007
- +--------+----------------+------------------------------------------------------+--------+-----------+
1008
- | pmine | Effective pmin | :math:`c_{trl,n,e} p_{g, 0} + c_{trl, e} p_{g, min}` | *p.u.* | StaticGen |
1009
- +--------+----------------+------------------------------------------------------+--------+-----------+
1010
-
1011
- Constraints
1012
- ----------------------------------
1013
-
1014
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1015
- | Name | Description | Expression |
1016
- +========+===================================+============================================================================================+
1017
- | pb | power balance | :math:`B_{bus} \theta_{bus} + P_{bus}^{inj} + C_{l} p_{d} + C_{sh} g_{sh} - C_{g} p_g = 0` |
1018
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1019
- | sbus | align slack bus angle | :math:`c_{sb} \theta_{bus} = 0` |
1020
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1021
- | pglb | pg min | :math:`-p_g + p_{g, min, e} \leq 0` |
1022
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1023
- | pgub | pg max | :math:`p_g - p_{g, max, e} \leq 0` |
1024
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1025
- | plflb | line flow lower bound | :math:`-p_{lf} - u_{l} R_{ATEA} \leq 0` |
1026
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1027
- | plfub | line flow upper bound | :math:`p_{lf} - u_{l} R_{ATEA} \leq 0` |
1028
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1029
- | alflb | line angle difference lower bound | :math:`-C_{ft}^T \theta_{bus} + \theta_{bus, min} \leq 0` |
1030
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1031
- | alfub | line angle difference upper bound | :math:`C_{ft}^T \theta_{bus} - \theta_{bus, max} \leq 0` |
1032
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1033
- | rbu | RegUp reserve balance | :math:`S_{g} u_{g} p_{r,u} - d_{u, d} = 0` |
1034
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1035
- | rbd | RegDn reserve balance | :math:`S_{g} u_{g} p_{r,d} - d_{d, d} = 0` |
1036
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1037
- | rru | RegUp reserve source | :math:`u_{g} (p_g + p_{r,u}) - u_{g} p_{g, max, e} \leq 0` |
1038
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1039
- | rrd | RegDn reserve source | :math:`u_{g} (-p_g + p_{r,d}) + u_{g} p_{g, min, e} \leq 0` |
1040
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1041
- | rgu | Gen ramping up | :math:`u_{g} (p_g-p_{g, 0}-R_{10}) \leq 0` |
1042
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1043
- | rgd | Gen ramping down | :math:`u_{g} (-p_g+p_{g, 0}-R_{10}) \leq 0` |
1044
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1045
-
1046
- Vars
1047
- ----------------------------------
1048
-
1049
- +-------+----------------------+------------------------------------+--------+-------------+------------+
1050
- | Name | Symbol | Description | Unit | Source | Properties |
1051
- +=======+======================+====================================+========+=============+============+
1052
- | pg | :math:`p_g` | Gen active power | *p.u.* | StaticGen.p | |
1053
- +-------+----------------------+------------------------------------+--------+-------------+------------+
1054
- | vBus | :math:`v_{Bus}` | Bus voltage magnitude, placeholder | *p.u.* | Bus.v | |
1055
- +-------+----------------------+------------------------------------+--------+-------------+------------+
1056
- | aBus | :math:`\theta_{bus}` | Bus voltage angle | *rad* | Bus.a | |
1057
- +-------+----------------------+------------------------------------+--------+-------------+------------+
1058
- | pru | :math:`p_{r,u}` | RegUp reserve | *p.u.* | StaticGen | nonneg |
1059
- +-------+----------------------+------------------------------------+--------+-------------+------------+
1060
- | prd | :math:`p_{r,d}` | RegDn reserve | *p.u.* | StaticGen | nonneg |
1061
- +-------+----------------------+------------------------------------+--------+-------------+------------+
1062
-
1063
- ExpressionCalcs
1064
- ----------------------------------
1065
-
1066
- +------+-------------------+------------------+----------+--------+
1067
- | Name | Description | Expression | Unit | Source |
1068
- +======+===================+==================+==========+========+
1069
- | pi | LMP, dual of <pb> | :math:`\phi[pb]` | *$/p.u.* | Bus |
1070
- +------+-------------------+------------------+----------+--------+
1071
-
1072
- Services
1073
- ---------
1074
-
1075
- +---------+---------------------+--------------------------------------+-----------+
1076
- | Name | Symbol | Description | Type |
1077
- +=========+=====================+======================================+===========+
1078
- | csb | :math:`c_{sb}` | select slack bus | VarSelect |
1079
- +---------+---------------------+--------------------------------------+-----------+
1080
- | ctrle | :math:`c_{trl, e}` | Effective Gen controllability | NumOpDual |
1081
- +---------+---------------------+--------------------------------------+-----------+
1082
- | nctrl | :math:`c_{trl,n}` | Effective Gen uncontrollability | NumOp |
1083
- +---------+---------------------+--------------------------------------+-----------+
1084
- | nctrle | :math:`c_{trl,n,e}` | Effective Gen uncontrollability | NumOpDual |
1085
- +---------+---------------------+--------------------------------------+-----------+
1086
- | gs | :math:`S_{g}` | Sum Gen vars vector in shape of zone | ZonalSum |
1087
- +---------+---------------------+--------------------------------------+-----------+
1088
- | ds | :math:`S_{d}` | Sum pd vector in shape of zone | ZonalSum |
1089
- +---------+---------------------+--------------------------------------+-----------+
1090
- | pdz | :math:`p_{d,z}` | zonal total load | NumOpDual |
1091
- +---------+---------------------+--------------------------------------+-----------+
1092
- | dud | :math:`d_{u, d}` | zonal RegUp reserve requirement | NumOpDual |
1093
- +---------+---------------------+--------------------------------------+-----------+
1094
- | ddd | :math:`d_{d, d}` | zonal RegDn reserve requirement | NumOpDual |
1095
- +---------+---------------------+--------------------------------------+-----------+
1096
-
1097
- Parameters
1098
- ----------------------------------
1099
-
1100
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1101
- | Name | Symbol | Description | Unit | Source |
1102
- +==========+===========================+===========================================+==============+======================+
1103
- | ug | :math:`u_{g}` | Gen connection status | | StaticGen.u |
1104
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1105
- | pg0 | :math:`p_{g, 0}` | Gen initial active power | *p.u.* | StaticGen.p0 |
1106
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1107
- | gsh | :math:`g_{sh}` | shunt conductance | | Shunt.g |
1108
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1109
- | buss | :math:`B_{us,s}` | Bus slack | | Slack.bus |
1110
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1111
- | pd | :math:`p_{d}` | active demand | *p.u.* | StaticLoad.p0 |
1112
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1113
- | Cg | :math:`C_{g}` | Gen connection matrix | | MatProcessor.Cg |
1114
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1115
- | Cl | :math:`C_{l}` | Load connection matrix | | MatProcessor.Cl |
1116
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1117
- | CftT | :math:`C_{ft}^T` | Transpose of line connection matrix | | MatProcessor.CftT |
1118
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1119
- | Csh | :math:`C_{sh}` | Shunt connection matrix | | MatProcessor.Csh |
1120
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1121
- | Bbus | :math:`B_{bus}` | Bus admittance matrix | | MatProcessor.Bbus |
1122
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1123
- | Bf | :math:`B_{f}` | Bf matrix | | MatProcessor.Bf |
1124
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1125
- | Pbusinj | :math:`P_{bus}^{inj}` | Bus power injection vector | | MatProcessor.Pbusinj |
1126
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1127
- | Pfinj | :math:`P_{f}^{inj}` | Line power injection vector | | MatProcessor.Pfinj |
1128
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1129
- | c2 | :math:`c_{2}` | Gen cost coefficient 2 | *$/(p.u.^2)* | GCost.c2 |
1130
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1131
- | c1 | :math:`c_{1}` | Gen cost coefficient 1 | *$/(p.u.)* | GCost.c1 |
1132
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1133
- | c0 | :math:`c_{0}` | Gen cost coefficient 0 | *$* | GCost.c0 |
1134
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1135
- | ctrl | :math:`c_{trl}` | Gen controllability | | StaticGen.ctrl |
1136
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1137
- | pmax | :math:`p_{g, max}` | Gen maximum active power | *p.u.* | StaticGen.pmax |
1138
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1139
- | pmin | :math:`p_{g, min}` | Gen minimum active power | *p.u.* | StaticGen.pmin |
1140
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1141
- | ul | :math:`u_{l}` | Line connection status | | Line.u |
1142
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1143
- | rate_a | :math:`R_{ATEA}` | long-term flow limit | *p.u.* | Line.rate_a |
1144
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1145
- | amax | :math:`\theta_{bus, max}` | max line angle difference | | Line.amax |
1146
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1147
- | amin | :math:`\theta_{bus, min}` | min line angle difference | | Line.amin |
1148
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1149
- | zg | :math:`z_{one,g}` | Gen zone | | StaticGen.zone |
1150
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1151
- | zd | :math:`z_{one,d}` | Load zone | | StaticLoad.zone |
1152
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1153
- | R10 | :math:`R_{10}` | 10-min ramp rate | *p.u./h* | StaticGen.R10 |
1154
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1155
- | cru | :math:`c_{r,u}` | RegUp reserve coefficient | *$/(p.u.)* | SFRCost.cru |
1156
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1157
- | crd | :math:`c_{r,d}` | RegDown reserve coefficient | *$/(p.u.)* | SFRCost.crd |
1158
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1159
- | du | :math:`d_{u}` | RegUp reserve requirement in percentage | *%* | SFR.du |
1160
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1161
- | dd | :math:`d_{d}` | RegDown reserve requirement in percentage | *%* | SFR.dd |
1162
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1163
-
1164
-
1165
- Config Fields in [RTED]
1166
-
1167
- +--------+-----------------+-------+------------------------+-----------------+
1168
- | Option | Symbol | Value | Info | Accepted values |
1169
- +========+=================+=======+========================+=================+
1170
- | t | :math:`T_{cfg}` | 0.083 | time interval in hours | |
1171
- +--------+-----------------+-------+------------------------+-----------------+
1172
-
1173
-
1174
- .. _RTEDDG:
1175
-
1176
- --------------------------------------------------------------------------------
1177
- RTEDDG
1178
- --------------------------------------------------------------------------------
1179
- RTED with distributed generator :ref:`DG`.
1180
-
1181
- Note that RTEDDG only inlcudes DG output power. If ESD1 is included,
1182
- RTEDES should be used instead, otherwise there is no SOC.
1183
-
1184
- Objective
1185
- ----------------------------------
1186
-
1187
- +------+-------------------------------------------------------------------------------------------------------------------------------------------+
1188
- | Unit | Expression |
1189
- +======+===========================================================================================================================================+
1190
- | *$* | :math:`min. T_{cfg}^{2} \sum(c_{2} p_g^{2}) + \sum(u_{g} c_{0})+ T_{cfg} \sum(c_{1} p_g + c_{r,u} p_{r,u} + c_{r,d} p_{r,d})` |
1191
- +------+-------------------------------------------------------------------------------------------------------------------------------------------+
1192
-
1193
- Expressions
1194
- ----------------------------------
1195
-
1196
- +--------+----------------+------------------------------------------------------+--------+-----------+
1197
- | Name | Description | Expression | Unit | Source |
1198
- +========+================+======================================================+========+===========+
1199
- | plf | Line flow | :math:`B_{f} \theta_{bus} + P_{f}^{inj}` | *p.u.* | Line |
1200
- +--------+----------------+------------------------------------------------------+--------+-----------+
1201
- | pmaxe | Effective pmax | :math:`c_{trl,n,e} p_{g, 0} + c_{trl, e} p_{g, max}` | *p.u.* | StaticGen |
1202
- +--------+----------------+------------------------------------------------------+--------+-----------+
1203
- | pmine | Effective pmin | :math:`c_{trl,n,e} p_{g, 0} + c_{trl, e} p_{g, min}` | *p.u.* | StaticGen |
1204
- +--------+----------------+------------------------------------------------------+--------+-----------+
1205
-
1206
- Constraints
1207
- ----------------------------------
1208
-
1209
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1210
- | Name | Description | Expression |
1211
- +========+===================================+============================================================================================+
1212
- | pb | power balance | :math:`B_{bus} \theta_{bus} + P_{bus}^{inj} + C_{l} p_{d} + C_{sh} g_{sh} - C_{g} p_g = 0` |
1213
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1214
- | sbus | align slack bus angle | :math:`c_{sb} \theta_{bus} = 0` |
1215
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1216
- | pglb | pg min | :math:`-p_g + p_{g, min, e} \leq 0` |
1217
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1218
- | pgub | pg max | :math:`p_g - p_{g, max, e} \leq 0` |
1219
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1220
- | plflb | line flow lower bound | :math:`-p_{lf} - u_{l} R_{ATEA} \leq 0` |
1221
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1222
- | plfub | line flow upper bound | :math:`p_{lf} - u_{l} R_{ATEA} \leq 0` |
1223
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1224
- | alflb | line angle difference lower bound | :math:`-C_{ft}^T \theta_{bus} + \theta_{bus, min} \leq 0` |
1225
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1226
- | alfub | line angle difference upper bound | :math:`C_{ft}^T \theta_{bus} - \theta_{bus, max} \leq 0` |
1227
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1228
- | rbu | RegUp reserve balance | :math:`S_{g} u_{g} p_{r,u} - d_{u, d} = 0` |
1229
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1230
- | rbd | RegDn reserve balance | :math:`S_{g} u_{g} p_{r,d} - d_{d, d} = 0` |
1231
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1232
- | rru | RegUp reserve source | :math:`u_{g} (p_g + p_{r,u}) - u_{g} p_{g, max, e} \leq 0` |
1233
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1234
- | rrd | RegDn reserve source | :math:`u_{g} (-p_g + p_{r,d}) + u_{g} p_{g, min, e} \leq 0` |
1235
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1236
- | rgu | Gen ramping up | :math:`u_{g} (p_g-p_{g, 0}-R_{10}) \leq 0` |
1237
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1238
- | rgd | Gen ramping down | :math:`u_{g} (-p_g+p_{g, 0}-R_{10}) \leq 0` |
1239
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1240
- | cdgb | Select DG power from pg | :math:`C_{DG} p_g - p_{g,DG} = 0` |
1241
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1242
-
1243
- Vars
1244
- ----------------------------------
1245
-
1246
- +-------+----------------------+------------------------------------+--------+-------------+------------+
1247
- | Name | Symbol | Description | Unit | Source | Properties |
1248
- +=======+======================+====================================+========+=============+============+
1249
- | pg | :math:`p_g` | Gen active power | *p.u.* | StaticGen.p | |
1250
- +-------+----------------------+------------------------------------+--------+-------------+------------+
1251
- | vBus | :math:`v_{Bus}` | Bus voltage magnitude, placeholder | *p.u.* | Bus.v | |
1252
- +-------+----------------------+------------------------------------+--------+-------------+------------+
1253
- | aBus | :math:`\theta_{bus}` | Bus voltage angle | *rad* | Bus.a | |
1254
- +-------+----------------------+------------------------------------+--------+-------------+------------+
1255
- | pru | :math:`p_{r,u}` | RegUp reserve | *p.u.* | StaticGen | nonneg |
1256
- +-------+----------------------+------------------------------------+--------+-------------+------------+
1257
- | prd | :math:`p_{r,d}` | RegDn reserve | *p.u.* | StaticGen | nonneg |
1258
- +-------+----------------------+------------------------------------+--------+-------------+------------+
1259
- | pgdg | :math:`p_{g,DG}` | DG output power | *p.u.* | DG | |
1260
- +-------+----------------------+------------------------------------+--------+-------------+------------+
1261
-
1262
- ExpressionCalcs
1263
- ----------------------------------
1264
-
1265
- +------+-------------------+------------------+----------+--------+
1266
- | Name | Description | Expression | Unit | Source |
1267
- +======+===================+==================+==========+========+
1268
- | pi | LMP, dual of <pb> | :math:`\phi[pb]` | *$/p.u.* | Bus |
1269
- +------+-------------------+------------------+----------+--------+
1270
-
1271
- Services
1272
- ---------
1273
-
1274
- +---------+---------------------+--------------------------------------+-----------+
1275
- | Name | Symbol | Description | Type |
1276
- +=========+=====================+======================================+===========+
1277
- | csb | :math:`c_{sb}` | select slack bus | VarSelect |
1278
- +---------+---------------------+--------------------------------------+-----------+
1279
- | ctrle | :math:`c_{trl, e}` | Effective Gen controllability | NumOpDual |
1280
- +---------+---------------------+--------------------------------------+-----------+
1281
- | nctrl | :math:`c_{trl,n}` | Effective Gen uncontrollability | NumOp |
1282
- +---------+---------------------+--------------------------------------+-----------+
1283
- | nctrle | :math:`c_{trl,n,e}` | Effective Gen uncontrollability | NumOpDual |
1284
- +---------+---------------------+--------------------------------------+-----------+
1285
- | gs | :math:`S_{g}` | Sum Gen vars vector in shape of zone | ZonalSum |
1286
- +---------+---------------------+--------------------------------------+-----------+
1287
- | ds | :math:`S_{d}` | Sum pd vector in shape of zone | ZonalSum |
1288
- +---------+---------------------+--------------------------------------+-----------+
1289
- | pdz | :math:`p_{d,z}` | zonal total load | NumOpDual |
1290
- +---------+---------------------+--------------------------------------+-----------+
1291
- | dud | :math:`d_{u, d}` | zonal RegUp reserve requirement | NumOpDual |
1292
- +---------+---------------------+--------------------------------------+-----------+
1293
- | ddd | :math:`d_{d, d}` | zonal RegDn reserve requirement | NumOpDual |
1294
- +---------+---------------------+--------------------------------------+-----------+
1295
- | cd | :math:`C_{DG}` | Select DG power from pg | VarSelect |
1296
- +---------+---------------------+--------------------------------------+-----------+
1297
-
1298
- Parameters
1299
- ----------------------------------
1300
-
1301
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1302
- | Name | Symbol | Description | Unit | Source |
1303
- +==========+===========================+===================================================+==============+======================+
1304
- | ug | :math:`u_{g}` | Gen connection status | | StaticGen.u |
1305
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1306
- | pg0 | :math:`p_{g, 0}` | Gen initial active power | *p.u.* | StaticGen.p0 |
1307
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1308
- | gsh | :math:`g_{sh}` | shunt conductance | | Shunt.g |
1309
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1310
- | buss | :math:`B_{us,s}` | Bus slack | | Slack.bus |
1311
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1312
- | pd | :math:`p_{d}` | active demand | *p.u.* | StaticLoad.p0 |
1313
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1314
- | Cg | :math:`C_{g}` | Gen connection matrix | | MatProcessor.Cg |
1315
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1316
- | Cl | :math:`C_{l}` | Load connection matrix | | MatProcessor.Cl |
1317
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1318
- | CftT | :math:`C_{ft}^T` | Transpose of line connection matrix | | MatProcessor.CftT |
1319
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1320
- | Csh | :math:`C_{sh}` | Shunt connection matrix | | MatProcessor.Csh |
1321
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1322
- | Bbus | :math:`B_{bus}` | Bus admittance matrix | | MatProcessor.Bbus |
1323
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1324
- | Bf | :math:`B_{f}` | Bf matrix | | MatProcessor.Bf |
1325
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1326
- | Pbusinj | :math:`P_{bus}^{inj}` | Bus power injection vector | | MatProcessor.Pbusinj |
1327
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1328
- | Pfinj | :math:`P_{f}^{inj}` | Line power injection vector | | MatProcessor.Pfinj |
1329
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1330
- | c2 | :math:`c_{2}` | Gen cost coefficient 2 | *$/(p.u.^2)* | GCost.c2 |
1331
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1332
- | c1 | :math:`c_{1}` | Gen cost coefficient 1 | *$/(p.u.)* | GCost.c1 |
1333
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1334
- | c0 | :math:`c_{0}` | Gen cost coefficient 0 | *$* | GCost.c0 |
1335
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1336
- | ctrl | :math:`c_{trl}` | Gen controllability | | StaticGen.ctrl |
1337
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1338
- | pmax | :math:`p_{g, max}` | Gen maximum active power | *p.u.* | StaticGen.pmax |
1339
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1340
- | pmin | :math:`p_{g, min}` | Gen minimum active power | *p.u.* | StaticGen.pmin |
1341
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1342
- | ul | :math:`u_{l}` | Line connection status | | Line.u |
1343
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1344
- | rate_a | :math:`R_{ATEA}` | long-term flow limit | *p.u.* | Line.rate_a |
1345
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1346
- | amax | :math:`\theta_{bus, max}` | max line angle difference | | Line.amax |
1347
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1348
- | amin | :math:`\theta_{bus, min}` | min line angle difference | | Line.amin |
1349
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1350
- | zg | :math:`z_{one,g}` | Gen zone | | StaticGen.zone |
1351
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1352
- | zd | :math:`z_{one,d}` | Load zone | | StaticLoad.zone |
1353
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1354
- | R10 | :math:`R_{10}` | 10-min ramp rate | *p.u./h* | StaticGen.R10 |
1355
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1356
- | cru | :math:`c_{r,u}` | RegUp reserve coefficient | *$/(p.u.)* | SFRCost.cru |
1357
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1358
- | crd | :math:`c_{r,d}` | RegDown reserve coefficient | *$/(p.u.)* | SFRCost.crd |
1359
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1360
- | du | :math:`d_{u}` | RegUp reserve requirement in percentage | *%* | SFR.du |
1361
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1362
- | dd | :math:`d_{d}` | RegDown reserve requirement in percentage | *%* | SFR.dd |
1363
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1364
- | gendg | :math:`g_{DG}` | gen of DG | | DG.gen |
1365
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1366
- | gammapd | :math:`\gamma_{p,DG}` | Ratio of DG.pge w.r.t to that of static generator | | DG.gammap |
1367
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1368
-
1369
-
1370
- Config Fields in [RTEDDG]
1371
-
1372
- +--------+-----------------+-------+------------------------+-----------------+
1373
- | Option | Symbol | Value | Info | Accepted values |
1374
- +========+=================+=======+========================+=================+
1375
- | t | :math:`T_{cfg}` | 0.083 | time interval in hours | |
1376
- +--------+-----------------+-------+------------------------+-----------------+
1377
-
1378
-
1379
- .. _RTEDES:
1380
-
1381
- --------------------------------------------------------------------------------
1382
- RTEDES
1383
- --------------------------------------------------------------------------------
1384
- RTED with energy storage :ref:`ESD1`.
1385
- The bilinear term in the formulation is linearized with big-M method.
1386
-
1387
- Objective
1388
- ----------------------------------
1389
-
1390
- +------+-------------------------------------------------------------------------------------------------------------------------------------------+
1391
- | Unit | Expression |
1392
- +======+===========================================================================================================================================+
1393
- | *$* | :math:`min. T_{cfg}^{2} \sum(c_{2} p_g^{2}) + \sum(u_{g} c_{0})+ T_{cfg} \sum(c_{1} p_g + c_{r,u} p_{r,u} + c_{r,d} p_{r,d})` |
1394
- +------+-------------------------------------------------------------------------------------------------------------------------------------------+
1395
-
1396
- Expressions
1397
- ----------------------------------
1398
-
1399
- +--------+----------------+------------------------------------------------------+--------+-----------+
1400
- | Name | Description | Expression | Unit | Source |
1401
- +========+================+======================================================+========+===========+
1402
- | plf | Line flow | :math:`B_{f} \theta_{bus} + P_{f}^{inj}` | *p.u.* | Line |
1403
- +--------+----------------+------------------------------------------------------+--------+-----------+
1404
- | pmaxe | Effective pmax | :math:`c_{trl,n,e} p_{g, 0} + c_{trl, e} p_{g, max}` | *p.u.* | StaticGen |
1405
- +--------+----------------+------------------------------------------------------+--------+-----------+
1406
- | pmine | Effective pmin | :math:`c_{trl,n,e} p_{g, 0} + c_{trl, e} p_{g, min}` | *p.u.* | StaticGen |
1407
- +--------+----------------+------------------------------------------------------+--------+-----------+
1408
-
1409
- Constraints
1410
- ----------------------------------
1411
-
1412
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1413
- | Name | Description | Expression |
1414
- +========+===================================+=======================================================================================================+
1415
- | pb | power balance | :math:`B_{bus} \theta_{bus} + P_{bus}^{inj} + C_{l} p_{d} + C_{sh} g_{sh} - C_{g} p_g = 0` |
1416
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1417
- | sbus | align slack bus angle | :math:`c_{sb} \theta_{bus} = 0` |
1418
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1419
- | pglb | pg min | :math:`-p_g + p_{g, min, e} \leq 0` |
1420
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1421
- | pgub | pg max | :math:`p_g - p_{g, max, e} \leq 0` |
1422
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1423
- | plflb | line flow lower bound | :math:`-p_{lf} - u_{l} R_{ATEA} \leq 0` |
1424
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1425
- | plfub | line flow upper bound | :math:`p_{lf} - u_{l} R_{ATEA} \leq 0` |
1426
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1427
- | alflb | line angle difference lower bound | :math:`-C_{ft}^T \theta_{bus} + \theta_{bus, min} \leq 0` |
1428
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1429
- | alfub | line angle difference upper bound | :math:`C_{ft}^T \theta_{bus} - \theta_{bus, max} \leq 0` |
1430
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1431
- | rbu | RegUp reserve balance | :math:`S_{g} u_{g} p_{r,u} - d_{u, d} = 0` |
1432
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1433
- | rbd | RegDn reserve balance | :math:`S_{g} u_{g} p_{r,d} - d_{d, d} = 0` |
1434
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1435
- | rru | RegUp reserve source | :math:`u_{g} (p_g + p_{r,u}) - u_{g} p_{g, max, e} \leq 0` |
1436
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1437
- | rrd | RegDn reserve source | :math:`u_{g} (-p_g + p_{r,d}) + u_{g} p_{g, min, e} \leq 0` |
1438
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1439
- | rgu | Gen ramping up | :math:`u_{g} (p_g-p_{g, 0}-R_{10}) \leq 0` |
1440
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1441
- | rgd | Gen ramping down | :math:`u_{g} (-p_g+p_{g, 0}-R_{10}) \leq 0` |
1442
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1443
- | cdgb | Select DG power from pg | :math:`C_{DG} p_g - p_{g,DG} = 0` |
1444
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1445
- | SOClb | SOC lower bound | :math:`-SOC + SOC_{min} \leq 0` |
1446
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1447
- | SOCub | SOC upper bound | :math:`SOC - SOC_{max} \leq 0` |
1448
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1449
- | cescb | Select pce from DG | :math:`C_{ESD} p_{g,DG} - p_{c,ESD} = 0` |
1450
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1451
- | cesdb | Select pde from DG | :math:`C_{ESD} p_{g,DG} - p_{d,ESD} = 0` |
1452
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1453
- | cdb | Charging decision bound | :math:`u_{c,ESD} + u_{d,ESD} - 1 = 0` |
1454
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1455
- | zce1 | zce bound 1 | :math:`-z_{c,ESD} + p_{c,ESD} \leq 0` |
1456
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1457
- | zce2 | zce bound 2 | :math:`z_{c,ESD} - p_{c,ESD} - M_{big} (1-u_{c,ESD}) \leq 0` |
1458
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1459
- | zce3 | zce bound 3 | :math:`z_{c,ESD} - M_{big} u_{c,ESD} \leq 0` |
1460
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1461
- | zde1 | zde bound 1 | :math:`-z_{d,ESD} + p_{d,ESD} \leq 0` |
1462
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1463
- | zde2 | zde bound 2 | :math:`z_{d,ESD} - p_{d,ESD} - M_{big} (1-u_{d,ESD}) \leq 0` |
1464
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1465
- | zde3 | zde bound 3 | :math:`z_{d,ESD} - M_{big} u_{d,ESD} \leq 0` |
1466
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1467
- | SOCb | ESD1 SOC balance | :math:`E_n (SOC - SOC_{init}) - T_{cfg} \eta_c z_{c,ESD}+ T_{cfg} \frac{1}{\eta_d} z_{d,ESD} = 0` |
1468
- +--------+-----------------------------------+-------------------------------------------------------------------------------------------------------+
1469
-
1470
- Vars
1471
- ----------------------------------
1472
-
1473
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
1474
- | Name | Symbol | Description | Unit | Source | Properties |
1475
- +=======+======================+================================================================+========+=============+============+
1476
- | pg | :math:`p_g` | Gen active power | *p.u.* | StaticGen.p | |
1477
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
1478
- | vBus | :math:`v_{Bus}` | Bus voltage magnitude, placeholder | *p.u.* | Bus.v | |
1479
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
1480
- | aBus | :math:`\theta_{bus}` | Bus voltage angle | *rad* | Bus.a | |
1481
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
1482
- | pru | :math:`p_{r,u}` | RegUp reserve | *p.u.* | StaticGen | nonneg |
1483
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
1484
- | prd | :math:`p_{r,d}` | RegDn reserve | *p.u.* | StaticGen | nonneg |
1485
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
1486
- | pgdg | :math:`p_{g,DG}` | DG output power | *p.u.* | DG | |
1487
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
1488
- | SOC | :math:`SOC` | ESD1 State of Charge | *%* | ESD1 | pos |
1489
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
1490
- | pce | :math:`p_{c,ESD}` | ESD1 charging power | *p.u.* | ESD1 | nonneg |
1491
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
1492
- | pde | :math:`p_{d,ESD}` | ESD1 discharging power | *p.u.* | ESD1 | nonneg |
1493
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
1494
- | uce | :math:`u_{c,ESD}` | ESD1 charging decision | | ESD1 | boolean |
1495
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
1496
- | ude | :math:`u_{d,ESD}` | ESD1 discharging decision | | ESD1 | boolean |
1497
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
1498
- | zce | :math:`z_{c,ESD}` | Aux var for charging, :math:`z_{c,ESD}=u_{c,ESD}*p_{c,ESD}` | | ESD1 | nonneg |
1499
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
1500
- | zde | :math:`z_{d,ESD}` | Aux var for discharging, :math:`z_{d,ESD}=u_{d,ESD}*p_{d,ESD}` | | ESD1 | nonneg |
1501
- +-------+----------------------+----------------------------------------------------------------+--------+-------------+------------+
1502
-
1503
- ExpressionCalcs
1504
- ----------------------------------
1505
-
1506
- +------+-------------------+------------------+----------+--------+
1507
- | Name | Description | Expression | Unit | Source |
1508
- +======+===================+==================+==========+========+
1509
- | pi | LMP, dual of <pb> | :math:`\phi[pb]` | *$/p.u.* | Bus |
1510
- +------+-------------------+------------------+----------+--------+
1511
-
1512
- Services
1513
- ---------
1514
-
1515
- +---------+--------------------------+--------------------------------------+-----------+
1516
- | Name | Symbol | Description | Type |
1517
- +=========+==========================+======================================+===========+
1518
- | csb | :math:`c_{sb}` | select slack bus | VarSelect |
1519
- +---------+--------------------------+--------------------------------------+-----------+
1520
- | ctrle | :math:`c_{trl, e}` | Effective Gen controllability | NumOpDual |
1521
- +---------+--------------------------+--------------------------------------+-----------+
1522
- | nctrl | :math:`c_{trl,n}` | Effective Gen uncontrollability | NumOp |
1523
- +---------+--------------------------+--------------------------------------+-----------+
1524
- | nctrle | :math:`c_{trl,n,e}` | Effective Gen uncontrollability | NumOpDual |
1525
- +---------+--------------------------+--------------------------------------+-----------+
1526
- | gs | :math:`S_{g}` | Sum Gen vars vector in shape of zone | ZonalSum |
1527
- +---------+--------------------------+--------------------------------------+-----------+
1528
- | ds | :math:`S_{d}` | Sum pd vector in shape of zone | ZonalSum |
1529
- +---------+--------------------------+--------------------------------------+-----------+
1530
- | pdz | :math:`p_{d,z}` | zonal total load | NumOpDual |
1531
- +---------+--------------------------+--------------------------------------+-----------+
1532
- | dud | :math:`d_{u, d}` | zonal RegUp reserve requirement | NumOpDual |
1533
- +---------+--------------------------+--------------------------------------+-----------+
1534
- | ddd | :math:`d_{d, d}` | zonal RegDn reserve requirement | NumOpDual |
1535
- +---------+--------------------------+--------------------------------------+-----------+
1536
- | cd | :math:`C_{DG}` | Select DG power from pg | VarSelect |
1537
- +---------+--------------------------+--------------------------------------+-----------+
1538
- | REtaD | :math:`\frac{1}{\eta_d}` | | NumOp |
1539
- +---------+--------------------------+--------------------------------------+-----------+
1540
- | Mb | :math:`M_{big}` | 10 times of max of pmax as big M | NumOp |
1541
- +---------+--------------------------+--------------------------------------+-----------+
1542
- | ces | :math:`C_{ESD}` | Select ESD power from DG | VarSelect |
1543
- +---------+--------------------------+--------------------------------------+-----------+
1544
-
1545
- Parameters
1546
- ----------------------------------
1547
-
1548
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1549
- | Name | Symbol | Description | Unit | Source |
1550
- +==========+===========================+===================================================+==============+======================+
1551
- | ug | :math:`u_{g}` | Gen connection status | | StaticGen.u |
1552
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1553
- | pg0 | :math:`p_{g, 0}` | Gen initial active power | *p.u.* | StaticGen.p0 |
1554
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1555
- | gsh | :math:`g_{sh}` | shunt conductance | | Shunt.g |
1556
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1557
- | buss | :math:`B_{us,s}` | Bus slack | | Slack.bus |
1558
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1559
- | pd | :math:`p_{d}` | active demand | *p.u.* | StaticLoad.p0 |
1560
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1561
- | Cg | :math:`C_{g}` | Gen connection matrix | | MatProcessor.Cg |
1562
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1563
- | Cl | :math:`C_{l}` | Load connection matrix | | MatProcessor.Cl |
1564
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1565
- | CftT | :math:`C_{ft}^T` | Transpose of line connection matrix | | MatProcessor.CftT |
1566
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1567
- | Csh | :math:`C_{sh}` | Shunt connection matrix | | MatProcessor.Csh |
1568
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1569
- | Bbus | :math:`B_{bus}` | Bus admittance matrix | | MatProcessor.Bbus |
1570
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1571
- | Bf | :math:`B_{f}` | Bf matrix | | MatProcessor.Bf |
1572
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1573
- | Pbusinj | :math:`P_{bus}^{inj}` | Bus power injection vector | | MatProcessor.Pbusinj |
1574
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1575
- | Pfinj | :math:`P_{f}^{inj}` | Line power injection vector | | MatProcessor.Pfinj |
1576
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1577
- | c2 | :math:`c_{2}` | Gen cost coefficient 2 | *$/(p.u.^2)* | GCost.c2 |
1578
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1579
- | c1 | :math:`c_{1}` | Gen cost coefficient 1 | *$/(p.u.)* | GCost.c1 |
1580
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1581
- | c0 | :math:`c_{0}` | Gen cost coefficient 0 | *$* | GCost.c0 |
1582
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1583
- | ctrl | :math:`c_{trl}` | Gen controllability | | StaticGen.ctrl |
1584
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1585
- | pmax | :math:`p_{g, max}` | Gen maximum active power | *p.u.* | StaticGen.pmax |
1586
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1587
- | pmin | :math:`p_{g, min}` | Gen minimum active power | *p.u.* | StaticGen.pmin |
1588
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1589
- | ul | :math:`u_{l}` | Line connection status | | Line.u |
1590
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1591
- | rate_a | :math:`R_{ATEA}` | long-term flow limit | *p.u.* | Line.rate_a |
1592
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1593
- | amax | :math:`\theta_{bus, max}` | max line angle difference | | Line.amax |
1594
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1595
- | amin | :math:`\theta_{bus, min}` | min line angle difference | | Line.amin |
1596
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1597
- | zg | :math:`z_{one,g}` | Gen zone | | StaticGen.zone |
1598
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1599
- | zd | :math:`z_{one,d}` | Load zone | | StaticLoad.zone |
1600
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1601
- | R10 | :math:`R_{10}` | 10-min ramp rate | *p.u./h* | StaticGen.R10 |
1602
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1603
- | cru | :math:`c_{r,u}` | RegUp reserve coefficient | *$/(p.u.)* | SFRCost.cru |
1604
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1605
- | crd | :math:`c_{r,d}` | RegDown reserve coefficient | *$/(p.u.)* | SFRCost.crd |
1606
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1607
- | du | :math:`d_{u}` | RegUp reserve requirement in percentage | *%* | SFR.du |
1608
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1609
- | dd | :math:`d_{d}` | RegDown reserve requirement in percentage | *%* | SFR.dd |
1610
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1611
- | gendg | :math:`g_{DG}` | gen of DG | | DG.gen |
1612
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1613
- | gammapd | :math:`\gamma_{p,DG}` | Ratio of DG.pge w.r.t to that of static generator | | DG.gammap |
1614
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1615
- | En | :math:`E_n` | Rated energy capacity | *MWh* | ESD1.En |
1616
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1617
- | SOCmax | :math:`SOC_{max}` | Maximum allowed value for SOC in limiter | *%* | ESD1.SOCmax |
1618
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1619
- | SOCmin | :math:`SOC_{min}` | Minimum required value for SOC in limiter | *%* | ESD1.SOCmin |
1620
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1621
- | SOCinit | :math:`SOC_{init}` | Initial SOC | *%* | ESD1.SOCinit |
1622
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1623
- | EtaC | :math:`\eta_c` | Efficiency during charging | *%* | ESD1.EtaC |
1624
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1625
- | EtaD | :math:`\eta_d` | Efficiency during discharging | *%* | ESD1.EtaD |
1626
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1627
- | genesd | :math:`g_{ESD}` | gen of ESD1 | | ESD1.idx |
1628
- +----------+---------------------------+---------------------------------------------------+--------------+----------------------+
1629
-
1630
-
1631
- Config Fields in [RTEDES]
1632
-
1633
- +--------+-----------------+-------+------------------------+-----------------+
1634
- | Option | Symbol | Value | Info | Accepted values |
1635
- +========+=================+=======+========================+=================+
1636
- | t | :math:`T_{cfg}` | 0.083 | time interval in hours | |
1637
- +--------+-----------------+-------+------------------------+-----------------+
1638
-
1639
-
1640
- .. _RTEDVIS:
1641
-
1642
- --------------------------------------------------------------------------------
1643
- RTEDVIS
1644
- --------------------------------------------------------------------------------
1645
- RTED with virtual inertia scheduling.
1646
-
1647
- This class implements real-time economic dispatch with virtual inertia scheduling.
1648
- Please ensure that the parameters `dvm` and `dvd` are set according to the system base.
1649
-
1650
- Reference:
1651
-
1652
- [1] B. She, F. Li, H. Cui, J. Wang, Q. Zhang and R. Bo, "Virtual
1653
- Inertia Scheduling (VIS) for Real-time Economic Dispatch of
1654
- IBRs-penetrated Power Systems," in IEEE Transactions on
1655
- Sustainable Energy, doi: 10.1109/TSTE.2023.3319307.
1656
-
1657
- Objective
1658
- ----------------------------------
1659
-
1660
- +------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1661
- | Unit | Expression |
1662
- +======+==================================================================================================================================================================================+
1663
- | *$* | :math:`min. T_{cfg}^{2} \sum(c_{2} p_g^{2}) + \sum(u_{g} c_{0})+ T_{cfg} \sum(c_{1} p_g + c_{r,u} p_{r,u} + c_{r,d} p_{r,d})+ T_{cfg} \sum(c_{m} M + c_{d} D)` |
1664
- +------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1665
-
1666
- Expressions
1667
- ----------------------------------
1668
-
1669
- +--------+----------------+------------------------------------------------------+--------+-----------+
1670
- | Name | Description | Expression | Unit | Source |
1671
- +========+================+======================================================+========+===========+
1672
- | plf | Line flow | :math:`B_{f} \theta_{bus} + P_{f}^{inj}` | *p.u.* | Line |
1673
- +--------+----------------+------------------------------------------------------+--------+-----------+
1674
- | pmaxe | Effective pmax | :math:`c_{trl,n,e} p_{g, 0} + c_{trl, e} p_{g, max}` | *p.u.* | StaticGen |
1675
- +--------+----------------+------------------------------------------------------+--------+-----------+
1676
- | pmine | Effective pmin | :math:`c_{trl,n,e} p_{g, 0} + c_{trl, e} p_{g, min}` | *p.u.* | StaticGen |
1677
- +--------+----------------+------------------------------------------------------+--------+-----------+
1678
-
1679
- Constraints
1680
- ----------------------------------
1681
-
1682
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1683
- | Name | Description | Expression |
1684
- +========+===================================+============================================================================================+
1685
- | pb | power balance | :math:`B_{bus} \theta_{bus} + P_{bus}^{inj} + C_{l} p_{d} + C_{sh} g_{sh} - C_{g} p_g = 0` |
1686
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1687
- | sbus | align slack bus angle | :math:`c_{sb} \theta_{bus} = 0` |
1688
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1689
- | pglb | pg min | :math:`-p_g + p_{g, min, e} \leq 0` |
1690
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1691
- | pgub | pg max | :math:`p_g - p_{g, max, e} \leq 0` |
1692
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1693
- | plflb | line flow lower bound | :math:`-p_{lf} - u_{l} R_{ATEA} \leq 0` |
1694
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1695
- | plfub | line flow upper bound | :math:`p_{lf} - u_{l} R_{ATEA} \leq 0` |
1696
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1697
- | alflb | line angle difference lower bound | :math:`-C_{ft}^T \theta_{bus} + \theta_{bus, min} \leq 0` |
1698
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1699
- | alfub | line angle difference upper bound | :math:`C_{ft}^T \theta_{bus} - \theta_{bus, max} \leq 0` |
1700
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1701
- | rbu | RegUp reserve balance | :math:`S_{g} u_{g} p_{r,u} - d_{u, d} = 0` |
1702
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1703
- | rbd | RegDn reserve balance | :math:`S_{g} u_{g} p_{r,d} - d_{d, d} = 0` |
1704
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1705
- | rru | RegUp reserve source | :math:`u_{g} (p_g + p_{r,u}) - u_{g} p_{g, max, e} \leq 0` |
1706
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1707
- | rrd | RegDn reserve source | :math:`u_{g} (-p_g + p_{r,d}) + u_{g} p_{g, min, e} \leq 0` |
1708
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1709
- | rgu | Gen ramping up | :math:`u_{g} (p_g-p_{g, 0}-R_{10}) \leq 0` |
1710
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1711
- | rgd | Gen ramping down | :math:`u_{g} (-p_g+p_{g, 0}-R_{10}) \leq 0` |
1712
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1713
- | Mub | M upper bound | :math:`M - M_{max} \leq 0` |
1714
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1715
- | Dub | D upper bound | :math:`D - D_{max} \leq 0` |
1716
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1717
- | Mreq | Emulated inertia requirement | :math:`-S_{g} M + d_{v,m} = 0` |
1718
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1719
- | Dreq | Emulated damping requirement | :math:`-S_{g} D + d_{v,d} = 0` |
1720
- +--------+-----------------------------------+--------------------------------------------------------------------------------------------+
1721
-
1722
- Vars
1723
- ----------------------------------
1724
-
1725
- +-------+----------------------+---------------------------------------+--------+-------------+------------+
1726
- | Name | Symbol | Description | Unit | Source | Properties |
1727
- +=======+======================+=======================================+========+=============+============+
1728
- | pg | :math:`p_g` | Gen active power | *p.u.* | StaticGen.p | |
1729
- +-------+----------------------+---------------------------------------+--------+-------------+------------+
1730
- | vBus | :math:`v_{Bus}` | Bus voltage magnitude, placeholder | *p.u.* | Bus.v | |
1731
- +-------+----------------------+---------------------------------------+--------+-------------+------------+
1732
- | aBus | :math:`\theta_{bus}` | Bus voltage angle | *rad* | Bus.a | |
1733
- +-------+----------------------+---------------------------------------+--------+-------------+------------+
1734
- | pru | :math:`p_{r,u}` | RegUp reserve | *p.u.* | StaticGen | nonneg |
1735
- +-------+----------------------+---------------------------------------+--------+-------------+------------+
1736
- | prd | :math:`p_{r,d}` | RegDn reserve | *p.u.* | StaticGen | nonneg |
1737
- +-------+----------------------+---------------------------------------+--------+-------------+------------+
1738
- | M | :math:`M` | Emulated startup time constant (M=2H) | *s* | VSG.M | nonneg |
1739
- +-------+----------------------+---------------------------------------+--------+-------------+------------+
1740
- | D | :math:`D` | Emulated damping coefficient | *p.u.* | VSG.D | nonneg |
1741
- +-------+----------------------+---------------------------------------+--------+-------------+------------+
1742
-
1743
- ExpressionCalcs
1744
- ----------------------------------
1745
-
1746
- +------+-------------------+------------------+----------+--------+
1747
- | Name | Description | Expression | Unit | Source |
1748
- +======+===================+==================+==========+========+
1749
- | pi | LMP, dual of <pb> | :math:`\phi[pb]` | *$/p.u.* | Bus |
1750
- +------+-------------------+------------------+----------+--------+
1751
-
1752
- Services
1753
- ---------
1754
-
1755
- +---------+---------------------+--------------------------------------+-----------+
1756
- | Name | Symbol | Description | Type |
1757
- +=========+=====================+======================================+===========+
1758
- | csb | :math:`c_{sb}` | select slack bus | VarSelect |
1759
- +---------+---------------------+--------------------------------------+-----------+
1760
- | ctrle | :math:`c_{trl, e}` | Effective Gen controllability | NumOpDual |
1761
- +---------+---------------------+--------------------------------------+-----------+
1762
- | nctrl | :math:`c_{trl,n}` | Effective Gen uncontrollability | NumOp |
1763
- +---------+---------------------+--------------------------------------+-----------+
1764
- | nctrle | :math:`c_{trl,n,e}` | Effective Gen uncontrollability | NumOpDual |
1765
- +---------+---------------------+--------------------------------------+-----------+
1766
- | gs | :math:`S_{g}` | Sum Gen vars vector in shape of zone | ZonalSum |
1767
- +---------+---------------------+--------------------------------------+-----------+
1768
- | ds | :math:`S_{d}` | Sum pd vector in shape of zone | ZonalSum |
1769
- +---------+---------------------+--------------------------------------+-----------+
1770
- | pdz | :math:`p_{d,z}` | zonal total load | NumOpDual |
1771
- +---------+---------------------+--------------------------------------+-----------+
1772
- | dud | :math:`d_{u, d}` | zonal RegUp reserve requirement | NumOpDual |
1773
- +---------+---------------------+--------------------------------------+-----------+
1774
- | ddd | :math:`d_{d, d}` | zonal RegDn reserve requirement | NumOpDual |
1775
- +---------+---------------------+--------------------------------------+-----------+
1776
- | gvsg | :math:`S_{g}` | Sum VSG vars vector in shape of zone | ZonalSum |
1777
- +---------+---------------------+--------------------------------------+-----------+
1778
-
1779
- Parameters
1780
- ----------------------------------
1781
-
1782
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1783
- | Name | Symbol | Description | Unit | Source |
1784
- +==========+===========================+===========================================+==============+======================+
1785
- | ug | :math:`u_{g}` | Gen connection status | | StaticGen.u |
1786
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1787
- | pg0 | :math:`p_{g, 0}` | Gen initial active power | *p.u.* | StaticGen.p0 |
1788
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1789
- | gsh | :math:`g_{sh}` | shunt conductance | | Shunt.g |
1790
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1791
- | buss | :math:`B_{us,s}` | Bus slack | | Slack.bus |
1792
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1793
- | pd | :math:`p_{d}` | active demand | *p.u.* | StaticLoad.p0 |
1794
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1795
- | Cg | :math:`C_{g}` | Gen connection matrix | | MatProcessor.Cg |
1796
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1797
- | Cl | :math:`C_{l}` | Load connection matrix | | MatProcessor.Cl |
1798
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1799
- | CftT | :math:`C_{ft}^T` | Transpose of line connection matrix | | MatProcessor.CftT |
1800
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1801
- | Csh | :math:`C_{sh}` | Shunt connection matrix | | MatProcessor.Csh |
1802
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1803
- | Bbus | :math:`B_{bus}` | Bus admittance matrix | | MatProcessor.Bbus |
1804
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1805
- | Bf | :math:`B_{f}` | Bf matrix | | MatProcessor.Bf |
1806
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1807
- | Pbusinj | :math:`P_{bus}^{inj}` | Bus power injection vector | | MatProcessor.Pbusinj |
1808
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1809
- | Pfinj | :math:`P_{f}^{inj}` | Line power injection vector | | MatProcessor.Pfinj |
1810
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1811
- | c2 | :math:`c_{2}` | Gen cost coefficient 2 | *$/(p.u.^2)* | GCost.c2 |
1812
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1813
- | c1 | :math:`c_{1}` | Gen cost coefficient 1 | *$/(p.u.)* | GCost.c1 |
1814
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1815
- | c0 | :math:`c_{0}` | Gen cost coefficient 0 | *$* | GCost.c0 |
1816
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1817
- | ctrl | :math:`c_{trl}` | Gen controllability | | StaticGen.ctrl |
1818
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1819
- | pmax | :math:`p_{g, max}` | Gen maximum active power | *p.u.* | StaticGen.pmax |
1820
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1821
- | pmin | :math:`p_{g, min}` | Gen minimum active power | *p.u.* | StaticGen.pmin |
1822
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1823
- | ul | :math:`u_{l}` | Line connection status | | Line.u |
1824
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1825
- | rate_a | :math:`R_{ATEA}` | long-term flow limit | *p.u.* | Line.rate_a |
1826
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1827
- | amax | :math:`\theta_{bus, max}` | max line angle difference | | Line.amax |
1828
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1829
- | amin | :math:`\theta_{bus, min}` | min line angle difference | | Line.amin |
1830
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1831
- | zg | :math:`z_{one,g}` | Gen zone | | StaticGen.zone |
1832
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1833
- | zd | :math:`z_{one,d}` | Load zone | | StaticLoad.zone |
1834
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1835
- | R10 | :math:`R_{10}` | 10-min ramp rate | *p.u./h* | StaticGen.R10 |
1836
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1837
- | cru | :math:`c_{r,u}` | RegUp reserve coefficient | *$/(p.u.)* | SFRCost.cru |
1838
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1839
- | crd | :math:`c_{r,d}` | RegDown reserve coefficient | *$/(p.u.)* | SFRCost.crd |
1840
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1841
- | du | :math:`d_{u}` | RegUp reserve requirement in percentage | *%* | SFR.du |
1842
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1843
- | dd | :math:`d_{d}` | RegDown reserve requirement in percentage | *%* | SFR.dd |
1844
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1845
- | cm | :math:`c_{m}` | Virtual inertia cost | *$/s* | VSGCost.cm |
1846
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1847
- | cd | :math:`c_{d}` | Virtual damping cost | *$/(p.u.)* | VSGCost.cd |
1848
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1849
- | zvsg | :math:`z_{one,vsg}` | VSG zone | | VSG.zone |
1850
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1851
- | Mmax | :math:`M_{max}` | Maximum inertia emulation | *s* | VSG.Mmax |
1852
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1853
- | Dmax | :math:`D_{max}` | Maximum damping emulation | *p.u.* | VSG.Dmax |
1854
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1855
- | dvm | :math:`d_{v,m}` | Emulated inertia requirement | *s* | VSGR.dvm |
1856
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1857
- | dvd | :math:`d_{v,d}` | Emulated damping requirement | *p.u.* | VSGR.dvd |
1858
- +----------+---------------------------+-------------------------------------------+--------------+----------------------+
1859
-
1860
-
1861
- Config Fields in [RTEDVIS]
1862
-
1863
- +--------+-----------------+-------+------------------------+-----------------+
1864
- | Option | Symbol | Value | Info | Accepted values |
1865
- +========+=================+=======+========================+=================+
1866
- | t | :math:`T_{cfg}` | 0.083 | time interval in hours | |
1867
- +--------+-----------------+-------+------------------------+-----------------+
1868
-
1869
-