• Nenhum resultado encontrado

Basic Coding Exercise Guia para exercício de simulação no Pyplan. Fevereiro 2020

N/A
N/A
Protected

Academic year: 2021

Share "Basic Coding Exercise Guia para exercício de simulação no Pyplan. Fevereiro 2020"

Copied!
12
0
0

Texto

(1)

1

Basic Coding Exercise

Guia para exercício de simulação no Pyplan

(2)

Basic Coding Exercise

2

1.

Introdução

O documento a seguir contém o tutorial para executar o exercício chamado Basic Coding Exercise disponível em https://my.pyplan.com/ entre os tutoriais.

2.

Objetivo e descrição do exercício

• Usar os comandos básicos de modelagem no Pyplan. • Fortalecer os conceitos de Pyplan.

Ele trabalhará com o exemplo de uma empresa de gás, modelando sua demanda, custos e margem bruta por um período de 6 anos.

Em relação à demanda, a que é simulada com um comportamento de sazonalidade, serão modeladas quatro categorias de clientes: industrial, residencial, comercial e GNG. Como as duas primeiras categorias são de maior relevância, o trabalho começará apenas com elas e depois incorporará as demais no relatório.

(3)

Basic Coding Exercise

3 É simulado que a empresa possui um percentual de participação de mercado que cresce pelos dois anos primeiros anos e se estabiliza.

Com relação aos custos, o serão imputados os custos unitários e os custos totais serão calculados. A partir dos custos unitários médios e considerando a mark up que a empresa aplica de acordo com a categoria, as taxas serão calculadas e, em seguida, obtidas as receitas.

Por fim, será determinada a margem bruta para as principais categorias de clientes.

Na segunda parte do exercício, as demais categorias de clientes serão incorporadas para obter receita total e exemplificar a criação de relatórios.

A imagem a seguir corresponde ao modelo final que pode ser consultado entre os tutoriais disponíveis sob o título 07- Basic Coding Exercise Solved.

(4)

Basic Coding Exercise

4

3.

Início do exercício

Para iniciar a modelagem, você deve copiar para o seu espaço pessoal a pasta chamada 07- Basic Coding

Exercise, localizada entre os tutoriais disponíveis em Pyplan.

Para isso, você deve selecionar a pasta acessando o file manager de Pyplan e pressionar o botão “copy to my workspace”

Na sequência, você deve abrir, na sua área de trabalho pessoal, o modelo em branco chamado 07- Basic

(5)

Basic Coding Exercise

5 Este modelo contém não apenas as caixas de texto que ajudarão a organizar, mas também os índices

