Você está na página 1de 41

BC-0005

Bases Computacionais da Ciência

Aula 01 –
Fundamentos de computação e
Representação gráfica de funções

Prof. Nunzio Marco Torrisi

2Q-2016
Fundamentos de computação
Computação em todos os lugares

Cada vez mais, diversas áreas do conhecimento utilizam-


se dos conceitos de Computação.

De fato, atualmente é praticamente impensável fazer


pesquisa científica sem o uso da Computação:
Presença de instrumentos computadorizados coletando
dados o tempo todo em todo lugar.

Geração de dados científicos em volumes que não


podem mais ser entendidos apenas com cálculos simples.
O computador

Um sistema de computação é:
uma coleção de componentes que realizam operações
lógicas e aritméticas (transformação)
sobre um conjunto de dados (entrada) e fornecem uma
saída (os dados transformados)

Um computador é uma máquina capaz de executar


automaticamente alguma transformação no conjunto de
dados de entrada
O computador

Programa é uma sequência de ordens (comandos,


instruções) dadas a um computador que, a partir de dados
inseridos, obtêm um resultado que será disponibilizado por
algum dispositivo de saída
Modelo de Turing

A idéia de um dispositivo de computação


universal foi descrita, pela primeira vez, por
Alan Turing, em 1937
Turing propôs que toda a computação poderia
ser realizada por um tipo especial de máquina,
denominada Máquina de Turing

l
Computador Baseado no Modelo de Turing
Representação gráfica de funções
Modelando de fenômenos...

Em diferentes áreas da Ciência busca-se modelar


fenômenos por médio de funções matemáticas a fim de
reproduzir os comportamentos observados na natureza.
Dado um modelo, muitas vezes,
temos a necessidade de
visualizar o comportamento
do mesmo.

Gráficos de funções auxiliam o


entendimento dos
fenômenos.

Atractor de Lorenz - 1963


(efeito borboleta)
http://www.youtube.com/watch?v=GqlEG-XbAQY&feature=related
Modelando de fenômenos...

l
Emissão de CO2 na atmosfera

http://www.gapminder.org/world/#$majorMode=chart$is;shi=t;ly=2003;lb=f;il=t;fs=11;al=30;stl=t;st=t;nsl=t;se=t$wst;tts=C$ts;sp=5.59290322580644;ti=2008$zpv;v=0$inc_x;mmid=XCOORDS;iid=ti;by=ind$inc_y;m
mid=YCOORDS;iid=phAwcNAVuyj1NHPC9MyZ9SQ;by=ind$inc_s;uniValue=4.86;iid=phAwcNAVuyj0XOoBL_n5tAQ;by=universal$inc_c;uniValue=255;gid=CATID0;by=grp$map_x;scale=log;dataMin=1751;dataMax=
2008$map_y;scale=lin;dataMin=0;dataMax=7031277$cd;bd=0$inds=i44_t001899,,,,;i240_t001800,,,,;i101_t001858,,,,;i184_t001992,,,,;i110_t001950,,,,;i29_t001901,,,,;i102_t001889,,,,
Modelando de fenômenos...
l
Crescimento de população, ciência, ...
Função

O estudo de funções decorre da necessidade de:


Analisar fenômenos, visualizando o comportamento de
um sistema.
Interpretar interdependências, entendendo como uma
variável comporta-se com relação à outra.
Encontrar soluções de problemas.
Descrever regularidades.
Generalizar.
Definição de uma função

Uma função é uma regra segundo a qual, para cada


elemento x em um conjunto A corresponde um único
elemento y em um conjunto B.

O conjunto A é chamado domínio da função e o conjunto B


é o contra-domínio, ou imagem.
y = f(x)

A variação de y é o conjunto de todos os valores possíveis de


f(x) quando x varia em todo o domínio.
Exemplo

l
A dívida pública dos EUA (em bilhões de dólares) para
alguns anos encontra-se no gráfico a seguir:
l
Determine:
l
a) Variáveis envolvidas
l
b) Variável dependente
l
c) Variável independente
l
d) Domínio da função
l
e) Conjunto imagem
l
f) A variação da dívida entre
os anos de 1985 e 1987
l
g) A dívida permaneceu
constante em algum
período?
Representação de uma função

Uma função pode ser representada das seguintes formas:


Verbalmente (descrevendo-a com palavras)
Numericamente (através de tabela de valores)
Visualmente (através de gráficos)
Algebricamente (utilizando-se uma fórmula explícita)
Ferramentas de visualização

Existem diversas ferramentas para utilizadas em calculos


matemáticos avançados.
Matlab
Maple
Octave
Scilab
Rlab (r-project)
SciPy (python)
Fortran

Geralmente contam com bibliotecas de funções matemáticas


prontas e recursos avançados.
Scilab

É um software utilizado para resolução de problemas


numéricos. É gratuito e distribuído com código fonte.
Permite trabalhar com diversos objetos matemáticos
(matrizes, polinômios, equações, etc.)
Ambiente de programação que permite a criação de novas
funções/bibliotecas do usuário
Instale o Scilab no seu computador
Scilab

Prompt do Scilab é representado por uma seta -->


Scilab

A interação do usuário com o Scilab pode ocorrer de duas


formas distintas:
Na primeira forma, os comando são digitados diretamente
no prompt do Scilab
Ao ser pressionada a tecla Enter, os comandos digitados são
interpretados e imediatamente executados
O Scilab funciona como uma sofisticada calculadora

