Skip to main content

Aplicacao CLI para sintese de dados do modelo NEWAVE

Project description

sintetizador-newave

tests codecov PyPI Python docs license

Sobre

O sintetizador-newave é uma aplicação CLI para formatação e consolidação dos arquivos de saída do modelo NEWAVE, desenvolvido pelo CEPEL e utilizado no planejamento da operação do Sistema Interligado Nacional (SIN). A ferramenta lê os arquivos textuais e binários gerados pelo NEWAVE e os converte em tabelas normalizadas e estruturadas em DataFrames Polars, prontas para análise e integração com outros sistemas.

O modelo de dados adotado para as saídas sintetizadas é compatível com o ecossistema de ferramentas de síntese do planejamento energético brasileiro, facilitando a interoperabilidade entre casos de diferentes modelos. Internamente, a aplicação utiliza o módulo inewave para abstrair as regras de leitura dos arquivos proprietários do NEWAVE.

A ferramenta é destinada a engenheiros, pesquisadores e desenvolvedores que trabalham com análise de resultados de planejamento energético e necessitam de acesso programático eficiente às saídas do NEWAVE em formatos modernos e interoperáveis.

Funcionalidades

  • Síntese de dados de operação (NWLISTOP): variáveis como CMO, EARM, GTER, VAGUA e dezenas de outras por submercado, REE e UHE
  • Síntese de dados de cenários: afluências e outras variáveis estocásticas geradas pelo modelo
  • Síntese de dados de política (NWLISTCF): função de custo futuro e cortes de Benders
  • Síntese de dados de sistema: configuração de submercados, REEs, usinas e intercâmbios
  • Síntese de dados de execução: tempo de processamento, convergência e informações do caso
  • Saída em formato Parquet por padrão, com suporte opcional a CSV
  • Paralelização da leitura de arquivos via argumento --processadores
  • Seleção granular de variáveis individuais ou síntese completa com um único comando
  • Suporte a Python 3.11, 3.12, 3.13 e 3.14

Início Rápido

Instalação

pip install sintetizador-newave

Ou com uv:

uv pip install sintetizador-newave

Uso

Execute a síntese completa de um caso NEWAVE a partir do diretório onde estão os arquivos de saída:

$ sintetizador-newave completa

Para sintetizar apenas categorias específicas ou variáveis individuais:

$ sintetizador-newave operacao CMO_SBM EARMF_SIN GTER_SBM

Para paralelizar a leitura dos arquivos:

$ sintetizador-newave operacao --processadores 4

Saída esperada no terminal:

2024-04-22 09:53:56,845 INFO: # Realizando síntese da OPERACAO #
2024-04-22 09:53:56,868 INFO: Sinteses: [CMO_SBM, VAGUA_REE, VAGUA_UHE, ...]
2024-04-22 09:53:56,870 INFO: Realizando sintese de CMO_SBM
2024-04-22 09:53:58,734 INFO: Tempo para obter dados de SBM: 1.85 s
2024-04-22 09:53:58,753 INFO: Tempo para exportacao dos dados: 0.01 s
2024-04-22 09:53:58,754 INFO: Tempo para sintese de CMO_SBM: 1.88 s
...
2024-04-22 09:51:19,529 INFO: Tempo para sintese da operacao: 33.33 s
2024-04-22 09:51:19,529 INFO: # Fim da síntese #

Documentação

Guias, tutoriais e referências completas estão disponíveis no site oficial do pacote: https://rjmalves.github.io/sintetizador-newave

Licença

Este projeto está licenciado sob a licença MIT.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sintetizador_newave-2.4.2.tar.gz (6.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sintetizador_newave-2.4.2-py3-none-any.whl (165.2 kB view details)

Uploaded Python 3

File details

Details for the file sintetizador_newave-2.4.2.tar.gz.

File metadata

  • Download URL: sintetizador_newave-2.4.2.tar.gz
  • Upload date:
  • Size: 6.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for sintetizador_newave-2.4.2.tar.gz
Algorithm Hash digest
SHA256 cc3ced5a72266b5898a143d7293aa83c753668aabae9672c4a12af47ff8ec6d3
MD5 7e326bb165dc5411d074b7929938431d
BLAKE2b-256 482db846ae99597c738905ef016e1c04a0f983bdf82c2aa325e6fe46f6bc5ae9

See more details on using hashes here.

Provenance

The following attestation bundles were made for sintetizador_newave-2.4.2.tar.gz:

Publisher: release.yml on rjmalves/sintetizador-newave

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sintetizador_newave-2.4.2-py3-none-any.whl.

File metadata

File hashes

Hashes for sintetizador_newave-2.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c9219c239a8639d19fa5ab978858c84b76240dbd8a33d7da6113c4d7f1bb0167
MD5 aeae7d1fa6bdf535b055d316af40ed70
BLAKE2b-256 7403e694b7edb39209423be1336e643bf293b8e1cd591e403a7fc93e5e114ee5

See more details on using hashes here.

Provenance

The following attestation bundles were made for sintetizador_newave-2.4.2-py3-none-any.whl:

Publisher: release.yml on rjmalves/sintetizador-newave

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page