"time" e "totaltime", que devem ser usados posteriormente, já definidos (eles estão no módulo "Public

Variables", dentro de "Novix Library").

Como referência, é possível sempre verificar o modelo chamado 07- Exercício Básico de Codificação

Solved.ppl, onde o exercício final está localizado.

Lembrar da convenção de cores

Antes de iniciar o processo de modelagem, a convenção sobre a cor dos nós deve ser lembrada: os nós que contêm inputs devem ser coloridos em amarelo (código ffff4b), aqueles que indicam fórmulas ou cálculos do sistema azul (código 4cbcff), aqueles que representam um output do cor violeta (código

cb98ff) e os dos relatório de cor cinza (código cccccc). A cor dos índices é o standard (código 9999ff), que

pode ser incluído em um módulo, lembrando que sua cor é azul claro (código 9fc5e8).

O seguinte arquivo Excel contém os dados que serão necessários no modelo.

Basic exercise - Data for exercise in Pyplan.xlsx

4.

Projeção de demanda

Siga as etapas seguintes para executar a projeção de demanda:

a. Criar um índice para as diferentes categorias de clientes ("Industrial", "Residential") com o título

“Client Category”.

Como a convenção adotada é usar como primer caractere do ID a identificação característica do módulo (neste caso modelo) em que a lógica está localizada, ele deve ser colocado na frente do ID "ex" para indicar que ele começa a partir do modelo exercise (a mesma consideração deve ser tomada para o restante dos índices e nós). Além disso, como essas são categorias de demanda, é conveniente colocar o ID "dem" em primeiro lugar.

(6)

Basic Coding Exercise

6

Título: Client Category

Id: ex_dem_client_category • Cor: standard

b. A demanda volumétrica potencial será uma variável exógena do modelo cujo nó será chamado “Potential Volumetric Demand”. Para fazer isso, criar um nó com uma tabela contendo os índices

“Client Category” e “totaltime”. Copiar os dados encontrados no exercício Basic exercise - Data for exercise in Pyplan.xlsx .

Confira o vídeo a seguir no minuto 1.25 para ver como criar uma tabela.

Título: Potential Volumetric Demand

Id: ex_dem_potential_volumetric • Cor: amarelo

c. Gerar um nó com a informação de demanda volumétrica e o índice "time" (índice encontrado no local detalhado acima). Usar a função evatime () para isso.

Título: Volumetric Demand

Id: ex_dem_volumetric

Cor: azul

d. Criar um nó com a porcentagem de participação de mercado e chame-lo "%Market Share". Fazer uma tabela em "totaltime" (índice encontrado no local detalhado acima) e copiar os dados encontrados no arquivo Excel mencionado acima.

Título: % Market Share

Id: ex_dem_market_share

(7)

Basic Coding Exercise

7 e. Calcular a demanda projetada como o produto entre a demanda volumétrica e a % de

participação de mercado.

Dica: lembrar usar evatime para modificar o índice de totaltime da input % market share.

Título: Projected Demand

Id: ex_dem_projected

Cor: azul

Parabéns, você criou sua primeira previsão de demanda!

5.

Projeção de custos de fornecimento

A existência de dois contratos de fornecimento com preços diferenciados será simulada e um custo unitário médio será calculado.

Siga as etapas abaixo para executar a projeção de demanda:

a. Fazer uma tabela no totaltime com o valor diário contratado para o contrato A. Copiar os dados do arquivo Excel.

• Título: DQC A Contract • Id: ex_dqc_a_contract

• Cor: amarelo

b. Fazer um índice com as categorias "A Contract" e "Spot", chame-o de "Contract type". Lembrar colocar "cos" antes do índice, bem como para as categorias de clientes foi usado "dem".

• Título: Contract type • Id: ex_cos_contract_type

• Cor: standard

c. Gerar um nó para a quantidade de contrato A, que terá um máximo na demanda total projetada ou na quantidade contratada. Chame esse nó "A Contract". Usar a função condicional xr.where

().

Lembre-se de que, para calcular a demanda total projetada, é necessário somar as categorias de clientes da demanda projetada calculada anteriormente; para isso, use a função dataArray.sum

(8)

Basic Coding Exercise

8

• Título: A Contract • Id: ex_a_contract

• Cor: azul

d. Calcular a quantidade de spot como a diferença entre a demanda total projetada e o contrato A. Para fazer isso, use a função xr.ufuncs.maximum ().

Título: Spot

Id: ex_spot

• Cor: azul

e. Os custos unitários do contrato e do spot serão exógenos. Fazer uma tabela com os índices "Contract Type" e "totaltime".

Título: Unitary Cost per Contract

Id: ex_unitary_cost_per_contract

• Cor: azul

f. Calcular o custo total de gás em um novo nó. Para isso, usar a função evatime() com os custos unitários que foram alocados no totaltime. Usar a função subscript() com custos unitários para poder fabricar os produtos, pois os valores de cada fonte de fornecimento virão de nós separados.

Título: Total Cost

Id: ex_total_cost

Cor: azul

g. Calcular o custo unitário total do gás, fazendo a relação entre o custo total e a demanda total projetada.

Dica: usar a função .sum para somar o índice ex_dem_client_category

Título: Total Unit Cost

Id: ex_total_unit_cost

Cor: azul

6.

Margem Bruta

(9)

Basic Coding Exercise

9 a. Criar uma tabela com a % de markup para cada categoria de clientes. Uma % constante sobre os

custos é assumida.

Usar a função create_dataarray() e o índice "Client Category". Copiar os dados encontrados no arquivo Excel.

Título: % of Markup

Id: ex_margin

Cor: amarelo

b. A taxa será igual ao produto entre o custo unitário e (1+% de markup).

Título: Tariff

Id: ex_tariff

Cor: azul

c. A receitas serão iguais à taxa multiplicada pela demanda.

Título: Revenue

Id: ex_revenue

Cor: azul

d. A margem bruta será igual à receita menos o custo total. Para somar o índice da receita, usar a função dataArray.sum().

Título: Gross Margin

Id: ex_gross_margin

Cor: violeta

(10)

Basic Coding Exercise

10

7.

Relatório

Muitas vezes, é útil criar visualizações diferentes da informação calculada no modelo para apresentá-la de maneira mais simples e organizada. Esses nós costumam ser chamados de "relatórios".

Siga as etapas abaixo para criar o relatório proposto.

a. Criar um índice com as demais categorias de clientes: "GNG" e "comercial".

Título: Exogen Client Category

Id: ex_dem_exogen_client_category

Cor: standard

b. Gerar uma tabela com as receitas GNC e comercial usando os índices "totaltime" e "Exogen Client Category". Preencher com a informação de receitas disponível no arquivo Excel.

Título: Revenue GNG Commercial

Id: rep_revenue_gng_commercial

Cor: standard

c. Calcular as receitas de todas as categorias. Para fazer isso:

I. Criar um índice contendo todas as categorias usando a função concat_index().

Título: Full Client Category

Id: ex_dem_full_client_category

Cor: standard

II. Criar uma tabela com a renda de todas as categorias usando a função change_index(). Anexar .fillna(0) após a função para que os valores null sejam substituídos por zero e, em seguida, a tabela possa ser formada. Caso contrário, uma tabela com todos os elementos null será obtida.

Título: Full Revenue

Id: rep_revenue_full

Cor: cinza

d. Incluir os nós resultantes do relatório (exceto o índice) em um módulo chamado "Report".

Título: Report

Id: ex_report

(11)

Basic Coding Exercise

11

Dica: Criar o módulo e depois arrastar os nós até o módulo "baile" para que eles sejam contidos por ele.

A imagem a seguir mostra os nós dentro do módulo.

8.

Visualização

Pyplan possui uma poderosa camada de visualização que permite consumir a informação graficamente. É possível acessar essa camada fazendo click no ícone a seguir para criar suas próprias interfaces:

Para criar sua interface, siga as etapas abaixo.

a. Criar uma interface nova y chame-a “Full Revenue Interface”. I. Procurar o nó “Full Revenue” fazendo click em Wizard.

(12)

Basic Coding Exercise

12 II. Dar formato condicional para os valores menores que 100 (from:0, to: 100) colorindo o

fundo em vermelho.

III. Adicionar um gráfico que apresente a evolução da receita total por categoria de cliente e por ano, procurando esse nó com o Wizard após adicionar um novo widget.

IV. Adicionar o índice “Full Client Category” fazendo click em Wizard. Com o mesmo procedimento, procurar o índice “Time” e dê o formato Range.

Dica

: depois de ter todos os elementos da sua interface, reserve o tempo necessário para acomodar os diferentes objetos.

A imagem a seguir apresenta a interface desejada:

Dica 2:

você pode ver a criação passo a passo dessa interface no vídeo a seguir.

Parabéns acabou de criar sua interface!

Agora você pode experimentar como a tabela muda ao selecionar determinados clientes ou

intervalo de meses.

Referências

Documentos relacionados

• A falta de registro do imóvel no CAR gera multa, impossibilidade de contar Áreas de Preservação Permanente (APP) na Reserva Legal (RL), restrição ao crédito agrícola em 2018

• Não garantir condições dignas e saudáveis para os trabalhadores pode gerar graves consequências para o empregador, inclusive ser enquadrado como condições análogas ao

• A falta de registro do imóvel no CAR gera multa, impossibilidade de contar Áreas de Preservação Permanente (APP) na Reserva Legal (RL), restrição ao crédito agrícola em 2018

▪ Quanto a solução para os conflitos entre os pais e a escola, houve um grande número de pais que não responderam, o que pode nos revelar que os pais não fizeram

Avaliação do impacto do processo de envelhecimento sobre a capacidade funcional de adultos mais velhos fisicamente ativos.. ConScientiae

Tais restrições, sendo convencionais, operam efeitos entre o loteador e os que vão construir no bairro, enquanto não colidentes com a legislação urbanística ordenadora da cidade e

Logo abaixo está um exemplo de tela do utilitário COMIRQ para uma placa Exprecium instalada utilizando a IRQ 5 tendo seu “batimento cardíaco” ou “Heartbeat” ligado pelo

CONCLUSÕES E PROPOSTAS PARA TRABALHOS FUTUROS Nesta dissertação, foi apresentada uma avaliação do desempenho das funções de proteção aplicadas em transformadores de potência,