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.
- inewave/__init__.py +1 -1
- inewave/newave/__init__.py +16 -7
- inewave/newave/avl_cortesfpha_nwv.py +10 -0
- inewave/newave/avl_desvfpha_s.py +7 -0
- inewave/newave/avl_desvfpha_v_q.py +7 -0
- inewave/newave/eco_fpha.py +10 -0
- inewave/newave/evap_avl_desv.py +33 -0
- inewave/newave/evap_cortes.py +34 -0
- inewave/newave/evap_eco.py +34 -0
- inewave/newave/fpha_avl_desv_s.py +59 -0
- inewave/newave/fpha_avl_desv_v_q.py +58 -0
- inewave/newave/fpha_cortes.py +40 -0
- inewave/newave/fpha_eco.py +41 -0
- inewave/newave/modelos/adterm.py +7 -0
- inewave/newave/modelos/agrint.py +2 -0
- inewave/newave/modelos/arquivos.py +2 -0
- inewave/newave/modelos/avl_cortesfpha_nwv.py +4 -0
- inewave/newave/modelos/avl_desvfpha_s.py +2 -0
- inewave/newave/modelos/avl_desvfpha_v_q.py +2 -0
- inewave/newave/modelos/blocos/tabelacsv.py +2 -0
- inewave/newave/modelos/blocos/versaomodelo.py +4 -0
- inewave/newave/modelos/cadic.py +2 -0
- inewave/newave/modelos/caso.py +4 -0
- inewave/newave/modelos/clast.py +2 -0
- inewave/newave/modelos/confhd.py +2 -0
- inewave/newave/modelos/conft.py +2 -0
- inewave/newave/modelos/cortes.py +14 -0
- inewave/newave/modelos/cortesh.py +20 -0
- inewave/newave/modelos/curva.py +2 -0
- inewave/newave/modelos/cvar.py +2 -0
- inewave/newave/modelos/dger.py +208 -0
- inewave/newave/modelos/dsvagua.py +2 -0
- inewave/newave/modelos/eafpast.py +2 -0
- inewave/newave/modelos/enavazb.py +2 -0
- inewave/newave/modelos/enavazf.py +2 -0
- inewave/newave/modelos/energiab.py +2 -0
- inewave/newave/modelos/energiaf.py +2 -0
- inewave/newave/modelos/energias.py +9 -0
- inewave/newave/modelos/engnat.py +2 -0
- inewave/newave/modelos/exph.py +2 -0
- inewave/newave/modelos/expt.py +2 -0
- inewave/newave/modelos/forward.py +27 -0
- inewave/newave/modelos/forwarh.py +2 -0
- inewave/newave/modelos/ghmin.py +2 -0
- inewave/newave/modelos/hidr.py +2 -0
- inewave/newave/modelos/manutt.py +2 -0
- inewave/newave/modelos/modif.py +32 -0
- inewave/newave/modelos/newavetim.py +2 -0
- inewave/newave/modelos/nwv_avl_evap.py +2 -0
- inewave/newave/modelos/nwv_cortes_evap.py +2 -0
- inewave/newave/modelos/nwv_eco_evap.py +2 -0
- inewave/newave/modelos/parp.py +45 -0
- inewave/newave/modelos/parpeol.py +23 -0
- inewave/newave/modelos/parpvaz.py +37 -0
- inewave/newave/modelos/patamar.py +28 -0
- inewave/newave/modelos/penalid.py +2 -0
- inewave/newave/modelos/pmo.py +103 -0
- inewave/newave/modelos/re.py +2 -0
- inewave/newave/modelos/ree.py +2 -0
- inewave/newave/modelos/selcor.py +5 -3
- inewave/newave/modelos/shist.py +10 -6
- inewave/newave/modelos/sistema.py +10 -0
- inewave/newave/modelos/term.py +2 -0
- inewave/newave/modelos/vazaob.py +2 -0
- inewave/newave/modelos/vazaof.py +2 -0
- inewave/newave/modelos/vazaos.py +2 -0
- inewave/newave/modelos/vazinat.py +2 -0
- inewave/newave/modelos/vazoes.py +2 -0
- inewave/newave/modelos/vazpast.py +2 -0
- inewave/newave/modelos/volref_saz.py +2 -0
- inewave/newave/modif.py +2 -0
- inewave/newave/nwv_avl_evap.py +10 -0
- inewave/newave/nwv_cortes_evap.py +10 -0
- inewave/newave/nwv_eco_evap.py +10 -0
- inewave/newave/pmo.py +17 -0
- inewave/newave/vazoes.py +2 -0
- inewave/nwlistcf/modelos/arquivos.py +2 -0
- inewave/nwlistcf/modelos/caso.py +2 -0
- inewave/nwlistcf/modelos/estados.py +10 -0
- inewave/nwlistcf/modelos/nwlistcfdat.py +2 -0
- inewave/nwlistcf/modelos/nwlistcfrel.py +2 -0
- inewave/nwlistop/__init__.py +65 -30
- inewave/nwlistop/c_v_rhq.py +10 -0
- inewave/nwlistop/c_v_rhq_s.py +10 -0
- inewave/nwlistop/c_v_rhv_s.py +10 -0
- inewave/nwlistop/celetricas.py +10 -0
- inewave/nwlistop/cviol_eletricasin.py +19 -0
- inewave/nwlistop/cviol_rhq.py +21 -0
- inewave/nwlistop/cviol_rhq_sin.py +19 -0
- inewave/nwlistop/cviol_rhv.py +21 -0
- inewave/nwlistop/cviol_rhv_sin.py +19 -0
- inewave/nwlistop/deletricas.py +10 -0
- inewave/nwlistop/depminuh.py +10 -0
- inewave/nwlistop/desvuh.py +10 -0
- inewave/nwlistop/dtbmax.py +10 -0
- inewave/nwlistop/dtbmin.py +10 -0
- inewave/nwlistop/dvazmax.py +10 -0
- inewave/nwlistop/modelos/arquivos/arquivoclassetermicasubmercadopatamar.py +2 -0
- inewave/nwlistop/modelos/arquivos/arquivoestacaobombeamentopatamar.py +2 -0
- inewave/nwlistop/modelos/arquivos/arquivoparsubmercadopatamar.py +2 -0
- inewave/nwlistop/modelos/arquivos/arquivoree.py +2 -0
- inewave/nwlistop/modelos/arquivos/arquivoreepatamar.py +2 -0
- inewave/nwlistop/modelos/arquivos/arquivorestricao.py +2 -0
- inewave/nwlistop/modelos/arquivos/arquivorestricaopatamar.py +2 -0
- inewave/nwlistop/modelos/arquivos/arquivosin.py +2 -0
- inewave/nwlistop/modelos/arquivos/arquivosinpatamar.py +2 -0
- inewave/nwlistop/modelos/arquivos/arquivosubmercado.py +2 -0
- inewave/nwlistop/modelos/arquivos/arquivosubmercadopatamar.py +2 -0
- inewave/nwlistop/modelos/arquivos/arquivousina.py +2 -0
- inewave/nwlistop/modelos/arquivos/arquivousinapatamar.py +2 -0
- inewave/nwlistop/modelos/blocos/estacaobombeamento.py +2 -0
- inewave/nwlistop/modelos/blocos/parsubmercados.py +2 -0
- inewave/nwlistop/modelos/blocos/ree.py +2 -0
- inewave/nwlistop/modelos/blocos/restricao.py +2 -0
- inewave/nwlistop/modelos/blocos/submercado.py +2 -0
- inewave/nwlistop/modelos/blocos/usina.py +2 -0
- inewave/nwlistop/modelos/blocos/valoresclassetermicaseriepatamar.py +8 -0
- inewave/nwlistop/modelos/blocos/valoresserie.py +2 -0
- inewave/nwlistop/modelos/blocos/valoresseriepatamar.py +2 -0
- inewave/nwlistop/modelos/c_v_rhq.py +2 -0
- inewave/nwlistop/modelos/c_v_rhq_s.py +2 -0
- inewave/nwlistop/modelos/c_v_rhv.py +2 -0
- inewave/nwlistop/modelos/c_v_rhv_s.py +2 -0
- inewave/nwlistop/modelos/cbomb.py +2 -0
- inewave/nwlistop/modelos/cbombsin.py +2 -0
- inewave/nwlistop/modelos/cdef.py +2 -0
- inewave/nwlistop/modelos/cdefsin.py +2 -0
- inewave/nwlistop/modelos/celetricas.py +2 -0
- inewave/nwlistop/modelos/cmarg.py +2 -0
- inewave/nwlistop/modelos/cmargmed.py +2 -0
- inewave/nwlistop/modelos/coper.py +2 -0
- inewave/nwlistop/modelos/corteolm.py +2 -0
- inewave/nwlistop/modelos/cterm.py +2 -0
- inewave/nwlistop/modelos/ctermsin.py +2 -0
- inewave/nwlistop/modelos/cviol_eletricasin.py +28 -0
- inewave/nwlistop/modelos/cviol_rhq.py +28 -0
- inewave/nwlistop/modelos/cviol_rhq_sin.py +28 -0
- inewave/nwlistop/modelos/cviol_rhv.py +26 -0
- inewave/nwlistop/modelos/cviol_rhv_sin.py +26 -0
- inewave/nwlistop/modelos/def.py +2 -0
- inewave/nwlistop/modelos/defsin.py +2 -0
- inewave/nwlistop/modelos/deletricas.py +2 -0
- inewave/nwlistop/modelos/depminuh.py +2 -0
- inewave/nwlistop/modelos/desvuh.py +2 -0
- inewave/nwlistop/modelos/dflppdfmaxm.py +2 -0
- inewave/nwlistop/modelos/dflpptbmaxm.py +2 -0
- inewave/nwlistop/modelos/dfphauh.py +2 -0
- inewave/nwlistop/modelos/dlppdfmax.py +2 -0
- inewave/nwlistop/modelos/dlppdfmaxs.py +2 -0
- inewave/nwlistop/modelos/dlpptbmax.py +2 -0
- inewave/nwlistop/modelos/dlpptbmaxs.py +2 -0
- inewave/nwlistop/modelos/dnegevap.py +2 -0
- inewave/nwlistop/modelos/dposevap.py +2 -0
- inewave/nwlistop/modelos/dtbmax.py +2 -0
- inewave/nwlistop/modelos/dtbmin.py +2 -0
- inewave/nwlistop/modelos/dvazmax.py +2 -0
- inewave/nwlistop/modelos/eaf.py +2 -0
- inewave/nwlistop/modelos/eafb.py +2 -0
- inewave/nwlistop/modelos/eafbm.py +2 -0
- inewave/nwlistop/modelos/eafbsin.py +2 -0
- inewave/nwlistop/modelos/eafm.py +2 -0
- inewave/nwlistop/modelos/earmf.py +2 -0
- inewave/nwlistop/modelos/earmfm.py +2 -0
- inewave/nwlistop/modelos/earmfp.py +2 -0
- inewave/nwlistop/modelos/earmfpm.py +2 -0
- inewave/nwlistop/modelos/earmfpsin.py +2 -0
- inewave/nwlistop/modelos/earmfsin.py +2 -0
- inewave/nwlistop/modelos/edesvc.py +2 -0
- inewave/nwlistop/modelos/edesvcm.py +2 -0
- inewave/nwlistop/modelos/edesvcsin.py +2 -0
- inewave/nwlistop/modelos/evapo.py +2 -0
- inewave/nwlistop/modelos/evapom.py +2 -0
- inewave/nwlistop/modelos/evaporsin.py +2 -0
- inewave/nwlistop/modelos/evert.py +2 -0
- inewave/nwlistop/modelos/evertm.py +2 -0
- inewave/nwlistop/modelos/evertsin.py +2 -0
- inewave/nwlistop/modelos/exces.py +2 -0
- inewave/nwlistop/modelos/excessin.py +2 -0
- inewave/nwlistop/modelos/form_rhq.py +2 -0
- inewave/nwlistop/modelos/form_rhv.py +2 -0
- inewave/nwlistop/modelos/fteolm.py +2 -0
- inewave/nwlistop/modelos/fteolsin.py +2 -0
- inewave/nwlistop/modelos/geol.py +2 -0
- inewave/nwlistop/modelos/geolm.py +2 -0
- inewave/nwlistop/modelos/geolsin.py +2 -0
- inewave/nwlistop/modelos/gh_fphexat.py +2 -0
- inewave/nwlistop/modelos/ghidr.py +2 -0
- inewave/nwlistop/modelos/ghidrm.py +2 -0
- inewave/nwlistop/modelos/ghidrsin.py +2 -0
- inewave/nwlistop/modelos/ghiduh.py +2 -0
- inewave/nwlistop/modelos/ghmax.py +2 -0
- inewave/nwlistop/modelos/ghmax_fpha.py +2 -0
- inewave/nwlistop/modelos/ghmax_fphc.py +2 -0
- inewave/nwlistop/modelos/ghmaxm.py +2 -0
- inewave/nwlistop/modelos/ghmaxmr.py +2 -0
- inewave/nwlistop/modelos/ghmaxr.py +2 -0
- inewave/nwlistop/modelos/ghmaxrsin.py +2 -0
- inewave/nwlistop/modelos/ghmaxsin.py +2 -0
- inewave/nwlistop/modelos/ghtot.py +2 -0
- inewave/nwlistop/modelos/ghtotm.py +2 -0
- inewave/nwlistop/modelos/ghtotsin.py +2 -0
- inewave/nwlistop/modelos/gtert.py +2 -0
- inewave/nwlistop/modelos/gttot.py +2 -0
- inewave/nwlistop/modelos/gttotsin.py +2 -0
- inewave/nwlistop/modelos/hjus.py +2 -0
- inewave/nwlistop/modelos/hliq.py +2 -0
- inewave/nwlistop/modelos/hmont.py +2 -0
- inewave/nwlistop/modelos/intercambio.py +2 -0
- inewave/nwlistop/modelos/invade.py +2 -0
- inewave/nwlistop/modelos/invadem.py +2 -0
- inewave/nwlistop/modelos/mediasmerc.py +2 -0
- inewave/nwlistop/modelos/mediasree.py +2 -0
- inewave/nwlistop/modelos/mediasrep.py +2 -0
- inewave/nwlistop/modelos/mediasrhq.py +2 -0
- inewave/nwlistop/modelos/mediasrhv.py +2 -0
- inewave/nwlistop/modelos/mediassin.py +2 -0
- inewave/nwlistop/modelos/mediasusie.py +2 -0
- inewave/nwlistop/modelos/mediasusih.py +2 -0
- inewave/nwlistop/modelos/mediasusit.py +2 -0
- inewave/nwlistop/modelos/mercl.py +2 -0
- inewave/nwlistop/modelos/merclsin.py +2 -0
- inewave/nwlistop/modelos/mevmin.py +2 -0
- inewave/nwlistop/modelos/mevminm.py +2 -0
- inewave/nwlistop/modelos/mevminsin.py +2 -0
- inewave/nwlistop/modelos/nwlistopdat.py +11 -0
- inewave/nwlistop/modelos/perdf.py +2 -0
- inewave/nwlistop/modelos/perdfm.py +2 -0
- inewave/nwlistop/modelos/perdfsin.py +2 -0
- inewave/nwlistop/modelos/pivarm.py +22 -0
- inewave/nwlistop/modelos/pivarmincr.py +22 -0
- inewave/nwlistop/modelos/qafluh.py +2 -0
- inewave/nwlistop/modelos/qbomb.py +28 -0
- inewave/nwlistop/modelos/qdesviouh.py +28 -0
- inewave/nwlistop/modelos/qincruh.py +2 -0
- inewave/nwlistop/modelos/qturuh.py +28 -0
- inewave/nwlistop/modelos/qvertuh.py +28 -0
- inewave/nwlistop/modelos/rhslppdf.py +2 -0
- inewave/nwlistop/modelos/rhslpptb.py +2 -0
- inewave/nwlistop/modelos/vagua.py +2 -0
- inewave/nwlistop/modelos/valor_agua.py +24 -0
- inewave/nwlistop/modelos/varmpuh.py +2 -0
- inewave/nwlistop/modelos/varmuh.py +2 -0
- inewave/nwlistop/modelos/vbomb.py +2 -0
- inewave/nwlistop/modelos/vdesviouh.py +2 -0
- inewave/nwlistop/modelos/vento.py +2 -0
- inewave/nwlistop/modelos/vertuh.py +2 -0
- inewave/nwlistop/modelos/verturb.py +2 -0
- inewave/nwlistop/modelos/verturbm.py +2 -0
- inewave/nwlistop/modelos/verturbsin.py +2 -0
- inewave/nwlistop/modelos/vevapuh.py +2 -0
- inewave/nwlistop/modelos/vevmin.py +2 -0
- inewave/nwlistop/modelos/vevminm.py +2 -0
- inewave/nwlistop/modelos/vevminsin.py +2 -0
- inewave/nwlistop/modelos/vghmin.py +2 -0
- inewave/nwlistop/modelos/vghminm.py +2 -0
- inewave/nwlistop/modelos/vghminsin.py +2 -0
- inewave/nwlistop/modelos/vghminuh.py +2 -0
- inewave/nwlistop/modelos/viol_eletricasin.py +28 -0
- inewave/nwlistop/modelos/viol_evmin.py +23 -0
- inewave/nwlistop/modelos/viol_evminm.py +23 -0
- inewave/nwlistop/modelos/viol_evminsin.py +23 -0
- inewave/nwlistop/modelos/viol_fpha.py +31 -0
- inewave/nwlistop/modelos/viol_ghmin.py +29 -0
- inewave/nwlistop/modelos/viol_ghminm.py +29 -0
- inewave/nwlistop/modelos/viol_ghminsin.py +29 -0
- inewave/nwlistop/modelos/viol_ghminuh.py +28 -0
- inewave/nwlistop/modelos/viol_lpp_dfmax.py +29 -0
- inewave/nwlistop/modelos/viol_lpp_dfmaxm.py +29 -0
- inewave/nwlistop/modelos/viol_lpp_dfmaxsin.py +29 -0
- inewave/nwlistop/modelos/viol_lpp_tbmax.py +29 -0
- inewave/nwlistop/modelos/viol_lpp_tbmaxm.py +29 -0
- inewave/nwlistop/modelos/viol_lpp_tbmaxsin.py +29 -0
- inewave/nwlistop/modelos/viol_neg_evap.py +26 -0
- inewave/nwlistop/modelos/viol_pos_evap.py +26 -0
- inewave/nwlistop/modelos/viol_rhq.py +2 -0
- inewave/nwlistop/modelos/viol_rhv.py +2 -0
- inewave/nwlistop/modelos/viol_turbmax.py +28 -0
- inewave/nwlistop/modelos/viol_turbmin.py +28 -0
- inewave/nwlistop/modelos/viol_vazmax.py +28 -0
- inewave/nwlistop/modelos/viol_vazmin.py +28 -0
- inewave/nwlistop/modelos/vmort.py +2 -0
- inewave/nwlistop/modelos/vmortm.py +2 -0
- inewave/nwlistop/modelos/vmortsin.py +2 -0
- inewave/nwlistop/modelos/vretiradauh.py +26 -0
- inewave/nwlistop/modelos/vturuh.py +2 -0
- inewave/nwlistop/pivarm.py +13 -2
- inewave/nwlistop/pivarmincr.py +13 -2
- inewave/nwlistop/qbomb.py +23 -0
- inewave/nwlistop/qdesviouh.py +21 -0
- inewave/nwlistop/qturuh.py +21 -0
- inewave/nwlistop/qvertuh.py +21 -0
- inewave/nwlistop/vagua.py +10 -0
- inewave/nwlistop/valor_agua.py +21 -0
- inewave/nwlistop/vertuh.py +10 -0
- inewave/nwlistop/vevmin.py +10 -0
- inewave/nwlistop/vevminm.py +10 -0
- inewave/nwlistop/vevminsin.py +10 -0
- inewave/nwlistop/vghmin.py +10 -0
- inewave/nwlistop/vghminm.py +10 -0
- inewave/nwlistop/vghminsin.py +10 -0
- inewave/nwlistop/viol_eletricasin.py +19 -0
- inewave/nwlistop/viol_evmin.py +20 -0
- inewave/nwlistop/viol_evminm.py +22 -0
- inewave/nwlistop/viol_evminsin.py +19 -0
- inewave/nwlistop/viol_fpha.py +22 -0
- inewave/nwlistop/viol_ghmin.py +22 -0
- inewave/nwlistop/viol_ghminm.py +22 -0
- inewave/nwlistop/viol_ghminsin.py +19 -0
- inewave/nwlistop/viol_ghminuh.py +22 -0
- inewave/nwlistop/viol_lpp_dfmax.py +22 -0
- inewave/nwlistop/viol_lpp_dfmaxm.py +22 -0
- inewave/nwlistop/viol_lpp_dfmaxsin.py +18 -0
- inewave/nwlistop/viol_lpp_tbmax.py +22 -0
- inewave/nwlistop/viol_lpp_tbmaxm.py +22 -0
- inewave/nwlistop/viol_lpp_tbmaxsin.py +18 -0
- inewave/nwlistop/viol_neg_evap.py +22 -0
- inewave/nwlistop/viol_pos_evap.py +22 -0
- inewave/nwlistop/viol_turbmax.py +22 -0
- inewave/nwlistop/viol_turbmin.py +22 -0
- inewave/nwlistop/viol_vazmax.py +22 -0
- inewave/nwlistop/viol_vazmin.py +22 -0
- inewave/nwlistop/vretiradauh.py +21 -0
- inewave/nwlistop/vturuh.py +10 -0
- {inewave-1.7.4.dist-info → inewave-1.8.0.dist-info}/METADATA +2 -2
- {inewave-1.7.4.dist-info → inewave-1.8.0.dist-info}/RECORD +373 -264
- tests/libs/test_restricoes.py +0 -3
- tests/libs/test_usinas_hidreletricas.py +0 -2
- tests/mocks/arquivos/pivarm.py +22 -0
- tests/mocks/arquivos/pivarmincr.py +22 -0
- tests/mocks/arquivos/pmo.py +6 -1
- tests/mocks/arquivos/viol_fpha.py +29 -0
- tests/newave/test_dger.py +0 -2
- tests/newave/test_evap_avl_desv.py +40 -0
- tests/newave/test_evap_cortes.py +41 -0
- tests/newave/test_evap_eco.py +41 -0
- tests/newave/test_fpha_avl_desv_s.py +39 -0
- tests/newave/test_fpha_avl_desv_v_q.py +38 -0
- tests/newave/test_fpha_cortes.py +48 -0
- tests/newave/test_fpha_eco.py +47 -0
- tests/newave/test_pmo.py +14 -0
- tests/nwlistop/test_cviol_eletricasin.py +37 -0
- tests/nwlistop/test_cviol_rhq_sin.py +37 -0
- tests/nwlistop/test_cviol_rhv_sin.py +37 -0
- tests/nwlistop/test_qbomb.py +40 -0
- tests/nwlistop/test_qdesviouh.py +40 -0
- tests/nwlistop/test_qturuh.py +40 -0
- tests/nwlistop/test_qvertuh.py +40 -0
- tests/nwlistop/test_valor_agua.py +40 -0
- tests/nwlistop/test_viol_eletricasin.py +37 -0
- tests/nwlistop/test_viol_evmin.py +40 -0
- tests/nwlistop/test_viol_evminm.py +40 -0
- tests/nwlistop/test_viol_evminsin.py +37 -0
- tests/nwlistop/test_viol_fpha.py +40 -0
- tests/nwlistop/test_viol_ghmin.py +40 -0
- tests/nwlistop/test_viol_ghminm.py +40 -0
- tests/nwlistop/test_viol_ghminsin.py +37 -0
- tests/nwlistop/test_viol_ghminuh.py +40 -0
- tests/nwlistop/test_viol_lpp_dfmax.py +40 -0
- tests/nwlistop/test_viol_lpp_dfmaxm.py +40 -0
- tests/nwlistop/test_viol_lpp_dfmaxsin.py +37 -0
- tests/nwlistop/test_viol_lpp_tbmax.py +40 -0
- tests/nwlistop/test_viol_lpp_tbmaxm.py +40 -0
- tests/nwlistop/test_viol_lpp_tbmaxsin.py +37 -0
- tests/nwlistop/test_viol_neg_evap.py +41 -0
- tests/nwlistop/test_viol_pos_evap.py +40 -0
- tests/nwlistop/test_viol_turbmax.py +40 -0
- tests/nwlistop/test_viol_turbmin.py +40 -0
- tests/nwlistop/test_viol_vazmax.py +40 -0
- tests/nwlistop/test_viol_vazmin.py +40 -0
- tests/nwlistop/test_vretiradauh.py +40 -0
- {inewave-1.7.4.dist-info → inewave-1.8.0.dist-info}/LICENSE.md +0 -0
- {inewave-1.7.4.dist-info → inewave-1.8.0.dist-info}/WHEEL +0 -0
- {inewave-1.7.4.dist-info → inewave-1.8.0.dist-info}/top_level.txt +0 -0
inewave/__init__.py
CHANGED
inewave/newave/__init__.py
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# Inclui os membros
|
|
2
2
|
|
|
3
|
+
# Deprecated
|
|
4
|
+
from .avl_cortesfpha_nwv import AvlCortesFpha # noqa
|
|
5
|
+
from .avl_desvfpha_s import AvlDesvFphaS # noqa
|
|
6
|
+
from .avl_desvfpha_v_q import AvlDesvFphaVQ # noqa
|
|
7
|
+
from .eco_fpha import EcoFpha # noqa
|
|
8
|
+
from .nwv_avl_evap import NwvAvlEvap # noqa
|
|
9
|
+
from .nwv_cortes_evap import NwvCortesEvap # noqa
|
|
10
|
+
from .nwv_eco_evap import NwvEcoEvap # noqa
|
|
11
|
+
|
|
3
12
|
from .abertura import Abertura # noqa
|
|
4
13
|
from .adterm import Adterm # noqa
|
|
5
14
|
from .agrint import Agrint # noqa
|
|
@@ -46,13 +55,13 @@ from .term import Term # noqa
|
|
|
46
55
|
from .vazoes import Vazoes # noqa
|
|
47
56
|
from .vazpast import Vazpast # noqa
|
|
48
57
|
from .volref_saz import VolrefSaz # noqa
|
|
49
|
-
from .
|
|
50
|
-
from .
|
|
51
|
-
from .
|
|
52
|
-
from .
|
|
53
|
-
from .
|
|
54
|
-
from .
|
|
55
|
-
from .
|
|
58
|
+
from .fpha_cortes import FphaCortes # noqa
|
|
59
|
+
from .fpha_avl_desv_s import FphaAvlDesvS # noqa
|
|
60
|
+
from .fpha_avl_desv_v_q import FphaAvlDesvVQ # noqa
|
|
61
|
+
from .fpha_eco import FphaEco # noqa
|
|
62
|
+
from .evap_avl_desv import EvapAvlDesv # noqa
|
|
63
|
+
from .evap_cortes import EvapCortes # noqa
|
|
64
|
+
from .evap_eco import EvapEco # noqa
|
|
56
65
|
from .energiaf import Energiaf # noqa
|
|
57
66
|
from .energiab import Energiab # noqa
|
|
58
67
|
from .energias import Energias # noqa
|
|
@@ -11,6 +11,8 @@ from inewave.newave.modelos.arquivoscsv.arquivocsv import ArquivoCSV
|
|
|
11
11
|
from typing import Optional
|
|
12
12
|
import pandas as pd # type: ignore
|
|
13
13
|
|
|
14
|
+
from warnings import warn
|
|
15
|
+
|
|
14
16
|
|
|
15
17
|
class AvlCortesFpha(ArquivoCSV):
|
|
16
18
|
"""
|
|
@@ -44,3 +46,11 @@ class AvlCortesFpha(ArquivoCSV):
|
|
|
44
46
|
:rtype: pd.DataFrame | None
|
|
45
47
|
"""
|
|
46
48
|
return self._tabela()
|
|
49
|
+
|
|
50
|
+
def __init__(self, data=...) -> None:
|
|
51
|
+
warn(
|
|
52
|
+
"Esta classe é relativa a um arquivo que não é mais suportado."
|
|
53
|
+
+ " Utilize a classe FphaCortes no lugar.",
|
|
54
|
+
DeprecationWarning,
|
|
55
|
+
)
|
|
56
|
+
super().__init__(data)
|
inewave/newave/avl_desvfpha_s.py
CHANGED
|
@@ -5,6 +5,8 @@ from cfinterface.files.blockfile import BlockFile
|
|
|
5
5
|
from typing import Optional, TypeVar
|
|
6
6
|
import pandas as pd # type: ignore
|
|
7
7
|
|
|
8
|
+
from warnings import warn
|
|
9
|
+
|
|
8
10
|
|
|
9
11
|
class AvlDesvFphaS(BlockFile):
|
|
10
12
|
"""
|
|
@@ -18,6 +20,11 @@ class AvlDesvFphaS(BlockFile):
|
|
|
18
20
|
T = TypeVar("T")
|
|
19
21
|
|
|
20
22
|
def __init__(self, data=...) -> None:
|
|
23
|
+
warn(
|
|
24
|
+
"Esta classe é relativa a um arquivo que não é mais suportado."
|
|
25
|
+
+ " Utilize a classe FphaAvlDesvS no lugar.",
|
|
26
|
+
DeprecationWarning,
|
|
27
|
+
)
|
|
21
28
|
super().__init__(data)
|
|
22
29
|
self.__df_completo: Optional[pd.DataFrame] = None
|
|
23
30
|
|
|
@@ -5,6 +5,8 @@ from cfinterface.files.blockfile import BlockFile
|
|
|
5
5
|
from typing import Optional, TypeVar
|
|
6
6
|
import pandas as pd # type: ignore
|
|
7
7
|
|
|
8
|
+
from warnings import warn
|
|
9
|
+
|
|
8
10
|
|
|
9
11
|
class AvlDesvFphaVQ(BlockFile):
|
|
10
12
|
"""
|
|
@@ -18,6 +20,11 @@ class AvlDesvFphaVQ(BlockFile):
|
|
|
18
20
|
T = TypeVar("T")
|
|
19
21
|
|
|
20
22
|
def __init__(self, data=...) -> None:
|
|
23
|
+
warn(
|
|
24
|
+
"Esta classe é relativa a um arquivo que não é mais suportado."
|
|
25
|
+
+ " Utilize a classe FphaAvlDesvVQ no lugar.",
|
|
26
|
+
DeprecationWarning,
|
|
27
|
+
)
|
|
21
28
|
super().__init__(data)
|
|
22
29
|
self.__df_completo: Optional[pd.DataFrame] = None
|
|
23
30
|
|
inewave/newave/eco_fpha.py
CHANGED
|
@@ -5,6 +5,8 @@ from inewave.newave.modelos.arquivoscsv.arquivocsv import ArquivoCSV
|
|
|
5
5
|
from typing import Optional
|
|
6
6
|
import pandas as pd # type: ignore
|
|
7
7
|
|
|
8
|
+
from warnings import warn
|
|
9
|
+
|
|
8
10
|
|
|
9
11
|
class EcoFpha(ArquivoCSV):
|
|
10
12
|
"""
|
|
@@ -39,3 +41,11 @@ class EcoFpha(ArquivoCSV):
|
|
|
39
41
|
:rtype: pd.DataFrame | None
|
|
40
42
|
"""
|
|
41
43
|
return self._tabela()
|
|
44
|
+
|
|
45
|
+
def __init__(self, data=...) -> None:
|
|
46
|
+
warn(
|
|
47
|
+
"Esta classe é relativa a um arquivo que não é mais suportado."
|
|
48
|
+
+ " Utilize a classe FphaEco no lugar.",
|
|
49
|
+
DeprecationWarning,
|
|
50
|
+
)
|
|
51
|
+
super().__init__(data)
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
from inewave.newave.modelos.blocos.versaomodelo import VersaoModelo
|
|
2
|
+
from inewave.newave.modelos.nwv_avl_evap import TabelaAvlEvap
|
|
3
|
+
|
|
4
|
+
from inewave.newave.modelos.arquivoscsv.arquivocsv import ArquivoCSV
|
|
5
|
+
from typing import Optional
|
|
6
|
+
import pandas as pd # type: ignore
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class EvapAvlDesv(ArquivoCSV):
|
|
10
|
+
"""
|
|
11
|
+
Arquivo com a avaliação da evaporação linear do NEWAVE.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
BLOCKS = [VersaoModelo, TabelaAvlEvap]
|
|
15
|
+
|
|
16
|
+
@property
|
|
17
|
+
def tabela(self) -> Optional[pd.DataFrame]:
|
|
18
|
+
"""
|
|
19
|
+
A tabela de dados que está contida no arquivo.
|
|
20
|
+
|
|
21
|
+
- periodo (`int`)
|
|
22
|
+
- codigo_usina (`int`)
|
|
23
|
+
- nome_usina (`str`)
|
|
24
|
+
- volume_armazenado_hm3 (`float`)
|
|
25
|
+
- evaporacao_calculada_hm3 (`float`)
|
|
26
|
+
- evaporacao_modelo_hm3 (`float`)
|
|
27
|
+
- desvio_absoluto_hm3 (`float`)
|
|
28
|
+
- desvio_percentual (`float`)
|
|
29
|
+
|
|
30
|
+
:return: A tabela como um dataframe
|
|
31
|
+
:rtype: pd.DataFrame | None
|
|
32
|
+
"""
|
|
33
|
+
return self._tabela()
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
from inewave.newave.modelos.blocos.versaomodelo import VersaoModelo
|
|
2
|
+
from inewave.newave.modelos.nwv_cortes_evap import TabelaCortesEvap
|
|
3
|
+
|
|
4
|
+
from inewave.newave.modelos.arquivoscsv.arquivocsv import ArquivoCSV
|
|
5
|
+
from typing import Optional
|
|
6
|
+
import pandas as pd # type: ignore
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class EvapCortes(ArquivoCSV):
|
|
10
|
+
"""
|
|
11
|
+
Arquivo com os cortes da evaporação linear do NEWAVE.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
BLOCKS = [VersaoModelo, TabelaCortesEvap]
|
|
15
|
+
|
|
16
|
+
@property
|
|
17
|
+
def tabela(self) -> Optional[pd.DataFrame]:
|
|
18
|
+
"""
|
|
19
|
+
A tabela de dados que está contida no arquivo.
|
|
20
|
+
|
|
21
|
+
- periodo (`int`)
|
|
22
|
+
- indice_usina (`int`)
|
|
23
|
+
- nome_usina (`str`)
|
|
24
|
+
- derivada_cota_area (`float`)
|
|
25
|
+
- derivada_volume_cota (`float`)
|
|
26
|
+
- volume_referencia_hm3 (`float`)
|
|
27
|
+
- evaporacao_referencia_hm3 (`float`)
|
|
28
|
+
- coeficiente_volume (`float`)
|
|
29
|
+
- rhs_volume (`float`)
|
|
30
|
+
|
|
31
|
+
:return: A tabela como um dataframe
|
|
32
|
+
:rtype: pd.DataFrame | None
|
|
33
|
+
"""
|
|
34
|
+
return self._tabela()
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
from inewave.newave.modelos.blocos.versaomodelo import VersaoModelo
|
|
2
|
+
from inewave.newave.modelos.nwv_eco_evap import TabelaEcoEvap
|
|
3
|
+
|
|
4
|
+
from inewave.newave.modelos.arquivoscsv.arquivocsv import ArquivoCSV
|
|
5
|
+
from typing import Optional
|
|
6
|
+
import pandas as pd # type: ignore
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class EvapEco(ArquivoCSV):
|
|
10
|
+
"""
|
|
11
|
+
Arquivo com o eco dos dados da evaporação linear do NEWAVE.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
BLOCKS = [VersaoModelo, TabelaEcoEvap]
|
|
15
|
+
|
|
16
|
+
@property
|
|
17
|
+
def tabela(self) -> Optional[pd.DataFrame]:
|
|
18
|
+
"""
|
|
19
|
+
A tabela de dados que está contida no arquivo.
|
|
20
|
+
|
|
21
|
+
- periodo (`int`)
|
|
22
|
+
- codigo_usina (`int`)
|
|
23
|
+
- nome_usina (`str`)
|
|
24
|
+
- volume_referencia_hm3 (`float`)
|
|
25
|
+
- evaporacao_referencia_hm3 (`float`)
|
|
26
|
+
- coeficiente_evaporacao_mm_mes (`int`)
|
|
27
|
+
- flag_evaporacao (`int`)
|
|
28
|
+
- evaporacao_linear (`int`)
|
|
29
|
+
- tipo_volume_referencia (`int`)
|
|
30
|
+
|
|
31
|
+
:return: A tabela como um dataframe
|
|
32
|
+
:rtype: pd.DataFrame | None
|
|
33
|
+
"""
|
|
34
|
+
return self._tabela()
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
from inewave.newave.modelos.blocos.versaomodelo import VersaoModelo
|
|
2
|
+
from inewave.newave.modelos.avl_desvfpha_s import TabelaAvlDesvFphaS
|
|
3
|
+
|
|
4
|
+
from cfinterface.files.blockfile import BlockFile
|
|
5
|
+
from typing import Optional, TypeVar
|
|
6
|
+
import pandas as pd # type: ignore
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class FphaAvlDesvS(BlockFile):
|
|
10
|
+
"""
|
|
11
|
+
Arquivo com os desvios da função de produção no plano de
|
|
12
|
+
vazão vertida (S).
|
|
13
|
+
"""
|
|
14
|
+
|
|
15
|
+
BLOCKS = [VersaoModelo, TabelaAvlDesvFphaS]
|
|
16
|
+
ENCODING = "iso-8859-1"
|
|
17
|
+
|
|
18
|
+
T = TypeVar("T")
|
|
19
|
+
|
|
20
|
+
def __init__(self, data=...) -> None:
|
|
21
|
+
super().__init__(data)
|
|
22
|
+
self.__df_completo: Optional[pd.DataFrame] = None
|
|
23
|
+
|
|
24
|
+
@property
|
|
25
|
+
def tabela(self) -> Optional[pd.DataFrame]:
|
|
26
|
+
"""
|
|
27
|
+
A tabela de dados que está contida no arquivo.
|
|
28
|
+
|
|
29
|
+
- codigo_usina (`int`)
|
|
30
|
+
- nome_usina (`str`)
|
|
31
|
+
- volume_armazenado_percentual (`float`)
|
|
32
|
+
- vazao_turbinada_m3s (`float`)
|
|
33
|
+
- vazao_vertida_m3s (`float`)
|
|
34
|
+
- desvio_percentual (`float`)
|
|
35
|
+
|
|
36
|
+
:return: A tabela como um dataframe
|
|
37
|
+
:rtype: pd.DataFrame | None
|
|
38
|
+
"""
|
|
39
|
+
if self.__df_completo is None:
|
|
40
|
+
tabelas = self.data.of_type(TabelaAvlDesvFphaS)
|
|
41
|
+
self.__df_completo = pd.DataFrame()
|
|
42
|
+
for t in tabelas:
|
|
43
|
+
self.__df_completo = pd.concat(
|
|
44
|
+
[self.__df_completo, t.data], ignore_index=True
|
|
45
|
+
)
|
|
46
|
+
return self.__df_completo
|
|
47
|
+
|
|
48
|
+
@property
|
|
49
|
+
def versao(self) -> Optional[str]:
|
|
50
|
+
"""
|
|
51
|
+
A versão do modelo utilizada para executar o caso.
|
|
52
|
+
|
|
53
|
+
:return: A versão do modelo
|
|
54
|
+
:rtype: str | None
|
|
55
|
+
"""
|
|
56
|
+
b = self.data.get_blocks_of_type(VersaoModelo)
|
|
57
|
+
if isinstance(b, VersaoModelo):
|
|
58
|
+
return b.data
|
|
59
|
+
return None
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
from inewave.newave.modelos.blocos.versaomodelo import VersaoModelo
|
|
2
|
+
from inewave.newave.modelos.avl_desvfpha_v_q import TabelaAvlDesvFphaVQ
|
|
3
|
+
|
|
4
|
+
from cfinterface.files.blockfile import BlockFile
|
|
5
|
+
from typing import Optional, TypeVar
|
|
6
|
+
import pandas as pd # type: ignore
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class FphaAvlDesvVQ(BlockFile):
|
|
10
|
+
"""
|
|
11
|
+
Arquivo com os desvios da função de produção nos planos de
|
|
12
|
+
volume armazenado e vazão turbinada (V-Q).
|
|
13
|
+
"""
|
|
14
|
+
|
|
15
|
+
BLOCKS = [VersaoModelo, TabelaAvlDesvFphaVQ]
|
|
16
|
+
ENCODING = "iso-8859-1"
|
|
17
|
+
|
|
18
|
+
T = TypeVar("T")
|
|
19
|
+
|
|
20
|
+
def __init__(self, data=...) -> None:
|
|
21
|
+
super().__init__(data)
|
|
22
|
+
self.__df_completo: Optional[pd.DataFrame] = None
|
|
23
|
+
|
|
24
|
+
@property
|
|
25
|
+
def tabela(self) -> Optional[pd.DataFrame]:
|
|
26
|
+
"""
|
|
27
|
+
A tabela de dados que está contida no arquivo.
|
|
28
|
+
|
|
29
|
+
- codigo_usina (`int`)
|
|
30
|
+
- nome_usina (`str`)
|
|
31
|
+
- volume_armazenado_percentual (`float`)
|
|
32
|
+
- vazao_turbinada_m3s (`float`)
|
|
33
|
+
- desvio_percentual (`float`)
|
|
34
|
+
|
|
35
|
+
:return: A tabela como um dataframe
|
|
36
|
+
:rtype: pd.DataFrame | None
|
|
37
|
+
"""
|
|
38
|
+
if self.__df_completo is None:
|
|
39
|
+
tabelas = self.data.of_type(TabelaAvlDesvFphaVQ)
|
|
40
|
+
tabelas_validas = [t.data for t in tabelas if t is not None]
|
|
41
|
+
self.__df_completo = pd.concat(
|
|
42
|
+
[t for t in tabelas_validas if isinstance(t, pd.DataFrame)],
|
|
43
|
+
ignore_index=True,
|
|
44
|
+
)
|
|
45
|
+
return self.__df_completo
|
|
46
|
+
|
|
47
|
+
@property
|
|
48
|
+
def versao(self) -> Optional[str]:
|
|
49
|
+
"""
|
|
50
|
+
A versão do modelo utilizada para executar o caso.
|
|
51
|
+
|
|
52
|
+
:return: A versão do modelo
|
|
53
|
+
:rtype: str | None
|
|
54
|
+
"""
|
|
55
|
+
b = self.data.get_blocks_of_type(VersaoModelo)
|
|
56
|
+
if isinstance(b, VersaoModelo):
|
|
57
|
+
return b.data
|
|
58
|
+
return None
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
from inewave.newave.modelos.blocos.versaomodelo import (
|
|
2
|
+
VersaoModeloLibs,
|
|
3
|
+
)
|
|
4
|
+
from inewave.newave.modelos.avl_cortesfpha_nwv import (
|
|
5
|
+
TabelaAvlCortesFpha,
|
|
6
|
+
)
|
|
7
|
+
|
|
8
|
+
from inewave.newave.modelos.arquivoscsv.arquivocsv import ArquivoCSV
|
|
9
|
+
from typing import Optional
|
|
10
|
+
import pandas as pd # type: ignore
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class FphaCortes(ArquivoCSV):
|
|
14
|
+
"""
|
|
15
|
+
Arquivo com os cortes da função de produção para as UHEs
|
|
16
|
+
do NEWAVE.
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
BLOCKS = [VersaoModeloLibs, TabelaAvlCortesFpha]
|
|
20
|
+
|
|
21
|
+
@property
|
|
22
|
+
def tabela(self) -> Optional[pd.DataFrame]:
|
|
23
|
+
"""
|
|
24
|
+
A tabela de dados que está contida no arquivo.
|
|
25
|
+
|
|
26
|
+
- codigo_usina (`int`)
|
|
27
|
+
- periodo (`int`)
|
|
28
|
+
- nome_usina (`str`)
|
|
29
|
+
- indice_corte (`int`)
|
|
30
|
+
- fator_correcao (`float`)
|
|
31
|
+
- rhs_energia (`float`)
|
|
32
|
+
- coeficiente_volume_util_MW_hm3 (`float`)
|
|
33
|
+
- coeficiente_vazao_turbinada_MW_m3s (`float`)
|
|
34
|
+
- coeficiente_vazao_vertida_MW_m3s (`float`)
|
|
35
|
+
- coeficiente_vazao_lateral_MW_m3s (`float`)
|
|
36
|
+
|
|
37
|
+
:return: A tabela como um dataframe
|
|
38
|
+
:rtype: pd.DataFrame | None
|
|
39
|
+
"""
|
|
40
|
+
return self._tabela()
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
from inewave.newave.modelos.blocos.versaomodelo import VersaoModelo
|
|
2
|
+
from inewave.newave.modelos.eco_fpha import TabelaEcoFpha
|
|
3
|
+
|
|
4
|
+
from inewave.newave.modelos.arquivoscsv.arquivocsv import ArquivoCSV
|
|
5
|
+
from typing import Optional
|
|
6
|
+
import pandas as pd # type: ignore
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class FphaEco(ArquivoCSV):
|
|
10
|
+
"""
|
|
11
|
+
Arquivo com o eco da função de produção para as UHEs
|
|
12
|
+
do NEWAVE.
|
|
13
|
+
"""
|
|
14
|
+
|
|
15
|
+
BLOCKS = [VersaoModelo, TabelaEcoFpha]
|
|
16
|
+
|
|
17
|
+
@property
|
|
18
|
+
def tabela(self) -> Optional[pd.DataFrame]:
|
|
19
|
+
"""
|
|
20
|
+
A tabela de dados que está contida no arquivo.
|
|
21
|
+
|
|
22
|
+
- codigo_usina (`int`)
|
|
23
|
+
- periodo (`int`)
|
|
24
|
+
- nome_usina (`str`)
|
|
25
|
+
- tipo (`int`)
|
|
26
|
+
- conv (`int`)
|
|
27
|
+
- alfa (`int`)
|
|
28
|
+
- rems (`int`)
|
|
29
|
+
- numero_pontos_vazao_turbinada (`int`)
|
|
30
|
+
- vazao_turbinada_minima (`float`)
|
|
31
|
+
- vazao_turbinada_maxima (`float`)
|
|
32
|
+
- numero_pontos_volume_armazenado (`int`)
|
|
33
|
+
- volume_armazenado_minimo (`float`)
|
|
34
|
+
- volume_armazenado_maximo (`float`)
|
|
35
|
+
- geracao_minima (`float`)
|
|
36
|
+
- geracao_maxima (`float`)
|
|
37
|
+
|
|
38
|
+
:return: A tabela como um dataframe
|
|
39
|
+
:rtype: pd.DataFrame | None
|
|
40
|
+
"""
|
|
41
|
+
return self._tabela()
|
inewave/newave/modelos/adterm.py
CHANGED
|
@@ -18,6 +18,13 @@ class BlocoUTEAdTerm(Section):
|
|
|
18
18
|
Bloco com os despachos antecipados das UTEs por patamar.
|
|
19
19
|
"""
|
|
20
20
|
|
|
21
|
+
__slots__ = [
|
|
22
|
+
"__linha_ute",
|
|
23
|
+
"__linha_despachos",
|
|
24
|
+
"__cabecalhos",
|
|
25
|
+
"__numero_patamares",
|
|
26
|
+
]
|
|
27
|
+
|
|
21
28
|
FIM_BLOCO = " 9999"
|
|
22
29
|
|
|
23
30
|
def __init__(self, previous=None, next=None, data=None) -> None:
|
inewave/newave/modelos/agrint.py
CHANGED
|
@@ -13,6 +13,8 @@ class TabelaAvlCortesFpha28(TabelaCSV):
|
|
|
13
13
|
UHEs do modelo NEWAVE.
|
|
14
14
|
"""
|
|
15
15
|
|
|
16
|
+
__slots__ = []
|
|
17
|
+
|
|
16
18
|
BEGIN_PATTERN = "-----;-----;--------------;"
|
|
17
19
|
|
|
18
20
|
LINE_MODEL = Line(
|
|
@@ -51,6 +53,8 @@ class TabelaAvlCortesFpha(TabelaCSV):
|
|
|
51
53
|
UHEs do modelo NEWAVE.
|
|
52
54
|
"""
|
|
53
55
|
|
|
56
|
+
__slots__ = []
|
|
57
|
+
|
|
54
58
|
BEGIN_PATTERN = "----;----;--------------;-------;"
|
|
55
59
|
|
|
56
60
|
LINE_MODEL = Line(
|
|
@@ -11,6 +11,8 @@ class VersaoModelo(Block):
|
|
|
11
11
|
título do arquivo.
|
|
12
12
|
"""
|
|
13
13
|
|
|
14
|
+
__slots__ = []
|
|
15
|
+
|
|
14
16
|
BEGIN_PATTERN = r"CEPEL: NEWAVE"
|
|
15
17
|
END_PATTERN = ""
|
|
16
18
|
|
|
@@ -34,6 +36,8 @@ class VersaoModeloLibs(Block):
|
|
|
34
36
|
título do arquivo.
|
|
35
37
|
"""
|
|
36
38
|
|
|
39
|
+
__slots__ = []
|
|
40
|
+
|
|
37
41
|
BEGIN_PATTERN = r"NEWAVE -"
|
|
38
42
|
END_PATTERN = ""
|
|
39
43
|
|
inewave/newave/modelos/cadic.py
CHANGED
inewave/newave/modelos/caso.py
CHANGED
|
@@ -10,6 +10,8 @@ class NomeCaso(Section):
|
|
|
10
10
|
entrada do NEWAVE `caso.dat`.
|
|
11
11
|
"""
|
|
12
12
|
|
|
13
|
+
__slots__ = ["__linha"]
|
|
14
|
+
|
|
13
15
|
def __init__(self, previous=None, next=None, data=None) -> None:
|
|
14
16
|
super().__init__(previous, next, data)
|
|
15
17
|
self.__linha = Line([LiteralField(40, 0)])
|
|
@@ -43,6 +45,8 @@ class CaminhoGerenciadorProcessos(Section):
|
|
|
43
45
|
no NEWAVE, contido no arquivo `caso.dat`.
|
|
44
46
|
"""
|
|
45
47
|
|
|
48
|
+
__slots__ = ["__linha"]
|
|
49
|
+
|
|
46
50
|
def __init__(self, previous=None, next=None, data=None) -> None:
|
|
47
51
|
super().__init__(previous, next, data)
|
|
48
52
|
self.__linha = Line([LiteralField(120, 0)])
|
inewave/newave/modelos/clast.py
CHANGED
inewave/newave/modelos/confhd.py
CHANGED
|
@@ -13,6 +13,8 @@ class BlocoConfUHE(Section):
|
|
|
13
13
|
no arquivo do NEWAVE `confhd.dat`.
|
|
14
14
|
"""
|
|
15
15
|
|
|
16
|
+
__slots__ = ["__linha_uhe", "__cabecalhos"]
|
|
17
|
+
|
|
16
18
|
def __init__(self, previous=None, next=None, data=None) -> None:
|
|
17
19
|
super().__init__(previous, next, data)
|
|
18
20
|
self.__linha_uhe = Line(
|
inewave/newave/modelos/conft.py
CHANGED
|
@@ -12,6 +12,8 @@ class BlocoConfUTE(Section):
|
|
|
12
12
|
no arquivo do NEWAVE `conft.dat`.
|
|
13
13
|
"""
|
|
14
14
|
|
|
15
|
+
__slots__ = ["__linha_ute", "__cabecalhos"]
|
|
16
|
+
|
|
15
17
|
def __init__(self, previous=None, next=None, data=None) -> None:
|
|
16
18
|
super().__init__(previous, next, data)
|
|
17
19
|
self.__linha_ute = Line(
|
inewave/newave/modelos/cortes.py
CHANGED
|
@@ -9,6 +9,20 @@ class SecaoDadosCortes(Section):
|
|
|
9
9
|
Registro com os cortes da FCF.
|
|
10
10
|
"""
|
|
11
11
|
|
|
12
|
+
__slots__ = [
|
|
13
|
+
"__tabela_int",
|
|
14
|
+
"__numero_coeficientes",
|
|
15
|
+
"__tabela_float",
|
|
16
|
+
"__tamanho_registro",
|
|
17
|
+
"__numero_total_cortes",
|
|
18
|
+
"__codigos_rees",
|
|
19
|
+
"__codigos_uhes",
|
|
20
|
+
"__codigos_submercados",
|
|
21
|
+
"__ordem_maxima_parp",
|
|
22
|
+
"__numero_patamares_carga",
|
|
23
|
+
"__lag_maximo_gnl",
|
|
24
|
+
]
|
|
25
|
+
|
|
12
26
|
def __eq__(self, o: object) -> bool:
|
|
13
27
|
if not isinstance(o, SecaoDadosCortes):
|
|
14
28
|
return False
|
|
@@ -11,6 +11,26 @@ class SecaoDadosCortesh(Section):
|
|
|
11
11
|
arquivo cortesh.dat
|
|
12
12
|
"""
|
|
13
13
|
|
|
14
|
+
__slots__ = [
|
|
15
|
+
"data" "__df_ultimo_corte_por_estagio",
|
|
16
|
+
"__df_dados_submercado",
|
|
17
|
+
"__df_dados_uhes",
|
|
18
|
+
"__tamanho_segundo_registro",
|
|
19
|
+
"__tamanho_terceiro_registro",
|
|
20
|
+
"__tamanho_quarto_registro",
|
|
21
|
+
"__tamanho_quinto_registro",
|
|
22
|
+
"__tamanho_sexto_registro",
|
|
23
|
+
"__tamanho_setimo_registro",
|
|
24
|
+
"__tamanho_oitavo_registro",
|
|
25
|
+
"__tamanho_nono_registro",
|
|
26
|
+
"__tamanho_decimo_registro",
|
|
27
|
+
"__tamanho_decimo_primeiro_registro",
|
|
28
|
+
"__tamanho_decimo_segundo_registro",
|
|
29
|
+
"__tamanho_decimo_terceiro_registro",
|
|
30
|
+
"__tamanho_decimo_quarto_registro",
|
|
31
|
+
"__df_ultimo_corte_por_estagio",
|
|
32
|
+
]
|
|
33
|
+
|
|
14
34
|
REGISTER_SIZE = 46080
|
|
15
35
|
|
|
16
36
|
def __init__(self, previous=None, next=None, data=None) -> None:
|
inewave/newave/modelos/curva.py
CHANGED
|
@@ -21,6 +21,8 @@ class BlocoConfiguracoesPenalizacaoCurva(Section):
|
|
|
21
21
|
existente no arquivo do NEWAVE `curva.dat`.
|
|
22
22
|
"""
|
|
23
23
|
|
|
24
|
+
__slots__ = ["__linha", "__cabecalhos"]
|
|
25
|
+
|
|
24
26
|
def __init__(self, previous=None, next=None, data=None) -> None:
|
|
25
27
|
super().__init__(previous, next, data)
|
|
26
28
|
self.__linha = Line(
|
inewave/newave/modelos/cvar.py
CHANGED