Na segunda forma, um conjunto de comandos é digitado


em um arquivo texto:
Este arquivo, em seguida, é levado para o ambiente Scilab e executado
Neste modo, o Scilab funciona como um ambiente de programação
Scilab

l
Digitando o comando:
l
estaremos criando uma variável real chamada x cujo valor
é igual a 2.

l
O ponto-e-vírgula ao final da instrução não é obrigatório.
l
Caso ele não seja colocado, a variável será apresentada
na tela:
Scilab

l
Veremos agora como, cada vez que mencionarmos o nome
de uma variável, estaremos na verdade utilizando o seu
conteúdo

l
Esta operação define y como sendo uma
variável com valor igual ao valor de x mais
cinco, ou seja, y terá um valor igual a 7

l
Neste caso, z será igual à multiplicação dos
valores guardados em x e y, ou seja, z será
igual a 14

l
Aqui, w será igual à divisão dos valores
guardados em z e x, ou seja, w
l
será igual a 7
Scilab

l
Além dos operadores acima, o Scilab possui várias funções
matemáticas que podem ser facilmente utilizadas, como
por exemplo:

l
A função exp() representa a
exponencial natural.
l
Ou seja,
l
exp(x) = ex e = 2,7182...
Scilab: Exercício 00

l
Vamos considerar a função:

-->x = [1,2,3,4,5,6]

-->y = x.^2

-->plot (x,y)
Scilab: Exercício 00

l
Vamos considerar a função:

-->x = [1,2,3,4,5,6]

-->y = x.^2

-->plot (x,y,'ro-')
Scilab: Exercício 00

l
Vamos considerar a função:

-->x = [-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6];

-->y = x.^2

-->plot (x,y,'bx-')

clf()  ← limpa a tela gráfica, evitando que


o próximo gráfico sobreponha-se ao anterior
Scilab: Exercício 00

l
Vamos considerar a função:

-->x = -100:0.1:100;

-->y = x.^2

-->plot (x,y,'gs-')

-->length(x)
-->length(y)
-->whos
Scilab: Exercício 01

l
Vamos considerar a função:

l
No intervalo x  [0;2]

l
Existem duas formas para se definir os valores do
domínio:
l
Definindo diretamente os pontos x nos quais queremos
plotar a função (exercício anterior).
l
Definindo um intervalo de valores de x no qual queremos
Scilab: Exercício 01

l
Tal instrução criará um vetor x cujo primeiro valor será
igual ao primeiro valor do intervalo.

l
O segundo valor será dado pelo valor anterior somado
ao valor do passo.

l
Isto irá se repetir até que o valor da soma seja igual
ou menor do que o último valor do intervalo.
Scilab: Exercício 01

l
Vamos considerar a função:

-->x = 0:1:2*%pi

-->y = sin(x)

-->plot (x,y,'gs-')
Scilab: Exercício 01

l
Vamos considerar a função:

-->x = 0:0.1:2*%pi

-->y = sin(x)

-->plot (x,y,'gs-')
Scilab: Exercício 01

l
Para colocar nomes nos eixos dos gráficos podemos usar:
Scilab: Exercício 02
Identifique visualmente as raizes da seguinte função
Scilab: Exercício 02

Raizes: x=2 e x=3

x = 1:0.01:4;
y = x.^2­5.*x+6;
plot(x,y)

plot(2,0,'r*')
plot(3,0,'g*')
Scilab: Exercício 03

l
Desenhe a função l
no intervalo x = [0; 40]
Scilab: Exercício 03

l
Desenhe a função l
no intervalo x = [0; 40]

-->x=0:0.1:40;

-->y = x./(1+x.^2);

-->plot(x,y);
Scilab: Exercício 03

Quais os pontos de intersecção entre as funções


e ?

Desenhe as funções e identifique a interseção entre


ambas funções.
Scilab: Exercício 03

Quais os pontos de intersecção entre as funções


e ?

­­>clf()
­­>x = ­5:0.1:5;

­­>y1 = 2.*x;
­­>y2 = ­x.^2+4*.x;

 
­­>plot(x,y1,'r­')
­­>plot(x,y2,'b­')
Scilab: Exercício 03

Quais os pontos de intersecção entre as funções


e ?

­­>find(y1==y2)
 ans  =
 
    51.    71.  
 

­­>x(find(y1==y2))
 ans  =
 
    0.    2.  

* find acha as posições dentro dos vetores cujo os valores verificam a condição ==
Scilab: Exercício 04

l
x =  0:0.01:100;
l
y = exp(­x.^2/200).*sin(x);
l
plot (x,y);
Scilab: Exercício 05
l
Desenhe a função

d = [­3:0.1:3];
[x,y] = meshgrid (d);
z = sin(x) .* cos(y);
plot3d(d,d,z)

Para se movimentar: use o botão direito do mouse.


Scilab
Atividade 01 : Tidia-ae
Identifique visualmente os pontos de intersecção entre as
funções e no intervalo x = [0;5]?

Deve submeter ao Tidia-ae um documento PDF (mini-relatório) contendo:


Nome completo, RA e turma.
A sequência de instruções em Scilab para desenhar ambas funções,
e desenhar uma marca (colorida) em cada ponto de intersecção.
Um screenshoot da figura (cópia da tela) que mostre a correta
visualização.
A atividade deve ser enviada pelo Tidia-ae até as 23h50 do dia 20/Junho.

Você também pode gostar