Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Apostila básica - MATLAB, Notas de estudo de Física

Comandos básicos de utilização dessa poderosa ferramenta

Tipologia: Notas de estudo

Antes de 2010

Compartilhado em 20/02/2010

licenciatura-em-fisica-9
licenciatura-em-fisica-9 🇧🇷

4.4

(10)

5 documentos

1 / 61

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d

Pré-visualização parcial do texto

Baixe Apostila básica - MATLAB e outras Notas de estudo em PDF para Física, somente na Docsity!

Conteúdo

APRESENTAÇÃO

O que é o MATLAB?

MATLAB é um "software" interativo de alta performance voltado para o cálculo numérico. O MATLAB integra análise numérica, cálculo com matrizes, processamento de sinais e construção de gráficos em ambiente fácil de usar onde problemas e soluções são expressos somente como eles são escritos matematicamente, ao contrário da programação tradicional.

O MATLAB é um sistema interativo cujo elemento básico de informação é uma matriz que não requer dimensionamento. Esse sistema permite a resolução de muitos problemas numéricos em apenas uma fração do tempo que se gastaria para escrever um programa semelhante em linguagem Fortran, Basic ou C. Além disso, as soluções dos problemas são expressas no MATLAB quase exatamente como elas são escritas matematicamente.

Carregando o MATLAB

No Gerenciador de Programas do Microsoft Windows deve-se abrir o grupo de programas do MATLAB for Windows, que contém o ícone do aplicativo MATLAB. Um duplo clique no ícone MATLAB carrega o aplicativo MATLAB.

Quando o MATLAB é carregado, duas janelas são exibidas: a Janela de Comando (Command Windows) e Janela Gráfica (Graphic Windows). A Janela de Comando é ativada quando se inicializa o MATLAB, e o "prompt" padrão (>>) é exibido na tela.

A partir desse ponto, o MATLAB espera as instruções do usuário. Para entrar com uma matriz pequena, por exemplo usa-se

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

colocando colchetes em volta dos dados e separando as linhas por ponto e vírgula.. Quando se pressiona a tecla o MATLAB responde com

A =

Para inverter esta matriz usa-se

>> B = inv(A)

e o MATLAB responde com o resultado.

Editor de Linhas de Comando

As teclas com setas podem ser usadas para se encontrar comandos dados anteriormente, para execução novamente ou sua reedição. Por exemplo, suponha que você entre com

>> log (sqt(tan(pi/5)))

Como para calcular a raiz quadrada o comando certo é sqrt , o MATLAB responde com uma mensagem de erro:

1 INTRODUÇÃO

O MATLAB trabalha essencialmente com um tipo de objeto, uma matriz numérica retangular podendo conter elementos complexos (deve-se lembrar que um escalar é uma matriz de dimensão l x l e que um vetor é uma matriz que possui somente uma linha ou uma coluna).

1.1 Entrando com Matrizes Simples

As matrizes podem ser introduzidas no MATLAB por diferentes caminhos:

  • digitadas na Janela de Comando (lista explícita de elementos),
  • geradas por comandos e funções,
  • criadas em arquivos ".m",
  • carregadas a partir de um arquivo de dados externo. O método mais fácil de entrar com pequenas matrizes no MATLAB é usando uma lista explícita. Os elementos de cada linha da matriz são separados por espaços em branco ou vírgulas e as colunas separadas por ponto e vírgula, colocando-se colchetes em volta do grupo de elementos que formam a matriz. Por exemplo, entre com a expressão

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

Pressionando o MATLAB mostra o resultado

A =

A matriz A é salva na memória RAM do computador, ficando armazenada para uso posterior.

As matrizes podem, também, ser introduzidas linha a linha, o que é indicado para matrizes de grande dimensão. Por exemplo:

>>A = [1 2 3

>> 7 8 9]

Outra maneira para entrar com matrizes no MATLAB é através de um arquivo no formato texto com extensão " .m ". Por exemplo, se um arquivo chamado " gera.m "contém estas três linhas de texto,

A= [1 2 3

7 8 9]

então a expressão " gera " lê o arquivo e introduz a matriz A.

>>gera

O comando load pode ler matrizes geradas pelo MATLAB e armazenadas em arquivos binários ou matrizes geradas por outros programas armazenadas em arquivos ASCII.

1.2 Elementos das Matrizes

Os elementos das matrizes podem ser qualquer expressão do MATLAB, por exemplo.

>> x = [-1.3 sqrt(2) ((1+2+3)*4/5)^2]

resulta em

x =

  • l.3000 1.4142 23. Um elemento individual da matriz pode ser reverenciado com índice entre parênteses. Continuando o exemplo,

>> x(6) = abs(x(l))

produz:

x =

Note que a dimensão do vetor x é aumentada automaticamente para acomodar o novo elemento e que os elementos do intervalo indefinido são estabelecidos como zero.

