26
MODELAGEM E SIMULAÇÃODE PROCESSOS Aula 1 Laboratório de Modelagem e Simulação Pedro Leite de Santana (Teoria) Rogério Luz Pagano (Laboratório) PARTE I - INTRODUÇÃO À PROGRAMAÇÃO

MODELAGEM E SIMULAÇÃODE PROCESSOS

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: MODELAGEM E SIMULAÇÃODE PROCESSOS

MODELAGEM E

SIMULAÇÃODE PROCESSOS

Aula 1 – Laboratório de

Modelagem e Simulação

Pedro Leite de Santana (Teoria)

Rogério Luz Pagano (Laboratório)

PARTE I - INTRODUÇÃO À PROGRAMAÇÃO

Page 2: MODELAGEM E SIMULAÇÃODE PROCESSOS

INTRODUÇÃO À PROGRAMAÇÃO

Lógica de Programação

Lógica de programação é a técnica de encadear

pensamentos (instruções) para atingir determinado

objetivo.

Instruções Instruções são regras ou normas

definidas para a realização ou

emprego de algo. Em informática,

é o que indica a um computador

uma ação elementar a executar.

Page 3: MODELAGEM E SIMULAÇÃODE PROCESSOS

INTRODUÇÃO À PROGRAMAÇÃO

Algoritmo

[Do lat. med. algorismos, algorithmos, 'algarismo', por infl. do gr. arithmós, 'número'.]

1. Matemática. Processo de cálculo, ou de

resolução de um grupo de problemas semelhantes,

em que se estipulam, com generalidade e sem

restrições, regras formais para a obtenção do

resultado, ou da solução do problema.

2. Informática. Conjunto de regras e operações

bem definidas e ordenadas, destinadas à solução de

um problema, ou de uma classe de problemas, em

um número finito de etapas.

[AURÉLIO]

Page 4: MODELAGEM E SIMULAÇÃODE PROCESSOS

INTRODUÇÃO À PROGRAMAÇÃO

Exemplos de Algoritmos

instruções para se utilizar um aparelho eletrodoméstico;

uma receita para preparo de algum prato;

guia de preenchimento para declaração do imposto de renda;

a regra para determinação de máximos e mínimos de funções por

derivadas sucessivas;

a maneira como as contas de água, luz e telefone são calculadas

mensalmente; etc.

Page 5: MODELAGEM E SIMULAÇÃODE PROCESSOS

INTRODUÇÃO À PROGRAMAÇÃO

CaracterísticasTodo algoritmo deve apresentar algumas características básicas:

ter fim

não dar margem à dupla interpretação (não ser ambíguo)

capacidade de receber dado(s) de entrada

poder gerar informações de saída para o mundo externo ao

do ambiente do algoritmo

ser efetivo (todas as etapas especificadas no algoritmo devem

ser alcançáveis em um tempo finito)

Page 6: MODELAGEM E SIMULAÇÃODE PROCESSOS

INTRODUÇÃO À PROGRAMAÇÃO

Formas de Apresentação

DESCRIÇÃO NARRATIVA

EXEMPLO

Receita de Bolo:

Providencie manteiga, ovos, 2 Kg de massa, etc.

Misture os ingredientes

Despeje a mistura na fôrma de bolo

Leve a fôrma ao forno

Espere 20 minutos

Retire a fôrma do forno

Deixe esfriar

Prove

VANTAGENS:

o português é bastante conhecido por nós;

DESVANTAGENS:

imprecisão;

pouca confiabilidade (a imprecisão acarreta a desconfiança);

extensão (normalmente, escreve-se muito para dizer pouca coisa).

Page 7: MODELAGEM E SIMULAÇÃODE PROCESSOS

INTRODUÇÃO À PROGRAMAÇÃO

FLUXOGRAMA

EXEMPLO

VANTAGENS:

Uma das ferramentas mais conhecidas

Figuras dizem muito mais que palavras

Padrão mundial

DESVANTAGENS:

Pouca atenção aos dados, não oferecendo recursos para descrevê-los ou

representá-los, além disso, complica-se à medida que o algoritmo cresce.

Page 8: MODELAGEM E SIMULAÇÃODE PROCESSOS

INTRODUÇÃO À PROGRAMAÇÃO

LINGUAGEM ALGORITMICA

EXEMPLO

VANTAGENS:

Usa o português como base

Pode-se definir quais e como os dados vão estar estruturados

Passagem quase imediata do algoritmo para uma linguagem de programação

qualquer

DESVANTAGENS:

Exige a definição de uma linguagem não real para trabalho

Não padronizado

Page 9: MODELAGEM E SIMULAÇÃODE PROCESSOS

INTRODUÇÃO À PROGRAMAÇÃO

PSEUDOCÓDIGO

EXEMPLO

TESTE DE MESA

EXEMPLO

X = 5 Y = 9

SOMA = 5 + 9

ESCREVA SOMA = 14

Page 10: MODELAGEM E SIMULAÇÃODE PROCESSOS

INTRODUÇÃO À PROGRAMAÇÃO

ALGORITMOS

EXEMPLOS

Page 11: MODELAGEM E SIMULAÇÃODE PROCESSOS

INTRODUÇÃO À PROGRAMAÇÃO

Linguagens de Programação:

Compilador Fortran Gfortran 95 (free software) – FORCE 2.0

MATLAB Scilab 5.0 (free software)

Page 12: MODELAGEM E SIMULAÇÃODE PROCESSOS

Software livre para cálculo numérico e simulação de sistemas físicos.

Usado nas áreas:

1. Física

2. Sistemas complexos

3. Processamento de imagens

4. Controle e processamento de sinais

5. Automação industrial

