7

Click here to load reader

Apostila1_ComandosBasicos

Embed Size (px)

DESCRIPTION

ok

Citation preview

Page 1: Apostila1_ComandosBasicos

CÁLCULO NUMÉRICOApostila MATLAB – Comandos Básicos

Prof. Aline_________________________________________

MATLAB é um software interativo de alto desempenho voltado para o cálculo numérico que integra a capacidade de fazer cálculos, visualização gráfica e programação. Os comandos do MATLAB são muito próximos da forma como escrevemos expressões algébricas tornando o seu uso muito simples.

Carregando o MATLABDuplo clique no ícone do aplicativo.Uma vez inicializado aparecerá na tela uma janela de comandos (Command Window) e o prompt padrão “>>” é exibido.

Exemplo 1: A definição de uma matriz de dimensão 2 é:

>> A = [ 1 1; 1 -1]

colocando colchetes em volta dos dados e usando “;” para pular linhas. Ao pressionar a tecla “Enter” visualizamos:

A =

1 1 1 -1

Note que “=” é usado para atribuição de valores.O comando “clc” limpa a janela de comandos.

Operações aritméticas básicas● Adição (a+b) + 1+2● Subtração (a-b) - 5-3● Multiplicação (a b) * 2*3● Divisão (ab) / 4/5● Exponenciação (ab) ^ 2^2

Ordem de precedência: ^, * ou /, + ou -

Operadores relacionais● Maior >● Maior igual >=● Menor <● Menor igual <=● Igual ==● Diferente ~=

Operadores lógicos● E &● Ou |● Não ~

Variáveis

Page 2: Apostila1_ComandosBasicos

Para criar uma variável basta atribuir um valor à ela através do sinal de igual “=”Regras:

● variáveis com letras minúsculas e maiúsculas são diferentes● variáveis devem ter até 19 caracteres● variáveis devem começar por uma letra● variáveis podem ser redefinidas a qualquer momento● o valor armazenado em uma variável pode ser consultado digitando seu nome no

prompt ou digitando “disp(var)”● as variáveis podem ser removidas usando o comando “clear”

Funções pré-definidas (algumas)● Valor absoluto de a abs(a)● Cosseno de a cos(a)● Seno de a sin(a)● Tangente de a tan(a)● Piso de a floor(a)● Teto de a ceil(a)● Exponencial ea exp(a)● Log de a na base e log(a)● Log de a na base 10 log10(a)● Resto divisão a por b mod(a,b)● Raiz quadrada de a sqrt(a)

Comando de auxílio para qualquer função pré-definida: “help”. Exemplo: >> help sqrt SQRT Square root. SQRT(X) is the square root of the elements of X. Complex results are produced if X is not positive. See also sqrtm.

Criando vetoresÉ possível definir o vetor x das seguintes formas:

● x = primeiro:último Exemplo: >> x = 1:3

x =1.0000 2.0000 3.0000

● x = primeiro:incremento:últimoExemplo: >> x = 1:0.5:3

x = 1.0000 1.5000 2.0000 2.5000 3.0000

● x = linspace(primeiro,último,n) onde n é o número de elementosExemplo: >> x = linspace(1,3,5)

x = 1.0000 1.5000 2.0000 2.5000 3.0000

● vetor coluna é o vetor linha seguido do símbolo “ ' ”

Page 3: Apostila1_ComandosBasicos

Exemplo: >> x = linspace(1,3,5)'x =

1.00001.50002.00002.50003.0000

● para acessar a posição i de um vetor x basta fazer x(i)Exemplo: >> x(3)

ans = 2.0000

● operações entre vetores (os vetores devem ter mesmo tamanho e orientação)

Definindo matrizes● O MATLAB trabalha com matrizes retangulares● As linhas são separadas por espaços em branco ou vírgulas● As colunas são separadas por “ ; ” ou mudando de linha● Os elementos da matriz estão entre colchetes● Exemplos:

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

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

>> A = [1 2 34 5 67 8 9]A =

Page 4: Apostila1_ComandosBasicos

1 2 3 4 5 6 7 8 9

● Para acessar o elemento da linha i e coluna j da matriz A usamos A(i,j)Exemplo: A(2,3)>> A(2,3)ans =

