Pacote Python para manipulação dos arquivos de entrada e saída do NEWAVE
Project description
inewave
Pacote Python para leitura e escrita dos arquivos de entrada e saída do modelo NEWAVE e dos programas auxiliares NWLISTOP e NWLISTCF.
O inewave é um pacote Python para manipulação dos arquivos de entrada e saída do programa NEWAVE. O NEWAVE é desenvolvido pelo CEPEL e utilizado para os estudos de planejamento e operação do Sistema Interligado Nacional (SIN).
Funcionalidades
- Leitura e escrita dos arquivos de entrada do NEWAVE, com suporte a modificações programáticas de decks de PMO
- Leitura dos arquivos de saída do NEWAVE e dos programas auxiliares NWLISTCF e NWLISTOP
- Dados tabulares expostos como
DataFramedo pandas, prontos para análise e visualização - Interface orientada a objetos consistente: cada arquivo corresponde a uma classe com método
reade, quando aplicável, métodowrite - Suporte a múltiplas versões de formato do mesmo arquivo, com seleção via argumento
version=no métodoread - Importação sob demanda (lazy import) para inicialização rápida mesmo com dezenas de classes disponíveis
Exemplo Rapido
Leitura do arquivo de saída pmo.dat e acesso aos dados de convergência como DataFrame:
from inewave.newave import Pmo
arq_pmo = Pmo.read("./pmo.dat")
arq_pmo.convergencia
Leitura de um arquivo de entrada, modificação de valores e escrita do resultado:
from inewave.newave import Vazoes
arq_vazoes = Vazoes.read("./vazoes.dat")
# Sensibilidade: elevar todas as vazões históricas em 10%
arq_vazoes.vazoes *= 1.1
arq_vazoes.write("./vazoes_sensibilidade.dat")
Instalacao
O inewave é compatível com Python 3.11, 3.12, 3.13 e 3.14.
Instalação a partir do PyPI:
pip install inewave
Instalação da versão de desenvolvimento diretamente do repositório:
pip install git+https://github.com/rjmalves/inewave
Documentacao
A documentação completa do pacote está disponível em rjmalves.github.io/inewave e inclui:
- Tutorial — exemplos de leitura, escrita e modificação de arquivos
- Arquitetura — estrutura interna do pacote e do framework cfinterface
- Perguntas Frequentes — dúvidas comuns dos usuários
- Guia de Desempenho — características de performance e resultados de benchmarks
- Referencia da API — documentação de todas as classes e propriedades públicas
Contribuindo
Contribuições são bem-vindas. Consulte o arquivo CONTRIBUTING.md para instruções sobre como configurar o ambiente de desenvolvimento, executar os testes e enviar pull requests.
Licenca
Distribuído sob a licença MIT.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file inewave-1.13.2.tar.gz.
File metadata
- Download URL: inewave-1.13.2.tar.gz
- Upload date:
- Size: 14.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0d13b48c6e87164026b9707d98aae24a723ad6d94ddfdc2dbafd4db96d01c538
|
|
| MD5 |
c3973e8b01df47556120a1b797f402b3
|
|
| BLAKE2b-256 |
d996337bbc49a886972bb4ba09a183c8e5f41cda464d2744f472f4c2ef13d02f
|
Provenance
The following attestation bundles were made for inewave-1.13.2.tar.gz:
Publisher:
release.yml on rjmalves/inewave
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
inewave-1.13.2.tar.gz -
Subject digest:
0d13b48c6e87164026b9707d98aae24a723ad6d94ddfdc2dbafd4db96d01c538 - Sigstore transparency entry: 1274326727
- Sigstore integration time:
-
Permalink:
rjmalves/inewave@54aabc7e9ad1ef64a46342cfbd0360e8b6243861 -
Branch / Tag:
refs/tags/v1.13.2 - Owner: https://github.com/rjmalves
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@54aabc7e9ad1ef64a46342cfbd0360e8b6243861 -
Trigger Event:
push
-
Statement type:
File details
Details for the file inewave-1.13.2-py3-none-any.whl.
File metadata
- Download URL: inewave-1.13.2-py3-none-any.whl
- Upload date:
- Size: 440.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
07a0bdc6cf79a91468117fd923ebbb154d055e58a688b73f2a782446e1c79d3a
|
|
| MD5 |
6b7583e57d9ad7d2f30851e4ba186a7b
|
|
| BLAKE2b-256 |
ccde0b066b1e806aec04a4cb5dcae28c48e5e80388ed841f72d145c2b3daacad
|
Provenance
The following attestation bundles were made for inewave-1.13.2-py3-none-any.whl:
Publisher:
release.yml on rjmalves/inewave
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
inewave-1.13.2-py3-none-any.whl -
Subject digest:
07a0bdc6cf79a91468117fd923ebbb154d055e58a688b73f2a782446e1c79d3a - Sigstore transparency entry: 1274326799
- Sigstore integration time:
-
Permalink:
rjmalves/inewave@54aabc7e9ad1ef64a46342cfbd0360e8b6243861 -
Branch / Tag:
refs/tags/v1.13.2 - Owner: https://github.com/rjmalves
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@54aabc7e9ad1ef64a46342cfbd0360e8b6243861 -
Trigger Event:
push
-
Statement type: