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


Introdução ao Matlab®: um guia básico para cálculos matriciais e simbólicos, Notas de estudo de Engenharia Elétrica

Este documento fornece uma introdução ao software matlab®, um ambiente de desenvolvimento de software amplamente utilizado em engenharia e ciências. O guia aborda os conceitos básicos do matlab®, incluindo cálculos matriciais, funções científicas, operações simbólicas e gráficos. Além disso, é fornecido um exemplo de como utilizar o matlab® para resolver equações e manipular expressões algébricas.

Tipologia: Notas de estudo

2012

Compartilhado em 22/09/2012

rafael-amico-2
rafael-amico-2 🇧🇷

5 documentos

1 / 26

Toggle sidebar

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

Não perca as partes importantes!

bg1
INTRODUC¸ ˜
AO AO MATLABr
Reginaldo J. Santos
Departamento de Matem´atica-ICEx
Universidade Federal de Minas Gerais
http://www.mat.ufmg.br/~regi
Agosto de 2005
´ultima atualiza¸ao em
27 de maio de 2009
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a

Pré-visualização parcial do texto

Baixe Introdução ao Matlab®: um guia básico para cálculos matriciais e simbólicos e outras Notas de estudo em PDF para Engenharia Elétrica, somente na Docsity!

INTRODUC¸ ˜AO AO MATLAB

r

Reginaldo J. Santos

Departamento de Matem´atica-ICEx

Universidade Federal de Minas Gerais

http://www.mat.ufmg.br/~regi

Agosto de 2005

´ultima atualiza¸c˜ao em

27 de maio de 2009

2 SUM ´ARIO

  • 1 Introdu¸c˜ao Sum´ario
  • 2 C´alculos Cient´ıficos
    • C´alculos Simples
    • 2.1 Area de Trabalho´
    • 2.2 Vari´aveis
    • 2.3 Fun¸c˜oes Cient´ıficas
    • 2.4 Formatos Num´ericos
  • 3 Vari´aveis e Express˜oes Simb´olicas
  • 4 Instalando o Pacote gaal
  • 5 Desenhando Gr´aficos de Fun¸c˜oes
  • 6 Matrizes
    • 6.1 Exerc´ıcios
  • Referˆencias
  • Introdu¸c˜ao ao Matlabr 27 de maio de

4 2 C ´ALCULOS CIENT´IFICOS

2 C´alculos Cient´ıficos

C´alculos Simples

O Matlabr^ faz c´alculos simples e cient´ıficos como uma calculadora. Por exemplo, suponha que vocˆe vai a uma loja e compra 3 objetos que custam 25 reais cada e 5 objetos que custam 12 reais cada. Quanto custou a sua compra? No Matlabr^ vocˆe pode resolver este problema de pelo menos duas maneiras. A mais simples ´e EDU>> 325 + 5 ans = 135

Observe que no Matlabr^ a multiplica¸c˜ao tem precedˆencia sobre a adi¸c˜ao. Note tamb´em que ele chamou o resultado de ans. Alternativamente, vocˆe pode usar vari´aveis para armazenar informa¸c˜ao.

EDU>> q1=3, p1=25, q2=5, p2= q1 = 3 p1 = 25 q2 = 5 p2 = 12

Introdu¸c˜ao ao Matlabr^ 27 de maio de 2009

EDU>> total=q1p1+q2p total = 135

Primeiro, criamos quatro vari´aveis, q1, p1, q2 e p2, atribuindo a elas os seus valores res- pectivos. Observe que no Matlabr^ o sinal de igual tem um sentido diferente daquele da Matem´atica. Aqui, igual significa atribui¸c˜ao. O que estiver a direita do sinal de igual ´e “co- locado” na vari´avel que estivera esquerda. Finalmente, criamos uma vari´avel chamada total que recebeu o total da compra. Usamos a v´ırgula para separar os comandos que s˜ao dados em uma mesma linha. Esta separa¸c˜ao poderia ser feita com ponto e v´ırgula. Mas, neste caso o Matlabr^ n˜ao mostra os resultados dos comandos. No exemplo anterior ter´ıamos

EDU>> q1=3; p1=25; q2=5; p2=12; EDU>> total=q1p1+q2p2;

Em qualquer momento, podemos ver o valor que est´a contido em uma vari´avel, simplesmente digitando no prompt o seu nome.

EDU>> total total = 135

O Matlabr^ oferece as seguintes opera¸c˜oes aritm´eticas:

a+b soma a e b. Por exemplo, 5+6. a-b subtrai a de b. Por exemplo, 15-12. a∗b multiplica a por b. Por exemplo, 3.14∗0.15.

