Baixe o app para aproveitar ainda mais
Prévia do material em texto
Ediana Cimadon Fernanda Tumelero Rodrigo Zanette Delair Bavaresco Julhane A. T. Schulz 2 APRESENTAÇÃO Este trabalho trata-se da Apostila do Minicurso Familiarização ao Software Scilab, elaborado e ministrado pelos bolsistas do PET Matemática do IFRS – Câmpus Bento Gonçalves: Ediana Cimadon, Fernanda Tumelero e Rodrigo Zanette e orientados pela Tutora Dra. Julhane A. T. Schulz e Colaborador Me. Delair Bavaresco. A apostila traz noções básicas do software matemático livre Scilab da versão 5.3.2: • Ambiente Inicial; • Ferramentas e Comandos Básicos; • Operações Básicas; • SciNotes; • Polinômios; • Matrizes e vetores; • Gráficos; • Limite, Derivada e Integral. Este minicurso é destinado aos acadêmicos do curso de Licenciatura em Matemática das disciplinas de Matemática Computacional II e Modelagem Matemática. O intuito é proporcionar conhecimentos básicos do uso do software para, posteriormente, trabalhar a programação nas devidas disciplinas. Bom trabalho! 3 SUMÁRIO INTRODUÇÃO ............................................................................................................................ 4 AMBIENTE SCILAB ................................................................................................................... 5 EXERCITANDO OPERAÇÕES BÁSICAS ................................................................................ 7 OUTROS COMANDOS ............................................................................................................... 9 FORMATAÇÃO DE NÚMEROS .............................................................................................. 11 COMANDOS PARA ARREDONDAMENTO .......................................................................... 12 COMANDOS DE ESTATÍSTICA ............................................................................................. 13 UTILIZANDO O SCINOTES .................................................................................................... 14 POLINÔMIOS ............................................................................................................................ 15 ENCONTRANDO AS RAÍZES DE UM POLINÔMIO ............................................................ 17 CRIANDO POLINÔMIOS A PARTIR DE SUAS RAÍZES ..................................................... 17 CALCULANDO VALORES DE UM POLINÔMIO ................................................................. 18 OPERAÇÕES COM POLINÔMIOS .......................................................................................... 19 MATRIZES E VETORES .......................................................................................................... 23 OPERAÇÕES COM MATRIZES .............................................................................................. 29 OPERAÇÕES COM VETORES ................................................................................................ 34 OPERAÇÕES ENTRE MATRIZES ........................................................................................... 37 MATRIZES E VETORES ESPECIAIS ...................................................................................... 41 DETERMINANTES ................................................................................................................... 47 GRÁFICOS ................................................................................................................................. 49 GERAÇÃO DE GRÁFICOS ...................................................................................................... 50 DERIVADA DE FUNÇÃO POLINOMIAL .............................................................................. 63 INTEGRAIS DEFINIDAS .......................................................................................................... 63 REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................................ 65 4 INTRODUÇÃO Falar em tecnologias nos remete ao uso de softwares que facilitam a obtenção de resultados complexos de forma rápida e objetiva. Sua utilização não se restringe ao meio empresarial, mas também ao meio educacional, motivando o processo de ensino- aprendizagem e tornando-o mais qualificado. Neste contexto, em 1990, o grupo de pesquisadores franceses do INRIA – Institut de Recherche em Informatique et em Automatique e do ENPC – École Nationale dês Ponts et Chaussées desenvolveram o software Scilab. O Scilab é um ambiente voltado para o desenvolvimento de resolução de problemas numéricos. Está disponível desde 1994, gratuitamente, na internet. Outra vantagem deste software, é que pode ser executado em vários sistemas operacionais, como por exemplo, Windows e Linux. Porque utilizar o Scilab: • Fácil aprendizagem; • É simples a obtenção de gráficos de alta resolução; • Os dados são fundamentados como vetores ou matrizes, agilizando os resultados; • Os resultados e gráficos podem ser copiados para outros documentos; • Precisão nos resultados; • É um software aberto em contínuo aperfeiçoamento e evolução; 5 AMBIENTE SCILAB O primeiro passo para iniciarmos nosso estudo do Scilab é nos familiarizarmos com a interface do programa. Figura 1: Ambiente inicial do Scilab. Na Barra de Ferramentas encontram-se as seguintes funções: Abre o programa editor de textos SciNotes; Abre um arquivo salvo anteriormente; Recortar; Copiar; Colar; Alterar o diretório atual; Alterar fonte; Imprimir; Gerenciador de Módulos – ATOMS; Usado na programação atrás de diagrama de blocos; 6 Demonstrações do Scilab; Navegador da ajuda. A janela inicial de comandos do Scilab exibe um prompt (-->) que assinala o local de introdução de instruções, dados, etc. pelo utilizador. No ambiente Scilab podem ser digitados comandos, funções, operadores e vários outros tipos de elementos que formam instruções para serem processadas. O utilizador pode usar combinações de teclas para agilizar o uso do software, conforme Tabela 1. Combinação de Teclas Descrição ↑ ↓ Recupera os comandos digitados Delete ou Backspace Apaga o caractere à esquerda do cursor CTRL+A Move o cursor para início da linha de instrução CTRL+B Recua o cursor CTRL+D Apaga o caractere que está à direita do cursor CTRL+E Move o cursor para o final da linha de instrução CTRL+F Move o cursor para direita sem apagar CRTL+H Mesmo efeito do Backspace CTRL+K Apaga os caracteres do cursor até o final da linha CTRL+L Executa o SciNotes CTRL+P Recupera o comando digitado anteriormente CTRL+U Cancela (limpa) a linha de instrução CTRL+X Executa o comando pause (acessa o ambiente n+1) !C Recupera a instrução começando com “c” Tabela 1: Combinação de Teclas. Figura 2: Janela com comandos do Scliab. 7 A Figura 2 exibe a multiplicação de 6 por 7 e o seu resultado (ans de “answer”- resposta) que é 42. No Scilab as operações aritméticas básicas introduzem-se como se escrevem e, como todos os comandos, usa-se o Enter para obter o resultado. Para somente armazenar a resposta na memória usa-se ponto-e-vírgula (;). Pode-se ainda usar comandos para limpar a tela e também a memória: Comandos básicos Descrição clc Limpa a janela dos comandos clc(n) Limpa n linhas acima da atual linha de comando clear Limpa a memória clear x y Remove as variáveis x e y da memória Tabela 2: Comandos Básicos. O software apresenta algumas formas de ajuda, entre elas duas são as mais utilizadas: o comando “apropos” seguido da palavra que se deseja pesquisar ou “help” seguido do tópico desejado. Outras duas formas de ajuda são: “help help” ou clicando no ícone usando o menu aberto. Os exemplos de comandos fornecidos pela ajuda podem ser selecionados, copiados, colados e executados no ambiente Scilab.EXERCITANDO OPERAÇÕES BÁSICAS Para efetuar as operações aritméticas básicas são utilizados os seguintes símbolos e comandos: Comandos básicos Descrição - Subtração + Soma * Multiplicação / Divisão ^ ou ** Potência 3^2=9, 3**2=9 sqrt Raiz quadrada > Maior que < Menor que 8 >= Maior ou igual a <= Menor ou igual a == Exatamente igual <> ou ~= Diferente de Tabela 3: Mais comandos. Praticando: a) 52 – 36 = b) 153 + 322 = c) 3 × 2 = d) 100 ÷ 5 = e) 43 = f) 225= g) 72 200> = h) 0.52 1< = i) 25 5> = j) 16 4= = k) 11 111≠ = Armazenando Dados: A = 69; B = 87; C = 84; D = 90; a) A + B b) C – D c) A² ÷ C d) D ÷ 2 – ( B ×√�) 3) Calcule o volume de um cone de raio 5cm e altura de 40cm. � = � � � ²ℎ Você sabia? O Scilab utiliza uma linguagem específica para expressar sentenças verdadeiras (T) ou falsas (F). Exemplos: -->3>2 -->4<3 ans = ans = T F 9 OUTROS COMANDOS Comandos Descrição Exemplo %pi Informa o valor de π π + π %e Informa o valor de e e - π exp(x) Exponencial de x na base e e¹ e³ x=6 cos Cosseno de π 60° sin Seno de 90° π/3 tan Tangente de 0° 3� 4 sec Secante de π π/2 csc Cossecante de π π/2 acos Arco cosseno de 1 asin Arco seno de 0.5 atan Arco tangente de 0.9 cotg Cotangente de � 3 log Logaritmo natural ou na base e e 7 log10 Logaritmo na base 10 100 10000 log2 Logaritmo na base 2 4 1048576 abs Módulo de um número -5 -9,99999999999888 Tabela 4: Mais Comandos. Você sabia? No caso de operações trigonométricas, os ângulos são dados em radianos. Assim, sin(30) será lido como sin(30rd). Para indicar graus, deve-se converter em radianos. Então, 30 graus deve ser digitado como sin(%pi/6), cujo resultado é 0,5. 10 Para o software letras maiúsculas e minúsculas são distintas, portanto quando escrever, por exemplo, Log, Sin, Cos, ele não entenderá com sendo logaritmo, seno, cosseno, mas como uma variável indefinida. Para que ele entenda é necessário escrever em letras minúsculas. Praticando: 1) Para um ângulo de � � , calcule o valor do: a) seno b) cosseno c) tangente 2) Calcular o arco correspondente dos valores das funções trigonométricas e converter de radianos (resposta padrão) para graus. a) cosseno = 0.5 b) seno = 0.6 3) Calcule: a) cos(� /4) + sen(�/4) b) cos(0)+sen(0) c) tan(0)×sen(�/4) d) sen(30)²+cos(30)² e) tg = ���(�/4) cos(�/4) 4) Calcule os logaritmos: a) log10(0.000001) b) log2(64) c) log(35.34) 5) Resolva: a) �� b) �� c) ��� d) |-0.987| e) |−√20| 6) Considere o ângulo alfa igual a 60 graus, beta igual a 45 graus, gama igual a 90 graus. Calcule: a) sen(alfa), cos(alfa), tg(alfa), cotg(alfa), sec(alfa) e cossec(alfa); b) sen(beta), cos(beta), tg(beta), cotg(beta), sec(beta) e cossec(beta); c) sen(gama), cos(gama), tg(gama), cotg(gama), sec(gama) e cossec(gama); 11 FORMATAÇÃO DE NÚMEROS O formato padrão do Scilab apresenta no máximo dez posições para o número exibido, incluindo ponto decimal e o sinal. Figura 3: Formato padrão. Utiliza-se o comando “format(n)” em que n é o tamanho total (incluindo o ponto decimal e o sinal) para definir quantas casas decimais desejar. Figura 4: Comando “format(n)”. 12 Praticando: 1) Formate os seguintes números: a) 999999999999999, com 6 casas decimais. b) -8.5858585858585858, com 10 casas decimais. c) 159735852963147.00247, com 15 casas decimais. COMANDOS PARA ARREDONDAMENTO O software oferece comandos para arredondamentos de números, permitindo uma melhor visualização. Comandos Descrição round(n) Arredonda “n” para o inteiro mais próximo fix(n) ou int(n) Arredonda “n” na direção de zero ceil(n) Arredonda “n” na direção de mais infinito floor(n) Arredonda “n” na direção de menos infinito Tabela 5: Comandos para arredondamento. Praticando: 1) Arredonde o número π para: a) O inteiro mais próximo; b) Na direção de zero; c) Na direção de mais infinito; d) Na direção de menos infinito. Você sabia? O Scilab utiliza uma linguagem para expressar números muito grandes ou muito pequenos. Por exemplo, se você inserir o número 999999999 ele o apresentará como 1.000D+09, que significa 10�. EXPERIMENTE: 0.0000000000007 13 COMANDOS DE ESTATÍSTICA A partir de um conjunto de dados pode-se calcular: Comandos Descrição mean(n) Média de “n” stdev(n) Desvio padrão de “n” variance(n) Variância de “n” mad(n) Desvio padrão absoluto de “n” Tabela 6: Comandos de estatística. Praticando: 1) Calcule a média, desvio padrão, variância, desvio padrão absoluto de uma P.A. de razão 2, a1=1 com 8 termos. 2) Em uma turma de 10 alunos de Biologia, as notas da primeira prova foram: 7, 6.5, 4, 9, 10, 8.7, 1, 7, 3.5, 0. Calcule a média das notas da turma, o desvio padrão e variância. 3) Em um jogo, foram lançados 6 dados com os respectivos valores: 1, 3, 6, 1, 4 e 2. Calcule a média, desvio padrão e variância. Você sabia? O Scilab permite escrever equações extensas em várias linhas colocando no final de cada uma delas o símbolo de continuação ... (três pontinhos). Exemplo: -->3*a+2*b+a-b+sqrt(a+b)... -->+b^2-4*a-2*b/a... -->-a+b+sqrt(a/b) 14 UTILIZANDO O SCINOTES SciNotes é um editor de texto do Scilab no qual se pode construir um roteiro de programação para ser salvo e para posterior utilização. Costuma-se escrever de forma genérica podendo ser adaptado para qualquer situação. O roteiro é executado no ambiente inicial do Scilab, para isso usa-se CTRL+L. Existem quatro formas de abrir o SciNotes: • Menu Aplicativos/SciNotes; • No ícone da barra de ferramentas SciNotes, já citado anteriormente; • No prompt de comando, digitando ‘editor( )’; • No prompt de comando, digitando ‘scinotes’. Como no ambiente inicial do Scilab, no SciNotes é aconselhável iniciar o roteiro limpando a memória e a tela (comandos “clear” e “clc”). Figura 5: Janela SciNotes. Para explicar os comandos executados sem interferir no roteiro, utilizam-se duas barras (//) e em seguida o lembrete conforme Figura 6. 15 Figura 6: Roteiro com lembretes no SciNotes. POLINÔMIOS A criação de polinômios no Scilab pode ser feita através das constantes predefinidas %s e %z ou com o comando “poly”. Ao utilizar o comando “poly”, deve-se informar todos os coeficientes, seguindo a ordem: termo independente; coeficiente multiplicado pela variável de grau 1 e assim sucessivamente. Após, insere-se o comando “coeff” que indica que o polinômio será criado a partir dos coeficientes. Caso o polinômio não possua algum grau intermediário, deve-se usar o número zero. Figura 7: Criando um polinômio com %s. 16 Figura 8: Criando um polinômio com %z. Figura 9: Criando um polinômio com o comando “poly”. Você sabia? O fato de usar as letras %s e %z para criar polinômios não significa que podemos usar qualquer letra para isso. EXPERIMENTE!!! 17 ENCONTRANDO AS RAÍZES DE UM POLINÔMIO Para encontrar as raízes de um polinômio de grau “n” ( 1n ≥ ) utiliza-se o comando “roots(p)”. Figura 10: Encontrando raízes de um polinômio p. CRIANDO POLINÔMIOS A PARTIR DE SUAS RAÍZES Com o Scilab pode-se criar um polinômio apenas conhecendo suas raízes, para isso utiliza-se o comando “poly” seguido das raízes do polinômio entre colchetes ([ ]) e da variável. 18 Figura 11: Criando um polinômio a partir de duas raízes. Figura 12: Criando um polinômio a partir de três raízes. CALCULANDO VALORES DE UM POLINÔMIO A partir de vários valores de ‘x’ pode-se encontrar a variáveldependente. 19 Figura 13: Valores de um polinômio. Figura 14: Valores de um polinômio. OPERAÇÕES COM POLINÔMIOS Primeiramente, deve-se informar e nomear os polinômios que serão utilizados para realizar as operações. Para somar, subtrair ou multiplicar dois ou mais polinômios basta executar as operações como se fossem constantes quaisquer. 20 Figura 15: Operações de soma, subtração e multiplicação. Já para a divisão de polinômios, utiliza-se o comando “pdiv”. Se a divisão não for exata, deve-se utilizar o comando “[r, q] = pdiv (p1, p2)”, onde r é o resto e q o quociente. No caso da potenciação de um polinômio, deve-se utilizar o comando da potência visto anteriormente. 21 Figura 16: Divisão e potenciação de polinômios. Praticando: 1) Encontre as raízes do polinômio 3 23 3x x x+ − − . 2) Crie um polinômio p com os coeficientes: 20, -9 e 1, sendo 20 o termo independente, -9 o coeficiente de x e 1 o coeficiente x². 3) Recrie o polinômio do item anterior a partir de suas raízes. 4) Calcule as raízes do polinômio 2 3 4 5( ) 1 2 3 4 5 6y x x x x x x= + + + + + . 5) Crie um polinômio cujas raízes sejam 1, 3, 4, 6. 6) Crie um polinômio definido como 212 7p x x= − + . Após encontre suas raízes. 7) A partir dos polinômios 4 3 28 9 2 5a x x x x= + + + + e 28 3 5b x x= − + realize todas as operações polinomiais. 22 8) Utilizando os polinômios dos exercícios 2 e 4 faça as operações de soma, subtração, multiplicação e divisão. 9) Eleve o polinômio do exercício 6 nas potências 2, 3, 4 e 5. 10) A partir do polinômio 3 29 105y x x x= − − + calcule o valor de y quando: -4 < x < 8, com x∈ℤ , informando suas raízes. 11) Usando a fórmula de Bhaskara, encontre as raízes: a) x²+3x-10; b) –x²+4x-3; c) 2x²-x-15; 23 MATRIZES E VETORES O grande potencial do Scilab é trabalhar com matrizes e vetores, essa linguagem agiliza os cálculos no software. • Criando um vetor: Existem várias maneiras de criá-lo: entre colchetes [ ] coloca-se os números com espaço ou vírgula ou ainda, informando os extremos com dois pontos entre eles, conforme Figura 17. Figura 17: Criando um vetor. Para criar um vetor linha basta utilizar o comando ‘matrix’. Exemplo na Figura 18: 24 Figura 18: Comando matrix. Para criar um vetor coluna os elementos devem estar separados por ponto-e- vírgula (;), caso contrário, o vetor criado será um vetor linha. Figura 19: Criando um vetor coluna. • Criando uma matriz: Para criar uma matriz, cada sequência de números separados por ponto-e-vírgula representa uma linha. Outra forma é utilizar o comando “matrix” seguido do número de linhas e colunas. 25 Figura 20: Criando matrizes. • Identificando os elementos de um vetor ou matriz: Para identificar elementos de uma matriz ou vetor o procedimento é o seguinte: Nome do vetor ou matriz (número da linha, número da coluna). Você sabia? Quando você usa o comando “matrix” lembre-se de que o software ordena os valores coluna a coluna. Se quiser ordenar por linhas é preciso pedir a transposta, que veremos adiante. 26 Figura 21: Identificando elementos da matriz. • Acrescentando elementos a uma matriz ou vetor: Primeiramente, deve-se criar a matriz e em seguida, os elementos que se deseja acrescentar. No caso de se acrescentar linhas o procedimento é o seguinte: Figura 22: Acrescentando linha a uma matriz. 27 No caso de se acrescentar colunas o procedimento é o seguinte: Figura 23: Acrescentando coluna a uma matriz. • Eliminando elementos de uma matriz ou vetor: Para eliminar elementos de uma matriz ou vetor informa-se a linha ou coluna a ser eliminada e em seguida, escreve-se conjunto vazio: Figura 24: Eliminando elementos de uma matriz. 28 Para se eliminar linhas ou colunas intercaladas, seguir exemplo: Figura 25: Eliminado linhas intercaladas de uma matriz. Praticando: 1) Monte matrizes e vetores das seguintes dimensões: a) 2 x 3; b) 8 x 7; c) 1 x 10; d) 4 x 3; 2) Dada a matriz R= 3 9 12 21 5 2 0 35 52 16 8 1 13 6 9 0.5 − − − − , resolva: a) Identifique o elemento (3,3); b) Extraia a linha 3; c) Exclua os elementos da coluna 4; d) Elimine as linhas 2 e 4; e) Elimine as colunas 1 e 3; f) Identifique o elemento (4,4); 29 OPERAÇÕES COM MATRIZES • Operações entre uma matriz e um escalar: As operações entre matriz e escalar são realizadas como as operações básicas, basta informar a matriz e a constante e efetuar a operação desejada. Figura 26: Soma entre Matriz e Escalar. Figura 27: Subtração entre Matriz e Escalar. 30 Figura 28: Multiplicação entre Matriz e Escalar. Figura 29: Divisão entre Matriz e Escalar. 31 Figura 30: Potenciação entre Matriz e Escalar. Na Figura acima, o comando “A^k” indica que a matriz A será multiplicada por ela mesma três vezes. Figura 31: Potenciação entre Matriz e Escalar. 32 Na Figura anterior, o comando “A.^k” indica que cada elemento da matriz A será elevado ao expoente “k” (A(i,j)^k). Figura 32: Multiplicação de um Escalar por coluna e linha. Lembre-se que para representar uma matriz usa-se A(i,j), onde “i” é o número de linhas e “j” o número de colunas. Na Figura acima, no comando “k*A( : ,2)”, os dois pontos representam, neste caso, todas as linhas (“i”), e o “2” representa a segunda coluna (“j”). Assim, o software irá multiplicar o escalar apenas pela coluna 2. 33 Praticando: 1) Sendo A= 8 3 2 4 1 5 , B= 1 4 5 3 8 5 e C= 1 8 2 4 3 5 − − − − − . Calcule: a) 10A; b) 3B; c) C/2; d) B-4; e) 2-A; f) 13+B. 2) Utilizando as matrizes do exercício anterior, eleve cada termo ao quadrado e ao cubo. 3) Resolva as seguintes operações com as matrizes A= 3 6 2 1 − e B= 2 6 7 9 0 5 4 2 1 − : a) A²; b) B²; c) A³; d) B³. 4) Utilizando as matrizes C= 6 2 15 1 − e D= 5 6 3 2 14 7 9 7 0 − − , faça o que se pede: a) Multiplique a primeira linha da matriz C por 6; b) Multiplique a segunda linha da matriz D por 8; c) Multiplique a terceira coluna da matriz D por 0,5: d) Multiplique a segunda coluna da matriz C por 110. 34 OPERAÇÕES COM VETORES • Somando e subtraindo dois vetores: Lembre-se que para somar e subtrair vetores eles devem ter as mesmas dimensões. Figura 33: Somando dois vetores. Figura 34: Subtraindo dois vetores. 35 • Somando os elementos do vetor: Para somar os elementos de um vetor, utiliza-se o comando “sum( )”. Figura 35: Somando elementos de um vetor. • Produto dos elementos de um vetor: Para realizar o produto entre os elementos de um vetor, utiliza-se o comando “prod( )”. Figura 36: Multiplicando elementos de um vetor. 36 • Obtendo o elemento de maior e menor valor de um vetor: Para encontrar o maior elemento de um vetor usa-se o comando “max( )” e, para encontrar o de menor valor basta utilizar o comando “min( )”. Figura 37: Encontrando o maior e menor valor de um vetor. • Obtendo a soma dos quadrados dos elementos de um vetor: Para encontrar a soma dos quadrados dos elementos de um vetor, utiliza-se o comando “sum(M^2)”. Figura 38: Somando o quadrado dos elementos de um vetor. 37 Praticando: Dados os vetores V=[3 2 1 4 -2], R=[8 6 4 2 -2] e B=[7 11 0 15 3], calcule: 1) Soma dos vetores; 2) Subtração dos vetores V, R e B; 3) Soma e o produto de todos os elementos de cada vetor; 4) A soma dosquadrados de cada elemento de cada vetor; 5) Encontre o menor e maior valor de cada vetor. OPERAÇÕES ENTRE MATRIZES Para efetuar as operações de adição e subtração entre matrizes, devemos seguir as mesmas regras matemáticas das operações comuns e para multiplicação e divisão, seguem-se as definições estabelecidas na Álgebra Linear. • Adição: Os elementos das matrizes são somados um a um como se fossem valores individuais (A(i,j)+B(i,j)). Figura 39: Somando duas matrizes. 38 • Subtração: Figura 40: Subtração de duas matrizes. • Multiplicação entre matrizes: Segundo a Álgebra Linear, para que ocorra multiplicação entre matrizes é necessário que o número de colunas da primeira matriz seja igual ao número de linhas da segunda matriz. Figura 41: Multiplicação de Matrizes. 39 • Concatenação de Matrizes: A Concatenação de Matrizes gera uma nova matriz, e pode ser feita por linha ou por coluna. Por coluna, basta informar duas matrizes e após escrevê-las entre colchetes e separá-las por vírgula ([A,B]). No caso de concatenação por linha, ao invés de vírgula, usa-se ponto-e-vírgula ([A;B]). Figura 42: Concatenação por coluna e linha. Praticando: 1) Dadas as matrizes A= 2 4 0 1 − − , B= 4 2 6 0 − , C= 3 0 5 2 − , calcule: 40 a) A+B; b) A+C; c) B+C; d) A+B+C; e) A-B+C; f) A-B-C; g) –A-B+C; h) 2A+A-C; i) 3B-2C; j) 510A-320B+12C 2) Calcule os produtos indicados: a) ( ) 12 5 4 ⋅ = b) 4 1 2 3 1 2 3 4 0 1 1 5 ⋅ − = c) 1 2 3 8 3 3 4 1 2 4 − ⋅ = d) 2 3 1 4 7 0 2 5 ⋅ = e) 2 3 1 3 4 5 0 3 3 2 1 4 − ⋅ = − f) ( ) 3 4 81 7 9 5 2 ⋅ = 3) Dadas as matrizes M= 1 3 6 2 5 1 4 0 2 , N= 5 0 1 2 4 2 3 2 4 − , L= 3 4 1 0 7 8 − e P= 1 5 2 8 4 3 , faça a concatenação das matrizes: a) A= M e N por coluna; b) B= N e M por linha; c) C= L e L por coluna; d) D= P e N por coluna; e) E= M e P por coluna; f) F= N e L por linha; 4) Usando as matrizes criadas por concatenação do exercício anterior, resolva: a) A*B b) D-E c) C*B d) E*F e) E*F-A*B f) A*B+E*F 41 MATRIZES E VETORES ESPECIAIS No ambiente Scilab também podemos trabalhar com matrizes especiais de forma fácil e prática com comandos pré-determinados. • Matriz Transposta: A transposta de uma matriz é dada pela permutação das linhas pelas colunas e vice-versa. No software, para se obter uma matriz transposta utiliza-se, juntamente com o nome da matriz já criada, o apóstrofe. Figura 43: Matriz transposta. • Matriz Inversa e Matriz Identidade: Na Álgebra Linear, para realizar a inversa de uma matriz, esta deve ser quadrada (i=j). Quando multiplicamos uma matriz pela sua inversa, obtemos a matriz identidade. No Scilab, para se obter uma matriz inversa, usa-se o comando “inv”, conforme exemplo: 42 Figura 44: Inversa e Identidade de uma Matriz. Para criar uma matriz identidade usa-se o comando “eye(i,j)”, em seguida o tamanho desejado de linhas e colunas respectivamente (i,j). Figura 45: Criando uma matriz identidade. 43 A partir de uma matriz, podemos encontrar sua diagonal com o comando “diag”. Com isso, podemos provar que a diagonal de uma matriz identidade é um vetor coluna de n linhas. , Figura 46: Matriz identidade e sua diagonal. Figura 47: Diagonal de uma matriz qualquer. 44 O comando “diag” também pode ser usado para criar uma matriz a partir de um vetor desejado e os outros elementos sendo nulos. Figura 48: Criando uma matriz a partir de um vetor como diagonal. • Matrizes Triangulares Triangular uma matriz é transformar em zeros todos os elementos acima ou abaixo da diagonal principal. O comando para triangular a parte inferior é “tril” e para triangular a parte superior é “triu”. Figura 49: Triangulação de matrizes. 45 • Matrizes de 1’s e de 0’s: Matriz de 1’s e de 0’s são matrizes nas quais todos os seus elementos são unitários e zeros, respectivamente. O comando para a matriz de 1’s é “ones(i,j,p)”, onde i e j é o número de linhas e colunas e p é o número de matrizes. O comando para a matriz de 0’s é “zeros(i,j,p)”, onde i e j é o número de linhas e colunas e p é o número de matrizes. Figura 50: Criando matrizes de 1’s e 0’s. Praticando: 1) Quais são os números que formam a diagonal principal da matriz quadrada 2 10 1 3 5 6 8 1 4 − − ? 46 2) Calcule o produto dos elementos da diagonal principal da matriz 2 5 1 4 − − utilizando os comandos do Scilab. 3) Seja a matriz quadrada 3 6 2 10 . Calcule a diferença entre o produto dos elementos da diagonal principal e o produto dos elementos da diagonal secundária. 4) Sendo A= 2 1 3 2 e B= 1 5 2 2 − , determine: a) tA B+ = b) tA B+ = c)3 tA = d) (5 )tA B− = e) (3 ) 3t tA A− = f) ( )t tA B− + = 5) Verifique se são verdadeiras as afirmações usando as matrizes do exercício 4: a) ( )t tA A= b) ( )t t tA B A B+ = + c) (2 ) 2t tA A= d) ( )t t tA B A B− = − 6) Calcule a inversa das seguintes matrizes: a) A= 7 4 5 3 b) B= 5 8 2 3 c) C= 2 10 1 18 38 17 19 14 0 − d) D= 1 1 0 0 1 0 0 2 1 − e) E= 1 1 3 1 2 1 2 2 3 1 1 1 1 1 5 1 5 2 − − − − − 7) A partir dos resultados da questão anterior, prove que estas são inversas. 47 8) Faça o escalonamento das seguintes matrizes: a) 3 2 1 1 ; b) 2 4 6 3 8 1 6 0 1 ; c) 2 0 1 10 1 6 7 3 0 − − ; 9) Utilizando as matrizes do exercício anterior, faça suas inversas sem usar o comando “inv”. 10) Solucione os Sistemas Lineares usando o escalonamento e informe o valor de x, y e z: a) 2 9 2 4 3 1 3 6 5 0 x y z x y z x y z + + = + − = + − = b) 2 1 3 2 1 3 4 x y z x y z x y z + + = − + = − + − = DETERMINANTES Toda matriz quadrada tem, associada a ela, um número chamado de determinante da matriz, obtido por meio de operações que envolvem todos os elementos da matriz. No Scilab usa-se o comando “det( )” para calcular o determinante de uma matriz quadrada. Figura 51: Determinante de uma matriz 2x2. 48 Figura 52: Determinante de uma matriz 3x3. Figura 53: Determinante de uma matriz 4x4. Você sabia? Para obter as dimensões de uma matriz utiliza-se o comando “size( )” e para obter o número de elementos utiliza-se o comando “length( )”. EXPERIMENTE!!! 49 Praticando: 1) Calcule os determinantes: a) 2 3 6 4− = b) 2 1 3 5 2 − = c) 2 3 1 1 4 5 2 2 3− = d) 8 1 0 3 4 5 1 2 3 − − = e) 2 0 2 3 1 4 5 6 6 − = − − f) 1 2 0 0 2 3 0 0 0 0 3 1 0 0 1 1 = g) 1 0 4 1 0 0 1 1 1 1 3 2 10 2 4 0 0 1 6 1 2 1 5 0 5 − − =− − − − 2) Usando a Regra de Sarrus calcule o determinante das matrizes (sem usar o comando “det”): a) 2 3 1 1 4 5 2 2 3− = b) 2 0 2 3 1 4 5 6 6 − = − − GRÁFICOS Os recursos do Scilab para lidar com gráficos são muito variados e amplos. O software possui uma janela própria onde são criados e exibidos gráficos de diversas naturezas. 50 Figura 54: Janela Gráfica do Scilab. GERAÇÃO DE GRÁFICOS O Scilab permite gerar vários tipos de gráficos baseados em vetores e matrizes e também através de polinômios. • Gráficos Bidimensionais: Para criar um gráfico bidimensional usa-se o comando “plot()” ou “plot2d( )”. A forma geral do comando é plot2d([x],y,<opções>), onde x é o domínio, y o contradomínio e as <opções> representam uma sequência de instruções para definir as configurações do gráfico. Exemplo 1: -->clf() //Limpa a janela gráfica -->x=[-4:0.1:4]; //Define o domínio de x (no intervalo de -4 a 4 com intervalo de 0.1) -->y=x+3; //Define a função (matriz) y -->plot2d(x,y) //Traça o gráfico 51 Figura 55: Janela Gráfica com a função y=x+3. Exemplo 2: Múltiplas funções em uma mesma janela gráfica. -->clf(); -->x=[0:0.1:2*%pi]; -->y=cos(x); -->plot2d(x,y) -->y=cos(2*x); -->plot2d(x,y) -->y=cos(3*x); -->plot2d(x,y) Figura 56: Múltiplas funções na Janela Gráfica. 52 Exemplo 3: Com eixos do lado direto da janela. -->clf(); -->x=[0:0.1:2*%pi]; -->y=sin(3*x); -->plot2d(x,y) -->a=gca(); -->a.y_location="right"; Figura 57: Colocando o eixo do lado direito da Janela Gráfica. A linha de comando “a=gca();” obtém o handle dos eixos, permitindo seu manuseio. Na linha de comando “a.y_location="right";” informa-se o eixo e a direção que se deseja deslocar. Exemplo 4: Com eixos de origens (0,0). -->clf(); -->x=[0:0.1:2*%pi]; -->y=sin(3*x); -->plot2d(x,y,leg="sin(3*x)") -->a=gca(); -->a.y_location="middle"; -->a.x_location="middle"; Figura 58: Colocando os eixos na origem. 53 O comando “leg” cria uma legenda para a função expressa no gráfico. A Tabela 7 mostra alguns valores de style para colorir e definir o estilo da linha de um gráfico. Valor do style Como a curva é traçada 1 Cor preta 2 Cor azul marinho 3 Cor verde claro 4 Cor azul claro 5 Cor vermelha 6 Cor fucsia 7 Cor amarela 8 Cor branca 9 Cor azul 0 Marcada com ponto -1 Marcada com + -2 Marcada com x -3 Marcada com Ө -4 Marcada com ♦ -5 Marcada com ◊ -6 Marcada com ∆ -7 Marcada com ▼ -8 Marcada com [x] -9 Marcada com O -10 Marcada com * -11 Marcada com Tabela 7: Valores de style no traçado de curvas. Exemplo 5: Traçando um círculo marcado com *. -->t=0:0.1:2*%pi; //Define domínio do parâmetro t -->deff('[x]=f1(t)','x=3.5*cos(t)'); //Define função f1 -->deff('[x]=f2(t)','x=3.5*sin(t)'); //Define função f2 -->x=f1(t); //Define o vetor imagem em x 54 -->y=f2(t); //Define o vetor imagem em y -->plot2d(x,y,-10) //Traça o gráfico marcado com * Figura 59: Gráfico marcado com *. Exemplo 6: Traçar duas curvas na mesma janela gráfica. -->x=0:0.05:2*%pi; -->y1=2*sin(x); -->y2=cos(x); -->plot2d(x,y1,-3) -->plot2d(x,y2,-4) Figura 60: Traçando duas curvas na janela gráfica. 55 Exemplo 7: Traçar duas curvas na mesma janela gráfica, com “grid” e cores e marcas diferentes. -->x=-6:0.1:6; -->y1=x^2-5*x+6; -->y2=2*x-2; -->plot(x,y1,'r.+',x,y2); -->xgrid//coloca uma grade no gráfico Figura 61: Duas curvas na mesma janela gráfica com grade, cores e marcas diferentes. Na Figura 61, a parábola y1 foi traçada na cor vermelha (‘r’) e marcada com (‘+’). A reta definida como y2 foi traçada com na cor azul marinho e marcada com pontos (‘.’), como o Scilab usa o ponto e a cor azul como padrão, não se alterou nada. Exemplo 8: Construindo um gráfico com uma função definida por partes. 2 : 2 ( 1) cos( ) : 0 ( 2) ( ) 2 : 0 ( 3) 1 : 0 ( 4) x se x F x se x F F x se x F x se x F π ≤ − − ≤ ≤= − = − ≥ -->clf(); -->x1=[-5:0.01:-2];//define domínio de x1 -->x2=[-2*%pi:0.01:0];//define domínio de x2 -->x3=[0];//define domínio de x3(um ponto apenas) -->x4=[0:0.01:2.5];//define domínio de x4 -->F1=x1;//define função F1 de x -->F2=cos(x2);//define função F2 de x -->F3=-2;//define função F3(com valor constante) -->F4=1-x4^2;//define função F4 de x 56 -->plot(x1,F1,'y.',x2,F2,'g.',x3,F3,'r.*',x4,F4,'b.') -->xtitle('Gráfico de funções','Valor de x','F(x)') Figura 62: Gráfico com funções definidas por partes. Na figura 62, além das opções de estilo usadas anteriormente, também foi usada a opção “xtitle” que nomeia o gráfico e os eixos na seguinte ordem: título geral, título do eixo abscissas e título do eixo das ordenadas. Caso desejar não informar um dos títulos, basta deixar as aspas simples vazias. Exemplo 9: Colocando legenda nos gráficos. -->clf -->x=0:0.1:2*%pi; -->y1=sin(x); -->y2=cos(x); -->plot2d(x,y1,-4); -->plot2d(x,y2,-5); -->legends(['sen(x)';'cos(x)'],[-4,-5],opt=3); 57 Figura 63: Colocando legendas no gráfico. Na Figura 63, foi utilizado o comando “legends” para inserir uma legenda ao gráfico com duas funções. Praticando: 1) Considerando x variando de 0 à 2π com incrementos de 0.05, trace as curvas das funções y=2sen(x) e y=sen(2x) numa mesma janela gráfica. 2) Crie um polinômio do terceiro grau cujas raízes sejam 1, 2 e 3; em seguida trace seu gráfico com a curva na cor vermelha. 3) Dado o polinômio y=3x³+4x²+5x+6, trace a curva correspondente para x variando de 0 a 10 com incrementos de 0.1 e marca “*”. Você sabia? Para o comando “plot2d” deve-se informar nas opções o número do estilo que se deseja conforme a Tabela 7. Para o comando “plot” deve-se informar a letra inicial da cor (em inglês) e/ou o símbolo desejado. -->plot2d(x,y,3) -->plot(x,y,’-r’) 58 4) Trace os gráficos das funções tg(x) e cotg(x) em uma mesma janela gráfica, com x variando de 0 a π, do seguinte modo: • Curva tg(x) marcada com “+” e na cor verde; • Curva cotg(x) marcada com “-“ e na cor amarelo; • Com legendas indicativas. 5) Trace na mesma janela gráfica as funções: a) sen(2x) e cos(5x), com os eixos na origem; b) F(x)= 2 0 ( ) 0 / 2 1 / 2 2 3 2 x se x sen x se x se x x se x π π < ≤ ≤ ≤ ≤ − + ≤ , com grade; 6) Dada a função y=xsen(x)-1, trace o gráfico no intervalo de -10 a 10, com marca “+” e cor verde. • Gráficos Tridimensionais: Os gráficos tridimensionais são traçados com o comando “plot3d”. A forma geral do comando é plot3d(x,y,z,<opções>). Exemplo 1: Criando um gráfico 3D. -->clf -->x=[-%pi:0.2:%pi]'; -->z=(x^2)*(x^2)'+1; -->plot3d(x,x,z) Figura 64: Gráfico 3D da função z=x²y²+1. 59 Exemplo 2: Traçando um gráfico de uma superfície. -->x=[0:0.3:2*%pi]'; -->z=sin(x)*cos(x'); -->plot3d(x,x,z) Figura 65: Gráfico de uma superfície. Exemplo 3: Gráfico 3D. -->x=[-%pi:0.2:%pi]'; -->z=(x^2)*cos(x'); -->plot3d(x,x,z) Figura 66: Gráfico 3D da função z=x²cos(x). 60 Outra forma para construir gráficos 3D no Scilab é utilizando o comando “deff’. A forma geral do comando é: deff(‘z=f(x,y)’, ‘função a ser plotada’). Após, insere-se os domínios de ‘x’ e de ‘y’. Para plotar o gráfico da função desejada, usa-se o comando “fplot3d” e na forma geral ‘fplot3d(x,y,f,<opções>)’. Exemplo 4: Traçando gráfico 3D com o comando “deff”. -->deff('z=f(x,y)','z=(2*x-x^2)+(2*y-y^2)'); -->x=-1:0.1:3; -->y=x; -->fplot3d(x,y,f) Figura 67: Gráfico 3D usando comando “deff”. Exemplo 5: Gráfico de um Parabolóide Hiperbólico. -->deff('z=f(x,y)','z=(4*x.^2-9*y^2)/36'); -->x=-30:0.5:30; -->y=x; -->fplot3d(x,y,f) 61 Figura 68: Gráfico 3D de um Parabolóide Hiperbólico. • Comando “subplot”: O comando “subplot” permite dividir a janela gráfica em matriz m x n, podendo-se inserir mais de um gráfico. A formageral do comando é: subplot(m, n, p), onde “m” e “n” representam a dimensão da matriz, e “p” é a ordem de posição do gráfico. Você sabia? Na Janela Gráfica você pode alterar as propriedades do gráfico sem usar comandos, entrando no Menu Editar/Propriedades da Figura. EXPERIMENTE! 62 Exemplo 1: Traçando vários gráficos em subjanelas. -->x=-10:1:10; -->y1=x; -->y2=x^2; -->y3=2^x; -->y4=cos(x); -->subplot(2,2,1); -->plot2d(x,y1) -->subplot(2,2,2); -->plot2d(x,y2) -->subplot(2,2,3); -->plot2d(x,y3) -->subplot(2,2,4); -->plot2d(x,y4) Figura 69: Gerando vários gráficos na mesma janela gráfica. Praticando: 1) Construa os seguintes gráficos 3D: a) z=sec(x).cotg(x); b) 36x²+9y²-4z²=36; c) 36x²-9y²-4z²=36; d) x²+y²+z²=36; e) x²+4y²-z²=0; 2) Trace em subjanelas os seguintes gráficos alterando suas propriedades: a) log(x) e ln(x); b) sen(x), cos(x), 2sen(x) e 2cos(x); c) y1 = x+1, y2 = x-1, y3 = 2x², y4 = 4, y5 = x³, y6 = x-1, y7 = -x²+x, y8 = -x³+1 e y9 = ex. 63 DERIVADA DE FUNÇÃO POLINOMIAL O comando “derivat” pode ser usado para encontrar a derivada de uma função polinomial. Inicialmente define-se a função e depois se pede a derivada. -->y=poly([6 -5 1], "x", "coeff") y = 2 6 - 5x + x -->dydx=derivat(y) dydx = - 5 + 2x -->x=-5:0.1:25; -->dydx=-5+2*x; -->y=6-5*x+x^2; -->plot(x,y,x,dydx) Figura 70: Gráfico das funções derivada f(x) e DyDx. INTEGRAIS DEFINIDAS Como o Scilab é um software numérico, trabalha-se com integrais definidas e o comando utilizado é “integrate”. O termo geral é: integrate(‘função’, ’variável’, limite inferior, limite superior). 64 Figura 71: Integrando funções. Praticando: 1) Calcule a derivada de f(x)=x4-11x³+41x²-61x+30. 2) Considerando a função do exercício anterior calcule o valor da derivada de f(x) no ponto x=5. 3) Dada a função y(x)=3x³+2x²+x+12,calcule a área sobre a sua curva no intervalo [0,4]. 65 REFERÊNCIAS BIBLIOGRÁFICAS BARRETO, Luiz Soares. Iniciação ao Scilab. Lisboa, E-book, 2008. DANTE, Luiz Roberto. Matemática, Volume Único. SP: Editora Ática, 2005. LEITE, Mario. Scilab: Uma Abordagem Prática e Didática. RJ: Editora Ciência Moderna Ltda, 2009. PIRES, Paulo S. M.. Introdução ao Scilab – Versão 3.0. Disponível em: <http://www.dca.ufrn.br/~pmotta/sciport-3.0.pdf>. Acesso em: agosto de 2011.
Compartilhar