6

Operações com Matrizes (algumas)As operações com matrizes no MATLAB são:

● Transposta de A: A'>> A = [1,2,3;4,5,6;7,8,9]A = 1 2 3 4 5 6 7 8 9

>> B = A'B = 1 4 7 2 5 8 3 6 9

● Adição de A e B: A + B>> C = A + BC = 2 6 10 6 10 14 10 14 18

● Subtração de A e B: A – B>> C = A - BC = 0 -2 -4 2 0 -2 4 2 0

● Multiplicação de A e B: A * B>> A = [1,2,3;4,5,6;7,8,9];>> B = [1 2 3]'B = 1 2 3>> C = A*BC = 14 32 50

Page 5: Apostila1_ComandosBasicos

● Inversa de matriz quadrada A: inv(A)>> A = [1 1; 1 -1];>> B = inv(A)B = 0.5000 0.5000 0.5000 -0.5000

● Na adição e subtração as matrizes A e B devem possuir a mesma dimensão, ou seja, mesmo número de linhas e de colunas.

● A multiplicação entre as matrizes A e B existirá se e somente se o número de colunas de A for igual ao número de linhas de B. No exemplo temos, A3x3 e B3x1, logo o resultado é a matriz C3x1.

Arquivos .m● Para resolver problemas simples podemos utilizar o MATLAB como uma

calculadora em que entramos com os comandos diretamente no prompt. Para problemas mais elaborados podemos utilizar o MATLAB como uma linguagem de programação, ou seja, podemos utilizar o MATLAB para executar uma sequência de comandos armazenados em arquivos de roteiro. Esses arquivos são os programas fontes do MATLAB chamados de arquivos “.m” (ou M-files).

● Criar um programa: para escrever um programa (ou arquivo .m) no MATLAB devemos seguir os passos:File > New > M-file. Assim, um editor de texto é aberto e nele podemos escrever os comandos do MATLAB. Para editar um arquivo já existente podemos digitar no prompt o comando “open” seguido do nome do programa. Exemplo: Abrir o programa main.m>> open main.mou>> open main

● Salvar um programa: uma vez escrito o programa, entre no menu File e escolha a opção Save as. Salve o programa no diretório que você está trabalhando.

● Rodar um programa: Para rodar o programa digite no prompt o nome do programa sem o .m.Exemplo: Rodar o programa main.m>> mainOu ainda clique no ícone “run” do editor de texto.

Controle de Fluxo● Estruturas condicionais (algumas)

● if – end

if < condição> <comandos>end

Exemplo: Calcule raiz de a, se a for positivo.a = input('Entre com o valor de a: ');

Page 6: Apostila1_ComandosBasicos

if a >=0 b = sqrt(a)

end

● if – else – end

if < condição> <comandos>else <comandos>end

Exemplo: Calcule raiz de a, se a for positivo e retorne fail caso contrário.a = input('Entre com o valor de a: ');if a >=0 b = sqrt(a)else input('fail')

end

● for – end

for <variável> = <arranjo><comandos>

end

Exemplo: for i = 1:5 x(i) = i^2;end E a resposta é:>> disp(x) 1 4 9 16 25

● while – end

while <condição> <comandos>end

Exemplo:a = 1; b = 15;while a < b a = a + 1;end

Page 7: Apostila1_ComandosBasicos

Referências Bibliográficas:

Tonini, A. M. e Schettino, D. N., MATLAB para a Engenharia, Belo Horizonte, 2002. Disponível em <http://www.ime.unicamp.br/~camecc/temporary_files/ApostilaMatLab_UNI.pdf>. Acessado em 17 mar 2011.

Grupo PET – Engenharia Elétrica , Curso de MATLAB, Campo Grande. Disponível em <http://www.del.ufms.br/tutoriais/matlab/ apresentacao.htm#sumario >. Acessado em 17 mar 2011.

The Mathworks Inc, MATLAB - The Language Of Technical Computing. Disponível em <http://www.mathworks.com/products/matlab/>. Acessado em 17 mar 2011.

Hanselman, D. C. E et al, Matlab 6 Curso Completo, Prentice Hall Brasil, 2002.