ferramentas_cientificas

Post on 09-Aug-2015

45 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

II Semana Ciencias Exatas Salviano A. Leao – 1

Software livre: Ferramentas cientıficas para uso acad emico ecientıfico

Prof. Salviano A. Leao

4 de setembro de 2009

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 2

1. Software Livre

2. Editores de textos

3. Tratamento de imagens

4. Desenho

5. Maquina virtual java

6. Comunicacao – Internet

7. Matematica

Software Livre

II Semana Ciencias Exatas Salviano A. Leao – 3

Software Livre

II Semana Ciencias Exatas Salviano A. Leao – 4

■ O Software Livre e uma questao de liberdade: as pessoas devem ser livrespara usar o software de todas as maneiras que sejam socialmente uteis.

■ O Software nao e um objeto material, podendo ser copiado e mudado maisfacilmente. Ver filosofia da FSFhttp://www.gnu.org/philosophy/philosophy.pt.html

■ O codigo aberto e o software livre sao formas solidarias de fomentar odesenvolvimento

■ Representam mudancas nas perspectivas de trabalho e de produtividade.

■ Estimulam o pensamento criativo e o debate da etica.

■ Nao elimina o bom uso de outras ferramentas; porem resgata o usoapropriado de recursos financeiros.

Categorias de Softwares

II Semana Ciencias Exatas Salviano A. Leao – 5

■ Comerciais

■ Comerciais liberados para testes

■ Shareware

■ Freeware

■ Liberado para uso nao comercial

■ Binarios de uso irrestrito

■ Codigo aberto (Open SourceSoftware)

— BSD

— Gnu Public License (GPL)

— Artistic

■ Copyleft

— Mozilla Public License (MPL)

— Apache

Projeto GNU: http://www.gnu.org

II Semana Ciencias Exatas Salviano A. Leao – 6

■ O Projeto GNU foi iniciado em 1983 por Richard Stallman para desenvolverum sistema operacional completo, compatıvel com o Unix, que fosse softwarelivre: o sistema GNU.

■ GNU e um acronimo recursivo para GNU Nao e Unix e e pronunciado comoguh-noo.

■ Variantes do sistema operacional GNU, que incluem o kernel GNU/Linux, saohoje amplamente utilizadas; embora estes sistemas sejam frequentementechamados de Linux, eles seriam mais corretamente chamados de sistemasGNU/Linux.

Fundac ao pelo Software Livre (FSF)

II Semana Ciencias Exatas Salviano A. Leao – 7

Software livre e uma questao de liberdade e nao de preco.

■ Inıcio em 1983, por Richard Stallman

■ Fundacao pelo Software Livre (Free Software Foundation - FSF)http://www.fsf.org/ foi criada em 1985.

■ Objetivo: Preservar a liberdade.

■ Livre e Pela Liberdade.

■ Base de todo sistema aberto hoje existente

■ http://www.gnu.org/software/software.html

Sistemas Operacionais

II Semana Ciencias Exatas Salviano A. Leao – 8

■ GNU Operating System

■ GNU/Linux

■ FreeBSD

■ OpenBSD

■ NetBSD

■ FreeDOS

Algumas Distribuic oes GNU/Linux

II Semana Ciencias Exatas Salviano A. Leao – 9

■ Debian (http://www.debian.org)

■ Debian BR CDD (brasileira)

■ Gentoo

■ Knoppix

■ Kurumin (brasileira – http://www.guiadohardware.net/gdhpress/kurumin/)

■ Mandriva/Conectiva

■ Red Hat/Fedora (http://www.redhat.com/)

■ Slackware (http://www.slackware.com)

■ SUSE/OpenSUSE

■ Ubuntu, Kubuntu, Edubuntu, Xubuntu (http://www.ubuntu.com)

■ Yellow Dog Linux (para Mac)

Lista de Distribuic oes

II Semana Ciencias Exatas Salviano A. Leao – 10

A pagina http://www.ceunsp.br/linux/distribuicoes.html possui uma grande relacaode distribuicoes GNU/Linux e http://www.ceunsp.br/linux/distribuicoes.htm temosum grande banco de dados com inumeras (mais de 2000) distribuicoes.Os Live CDs, sao distribuicoes do GNU/Linux, que rodam diretamente doCD-ROM, ver uma lista em http://www.livecdlist.com/. A variedade de opcoes eimensa, indo de mini distribuicoes (limitadas em tamanho e funcionalidade) atesuper-distibuicoes voltadas aos experts e a pesquisa.Pode-se citar as seguintes distribuicoes:

■ Ubuntu

■ Kurumim - mini-distribuicao brasileira.

■ Slax - mini-distribuicao.

■ Adios - muito estavel e com privilegios administrativos (en).

GNU/Linux No Pen Drive

II Semana Ciencias Exatas Salviano A. Leao – 11

O GNU/Linux tambem roda de num pen drive.Ha uma serie de tutoriais para as diversas distribuicoes emhttp://pendrivelinux.com/.Distribuicoes que rodam num pen drive:

■ Pendrivelinux

■ Knoppix

■ Gentoo

■ Damn Small Linux

■ PCLinuxOS

■ SLAX

Editores de Texto

II Semana Ciencias Exatas Salviano A. Leao – 12

Editores de Texto

II Semana Ciencias Exatas Salviano A. Leao – 13

Basicamente ha dois tipos

■ Editores de texto puro, sem formatacao;

— Editar arquivos de configuracao;

— Editar programas;

— Editar dados;

■ Editores com formatacao. Especıfico para o tipo de texto a ser editado.

■ Padrao Open Document Format

Alguns Editores Para Escrit orio

II Semana Ciencias Exatas Salviano A. Leao – 14

AbiWord Um editor de texto bom, pequeno.

OpenOffice.org Uma suıte completa para escritorio, baseada no StarOffice,mas com licenca de software livre.

Siag Office Um pacote de aplicacoes bastante configuravel.http://siag.nu/

KOffice Conheca a nova versao de um dos melhores pacotes de escritorio paraLinux

Utilit arios

II Semana Ciencias Exatas Salviano A. Leao – 15

AikSaurus Como soletrar uma palavra em ingles? Pergunte ao AikSaurus.

kttsd Soletra uma palavra ou uma frase em ingles.

bsgloss Um gerenciador de glossarios e tradutores para Linux. Faz consultasao glossario local e a diversos sites de glossarios e traducoes na Internet,simultaneamente.

Scribus Software para editoracao eletronica de documentos. Uma alternativalivre para os ja consagrados ”Adobe Pagemaker”e ”Quark Xpress”.

KWordQuiz Software para treinar vocabulario.

Telico Software para manipular banco de dados de livros, cd’s, etc.

kdict Um dicionario com diversas opcoes.

stardict Dicionario.

Editores Cientıficos

II Semana Ciencias Exatas Salviano A. Leao – 16

Kile Um editor de texto LATEX, para ambiente KDE.

TeXmacs Editor de texto cientıfico com interface para outros softwares. ExportaLATEXe tem formato o que voce ve e o que voce obtem.

texmaker Um editor de texto LATEX, para ambiente Gnome.

amyedit Editor de texto LATEX.

Winefish Editor de texto LATEX, mais complexo.

LyX Editor de textos, tambem util para trabalhos cientıfico, ja que pode exportarno formato LATEX.

jabref Editor de banco de dados bibtex, em java.

kbibtex Editor de banco de dados bibtex.

kbib Editor de banco de dados bibtex.

Xemacs Ambiente de programacao autamente configuravel, que tambem podeser usado para editar textos LATEX.

gvim mbiente de programacao autamente configuravel, que tambem pode serusado para editar textos LATEX.

Agendas

II Semana Ciencias Exatas Salviano A. Leao – 17

KOffice Possui uma agenda.

Evolution Um leitor de e-mail, diario, agenda, etc.

Kontact Contatos e tarefas sob controle

KOrganizer Compromissos, tarefas e contatos sempre em ordem

Plan Individualmente ou em grupo, mantenha sua agenda em dia

ToDo Um ”lembrador”para as tarefas do dia-a-dia

Editores de Texto simples: Gr aficos

II Semana Ciencias Exatas Salviano A. Leao – 18

kedit O mais simples dos editores do ambiente KDE.

kwrite Editor simples do ambiente KDE.

Kate Editor bastante versatil do ambiente KDE.

khexedit Editor hexadecimal do ambiente KDE.

gedit Editor bem versatil do ambiente gnome.

gvim Versao grafica do vi.

Xemacs Versao grafica do excelente emacs. Multitarefa e programavel.

SciTE Editor com ambiente de programacao

Editores de Texto simples: texto

II Semana Ciencias Exatas Salviano A. Leao – 19

nano editor simples para o modo texto.

pico editor simples para o modo texto.

mcedit editor simples para o modo texto

vi editor modo texto padrao dos sistemas unix/Linux.

emacs editor modo texto, bastante configuravel.

Softwares para tratamento deimagens

II Semana Ciencias Exatas Salviano A. Leao – 20

Tipos de imagens

II Semana Ciencias Exatas Salviano A. Leao – 21

Uma imagem pode ser classificada em:

■ Desenho vetorial, que se baseia em vetores matematicos. Exemplo: eps, svg,fig, cdr, ai, etc.

■ Raster ou bitmap, que basicamente e uma descricao da cor de cada pixel.Exemplo: bmp, gif, jpg, png, tif, etc.

Softwares para visualizac ao

II Semana Ciencias Exatas Salviano A. Leao – 22

Djview Visualizador para o formator DjVu.

Evince Visualizador para o formator DjVu e PDF.

gqview Visualizador de imagens baseado nas bibliotecas GTK.

Gwenview Visualizador e navegador de imagens para o KDE.

gthumb Visualizador de imagem e navegador para o Gnome.

Kpdf Visualisador de arquivos PDF para o KDE.

Kghostview Visualisador de arquivos PDF, PS e EPS para o KDE.

Digikam Facil e poderoso gerenciador de fotos digitais. Ele importa, organiza,manipula, rotula e pesquisa fotos.

KPhotoAlbum indexa, busca, agrupa,e visualiza imagens por palavras chaves,data, localizacao e pessoas.

Softwares para imagens bitmap

II Semana Ciencias Exatas Salviano A. Leao – 23

GIMP Utilizado para processamento de imagens e fotografias. Pode-se criargraficos e logotipos, redimensionar fotos, alterar cores, combinar imagensutilizando o paradigma de camadas, remover partes indesejadas dasimagens e converter arquivos entre diferentes formados de imagem digital.

Showfoto Visualisador de imagem e editor para o KDE.

Xara LX aplicativo muito versatil, capaz de manipular e combinas imagensvetoriais e bitmaps.

ImageMagick Programas de visualizacao, e uma suıte manipulacao deimagens que suporta mais de 90 formatos de imagens. Pode ser usadopara redimensionar, girar, suavizar, etc.

Netpbm Conjunto de ferremantas para manipulacao de imagens graficas,incluindo conversao de imagens entre uma variedade de diferentesformatos. Existem da ordem de 220 ferramentas separadas no pacote,incluindo conversores para mais de 80 formatos graficos.

Softwares para imagens vetoriais

II Semana Ciencias Exatas Salviano A. Leao – 24

Dia Editor de diagramas, fluxogramas e graficos e circuitos.

Inkscape Um editor SVG (Scalable Vectorial Graphics) para desenhos vetoriais,logotipos, posters, icones, etc. e com capacidade similares ao AdobeIllustrator, CorelDraw and Visio.

Krita Um editor de images e desenhos da suıte KOffice para o KDE desktop.

Karbon Editor grafico vetorial para o KDE.

OpenDraw Programa para editoracao de imagens que acompanha a suıte deaplicativos OpenOffice.

Synfig Poderoso programa de desenhos vetoriais, com um pacote paraanimacoes 2D (SynfigStudio), designado na sua origem para produzirfilmes animados de qualidade.

Qcad Sistema CAD 2D profissional simples para criar desenhos tecnicos.

Xfig Facilita a geracao de figuras interativamente sob o X11. Desenhosvetoriais 2D. Excelente, simples e facil de usar.

Outros softwares gr aficos

II Semana Ciencias Exatas Salviano A. Leao – 25

KSnapshot Applet para capturar tela. Pode capturar imagens de todo o desktopou somente de uma janela. As imagens podem ser salvas numa variedadede formatos.

xsane Interface grafica para o scanner.

Flegita Interface grafica para o scanner baseada no Gnome.

QuiteInsane Interface grafica para o scanner.

Linhas de comando para imagens

II Semana Ciencias Exatas Salviano A. Leao – 26

Autotrace Utilitario para tracar um arquivo bitmap, que significa, transformar umbitmap numa imagem vetorial suavizada.

Potrace Utilitario para tracar um arquivo bitmap, que significa, transformar umbitmap numa imagem vetorial suavizada.

Potracegui Interface grafica para o potrace e autotrace.

pstoedit Conversor de arquivos Postscript e PDF nos varios formatos graficosvetoriais, incluindo tgif, xfig, PDF graficos, formato gnuplot, idraw,MetaPost, GNU Metafile, PIC, Kontour e flattened PostScript.

Transfig Utilitario para converter figuras do XFig.

Exif Utilitario para manipular fotos.

Linhas de comando para pdf

II Semana Ciencias Exatas Salviano A. Leao – 27

pdfjam Colecao de utilitario para juntar e transformar diversas paginas em uma.

pdfsam Junta e separa paginas.

pdftk Utilitario que tem uma serie de recursos para manipular arquivos pdf.

pdfedit Interface grafica para editar um pdf.

pdf2djvu Conversor de arquivos pdf em djvu.

pdf2svg Conversor de arquivos pdf em svg.

Softwares para renderizar

II Semana Ciencias Exatas Salviano A. Leao – 28

Blender Conjuto integrado de ferramentas graficas 3D para modelar, animar,renderizar imagens, design, etc.

POV-Ray E uma abreviacao do ingles Persistence of Vision Raytracer. Umaferramente de alta qualidade para criar imagens tridimensionais realısticas.

KPovmodeler Editor grafico para o KDE para cenas do povray. E um programapara modelar e compor cenas criadas para o POV-Ray no KDE.

Maquina virtual java

II Semana Ciencias Exatas Salviano A. Leao – 29

Instalando Java da sun

II Semana Ciencias Exatas Salviano A. Leao – 30

Este sao os comandos para instalar a maquina virtual java em distribuicoesGNU/Linux baseadas no Debian.

> sudo apt -get install sun -java6 -jdk (desenvolvimento java)

> sudo apt -get install sun -java6 -jre (Para os usuarios java)

ou

> sudo aptitude install sun -java6 -jdk

(desenvolvimento java)

> sudo aptitude install sun -java6 -jre

(Para os usuarios java)

Verificando a m aquina Java

II Semana Ciencias Exatas Salviano A. Leao – 31

Verificar maquina java

> java -version

java version "1.6.0 _06"

Java(TM) SE Runtime Environment (build 1.6.0_06 -b02)

Java HotSpot(TM) Client VM (build 10.0-b22 , mixed mode , sharing)

> update -alternatives --list java

/usr/bin/gij -4.2

/usr/lib/jvm/java -6-sun/jre/bin/java

/usr/lib/jvm/java -gcj/jre/bin/java

/usr/lib/jvm/java -6-openjdk/jre/bin/java

> sudo update -java -alternatives -l

Configurando m aquina java

II Semana Ciencias Exatas Salviano A. Leao – 32

> sudo update -alternatives --config java

Existem 4 alternativas que fornecem ‘java ’.

Selec~ao Alternativa

-----------------------------------------------

1 /usr/bin/gij -4.2

* 2 /usr/lib/jvm/java -6-sun/jre/bin/java

3 /usr/lib/jvm/java -gcj/jre/bin/java

+ 4 /usr/lib/jvm/java -6-openjdk/jre/bin/java

Pressione enter para manter o padr~ao[*] ou digite o numero da sel

> sudo update -java -alternatives -s java -6-sun

Comunicac ao e internet

II Semana Ciencias Exatas Salviano A. Leao – 33

Conceitos B asicos

II Semana Ciencias Exatas Salviano A. Leao – 34

A rede e um sistema de hardware e de software atraves do qual sistemascomputacionais diferentes podem se comunicar. Os diversos tipos decomunicacao podem ser:

■ Transferencia de uma mensagem;

■ Transferencia de arquivos;

Existem diversos protocolos de comunicacao.

Programas Gr aficos

II Semana Ciencias Exatas Salviano A. Leao – 35

■ gftp;

■ Downloader for X;

■ Drop2ftp;

■ kget;

■ firefox;

■ mozilla;

■ opera;

■ seamonkey;

■ unison;

■ kmail;

■ pidgin;

■ skype;

■ firestarter;

■ Akregator;

Programas b asicos do sistema

II Semana Ciencias Exatas Salviano A. Leao – 36

■ ifconfig;

■ netstat;

■ ssh;

■ telnet;

■ ftp;

■ sftp;

■ scp;

■ rsync;

■ wget;

■ lynx;

■ elinks;

■ curl;

■ ping;

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 37

1. Distribuicoes cientıficas;

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 37

1. Distribuicoes cientıficas;

2. Softwares cientıficos;

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 37

1. Distribuicoes cientıficas;

2. Softwares cientıficos;

3. Software para tratamento de dados;

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 37

1. Distribuicoes cientıficas;

2. Softwares cientıficos;

3. Software para tratamento de dados;

4. Aplicacoes graficas;

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 37

1. Distribuicoes cientıficas;

2. Softwares cientıficos;

3. Software para tratamento de dados;

4. Aplicacoes graficas;

5. scilab;

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 37

1. Distribuicoes cientıficas;

2. Softwares cientıficos;

3. Software para tratamento de dados;

4. Aplicacoes graficas;

5. scilab;

6. maxima;

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 37

1. Distribuicoes cientıficas;

2. Softwares cientıficos;

3. Software para tratamento de dados;

4. Aplicacoes graficas;

5. scilab;

6. maxima;

7. gnuplot.

Distribuic oes Cientıficas

II Semana Ciencias Exatas Salviano A. Leao – 38

Physics Live CD Live CD com ferramentas voltada para fısicos.http://www.physics-live.org/;

Quantian Um Knoppix / Debian variante para analises quantitativas enumericas;

Debian-Med Distribuicao Debian personalizada para medicos e pesquisadoresna area medica; Ha um pacote para personalizacao debian-med:apt-cache search debian-med.

Scientific Linux O Linux lancado pelo Fermilab e o CERN baseado no Red Hat.

Madrake4Chemistry Mandrake Linux para os quımicos.

Poseidon Linux Uma distribuicao Brasileira designada para o uso academico ecientıfico;

Xplora Um DVD baseado no Knoppix/Debian que torna a ciencia acessıvel paraas escolas.

CAELinux Um liveDVD Linux para computadores para desenvolver projetos deengenharia.

Para encontrar uma distribuic ao Linux

II Semana Ciencias Exatas Salviano A. Leao – 39

■ Lista de distribuicoes: http://www.linux.org/dist/list.html

■ Catalogo com inumeras distribuicoes: http://distrowatch.com/

■ Comenta sobre as diversas distribuicoes:http://en.wikipedia.org/wiki/Linux_distribution

■ Compara as distribuicoes:http://en.wikipedia.org/wiki/Comparison_of_Linux_distributio

■ Ajuda da escolher um distribuicao:http://www.zegeniestudios.net/ldc/

Ferramentas Cientıficas

II Semana Ciencias Exatas Salviano A. Leao – 40

Sites com uma lista de softwares

■ http://wiki.ubuntu-br.org/CienciaNoUbuntu

■ https://help.ubuntu.com/community/UbuntuScience

■ LATEX2e

■ jabref

■ telico

■ texmacs

■ lyx

■ kile

■ pdftk

■ autotrace

■ potrace

■ inkscape

■ gimp

■ xfig

■ dia

■ Fityk

■ labplot

■ qtiplot

■ grace

■ gnuplot

■ maxima

■ xmaxima

■ wxmaxima

■ octave

■ freemat

■ sagemath

■ R

■ Opendx

■ SciCos

■ GeoGebra

■ step

■ phun physics

■ Lightspeed

■ gprof

■ meld

■ unison, etc;

Astronomia

II Semana Ciencias Exatas Salviano A. Leao – 41

KStars http://packages.ubuntu.com/kstars – Um planetario virtual.

Nightfall http://www.hs.uni-hamburg.de/DE/Ins/Per/Wichmann/Nightfall.html –Um aplicativo de astronomia para diversao, educacao e ciencia.

Stellarium http://packages.ubuntu.com/stellarium – Um planetario virtual quemostra um ceu 3D realıstico.

Google Earth http://packages.ubuntu.com/googleearth-package – Aplicativocom visualizacao 3D da Terra, incluidno uma visualizacao do ceu.

Softwares Gr aficos I

II Semana Ciencias Exatas Salviano A. Leao – 42

grace http://plasma-gate.weizmann.ac.il/Grace/. Aplicacao Motif/Lesstif paravisualizacao e analise de dados bidimensionais. Permite trabalhar osdados com FFT, auto-correlacao, diferencas, integrais, histogramas, etc.Gera figuras de alta qualidade.

g3data http://www.frantz.fi/software/g3data.php. Programa que extrai dados deum grafico. Digitaliza o grafico.

Opendx http://www.opendx.org/. Sistema para visualizar dados.

Fityk http://www.unipress.waw.pl/fityk/. Aplicacao cientıfica flexıvel e portatilpara ajuste (fit) nao linear de funcoes analıticas (especialmente aquelascom picos) para dados (geralmente dados experimentais). Util paraseparacao e analise de picos nao lineares.

Softwares Gr aficos II

II Semana Ciencias Exatas Salviano A. Leao – 43

gnuplot http://www.gnuplot.info/. Aplicacao para visualizacao e analise dedados via linha de comando, multiplataforma. Faz graficos 2D e 3D. Facilde usar. Ha uma versao para o windows.

labplot http://labplot.sourceforge.net/. Aplicacao para visualizacao e analise dedados livre. Faz graficos 2D, 3D e analise de dados. E um clone do Origin.

Qtiplot http://soft.proindependent.com/qtiplot.html. Aplicacao para visualizacaoe analise de dados. Faz graficos 2D, 3D e analise de dados. Codigo fonteliberado, ntretanto o arquivo compilado (binario) nao e liberado. Outroclone do Origin.

MayaVi2 http://code.enthought.com/projects/mayavi/. E uma ferramentamultiplataforma para visualizacao 2D e 3D de dados cientıficos.

gri http://gri.sourceforge.net/ . E uma de codigo-fonte aberto para programacaografica cientıfica. Ela e por comandos, similar ao LATEX. Ele pode fazergraficos x − y, contornos, e imagens.

Software Livres: Ambientesde Programac ao

II Semana Ciencias Exatas Salviano A. Leao – 44

Softwares Alg ebricos I

II Semana Ciencias Exatas Salviano A. Leao – 45

Scilab http://www.scilab.org. Linguagem de programacao de alto-nıvel,direcionada para calculos numericos. Faz graficos 2D, 3D e animacoes.Inclui um bom numero de toolboxes e documentacao on-line. Softwaresimilar ao Matlab. Ha uma versao para o windows.

Softwares Alg ebricos I

II Semana Ciencias Exatas Salviano A. Leao – 45

Scilab http://www.scilab.org. Linguagem de programacao de alto-nıvel,direcionada para calculos numericos. Faz graficos 2D, 3D e animacoes.Inclui um bom numero de toolboxes e documentacao on-line. Softwaresimilar ao Matlab. Ha uma versao para o windows.

Maxima http://maxima.sourceforge.net/. Software para calculos algebricossimilar ao Maple e ao Mathematica. Permite o calculo algebrico deintegrais, derivadas, etc. Fazer graficos. Ha uma versao para windows.

Octave http://www.octave.org. Linguagem de alto-nıvel, primariamentedesenvolvida para a computacao numerica. Software similar ao Maxima,Maple e Mathematica. Possui uma versao para o windows.

Softwares Alg ebricos II

II Semana Ciencias Exatas Salviano A. Leao – 46

Sage http://www.sagemath.org/. E um software matematico que inclui: algebra,calculo, teoria elementar e avancada de numeros, criptografia, computacaonumerica, algebra comutativa, teoria de grupos, analise combinatoria,teoria de grafos, etc.

FreeMat http://freemat.sourceforge.net/. E um ambiente matematico livre paraprocessamento de dados cientıficos. E similar ao MATLAB da Mathworks,e ao IDL da Research Systems, mas e de codigo aberto.

Interface com Python

II Semana Ciencias Exatas Salviano A. Leao – 47

SciPy http://www.scipy.org/. E um conjunto de ferramentas numericas ecientıficas para Python de codigo aberto. Ela suporta: funcoes especiais,integracao, equacoes diferenciais ordinarias, otimizacao e algortimosgeneticos, ferramentas para programacao em paralelo, etc.

Matplotlib http://matplotlib.sourceforge.net/. E uma biblioteca Python designadapara ter uma alta qualidade grafica, e possui uma sintaxe similar aoMATLAB. Ja esta incluıda na SciPy.

F2PY http://cens.ioc.ee/projects/f2py2e/. Gera interface do fortran com opython. Ja esta incluıda na SciPy.

Ensino de Fısica

II Semana Ciencias Exatas Salviano A. Leao – 48

Phun 2D Physics Sandbox http://www.phunland.com/wiki/Home. Permite criaranimacoes. E livre para uso nao comercial.

Setp http://edu.kde.org/step. Simulador fısico interativo. Ha um serie deexemplo na pagina:http://www.cetl.gatech.edu/students/step/stepweb/physsim.htm.

Lightspeed http://packages.ubuntu.com/lightspeed – Porgrama que ilustra osefeitos da relatividade especial na aparencia dos objetos em movimento.

Gnuplot

II Semana Ciencias Exatas Salviano A. Leao – 49

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 50

1. Funcoes Basicas

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 50

1. Funcoes Basicas

2. Grafico de Funcoes

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 50

1. Funcoes Basicas

2. Grafico de Funcoes

■ Graficos unidimensionais

■ Graficos bidimensionais

■ Graficos de Funcoes Parametricas

■ Graficos em coordenadas polares

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 50

1. Funcoes Basicas

2. Grafico de Funcoes

■ Graficos unidimensionais

■ Graficos bidimensionais

■ Graficos de Funcoes Parametricas

■ Graficos em coordenadas polares

3. Graficos de Arquivos

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 50

1. Funcoes Basicas

2. Grafico de Funcoes

■ Graficos unidimensionais

■ Graficos bidimensionais

■ Graficos de Funcoes Parametricas

■ Graficos em coordenadas polares

3. Graficos de Arquivos

■ Graficos unidimensionais

■ Graficos bidimensionais

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 50

1. Funcoes Basicas

2. Grafico de Funcoes

■ Graficos unidimensionais

■ Graficos bidimensionais

■ Graficos de Funcoes Parametricas

■ Graficos em coordenadas polares

3. Graficos de Arquivos

■ Graficos unidimensionais

■ Graficos bidimensionais

4. Tipos de Terminais

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 50

1. Funcoes Basicas

2. Grafico de Funcoes

■ Graficos unidimensionais

■ Graficos bidimensionais

■ Graficos de Funcoes Parametricas

■ Graficos em coordenadas polares

3. Graficos de Arquivos

■ Graficos unidimensionais

■ Graficos bidimensionais

4. Tipos de Terminais

5. Scripts.

Func oes B asicas

II Semana Ciencias Exatas Salviano A. Leao – 51

abs (x) Para x qualquer, retorna o valor absoluto de x com o mesmo tipo de x.

abs (x) Para x qualquer, retorna√

ℜ(x)2 + ℑ(x)2 para x complexo.

acos (x) Para x qualquer, retorna um valor entre −π ≤ acos(x) ≤ π se−1 ≤ x ≤ 1.

acosh (x) Para x qualquer, retorna um valor entre −π ≤ acos(x) ≤ π sex ≥ 1.

arg(x) Para x qualquer, retorna a fase de x.

asin(x) Para x qualquer, retorna o sen−1 x (inverso do seno).

asinh(x) Para x qualquer, retorna o senh −1x (inverso do seno hiperbolico).

II Semana Ciencias Exatas Salviano A. Leao – 52

atan(x) Para x qualquer, retorna o tg−1 x (inverso da tangente).

atan2(y, x) Para x e y inteiros ou reais, retorna tg−1(y/x) (inverso datangente).

atanh(x) Para x qualquer, retorna o tgh −1x (inverso da tangente hiperbolica).

besj0(x) Para x inteiro ou real, retorna a funcao de Bessel j0(x).

besj1(x) Para x inteiro ou real, retorna a funcao de Bessel j1(x).

besy0(x) Para x inteiro ou real, retorna a funcao de Bessel y0(x).

besy1(x) Para x inteiro ou real, retorna a funcao de Bessel y1(x).

II Semana Ciencias Exatas Salviano A. Leao – 53

ceil(x) Para ⌈x⌉, retorna o menor inteiro nao menor que x (parte real).

cos(x) Para x qualquer, retorna o cosseno de x, cos x.

cosh(x) Para x qualquer, retorna o cosseno hiperbolico de x, cosh x, .

erf(x) Para x qualquer, retorna a funcao erro Erf(real(x)), do real(x).

erfc(x) Para x qualquer, retorna Erfc(real(x)) = 1.0 − Erf(real(x)).

exp(x) Para x qualquer, retorna ex.

floor(x) Para x qualquer, retorna ⌊x⌋, o maior inteiro nao maior do que x(parte real).

II Semana Ciencias Exatas Salviano A. Leao – 54

gamma(x) Para x qualquer, retorna a funcao gama Gamma(real(x)), doreal(x).

ibeta(p, q, x) Para x qualquer, retorna a funcao ibeta Ibeta(real(p, q, x)), doreal(p,q,x).

inverf(x) Para x qualquer, retorna o inverso da funcao erro do real(x).

igamma(a, x) Para x qualquer, retorna a funcao igama Igamma(real(a, x)),do real(a,x).

imag(x) Para x complexo, retorna a parte imaginaria x como um numero real.

invnorm(x) Para x qualquer, retorna o inverso da distribuicao normal doreal(x).

II Semana Ciencias Exatas Salviano A. Leao – 55

int(x) Para x real, retorna a parte inteira de x, truncando a parte decimal.

lambertw(x) Para x real, retorna a funcao de Lambert W .

lgamma(x) Para x qualquer, retorna a funcao lgama Lgamma(real(x)), doreal(x).

log(x) Para x qualquer, retorna o logaritmo natural de x (base e),lnx = log ex.

log10(x) Para x qualquer, retorna o logartitmo de x na base 10, log 10x.

norm(x) Para x qualquer, retorna a funcao distribuicao normal (Gaussiana) doreal(x).

II Semana Ciencias Exatas Salviano A. Leao – 56

rand(x) Para x qualquer, retorna um numero pseudo aleatorio Rand(real(x)).

real(x) Para x qualquer, retorna a parte real de x.

sgn(x) Para x qualquer, retorna 1 se x > 0, −1 se x < 0, 0 se x = 0. Oimag(x) e ignorado.

sin(x) Para x qualquer, retorna sen x.

sinh(x) Para x qualquer, retorna senh x.

sqrt(x) Para x qualquer, retorna√

x.

tan(x) Para x qualquer, retorna tg x, a tangente de x.

tanh(x) Para x qualquer, retorna tgh x, a tangente hiperbolica de x.

II Semana Ciencias Exatas Salviano A. Leao – 57

column(x) Retorna um inteiro, para a coluna x durante a manipulacao dedados.

defined(X) nome da variavel retorna 1 se a variavel X esta definida, 0senao.

tm hour(x) Retorna um inteiro para a hora.

tm mday(x) Retorna um inteiro para o dia do mes.

tm min(x) Retorna um inteiro para o minuto.

tm mon(x) Retorna um inteiro para o mes.

tm sec(x) Retorna um inteiro para o segundo.

tm wday(x) Retorna um inteiro para o dia da semana.

tm yday(x) Retorna um inteiro para o dia do ano.

tm year(x) Retorna um inteiro para o ano.

valid(x) Retorna um inteiro para o teste validade da column(x) durante amanipulacao de dados.

II Semana Ciencias Exatas Salviano A. Leao – 58

rand(0) Retorna um numero pseudo aleatorio no intervalo 0 ≤ rand(0) ≤ 1gerado a partir do valor corrente da semente interna de 32-bits.

rand(−1) Reinicializa ambas as sementes para um valor padrao.

rand(x) Para x > 0 inicializa ambas as sementes para um valor baseado novalor de x.

rand(x, y) Para x > 0 inicializa a semente 1 (seed1) para x e a semente 2(seed2) para y..

Express oes e Operadores

II Semana Ciencias Exatas Salviano A. Leao – 59

■ Os operados no gnuplot sao os mesmos da liguagem de programacao C.

■ O ∗∗ operador (exponenciacao) e suportado, como no FORTRAN.

■ Osparenteses podem ser usados para alterar a ordem de calculo de umaexpressao.

Operadores Unit arios

II Semana Ciencias Exatas Salviano A. Leao – 60

Sımbolo Exemplo Explicacao

− −a menos unitario+ +a mais unitario

a complemento! !a Negacao logica! !a Fatorial$ $3 chama argumento/coluna durante uma manipulacao

Operadores Bin arios

II Semana Ciencias Exatas Salviano A. Leao – 61

Sımbolo Exemplo Explicacao

∗∗ a ∗ ∗b Exponenciacao∗ a ∗ b Multiplicacao/ a/b Divisao% a%b Modulo∗

+ a + b Adicao− a − b Subtracao

== a == b Igualdade! = a! = b Desigualdade< a < b Menor que

<= a <= b Menor ou igual a> a > b Maior que

>= a >= b Maior ou igual a

II Semana Ciencias Exatas Salviano A. Leao – 62

Sımbolo Exemplo Explicacao

& a&b Bit∗ E^ a^b Bit∗ OU exclusivo| a|b Bit∗ OU inclusivo

&& a&&b Logico∗ E|| a|| Logico∗ OU

Operadores Tern arios

II Semana Ciencias Exatas Salviano A. Leao – 63

Sımbolo Exemplo Explicacao

? : a?b : c Operacao Ternaria

Este operador comporta-se como em C. O primeiro argumento a, que deve serum inteiro, e calculado. Se ele for verdade (diferente de zero), o segundo b ecalculado e retornado, de outro modo, o terceiro c e calculado e retornado.Exemplo, faca o grafico da funcao

g(x) =

{

sen(x) se 0 ≤ x < 11/x se 1 ≤ x < 2

gnuplot > g(x)= 0 <=x && x<1 ? sin(x) :

1<=x && x<2 ? 1/x : 1/0

gnuplot > plot g(x)

II Semana Ciencias Exatas Salviano A. Leao – 64

A funcao passo de Heaviside

θ(x) =

{

0 se x < 01 se x > 0

gnuplot > f(x) = x<0 ? 0 : x>0 ? 1 : 1/0

gnuplot > plot f(x)

Para um arquivo de dados, faca um grafico da media dos valores das colunas 2 e3 em funcao dos dados da coluna 1, mas somente se os dados da coluna 4 foremnao negativos.

gnuplot > plot ’dados.dat ’ using 1:( $4 <0? 1/0: ($2+$3 )/2)

II Semana Ciencias Exatas Salviano A. Leao – 65

A funcao abaixo

H(x) =

{

f(x) = 3x − 40 se 2 ≤ x <≤ 6g(x) = −x2 + 2x − 8 se Outros casos

reset

set xtics 1

set grid

set xrange [0:10]

f(x)=3*x-40

g(x)=-x**2+2*x-8

h(x)=(2 <=x && x <=8) ? f(x):g(x)

plot h(x) t"Funcao Composta"

pause -1 "Fechar ?"

Definindo Func oes

II Semana Ciencias Exatas Salviano A. Leao – 66

No ambiente pode-se definir uma funcao

gnuplot > a=1

gnuplot > b=-2

gnuplot > c=3

gnuplot > f(x)=a*x**2+b*x+c

gnuplot > plot f(x)

gnuplot > a=3

II Semana Ciencias Exatas Salviano A. Leao – 67

No ambiente pode-se definir uma funcao

w = 2

q = floor(tan(pi/2 - 0.1))

f(x) = sin(w*x)

sinc(x) = sin(pi*x)/(pi*x)

delta(t) = (t == 0)

ramp(t) = (t > 0) ? t : 0

min(a,b) = (a < b) ? a : b

comb(n,k) = n!/(k!*(n-k)!)

len3d(x,y,z) = sqrt(x*x+y*y+z*z)

plot f(x)=sin(x*a), a=0.2,f(x), a=0.4,f(x)

Controle de Eixos e Escalas

II Semana Ciencias Exatas Salviano A. Leao – 68

■ set grid ativa a grade.

■ set nogrid ou unset grid desativa a grade.

■ set xrange [x0:xf] define o intervalo de variacao de x.

■ set yrange [y0:yf] define o intervalo de variacao de y.

■ set zrange [z0:zf] define o intervalo de variacao de z em graficos (3D).

■ set samples n define o numero de pontos n usados para fazer o grafico.

■ replot f(x) ou rep f(x) adiciona o grafico de f(x) ao anterior.

■ test mostra as definicoes padroes.

■ reset reinicializa as variaveis internas aos valores padroes.

■ clear limpa a tela.

II Semana Ciencias Exatas Salviano A. Leao – 69

gnuplot > plot sin(x/2) with points

gnuplot > plot sin(x/2) with lines

gnuplot > plot sin(x/2) with linespoints

gnuplot > plot sin(x/2) with dots

gnuplot > plot sin(x/2) with impulses

II Semana Ciencias Exatas Salviano A. Leao – 70

gnuplot > plot sin(x/2) with points 3

gnuplot > plot sin(x/2) with lines 5

gnuplot > plot sin(x/2) with linespoints 1

gnuplot > plot sin(x/2) with dots 8

gnuplot > plot sin(x/2) with impulses 9

gnuplot > plot [0:pi/2] sin(x/2) with points 10 6

gnuplot > rep cos(4*x) with impulses 3

II Semana Ciencias Exatas Salviano A. Leao – 71

gnuplot > set xrange [-2*pi: 2*

gnuplot > f(x)=sin(x/2)

gnuplot > plot f(x)

gnuplot > set xrange [-2*pi:2*pi]

gnuplot > f(x,b)=sin(x/b)

gnuplot > plot f(x,2)

gnuplot > set xrange [-2*pi:2*pi]

gnuplot > f(x)=sin(x*a)

gnuplot > plot f(x), a=0.5

gnuplot > set xrange [-2*pi:2*pi]

gnuplot > f(x,a)=sin(a*x)

gnuplot > plot f(x ,0.5)

II Semana Ciencias Exatas Salviano A. Leao – 72

gnuplot > reset

gnuplot > plot "Dens.dat" using 1:2

gnuplot > reset

gnuplot > plot "Dens.dat" using ($1): ($2)

gnuplot > reset

gnuplot > plot "Dens.dat" using ($1):($2) with lines 3 6

Outras opc~oes:

using ($1):($2 +$3)

using ($1):($2 +3*($3))

using ($2):($5)/100

Mais Controles Sobre os Eixos

II Semana Ciencias Exatas Salviano A. Leao – 73

■ set xtics ∆x. Aqui ∆x e o valor do intervalo de pontos no eixo x.

■ set mxtics n numero de divisoes no intervalo de pontos ∆x do eixo x.

■ set ytics ∆y Valor do intervalo de pontos no eixo y.

■ set mytics n numero de divisoes no intervalo de pontos ∆y do eixo y.

■ set xlabel ”Nome do eixo x”

■ set ylabel ”Nome do eixo y”

■ set title ”Nome do grafico”

II Semana Ciencias Exatas Salviano A. Leao – 74

gnuplot > reset

gnuplot > set grid

gnuplot > set xtics 2

gnuplot > set mxtics 2

gnuplot > set ytics 40

gnuplot > set mytics 2

gnuplot > set xrange [0:25]

gnuplot > set title "Func~ao Parabolica \n Teste 1"

gnuplot > set xlabel "X - Tempo (s)"

gnuplot > set ylabel "Y- Acelerac~ao (m/s2)"

gnuplot > f(x,a,b,c)=a+b*x+c*x**2

gnuplot > plot f(x,120 , -5 ,0.1) t"func~ao 1" with points 3 5

gnuplot > rep f(x,80 ,+10 , -0.15) t"func~ao 2" with lines 8

Posicionamento das Legendas

II Semana Ciencias Exatas Salviano A. Leao – 75

■ set key left bottom Canto inferior esquerdo.

■ set key right bottom Canto inferior direito.

■ set key left top Canto superior esquerdo.

■ set key right top Canto superior direito.

Exemplo: Supefıcies

II Semana Ciencias Exatas Salviano A. Leao – 76

reset

set grid

set format z "%4.2f"

f(x,y)=log(sqrt( x*x + y*y))

splot f(x,y)

II Semana Ciencias Exatas Salviano A. Leao – 77

set format Formato dos valores numericos

set hidden3D No modo 3D, esconde o que fica atras da superfıcie.

Exemplos 5: Supefıcies

II Semana Ciencias Exatas Salviano A. Leao – 78

reset

set grid

set xlabel "X"

set ylabel "Y"

set zlabel "Z"

set title "Exemplo de Superfıcie"

set ztics 0.50

set format z "%4.2f"

f(x,y)=sin(y/7)* cos(x/5)

set cntrparam levels incremental -1,0.25,1

set contour base

set hidden3d

splot f(x,y) t""

II Semana Ciencias Exatas Salviano A. Leao – 79

set multiplot

plot sin(x)

set origin 0.5 ,0.5

set size 0.4 ,0.4

clear

plot cos(x)

unset multiplot

Lendo arquivo

II Semana Ciencias Exatas Salviano A. Leao – 80

Se voce tem um arquivo chamado sup.gp com o seguinte conteudo

reset

set grid

set xlabel "X"

set ylabel "Y"

set zlabel "Z"

set title "Exemplo de Superfıcie"

set ztics 0.50

set format z "%4.2f"

f(x,y)=sin(y/7)* cos(x/5)

set cntrparam levels incremental -1,0.25,1

set contour base

set hidden3d

splot f(x,y) t""

Voce pode chama-lo no gnuplot com o seguinte comando

gnuplot > load "sup.gp"

Rodando Scripts

II Semana Ciencias Exatas Salviano A. Leao – 81

Se voce tem um arquivo chamado sup.gp com o seguinte conteudo

reset

set grid

set xlabel "X"

set ylabel "Y"

set zlabel "Z"

set title "Exemplo de Superfıcie"

set ztics 0.50

set format z "%4.2f"

f(x,y)=sin(y/7)* cos(x/5)

set cntrparam levels incremental -1,0.25,1

set contour base

set hidden3d

splot f(x,y) t""

pause -1

Voce tera um grafico na tela e ao pressionar enter ele sera fechado.

Salvar Grafico

II Semana Ciencias Exatas Salviano A. Leao – 82

Exemplo gera as figuras sup.eps, sup.fig e sup.png

reset

set grid

set xlabel "X"

set ylabel "Y"

set zlabel "Z"

set title "Exemplo de Superfıcie"

set ztics 0.50

set format z "%4.2f"

f(x,y)=sin(y/7)* cos(x/5)

set cntrparam levels incremental -1,0.25,1

set contour base

set hidden3d

splot f(x,y) t""

pause -1 "Tecle Return Gerar Grafico EPS"

set terminal postscript landscape enhanced color lw 2 "Helvetica"

14

set out "sup.eps"

replot

set output # Volta a saida output para seu valor padrao

set terminal x11 # Volta para o terminal X11

!ls -ahl sup.eps # Lista o tamanho do arquivo gerado

pause -1 "Tecle Return Gerar Grafico FIG"

set term fig big color fontsize 14 thickness 2

Scilab

II Semana Ciencias Exatas Salviano A. Leao – 83

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 84

1. O que e Scilab

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 84

1. O que e Scilab

2. Ambiente do Scilab

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 84

1. O que e Scilab

2. Ambiente do Scilab

3. Algumas Funcoes Primitivas

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 84

1. O que e Scilab

2. Ambiente do Scilab

3. Algumas Funcoes Primitivas

4. Obtendo Ajuda

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 84

1. O que e Scilab

2. Ambiente do Scilab

3. Algumas Funcoes Primitivas

4. Obtendo Ajuda

5. Polinomios, Vetores e Matrizes

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 84

1. O que e Scilab

2. Ambiente do Scilab

3. Algumas Funcoes Primitivas

4. Obtendo Ajuda

5. Polinomios, Vetores e Matrizes

6. Programacao

Sumario

II Semana Ciencias Exatas Salviano A. Leao – 84

1. O que e Scilab

2. Ambiente do Scilab

3. Algumas Funcoes Primitivas

4. Obtendo Ajuda

5. Polinomios, Vetores e Matrizes

6. Programacao

7. Graficos

Origem do Scilab

II Semana Ciencias Exatas Salviano A. Leao – 85

■ Em 1990 foi iniciado seu desenvolvido pelos pesquisadores do INRIA (InstitutNational de Recherche en Informatique et en Automatique) e do ENPC (EcoleNationale des Ponts et Chaussees).

■ Em maio de 2003 foi criado o Consorcio Scilab que tornou-se responsavelpelo seu desenvolvimento.

■ Sua pagina e http://www.scilab.org/.

■ E distribuıdo gratuitamente e em codigo aberto via Internet desde 1994.

■ Devido sua qualidade e usado em diversos ambientes industriais eeducacionais pelo mundo.

O que e o Scilab

II Semana Ciencias Exatas Salviano A. Leao – 86

Scilab e um ambiente de programacao numerica bastante flexıvel. Suasprincipais caracterısticas sao:

■ Distribuicao gratuita, com codigo fonte disponıvel. Linguagem simples e defacil aprendizado;

■ Possui um bom sistema de auxılio ao usuario, help;

■ Poderoso ambiente para geracao de graficos 2D e 3D, inclusive comanimacao;

■ Possui varias funcoe para manipulacao de matrizes. As operacoes deconcatenacao, acesso e extracao de elementos, transposicao, adicao emultiplicacao de matrizes sao facilmente realizadas;

■ Permite trabalhar com polinomios, funcoes de transferencia, sistemas linearese grafos;

Caracterısticas do Scilab

II Semana Ciencias Exatas Salviano A. Leao – 87

■ Define-se facilmente uma funcao;

■ Permite o acesso a rotinas escritas nas linguagens FORTRAN ou C;

■ Pode ser acessado por programas de computacao simbolica como o Maple,que e um software comercial, ou o MuPAD2, que e livre para uso eminstituicoes de ensino/pesquisa;

■ Suporta o desenvolvimento de conjuntos de funcoes voltadas para aplicacoesespecıficas, os chamados toolboxes.

Home Page do Scilab

II Semana Ciencias Exatas Salviano A. Leao – 88

http://www.scilab.org/

Paginas da Web Sobre o Scilab

II Semana Ciencias Exatas Salviano A. Leao – 89

http://www.inria.fr/ INRIA - Centro de pesquisa criador do Scilab

http://www.enpc.fr/ ENPC - Centro de pesquisa criador do Scilab

http://www.scilab.org/ Pagina oficial do Scilab.

http://www.dca.ufrn.br/ pmotta/ Pagina do prof. Paulo S. Motta Pires, que fezum pequeno manual em portugues da versao 3.0 do Scilab.

http://www.rau-tu.unicamp.br/scilab/ Pagina de usuarios brasileiros quetrocam informacoes a respeito do Scilab.

http://www.das.ufsc.br/ werner/nivelamento/index.html Pagina comapostilas do Scilab.

http://aquarius.ime.eb.br/ aecc/ Pagina do Eduardo Carrilho com algummaterial sobre o Scilab.

Vari aveis Especiais

II Semana Ciencias Exatas Salviano A. Leao – 90

-->who

your variables are...

num tk_choose demoex demolist oldln

scipad help_menu scicos_pal

%scicos_menu %scicos_short %scicos_help

%scicos_display_mode modelica_libs

scicos_pal_libs addmenu delmenu %helps home

SCIHOME PWD TMPDIR MSDOS SCI guilib

sparselib xdesslib percentlib polylib

intlib elemlib utillib statslib alglib siglib

optlib autolib roblib soundlib metalib armalib

Vari aveis Especiais II

II Semana Ciencias Exatas Salviano A. Leao – 91

optlib autolib roblib soundlib metalib armalib

tkscilib tdcslib s2flib mtlblib %F %T

%z %s %nan %inf COMPILER %gtk

%pvm %tk $ %t %f %eps

%io %i %e

using 17511 elements out of 5000000.

and 62 variables out of 9231

your global variables are...

LANGUAGE %helps demolist %browsehelp LCC

%toolboxes %toolboxes_dir INDEX TMPDIR

using 1141 elements out of 11000.

and 9 variables out of 767

Vari aveis Especiais II

II Semana Ciencias Exatas Salviano A. Leao – 92

-->SCI // Diretorio no qual o Scilab foi instalado

SCI =

/usr/lib/scilab -4.0

-->PWD // Diretorio no qual esta trabalhando

PWD =

/home/salviano

-->home // Diretorio no qual esta trabalhando

home =

/home/salviano

-->chdir(’Progs ’) // Mudar de diretorio

Comandos de Interacao com o Shell

II Semana Ciencias Exatas Salviano A. Leao – 93

■ host

■ unix

■ unix g

■ unix s

■ unix w

■ unix x

-->unix_w(’ls -alh ’) // Lista arquivos no diretorio que se est

total 94M

drwxrwxr -x 93 salviano salviano 12K 2006 -10 -05 11:29 .

drwxr -xr -x 11 root root 4,0K 2006 -05 -22 11:00 ..

-rw-r--r-- 1 salviano salviano 3,2K 2004 -07 -04 15:10 0004029.gz

-rw-rw-r-- 1 salviano salviano 136K 2006 -04 -05 18:28 3band_model

drwxr -xr -x 3 salviano salviano 4,0K 2005 -12 -13 09:10 .adobe

drwxr -xr -x 2 salviano salviano 4,0K 2005 -04 -23 16:49 .alexandria

Comandos Simples

II Semana Ciencias Exatas Salviano A. Leao – 94

-->a=1 // Verifique o que ocorre

-->a=1; // Veja o que ocorre

-->a // Veja o que ocorre

-->clear // Veja o que ocorre

-->a // Veja o que ocorre

-->i=1:5 // Verifique o que ocorre

-->i=1:0.5:5 // Veja o que ocorre

-->a=2,b=3 // Veja o que ocorre

-->clear // Reinicializa as variaveis do sistema

-->a

-->b

Comandos Simples

II Semana Ciencias Exatas Salviano A. Leao – 95

-->a=5,b=10;

-->save(’dados.dat ’,a,b) // Salva no arquivo binario as variaveis

-->clear // Limpa as variaveis

-->a

-->b

-->load(’dados.dat ’,’a’,’b’) // Le as variaveis a e b no arquivo

-->a

-->b

-->diary(’file.sce ’) // Salva secao , o que for digitado a partir

-->a=10,v0=0,x0 =10;

-->t=1;

-->x=x0+v0*t+0.5*a*t^2;

-->diary(0) // reinicializa secao. Termina o arquivo.

Comandos Simples

II Semana Ciencias Exatas Salviano A. Leao – 96

-->a=2, pause

a =

2.

-1->a=3

a =

3.

-1->a=2*a

a =

6.

-1->resume

-->a

a =

2.

Numero Complexos

II Semana Ciencias Exatas Salviano A. Leao – 97

-->a=1+2*%i

a =

1. + 2.i

-->b=1 -2*%i

b =

1.] 2.i

-->a*b

ans =

5.

-->conj(a)

ans =

1.] 2.i

-->norm(a)

ans =

2.236068

-->[Ro,Theta]=polar(a)

Theta = 1.1071487 + 5.071E-17i

Ro = 2.236068

Constantes Especiais

II Semana Ciencias Exatas Salviano A. Leao – 98

O Scilab tem definido internamente algumas constantes especiais: %i, %pi, %e,e %eps.

■ A constante %i representa√−1, o numero imaginario i.

■ A constante %pi e π = 3.1415927 · · · .

■ A constante %e e o numero de Euler e = 2.7182818 · · · .

■ A constante %eps representa a precisao da maquina, %eps e o maior numerono qual 1 + %eps = 1.

■ A constante %inf representa o Infinity.

■ A constante %nan representa o NotANumber.

■ A constante %s e o polinomio s=poly(0,’s’) com o sımbolo s.

Constantes Especiais II

II Semana Ciencias Exatas Salviano A. Leao – 99

■ Para um vetor rts, p=poly(rts,’x’) define o polinomio p(x) com avariavel x de modo que roots(p) = rts).

■ A constante booleana %t que representa verdadeiro.

■ A constante booleana %f que representa falso.

■ Note que %t e o mesmo que 1==1 e %f e o mesmo que ~%t.

■ Estas variaveis sao consideradas predefinidas. Elas sao protegidas naopodendo ser alteradas.

■ Pode-se predefinir suas proprias variaveis com o comando predef, porexemplo, definindo i=sqrt(-1) em vez de %i.

■ Provavelmente o melhor modo e definir estas variaveis especiais no arquivocom as configuracoes iniciais do usuario, o <home dir>/.scilab.

Polin omios no Scilab

II Semana Ciencias Exatas Salviano A. Leao – 100

■ Os polinomios sao criados atraves da funcao poly.

■ Polinomios de mesma variavel, podem ser somados, subtraıdos, multiplicadose divididos.

■ Pode-se gerar polionimios por suas raizes.

■ Pode-se gerar polinomios por seus coeficientes.

■ Pode-se determinar as raizes de um polinomio.

Polin omios

II Semana Ciencias Exatas Salviano A. Leao – 101

■ O comando p=poly([-1,2],’x’) cria um polinomio com raizes −1 e 2.

■ O comando roots(p) encontra as raizes do polinomio f.

■ O comondo q=poly([-4 2 -1], ’x’, ’coeff’) cria o polinomioq(x) = −4 + 2x − x2.

■ Podemos somar, subtrair multiplicar e dividir polinomios.

-->roots(poly([-4 2 -1], ’x’, ’coeff ’))

ans =

1. + 1.7320508i

1. - 1.7320508i

Polin omios

II Semana Ciencias Exatas Salviano A. Leao – 102

Para complementar o exemplo, os dois polinomios podem ser multiplicados,divididos, somandos ou subtraıdos como mostra a sequencia de comandos,

-->p * q // Multiplicacao

-->p / q // Divisao

ans =

2

2 - 3s + s

----------

1 + 2s

-->[r, q] = pdiv(p,q) // Efetuando a divisao: q=quociente , r=rest

q =

- 1.75 + 0.5s

r =

3.75

-->p + q // Adicao

-->p - q // Subtracao

-->

Scilab: Vetores

II Semana Ciencias Exatas Salviano A. Leao – 103

■ O comando x = [1; 2; 3] cria um vetor coluna.

■ O comando y = [1 2 3] cria um vetor linha, assim como z = [4, 5, 6].

■ O comando x*y e uma matriz de 3 × 3.

■ O comando x’ e o transposto do vetor x.

■ O comando size(x) fornece a dimensao do vetor x.

■ O comando a=ones(1:10) gera um vetor de 10 sendo todos eles iguais a 1.

■ O comando b=zeros(1:10) gera um vetor de 10 sendo todos eles iguais a 1.

■ Podemos somar e subtrair dois vetores.

■ Podemos multiplicar e dividir um vetor por um escalar.

Scilab: Vetores

II Semana Ciencias Exatas Salviano A. Leao – 104

■ O comando norm(v) retorna a magnitude do vetor v, ou seja, seu modulo.

■ As funcoes min(v) e max(v) retornam respectivamente o valor mınimo o valormaximo do vetor v.

■ Produto escalar dos vetores linha u e v e: u*v’

■ Produto escalar dos vetores coluna u e v e: u’*v

■ As operacoes a serem realizadas termo a termo sao obtidas usando umponto antes da operacao textcolorred( .* ./ ), por exemplo, para obter um vetorlinha da multiplicacao de elemento por elemento dos vetores linha u e v,fazemos: u.*v

■ Inversa da matriz: inv(matriz)

■ matriz identidade: eye(n,n) ou eye(A)

Matrizes

II Semana Ciencias Exatas Salviano A. Leao – 105

Vamos considerar as matrizes

A =

1 2 3-5 4 -2-3 7 1

B =

-3 4 -14 -2 82 -5 1

■ O comando A = [1 2 3; -5 4 -2; -3 7 1] cria a matriz A.

■ O comando B = [-3 4 -1; 4 -2 8; 2 -5 1] cria a matriz B

■ O comando A(1,2) mostra o elemento A1,2 da matriz A.

■ O comonado size(A) e uma matriz de 3 × 3.

■ O comando A’ e a transposta da matriz A.

■ Podemos somar e subtrair dois matrizes de mesma dimensao.

■ Podemos multiplicar e dividir um vetor por um escalar.

■ Podemos multiplicar uma matriz por outra.

Elementos de Vetores e Matrizes

II Semana Ciencias Exatas Salviano A. Leao – 106

■ O comando V(2:5) acessa todos os elementos V2, V3, V4 e V5 do vetor V .

■ O comando V(1:2:9) acessa todos os elementos impares entre 1 e 9 do vetorV .

■ O comando A(:,2) mostra todos os elementos da coluna 2.

■ O comando v($), acessa ultimo elemento de v.

■ O comando A($-1,:), acessa a segunda linha da matriz A.

II Semana Ciencias Exatas Salviano A. Leao – 107

■ Funcao de Vandermonde

■ Matriz de Hilbert: testmatrix(’hilb’,n)

■ Quadrado Magico: testmatrix(’magic’,n)

■ Traco: trace(matrix)

■ Dimensoes de uma/um matriz/vetor: size(matrix)

■ Matriz de elementos aleatorios: rand(n,m) or rand(A)

■ Extraindo linhas: A(1,:), A(2,:)

■ Extraindo colunas: A(:,1), A(:,2)

■ Adicionando vetores linhas a um vetor coluna: vl = [], vl = [vl l1], vl = [vl l2]

■ Adicionando colunas a uma matriz de vetores linhas: B = [], B = [B; l1], B = [B;l2]

■ Adicionando colunas a uma matriz de vetores colunas: B=[], B=[B c1],B=[Bc2]

II Semana Ciencias Exatas Salviano A. Leao – 108

■ Adicionando vetores coluna a um vetor coluna: vc = [], vc = [vc c1], vc = [cvc2]

■ Soma e produto de todos elementos de uma matriz: sum(B), prod(B)

■ Soma e produto por colunas (para produzir uma linha soma/produto):sum(B,’r’), prod(B,’r’)

■ Soma e produto por linhas (para produzir uma coluna soma/produto):sum(B,’c’), prod(B,’c’)

■ Solucao do Sistema Linear A · x + c = 0: [x0,nsA] = linsolve(A,c[,x0])

■ Metodo dos mınimos-quadrados para forca uma solucao def(x) = A · x + c, com derivada g(x) = f ′(x) = A:

--> deff(’y = f(x,A,c)’,’y = A*x + c’)

--> deff(’yp = g(x,A,c)’,’yp = A’)

--> [SSE ,xsol] = leastsq(f,g,x0)

ou usar a funcao Lslinsolve descrita.

II Semana Ciencias Exatas Salviano A. Leao – 109

■ Solucao do Sistema Linear A · x = b usando divisao a esquerda:--> xsol = A\b

■ Fatorizacao LU : [L,U] = lu(A) or [L,U,P] = lu(A)

■ Decomposicao do Valor-Singular da matriz A:

[U,S,V] = svd(A)

[s] = svd(A)

[U,S,V,r] = svd(A,tol)

■ Rank da matriz A: rank(A)

■ Normas da matriz A:

— norm(A) ou norm(A,2): Norma Euclideana

— norm(A,1): Norma-L1 ou norma por coluna

— norm(A,’inf’) ou norm(A,%if): Norma Infinita

— norm(A,’fro’): Norma de Frobenius

II Semana Ciencias Exatas Salviano A. Leao – 110

■ Normas de um vetor

— norm(v) ou norm(v,2): Norma Euclideana

— norm(v,p): Norma-Lp

— norm(v,’inf’): Norma Infinita

II Semana Ciencias Exatas Salviano A. Leao – 111

■ Numero de condicoes de uma matriz: cond(matriz)

■ Determinante de uma matriz: det(matriz)

■ Eliminacao Gaussiana funcoes definidas pelo usuario:

— gausselim: Eliminacao Gaussiana Naıve

— gausselimPP: Eliminacao Gaussiana com pivotacao parcial

— gausselimmm: Eliminacao Gaussiana para multiplos conjuntos deequacoes

— gausselimd: Eliminacao Gaussiana usada para calcular o determinante

■ Para obter os autovalores de uma matriz: spec(matriz)

■ Funcoes definidas pelo usuario para autovetores

■ Funcoes definidas pelo usuario para gerar a equacao caracterıstica.

■ Funcoes definidas pelo usuario para generalizar autovetores

II Semana Ciencias Exatas Salviano A. Leao – 112

■ Matrizes Esparsas:

— Define uma matriz esparsa: sparse(matriz) ou sparse(indice,valores)

— Converte matriz esparsa em cheia: full(matriz)

— Para obter informacoes sobre a matriz esparsa:[index,val,dim] = spget(sparse_matrix)

— Matriz esparsa com uns : spones(A)

— Matriz esparsa identidade: speye(n,n)

— Matriz esparsa com elementos aleatorios: sprand(n,m,density)

— Matriz esparsa com entradas zero: spzeros(A) ou spzeros(n,m)

— Funcoes definidas pelo usuario para visualizar as matrizes esparsas.

— Fatorizacao de uma matriz esparsa, use:

[hand ,rk] = lufact(As)

[P,L,U,Q] = luget(hand)

— ludel(hand)

II Semana Ciencias Exatas Salviano A. Leao – 113

■ Funcoes definidas pelo usuario para resolver um sistema linear com umamatriz tridiagonal.

■ Solucao do sistema linear de equacoes tridiagonal usando matrizes esparsas.

■ Solucoes iterativas de um sistema linear de equacoes

II Semana Ciencias Exatas Salviano A. Leao – 114

■ Fatorizacao LU: [L,U] = lu(A) or [L,U,P] = lu(A)

■ Decomposicao do Valor Singular

[U,S,V] = svd(A)

[s] = svd(A)

[U,S,V,r] = svd(A,tol)

Operac oes B asicas com Vetores e Matrizes

II Semana Ciencias Exatas Salviano A. Leao – 115

SIMBOLO OPERACAO

[] definicao de matriz e concatenacao

: cria um vetor num intervalo: v=[inicio:incremento:fim]

; separador de linhas

( ) extracao: m=a(k)

( ) insercao: a(k)=m

’ transposta

+ adicao

− subtracao

∗ multiplicacao

/ divisao a direita

Mais Operac oes Com Vetores e Matrizes

II Semana Ciencias Exatas Salviano A. Leao – 116

SIMBOLO OPERACAO

\ divisao a esquerda

^ exponenciacao

.* multiplicacao elemento-a-elemento

.\ divisao, a esquerda, elemento-a-elemento

./ divisao, a direita, elemento-a-elemento

.^ exponenciacao elemento-a-elemento

.*. produto de Konecker

./. divisao, a direita de Konecker

.\. divisao, a esquerda de Konecker

Operac oes Matriciais: Exemplo

II Semana Ciencias Exatas Salviano A. Leao – 117

-->x=[1 2 3]

x = 1. 2. 3.

-->y=[1 2 3]

y = 1. 2. 3.

-->x*y

!--error 10

inconsistent multiplication

-->x.*y

ans = 1. 4. 9.

-->y./x

ans = 1. 1. 1.

-->A = [ 1 2 3; 4 5 6; 7 8 9]

A =

1. 2. 3.

4. 5. 6.

7. 8. 9.

-->B = [ 2 2 2; 2 2 2; 2 2 2]

B =

2. 2. 2.

2. 2. 2.

2. 2. 2.

-->A .\ B

ans =

2. 1. 0.6666667

Programacao: Loop For

II Semana Ciencias Exatas Salviano A. Leao – 118

O comando for tem a forma geral:

for variavel = vetor_linha

instrucao_1

instrucao_2

... ...

instrucao_n

end

Loop For: Exemplo

II Semana Ciencias Exatas Salviano A. Leao – 119

-->for k = 1:3

-->a = k + 1

-->end

a =

2.

a =

3.

a =

4.

-->v = [2 3 4 5 6];

-->y = 0;

-->for k = v

-->y = y + k

-->end

y =

2.

y =

5.

y =

9.

y =

14.

y =

20.

Programacao: Loop While

II Semana Ciencias Exatas Salviano A. Leao – 120

O comando while tem a forma geral:

while condicao

instrucao_1

instrucao_2

... ...

instrucao_n

end

OPERADOR Significado

== ou = igual a

< menor que

> maior que

<= menor ou igual a

>= maior ou igual a

<> ou ~= diferente

Loop while: Exemplo

II Semana Ciencias Exatas Salviano A. Leao – 121

-->x = 1;

-->while x < 14

-->x = x * 2

-->end

x =

2.

x =

4.

x =

8.

x =

16.

Programacao: IF

II Semana Ciencias Exatas Salviano A. Leao – 122

O comando IF tem a forma geral:

if condicao_1 then

sequencia_de_instrucoes_1

else

sequencia_de_instrucoes_2

end

Na sua forma mais geral ,

if condicao_1 then

sequencia_de_instrucoes_1

elseif condicao_2

sequencia_de_instrucoes_2

... ... ...

... ... ...

... ... ...

elseif condicao_n

sequencia_de_instrucoes_n

else

sequencia_de_instrucoes_n+1

end

Programacao: select case

II Semana Ciencias Exatas Salviano A. Leao – 123

O comando select case tem a forma geral:

select variavel_de_teste

case expressao_1

sequencia_de_instrucoes_1

case expressao_2

sequencia_de_instrucoes_2

...

...

... ... ... ... ... ...

case expressao_n

sequencia_de_instrucoes_n

else

sequencia_de_instrucoes_n+1

end

Definindo Scripts

II Semana Ciencias Exatas Salviano A. Leao – 124

■ Atraves dos comando save e load, e possıvel armazenar e recuperar valoresde variaveis.

■ Atraves do comando diary, e poissıvel criar arquivos onde armazenamos amemoria das sessoes.

■ Pode-se criar arquivos contendo comandos do Scilab que serao executadosposteriormente dentro do seu ambiente, os scripts.

Os scripts podem ser chamados atraves do comando:

-->exec(’’nome_do_arquivo_de_comandos.sce ’’)

Programacao: Scripts

II Semana Ciencias Exatas Salviano A. Leao – 125

Sao caracterısticas dos arquivos scripts:

■ Todas as variaveis definidas no arquivo de comandos permanecem validas noambiente Scilab apos a execucao dos comandos do arquivo.

■ Nao ha uma definicao clara das entradas e saıdas do script. Esse fato podedificultar a correcao de possıveis erros.

Exemplo

II Semana Ciencias Exatas Salviano A. Leao – 126

Pelo metodo de Newton-Raphson a raiz de uma funcao f(x) = 0 pode serobtida por

xi+1 = xi −f(xi)

f ′(xi).

A funcao que permite obter a√

2 e

f(x) = x2 − 2

Entao a formula de Newton-Raphson e

xi+1 = xi −x2

i − 2

2xi

.

Vamos usar x0 = 1. O script para resolver este sistema e:

Newton-Raphson

II Semana Ciencias Exatas Salviano A. Leao – 127

// script: metodo de Newton -Raphson

// f(x) = x * x - 2

N = 10; // Numero maximo de iteracoes

x0 = 1.0; // Aproximacao inicial

delta = 10^( -5); // Erro

xn = x0;

for n=1:N

xn1 = xn - (xn * xn - 2)/(2 * xn);

if abs((xn1 -xn)/xn1) < delta then

printf(’Valor da raiz = %10.7f’, xn1)

return

end

xn = xn1;

end

printf(’Nao converge em n=%f iteracoes", N)

Definindo Func oes

II Semana Ciencias Exatas Salviano A. Leao – 128

A forma geral de uma funcao e:

function [y1, ..., yn] = foo(x1, ..., xm)

instrucao_1

instrucao_2

...

instrucao_p

endfunction

Func ao: Exemplo

II Semana Ciencias Exatas Salviano A. Leao – 129

-->Digitando uma funcao no ambiente Scilab

-->function [y1, y2] = exemplo(x1 , x2)

-->// Entrada: x1 , x2

-->// Saida: y1, y2

-->y1 = x1 + x2

-->y2 = x1 * x2

-->endfunction

-->[a,b] = exemplo(2, 3)

b =

6.

a =

5.

-->

Func ao: Exemplo

II Semana Ciencias Exatas Salviano A. Leao – 130

-->Usando deff

-->deff(’[y1, y2]= exemplo(x1, x2)’,’y1=x1+x2,

y2=x1*x2 ’)

-->[a, b] = exemplo (3,4)

b =

12.

a =

7.

-->deff(’[y]=f(x)’,’y=x^2-2’);

-->[s]= fsolve(1,f ,0.0001)

Taxa de Juros Real EmbutidasNas Compras a Prazo

II Semana Ciencias Exatas Salviano A. Leao – 131

Taxa de Juros Real Embutidas Nas Compras a Prazo

II Semana Ciencias Exatas Salviano A. Leao – 132

As varaveis do problema sao:

■ Preco a vista da mercadoria: Vm = 1200

■ Valor da entrada: Ve = 120

■ Valor da dıvida: Vd = Vm − Ve

■ Numero de parcelas da compra: n = 20

■ Valor de cada parcela: P = 120

■ O valor total a ser pago: VT = Ve + n · P

Taxa de Juros Real Embutidas Nas Compras a Prazo

II Semana Ciencias Exatas Salviano A. Leao – 133

A questao e: Qual a taxa de juros que esta sendo aplicada?

■ A dıvida no fim do primeiro mes e:

D1 = Vd(1 + i) − P

■ A dıvida no fim do segundo mes e:

D2 = D1(1 + i) − P = Vd(1 + i)2 − P − P (1 + i)

■ A dıvida no fim do n-esimo mes e:

Dn = Vd(1 + i)n − P

n−1∑

l=0

(1 + i)l = 0

Taxa de Juros Real Embutidas Nas Compras a Prazo

II Semana Ciencias Exatas Salviano A. Leao – 134

A expressao da dıvida do n-esimo mes pode ser simplificada usando:

m−1∑

l=0

xl =xm

x − 1− 1

x − 1=

xm − 1

x − 1

Logo a expressao para a dıvida, pode ser reescrita como:

Vd(1 + i)n − P

[

(1 + i)n − 1

1 + i − 1

]

= 0

Vdi(1 + i)n − P (1 + i)n + P = 0

Para os valores exemplificados a solucao e:

{x = 0} , {x = −1. 865 9} ,{

x = 9. 199 9 × 10−2}

Taxa de Juros Real Embutidas Nas Compras a Prazo

II Semana Ciencias Exatas Salviano A. Leao – 135

Para encontrarmos o valor da taxa de juros i = x, deve-se resolver a equacaotranscendental acima. Sua solucao e obtida usando a funcao fsolve do scilab.

1080(1 + x)20 − 12020−1∑

l=0

(1 + x)l = 0

Para os valores exemplificados a solucao e:

{x = −1. 865 9} ,{

x = 9. 199 9 × 10−2}

Codigo Scilab

II Semana Ciencias Exatas Salviano A. Leao – 136

function []=Taxa()

printf("Entre com o valor da divida\n");

[vd]= scanf("%d\n");

printf("Entre com o valor da parcela\n");

[p]=scanf("%d\n");

printf("Entre com o numero de parcelas\n");

[n]=scanf("%d\n");

i=fsolve(0.5,divida ,0.0001);

printf("Taxa de juros de %f \n\n ", 100*i);

endfunction

// Chama funcao que calacula a divida

function [d]= divida(x)

s0 = vd*(1+x)^n;

soma =0;

for j=0:n-1

soma=soma + (1+x)^j

end;

d= s0 - p*soma;

endfunction

Soluc ao via Maxima

II Semana Ciencias Exatas Salviano A. Leao – 137

Unsando o software Maxima, podemos resolver este problema, da seguinteforma.

vd :1080;

p:120;

n:20;

f(x):=(vd*x-p)*(1+x)^n+p;

plot2d(f(x),[x ,0.0 ,0.12]);

find_root(f(x),x ,0.01 ,0.5);

Exemplo: Lancamento de proj eteis

II Semana Ciencias Exatas Salviano A. Leao – 138

Uma bala de canhao que e atirada comuma velocidade inicial v0 numa direcaoque forma um angulo θ acima dahorizontal. Calcule a posicao e avelocidade como funcoes do tempo.Considere que a forca de resistenciado ar e diretamente proporcional avelocidade.

Soluc ao: A equacao de movimento(vetorial) e dada por

mv = −kmv − mgey

Que pode ser reescrita como

vekt + kvekt = −geyekt

d

dt

(

vekt)

= −geyekt

Exemplo: Lancamento de proj eteis

II Semana Ciencias Exatas Salviano A. Leao – 139

Integrando a equacao acima

∫ t

0

d

dt

(

vekt)

dt =

∫ t

0

−geyektdt

Obtem-se

Exemplo: Lancamento de proj eteis

II Semana Ciencias Exatas Salviano A. Leao – 139

Integrando a equacao acima

∫ t

0

d

dt

(

vekt)

dt =

∫ t

0

−geyektdt

Obtem-se

v(t) = v0e−kt− g

k

(

1 − e−kt)

ey

Definindo,

Exemplo: Lancamento de proj eteis

II Semana Ciencias Exatas Salviano A. Leao – 139

Integrando a equacao acima

∫ t

0

d

dt

(

vekt)

dt =

∫ t

0

−geyektdt

Obtem-se

v(t) = v0e−kt− g

k

(

1 − e−kt)

ey

Definindo,

vt = −g

key

temos

Exemplo: Lancamento de proj eteis

II Semana Ciencias Exatas Salviano A. Leao – 139

Integrando a equacao acima

∫ t

0

d

dt

(

vekt)

dt =

∫ t

0

−geyektdt

Obtem-se

v(t) = v0e−kt− g

k

(

1 − e−kt)

ey

Definindo,

vt = −g

key

temos

r(t) = v0e−kt + vt

(

1 − e−kt)

Integrando esta equacao,

Exemplo: Lancamento de proj eteis

II Semana Ciencias Exatas Salviano A. Leao – 139

Integrando a equacao acima

∫ t

0

d

dt

(

vekt)

dt =

∫ t

0

−geyektdt

Obtem-se

v(t) = v0e−kt− g

k

(

1 − e−kt)

ey

Definindo,

vt = −g

key

temos

r(t) = v0e−kt + vt

(

1 − e−kt)

Integrando esta equacao,

∫ t

0

dr

dtdt =

∫ t

0

v0e−ktdt+

∫ t

0

vt

(

1 − e−kt)

dt

Obtem-se que,

Exemplo: Lancamento de proj eteis

II Semana Ciencias Exatas Salviano A. Leao – 139

Integrando a equacao acima

∫ t

0

d

dt

(

vekt)

dt =

∫ t

0

−geyektdt

Obtem-se

v(t) = v0e−kt− g

k

(

1 − e−kt)

ey

Definindo,

vt = −g

key

temos

r(t) = v0e−kt + vt

(

1 − e−kt)

Integrando esta equacao,

∫ t

0

dr

dtdt =

∫ t

0

v0e−ktdt+

∫ t

0

vt

(

1 − e−kt)

dt

Obtem-se que,

r(t) =r0 + vtt+

(v0 − vt)

(

1 − e−kt)

k

Exemplo: Lancamento de proj eteis

II Semana Ciencias Exatas Salviano A. Leao – 140

Com as condicoes iniciais sao:{

x(t = 0) = 0y(t = 0) = 0

{

x(t = 0) = v0cos θy(t = 0) = v0 sen θ

A coordenada x(t) sera

Exemplo: Lancamento de proj eteis

II Semana Ciencias Exatas Salviano A. Leao – 140

Com as condicoes iniciais sao:{

x(t = 0) = 0y(t = 0) = 0

{

x(t = 0) = v0cos θy(t = 0) = v0 sen θ

A coordenada x(t) sera

x =v0cos θ

k

(

1 − e−kt)

e a coordenada y(t)

Exemplo: Lancamento de proj eteis

II Semana Ciencias Exatas Salviano A. Leao – 140

Com as condicoes iniciais sao:{

x(t = 0) = 0y(t = 0) = 0

{

x(t = 0) = v0cos θy(t = 0) = v0 sen θ

A coordenada x(t) sera

x =v0cos θ

k

(

1 − e−kt)

e a coordenada y(t)

y(t) = −g

kt +

1

(

v0 sen θ +g

k

)

(

1 − e−kt)

O tempo de voo T pode ser obtido darelacao y(T ) = 0

Exemplo: Lancamento de proj eteis

II Semana Ciencias Exatas Salviano A. Leao – 140

Com as condicoes iniciais sao:{

x(t = 0) = 0y(t = 0) = 0

{

x(t = 0) = v0cos θy(t = 0) = v0 sen θ

A coordenada x(t) sera

x =v0cos θ

k

(

1 − e−kt)

e a coordenada y(t)

y(t) = −g

kt +

1

(

v0 sen θ +g

k

)

(

1 − e−kt)

O tempo de voo T pode ser obtido darelacao y(T ) = 0

− g

kT +

1

k

(

v0 sen θ +g

k

)

(

1 − e−kT)

= 0

ou seja,

Exemplo: Lancamento de proj eteis

II Semana Ciencias Exatas Salviano A. Leao – 140

Com as condicoes iniciais sao:{

x(t = 0) = 0y(t = 0) = 0

{

x(t = 0) = v0cos θy(t = 0) = v0 sen θ

A coordenada x(t) sera

x =v0cos θ

k

(

1 − e−kt)

e a coordenada y(t)

y(t) = −g

kt +

1

(

v0 sen θ +g

k

)

(

1 − e−kt)

O tempo de voo T pode ser obtido darelacao y(T ) = 0

− g

kT +

1

k

(

v0 sen θ +g

k

)

(

1 − e−kT)

= 0

ou seja,

T =kv0 sen θ + g

kg

(

1 − e−kT)

Exemplo: Lancamento de proj eteis

II Semana Ciencias Exatas Salviano A. Leao – 141

Use o Scilab para resolver a equacaotrancendental anterior, definindo afuncao:

deff(′[y] = f ′,′f(t) = kgT − (kv0

sen θ − g)

(1 − exp(−kt))′);

Use os seguintes valores:

■ g = 9.8 m/s2

■ k = 2

■ v0 = 15 m/s

■ θ = 45◦

Responda as seguintes questoes:

■ Qual e o tempo que o corpo levapara atingir o ponto mais alto datrajetoria.

■ Encontre o tempo de queda.

■ O tempo de queda e igual aodesubida?

Maxima

II Semana Ciencias Exatas Salviano A. Leao – 142

Maxima

II Semana Ciencias Exatas Salviano A. Leao – 143

Interface Gr afica WxMaxima

II Semana Ciencias Exatas Salviano A. Leao – 144

Interface Gr afica XMaxima

II Semana Ciencias Exatas Salviano A. Leao – 145

Tutoriais do maxima

II Semana Ciencias Exatas Salviano A. Leao – 146

Um bom numero de tutoriais em portugues estao catalogados na pagina domaxima http://maxima.sourceforge.net/docs.shtml

■ Maxima reference manual in Brazilian Portuguese (HTML)http://maxima.sourceforge.net/docs/manual/pt BR/maxima.html

■ O Programa de Algebra Computacional Maximahttp://maxima.sourceforge.net/docs/tutorial/pt/gaertner-tutorial-revision/Contents.htm

■ Maxima Mınimohttp://maxima.sourceforge.net/docs/tutorial/pt/minimal-maxima.pdf

■ Introducao aos sistemas dinamicos: uma abordagem pratica com Maxima byJaime http://fisica.fe.up.pt/maxima/book/sistdinam-1 2.pdf

Operadores Aritm eticos

II Semana Ciencias Exatas Salviano A. Leao – 147

Sımbolo Exemplo Explicacao

+ a + b Adicao− a − b Subtracao∗∗ a ∗ ∗b Exponenciacao∧ a ∧ b Exponenciacao∗ a ∗ b Multiplicacao/ a/b Divisao

Maxima como uma calculadora

II Semana Ciencias Exatas Salviano A. Leao – 148

O Maxima pode ser usado como uma calculadora de precisao arbitraria. Eleespera que voce entre com um ou mais comandos e expressoes separados pelocaracter ;.

(%i1) 9+7;

(%o1) 16

(%i2) -17*19;

(%o2) -323

(%i3) 10/2;

(%o3) 5

Refer encia ao ultimo resultado

II Semana Ciencias Exatas Salviano A. Leao – 149

No Maxima podemos nos referir ao resultado do ultimo comando com o caracter%, e a qualquer entrada (input) ou saıda (output) previa pelos seus respectivosprompts: %i (input) or %o (output). Por exemplo:

(%i4) % - 10;

(%o4) -5

(%i5) %o1 * 3;

(%o5) 48

Caracterıticas do Maxima

II Semana Ciencias Exatas Salviano A. Leao – 150

■ As operacoes basicas sao digitadas por linha, e termina com um ponto evirgula ;.

■ O sinal de atribuicao e o :=.

■ O sinal de atribuicao de valores e o :.

■ O %pi e o numero pi.

Exemplos:

f(x):=2*x^2-3x+1;

f(1);

integrate(1/(1+x^3),x)

diff(cos(x),x);

II Semana Ciencias Exatas Salviano A. Leao – 151

O Maxima calcula integrais definidas

integrate( 1/(1+x^2), x, 0, 1 );

Ele faz graficos

plot2d(sin(x),[x,0 ,2*%pi])

plot3d(x^2-y^2,[x,-2,2],[y,-2,2],[grid ,12 ,12])

Tambem calcula limites, para x −→ ∞limit( (2*x+1)/(3*x+2), x,inf );

limit( sin(3*x)/x, x ,0);

II Semana Ciencias Exatas Salviano A. Leao – 152

O Maxima pode realizar calculos com precisao arbitraria

block([ fpprec :100] ,bfloat(%pi));

block([ fpprec :100] ,sin(bfloat(%pi));

O Maxima resolve equacoes

solve([x+y+z=5,3*x-5*y=10,y+2*z=3],[x,y,z]);

solve(x^2-5*x+6 =0,x);

O Maxima resolve numericamente

find_root(5*x-exp(x),x,0.5 ,5);

Trabalha com matrizes. Entre com seus valores

A:matrix ([1 ,2] ,[3 ,4]);

B:matrix ([1 ,1] ,[1 ,1]);

II Semana Ciencias Exatas Salviano A. Leao – 153

As matrizes podem ser adicionadas

A + B;

A . B;

A^^-1;

determinant(matrix([a,b],[c,d]));

transpose(A);

II Semana Ciencias Exatas Salviano A. Leao – 154

O Maxima pode resolver equacoes diferenciais analiticamente e numericamente.

ode2(’diff(y,x)+3*x*y = sin(x)/x, y,x);

ode2(’diff(y,x) -y = 1, y,x);

ode2(’diff(y,x,2) - y = 1, y,x);

Voce pode dar um nome para uma equacao

eq:’diff(y,x) = -y;

ode2(eq, y, x);

Para obter uma solucao para um valor inicial usamos a funcao ic1, para definir acondicao inicial. Posteriormente armazenamos a solucao na variavel sol.

sol: ic1(%, x= 1, y= 8);

plot2d(rhs (sol),[x,-4,4],[y, -10 ,10]);

Teoria de Numeros

II Semana Ciencias Exatas Salviano A. Leao – 155

expand((x+y)^6);

factor(x^6 -1);

factor (123412341231234);

factor (2^(2^5)+1);

100!;

bfloat(%pi);

block([ fpprec :1000] ,bfloat(%pi));

cfdisrep([1 ,2 ,3 ,5 ,2]);

bfloat (%);

Programac ao

II Semana Ciencias Exatas Salviano A. Leao – 156

for a:-3 thru 26 step 7 do ldisplay(a);

s:0; for i:1 while i<=10 do s:s+i; done; s;

fib[0]:0; fib [1]:1; fib[n]:=fib[n-1]+ fib[n-2];

fib[20];

Graficos

II Semana Ciencias Exatas Salviano A. Leao – 157

plot2d(sin(x)/x,[x, -5 ,5]);

plot3d(sin(sqrt(x^2+y^2))/sqrt(x^2+y^2),[x,-12,12],[y, -12 ,12]);

plot3d([cos(y)*(10.0+6*cos(x)),sin(y)*(10.0+6*cos(x)),-6*sin(x)],

[x,0 ,2*%pi],[y,0 ,2*%pi],[’grid ,40 ,40]);

plot3d ([5* cos(x)*(cos(x/2)* cos(y)+sin(x/2)* sin(2*y)+3.0) -10.0 ,

-5*sin(x)*(cos(x/2)* cos(y)+sin(x/2)* sin(2*y)+3.0) ,

5*(-sin(x/2)* cos(y)+cos(x/2)* sin(2*y))],

[x,-%pi ,%pi],[y,-%pi ,%pi],[’grid ,40,40]);

plot2d(sec(x),[x,-2,2],[y,-20,20],[nticks ,200]);

plot2d([parametric ,cos(t),sin(t),[t,-%pi*2,%pi *2]]);

plot2d([x^3+2 ,[parametric ,cos(t),sin(t),[t,-5,5]]], [x, -3 ,3]);

Diferenciac ao e Integrac ao

II Semana Ciencias Exatas Salviano A. Leao – 158

diff(sin(x^2));

’integrate(%E** sqrt(a*y),y,0 ,4);

integrate(%E**sqrt(a*y),y,0 ,4);

integrate(sin(x),x);

sum((1/2)^i,i,0,inf);

laplace(delta(T-A)*sin(B*T),T,S);

Maxima R apido

II Semana Ciencias Exatas Salviano A. Leao – 159

■ Limites

limit( (5*x+1)/(3*x-1),x,inf);

■ Equacoes Diferenciais Ordinarias

depends(y,x);

diff(y,x)=(4 -2*x)/(3*y^2 -5);

ode2(%,y,x);

latex(%);

■ Resolver um Sistema Linear de Equacoes

linsolve( [3*x+4*y=7, 2*x+4*y=13], [x,y]);

eq1: x^2 + 3*x*y + y^2 = 0;

eq2: 3*x + y = 1;

solve([eq1 , eq2]);

II Semana Ciencias Exatas Salviano A. Leao – 160

■ Manipulando Matrizes

a: matrix ([1 ,2] ,[3 ,4]);

b: matrix ([2 ,2] ,[2 ,2]);

a.b;

h[i,j]:=1/(i+j);

a: genmatrix(h,3 ,3);

determinant(a);

b: matrix ([2 ,3] ,[5 ,6]);

echelon(b);

invert(b);

eigenvectors(b);

II Semana Ciencias Exatas Salviano A. Leao – 161

■ Manipulando Arquivos

load(file);

■ Interrompendo uma computacao

factor (2^(2^7)+1);

c

MAXIMA >>:q

■ Saindo do Maxima

quit ();

Obrigado pela atenc ao

II Semana Ciencias Exatas Salviano A. Leao – 162

top related