introdução ao matlab

Post on 14-Jun-2015

9.442 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Minicurso sobre o software Matlab. Aborda conceitos básicos e seu uso na resolução de problemas matemáticos, como Cálculo diferencial e integral e plotagem de gráficos.

TRANSCRIPT

INTRODUÇÃO AO MATLAB

Eduardo da Silva Fernandes

Introdução/Conceitos básicos

Matrizes e Sistemas Lineares

Polinômios

Cálculo Diferencial e Integral

Equações Diferenciais

Transformada de Laplace

Gráficos

Programa:

Introdução/Conceitos básicos

• O Matlab

• Ambiente Matlab

• Iniciação de variáveis

• Operadores matemáticos

Matlab = MATrix LABoratory

Software de alta performance utilizado para cálculos científicos e de engenharia

Aplicado a várias áreas do conhecimento

Desenvolvido pela MathWorks

Linguagem muito rica (+de 1000 funções)

Toolbox para várias áreas do conhecimento

O Matlab

O Matlab

Ambiente Matlab

Exemplo de programa em Matlab

>> b = 2 % sem o caractere ‘;’ no final da sentença oresultado é apresentado.b = 2>> c = 3; % com o caractere ‘;’ no final da sentença oresultado não é apresentado.>> d = b+c % o resultado é armazenado na variável ‘d’ eé apresentado.d = 5>> b+c % se nenhum nome é atribuído a uma variávelela é armazenada em “ans”.ans = 5

Iniciação de Variáves

Operadores matemáticos Funções trigonométricasacos(x) Arco co-seno

acosh(x) Arco co-seno hiperbólico

acot(x) Arco cotangente

acoth(x) Arco cotangente hiperbólico

acsc(x) Arco cossecante

acsch(x) Arco cossecante hiperbólico

asec(x) Arco secante

asech(x) Arco secante hiperbólico

asin(x) Arco seno asinh(x) Arco seno hiperbólico

atan(x) Arco tangente

atan2(x,y) Arco tangente do quarto quadrante

atanh(x) Arco tangente hiperbólico

cos(x) Co-seno

cosh(x) Co-seno hiperbólico

cot(x) Cotangente

coth(x) Cotangente hiperbólica

csc(x) Cossecante

csch(x) Cossecante hiperbólico

sec(x) Secante

sech(x) Secante hiperbólico

sin(x) Seno sinh(x) Seno hiperbólico

tan(x) Tangente

tanh(x) Tangente hiperbólica

Exemplo

Operadores matemáticos

Operadores atemáticos

• Funções Exponenciais

^ Potência

exp(x) Exponencial

log(x) Logaritmo natural

log10(x) Logaritmo na base 10

log2(x) Logaritmo na base 2

sqrt(x) Raiz quadrada

Números Complexos

abs(x) Valor absoluto ou módulo de um número complexo

angle(x) Ângulo de um número complexo

conj(x) Conjugado complexo

imag(x) Parte imaginária de um número complexo

real(x) Parte real de um número complexo

Operadores Matemáticos 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

Como podemos perceber, se trabalharmos no comand window não conseguiremos apagar ou salvar algo.

A solução para isso é abrir um M-file No M-file podemos manipular valores com

extrema facilidade e salvar o que estamos fazendo.

M-file

Abrindo um M-file

Matrizes e Sistemas Lineares

•Definindo matrizes•Operações com matrizes•Matriz transposta•Determinantes•Matriz Inversa•Resolução de Sistemas lineares

Queremos apresentar a seguinte matriz no Matlab:

Definindo matrizes

Como fazer?

Definindo matrizes

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

A =

1 2 3 4 5 6

Definindo matrizes Outro exemplo:

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

X =

1 9 0 7 3 2 4 5 3

Definindo matrizes

Adição

Dada as matrizes:A =

2 3 6 0 -3 1 3 -3 7E B =

-2 3 -4 4 1 1 0 -2 3

Queremos achar a matriz A+B

Operações com matrizes

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

A =

2 3 6 0 -3 1 3 -3 7

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

B =

-2 3 -4 4 1 1 0 -2 3

>> C=A+B

C =

0 6 2 4 -2 2 3 -5 10

Operações com matrizes

Exercício: Fazer a soma das seguintes matrizes:

Operações com matrizes

Y=

1 2 3 4 5 6 -1 3 0

Multiplicação Condição para multiplicação de matrizes

Operações com matrizes

Operações com matrizes Multiplicação

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

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

>> C=A*B

C =

5 1

4 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 455 235 230 244 205 102 160

Fazer a multiplicação entre as seguintes matrizes:

Operações com matrizes

Y=

1 2 3 4 5 6 -1 3 0

A =

2 3 6 0 -3 1 3 -3 7e B =

-2 3 -4 4 1 1 0 -2 3

Achar a transposta da seguinte matriz:

Matriz transposta

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

Xt =

1 7 4 9 3 5 0 2 3

Matriz transposta

Achar a transposta das seguintes matrizes.

Matriz transposta

Y=

1 2 3 4 5 6 -1 3 0

Queremos achar o determinante da seguinte matriz:

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 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 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

>> Zd=det(Z)

Zd =

730450

Determinantes

Achar os determinantes das seguintes matrizes

Y=

1 2 3 4 5 6 -1 3 0

Determinantes

A =

2 3 6 0 -3 1 3 -3 7

B =

-2 3 -4 4 1 1 0 -2 3

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

Matriz inversa

Y=

1 2 3 4 5 6 -1 3 0

A =

2 3 6 0 -3 1 3 -3 7

B =

-2 3 -4 4 1 1 0 -2 3

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.

A X 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

Exercícios: Resolver os seguintes sistemas lineares

Sistemas Lineares

Polinômios•Declaração de polinômios•Raízes de polinômios•Operações com polinômios

Seja um polinômio p(x) de grau n definido por:

P(x)=

No Matlab, este polinômio é definido da seguinte forma:

>>p=[A B C...E D F];

Declaração de polinômios

Exemplo

>>P=[1 3 1]

>>p=[1 -5 2 -1]

P=[1 4 0 -1 0]

Declaração de polinômios

Queremos achar as raízes do polinômio

Para isso, utilizaremos o comando “roots”

Raízes de polinômios

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

x =

-2 -1

Outro exemplo

>> p=[4 2 0 5];>> roots(q)

ans =

-1.2723 0.3861 + 0.9129i 0.3861 - 0.9129i

Raízes de polinômios

Achar as raízes dos seguintes polinômios

Raízes de polinômios

Multiplicação Suponhamos que queremos fazer a multiplicação dos

polinômios:

Q(x)=x-1

Para isso, utilizamos o comando “conv”

Operações com polinômios

Solução

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

r =

1 2 -1 -2

Operações com polinômios

Exercício Fazer a multiplicação dos seguintes polinômios:

Operações com polinômios

Divisão Queremos fazer a divisão entre os seguintes polinômios

Para isso, utilizaremos o comando “deconv”

Operações com polinômios

Q(x)=x-1

Solução >> p=[1 3 2]; >> q=[1 -1];

Operações com polinômios

>> s=deconv(p,q)

s =

1 4

Exercício Fazer a divisão dos seguintes polinômios

Operações com polinômios

Cálculo Diferencial e Integral

•Limites•Derivada•Integrais indefinidas•Integrais definidas•Equações diferenciais

No Matlab, calculamos limites da seguinte forma:

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

Limites

Função

“Quem está tendendo”

“Quando x tende a ...”

Exemplo: Calcular o seguinte limite:

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

Limites

Exercício: Calcular os seguintes limites:

Limites

Para se calcular derivadas no Matlab, utilizamos o comando “diff”

Exemplo

>> syms x

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

Derivadas

Exercício Achar as derivadas das seguintes funções

Derivadas

Para calcularmos integrais indefinidas, utilizamos o comando “int” da seguinte forma:

>>int (f, x)

Integrais indefinidas

função

Variável que estamos integrando

Exemplo: Calcular a integral da função

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

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

Integrais indefinidas

F(x)= -x

Calcular as seguintes integrais das seguintes funções:

Integrais indefinidas

Para calcularmos integrais definidas, utilizamos o comando “int” da seguinte forma:

Int(f,x,a,b)

Integrais definidas

Calcular a integral da função f(x)= no intervalo [0,1]

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

1/3

Integrais definidas

Calcular as seguintes integrais definidas:

Integrais definidas

Equações Diferenciais

Para resolvermos equações diferenciais no Matlab, utilizamos o comando “dsolve” da seguinte forma:

>>dsolve(‘EDO’,condições iniciais)

Equações Diferenciais

Para isso, utilizamos a seguinte representação das derivadas:

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

Equações Diferenciais

Exemplo: Resolver as seguintes equações 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

Equações 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

Equações 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

Equações 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

Equações Diferenciais

Exercícios: Achar a solução das seguintes equações 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

Equações Diferenciais

Transformada de Laplace

•Transformada de Laplace•Transformada inversa de Laplace

Definição

Transformada de Laplace

f(t) L[f(t)] F(s)

F(s) L[F(s)] f(t)

Transformada de Laplace

-1

Transformada de Laplace

Transformada de Laplace

No Matlab, calculamos a Transformada de Laplace da seguinte forma:

>>syms t;>>laplace(f(t))

Transformada de Laplace

Função que queremos calcular a 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 funções:

Transformada de Laplace

Definição

Transformada inversa de Laplace

No Matlab, achamos a transformada inversa da seguinte forma:

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

Transformada inversa de Laplace

Função que queremos calcular a transformada Inversa

Achar a transformada da seguinte função:

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

Transformada inversa de Laplace

Exercício: Achar a transformada inversa das seguintes funções:

Transformada inversa de Laplace

Gráficos

Passos para se fazer um gráfico no Matlab: 1) Declarar a variação de x>>x=-5:0.5:5 2) Declarar a função em siEx:>>y=-x+1 3) Usar o comando “plot’’Ex:>>plot(x,y)

Gráficos

Exemplo: Gráfico da função f(x)=sin(x)

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

Gráficos

Exemplo: Gráfico da função f(x)=sin(x)

Gráficos

-15 -10 -5 0 5 10 15-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

Exemplo: Gráfico da função f(x)=cos(x)

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

Gráficos

Exemplo: Gráfico da função f(x)=cos(x)

Gráficos

-15 -10 -5 0 5 10 15-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

Agora, digitando os dois códigos 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 onf=sin(x)plot(x,f)

Gráficos

Comando “hold on”

Gráficos

-15 -10 -5 0 5 10 15-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

Exercício: Fazer o gráfico das seguintes funções:

A) B) C)

Gráficos

Os melhores comandos do Matlab são:

1) HELP

2)Google

Para terminar...

MUITO OBRIGADO!!!

edu.silva.fernandes@gmail.com

top related