inewave 1.7.4__py3-none-any.whl → 1.8.0__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 (373) hide show
  1. inewave/__init__.py +1 -1
  2. inewave/newave/__init__.py +16 -7
  3. inewave/newave/avl_cortesfpha_nwv.py +10 -0
  4. inewave/newave/avl_desvfpha_s.py +7 -0
  5. inewave/newave/avl_desvfpha_v_q.py +7 -0
  6. inewave/newave/eco_fpha.py +10 -0
  7. inewave/newave/evap_avl_desv.py +33 -0
  8. inewave/newave/evap_cortes.py +34 -0
  9. inewave/newave/evap_eco.py +34 -0
  10. inewave/newave/fpha_avl_desv_s.py +59 -0
  11. inewave/newave/fpha_avl_desv_v_q.py +58 -0
  12. inewave/newave/fpha_cortes.py +40 -0
  13. inewave/newave/fpha_eco.py +41 -0
  14. inewave/newave/modelos/adterm.py +7 -0
  15. inewave/newave/modelos/agrint.py +2 -0
  16. inewave/newave/modelos/arquivos.py +2 -0
  17. inewave/newave/modelos/avl_cortesfpha_nwv.py +4 -0
  18. inewave/newave/modelos/avl_desvfpha_s.py +2 -0
  19. inewave/newave/modelos/avl_desvfpha_v_q.py +2 -0
  20. inewave/newave/modelos/blocos/tabelacsv.py +2 -0
  21. inewave/newave/modelos/blocos/versaomodelo.py +4 -0
  22. inewave/newave/modelos/cadic.py +2 -0
  23. inewave/newave/modelos/caso.py +4 -0
  24. inewave/newave/modelos/clast.py +2 -0
  25. inewave/newave/modelos/confhd.py +2 -0
  26. inewave/newave/modelos/conft.py +2 -0
  27. inewave/newave/modelos/cortes.py +14 -0
  28. inewave/newave/modelos/cortesh.py +20 -0
  29. inewave/newave/modelos/curva.py +2 -0
  30. inewave/newave/modelos/cvar.py +2 -0
  31. inewave/newave/modelos/dger.py +208 -0
  32. inewave/newave/modelos/dsvagua.py +2 -0
  33. inewave/newave/modelos/eafpast.py +2 -0
  34. inewave/newave/modelos/enavazb.py +2 -0
  35. inewave/newave/modelos/enavazf.py +2 -0
  36. inewave/newave/modelos/energiab.py +2 -0
  37. inewave/newave/modelos/energiaf.py +2 -0
  38. inewave/newave/modelos/energias.py +9 -0
  39. inewave/newave/modelos/engnat.py +2 -0
  40. inewave/newave/modelos/exph.py +2 -0
  41. inewave/newave/modelos/expt.py +2 -0
  42. inewave/newave/modelos/forward.py +27 -0
  43. inewave/newave/modelos/forwarh.py +2 -0
  44. inewave/newave/modelos/ghmin.py +2 -0
  45. inewave/newave/modelos/hidr.py +2 -0
  46. inewave/newave/modelos/manutt.py +2 -0
  47. inewave/newave/modelos/modif.py +32 -0
  48. inewave/newave/modelos/newavetim.py +2 -0
  49. inewave/newave/modelos/nwv_avl_evap.py +2 -0
  50. inewave/newave/modelos/nwv_cortes_evap.py +2 -0
  51. inewave/newave/modelos/nwv_eco_evap.py +2 -0
  52. inewave/newave/modelos/parp.py +45 -0
  53. inewave/newave/modelos/parpeol.py +23 -0
  54. inewave/newave/modelos/parpvaz.py +37 -0
  55. inewave/newave/modelos/patamar.py +28 -0
  56. inewave/newave/modelos/penalid.py +2 -0
  57. inewave/newave/modelos/pmo.py +103 -0
  58. inewave/newave/modelos/re.py +2 -0
  59. inewave/newave/modelos/ree.py +2 -0
  60. inewave/newave/modelos/selcor.py +5 -3
  61. inewave/newave/modelos/shist.py +10 -6
  62. inewave/newave/modelos/sistema.py +10 -0
  63. inewave/newave/modelos/term.py +2 -0
  64. inewave/newave/modelos/vazaob.py +2 -0
  65. inewave/newave/modelos/vazaof.py +2 -0
  66. inewave/newave/modelos/vazaos.py +2 -0
  67. inewave/newave/modelos/vazinat.py +2 -0
  68. inewave/newave/modelos/vazoes.py +2 -0
  69. inewave/newave/modelos/vazpast.py +2 -0
  70. inewave/newave/modelos/volref_saz.py +2 -0
  71. inewave/newave/modif.py +2 -0
  72. inewave/newave/nwv_avl_evap.py +10 -0
  73. inewave/newave/nwv_cortes_evap.py +10 -0
  74. inewave/newave/nwv_eco_evap.py +10 -0
  75. inewave/newave/pmo.py +17 -0
  76. inewave/newave/vazoes.py +2 -0
  77. inewave/nwlistcf/modelos/arquivos.py +2 -0
  78. inewave/nwlistcf/modelos/caso.py +2 -0
  79. inewave/nwlistcf/modelos/estados.py +10 -0
  80. inewave/nwlistcf/modelos/nwlistcfdat.py +2 -0
  81. inewave/nwlistcf/modelos/nwlistcfrel.py +2 -0
  82. inewave/nwlistop/__init__.py +65 -30
  83. inewave/nwlistop/c_v_rhq.py +10 -0
  84. inewave/nwlistop/c_v_rhq_s.py +10 -0
  85. inewave/nwlistop/c_v_rhv_s.py +10 -0
  86. inewave/nwlistop/celetricas.py +10 -0
  87. inewave/nwlistop/cviol_eletricasin.py +19 -0
  88. inewave/nwlistop/cviol_rhq.py +21 -0
  89. inewave/nwlistop/cviol_rhq_sin.py +19 -0
  90. inewave/nwlistop/cviol_rhv.py +21 -0
  91. inewave/nwlistop/cviol_rhv_sin.py +19 -0
  92. inewave/nwlistop/deletricas.py +10 -0
  93. inewave/nwlistop/depminuh.py +10 -0
  94. inewave/nwlistop/desvuh.py +10 -0
  95. inewave/nwlistop/dtbmax.py +10 -0
  96. inewave/nwlistop/dtbmin.py +10 -0
  97. inewave/nwlistop/dvazmax.py +10 -0
  98. inewave/nwlistop/modelos/arquivos/arquivoclassetermicasubmercadopatamar.py +2 -0
  99. inewave/nwlistop/modelos/arquivos/arquivoestacaobombeamentopatamar.py +2 -0
  100. inewave/nwlistop/modelos/arquivos/arquivoparsubmercadopatamar.py +2 -0
  101. inewave/nwlistop/modelos/arquivos/arquivoree.py +2 -0
  102. inewave/nwlistop/modelos/arquivos/arquivoreepatamar.py +2 -0
  103. inewave/nwlistop/modelos/arquivos/arquivorestricao.py +2 -0
  104. inewave/nwlistop/modelos/arquivos/arquivorestricaopatamar.py +2 -0
  105. inewave/nwlistop/modelos/arquivos/arquivosin.py +2 -0
  106. inewave/nwlistop/modelos/arquivos/arquivosinpatamar.py +2 -0
  107. inewave/nwlistop/modelos/arquivos/arquivosubmercado.py +2 -0
  108. inewave/nwlistop/modelos/arquivos/arquivosubmercadopatamar.py +2 -0
  109. inewave/nwlistop/modelos/arquivos/arquivousina.py +2 -0
  110. inewave/nwlistop/modelos/arquivos/arquivousinapatamar.py +2 -0
  111. inewave/nwlistop/modelos/blocos/estacaobombeamento.py +2 -0
  112. inewave/nwlistop/modelos/blocos/parsubmercados.py +2 -0
  113. inewave/nwlistop/modelos/blocos/ree.py +2 -0
  114. inewave/nwlistop/modelos/blocos/restricao.py +2 -0
  115. inewave/nwlistop/modelos/blocos/submercado.py +2 -0
  116. inewave/nwlistop/modelos/blocos/usina.py +2 -0
  117. inewave/nwlistop/modelos/blocos/valoresclassetermicaseriepatamar.py +8 -0
  118. inewave/nwlistop/modelos/blocos/valoresserie.py +2 -0
  119. inewave/nwlistop/modelos/blocos/valoresseriepatamar.py +2 -0
  120. inewave/nwlistop/modelos/c_v_rhq.py +2 -0
  121. inewave/nwlistop/modelos/c_v_rhq_s.py +2 -0
  122. inewave/nwlistop/modelos/c_v_rhv.py +2 -0
  123. inewave/nwlistop/modelos/c_v_rhv_s.py +2 -0
  124. inewave/nwlistop/modelos/cbomb.py +2 -0
  125. inewave/nwlistop/modelos/cbombsin.py +2 -0
  126. inewave/nwlistop/modelos/cdef.py +2 -0
  127. inewave/nwlistop/modelos/cdefsin.py +2 -0
  128. inewave/nwlistop/modelos/celetricas.py +2 -0
  129. inewave/nwlistop/modelos/cmarg.py +2 -0
  130. inewave/nwlistop/modelos/cmargmed.py +2 -0
  131. inewave/nwlistop/modelos/coper.py +2 -0
  132. inewave/nwlistop/modelos/corteolm.py +2 -0
  133. inewave/nwlistop/modelos/cterm.py +2 -0
  134. inewave/nwlistop/modelos/ctermsin.py +2 -0
  135. inewave/nwlistop/modelos/cviol_eletricasin.py +28 -0
  136. inewave/nwlistop/modelos/cviol_rhq.py +28 -0
  137. inewave/nwlistop/modelos/cviol_rhq_sin.py +28 -0
  138. inewave/nwlistop/modelos/cviol_rhv.py +26 -0
  139. inewave/nwlistop/modelos/cviol_rhv_sin.py +26 -0
  140. inewave/nwlistop/modelos/def.py +2 -0
  141. inewave/nwlistop/modelos/defsin.py +2 -0
  142. inewave/nwlistop/modelos/deletricas.py +2 -0
  143. inewave/nwlistop/modelos/depminuh.py +2 -0
  144. inewave/nwlistop/modelos/desvuh.py +2 -0
  145. inewave/nwlistop/modelos/dflppdfmaxm.py +2 -0
  146. inewave/nwlistop/modelos/dflpptbmaxm.py +2 -0
  147. inewave/nwlistop/modelos/dfphauh.py +2 -0
  148. inewave/nwlistop/modelos/dlppdfmax.py +2 -0
  149. inewave/nwlistop/modelos/dlppdfmaxs.py +2 -0
  150. inewave/nwlistop/modelos/dlpptbmax.py +2 -0
  151. inewave/nwlistop/modelos/dlpptbmaxs.py +2 -0
  152. inewave/nwlistop/modelos/dnegevap.py +2 -0
  153. inewave/nwlistop/modelos/dposevap.py +2 -0
  154. inewave/nwlistop/modelos/dtbmax.py +2 -0
  155. inewave/nwlistop/modelos/dtbmin.py +2 -0
  156. inewave/nwlistop/modelos/dvazmax.py +2 -0
  157. inewave/nwlistop/modelos/eaf.py +2 -0
  158. inewave/nwlistop/modelos/eafb.py +2 -0
  159. inewave/nwlistop/modelos/eafbm.py +2 -0
  160. inewave/nwlistop/modelos/eafbsin.py +2 -0
  161. inewave/nwlistop/modelos/eafm.py +2 -0
  162. inewave/nwlistop/modelos/earmf.py +2 -0
  163. inewave/nwlistop/modelos/earmfm.py +2 -0
  164. inewave/nwlistop/modelos/earmfp.py +2 -0
  165. inewave/nwlistop/modelos/earmfpm.py +2 -0
  166. inewave/nwlistop/modelos/earmfpsin.py +2 -0
  167. inewave/nwlistop/modelos/earmfsin.py +2 -0
  168. inewave/nwlistop/modelos/edesvc.py +2 -0
  169. inewave/nwlistop/modelos/edesvcm.py +2 -0
  170. inewave/nwlistop/modelos/edesvcsin.py +2 -0
  171. inewave/nwlistop/modelos/evapo.py +2 -0
  172. inewave/nwlistop/modelos/evapom.py +2 -0
  173. inewave/nwlistop/modelos/evaporsin.py +2 -0
  174. inewave/nwlistop/modelos/evert.py +2 -0
  175. inewave/nwlistop/modelos/evertm.py +2 -0
  176. inewave/nwlistop/modelos/evertsin.py +2 -0
  177. inewave/nwlistop/modelos/exces.py +2 -0
  178. inewave/nwlistop/modelos/excessin.py +2 -0
  179. inewave/nwlistop/modelos/form_rhq.py +2 -0
  180. inewave/nwlistop/modelos/form_rhv.py +2 -0
  181. inewave/nwlistop/modelos/fteolm.py +2 -0
  182. inewave/nwlistop/modelos/fteolsin.py +2 -0
  183. inewave/nwlistop/modelos/geol.py +2 -0
  184. inewave/nwlistop/modelos/geolm.py +2 -0
  185. inewave/nwlistop/modelos/geolsin.py +2 -0
  186. inewave/nwlistop/modelos/gh_fphexat.py +2 -0
  187. inewave/nwlistop/modelos/ghidr.py +2 -0
  188. inewave/nwlistop/modelos/ghidrm.py +2 -0
  189. inewave/nwlistop/modelos/ghidrsin.py +2 -0
  190. inewave/nwlistop/modelos/ghiduh.py +2 -0
  191. inewave/nwlistop/modelos/ghmax.py +2 -0
  192. inewave/nwlistop/modelos/ghmax_fpha.py +2 -0
  193. inewave/nwlistop/modelos/ghmax_fphc.py +2 -0
  194. inewave/nwlistop/modelos/ghmaxm.py +2 -0
  195. inewave/nwlistop/modelos/ghmaxmr.py +2 -0
  196. inewave/nwlistop/modelos/ghmaxr.py +2 -0
  197. inewave/nwlistop/modelos/ghmaxrsin.py +2 -0
  198. inewave/nwlistop/modelos/ghmaxsin.py +2 -0
  199. inewave/nwlistop/modelos/ghtot.py +2 -0
  200. inewave/nwlistop/modelos/ghtotm.py +2 -0
  201. inewave/nwlistop/modelos/ghtotsin.py +2 -0
  202. inewave/nwlistop/modelos/gtert.py +2 -0
  203. inewave/nwlistop/modelos/gttot.py +2 -0
  204. inewave/nwlistop/modelos/gttotsin.py +2 -0
  205. inewave/nwlistop/modelos/hjus.py +2 -0
  206. inewave/nwlistop/modelos/hliq.py +2 -0
  207. inewave/nwlistop/modelos/hmont.py +2 -0
  208. inewave/nwlistop/modelos/intercambio.py +2 -0
  209. inewave/nwlistop/modelos/invade.py +2 -0
  210. inewave/nwlistop/modelos/invadem.py +2 -0
  211. inewave/nwlistop/modelos/mediasmerc.py +2 -0
  212. inewave/nwlistop/modelos/mediasree.py +2 -0
  213. inewave/nwlistop/modelos/mediasrep.py +2 -0
  214. inewave/nwlistop/modelos/mediasrhq.py +2 -0
  215. inewave/nwlistop/modelos/mediasrhv.py +2 -0
  216. inewave/nwlistop/modelos/mediassin.py +2 -0
  217. inewave/nwlistop/modelos/mediasusie.py +2 -0
  218. inewave/nwlistop/modelos/mediasusih.py +2 -0
  219. inewave/nwlistop/modelos/mediasusit.py +2 -0
  220. inewave/nwlistop/modelos/mercl.py +2 -0
  221. inewave/nwlistop/modelos/merclsin.py +2 -0
  222. inewave/nwlistop/modelos/mevmin.py +2 -0
  223. inewave/nwlistop/modelos/mevminm.py +2 -0
  224. inewave/nwlistop/modelos/mevminsin.py +2 -0
  225. inewave/nwlistop/modelos/nwlistopdat.py +11 -0
  226. inewave/nwlistop/modelos/perdf.py +2 -0
  227. inewave/nwlistop/modelos/perdfm.py +2 -0
  228. inewave/nwlistop/modelos/perdfsin.py +2 -0
  229. inewave/nwlistop/modelos/pivarm.py +22 -0
  230. inewave/nwlistop/modelos/pivarmincr.py +22 -0
  231. inewave/nwlistop/modelos/qafluh.py +2 -0
  232. inewave/nwlistop/modelos/qbomb.py +28 -0
  233. inewave/nwlistop/modelos/qdesviouh.py +28 -0
  234. inewave/nwlistop/modelos/qincruh.py +2 -0
  235. inewave/nwlistop/modelos/qturuh.py +28 -0
  236. inewave/nwlistop/modelos/qvertuh.py +28 -0
  237. inewave/nwlistop/modelos/rhslppdf.py +2 -0
  238. inewave/nwlistop/modelos/rhslpptb.py +2 -0
  239. inewave/nwlistop/modelos/vagua.py +2 -0
  240. inewave/nwlistop/modelos/valor_agua.py +24 -0
  241. inewave/nwlistop/modelos/varmpuh.py +2 -0
  242. inewave/nwlistop/modelos/varmuh.py +2 -0
  243. inewave/nwlistop/modelos/vbomb.py +2 -0
  244. inewave/nwlistop/modelos/vdesviouh.py +2 -0
  245. inewave/nwlistop/modelos/vento.py +2 -0
  246. inewave/nwlistop/modelos/vertuh.py +2 -0
  247. inewave/nwlistop/modelos/verturb.py +2 -0
  248. inewave/nwlistop/modelos/verturbm.py +2 -0
  249. inewave/nwlistop/modelos/verturbsin.py +2 -0
  250. inewave/nwlistop/modelos/vevapuh.py +2 -0
  251. inewave/nwlistop/modelos/vevmin.py +2 -0
  252. inewave/nwlistop/modelos/vevminm.py +2 -0
  253. inewave/nwlistop/modelos/vevminsin.py +2 -0
  254. inewave/nwlistop/modelos/vghmin.py +2 -0
  255. inewave/nwlistop/modelos/vghminm.py +2 -0
  256. inewave/nwlistop/modelos/vghminsin.py +2 -0
  257. inewave/nwlistop/modelos/vghminuh.py +2 -0
  258. inewave/nwlistop/modelos/viol_eletricasin.py +28 -0
  259. inewave/nwlistop/modelos/viol_evmin.py +23 -0
  260. inewave/nwlistop/modelos/viol_evminm.py +23 -0
  261. inewave/nwlistop/modelos/viol_evminsin.py +23 -0
  262. inewave/nwlistop/modelos/viol_fpha.py +31 -0
  263. inewave/nwlistop/modelos/viol_ghmin.py +29 -0
  264. inewave/nwlistop/modelos/viol_ghminm.py +29 -0
  265. inewave/nwlistop/modelos/viol_ghminsin.py +29 -0
  266. inewave/nwlistop/modelos/viol_ghminuh.py +28 -0
  267. inewave/nwlistop/modelos/viol_lpp_dfmax.py +29 -0
  268. inewave/nwlistop/modelos/viol_lpp_dfmaxm.py +29 -0
  269. inewave/nwlistop/modelos/viol_lpp_dfmaxsin.py +29 -0
  270. inewave/nwlistop/modelos/viol_lpp_tbmax.py +29 -0
  271. inewave/nwlistop/modelos/viol_lpp_tbmaxm.py +29 -0
  272. inewave/nwlistop/modelos/viol_lpp_tbmaxsin.py +29 -0
  273. inewave/nwlistop/modelos/viol_neg_evap.py +26 -0
  274. inewave/nwlistop/modelos/viol_pos_evap.py +26 -0
  275. inewave/nwlistop/modelos/viol_rhq.py +2 -0
  276. inewave/nwlistop/modelos/viol_rhv.py +2 -0
  277. inewave/nwlistop/modelos/viol_turbmax.py +28 -0
  278. inewave/nwlistop/modelos/viol_turbmin.py +28 -0
  279. inewave/nwlistop/modelos/viol_vazmax.py +28 -0
  280. inewave/nwlistop/modelos/viol_vazmin.py +28 -0
  281. inewave/nwlistop/modelos/vmort.py +2 -0
  282. inewave/nwlistop/modelos/vmortm.py +2 -0
  283. inewave/nwlistop/modelos/vmortsin.py +2 -0
  284. inewave/nwlistop/modelos/vretiradauh.py +26 -0
  285. inewave/nwlistop/modelos/vturuh.py +2 -0
  286. inewave/nwlistop/pivarm.py +13 -2
  287. inewave/nwlistop/pivarmincr.py +13 -2
  288. inewave/nwlistop/qbomb.py +23 -0
  289. inewave/nwlistop/qdesviouh.py +21 -0
  290. inewave/nwlistop/qturuh.py +21 -0
  291. inewave/nwlistop/qvertuh.py +21 -0
  292. inewave/nwlistop/vagua.py +10 -0
  293. inewave/nwlistop/valor_agua.py +21 -0
  294. inewave/nwlistop/vertuh.py +10 -0
  295. inewave/nwlistop/vevmin.py +10 -0
  296. inewave/nwlistop/vevminm.py +10 -0
  297. inewave/nwlistop/vevminsin.py +10 -0
  298. inewave/nwlistop/vghmin.py +10 -0
  299. inewave/nwlistop/vghminm.py +10 -0
  300. inewave/nwlistop/vghminsin.py +10 -0
  301. inewave/nwlistop/viol_eletricasin.py +19 -0
  302. inewave/nwlistop/viol_evmin.py +20 -0
  303. inewave/nwlistop/viol_evminm.py +22 -0
  304. inewave/nwlistop/viol_evminsin.py +19 -0
  305. inewave/nwlistop/viol_fpha.py +22 -0
  306. inewave/nwlistop/viol_ghmin.py +22 -0
  307. inewave/nwlistop/viol_ghminm.py +22 -0
  308. inewave/nwlistop/viol_ghminsin.py +19 -0
  309. inewave/nwlistop/viol_ghminuh.py +22 -0
  310. inewave/nwlistop/viol_lpp_dfmax.py +22 -0
  311. inewave/nwlistop/viol_lpp_dfmaxm.py +22 -0
  312. inewave/nwlistop/viol_lpp_dfmaxsin.py +18 -0
  313. inewave/nwlistop/viol_lpp_tbmax.py +22 -0
  314. inewave/nwlistop/viol_lpp_tbmaxm.py +22 -0
  315. inewave/nwlistop/viol_lpp_tbmaxsin.py +18 -0
  316. inewave/nwlistop/viol_neg_evap.py +22 -0
  317. inewave/nwlistop/viol_pos_evap.py +22 -0
  318. inewave/nwlistop/viol_turbmax.py +22 -0
  319. inewave/nwlistop/viol_turbmin.py +22 -0
  320. inewave/nwlistop/viol_vazmax.py +22 -0
  321. inewave/nwlistop/viol_vazmin.py +22 -0
  322. inewave/nwlistop/vretiradauh.py +21 -0
  323. inewave/nwlistop/vturuh.py +10 -0
  324. {inewave-1.7.4.dist-info → inewave-1.8.0.dist-info}/METADATA +2 -2
  325. {inewave-1.7.4.dist-info → inewave-1.8.0.dist-info}/RECORD +373 -264
  326. tests/libs/test_restricoes.py +0 -3
  327. tests/libs/test_usinas_hidreletricas.py +0 -2
  328. tests/mocks/arquivos/pivarm.py +22 -0
  329. tests/mocks/arquivos/pivarmincr.py +22 -0
  330. tests/mocks/arquivos/pmo.py +6 -1
  331. tests/mocks/arquivos/viol_fpha.py +29 -0
  332. tests/newave/test_dger.py +0 -2
  333. tests/newave/test_evap_avl_desv.py +40 -0
  334. tests/newave/test_evap_cortes.py +41 -0
  335. tests/newave/test_evap_eco.py +41 -0
  336. tests/newave/test_fpha_avl_desv_s.py +39 -0
  337. tests/newave/test_fpha_avl_desv_v_q.py +38 -0
  338. tests/newave/test_fpha_cortes.py +48 -0
  339. tests/newave/test_fpha_eco.py +47 -0
  340. tests/newave/test_pmo.py +14 -0
  341. tests/nwlistop/test_cviol_eletricasin.py +37 -0
  342. tests/nwlistop/test_cviol_rhq_sin.py +37 -0
  343. tests/nwlistop/test_cviol_rhv_sin.py +37 -0
  344. tests/nwlistop/test_qbomb.py +40 -0
  345. tests/nwlistop/test_qdesviouh.py +40 -0
  346. tests/nwlistop/test_qturuh.py +40 -0
  347. tests/nwlistop/test_qvertuh.py +40 -0
  348. tests/nwlistop/test_valor_agua.py +40 -0
  349. tests/nwlistop/test_viol_eletricasin.py +37 -0
  350. tests/nwlistop/test_viol_evmin.py +40 -0
  351. tests/nwlistop/test_viol_evminm.py +40 -0
  352. tests/nwlistop/test_viol_evminsin.py +37 -0
  353. tests/nwlistop/test_viol_fpha.py +40 -0
  354. tests/nwlistop/test_viol_ghmin.py +40 -0
  355. tests/nwlistop/test_viol_ghminm.py +40 -0
  356. tests/nwlistop/test_viol_ghminsin.py +37 -0
  357. tests/nwlistop/test_viol_ghminuh.py +40 -0
  358. tests/nwlistop/test_viol_lpp_dfmax.py +40 -0
  359. tests/nwlistop/test_viol_lpp_dfmaxm.py +40 -0
  360. tests/nwlistop/test_viol_lpp_dfmaxsin.py +37 -0
  361. tests/nwlistop/test_viol_lpp_tbmax.py +40 -0
  362. tests/nwlistop/test_viol_lpp_tbmaxm.py +40 -0
  363. tests/nwlistop/test_viol_lpp_tbmaxsin.py +37 -0
  364. tests/nwlistop/test_viol_neg_evap.py +41 -0
  365. tests/nwlistop/test_viol_pos_evap.py +40 -0
  366. tests/nwlistop/test_viol_turbmax.py +40 -0
  367. tests/nwlistop/test_viol_turbmin.py +40 -0
  368. tests/nwlistop/test_viol_vazmax.py +40 -0
  369. tests/nwlistop/test_viol_vazmin.py +40 -0
  370. tests/nwlistop/test_vretiradauh.py +40 -0
  371. {inewave-1.7.4.dist-info → inewave-1.8.0.dist-info}/LICENSE.md +0 -0
  372. {inewave-1.7.4.dist-info → inewave-1.8.0.dist-info}/WHEEL +0 -0
  373. {inewave-1.7.4.dist-info → inewave-1.8.0.dist-info}/top_level.txt +0 -0
