library(epe4md)
library(tidyverse)
O pacote epe4md
possui diferentes funções encadeadas para realizar as projeções de difusão da Micro e Minigeração Distribuída (MMGD) no Brasil. No entanto, a função epe4md_calcula
condensa todas as funções intermediárias e permite gerar resultados a partir da execução de apenas essa função.
Há apenas dois argumentos obrigatórios que precisam ser definidos para rodar a função epe4md_calcula
.
Em primeiro lugar, deve-se definir o argumento ano_base
que indica o último ano do histórico com dados disponíveis. Esse argumento está relacionado especialmente com a importação da base de dados.
Na sequência, um argumento essencial para a execução da projeção é a definição das premissas regulatórias. Ou seja, qual o modelo de compensação dos créditos de energia gerada, quando haverá mudanças no modelo, se haverá tarifas binômias para consumidores de baixa tensão, etc. Essas premissas são definidas através de um arquivo .xlsx
. Um exemplo de entrada é apresentado a seguir, a partir de um arquivo que é instalado junto com o pacote. No entanto, o usuário pode carregar um arquivo similar a partir de suas premissas.
<-
premissas_regulatorias ::read_xlsx(system.file("dados_premissas/2021/premissas_reg.xlsx",
readxlpackage = "epe4md"))
print(premissas_regulatorias)
#> # A tibble: 17 x 5
#> ano alternativa p_transicao binomia demanda_g
#> <dbl> <dbl> <dbl> <chr> <chr>
#> 1 2021 0 1 FALSE FALSE
#> 2 2022 0 1 FALSE FALSE
#> 3 2023 1 0.15 FALSE TRUE
#> 4 2024 1 0.3 FALSE TRUE
#> 5 2025 1 0.45 FALSE TRUE
#> 6 2026 1 0.6 FALSE TRUE
#> 7 2027 1 0.75 FALSE TRUE
#> 8 2028 1 0.9 FALSE TRUE
#> 9 2029 1 1 FALSE TRUE
#> 10 2030 1 1 FALSE TRUE
#> 11 2031 1 1 FALSE TRUE
#> 12 2032 1 1 FALSE TRUE
#> 13 2033 1 1 FALSE TRUE
#> 14 2034 1 1 FALSE TRUE
#> 15 2035 1 1 FALSE TRUE
#> 16 2036 1 1 FALSE TRUE
#> 17 2037 1 1 FALSE TRUE
As variáveis da tabela são explicadas a seguir:
Valor entre 0 e 5 que representa a forma de compensação da parcela da geração injetada na rede.
A figura a seguir ilustra as alternativas de compensação.
Representa o percentual da alternativa anterior a ser pago pelo consumidor. Varia de 0 a 1, sendo 1 = 100%. Esse parâmetro permite um escalonamento da cobrança.
Representa a cobrança ou não de uma tarifa binômia na baixa tensão, em que as componentes TUSD Distribuição e TUSD Transmissão passariam a ser cobradas de forma fixa, não sendo passíveis de compensação. Pode ser TRUE
ou FALSE
.
Representa a cobrança de TUSDg para a demanda de consumidores do grupo A. Caso seja FALSE
, é considerada a cobrança da TUSD consumo.
A função epe4md_calcula
possui outros argumentos pré-definidos, que podem ser alterados caso seja de interesse do usuário. A seguir, por exemplo, iremos especificar o horizonte desejado da projeção como sendo 2035. Caso não fosse atribuído valor para esse argumento da função, o resultado iria até 2050. Para mais informações, verificar a documentação da função.
<- epe4md_calcula(ano_base = 2021,
resultado premissas_reg = premissas_regulatorias,
ano_max_resultado = 2035)
A saída da função traz um data frame com a projeção do número de adotantes, da capacidade instalada e da geração de energia. Os resultados estão em base mensal.
# Exemplo de resultado para o estado do RJ
<- resultado %>%
resumo_potencia_rj filter(uf == "RJ") %>%
group_by(ano) %>%
summarise(adotantes_ano = sum(adotantes_mes),
capacidade_ano_mw = sum(pot_mes_mw)) %>%
ungroup() %>%
mutate(adotantes_acum = cumsum(adotantes_ano),
capacidade_acum_mw = round(cumsum(capacidade_ano_mw))) %>%
select(ano, adotantes_acum, capacidade_acum_mw) %>%
print()
#> # A tibble: 23 x 3
#> ano adotantes_acum capacidade_acum_mw
#> <dbl> <dbl> <dbl>
#> 1 2013 8 0
#> 2 2014 38 1
#> 3 2015 205 2
#> 4 2016 764 5
#> 5 2017 1884 12
#> 6 2018 3998 31
#> 7 2019 11217 91
#> 8 2020 23186 204
#> 9 2021 50288 407
#> 10 2022 87506 662
#> # ... with 13 more rows
O usuário pode explorar esses resultados da forma como achar melhor, embora existam algumas funções no pacote que resumam os resultados em nível nacional.
<- epe4md_sumariza_resultados(resultado)
resumo_potencia
#Resultado de capacidade instalada, em GW.
print(resumo_potencia)
#> # A tibble: 23 x 5
#> ano pot_ano geracao_gwh pot_acum geracao_mwmed
#> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 2013 0.00206 1.15 0.00206 0.131
#> 2 2014 0.00274 5.44 0.00480 0.621
#> 3 2015 0.0166 23.0 0.0214 2.62
#> 4 2016 0.0640 116. 0.0854 13.3
#> 5 2017 0.157 333. 0.243 38.0
#> 6 2018 0.433 861. 0.676 98.3
#> 7 2019 1.60 2281. 2.28 260.
#> 8 2020 2.89 5778. 5.17 660.
#> 9 2021 4.58 10883. 9.75 1242.
#> 10 2022 3.62 17141. 13.4 1957.
#> # ... with 13 more rows
epe4md_graf_pot_acum(dados = resultado)
Projeção de capacidade instalada de MMGD
epe4md_graf_pot_segmento(dados = resultado)
Projeção de capacidade instalada de MMGD por segmento
epe4md_graf_geracao_mes(dados = resultado)
Projeção de geração mensal de MMGD