Você está na página 1de 67

Clculo Numrico, com meus culos

Prof. Paulo R. G. Bordoni

LNCC

UFRJ

Exponho a seguir minha viso pessoal de Clculo Numrico.

Na dose que entendo apropriada de teoria, exemplos e aplicaes para alunos de graduao.
Considero o computador uma ferramenta essencial ao Clculo numrico.

Outros nomes usuais, alm de Clculo numrico, so: Anlise numrica Computao cientfica lgebra linear computacional

Na biblioteca folhei livros onde tais onde apareciam tais nomes.


So outros cursos?

De forma curta e grossa, as associaes implcitas a tais nomes so:

Clculo numrico

Resolues numricas para coisas do clculo Utilizar psilons e deltas nas coisas do clculo Cincia, engenharia e computadores Matrizes, vetores e computadores

Anlise numrica Computao cientfica lgebra Linear Computacional

Uma definio para Clculo Numrico:

O estudo de algoritmos para a resoluo numrica/computacional de problemas da matemtica do contnuo.

As palavras-chave envolvidas:

Estudo de algoritmos Resoluo de problemas Matemtica do contnuo numrica/ computacional

Mestra, o que um algoritmo?

Um conceito fundamental em Computao. Algo como uma receita de bolo. Um algoritmo um procedimento passo-a-passo para efetuar clculos.

Uma sequncia finita de instrues para resolver um problema

O que encontramos na Wikipedia:

Desde meus tempos na Grcia antiga!

Nesse artigo Turing apresenta sua forma de entender um algoritmo. Ela passou a ser referida como Mquina de Turing.

Allan M Turing 1912-1954

Surfista, neste vdeo voc descobrir mais sobre A. Turing e a Mquina de Turing

http://www.angustech.com.br/2011/05/alan-turing-o-pai-da-ciencia-da.html

Leia o livro abaixo para descobrir mais sobre o conceito de algoritmo e outros atores que participaram ativamente do seu estabelecimento

Resolver problemas!

Resolver problemas um esporte que me desafia!

Bons problemas alavancam o conhecimento humano. A soluo de um problema pode resultar em $$$!

Professor, como eu fao para resolver problemas?

Ah, se houvesse uma regra geral... Mestres chineses dizem que voc tem que acertar o alvo!

A arte de resolver problemas

Polya dedicou-se a entender, explicar e ensinar a arte de resolver problemas.

No seu livro, Polya ensina que, para acertar o alvo, para resolver um problema, voc s tem que:

Compreender o problema; Donald Knuth foi aluno dele! Conceber um plano para resolver o problema; Executar o plano concebido; Examinar a soluo encontrada.

Muita ateno ao adjetivo que qualifica o nome do curso:

Clculo numrico

Vamos trabalhar com nmeros.


E com aproximaes numricas!

O difcil que nossos aprendizes acham que conhecem nmeros.

, no 1 e no 2 grau eles s aprendem a manipular nmeros.

Por tais motivos, dedicaremos algumas aulas para estudar em detalhe o conceito de nmero real.

Nmeros naturais, inteiros, racionais, reais e complexos. Em toda sua beleza!

Introduo Computao. A disciplina que envolve o conhecimento dos nmeros naturais, de recursividade e dos algoritmos.

Clculo numrico. A disciplina em que imperioso entender muito bem nmeros racionais, reais e complexos. o reinado das aproximaes e dos processos de discretizao.

O computador uma ferramenta imprescindvel para realizar os clculos numricos.

Os nmeros so representados nos computadores num padro internacional.

Esse padro o IEEE 754 de 2008.

O IEEE 754 foi estabelecido de forma a ser independente tanto dos computadores como das linguagens de programao.

Nele esto especificados tanto o formatos das representaes numricas como a forma de realizar as operaes entre os nmeros. Quer em software quer em hardware.

Hoje em dia, um curso de Clculo numrico sem o conhecimento do IEEE 754 algo impensvel.

Mestres, dediquem o tempo necessrio para explicitar tudo aos aprendizes.

No h como fazer omelete sem quebrar ovos!

Thanatos impe finitude ao homem.


O computador aos nmeros.

Voc descobrir, como eu, que todas as representaes IEEE so finitas.

Pior que isso, ver no existem conjuntos infinitos nos computadores.

