Anda di halaman 1dari 94

INTRODUO AO MATLAB

Eduardo da Silva Fernandes

Programa:

Introduo/Conceitos bsicos Matrizes e Sistemas Lineares Polinmios Clculo Diferencial e Integral Equaes Diferenciais Transformada de Laplace Grficos

Introduo/Conceitos bsicos

O Matlab Ambiente Matlab Iniciao de variveis Operadores matemticos

O Matlab

Matlab = MATrix LABoratory Software de alta performance utilizado para clculos cientficos e de engenharia Aplicado a vrias reas do conhecimento Desenvolvido pela MathWorks Linguagem muito rica (+de 1000 funes) Toolbox para vrias reas do conhecimento

O Matlab

Ambiente Matlab

Iniciao de Varives

Exemplo de programa em Matlab

>> b = 2 % sem o caractere ; no final da sentena o resultado apresentado. b=2 >> c = 3; % com o caractere ; no final da sentena o resultado no apresentado. >> d = b+c % o resultado armazenado na varivel d e apresentado. d=5 >> b+c % se nenhum nome atribudo a uma varivel ela armazenada em ans. ans = 5

Operadores matemticos
Funes

trigonomtricas
cosh(x)

cos(x) Co-seno Co-seno hiperblico cot(x) Cotangente coth(x) Cotangente hiperblica csc(x) Cossecante csch(x) Cossecante hiperblico sec(x) Secante sech(x) Secante hiperblico sin(x) Seno

acos(x) Arco co-seno acosh(x) Arco co-seno hiperblico

acot(x) Arco cotangente acoth(x) Arco cotangente hiperblico acsc(x) Arco cossecante acsch(x) Arco cossecante hiperblico

asec(x) Arco secante asech(x) Arco secante hiperblico

sinh(x)

Seno hiperblico tan(x) Tangente

asin(x) Arco seno asinh(x) Arco seno hiperblico atan(x) Arco tangente atan2(x,y) Arco tangente do quarto quadrante atanh(x) Arco tangente hiperblico

tanh(x)

Tangente hiperblica

Operadores matemticos

Exemplo

Operadores atemticos

Funes Exponenciais Potncia Exponencial Logaritmo natural

Nmeros Complexos Valor absoluto ou mdulo de um nmero complexo

abs(x)

exp(x) log(x)

angle(x) ngulo de um nmero complexo conj(x) Conjugado complexo

log10(x) Logaritmo na base 10 log2(x) Logaritmo na base 2 sqrt(x) Raiz quadrada

imag(x) Parte imaginria de um nmero complexo real(x) Parte real de um nmero complexo

Operadores Matemticos

Exemplo

>> a=log(100) a= 4.6052 >> b=log10(100) b= 2 >> c=exp(3) c= 20.0855

>> d=abs(2+2i) d= 2.8284 >> e=angle(2+3i) e= 0.9828

M-file
Como podemos perceber, se trabalharmos no comand window no conseguiremos apagar ou salvar algo. A soluo para isso abrir um M-file No M-file podemos manipular valores com extrema facilidade e salvar o que estamos fazendo.

Abrindo um M-file

Matrizes e Sistemas Lineares


Definindo matrizes Operaes com matrizes Matriz transposta Determinantes Matriz Inversa Resoluo de Sistemas lineares

Definindo matrizes

Queremos apresentar a seguinte matriz no Matlab:

Definindo matrizes

Como fazer?
>> A=[1 2 3;4 5 6] A= 1 4 2 5 3 6

Definindo matrizes

Outro exemplo:

Definindo matrizes
>> X=[1 9 0;7 3 2;4 5 3] X= 1 7 4 9 3 5 0 2 3

Operaes com matrizes

Adio
Dada as matrizes:

A= 2 3 0 -3 3 -3 EB= -2 4 0 3 1 -2 6 1 7

-4 1 3

Queremos achar a matriz A+B

Operaes com matrizes


>>A=[2 3 6; 0 -3 1;3 -3 7] A= 2 0 3 3 -3 -3 6 1 7

>> B=[-2 3 -4;4 1 1;0 -2 3] B= -2 4 0 3 1 -2 -4 1 3

>> C=A+B C= 0 4 3 6 -2 -5 2 2 10

Operaes com matrizes

Exerccio: Fazer a soma das seguintes matrizes:

Y= 1 4 -1 2 5 3 3 6 0

Operaes com matrizes

Multiplicao
Condio para multiplicao de matrizes

Operaes com matrizes

Multiplicao

>> A=[1 0 2;-1 3 1]; >> B=[3 1;2 1;1 0]; >> C=A*B C= 5 4 1 2 >> A=[14 9 3;2 11 14;0 12 17;5 2 3]; >> B=[12 25;9 10;8 5]; >> C=A*B C= 273 235 244 102 455 230 205 160

Operaes com matrizes

Fazer a multiplicao entre as seguintes matrizes:

A= 2 3 0 -3 3 -3 eB= -2 4 0 3 1 -2 6 1 7 Y= -4 1 3 1 4 -1 2 5 3 3 6 0

Matriz transposta

