Tutorial
Categorias de Síntese
O sintetizador-newave
está disponível como uma ferramenta CLI. Para visualizar quais comandos este pode realizar,
que estão associados aos tipos de sínteses, basta fazer:
$ sintetizador-newave --help
A saída observada deve ser:
>>> Usage: sintetizador-newave [OPTIONS] COMMAND [ARGS]...
>>>
>>> Aplicação para realizar a síntese de informações em um modelo unificado de
>>> dados para o NEWAVE.
>>>
>>> Options:
>>> --help Show this message and exit.
>>>
>>> Commands:
>>> completa Realiza a síntese completa do NEWAVE.
>>> cenarios Realiza a síntese dos dados de cenários do NEWAVE.
>>> execucao Realiza a síntese dos dados da execução do NEWAVE.
>>> politica Realiza a síntese dos dados da política do NEWAVE (NWLISTCF).
>>> operacao Realiza a síntese dos dados da operação do NEWAVE (NWLISTOP).
>>> sistema Realiza a síntese dos dados do sistema do NEWAVE.
>>> limpeza Realiza a limpeza dos dados resultantes de uma síntese.
Além disso, cada um dos comandos possui um menu específico, que pode ser visto com, por exemplo:
$ sintetizador-newave operacao --help
Que deve ter como saída:
>>> Usage: sintetizador-newave operacao [OPTIONS] [VARIAVEIS]...
>>>
>>> Realiza a síntese dos dados da operação do NEWAVE (NWLISTOP).
>>>
>>> Options:
>>> --formato TEXT formato para escrita da síntese
>>> --processadores INTEGER numero de processadores para paralelizar
>>> --help Show this message and exit.
Argumentos Existentes
Para realizar a síntese completa do caso, está disponível o comando completa
, que realizará toda a síntese possível:
$ sintetizador-newave completa
Se for desejado não realizar a síntese completa, mas apenas de alguns dos elementos, é possível chamar cada elemento a ser sintetizado:
$ sintetizador-newave operacao CMO_SBM_EST EARMF_SIN_EST GTER_SBM_PAT
O formato de escrita padrão das sínteses é PARQUET
, que é um formato eficiente
de armazenamento de dados tabulares para aplicações de big data.
Caso seja desejado, é possível forçar a saída das sínteses através do argumento opcional --formato
, para qualquer categoria de síntese:
$ sintetizador-newave execucao --formato CSV
No caso das sínteses da operação e de cenários, é possível paralelizar a leitura dos arquivos através do argumento opcional --processadores
:
$ sintetizador-newave operacao --processadores 8
$ sintetizador-newave cenarios --processadores 8
A síntese completa também aceita o paralelismo, aplicando-o a todas as categorias de síntese que são suportadas:
$ sintetizador-newave completa --processadores 24
Exemplo de Uso
Um exemplo de chamada ao programa para realizar a síntese da operação de um caso do NEWAVE é o seguinte:
$ sintetizador-newave operacao --processadores 4
O log observado no terminal deve ser semelhante a:
>>> 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,743 INFO: Tempo para compactacao dos dados: 0.01 s
>>> 2024-04-22 09:53:58,744 INFO: Tempo para calculo dos limites: 0.00 s
>>> 2024-04-22 09:53:58,747 INFO: Tempo para preparacao para exportacao: 0.00 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:17,293 INFO: Realizando sintese de VEVAP_SBM
>>> 2024-04-22 09:51:17,295 INFO: Tempo para compactacao dos dados: 0.00 s
>>> 2024-04-22 09:51:17,295 INFO: Tempo para calculo dos limites: 0.00 s
>>> 2024-04-22 09:51:17,315 INFO: Tempo para preparacao para exportacao: 0.02 s
>>> 2024-04-22 09:51:17,320 INFO: Tempo para exportacao dos dados: 0.00 s
>>> 2024-04-22 09:51:17,320 INFO: Tempo para sintese de VEVAP_SBM: 0.03 s
>>> 2024-04-22 09:51:17,320 INFO: Realizando sintese de VEVAP_SIN
>>> 2024-04-22 09:51:17,322 INFO: Tempo para compactacao dos dados: 0.00 s
>>> 2024-04-22 09:51:17,322 INFO: Tempo para calculo dos limites: 0.00 s
>>> 2024-04-22 09:51:17,342 INFO: Tempo para preparacao para exportacao: 0.02 s
>>> 2024-04-22 09:51:17,346 INFO: Tempo para exportacao dos dados: 0.00 s
>>> 2024-04-22 09:51:17,346 INFO: Tempo para sintese de VEVAP_SIN: 0.03 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 #