6. Controle de processos

7. Computação gráfica

8. Matemática

9. Modelagem biológica

10. ...

Scilab

INTRODUÇÃO À PROGRAMAÇÃO

Page 13: MODELAGEM E SIMULAÇÃODE PROCESSOS

• Criado em 1989 por um grupo de pesquisadores da INRIA e da ENPC.

• Disponível como software livre desde 1994 pelo site http://www.scilab.org

• Consórcio Scilab desde 2003 mantido por diversas empresas.

• Objetivos do consórcio:

• organizar cooperação entre os desenvolvedores

• obter recursos para manutenção da equipe

• garantir suporte aos usuários

• Sistemas Operacionais:

• Linux

• Windows

• Solaris

• Unix

Scilab

INTRODUÇÃO À PROGRAMAÇÃO

Page 14: MODELAGEM E SIMULAÇÃODE PROCESSOS

Prompt de comando

Help

Editor

Scilab

INTRODUÇÃO À PROGRAMAÇÃO

Page 15: MODELAGEM E SIMULAÇÃODE PROCESSOS

Constantes especiais

• %e: constante neperiana

• %i: raiz quadrada de -1, número imaginário

%pi: constante p

• %eps: máximo valor tal que 1+%eps=1

• %inf: infinito

• %nan: não é um número

• %t: verdadeiro

• %f: falso

Scilab

INTRODUÇÃO À PROGRAMAÇÃO

Page 16: MODELAGEM E SIMULAÇÃODE PROCESSOS

INTRODUÇÃO À PROGRAMAÇÃO

Scilab Fortran

Page 17: MODELAGEM E SIMULAÇÃODE PROCESSOS

INTRODUÇÃO À PROGRAMAÇÃO

Scilab

Page 18: MODELAGEM E SIMULAÇÃODE PROCESSOS

INTRODUÇÃO À PROGRAMAÇÃO

Gráficos no Scilab

Page 19: MODELAGEM E SIMULAÇÃODE PROCESSOS

• Para gerar gráficos bidimensionais:

• plot2d(x,y,style)

• Onde x e y são vetores.

• Exemplo:

• x = [-2*%pi:0.1:2*%pi];

• y = sin(x);

• plot2d(x,y);

Style: tipo de linha do gráfico. Valores inteiros positivos definem linhas

contínuas, valores negativos definem linhas tracejadas.

• plot2d(x,y,-1);

• plot2d(x,y,2);

INTRODUÇÃO À PROGRAMAÇÃO

Page 20: MODELAGEM E SIMULAÇÃODE PROCESSOS

• y pode ser uma matriz, sendo que o número de linhas

de y deve ser igual ao número de elementos de x

• Exemplo:

x = [0:0.1:2*%pi];

y = [sin(x)‟ cos(x)‟];

plot2d(x,y);

INTRODUÇÃO À PROGRAMAÇÃO

Page 21: MODELAGEM E SIMULAÇÃODE PROCESSOS

• x e y podem ser matrizes de mesma dimensão

• Exemplo:

t = [-5:0.1:5];

x = [t‟ t‟];

y = [(t^2)‟ (t^3)‟];

plot2d(x,y);

INTRODUÇÃO À PROGRAMAÇÃO

Page 22: MODELAGEM E SIMULAÇÃODE PROCESSOS

• Comandos básicos:

• clf: limpa a tela, evitando que o próximo gráfico se

sobreponha ao anterior:

• Exemplo:

• y = sin(x);

• plot2d(x,y);

• z = cos(x);

• plot2d(x,z);

mas

• clf;plot2d(x,y);

INTRODUÇÃO À PROGRAMAÇÃO

Page 23: MODELAGEM E SIMULAÇÃODE PROCESSOS

• Comandos básicos:

• xtitle („titulo‟): apresenta o título do gráfico

• legend(„legenda1‟, „legenda2‟,…)

• Exemplo:

• t = 0:0.1:10;

• S = 5 + 10*t + 0.5*2*t.*t;

• V = 10 + 2*t;

• plot2d(t,S,-2);

• plot2d(t,V,-4);

• xtitle(„Cinematica‟);

• legend(„Posição‟, „Velocidade‟);

INTRODUÇÃO À PROGRAMAÇÃO

Page 24: MODELAGEM E SIMULAÇÃODE PROCESSOS

• Comandos básicos:

• subplot: divide um janela de um gráfico em sub-

graficos

• Exemplo:subplot(221)

plot2d(x,sin(x))

subplot(222)

plot2d(x,cos(x))

subplot(223)

plot2d(x,tan(x))

subplot(224)

plot2d(x,sin(x).*cos(x))

INTRODUÇÃO À PROGRAMAÇÃO

Page 25: MODELAGEM E SIMULAÇÃODE PROCESSOS

• Comandos básicos:

• logflag: define escala linear ou logarítmica

• “nn” – linear x linear

• “nl” – linear x logarítmica

• “ll” – logarítmica x logarítmica

Exemplo:

x =1:100;

subplot(1,2,1);

plot2d(x,y, logflag='nn');

xtitle(„Escala linear‟);

subplot(1,2,2);

plot2d(x,y, logflag='ll');

xtitle(„Escala log-log‟);

INTRODUÇÃO À PROGRAMAÇÃO

Page 26: MODELAGEM E SIMULAÇÃODE PROCESSOS

• Gráficos tridimensionais

• mesh: gera gráficos em 3D

• Exemplo:[X,Y]=meshgrid(-5:0.1:5,-4:0.1:4);

Z=X.^2-Y.^2;

xtitle('z=x2-y ^2');

mesh(X,Y,Z);

INTRODUÇÃO À PROGRAMAÇÃO