Achar a transposta da seguinte matriz:

Matriz transposta
>> X=[1 9 0;7 3 2;4 5 3]; >> Xt=X' Xt = 1 9 0 7 3 2 4 5 3

Matriz transposta

Achar a transposta das seguintes matrizes.


Y= 1 4 -1 2 5 3 3 6 0

Determinantes

Queremos achar o determinante da seguinte matriz:


Z= 1 9 12 0 11 3 4 0 15 0 -3 3 6 0 0 -3 4 -12 -2 2 -4 -2 -3 9 3 -2 1 -5 0 10 2 12 1 10 -1 7

Determinantes
>> Z=[1 4 6 0 3 2;9 0 0 -3 -2 12;12 15 4 -12 1 1;0 0 -2 2 -5 10;11 -3 -4 -2 0 -1;3 3 -3 9 10 7] Z= 1 9 12 0 11 3 4 0 15 0 -3 3 6 0 -2 -4 -3 0 -3 2 -2 9 3 -2 1 -5 0 10 2 12 1 10 -1 7

4 -12

>> Zd=det(Z) Zd = 730450

Determinantes

Y= 1 4 -1 2 5 3 3 6 0

Achar os determinantes das seguintes matrizes


A= 2 0 3 3 -3 -3 6 1 7

B= -2 4 0 3 1 -2 -4 1 3

Matriz inversa

Queremos encontrar a inversa da seguinte matriz:

Matriz inversa
>> X=[1 9 0;7 3 2;4 5 3]; >>Xi=inv(X) Xi = 0.0085 0.2288 -0.1525 0.1102 -0.0254 0.0169 -0.1949 -0.2627 0.5085

Matriz inversa

Achar a inversa das seguintes matrizes


Y= 1 4 -1 B= -2 4 0 3 1 -2 -4 1 3 2 5 3 3 6 0 A= 2 0 3 3 -3 -3 6 1 7

Sistemas lineares

Seja o sistema linear:

Podemos escrev-lo na forma matricial AX=B

Sistemas Lineares

desta forma que o Matlab trabalha, declarando as matrizes A, X e B.

Sistemas Lineares

Exemplo: Resolver o seguinte sistema linear:

Sistemas Lineares
>> A=[1 4 3;2 5 4;1 -3 -2]; >> B=[1;4;5]; >> X=A\B %Comando para resolver sistemas lineares X= 3.0000 -2.0000 2.0000

Sistemas Lineares
Outra forma de se fazer: >> A=[1 4 3;2 5 4;1 -3 -2]; >> B=[1;4;5];

>>Y=inv(A)*B Y= 3.0000 -2.0000 2.0000

Sistemas Lineares

Exerccios:
Resolver os seguintes sistemas lineares

Polinmios

Declarao de polinmios Razes de polinmios Operaes com polinmios

Declarao de polinmios
Seja um polinmio p(x) de grau n definido por: P(x)=

No Matlab, este polinmio definido da seguinte forma: >>p=[A B C...E D F];

Declarao de polinmios

Exemplo >>P=[1 3 1] >>p=[1 -5 2 -1]

P=[1 4 0 -1 0]

Razes de polinmios

Queremos achar as razes do polinmio Para isso, utilizaremos o comando roots


>> p=[1 3 2]; >> x=roots(p) x= -2 -1

Razes de polinmios

Outro exemplo

>> p=[4 2 0 5]; >> roots(q) ans = -1.2723 0.3861 + 0.9129i 0.3861 - 0.9129i

Razes de polinmios

Achar as razes dos seguintes polinmios

Operaes com polinmios

Multiplicao
Suponhamos que queremos fazer a multiplicao dos polinmios:

Q(x)=x-1

Para isso, utilizamos o comando conv

Operaes com polinmios

Soluo

>> p=[1 3 2]; >> q=[1 -1]; >> r=conv(p,q) r= 1 2 -1 -2

Operaes com polinmios

Exerccio
Fazer a multiplicao dos seguintes polinmios:

Operaes com polinmios

Diviso
Queremos fazer a diviso entre os seguintes polinmios

Q(x)=x-1

Para isso, utilizaremos o comando deconv

Operaes com polinmios

Soluo
>> p=[1 3 2]; >> q=[1 -1];

>> s=deconv(p,q) s= 1 4

Operaes com polinmios


Exerccio Fazer a diviso dos seguintes polinmios

Clculo Diferencial e Integral


Limites Derivada Integrais indefinidas Integrais definidas Equaes diferenciais

Limites

No Matlab, calculamos limites da seguinte forma:

