Professional Documents
Culture Documents
Moti#ao
A rea de Modelagem e Simulao Computacional est cada vez mais sendo utilizada nos diferentes campos do saber Isto deve-se possibilidade de: studar sistemas reais de maneira apro!imada" criando-se modelos matemticos #ue os representem $ais modelos so implementados em simula%es computacionais" #ue so e!ecutadas visando obter um mel&or entendimento do sistema real
Moti#ao
'esta forma" a Modelagem e Simulao Computacional configuram-se como uma poderosa ferramenta para: - (bservar comportamentos - testar teorias e &ip)teses - predizer comportamentos e a%es futuras - ***
$%&eti#os
+esta aula iremos: ,embrar os principais conceitos te)ricos da rea de Modelagem e Simulao Computacional $rabal&ar com simula%es simples no software Scilab$estar &ip)teses e analisar os resultados" em simula%es computacionais
'efinio de sistema
( termo sistema vem do grego snistnai e significa .fazer ficar /unto0* 1m sistema 2: 1m con/unto de elementos interconectados #ue interagem entre si um sistema e seus elementos esto inseridos em um ambiente visando alcanar um objetivo em comum procurando formar um todo organizado
Como e!emplo temse um e!perimento real de crash-test realizado em um ve7culo da 9eneral Motors
m muitas situa%es 2 necessrio construir um modelo #ue represente parcialmente o sistema realizar e!perimento com este modelo 'esta forma" 2 poss7vel estudar o sistema real de maneira indireta" dei!ando-o inalterado
+ipos de modelo
10
3 duas formas de se construir o modelo de um sistema: ou se faz um modelo f7sico ou se faz um modelo matemtico
11
12
'efinio de modelo
13
1m modelo 2 uma representao parcial de um ob/eto" sistema ou ideia 1m ponto importante na construo de um modelo 2 a definio de #uais e como simplifica%es so introduzidas Considere o sistema real de uma multido em p<nico
14
15
Atividade 1
)stimando o #alor de P.
16
Sabemos #ue o valor de :I 2 um valor da constante igual a =">?>@ABC@=@*** 3 diversos m2todos #ue nos permitem calcular o valor de :I de maneira relativamente simples 1m destes m2todos e o Mtodo de Monte Carlo" #ue se baseia nas propriedades dos nDmeros aleat)rios
)stimando o #alor de P.
( m2todo de Monte Carlo usa as propriedades dos nDmeros aleat)rios para calcular propriedades de interesse
17
1ma distribuio de nDmeros aleat)rios pode ser definida" de maneira simples" como um con/unto de nDmeros" no #ual nen&um nDmero tem maior c&ance de aparecer do #ue outro
)stimando o #alor de P.
Sabemos #ue a rea de uma circunfer4ncia de raio r 2 dada por: Sabemos #ue a rea de um #uadrado de lado l 2 dada pela e#uao a seguir: Agora" considere uma situao na #ual temos um #uadrado com uma circunfer4ncia inscrita
18
Se a circunfer4ncia tem um di<metro de 2r" sabemos #ue a rea do #uadrado ser dada por:
)stimando o #alor de P.
19
+este ponto" se calcularmos a razo entre a rea da circunfer4ncia e a rea do #uadrado" teremos a e#uao:
5earran/ando os termos e isolando :I do lado es#uerdo da e#uao teremos a e#uao a seguir" #ue usaremos para calcular o valor da constante :I
)stimando o #alor de P.
20
E poss7vel saber o valor de :I" bastando para isso calcular a razo entre a rea da circunfer4ncia e a rea do #uadrado" e multiplicar esta razo por ? Contudo" para sabermos a rea da circunfer4ncia" precisamos do valor de :I
)stimando o #alor de P.
21
A#ui usaremos o M2todo de Monte Carlo para estimar a relao entre as reas da circunfer4ncia e do #uadrado :ara tornar os clculos mais simples" vamos assumir #ue o #uadrado ten&a um lado de taman&o l F 2r F 1 ,ogo" teremos #ue o raio da circunfer4ncia ser r F
22
)stimando o #alor de P.
23
1tilizando um computador" sortearemos agora alguns pares de nDmeros aleat)rios no intervalo GH">I Cada par de nDmeros representar as coordenadas ! e J de um ponto #ue pertence rea do #uadrado
:odemos estimar as reas do #uadrado e do c7rculo" simplesmente contando quantos pontos caem sobre cada umas das figurasK
)stimando o #alor de P.
24
'adas as coordenadas L!"JM de um ponto A #ual#uer" oriundas de um sorteio aleat)rio :odemos saber se o ponto est dentro ou fora da circunfer4ncia" calculando a dist<ncia entre A e o ponto central da circunfer4ncia C" com coordenadas !FH"@ e JFH"@
)stimando o #alor de P.
'esta forma" se sortearmos as coordenadas !FH"N e JFH"O@" por e!emplo" teremos
25
Como o valor obtido 2 menor do #ue o valor do raio da circunfer4ncia" 2 poss7vel dizer #ue o ponto est dentro da circunfer4ncia e dentro do #uadrado Caso o valor da dist<ncia d obtida se/a maior #ue o raio" o ponto estar fora da circunfer4ncia" por2m dentro do #uadrado
)stimando o #alor de P.
26
Se cumprirmos as duas tarefas: iM sortear muitos nDmeros aleat)rios" de forma a gerar uma amostragem suficiente de pontos dispersos randomicamente no #uadrado iiM decidir se cada ponto se encontra dentro ou fora da circunfer4ncia :odemos contar o nDmero + de pontos sorteados e o nDmero de pontos #ue esto dentro da circunfer4ncia Com estas duas informa%es finalmente calculamos :I atrav2s da e#uao
27
P. usando Scila%
28
P. usando Scila%
+o Sci+ote abra o script PI.sce 5epositorio P aula-HN P :I*sce m seguida" e!ecute os comandos do script selecionando Executar -> Arquivo com Eco (u pressionando Ctrl+L
29
P. usando Scila%
Qual foi o valor de :I calculado; Compare o seu resultado com os dos colegas ( #ue acontece se voc4 repetir a simulao @ vezes;
30
!perimente agora aumentar a amostragem de dados" aumentando o valor de + para" por e!emplo" >*HHH*HHH*HHH* Qual foi o valor de :I calculado com a amostragem maior; Rustifi#ue sua resposta
P. usando /a#a
double i, x , , r ! ", #oi$ts ! 1E%2& 'or(i ! "& i)#oi$ts& i++* + x !ra$dom(*& !ra$dom(*& i' (sqrt(x,x+ , *)1* r++& - #ri$t'(.Pi ! /.10'1, 2,r3#oi$ts*&
4a5da6
%.1210787819
32
/ogo da #ida
( Rogo da Sida foi desenvolvido pelo matemtico Ro&n ConTaJ" em >AOH ConTaJ e!plorava a id2ia do construtor universal" de forma #ue uma m#uina &ipot2tica pudesse construir c)pias de si mesma ( Rogo da Sida 2 um autUmato celular #ue se desenvolve em um espao de duas dimens%es" dividido em c2lulas #uadrangulares E governado por regras simples #ue definem nascimentos" mortes e sobreviv4ncias de c2lulas
33
/ogo da #ida
Cada uma das c2lulas do universo bidimensional pode estar em dois estados poss7veis: - viva Lcor brancaM - morta Lcor pretaM Se uma c2lula sobrevive" morre ou nasce ser determinado pelo nDmero de vizin&os vivos ao redor de uma c2lula
34
/ogo da #ida
A seguir tem-se dois passos consecutivos do Rogo da Sida" e!ecutado no softTare ScilabA cor preta indica #ue a c2lula est morta" e a cor branca indica #ue a c2lula est viva
35
auto-organizao
36
obreviv!ncia: Se a #uantidade de vizin&os vivos 2 igual a dois LHBM ou tr4s LH=M" a c2lula sobrevive "ascimento: Se a c2lula atual est morta" mas tem tr4s LH=M vizin&os vivos" ento ela se torna viva Morte: Se a #uantidade de vizin&os vivos 2 menor #ue dois LsolidoM ou maior #ue tr4s LsuperpopulaoM" a c2lula morre
Padr0es de comportamento
'urante a e!ecuo do Rogo da Sida as c2lulas organizam-se seguindo alguns padr%es" formando ob/etos visuais
37
!istem vrios tipos de padr%es detectados" dentre eles: $ipo I: estveis 8 still-alive $ipo II: oscilat)rios $ipo III: spaces&ips
&ttp:88to-campos*planetacli!*pt8fractal8celular8Sida*&tml
Padro est-#el
38
(s ob/etos do padro $ipo I LestveisM so a#ueles #ue no mudam" #ue so estticos (s ob/etos estveis ocorrem #uando nen&uma c2lula viva tende a morrer" e nen&uma c2lula tende a nascer Como e!emplo tem-se os seguintes ob/etos: blocV" bee&ive" boat" s&ip" loaf
(b/eto WlocV
Padro est-#el
39
(b/eto Wee&ive
(b/eto S&ip
(b/eto Woat
Padro est-#el
40
(b/eto Spiral
(b/eto 3at
(b/eto :ond
Padro oscilat1rio
41
(s ob/etos oscilat)rios so formas #ue mudam da etapa em etapa at2 atingir um ciclo constante ( tipo mais simples 2 o oscilador de dois per7odos" ou a#ueles #ue se repetem ap)s duas etapas
(b/eto WlinVer
(b/eto $oad
Padro spaces2ip
:adr%es #ue se repetem depois de uma determinada se#u4ncia e retornam a seus estado original" e se transformam no espao
42
(b/eto 9lider
Ati#idade
Crie uma matriz binria , Lapenas zeros e unsM de dimenso +!+ Implemente as regras usando B laos #ue devem varrer cada pi!el:
'or i!16: 'or <!16: / L2!$ovo L e$d e$d
43
A matriz pode ser criada usado o comando L!rou$d(ra$d(:,:** :ara ver a matriz" use o comando ;at#lot(L,%"*onde =H corresponde a cor do >
:ara cadaelemento ,Li"/M analisado" deve ser considerada a soma dos N vizin&os pro!imos: A W C ' 6 ,Li"/M 9 3
Isto #uer dizer" soma! A+=+C+>+E+?+@+A (nde: A!L(cima,esquerda*& =!L(cima,<*& >!L(i,esquerda*&... A!L(baixo,direita*" etc* Considere referencial c7clico" ou se/a: cima!i-1 ou, caso i!!1, cima!: (Bltima li$Ca* baixo!i+1 ou, caso i!!:, baixo!1 esquerda!<-1 ou, caso <!!1, esquerda!: (Blt. col.* direita!<+1 ou, caso <!!:, direita!1