representa a palavra "answer" (resposta), é automaticamente criada. Por exemplo, digite a expressão

que produz

ans=

Se o último caractere da declaração é um ponto e vírgula, ";", a impressão na tela é suprimida, mas a tarefa é realizada. Esse procedimento é usado em arquivos com extensão ".m" e em situações onde o resultado é uma matriz de grandes dimensões e temos interesse em apenas alguns dos seus elementos.

Se a expressão é tão grande que não cabe em apenas uma linha, pode-se continuar a expressão na próxima linha usando um espaço em branco e três pontos,"...", ao final das linhas incompletas. Por exemplo,

>> s = l - 1/2 + 1/3 - 1/4 + 1/5 - 1/6 + 1/ ...

>> - 1/8 + 1/9 - l/10 + 1/11 - 1/12 + 1/13;

calcula o resultado da série, atribuindo a somatória à variável s , mas não

imprime o resultado na tela. Note que os espaços em branco entre os sinais "=", "+" e

"-" são opcionais, mas o espaço em branco entre "1/7" e "..." é obrigatório.

As variáveis e funções podem ser formadas por um conjunto de letras, ou por um conjunto de letras e números, onde somente os primeiros 19 caracteres do conjunto são identificados. O MATLAB faz distinção entre letras maiúsculas e

minúsculas, assim a e A não são as mesmas variáveis. Todas as funções devem ser

escritas em letras minúsculas: inv(A) calcula a inversa de A, mas INV(A) é uma

função indefinida.

1.4 Obtendo Informações da Área de Trabalho

Os exemplos de declarações mostrados nos itens acima criaram variáveis que são armazenadas na Área de Trabalho do MATLAB. Executando

>> who

obtêm-se uma lista das variáveis armazenadas na Área de Trabalho:

Your variables are:

A ans r s x

Que mostra as cinco variáveis geradas em nossos exemplos, incluindo ans.

Uma informação mais detalhada mostrando a dimensão de cada uma das

variáveis correntes é obtido com whos que para nosso exemplo produz:

Name Size Efements Bytes Density Complex

A 3 by 3 9 72 Full No

ans 1 by 1 1 8 Full No

r 1 by 3 3 24 Full No

s 1 by 1 1 8 Full No

x 1 by 6 6 48 Full No

Grand total is 20 elements using 160 bytes

Cada elemento de uma matriz real requer 8 bytes de memória, assim nossa

matriz A de dimensão 3x3 usa 72 bytes e todas variáveis utilizadas um total de 160

bytes.

1.5 Números e Expressões Aritméticas

A notação decimal convencional, com ponto decimal opcional e o sinal de menos, é usada para números. A potência de dez pode ser incluída como um sufixo. A seguir são mostrados alguns exemplos de números aceitos:

9.637458638 1.602E- 20 6.06375e

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

que produzem o mesmo resultado.

Se i ou j forem usados como variáveis, de forma que tenham seus valores

originais modificados, uma nova unidade complexa deverá ser criada e utilizada de maneira usual:

>> ii = sqrt(-1);

>> z = 3 + 4*ii

1.7 Formato de Saída

O formato numérico exibido na tela pode ser modificado utilizando-se o

comando format, que afeta somente o modo como as matrizes são mostradas, e não

como elas são computadas ou salvas (o MATLAB efetua todas operações em dupla precisão).

Se todos os elementos das matrizes são inteiros exatos, a matrizes é mostrada em um formato sem qualquer ponto decimal. Por exemplo,

>> x = [-1 0 1]

sempre resulta em

x =

  • 1 0 1

Se pelo menos um dos elementos da matriz não é inteiro exato, existem várias

possibilidades de formatar a saída. O formato "default", chamado de formato short,

mostra aproximadamente 5 dígitos significativos ou usam notação científica. Por exemplo a expressão

>> x = [4/3 1.2345e-6]

é mostrada , para cada formato usado, da seguinte maneira:

format short 1.3333 0.

format short e 1.3333e+000 1.2345e- 006

format long 1.33333333333333 0.

format long e 1.333333333333333e+000 1.234500 006 000000000e-

format hex 3ff5555555555555 3eb4b6231abfd

format rat 4/3 1/

format bank 1.33 0.

format + ++

Com o formato short e long, se o maior elemento da matriz é maior que 1000

ou menor que 0.001, um fator de escala comum é aplicado para que a matriz completa seja mostrada. Por exemplo,

>> x = 1.e20*x

resultado da multiplicação será mostrado na tela.

X = l.0e+20*

O formato + é uma maneira compacta de mostrar matrizes de grandes

dimensões. Os símbolos "+", "-", e "espaço em branco" são mostrados,

respectivamente para elementos positivos, elementos negativos e zeros.