>>syms x >>Limit((f(x),x,x0)

Quando x tende a ... Quem est tendendo Funo

Limites

Exemplo: Calcular o seguinte limite:

>> syms x >> limit(sin(x)/x,x,0) ans = 1

Limites

Exerccio: Calcular os seguintes limites:

Derivadas
Para se calcular derivadas no Matlab, utilizamos o comando diff Exemplo

>> syms x >> diff((x^2)-(3*x),x) ans = 2*x - 3

Derivadas
Exerccio Achar as derivadas das seguintes funes

Integrais indefinidas
Para calcularmos integrais indefinidas, utilizamos o comando int da seguinte forma: >>int (f, x)

funo Varivel que estamos integrando

Integrais indefinidas

Exemplo: Calcular a integral da funo


-x

F(x)=

>> syms x >> int((x^3)-x,x)

ans = (x^2*(x^2 - 2))/4

Integrais indefinidas

Calcular as seguintes integrais das seguintes funes:

Integrais definidas
Para calcularmos integrais definidas, utilizamos o comando int da seguinte forma: Int(f,x,a,b)

Integrais definidas

Calcular a integral da funo f(x)= intervalo [0,1]

no

>>syms x >> int(x^2,x,0,1) ans = 1/3

Integrais definidas

Calcular as seguintes integrais definidas:

Equaes Diferenciais

Equaes Diferenciais

Para resolvermos equaes diferenciais no Matlab, utilizamos o comando dsolve da seguinte forma: >>dsolve(EDO,condies iniciais)

Equaes Diferenciais

Para isso, utilizamos a seguinte representao das derivadas:

-y=D3y -y=D2y -y=Dy

Equaes Diferenciais

Exemplo: Resolver as seguintes equaes diferenciais:

A) y+2y+1=0 B) y+3y+2=0, y(0)=1, y(0)=-1 C) y+5y+6=cos(t), y(0)=2, y(0)=0

Equaes Diferenciais

A) y+2y+1=0

>> syms y >> dsolve('D2y+2*Dy+1=0','t') ans = C13 - t/2 + C14/exp(2*t) + 1/4

Equaes Diferenciais

B) y+3y+2=0, y(0)=1, y(0)=-1

>> syms y >> dsolve('D2y+3*Dy+2','Dy(0)=1,y(0)=-1') ans = - (2*t)/3 - 5/(9*exp(3*t)) - 4/9

Equaes Diferenciais

C) y+5y+6=cos(t), y(0)=2, y(0)=0

>> syms y >> dsolve('D2y+5*Dy+6=cos(t)','Dy(0)=2,y(0)=0') ans = (5*sin(t))/26 - 391/(650*exp(5*t)) - cos(t)/26 - (6*t)/5 + 16/25

Equaes Diferenciais

Exerccios: Achar a soluo das seguintes equaes diferenciais:

A) y+y+1=0 B) y+9y+20=0, y(0)=0, y(0)=0 C) y+4y+4=sin(t), y(0)=0, y(0)=0

Transformada de Laplace

Transformada de Laplace Transformada inversa de Laplace

Transformada de Laplace

Definio

Transformada de Laplace

f(t)

L[f(t)]
-1

F(s)

F(s)

L[F(s)]

f(t)

Transformada de Laplace

Transformada de Laplace

Transformada de Laplace
No Matlab, calculamos a Transformada de Laplace da seguinte forma: >>syms t; >>laplace(f(t))

Funo que queremos calcular a transformada de laplace

Transformada de Laplace

Exemplo:

>> syms t >> laplace(exp(t)) ans = 1/(s - 1) >> laplace(exp(t)*sin(t)) ans = 1/((s - 1)^2 + 1)

Transformada de Laplace

Calcular a Transformada de Laplace das seguintes funes:

Transformada inversa de Laplace

Definio

Transformada inversa de Laplace

No Matlab, achamos a transformada inversa da seguinte forma:

>>syms s; >>ilaplace(F(s))

Funo calcular Inversa

que queremos a transformada

Transformada inversa de Laplace

Achar a transformada da seguinte funo:

>> syms s >> ilaplace(1/(s+3)) ans = 1/exp(3*t)

Transformada inversa de Laplace

Exerccio: Achar a transformada inversa das seguintes funes:

Grficos

Grficos
Passos para se fazer um grfico no Matlab: 1) Declarar a variao de x

>>x=-5:0.5:5

2) Declarar a funo em si Ex:

>>y=-x+1

3) Usar o comando plot Ex:

>>plot(x,y)

Grficos

Exemplo: Grfico da funo f(x)=sin(x)

x=-4*pi:0.1:4*pi; y=sin(x) plot(x,y)

Grficos

Exemplo: Grfico da funo f(x)=sin(x)


1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 -15

-10

-5

10

15

Grficos

Exemplo: Grfico da funo f(x)=cos(x)

x=-4*pi:0.1:4*pi; y=cos(x) plot(x,y)

Grficos

Exemplo: Grfico da funo f(x)=cos(x)


1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 -15

-10

-5

10

15

Grficos

Agora, digitando os dois cdigos acima e utilizando o comando hold on, veja o que acontece. Depois, troque o comando hold on pelo comando figure.

x=-4*pi:0.1:4*pi; y=cos(x) plot(x,y) hold on f=sin(x) plot(x,f)

Grficos

Comando hold on
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 -15

-10

-5

10

15

Grficos

Exerccio: Fazer o grfico das seguintes funes:

A) B) C)

Para terminar...

Os melhores comandos do Matlab so: 1) HELP 2)Google

MUITO OBRIGADO!!!

edu.silva.fernandes@gmail.com

Anda mungkin juga menyukai