Buscar

Aula_3

Prévia do material em texto

CCT0885 - Análise numérica
PROFESSOR: LUCAS SAMPAIO LEITE
Agenda
Aula passada:
Operações aritméticas:
Escalares;
Vetores;
Matrizes.
 Instalação e utilização do GNU/Octave.
Hoje:
Fechamento do assunto anterior com correção de exercícios
Criando scripts e funções no Octave
E os nossos exercícios???
1. Assista a seguinte vídeo-aula.
 https://www.youtube.com/watch?v=A1CJDkp1Djw
2. Crie um vetor v1x5 no Octave, gere sua transposta e a multiplique por um escalar a = 2.
3. Crie uma matriz M10x5 no Octave, gere sua transposta e a multiplique por um escalar a = 
3. 
4. Crie uma matriz M2x5 no Octave, e some-a pela sua transposta.
5. Crie uma Matriz M4x4 e preencha-a com valores de forma a ser uma matriz diagonal. 
6. Crie uma Matriz M4x4 e preencha-a com valores de forma a ser uma matriz identidade. 
7. Crie uma Matriz M4x4 e preencha-a com valores de forma a ser uma triangular inferior. 
8. Crie uma Matriz M4x4 e preencha-a com valores de forma a ser uma triangular superior. 
9. Crie uma Matriz M4x4 e preencha-a com valores de forma a ser uma matriz nula.
E os nossos exercícios???
Crie um vetor v1x5 no Octave, gere sua transposta e a multiplique por um escalar a = 2.
E os nossos exercícios???
Crie uma matriz M10x5 no Octave, gere sua transposta e a multiplique por um escalar a = 
3. 
E os nossos exercícios???
Crie uma matriz M2x5 no Octave, e some-a pela sua transposta.
E os nossos exercícios???
Crie uma matriz M2x5 no Octave, e some-a pela sua transposta.
Como corrigir esse erro?
E os nossos exercícios???
Crie uma matriz M2x5 no Octave, e some-a pela sua transposta.
E os nossos exercícios???
Crie uma matriz M2x5 no Octave, e some-a pela sua transposta.
E os nossos exercícios???
Crie uma Matriz M4x4 e preencha-a com valores de forma a ser uma matriz diagonal. 
E os nossos exercícios???
Crie uma Matriz M4x4 e preencha-a com valores de forma a ser uma matriz identidade.
E os nossos exercícios???
Crie uma Matriz M4x4 e preencha-a com valores de forma a ser uma triangular inferior. 
Crie uma Matriz M4x4 e preencha-a com valores de forma a ser uma triangular superior. 
E os nossos exercícios???
Crie uma Matriz M4x4 e preencha-a com valores de forma a ser uma matriz nula.
Criando scripts e funções
Quando é necessário fazer muitas operações que apresentam dependência 
da ordem com que devem ser realizadas, digitar as instruções na janela de 
comando pode se tornar uma tarefa bastante complicada. 
Essa é uma tarefa que está sujeita a erros, o que pode implicar na 
necessidade de digitar todos os comandos anteriores a alguma falha 
novamente. 
Além disso, se for necessário usar o mesmo conjunto de comandos em 
outra ocasião, todas as instruções precisam ser digitadas novamente, já que 
não existe um arquivo armazenando essa sequência de comandos.
Criando scripts e funções
Um script nada mais é do que um conjunto de comandos que segue 
uma ordem pré-especificada e que pode ser armazenado como um 
arquivo, para ser reutilizado depois.
Quando o script é executado, os comandos são executados de forma 
ordenada e as variáveis ficam disponíveis na memória do computador, 
tal como se os comandos tivessem sido digitados um a um na linha de 
comando. 
Criando scripts e funções
Em Octave/Matlab, esses arquivos são salvos em m-files, que são 
arquivos com extensão .m. 
Para poder executar esses comandos, basta navegar pela janela de 
comando até a pasta em que está o script desejado, digitar o nome do 
arquivo e pressionar Enter. 
Uma outra opção é colocar na janela de comando todo o caminho até o 
local onde está armazenado o script, ou colocar o diretório onde está o 
comando no path.
Exemplo de Script
Definindo funções
Frequentemente é necessário criar funções específicas;
Em geral, funções são definidas em termos dos parâmetros que 
recebem e dos parâmetros que retornam , após processar os 
parâmetros iniciais. 
Algumas funções podem não possuir parâmetros de entrada ou de 
saída (e às vezes nenhum deles...). 
Definindo funções
As funções podem ser chamadas por scripts ou diretamente da 
janela de comando. 
Também é comum que funções mais complexas contenham outras 
funções em seu conjunto de instruções. 
 A grande vantagem de usar funções é a redução de partes 
repetitivas no código, o que reduz a possibilidade de erros, e o 
reaproveitamento das funções em outras situações.
Definindo funções
A sintaxe de uma função é dada por:
 function [saida1,..., saidaM] = nome(entrada1, ..., entradaN)
Na definição da função, entrada1, ..., entradaN são os parâmetros de 
entrada, saida1, ..., saidaM são os parâmetros de saída e nome é o 
nome dado a função.
Definindo funções
Funções são armazenadas em arquivos do tipo .m. O arquivo de 
armazenamento e a função devem obrigatoriamente possuir o mesmo 
nome.
caso contrário, quando a função for chamada, ocorrerá um erro. 
Para chamar uma função , basta fazer [saida1,.. . , saidaM] = 
nome(entrada1, ..., entradaN) ou nome(entrada1, ..., entradaN)
No primeiro caso, a saída é armazenada nas variáveis saida1, ..., 
sa idaM, enquanto que na segunda chamada, o resul tado é 
apresentado diretamente na janela de comando.
Definindo funções (exemplo)
Definição:
Chamada:
Definindo funções (exemplo)
Definição:
Chamada:
Definindo funções (exemplo)
Definição:
Chamada: Como imprimir os pares de um vetor 
de números?
Definindo funções (exemplo)
Definição:
Chamada:
Definindo funções (exemplo)
Exercícios
1. Crie uma função que converta uma temperatura Celsius em uma 
temperatura Fahrenheit. <https://www.thoughtco.com/celcius-to-
farenheit-formula-609227>
2. Crie uma função que converta uma velocidade em km/h (quilômetros 
por hora) e apresente-a convertida em m/s (metros por segundo). 
<https://www.convertunits.com/from/km/h/to/m/s>
3. Crie uma função para dado uma matriz, verificar sua dimensão, se a 
matriz é diagonal, se é diagonal principal, se é a matriz identidade e se 
é matriz nula.
Dica: como percorrer uma matriz?
Dúvidas???

Continue navegando