1.8 As Facilidades do HELP (Ajuda)

O MATLAB possui um comando de ajuda (help) que fornece informações

sobre a maior parte dos tópicos. Digitando

>> help

obtêm-se uma lista desses tópicos disponíveis:

nnet\exampies - Neural Network Toolbox examples. nnet\nnet - Neural Network Toolbox. For more help on directory/topic, type 'help topic".

Para obter informações sobre um tópico específico, digite help tópico. Por

exemplo,

>> help plotxy

que fornece uma lista de todos os comandos relacionados com gráficos bidimensionais:

Two dimensional graphics. Elementary X-Y graphs plot - Linear plot. loglog - Log-log scafe plot. semilogx - Semi-log scale plot. semilogy - Semi-log scale plot. fill - Draw filled 2-D polygons. Specialized X-Y graphs. polar - Polar coordinate plot. bar - Bar graph. stem - Discrete sequence or & "stemm" plot. stairs - Stairstep plot. errorbar - Error bar plot. hist - Histogram plot. rose - Angle histogram plot. compass - Compass plot. feather - Feather plot. fplot - Plot function comet - Comet-like trajectory. Graph annotation. title - Graph title. xlabel - X-axis label. ylabel - Y-axis label. text - Text annotation. gtext - Mouse placement of text.

grid - Grid lines. See also PLOTXYZ, GRAPHICS Finalmente, para obter informações sobre um comando específico, por

exemplo title, digite:

>> help title

e informações mais detalhadas sobre este comando serão exibidas:

TITLE Titles for 2-D and 3-D plots.

TITLE (‘text’) adds text at the top of the current axis.

See also XLABEL, YLABEL, ZLABEL, TEXT.

Note que no exemplo mostrado para adicionar o título em um gráfico, TITLE

(‘TEXT’) está escrito em letras maiúsculas somente para destacar. Deve-se lembrar

que todos os comandos do MATLAB devem ser escritas em letras minúsculas, portanto, para adicionar o texto " Título do Gráfico " em um gráfico, digite:

>> title (‘Título do Gráfico’)

1.9 Funções

A "força" do MATLAB vem de um conjunto extenso de funções. O MATLAB possui um grande número de funções intrínsecas que não podem ser alteradas pelo usuário. Outras funções estão disponíveis em uma biblioteca externa distribuídas com o programa original (MATLAB TOOLBOX), que são na realidade arquivos com a extensão ".m" criados a partir das funções intrínsecas. A biblioteca externa (MATLAB TOOLBOX) pode ser constantemente atualizada à medida que novas aplicações são desenvolvidas. As funções do MATLAB, intrínsecas ou arquivos ".m", podem ser utilizadas apenas no ambiente MATLAB.

As categorias gerais de funções matemáticas disponíveis no MATLAB incluem:

· Matemática elementar;

· Funções especiais; · Matrizes elementares; · Matrizes especiais; · Decomposição e fatorização de matrizes; · Análise de dados;

2 OPERAÇÕES COM MATRIZES

As operações com matrizes no MATLAB são as seguintes:

· Adição; · Subtração; · Multiplicação; · Divisão a direita; · Divisão a esquerda; · Exponenciação; · Transposta; A seguir cada uma dessas operações é mostrada com mais detalhe.

2.1 Transposta

O caracter apóstrofo, " ' " , indica a transposta de uma matriz. A declaração

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

>> B = A'

que resulta em

A = 1 2 3

B = 1 4 7

e

>> x = [-1 O 2]'

produz

x =

Se Z é uma matriz complexa, Z’ será o conjugado complexo composto. Para

obter simplesmente a transposta de Z deve-se usar Z.’, como mostra o exemplo

>> Z = [1 2; 3 4] + [5 6; 7 8]*i

>> Z1 = Z’

>> Z2 = Z.’

que resulta em

Z =

1.0000 + 5.0000i 2.0000 + 6.0000i

6.0000 + 7.0000i 4.0000 + 8.0000i

Z1 =

1.0000 - 5.0000i 3.0000 - 7.0000i

2.0000 - 6.0000i 4.0000 - 8.0000i

Z2 = 1.0000 + 5.0000i 3.0000 + 7.0000i

2.0000 + 6.0000i 4.0000 + 8.0000i

2.2 Adição e Subtração

A adição e subtração de matrizes são indicadas, respectivamente, por "+" e "-".

As operações são definidas somente se as matrizes as mesmas dimensões. Por

exemplo, a soma com as matrizes mostradas acima, A + x, não é correta porque A é

3x3 e x é 3x1. Porém,

>> C = A + B

é aceitável, e o resultado da soma é

C =

A adição e subtração também são definidas se um dos operadores é um escalar, ou seja, uma matriz l x l. Neste caso, o escalar é adicionado ou subtraído de todos os elementos do outro operador. Por exemplo: