Curso de Scilab Luís Cláudio OLIVEIRA-LOPES Parte I 29 de Setembro de 2007 Uberlândia, Minas Gerais, Brasil 1
Nada é mais poderoso do que uma idéia cujo tempo chegou Victor Hugo 2
SUMÁRIO Antes de Começar... Software Livre x Scilab Scilab O que é?por que? Instalação Aprendendo Scilab Estrutura de algoritmo Estruturas Condicionais Estruturas de Repetição Operadores Scilab: primeiros passos... Scilab: Toolboxes 3 Mascote (puffin)
Software Livre: Free=Freedom Princípios:(http://www.fsf.org) Software Livre (SL) relaciona-se a liberdade, não a gratuidade. SL relaciona-se à liberdade para o usuário executar, copiar, distribuir, estudar, modificar e aperfeiçoar o software. 4
Scilab é open source! Mas não é GPL... Software Livre: Liberdade para criar, aprender, produzir, transmitir,... Licença do Scilab: Por que não é Software livre GPL... e sim código livre e gratuito de código aberto? Não permite distribuição comercial de versão modificada do Scilab. Copyright 1989-2007. INRIA ENPC Scilab é marca registrada do INRIA 5
Aplicativos com Código Aberto SO GNU/Linux Distribuições: Debian, Kurumin,... Matemáticos Maxima, Scilab, Octave Gráficos Gnuplot, Dia, Xfig,Gimp Compiladores Fortran, C++, Java, Kylix Editores Latex/Kile, TeXmacs, OpenOffice, Emacs Internet Navegadores, e-mail, CAD: Qcad Audio e Vídeo 6 SO Win Matemáticos Scilab, Octave Gráficos Gnuplot, Xfig Compiladores Editores Latex, TeXnicCenter, OpenOffice, Emacs Internet Navegadores, email, Outros
Obtendo o Scilab... Antes de Começar... 7
Pronúncia sai-leb ou sai-lab Plataformas disponíveis: Windows 2000/XP/VISTA GNU/Linux HP-UX MacOSX Solaris etc. Versão Estável: Scilab 4.1.1 http://www.scilab.org 8
9
Scilab: O que é? SciLab: Scientific Laboratory Scilab is a scientific software package for numerical computations providing a powerful open computing environment for engineering and scientific applications. Breve Histórico: Em desenvolvimento desde 1989; Distribuído livremente desde 1994; Consórcio Scilab: Maio 2003. Plataforma de Programação flexível. 10
Ambiente Comando Ambiente Script 11
Por que Scilab? Qualidade & eficiência; Independência de platforma (Unix, Windows ); É Software Open Source Gratuito!; Os comandos são fáceis; Estável; Pode interagir com outras linguagens (C, C++, Fortran, Tcl/Tk, Java, LabVIEW ); Estrutura de dados sofisticada (listas, polinômios, funções racionais, sistemas lineares..) Um interpretador com linguagem de programação de alto nível. Vasto conjunto de Ferramentas (Toolboxes) Suporte qualificado da comunidade Open Source 12
SUPORTE Newsgroup comp.soft-sys.math.scilab http://wiki.scilab.org/ 13
14
Principais Críticas de Não Usuários Velocidade. Pode ser amenizada com interfaces com outras linguages de programação para partes de programação muito exgentes computacionalmente Interface Gráfica Maior esforço foi feito até o momento na obtenção de qualidade numérica e não gráfica. A cada versão implementa interfaces e modos gráficos com visual mais elaborado. Propaganda Não existe marketing para ampliar o seu uso, ele É de aceitação não induzida. MATLAB está já consolidado. 15
Aprender fazendo,... Primeiros Passos 16
1o. Encontro com o Scilab: Menu 17
1o. Encontro com o Scilab: Menu 18
1o. Encontro com o Scilab: Menu 19
Importando arquivos Matlab 20
Verificando a Memória browsevar() 21
Scicos: Modelagem/Simulação Diagrama de Blocos http://www.scicos.org/ 22
Scicos: Biblioteca de Blocos 23
24
25
Algumas Ferramentas do Scilab Gráficos 2-D e 3-D, animação Álgebra Linear, matrizes esparsas Polinômios e funções racionais Interpolação, aproximação Simulação: integradores de ODEs e DAEs Scicos: um sistema para simulação dinâmico Controle Clássico e Robusto, Otimização LMI Otimização Diferenciável e não Diferenciável Processamento de Sinais Metanet: grafos e redes Scilab para arquitetura paralela Estatística Interface com Pacotes de Álgebra Simbólica: 26 Pacote Maple para geração de código Scilab Interface com Fortran, Tcl/Tk, C, C++, Java, LabVIEW etc...
Ambiente Scilab 1) Estrutura Geral de Algoritmos 2) Controle de Fluxo: Condicionais Repetitivas 3) Operadores 4) Estruturas de: Dados Constantes Objetos 5) Operação I/O Tela Arquivos Gráfica 27
Estrutura Geral de um Algoritmo 28
Construção de Algoritmos 29
Implementação de Algoritmos 30 SCILAB
Estruturas Condicionais 31
Estruturas Condicionais Aninhadas ou... 32
Estruturas Condicionais Aninhadas 33
Estruturas de seleção Equivale a um ninho de estruturas condicionais Se-EntãoSenão 34
Estruturas Aninhadas 35
Estruturas Repetitivas: Laço Enquanto 36
Estrutura de laço for 37
Operadores Scilab Lógicos Comuns Relacionais 38
Definição de Constantes 39
Usando Scilab,... Usando Scilab. 40
Exercícios 41
Referências sobre este documento O mesmo pode ser encontrado para download no site http://www.moodle.ufu.br/file.php/270/material_compl ementar/ Material sobre Scilab... Outros,... Agradecimentos: A todos que promovem a idéia do SL Contato: lcol@ufu.br Obrigado!! 42