27 de maio de 2009 Reginaldo J. Santos

2.3 Fun¸c˜oes Cient´ıficas 7

ans - vari´avel usada para os resultados. pi - n´umero π. eps - menor n´umero tal que, quando adicionado a 1, cria um n´umero maior que 1 no computador. flops - armazena o n´umero de opera¸c˜oes em ponto flutuante realizadas. inf - significa infinito. NaN ou nan - significa n˜ao ´e um n´umero, por exemplo, 0/0. i e j - unidade imagin´aria

nargin - n´umero de argumentos de entrada de uma fun¸c˜ao. nargout - n´umero de argumentos de sa´ıda de uma fun¸c˜ao. realmin - menor n´umero que o computador pode armazenar. realmax - maior n´umero que o computador pode armazenar.

As vari´aveis podem ser redefinidas a qualquer momento, bastando para isso atribu´ı-las um novo valor.

2.3 Fun¸c˜oes Cient´ıficas

O Matlabr^ tem uma s´erie de fun¸c˜oes cient´ıficas pr´e-definidas. A maioria pode ser usada da mesma forma que seria escrita matematicamente. Por exemplo: EDU>> x=sqrt(2)/ x =

EDU>> y=acos(x) y =

27 de maio de 2009 Reginaldo J. Santos

8 2 C ´ALCULOS CIENT´IFICOS

EDU>> y_graus=y*180/pi y_graus =

Estes comandos calculam o arco cujo cosseno ´e

2 /2, inicialmente em radianos, depois em graus. Abaixo segue uma lista de fun¸c˜oes cient´ıficas dispon´ıveis:

abs(x) - valor absoluto de x. acos(x) - arco cujo cosseno ´e x. asin(x) - arco cujo seno ´e x. atan(x) - arco cuja tangente ´e x. cos(x) - cosseno de x. exp(x) - exponencial ex. gcd(x,y) - m´aximo divisor comum de x e y. lcm(x,y) - m´ınimo m´ultiplo comum de x e y. log(x) - logaritmo de x na base e. log10(x) - logaritmo de x na base 10. rem(x,y) - resto da divis˜ao de x por y. sin(x) - seno de x. sqrt(x) - raiz quadrada de x. tan(x) - tangente de x.

2.4 Formatos Num´ericos

Quando o Matlabr^ mostra um resultado num´erico ele segue certas regras. No caso de

Introdu¸c˜ao ao Matlabr^ 27 de maio de 2009

10 3 VARI ´AVEIS E EXPRESS ˜OES SIMB ´OLICAS

3 Vari´aveis e Express˜oes Simb´olicas

Agora, vamos ver como podemos manipular com express˜oes que al´em de n´umeros e vari´aveis num´ericas, cont´em tamb´em vari´aveis simb´olicas. Por exemplo: EDU>> syms x EDU>> simplify((sin(x))^2+(cos(x))^2) ans = 1

Estes comandos mandam o Matlabr^ simplificar a express˜ao sen^2 x + cos^2 x. Primeiro preci- samos dizer ao Matlabr^ que x ´e uma vari´avel simb´olica, depois pedimos para simplificar a express˜ao que envolve x. Neste caso usamos uma fun¸c˜ao chamada simplify. A palavra fun¸c˜ao no Matlabr^ tem um significado diferente daquele que tem na Matem´atica. Aqui fun¸c˜ao ´e um comando, que pode ter alguns argumentos de entrada e alguns de sa´ıda. Neste caso, a fun¸c˜ao simplify tem como argumento de entrada uma express˜ao simb´olica e de sa´ıda tamb´em. Uma vez definido que a vari´avel x ´e uma vari´avel simb´olica, podemos definir express˜oes que envolvem esta vari´avel. Por exemplo, dadas duas fun¸c˜oes

f (x) = 2x^2 + 3x − 5 e g(x) = x^2 − x + 7,

podemos fazer uma s´erie de opera¸c˜oes alg´ebricas envolvendo estas fun¸c˜oes.

EDU>> f=2x^2+3x-5; g=x^2-x+7; EDU>> f+g ans = 3x^2+2x+ EDU>> f-g

Introdu¸c˜ao ao Matlabr^ 27 de maio de 2009

ans = x^2+4x- EDU>> fg ans = (2x^2+3x-5)(x^2-x+7) EDU>> expand(ans) ans = 2x^4+x^3+6x^2+26x- EDU>> f/g ans = (2x^2+3x-5)/(x^2-x+7) EDU>> expand(ans)

ans =

2/(x^2-x+7)x^2+3/(x^2-x+7)x-5/(x^2-x+7)

EDU>> pretty(ans)

x x 5 2 ---------- + 3 ---------- - ---------- 2 2 2 x - x + 7 x - x + 7 x - x + 7 EDU>> f^

27 de maio de 2009 Reginaldo J. Santos

O Matlabr^ pode resolver equa¸c˜oes. Por exemplo, para resolver a equa¸c˜ao

ax^2 + bx + c = 0,

algebricamente, podemos usar os comandos:

EDU>> syms a b c x EDU>> solve(ax^2+bx+c) ans = [1/2/a(-b+(b^2-4ac)^(1/2))] [1/2/a(-b-(b^2-4ac)^(1/2))]

O Matlabr^ pode exibir este resultado de uma forma mais f´acil de enxergar usando a fun¸c˜ao pretty.

EDU>> pretty(ans) [ 2 1/2] [ -b + (b - 4 a c) ] [1/2 --------------------] [ a ] [ ] [ 2 1/2] [ -b - (b - 4 a c) ] [1/2 --------------------] [ a ]

Abaixo segue um resumo das fun¸c˜oes para manipula¸c˜ao de express˜oes alg´ebricas:

27 de maio de 2009 Reginaldo J. Santos

14 3 VARI ´AVEIS E EXPRESS ˜OES SIMB ´OLICAS

diff(f) - calcula a derivada de f. compose(f,g) - determina a composta f (g(x)). expand(expr) - expande uma express˜ao expr. finverse(expr) - determina a inversa funcional da express˜ao expr. pretty(expr) - exibe a express˜ao expr numa forma mais bonita. simple - procura encontrar uma forma mais simples de escrever uma express˜ao expr. simplify(expr) - simplifica a express˜ao expr. solve(expr) - acha a(s) solu¸c˜ao(es) da equa¸c˜ao expr= 0. subs(expr,x,a) - substitui na express˜ao expr a vari´avel x por a. syms x y z a b - define as vari´aveis simb´olicas x, y, z, a e b.

Existem v´arias outras fun¸c˜oes para manipula¸c˜ao de express˜oes alg´ebricas. Vocˆe pode obter informa¸c˜oes sobre elas digitando help symbolic. Uma fun¸c˜ao interessante que mostra as capacidades do Matlabr^ em tratar com fun¸c˜oes matem´aticas ´e funtool que ´e uma calculadora para fun¸c˜oes.

Introdu¸c˜ao ao Matlabr^ 27 de maio de 2009

16 4 INSTALANDO O PACOTE GAAL

Clique duas vezes com o bot˜ao esquerdo do mouse em toolbox e depois o mesmo em gaal. Depois clique em Add to Back

  1. Clique em OK. Depois, em Save Settings e por ´ultimo em Close
  2. Verifique se o Matlabr^ adicionou o pacote gaal aos outros, digitando no prompt winhelp. Ele deve aparecer na ´ultima linha ou na primeira. Caso contr´ario repita o processo acima, com mais cuidado.
  3. Para informa¸c˜oes sobre o pacote gaal digite no prompt do Matlabr help gaal

Introdu¸c˜ao ao Matlabr^ 27 de maio de 2009

5 Desenhando Gr´aficos de Fun¸c˜oes

Para desenhar o gr´afico de uma fun¸c˜ao de uma vari´avel, existe no pacote gaal a fun¸c˜ao plotf1 (use help plotf1 para saber seu uso). Para colocar os eixos coordenados temos no pacote gaal a fun¸c˜ao eixos. Usando a fun¸c˜ao f (x) = 1/(1 − x^2 ) que definimos acima temos:

EDU>> plotf1(f,[-10,10],200)

−50 −10 −8 −6 −4 −2 0 2 4 6 8 10

0

10

20

30

EDU>> eixos

27 de maio de 2009 Reginaldo J. Santos

−5 −5 −4 −3 −2 −1 0 1 2 3 4 5

0

1

2

3

4

5

Neste caso como os eixos j´a estavam tra¸cados, o resultado n˜ao foi bom. Ent˜ao, vamos limpar a figura com o comando clf e com a seta para cima ↑ vamos recuperar comandos que haviamos digitado anteriormente.

EDU>> clf EDU>> plotf1(f,[-10,10]) EDU>> axis([-5,5,-5,5]) EDU>> eixos

27 de maio de 2009 Reginaldo J. Santos

20 5 DESENHANDO GR ´AFICOS DE FUNC¸ ˜OES

−5 −5 −4 −3 −2 −1 0 1 2 3 4 5

0

1

2

3

4

5

x

y

Introdu¸c˜ao ao Matlabr^ 27 de maio de 2009