introdução ao scilab 3.0 parte 1 - dimap.ufrn.brmotta/dim0404/scilab/scilab-slides1.pdf ·...
TRANSCRIPT
Introducao ao Scilab 3.0Parte 1
Paulo S. Motta [email protected]
Departamento de Engenharia de Computacao e AutomacaoUniversidade Federal do Rio Grande do Norte
NATAL - RN
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 1 / 46
Contatos Contatos
Enderecos e Creditos
Prof. Paulo S. Motta Pires
e-mail: [email protected]
homepage : www.dca.ufrn.br/~pmotta
Este material pode ser copiado livremente, mantidos os creditos.
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 2 / 46
Conhecimentos Necessarios Pre-requisitos
Pre-requisitos
Basico de Programacao
Criar programas usando um editorAtribuir valores e usar variaveisloops
Conceitos
Escalares (reais, complexos)Vetores, Matrizes
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 3 / 46
Observacoes Perguntas
Observacoes
Perguntas podem ser feitas a qualquer momento
Nao tenho todas as respostas
Proficiencia em programacao = pratica
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 4 / 46
Agenda
Agenda
Parte 1
Introducao: Computacao NumericaO Ambiente Scilab
Parte 2
Operacoes BasicasPolinomios, Vetores, Matrizes e Listas
Parte 3
Programacao
Parte 4
GraficosConsideracoes Finais
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 5 / 46
Computacao Numerica Definicao
Computacao Numerica: Definicao
Utilizacao de computadores para manipulacao de numeros.
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 6 / 46
Computacao Numerica Aplicacoes
Computacao Numerica: Aplicacoes
Pesquisa e Desenvolvimento
Industrias:
PetroquımicaEletricidadeCivilMecanicaAutomobilısticaAeronauticaPrevisao do tempo
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 7 / 46
Computacao Numerica Utilizacao
Computacao Numerica: Utilizacao
Exemplos:
Computacao Grafica
Processamento de Sinais
Processamento de Imagens
Controle de Processos
Automacao Industrial
Fısica
Matematica
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 8 / 46
Computacao Numerica Linguagens
Computacao Numerica: Linguagens
FORTRAN (1954) - FORmula TRANslation
Pascal
C, C++
Java
Python
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 9 / 46
Computacao Numerica Ambientes
Computacao Numerica: Ambientes
Scilab
OCTAVE
R
TELA
Matlab
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 10 / 46
Scilab Logo do Scilab
Scilab: Ambiente de Computacao Numerica
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 11 / 46
Benefıcios Utilizacao do Scilab
Scilab no Ensino de Engenharia
Metodos Computacionais
Algebra Linear Computacional
Processamento Digital de Sinais
Circuitos Eletricos
Outras
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 12 / 46
Benefıcios Linhas de Pesquisa
Scilab em Pesquisa
Ferramenta de suporte para linhas de pesquisa onde o uso decomputadores na resolucao de problemas numericos e intensivo
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 13 / 46
Benefıcios Historico
Scilab - Historico
Ambiente para a resolucao de problemas numericos
CACSD (Computer Aided Control System Design) - Projeto deSistemas de Controle Auxiliados por Computador
Software Numerico de proposito geral
Criado em 1990 - Franca
INRIAENPC
Distribuıdo na Internet desde 1994
Mantido pelo Consorcio Scilab - Maio de 2003
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 14 / 46
Benefıcios Consorcio Scilab - Componentes
Componentes do Consorcio Scilab
Appedge
AXS Inginierie
TNI
Cril Technology
Esterel Technology
CEA
CNES
Dassault Aviation
EDF
ENPC
INRIA
PSA Peugeot Citroen
Renault
Thales
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 15 / 46
Benefıcios Consorcio Scilab - Objetivos
Objetivos do Consorcio:
Organizar a cooperacao e intercambio entre os desenvolvedores doScilab visando incorporar ao software os ultimos avancos cientıficos naarea de computacao numerica;
Organizar a cooperacao e intercambio entre os usuarios do Scilab como objetivo de fazer com que o software cumpra requisitos necessariospara que possa ser utilizado com eficiencia na industria, pesquisa eeducacao;
Obter os recursos necessarios para a manutencao da equipe dedesenvolvedores e para garantir suporte adequado aos usuarios
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 16 / 46
Benefıcios Free/Open Source Software
Software Livre e de Codigo Aberto: Vantagens
Vantagens:
Ultima versao sempre disponıvel atraves da Internet
Pode ser legalmente copiado, utilizado, distribuıdo, modificado
Resultados obtidos podem ser divulgados sem nenhuma restricao
Programas podem ser transferidos para terceiros sem imposicoes ouconstrangimentos
Acesso ao codigo fonte, evitando surpresas desagradaveis
Acesso a informacao de alta qualidade
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 17 / 46
Benefıcios Free/Open Source Software
Software Livre e de Codigo Aberto: Vantagens
Participar de uma comunidade cujo principal valor e a irrestrita difusao doconhecimento
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 18 / 46
Benefıcios Documentacao - Manuais
Manuais - www.scilab.org
Help online
Indice de Funcoes
Equivalencia entre funcoes Matlab/Scilab
News Group
Secao de Livros e Artigos Tecnicos sobre Scilab
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 21 / 46
Benefıcios Documentacao - Portugues
Documentacao em Portugues
Introducao ao Scilab - Versao 3.0
Disponıvel em: www.dca.ufrn.br/~pmotta
Rau-Tu do Scilab: www.rau-tu.unicamp.br/scilab
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 22 / 46
Benefıcios Contribuicoes - Toolboxes
Toolboxes - Contribuicoes
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 23 / 46
Benefıcios Toolboxes - Exemplos
Modelagem e Controle
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 24 / 46
O Ambiente Scilab Caracterısticas
Scilab: Resumo das Caracterısticas
Distribuicao gratuita; codigo fonte disponıvel
Linguagem de facil aprendizado
Sistema de auxılo ao usuario - help
Permite a geracao de graficos 2D e 3D
Manipulacao de polinomios
Manipulacao de matrizes
Usuario pode definir suas proprias funcoes
Acessa rotinas em C e em FORTRAN
Acessado por MuPAD e Maple
Permite criar toolboxes
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 26 / 46
O Ambiente Scilab Instalacao
Instalacao Linux: Codigo Fonte
Obter o software Sablotron - manipula XML (arquivos help)
Obter o codigo fonte (scilab-3.0-src.tar.gz)
Como root, descompactar (/usr/local) e instalar
tar -zxvf./configuremakemake install
Minha instalacao:
Distribuicao Slackware 10.0
kernel Linux 2.4.26
/usr/bin: scilab -> /usr/local/scilab-3.0/bin/scilab
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 27 / 46
O Ambiente Scilab Execucao - Texto
Linux - Ambiente Texto
pmotta@notebook:~$ scilab -nw-------------------------------------------
Scilab-3.0
Copyright (c) 1989-2004Consortium Scilab (INRIA, ENPC)
-------------------------------------------
Startup execution:loading initial environment
-->
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 28 / 46
O Ambiente Scilab Execucao - Grafico
Linux - Ambiente Grafico
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 29 / 46
O Ambiente Scilab Execucao - Grafico
Ambiente Grafico - Opcao File
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 30 / 46
O Ambiente Scilab Execucao - Grafico
Ambiente Grafico - Opcao Demos
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 31 / 46
O Ambiente Scilab Execucao - Grafico
Ambiente Grafico - Opcao Help
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 32 / 46
O Ambiente Scilab Execucao - Grafico
Ambiente Grafico - Opcao Help - Configure
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 33 / 46
O Ambiente Scilab Conjunto de Funcoes
Conjunto de Funcoes
Programming - conjunto de comandos que podem ser utilizados naprogramacao com o Scilab;
Graphic Library - conjunto de comandos graficos;
Elementary Functions - conjunto de funcoes elementares;
Input/Output Functions - conjunto de funcoes para entrada esaıda de dados;
Handling of functions and libraries - conjunto de funcoespara manipulacao de funcoes e bibliotecas;
Character string manipulations - conjunto de funcoes paramanipulacao de strings;
GUI and Dialogs - conjunto de funcoes que permitem a criacao dedialogos (menus, por exemplo);
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 34 / 46
O Ambiente Scilab Conjunto de Funcoes
Conjunto de Funcoes
Utilities - conjunto de funcoes com utilidades diversas;
Linear Algebra - conjunto de funcoes usadas em algebra linear;
Polynomial calculations - conjunto de funcoes usadas emcalculos com polinomios;
General System and Control - conjunto de funcoes na area decontrole;
Robust control toolbox - conjunto de funcoes do toolbox decontrole robusto;
Optimization and simulation - biblioteca de funcoes nao-linearespara utilizacao em otimizacao e simulacao;
Signal Processing toolbox - conjunto de funcoes do toolbox deprocessamento de sinais;
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 35 / 46
O Ambiente Scilab Conjunto de Funcoes
Conjunto de Funcoes
Arma modelization and simulation toolbox - conjunto defuncoes do toolbox para modelamento e simulacaoARMA-Autoregressive Moving Average;
Metanet: graph and network toolbox - conjunto de funcoes dotoolbox Metanet para analise de grafos;
Scicos: Bloc diagram editor and simulator - conjunto defuncoes para modelagem e simulacao de sistemas dinamicos;
Sound file handling - conjunto de funcoes para manipulacao dearquivos de som;
Language or data translations - conjunto de funcoes paraconversao de dados entre o Scilab e alguns aplicativos;
PVM parallel toolbox - conjunto de funcoes que permitem ogerenciamento da comunicacao com outras aplicacoes usandomaquinas paralelas virtuais;
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 36 / 46
O Ambiente Scilab Conjunto de Funcoes
Conjunto de Funcoes
TdCs - conjunto de funcoes com utilidades diversas;
TCL/Tk interface - conjunto de funcoes que permitem a interfacecom as linguagens TCL/Tk;
Statistic basics - conjunto de funcoes para calculos estatısticos;
Cumulative Distribution Functions; Inverse, grand -conjunto de funcoes de distribuicao cumulativa, inversa e geradora denumeros randomicos;
Identification - conjunto de funcoes para tratamento de sistemasdiscretos;
Matlab to Scilab conversion tips - conjunto de funcoes para aconversao de arquivos de programas Matlab em Scilab.
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 37 / 46
O Ambiente Scilab Editor
Ambiente Grafico - Opcao Editor
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 38 / 46
O Ambiente Scilab Variaveis Especiais
Comando who
-->who
your variables are...
%scipad_fontsize show_startupinfo LCC %toolboxes_dir %toolboxes
scicos_pal %scicos_menu %scicos_short %scicos_help
%scicos_display_mode modelica_libs scicos_pal_libs with_gtk with_tk demolist
%helps LANGUAGE SCI MSDOS home PWD TMPDIR xdesslib with_texmacs
percentlib polylib intlib elemlib utillib statslib alglib siglib 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 15025 elements out of 1000000.
and 60 variables out of 9231
your global variables are...
LANGUAGE %helps demolist %browsehelp %toolboxes %toolboxes_dir LCC
%scipad_fontsize
using 1097 elements out of 11000.
and 8 variables out of 767
-->
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 39 / 46
O Ambiente Scilab Variaveis Importantes
Variaveis Importantes
%i - representa√
(− 1)%pi - representa π = 3, 1415926. . .
%e - representa a constante de Euler e = 2.7182818. . .
Variaveis com valores booleanos: %T, %t significando“verdadeiro”(true) e %F, %f significando“falso” (false).
SCI - diretorio onde o Scilab foi instalado
PWD - diretorio onde o Scilab foi lancado
home - diretorio do usuario que lanca o Scilab
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 40 / 46
O Ambiente Scilab Manipulacao de Diretorios
Manipulacao de Diretorios
pwd - mostra o diretorio de trabalho
chdir, cd - muda o diretorio de trabalho
ls - mostra o conteudo do diretorio atual
Obs.: pwd e diferente de PWD.
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 41 / 46
O Ambiente Scilab Armazenando Variaveis
Armazenamento de Variaveis
save(’dados.dat’,a,b) - salva as variaveis a, b no arquivodados.dat
load(’dados.dat’,’a’,’b’) - recupera as variaveis a, b,armazenadas no arquivo dados.dat
Obs.: O arquivo dados.dat e binario.
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 42 / 46
O Ambiente Scilab Help Exemplo - Funcao besselk
Help da funcao besselk
O nome da funcao, como implementado pelo Scilab;
O(s) comando(s) de chamada da funcao, Calling Sequence;
Os parametros da funcao, Parameters;
Uma descricao da funcao implementada, Description;
Exemplos de utilizacao da funcao, Examples;
Funcoes relacionadas, See Also, e neste caso,
Autor da funcao, Author.
Paulo Motta (DCA-UFRN) Scilab 3.0 2005.1 45 / 46