Discretizao e aproximao
So palavras-chave em Clculo numrico.

Aproximar. Caso no saiba, pergunte sua namorada!

Discretizar. o verbo que que define o ato de passar do infinito ao finito em matemtica.

Estudaremos mtodos numricos para achar razes aproximadas de equaes.

Aprenderemos como aproximar derivadas por diferenas finitas.

Aprenderemos como aproximar uma integral definida pela regra trapezoidal.

Ou pela regra de Simpson, que d mais preciso.

Aprenderemos tcnicas de discretizao de funes por interpolao.

Usaremos isso para traar grficos de funes.

Veremos que o formato single do padro IEEE 754 estabelece uma discretizao do conjunto dos nmeros reais.

E que o formato double estabelece outra discretizao.

Vamos usar Python para programar.

Porqu usaremos Python e no C, C++ ou Fortran?

Porque Python mais fcil de usar, porque ensinado em Computao I na UFRJ e porque poderoso.

Mestre, fora essas linguagens, poderamos trabalhar com o Maple, o Mathematica ou at o MatLab. So aplicativos muito mais amigveis!

Diga l porque no, Filsofo!

Um dos motivos que Python um software livre e grtis. Um outro, talvez o essencial, que no se faz cincia com software comercial.

Por qu Filsofo?
Eles so to mais fceis de usar!

Voc entende o que est por trs da expresso uma caixa preta Loirinha?

Eu sei Mestra, j ouvi falar. Significa que no conseguimos acessar nem modificar o cdigo do software.

Isso nos impede acrescentar aspectos que necessitamos ao pacote, posto que ele fechado.

Bem, vou indicar onde encontrar o Maple, o Mathematica e o Matlab.

Ok Professor, estamos numa democracia!

Este o site do Maple.

Este o site do Mathematica.

Este o site do Matlab.

Professor, no vi nada parecido com MatLab, Maple ou Mathematica no Python.

Mas ver. Usaremos os pacotes NumPy, SciPy e MatPlotLib que lhe do superpoderes. a Comunidade de Software Livre em ao.

Mas no existem outros softwares livres que fazem o mesmo?

Sim, nas prximas transparncias, vou mostrar onde busc-los.

para Linux.

Temos o Gnuplot no Python(x,y)

Um bom livro.

Tutoriais.

Um Francs.

Livros sobre SciLab.

Pela Internet.

Agora vamos buscar a nossa caixa ferramentas.

Usaremos os mdulos NumPy, SciPy e MatPlotLib para trabalhar.

De fato, usaremos o Python(x,y), que um aplicativo que j trs todos eles.


mamo com acar jovens!

Muito bom Mestres.


Teremos um curso prtico Loirinha e no uma montanha de teoria!!

Muita calma nessa hora, Surfista. Vamos conferir ...

Indo direto ao ponto: uma busca por Python(x,y) no Google fornece

E um simples clique de mouse nos leva ao site de Python(x,y):

L vemos uma tima indicao para estudar Clculo Numrico com Python.

Escolha estas para download mais fcil baixar em partes!

A 1 s 22,7 MB, as outras duas so maiores: 199 MB cada!

Agora s descompactar e executar o instalador.

Aps clique duplo no instalador s concordar com as condies para dar a partida na instalao.

Aceite todas as sugestes.

Pronto tudo instalado.

A est o Python(x,y) na minha rea de trabalho.

Um clique duplo abre a janela:

Python(x,y) possibilita trabalhar com diversas aplicativos. Nossa escolha inicial ser a de trabalhar com a IDLE.

Agora basta clicar ali para abrir a IDLE.

Professora, alguma coisa a acrescentar? E voc Surfista?

Bem esta uma pincelada rpida do que ser o curso. Outras ideias esto por vir!

Loirinha, se Clculo j difcil, imagine com Computao.

cara. Vamos ter que estudar muito.

Muito mesmo!

Acessem meu site para baixar o contedo das aulas. O endereo : www.bordoni.info O cadastramento obrigatrio.

O endereo eletrnico dele professor@bordoni.info. Ele no responder caso voc use algum outro!

Os erros so meus; suas correes sero benvindas.


As figuras, eu desenhei; as ideias nem sempre!

Mande suas sugestes para


professor@bordoni.info Agradeo muito!

Tchau, at a prxima aula!