@@ -4,6 +4,8 @@ from inewave.nwlistop.modelos.arquivos.arquivosubmercadopatamar import (
4
4
  )
5
5
  from inewave.nwlistop.modelos.vghminm import VghminAnos
6
6
 
7
+ from warnings import warn
8
+
7
9
 
8
10
  class Vghminm(ArquivoSubmercadoPatamar):
9
11
  """
@@ -20,3 +22,11 @@ class Vghminm(ArquivoSubmercadoPatamar):
20
22
  Submercado,
21
23
  VghminAnos,
22
24
  ]
25
+
26
+ def __init__(self, data=...) -> None:
27
+ warn(
28
+ "Esta classe é relativa a um arquivo que não é mais suportado."
29
+ + " Utilize a classe ViolGhminm no lugar.",
30
+ DeprecationWarning,
31
+ )
32
+ super().__init__(data)
@@ -3,6 +3,8 @@ from inewave.nwlistop.modelos.arquivos.arquivosinpatamar import (
3
3
  )
4
4
  from inewave.nwlistop.modelos.vghmin import VghminAnos
5
5
 
6
+ from warnings import warn
7
+
6
8
 
7
9
  class Vghminsin(ArquivoSINPatamar):
8
10
  """
@@ -17,3 +19,11 @@ class Vghminsin(ArquivoSINPatamar):
17
19
  BLOCKS = [
18
20
  VghminAnos,
19
21
  ]
22
+
23
+ def __init__(self, data=...) -> None:
24
+ warn(
25
+ "Esta classe é relativa a um arquivo que não é mais suportado."
26
+ + " Utilize a classe ViolGhminsin no lugar.",
27
+ DeprecationWarning,
28
+ )
29
+ super().__init__(data)
@@ -0,0 +1,19 @@
1
+ from inewave.nwlistop.modelos.arquivos.arquivosinpatamar import ( # noqa
2
+ ArquivoSINPatamar,
3
+ )
4
+ from inewave.nwlistop.modelos.viol_eletricasin import ViolEeletricasinAnos
5
+
6
+
7
+ class ViolEletricasin(ArquivoSINPatamar):
8
+ """
9
+ Armazena os dados das saídas referentes à violação das
10
+ restrições elétricas para o SIN.
11
+
12
+ Esta classe lida com as informações de saída fornecidas pelo
13
+ NWLISTOP e reproduzidas no `viol_eletricasin.out`.
14
+
15
+ """
16
+
17
+ BLOCKS = [
18
+ ViolEeletricasinAnos,
19
+ ]
@@ -0,0 +1,20 @@
1
+ from inewave.nwlistop.modelos.blocos.ree import REE
2
+ from inewave.nwlistop.modelos.arquivos.arquivoree import ArquivoREE
3
+ from inewave.nwlistop.modelos.viol_evmin import ViolEvminAnos
4
+
5
+
6
+ class ViolEvmin(ArquivoREE):
7
+ """
8
+ Armazena os dados das saídas referentes às violações da meta
9
+ de energia da vazão mínima, por REE.
10
+
11
+ Esta classe lida com as informações de saída fornecidas pelo
12
+ NWLISTOP e reproduzidas nos `viol_evmin00x.out`, onde x varia conforme o
13
+ REE em questão.
14
+
15
+ """
16
+
17
+ BLOCKS = [
18
+ REE,
19
+ ViolEvminAnos,
20
+ ]
@@ -0,0 +1,22 @@
1
+ from inewave.nwlistop.modelos.blocos.submercado import Submercado
2
+ from inewave.nwlistop.modelos.arquivos.arquivosubmercado import (
3
+ ArquivoSubmercado,
4
+ )
5
+ from inewave.nwlistop.modelos.viol_evminm import ViolEvminmAnos
6
+
7
+
8
+ class ViolEvminm(ArquivoSubmercado):
9
+ """
10
+ Armazena os dados das saídas referentes às violações da meta
11
+ de energia da vazão mínima, por Submercado.
12
+
13
+ Esta classe lida com as informações de saída fornecidas pelo
14
+ NWLISTOP e reproduzidas nos `viol_evminm00x.out`, onde x varia conforme o
15
+ Submercado em questão.
16
+
17
+ """
18
+
19
+ BLOCKS = [
20
+ Submercado,
21
+ ViolEvminmAnos,
22
+ ]
@@ -0,0 +1,19 @@
1
+ from inewave.nwlistop.modelos.arquivos.arquivosin import (
2
+ ArquivoSIN,
3
+ )
4
+ from inewave.nwlistop.modelos.viol_evminsin import ViolEvminsinAnos
5
+
6
+
7
+ class ViolEvminsin(ArquivoSIN):
8
+ """
9
+ Armazena os dados das saídas referentes às violações da meta
10
+ de energia da vazão mínima para o SIN.
11
+
12
+ Esta classe lida com as informações de saída fornecidas pelo
13
+ NWLISTOP e reproduzidas nos `viol_evminsin.out`
14
+
15
+ """
16
+
17
+ BLOCKS = [
18
+ ViolEvminsinAnos,
19
+ ]
@@ -0,0 +1,22 @@
1
+ from inewave.nwlistop.modelos.blocos.usina import Usina
2
+ from inewave.nwlistop.modelos.arquivos.arquivousinapatamar import (
3
+ ArquivoUsinaPatamar,
4
+ )
5
+ from inewave.nwlistop.modelos.viol_fpha import ViolFphaAnos
6
+
7
+
8
+ class ViolFpha(ArquivoUsinaPatamar):
9
+ """
10
+ Armazena os dados das saídas referentes à variável de folga da
11
+ FPHA da usina.
12
+
13
+ Esta classe lida com as informações de saída fornecidas pelo
14
+ NWLISTOP e reproduzidas nos `viol_fpha00x.out`, onde x varia conforme
15
+ a usina em questão.
16
+
17
+ """
18
+
19
+ BLOCKS = [
20
+ Usina,
21
+ ViolFphaAnos,
22
+ ]
@@ -0,0 +1,22 @@
1
+ from inewave.nwlistop.modelos.blocos.ree import REE
2
+ from inewave.nwlistop.modelos.arquivos.arquivoreepatamar import (
3
+ ArquivoREEPatamar,
4
+ )
5
+ from inewave.nwlistop.modelos.viol_ghmin import ViolGhminAnos
6
+
7
+
8
+ class ViolGhmin(ArquivoREEPatamar):
9
+ """
10
+ Armazena os dados das saídas referentes à violação da meta de geração
11
+ hidraulica mínima por patamar, por REE.
12
+
13
+ Esta classe lida com as informações de saída fornecidas pelo
14
+ NWLISTOP e reproduzidas nos `viol_ghmin00x.out`, onde x varia conforme o
15
+ REE em questão.
16
+
17
+ """
18
+
19
+ BLOCKS = [
20
+ REE,
21
+ ViolGhminAnos,
22
+ ]
@@ -0,0 +1,22 @@
1
+ from inewave.nwlistop.modelos.blocos.submercado import Submercado
2
+ from inewave.nwlistop.modelos.arquivos.arquivosubmercadopatamar import (
3
+ ArquivoSubmercadoPatamar,
4
+ )
5
+ from inewave.nwlistop.modelos.viol_ghminm import ViolGhminmAnos
6
+
7
+
8
+ class ViolGhminm(ArquivoSubmercadoPatamar):
9
+ """
10
+ Armazena os dados das saídas referentes à violação da meta de geração
11
+ hidráulica mínima por patamar, por Submercado.
12
+
13
+ Esta classe lida com as informações de saída fornecidas pelo
14
+ NWLISTOP e reproduzidas nos `viol_ghminm00x.out`, onde x varia conforme o
15
+ Submercado em questão.
16
+
17
+ """
18
+
19
+ BLOCKS = [
20
+ Submercado,
21
+ ViolGhminmAnos,
22
+ ]
@@ -0,0 +1,19 @@
1
+ from inewave.nwlistop.modelos.arquivos.arquivosinpatamar import (
2
+ ArquivoSINPatamar,
3
+ )
4
+ from inewave.nwlistop.modelos.viol_ghminsin import ViolGhminsinAnos
5
+
6
+
7
+ class ViolGhminsin(ArquivoSINPatamar):
8
+ """
9
+ Armazena os dados das saídas referentes à violação da meta de geração
10
+ hidraulica mínima por patamar, para o SIN.
11
+
12
+ Esta classe lida com as informações de saída fornecidas pelo
13
+ NWLISTOP e reproduzidas no `viol_ghminsin.out`.
14
+
15
+ """
16
+
17
+ BLOCKS = [
18
+ ViolGhminsinAnos,
19
+ ]
@@ -0,0 +1,22 @@
1
+ from inewave.nwlistop.modelos.blocos.usina import Usina
2
+ from inewave.nwlistop.modelos.arquivos.arquivousinapatamar import (
3
+ ArquivoUsinaPatamar,
4
+ )
5
+ from inewave.nwlistop.modelos.viol_ghminuh import ViolGhminuhAnos
6
+
7
+
8
+ class ViolGhminuh(ArquivoUsinaPatamar):
9
+ """
10
+ Armazena os dados das saídas referentes à violação da meta de
11
+ geração hidráulica mínima por usina.
12
+
13
+ Esta classe lida com as informações de saída fornecidas pelo
14
+ NWLISTOP e reproduzidas nos `viol_ghminuh00x.out`, onde x varia conforme a
15
+ usina em questão.
16
+
17
+ """
18
+
19
+ BLOCKS = [
20
+ Usina,
21
+ ViolGhminuhAnos,
22
+ ]
@@ -0,0 +1,22 @@
1
+ from inewave.nwlistop.modelos.blocos.ree import REE
2
+ from inewave.nwlistop.modelos.arquivos.arquivoreepatamar import (
3
+ ArquivoREEPatamar,
4
+ )
5
+ from inewave.nwlistop.modelos.viol_lpp_dfmax import ViolLppDfmaxAnos
6
+
7
+
8
+ class ViolLppDfmax(ArquivoREEPatamar):
9
+ """
10
+ Armazena os dados das saídas referentes à violação das restrições LPP
11
+ de defluência máxima por patamar, por REE.
12
+
13
+ Esta classe lida com as informações de saída fornecidas pelo
14
+ NWLISTOP e reproduzidas nos `viol_lpp_dfmax00x.out`, onde x varia conforme o
15
+ REE em questão.
16
+
17
+ """
18
+
19
+ BLOCKS = [
20
+ REE,
21
+ ViolLppDfmaxAnos,
22
+ ]
@@ -0,0 +1,22 @@
1
+ from inewave.nwlistop.modelos.blocos.submercado import Submercado
2
+ from inewave.nwlistop.modelos.arquivos.arquivosubmercadopatamar import (
3
+ ArquivoSubmercadoPatamar,
4
+ )
5
+ from inewave.nwlistop.modelos.viol_lpp_dfmaxm import ViolLppDfmaxmAnos
6
+
7
+
8
+ class ViolLppDfmaxm(ArquivoSubmercadoPatamar):
9
+ """
10
+ Armazena os dados das saídas referentes à violação das restrições LPP
11
+ de defluência máxima por patamar, por Submercado.
12
+
13
+ Esta classe lida com as informações de saída fornecidas pelo
14
+ NWLISTOP e reproduzidas nos `viol_lpp_dfmaxm00x.out`, onde x varia conforme o
15
+ Submercado em questão.
16
+
17
+ """
18
+
19
+ BLOCKS = [
20
+ Submercado,
21
+ ViolLppDfmaxmAnos,
22
+ ]
@@ -0,0 +1,18 @@
1
+ from inewave.nwlistop.modelos.arquivos.arquivosinpatamar import (
2
+ ArquivoSINPatamar,
3
+ )
4
+ from inewave.nwlistop.modelos.viol_lpp_dfmaxsin import ViolLppDfmaxsinAnos
5
+
6
+
7
+ class ViolLppDfmaxsin(ArquivoSINPatamar):
8
+ """
9
+ Armazena os dados das saídas referentes à violação das restrições
10
+ LPP de defluência máxima por patamar para o SIN.
11
+
12
+ Esta classe lida com as informações de saída fornecidas pelo
13
+ NWLISTOP e reproduzidas nos `viol_lpp_dfmaxsin.out`.
14
+ """
15
+
16
+ BLOCKS = [
17
+ ViolLppDfmaxsinAnos,
18
+ ]
@@ -0,0 +1,22 @@
1
+ from inewave.nwlistop.modelos.blocos.ree import REE
2
+ from inewave.nwlistop.modelos.arquivos.arquivoreepatamar import (
3
+ ArquivoREEPatamar,
4
+ )
5
+ from inewave.nwlistop.modelos.viol_lpp_tbmax import ViolLppTbmaxAnos
6
+
7
+
8
+ class ViolLppTbmax(ArquivoREEPatamar):
9
+ """
10
+ Armazena os dados das saídas referentes à violação das restrições LPP
11
+ de turbinamento máximo por patamar, por REE.
12
+
13
+ Esta classe lida com as informações de saída fornecidas pelo
14
+ NWLISTOP e reproduzidas nos `viol_lpp_tbmax00x.out`, onde x varia conforme o
15
+ REE em questão.
16
+
17
+ """
18
+
19
+ BLOCKS = [
20
+ REE,
21
+ ViolLppTbmaxAnos,
22
+ ]
@@ -0,0 +1,22 @@
1
+ from inewave.nwlistop.modelos.blocos.submercado import Submercado
2
+ from inewave.nwlistop.modelos.arquivos.arquivosubmercadopatamar import (
3
+ ArquivoSubmercadoPatamar,
4
+ )
5
+ from inewave.nwlistop.modelos.viol_lpp_tbmaxm import ViolLppTbmaxmAnos
6
+
7
+
8
+ class ViolLppTbmaxm(ArquivoSubmercadoPatamar):
9
+ """
10
+ Armazena os dados das saídas referentes à violação das restrições LPP
11
+ de turbinamento máximo por patamar, por Submercado.
12
+
13
+ Esta classe lida com as informações de saída fornecidas pelo
14
+ NWLISTOP e reproduzidas nos `viol_lpp_tbmaxm00x.out`, onde x varia conforme o
15
+ Submercado em questão.
16
+
17
+ """
18
+
19
+ BLOCKS = [
20
+ Submercado,
21
+ ViolLppTbmaxmAnos,
22
+ ]
@@ -0,0 +1,18 @@
1
+ from inewave.nwlistop.modelos.arquivos.arquivosinpatamar import (
2
+ ArquivoSINPatamar,
3
+ )
4
+ from inewave.nwlistop.modelos.viol_lpp_tbmaxsin import ViolLppTbmaxsinAnos
5
+
6
+
7
+ class ViolLppTbmaxsin(ArquivoSINPatamar):
8
+ """
9
+ Armazena os dados das saídas referentes à violação das restrições
10
+ LPP de turbinamento máximo por patamar para o SIN.
11
+
12
+ Esta classe lida com as informações de saída fornecidas pelo
13
+ NWLISTOP e reproduzidas nos `viol_lpp_tbmaxsin.out`.
14
+ """
15
+
16
+ BLOCKS = [
17
+ ViolLppTbmaxsinAnos,
18
+ ]
@@ -0,0 +1,22 @@
1
+ from inewave.nwlistop.modelos.blocos.usina import Usina
2
+ from inewave.nwlistop.modelos.arquivos.arquivousina import (
3
+ ArquivoUsina,
4
+ )
5
+ from inewave.nwlistop.modelos.viol_neg_evap import ViolNegEvapAnos
6
+
7
+
8
+ class ViolNegEvap(ArquivoUsina):
9
+ """
10
+ Armazena os dados das saídas referentes ao desvios negativos da
11
+ evaporação da usina.
12
+
13
+ Esta classe lida com as informações de saída fornecidas pelo
14
+ NWLISTOP e reproduzidas nos `viol_neg_evap00x.out`, onde x varia conforme
15
+ a usina em questão.
16
+
17
+ """
18
+
19
+ BLOCKS = [
20
+ Usina,
21
+ ViolNegEvapAnos,
22
+ ]
@@ -0,0 +1,22 @@
1
+ from inewave.nwlistop.modelos.blocos.usina import Usina
2
+ from inewave.nwlistop.modelos.arquivos.arquivousina import (
3
+ ArquivoUsina,
4
+ )
5
+ from inewave.nwlistop.modelos.viol_pos_evap import ViolPosEvapAnos
6
+
7
+
8
+ class ViolPosEvap(ArquivoUsina):
9
+ """
10
+ Armazena os dados das saídas referentes ao desvios positivos da
11
+ evaporação da usina.
12
+
13
+ Esta classe lida com as informações de saída fornecidas pelo
14
+ NWLISTOP e reproduzidas nos `viol_pos_evap00x.out`, onde x varia conforme
15
+ a usina em questão.
16
+
17
+ """
18
+
19
+ BLOCKS = [
20
+ Usina,
21
+ ViolPosEvapAnos,
22
+ ]
@@ -0,0 +1,22 @@
1
+ from inewave.nwlistop.modelos.blocos.usina import Usina
2
+ from inewave.nwlistop.modelos.arquivos.arquivousinapatamar import (
3
+ ArquivoUsinaPatamar,
4
+ )
5
+ from inewave.nwlistop.modelos.viol_turbmax import ViolTurbmaxAnos
6
+
7
+
8
+ class ViolTurbmax(ArquivoUsinaPatamar):
9
+ """
10
+ Armazena os dados das saídas referentes à violação de restrição de
11
+ turbinamento máximo por usina.
12
+
13
+ Esta classe lida com as informações de saída fornecidas pelo
14
+ NWLISTOP e reproduzidas nos `viol_turbmax00x.out`, onde x varia conforme
15
+ a usina em questão.
16
+
17
+ """
18
+
19
+ BLOCKS = [
20
+ Usina,
21
+ ViolTurbmaxAnos,
22
+ ]
@@ -0,0 +1,22 @@
1
+ from inewave.nwlistop.modelos.blocos.usina import Usina
2
+ from inewave.nwlistop.modelos.arquivos.arquivousinapatamar import (
3
+ ArquivoUsinaPatamar,
4
+ )
5
+ from inewave.nwlistop.modelos.viol_turbmin import ViolTurbminAnos
6
+
7
+
8
+ class ViolTurbmin(ArquivoUsinaPatamar):
9
+ """
10
+ Armazena os dados das saídas referentes à violação de restrição de
11
+ turbinamento mínimo por usina.
12
+
13
+ Esta classe lida com as informações de saída fornecidas pelo
14
+ NWLISTOP e reproduzidas nos `viol_turbmin00x.out`, onde x varia conforme
15
+ a usina em questão.
16
+
17
+ """
18
+
19
+ BLOCKS = [
20
+ Usina,
21
+ ViolTurbminAnos,
22
+ ]
@@ -0,0 +1,22 @@
1
+ from inewave.nwlistop.modelos.blocos.usina import Usina
2
+ from inewave.nwlistop.modelos.arquivos.arquivousinapatamar import (
3
+ ArquivoUsinaPatamar,
4
+ )
5
+ from inewave.nwlistop.modelos.viol_vazmax import ViolVazmaxAnos
6
+
7
+
8
+ class ViolVazmax(ArquivoUsinaPatamar):
9
+ """
10
+ Armazena os dados das saídas referentes à violação de restrição de
11
+ vazão máxima por usina.
12
+
13
+ Esta classe lida com as informações de saída fornecidas pelo
14
+ NWLISTOP e reproduzidas nos `viol_vazmax00x.out`, onde x varia conforme
15
+ a usina em questão.
16
+
17
+ """
18
+
19
+ BLOCKS = [
20
+ Usina,
21
+ ViolVazmaxAnos,
22
+ ]
@@ -0,0 +1,22 @@
1
+ from inewave.nwlistop.modelos.blocos.usina import Usina
2
+ from inewave.nwlistop.modelos.arquivos.arquivousinapatamar import (
3
+ ArquivoUsinaPatamar,
4
+ )
5
+ from inewave.nwlistop.modelos.viol_vazmin import ViolVazminAnos
6
+
7
+
8
+ class ViolVazmin(ArquivoUsinaPatamar):
9
+ """
10
+ Armazena os dados das saídas referentes à violação de defluência
11
+ mínima da usina.
12
+
13
+ Esta classe lida com as informações de saída fornecidas pelo
14
+ NWLISTOP e reproduzidas nos `viol_vazmin00x.out`, onde x varia conforme
15
+ a usina em questão.
16
+
17
+ """
18
+
19
+ BLOCKS = [
20
+ Usina,
21
+ ViolVazminAnos,
22
+ ]
@@ -0,0 +1,21 @@
1
+ from inewave.nwlistop.modelos.blocos.usina import Usina
2
+ from inewave.nwlistop.modelos.arquivos.arquivousina import (
3
+ ArquivoUsina,
4
+ )
5
+ from inewave.nwlistop.modelos.vretiradauh import VretiradauhAnos
6
+
7
+
8
+ class Vretiradauh(ArquivoUsina):
9
+ """
10
+ Armazena os dados das saídas referentes à retirada de água por usina.
11
+
12
+ Esta classe lida com as informações de saída fornecidas pelo
13
+ NWLISTOP e reproduzidas nos `vretiradauh00x.out`, onde x varia conforme a
14
+ usina em questão.
15
+
16
+ """
17
+
18
+ BLOCKS = [
19
+ Usina,
20
+ VretiradauhAnos,
21
+ ]
@@ -4,6 +4,8 @@ from inewave.nwlistop.modelos.arquivos.arquivousinapatamar import (
4
4
  )
5
5
  from inewave.nwlistop.modelos.vturuh import VturAnos
6
6
 
7
+ from warnings import warn
8
+
7
9
 
8
10
  class Vturuh(ArquivoUsinaPatamar):
9
11
  """
@@ -19,3 +21,11 @@ class Vturuh(ArquivoUsinaPatamar):
19
21
  Usina,
20
22
  VturAnos,
21
23
  ]
24
+
25
+ def __init__(self, data=...) -> None:
26
+ warn(
27
+ "Esta classe é relativa a um arquivo que não é mais suportado."
28
+ + " Utilize a classe Qturuh no lugar.",
29
+ DeprecationWarning,
30
+ )
31
+ super().__init__(data)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: inewave
3
- Version: 1.7.4
3
+ Version: 1.8.0
4
4
  Summary: Interface para arquivos do NEWAVE
5
5
  Home-page: https://github.com/rjmalves/inewave
6
6
  Author: Rogerio Alves
@@ -14,7 +14,7 @@ Description-Content-Type: text/markdown
14
14
  License-File: LICENSE.md
15
15
  Requires-Dist: numpy
16
16
  Requires-Dist: pandas
17
- Requires-Dist: cfinterface >=1.5.2
17
+ Requires-Dist: cfinterface >=1.6.0
18
18
 
19
19
  # inewave
20
20