Apostila de
Fortaleza – CE
Abril / 2008
Página 1 de 84
Apostila de MATLAB 7.3
SUMÁRIO
1. APRESENTAÇÃO....................................................................................................................4
1.1. UTILIZANDO O HELP ..................................................................................................5
2. MATRIZES ...............................................................................................................................7
2.1. DECLARAÇÃO .............................................................................................................7
2.2. SOMA ........................................................................................................................8
2.3. MULTIPLICAÇÃO .........................................................................................................8
2.4. MATRIZES PRÉ-DEFINIDAS ...........................................................................................9
2.5. PROPRIEDADES DE MATRIZES....................................................................................11
2.6. TRABALHANDO COM MATRIZES ..................................................................................13
3. VETORES...............................................................................................................................18
3.1. DECLARAÇÃO ...........................................................................................................18
3.2. OPERAÇÕES ............................................................................................................19
3.3. SISTEMAS DE COORDENADAS ...................................................................................22
4. FUNÇÕES MATEMÁTICAS ..................................................................................................24
4.1. FUNÇÕES ELEMENTARES ..........................................................................................24
4.2. PROPRIEDADES FUNDAMENTAIS ................................................................................24
4.3. NÚMEROS COMPLEXOS ............................................................................................26
4.4. FUNÇÕES TRIGONOMÉTRICAS ...................................................................................27
4.5. APROXIMAÇÃO INTEIRA .............................................................................................29
5. GRÁFICOS .............................................................................................................................30
5.1. GRÁFICOS BIDIMENSIONAIS.......................................................................................30
5.2. GRÁFICOS TRIDIMENSIONAIS.....................................................................................33
5.3. CONFIGURAÇÃO .......................................................................................................36
6. MATEMÁTICA SIMBÓLICA ..................................................................................................46
7. OPERAÇÕES MATEMÁTICAS BÁSICAS............................................................................47
7.1. EXPRESSÕES NUMÉRICAS ........................................................................................48
7.2. POLINÔMIOS.............................................................................................................49
7.3. SOLUCIONANDO EQUAÇÕES OU SISTEMAS.................................................................52
8. CÁLCULO DIFERENCIAL .....................................................................................................54
8.1. LIMITES ....................................................................................................................54
8.2. DIFERENCIAÇÃO .......................................................................................................54
8.3. INTEGRAÇÃO ............................................................................................................55
8.4. INTEGRAIS DEFINIDAS PELA REGRA TRAPEZOIDAL ......................................................56
8.5. INTEGRAIS DEFINIDAS PELA REGRA DE SIMPSON ........................................................57
8.6. INTEGRAÇÃO DUPLA .................................................................................................58
8.7. INTEGRAÇÃO TRIPLA.................................................................................................58
8.8. OUTRAS FUNÇÕES ....................................................................................................58
Página 2 de 84
Apostila de MATLAB 7.3
9. SÉRIES NUMÉRICAS............................................................................................................60
9.1. SOMATÓRIO .............................................................................................................60
9.2. SÉRIE DE TAYLOR.....................................................................................................60
10. M-FILE ....................................................................................................................................61
10.1. DEFINIÇÃO ...........................................................................................................61
10.2. ORGANIZAÇÃO .....................................................................................................62
11. PROGRAMANDO EM MATLAB............................................................................................63
11.1. VERIFICAÇÃO DE ERROS ......................................................................................67
12. ANÁLISE DE SINAIS .............................................................................................................68
12.1. TRANSFORMAÇÃO DE VARIÁVEL INDEPENDENTE ....................................................68
12.2. FUNÇÕES PRÉ-DEFINIDAS.....................................................................................70
12.3. CONVOLUÇÃO ......................................................................................................76
12.4. EQUAÇÕES DE DIFERENÇAS .................................................................................77
12.5. FFT (TRANSFORMADA RÁPIDA DE FOURIER) .........................................................79
12.6. FILTROS DIGITAIS.................................................................................................82
13. REFERÊNCIAS BIBLIOGRÁFICAS......................................................................................84
Página 3 de 84
Apostila de MATLAB 7.3
1. APRESENTAÇÃO
Ø Matemática e computação;
Ø Desenvolvimento de algoritmos;
Ø Aquisição de dados;
Ø Modelagem, simulação e prototipagem;
Ø Análise de dados, exploração e visualização;
Ø Construção de interface visual do usuário.
Página 4 de 84
Apostila de MATLAB 7.3
Uma outra forma é pela tecla de atalho F1. Uma terceira forma é pelo
botão START, posicionado logo abaixo do COMMAND HISTORY, de acordo
com a figura abaixo.
Página 5 de 84
Apostila de MATLAB 7.3
Página 6 de 84
Apostila de MATLAB 7.3
2. MATRIZES
2.1. Declaração
16 3 2 13
5 10 11 8
9 6 7 12
4 15 14 1
c =
4 1 2 3
3 4 4 5
Obs.: É bom lembrar que o MATLAB tem como primeiro índice do vetor
o número 1, diferente da linguagem C que usa o primeiro índice como 0.
Página 7 de 84
Apostila de MATLAB 7.3
2.2. Soma
>> c =
4 1 2 3
3 4 4 5
>> c+1
ans =
5 2 3 4
4 5 5 6
>> d=[ 1 2 7 8 ; 4 7 5 8] ;
>> e=[ 5 -4 7 0; 3 -1 6 -4];
>> d+e
ans =
6 -2 14 8
7 6 11 4
2.3. Multiplicação
Página 8 de 84
Apostila de MATLAB 7.3
>> b./a
ans =
4.0000 0.5000 -2.5000
0 0.1250 0.6000
0.8889 -0.4000 0.2500
>> a.^2
ans =
1 16 4
49 64 25
81 25 16
· ones
Def: Esta função gera uma matriz cujos valores são unitários
Sintaxe:
ones(n) à Gera uma matriz quadrada cujos termos são unitários
ones(m,n) à Gera ma matriz m x n cujos termos são unitários
>>ones(2)
ans =
1 1
1 1
· zeros
Def: Esta função gera uma matriz cujos valores são nulos
Sintaxe:
zeros(n) à Gera uma matriz quadrada cujos termos são nulos
zeros(m,n) à Gera ma matriz m x n cujos termos são nulos
Página 9 de 84
Apostila de MATLAB 7.3
>>zeros(2)
ans =
0 0
0 0
· eye
Def: Gera uma matriz identidade
Sintaxe:
eye(n) à Gera uma matriz identidade n x n
eye(m,n) à gera uma matriz de ordem m x n cujos termos que
possuem i=j são unitários .
>>eye(2)
ans =
1 0
0 1
· vander
Def: Calcula a matriz de Vandermonde a partir de um vetor dado
Sintaxe:
Vander(A) à Calcula a matriz de Vandermonde a partir de A
A=[1 2 3 4];
>> vander(A)
ans =
1 1 1 1
8 4 2 1
27 9 3 1
64 16 4 1
Página 10 de 84
Apostila de MATLAB 7.3
· rand
Def: Cria uma matriz com valores aleatórios
Sintaxe:
rand(m) à Cria uma matriz m x m com valores aleatórios entre 0 e 1.
rand(m,n) à Cria uma matriz m x n com valores aleatórios entre 0 e 1.
rand(2)
ans =
0.9501 0.6068
0.2311 0.4860
· ’ (apóstrofo)
Def: Calcula a matriz transposta
Sintaxe:
A’ à Gera a matriz transposta de A
>>A=[1 1; 2 3]
>>A =
1 1
2 3
>> A'
ans =
1 2
1 3
· det
Def: Calcula o determinante de uma matriz
Sintaxe:
det(A) àCalcula o determinante da matriz A
Página 11 de 84
Apostila de MATLAB 7.3
>>det(A)
ans =
1
· trace
Def: Retorna um vetor com a soma dos elementos da diagonal
principal de uma matriz
Sintaxe:
trace(A) àRetorna a soma dos elementos da diagonal principal da
matriz A
A =
1 4
2 1
>> trace(A)
ans =
2
· inv
Def: Determina a matriz inversa dada
Sintaxe:
inv(A) àRetorna a soma dos elementos da diagonal principal da matriz
A
>> A = [5 8; 4 9]
A=
5 8
4 9
>> inv(A)
Página 12 de 84
Apostila de MATLAB 7.3
ans =
0.6923 -0.6154
-0.3077 0.3846
· eig
Def: Calcula os autovalores e autovetores de uma matriz
Sintaxe:
eig(A) à Retorna os autovalores de uma matriz quadrada
[a, b] = eig(A) à Retorna em a uma matriz com os autovetores e em b
uma matriz com os autovalores
A =
1 -1
4 1
>> [a,b]=eig(A)
a =
0 - 0.4472i 0 + 0.4472i
-0.8944 -0.8944
b =
1.0000 + 2.0000i 0
0 1.0000 - 2.0000i
· size
Def: Retorna as dimensões de uma matriz
Sintaxe:
Página 13 de 84
Apostila de MATLAB 7.3
m =
2
n =
2
· find
Def: Procura os elementos em uma matriz de tal modo a respeitar a
lógica fornecida, retornando os índices que descrevem estes elementos.
Sintaxe:
ind = find(X) à Retorna os índices dos elementos não-nulos ma matriz
X.
[row,col] = find(X, ...) à Retorna em row uma matriz coluna com os
índices das linhas dos elementos da matriz e em col a matriz coluna contendo
os índices correspondentes as colunas dos elementos da matriz X.
[row,col,v] = find(X, ...) à Retorna em row uma matriz coluna com os
índices das linhas dos elementos da matriz e em col a matriz coluna contendo
os índices que descrevem as colunas dos elementos da matriz X e em v a
matriz contendo os elementos de X.
A=[1 1; 0 3];
>> find(A)
ans =
1
3
4
>> X = [3 2 0; -5 0 7; 0 0 1];
>> [r,c,v] = find(X>2);
>> [r c]
Página 14 de 84
Apostila de MATLAB 7.3
ans =
1 1
2 3
· sort
Def: Retorna o vetor dado ou elementos de uma matriz em ordem
crescente
Sintaxe:
sort(A) à Retorna os elementos das colunas da matriz A em ordem
crescente
>> sort(A)
ans =
1 1
2 4
· fliplr
Def: Espelha as colunas de uma matriz
Sintaxe:
fliplr(A) à Espelha as colunas da matriz A
A =
1 2
3 4
>> fliplr(A)
ans =
Página 15 de 84
Apostila de MATLAB 7.3
2 1
4 3
· flipud
Def: Espelha as linhas de uma matriz
Sintaxe:
flipud(A) à Espelha as linhas da matriz A
A =
1 2
3 4
>> flipud(A)
ans =
3 4
1 2
R1 NR3 N
1
V
2 V
V1
10Vdc R2 R4 I1
10
5 2Adc
Página 16 de 84
Apostila de MATLAB 7.3
1
i= ×v
R
i = G ×v
æ1 1 1 -1 ö
æ 10 ö ç + +
ç 1 ÷ = ç1 5 2 2 ÷ æ v1 ö
÷×ç ÷
ç ÷ ç -1 1 1 ÷ è v2 ø
è 2ø ç + ÷
è 2 2 10 ø
-1 -1
G ×i = G ×G ×v
v = G -1 × i
>> i=[10/1 ; 2]
i =
10
2
G =
1.7000 -0.5000
-0.5000 0.6000
>> v=inv(G)*i
v =
9.0909
10.9091
11.0V
10.5V
10.0V
9.5V
9.0V
0s 0.1s 0.2s 0.3s 0.4s 0.5s 0.6s 0.7s 0.8s 0.9s 1.0s
V(R1:2) V(R3:1)
Time
Página 17 de 84
Apostila de MATLAB 7.3
3. VETORES
3.1. Declaração
>> R=[1 3 8]
R =
1 3 8
· length
Def: Retorna o número de elementos que compõem o vetor.
Sintaxe:
length (A) à Calcula o numero de termos do vetor A
>>A=[8 9 5 7];
>> length(A)
ans =
4
Página 18 de 84
Apostila de MATLAB 7.3
· norm
Def: Retorna o tamanho, ou seja, o módulo do vetor.
Sintaxe:
norm(A) à Calcula o módulo do vetor A
>> x = [0 5 1 7];
ans =
8.6603
ans =
8.6603
3.2. Operações
· cross
Def: Calcula o produto vetorial entre A e B.
Sintaxe:
C = cross(A,B)
C = cross(A,B,dim)
Página 19 de 84
Apostila de MATLAB 7.3
· dot
Def: Determina o produto escalar entre dois vetores.
Sintaxe:
C = dot(A,B)
C = dot(A,B,dim)
>> a = [1 7 3];
>> b = [5 8 6];
>> c = cross(a,b)
>> d = dot(a,b)
· min
Def: Retorna os valores mínimos de um vetor ou o das colunas de uma
matriz.
Sintaxe:
min(A) à Retorna em um vetor linha os maiores valores de cada linha
da matriz A
min(A,B) àRetorna uma matriz com os menores valores de cada
posição correspondente de ambas as matrizes
[a,b]=min(A) à Retorna em “a” os menores valores de cada coluna e
em b a posição dos mesmos nas suas respectivas colunas
a =
1 1
b =
1 2
Página 20 de 84
Apostila de MATLAB 7.3
· max
Def: Retorna os valores máximos de um vetor ou o das colunas de
uma matriz.
Sintaxe:
max(A) à Retorna em um vetor linha os maiores valores de cada linha
da matriz A
max(A,B) àRetorna uma matriz com os maiores valores de cada
posição correspondente de ambas as matrizes
[a,b]=max(A) à Retorna em “a” os maiores valores de cada coluna e
em b a posição dos mesmos nas suas respectivas colunas
>> [a,b]=max(A)
a =
2 4
b =
2 1
· sum
Def: Calcula o somatório dos elementos de um vetor ou o somatório
das colunas de uma matriz.
Sintaxe:
sum(x) à retorna a(o) soma/produto dos elementos de um vetor ou
a(o) soma/produto das colunas de uma matriz
>> sum(A)
· prod
Def: Calcula o produtório dos elementos de um vetor ou o produtório
das colunas de uma matriz.
Página 21 de 84
Apostila de MATLAB 7.3
Sintaxe:
prod(x) à retorna a(o) soma/produto dos elementos de um vetor ou
a(o) soma/produto das colunas de uma matriz
>> prod(A)
· cart2pol
Def: Converte do cartesiano para o polar/cilíndrico.
Sintaxe:
[theta,rho,z] = cart2pol(x,y,z)
[theta,rho] = cart2pol(x,y)
· pol2cart
Def: Converte do polar/cilíndrico para o cartesiano.
Sintaxe:
[x,y] = pol2cart(theta,rho)
[x,y,z] = pol2cart(theta,rho,z)
Página 22 de 84
Apostila de MATLAB 7.3
· cart2sph
Def: Transforma do cartesiano para o esférico.
Sintaxe:
[theta,phi,r] = cart2sph(x,y,z)
· sph2cart
Def: Transforma do esférico para o cartesiano.
Sintaxe:
[x,y,z] = sph2cart(theta,phi,r)
Página 23 de 84
Apostila de MATLAB 7.3
4. FUNÇÕES MATEMÁTICAS
Função Descrição
log(X) Determina o logaritmo natural de X
log10(X) Determina o logaritmo na base 10 de X
log2(X) Calcula o logaritmo de X na base 2
exp(X) Determina a expressão de eX
sqrt(X) Retorna a raiz quadrada de X
· gcd
Def: Determina o máximo divisor comum entre dois parâmetros.
Sintaxe:
G = gcd(A,B)
· lcm
Def: Determina o mínimo múltiplo comum entre dois parâmetros.
Sintaxe:
G = lcm(A,B)
Página 24 de 84
Apostila de MATLAB 7.3
· factorial
Def: Retorna o fatorial de um argumento.
Sintaxe:
factorial(N)
· nchoosek
Def: Desenvolve a fatoração binomial, isto é, retorna o número de
combinações de n tomada k a k.
Sintaxe:
C = nchoosek(n,k)
· primes
Def: Devolve uma lista com n números primos.
Sintaxe:
p = primes(n)
· mod
Def: Calcula o quociente da divisão de dois argumentos.
Sintaxe:
M = mod(X,Y)
· rem
Def: Determina o resto da divisão de dois argumentos.
Sintaxe:
R = rem(X,Y)
· perms
Def: Desenvolve todas as permutações possíveis dos argumentos
dados.
Sintaxe:
P = perms(v) à v pode ser uma matriz com os números nos quais
deseja permutá-los.
Página 25 de 84
Apostila de MATLAB 7.3
>> X=2+3i
X =
2.0000 + 3.0000i
>> Y=2+3j
Y =
2.0000 + 3.0000i
· complex
Def: Retorna um número complexo a partir da sua parte real e da sua
parte imaginária.
Sintaxe:
c = complex(a,b)
Página 26 de 84
Apostila de MATLAB 7.3
Função Descrição
abs(X) Retorna o módulo do número complexo X
angle(X) Retorna a fase do complexo X
conj(X) Calcula o conjugado do número complexo X
imag(X) Determina a parte imaginária de X
real(X) Determina a parte real de X
Função Descrição
cos(X) Cosseno do argumento X em radianos
sin(X) Seno do argumento X em radianos
tan(X) Tangente do argumento X em radianos
sec(X) Secante do argumento X em radianos
csc(X) Cossecante do argumento X em radianos
cot(X) Cotangente do argumento X em radianos
>> sind(30)
ans =
0.5000
Página 27 de 84
Apostila de MATLAB 7.3
>> atan(1)
ans =
0.7854
>> atand(1)
ans =
45
>> cosh(3)
ans =
10.0677
>> (exp(3)+exp(-3))/2
ans =
10.0677
Página 28 de 84
Apostila de MATLAB 7.3
· ceil
Def: Arredonda os elementos de A para o inteiro mais próximo e maior
que os elementos de A.
Sintaxe:
B = ceil(A)
· floor
Def: Arredonda os elementos de A para o inteiro mais próximo e menor
que os elementos de A.
Sintaxe:
B = floor(A)
· fix
Def: Arredonda os elementos de A para o inteiro mais próximo de tal
modo que esteja em direção ao zero.
Sintaxe:
B = fix(A)
· round
Def: Arredonda os elementos de A para o inteiro mais próximo desses
elementos. Também é válido para números complexos.
Sintaxe:
Y = round(X)
Página 29 de 84
Apostila de MATLAB 7.3
5. GRÁFICOS
· ezplot
Def: Plota a expressão simbólica f ( x) no domínio padrão
-2p < x < 2p .
Sintaxe:
ezplot(f) à Plota a expressão f ( x) .
>> ezplot('sin(x)')
sin(x)
0.5
-0.5
-1
-6 -4 -2 0 2 4 6
x
· plot
Def: Plota as colunas de um vetor versus os índices de cada elemento,
se o vetor for real. Se for complexo plota a parte real pela parte imaginária de
cada elemento.
Sintaxe:
plot(X) à Se X for real, plota as colunas de X pelos índices de cada
elemento.
plot(X) à Se X for complexo, plota a parte real pela parte imaginária de
cada elemento. É equivalente a plot(real(X),imag(X)).
plot(X,Y) à Plota os elementos de X pelos de Y.
>> t = 0:pi/50:10*pi;
Página 30 de 84
Apostila de MATLAB 7.3
>> plot(t,sin(t))
0.8
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
-1
0 5 10 15 20 25 30 35
· line
Def: Cria uma linha no gráfico atual.
Sintaxe:
line(X,Y) à Cria uma linha definida nos vetores X e Y no gráfico atual.
line(X,Y,Z) à Cria uma linha no espaço tridimensional.
>> x=-2:0.01:5;
>> line(x,exp(x))
150
100
50
0
-2 -1 0 1 2 3 4 5
Página 31 de 84
Apostila de MATLAB 7.3
· stem
Def: Plota uma seqüência de dados discretos.
Sintaxe:
stem(Y) à Plota a seqüência de dados do vetor Y em um domínio
discreto ao longo do eixo-x
stem(X,Y) à Plota X em função de Y em um domínio discreto. X e Y
devem ser vetores ou matrizes de mesmo tamanho.
>> x=-4:4;
>> y=exp(x);
>> stem(y)
60
50
40
30
20
10
0
1 2 3 4 5 6 7 8 9
· compass
Def: Plota vetores de componentes cartesianas a partir da origem de
um gráfico polar.
Sintaxe:
compass(U,V) à Plota o vetor de componentes cartesianas U e V
partindo da origem do gráfico polar.
>> compass(2,3)
Página 32 de 84
Apostila de MATLAB 7.3
90
4
120 60
150 2 30
180 0
210 330
240 300
270
· ezplot3
Def: Plota uma curva espacial de três equações paramétricas no
domínio padrão 0 < t < 2p .
Sintaxe:
ezplot3(x,y,z) à Plota a curva paramétrica x = x(t ) , y = y (t ) e z = z (t ) .
>> ezplot3('cos(t)','sin(t)','t')
x = cos(t), y = sin(t), z = t
4
z
0
1
0.5 1
0.8
0.6
0 0.4
0.2
0
-0.5 -0.2
-0.4
-0.6
-0.8
-1 -1
y
x
Página 33 de 84
Apostila de MATLAB 7.3
· plot3
Def: Plota tridimensionalmente um gráfico.
Sintaxe:
plot(X,Y,Z) à Plota uma ou mais linhas no espaço tridimensional
através de pontos cujas coordenadas são elementos dos vetores ou matrizes
X,Y e Z.
>> t = 0:pi/50:10*pi;
>> plot3(sin(t),cos(t),t)
35
30
25
20
15
10
0
1
0.5 1
0.8
0.6
0 0.4
0.2
0
-0.5 -0.2
-0.4
-0.6
-0.8
-1 -1
· ezsurf
Def: Plota a superfície de um gráfico de uma função de duas variáveis
no domínio padrão -2p < x < 2p e -2p < y < 2p .
Sintaxe:
ezsurf(X,Y,Z) à Plota a superfície paramétrica x = x ( s, t ) , y = y ( s, t ) e
Página 34 de 84
Apostila de MATLAB 7.3
1/sqrt(x 2 + y 2)
0
6
4
6
2 4
0 2
-2 0
-2
-4
-4
-6 -6
y
x
· meshgrid
Def: Prepara a criação de uma superfície de um gráfico tridimensional.
Sintaxe:
[X,Y] = meshgrid(x,y) à Transforma o domínio especificado pelos
vetores x e y em matrizes de vetores X e Y, as quais podem ser usadas para
preparar a plotagem de superfície de um gráfico tridimensional de uma função
de duas variáveis.
· surf
Def: Plota a superfície de um gráfico de uma função de duas variáveis
cujo domínio é determinado pelo usuário.
Sintaxe:
surf(X,Y,Z) à Plota a superfície paramétrica de z em função de x e y.
>> surf(X,Y,Z)
Página 35 de 84
Apostila de MATLAB 7.3
0.5
0.4
0.3
0.2
0.1
-0.1
-0.2
-0.3
-0.4
-0.5
2
1.5
1 2
0.5 1.5
1
0 0.5
-0.5 0
-1 -0.5
-1
-1.5 -1.5
-2 -2
5.3. Configuração
· Title
Def: Dá um título ao gráfico
Sintaxe:
Title(‘string’) à Dá o título string ao gráfico atual.
>> compass(2,3)
>> title('Gráfico Polar')
Gráfico Polar
90
4
120 60
150 2 30
180 0
210 330
240 300
270
Página 36 de 84
Apostila de MATLAB 7.3
· axis
Def: Determina os limites dos eixos coordenados X, Y e Z.
Sintaxe:
Axis([xmin xmax ymin ymax zmin zmax]) à Define o eixo X de xmin a
xmax, o eixo Y de ymin a ymax e o eixo Z de zmin a zmax.
>> t = 0:pi/50:10*pi;
>> plot3(sin(t),cos(t),t)
>> axis([-1.5 1.5 -1.5 1.5 -1 34])
30
25
20
15
10
1.5
1
1.5
0.5 1
0 0.5
-0.5 0
-0.5
-1
-1
-1.5 -1.5
· grid
Def: Adiciona ou remove as linhas de grade em um gráfico.
Sintaxe:
grid on à Adiciona as linhas de grade em um gráfico.
grid off à Remove as linhas de grade em um gráfico.
>> t = 0:pi/50:10*pi;
plot3(sin(t),cos(t),t)
>> grid on
Página 37 de 84
Apostila de MATLAB 7.3
35
30
25
20
15
10
0
1
0.5 1
0.8
0.6
0 0.4
0.2
0
-0.5 -0.2
-0.4
-0.6
-0.8
-1 -1
· Hold
Def: Determina se objetos são adicionados ao gráfico ou se substituem
o existente.
Sintaxe:
Hold on à Adiciona objetos no mesmo gráfico
Hold off à Substitui os objetos existentes em um gráfico pelos atuais.
>> x=-6:0.01:6;
>> y=sin(x);
>> plot(x,y)
>> hold on
>> t=-6:0.01:2;
>> k=exp(t);
>> plot(t,k)
Página 38 de 84
Apostila de MATLAB 7.3
-1
-6 -4 -2 0 2 4 6
· Legend
Def: Adiciona uma legenda ao gráfico.
Sintaxe:
Legend(‘string1’,’string2’) à Adiciona as legendas string1 e string2 ao
gráfico atual.
>> x=-6:0.01:6;
>> y=sin(x);
>> plot(x,y)
>> hold on
>> t=-6:0.01:2;
>> k=exp(t);
>> plot(t,k)
>> legend('Gráfico 1: y=sen(x)','Gráfico 2: y=exp(x)')
Página 39 de 84
Apostila de MATLAB 7.3
8
Gráfico 1: y=sen(x)
Gráfico 2: y=exp(x)
7
-1
-6 -4 -2 0 2 4 6
>> t = 0:pi/50:10*pi;
>> plot3(sin(t),cos(t),t)
>> xlabel('x=sin(t)')
>> ylabel('y=cos(t)')
>> zlabel('z=t')
Página 40 de 84
Apostila de MATLAB 7.3
35
30
25
20
z=t
15
10
0
1
0.5 1
0.8
0.6
0 0.4
0.2
0
-0.5 -0.2
-0.4
-0.6
-0.8
-1 -1
y=cos(t)
x=sin(t)
>> t = 0:pi/50:10*pi;
>> plot3(sin(t),cos(t),t)
>> xlim([-1.5 1.5])
>> ylim([-1.5 1.5])
>> zlim([-1 34])
Página 41 de 84
Apostila de MATLAB 7.3
30
25
20
15
10
1.5
1
1.5
0.5 1
0 0.5
-0.5 0
-0.5
-1
-1
-1.5 -1.5
· figure
Def: Cria uma nova janela para plotar gráficos.
Sintaxe:
figure
figure('PropertyName',propertyvalue,...)
figure(h)
h = figure(...)
· subplot
Def: Divide a janela do gráfico em uma matriz definida pelo usuário,
podendo trabalhar com qualquer um.
Sintaxe:
h = subplot(m,n,p) or subplot(mnp) à divide em m linhas, n colunas,
plotando o gráfico na posição p. Caso tenha uma matriz retangular, a contagem
inicia-se no sentido anti-horário do gráfico superior esquerdo.
subplot(m,n,p,'replace')
subplot(m,n,p,'v6') subplot(h)
subplot('Position',[left bottom width height])
h = subplot(...)
Página 42 de 84
Apostila de MATLAB 7.3
>> subplot(2,1,1),ezplot('sin(x)')
>> subplot(2,1,2),ezplot('exp(x)')
sin(x)
0.5
-0.5
-1
-6 -4 -2 0 2 4 6
x
exp(x)
250
200
150
100
50
0
-4 -3 -2 -1 0 1 2 3 4 5 6
x
Página 43 de 84
Apostila de MATLAB 7.3
aviobj=avifile('Filme Seno.avi','fps',50);
hold on;
grid on;
x=-4*pi:0.1:4*pi;
for k=1:1:size(x,2)-1
xx=[x(k) x(k+1)];
yy=[sin(x(k)) sin(x(k+1))];
h=plot(xx,yy);
set(h,'EraseMode','xor');
axis ([-10 10 -1.5 1.5]);
frame=getframe(gca);
aviobj=addframe(aviobj,frame);
end
aviobj=close(aviobj);
Página 44 de 84
Apostila de MATLAB 7.3
aviobj=avifile('Complexo.avi','fps',50);
hold off;
grid on;
t=0:0.01:4*pi;
x=cos(t);
y=sin(t);
for k=1:1:length(t)
c=x(k)+i*y(k);
h=compass(c);
set(h,'EraseMode','xor');
frame=getframe(gca);
aviobj=addframe(aviobj,frame);
end
aviobj = close(aviobj);
Página 45 de 84
Apostila de MATLAB 7.3
6. MATEMÁTICA SIMBÓLICA
· syms
Def: Determina que os argumentos acompanhados terão caráter
simbólico .
Sintaxe:
syms arg1 arg2 ...
· sym
Def: Define variáveis, expressões e objetos como simbólicos.
Sintaxe:
S = sym(A)
x = sym('x')
Página 46 de 84
Apostila de MATLAB 7.3
· findsym
Def: Determina as variáveis simbólicas em uma expressão.
Sintaxe:
findsym(S)
findsym(S,n)
· subs
Def: Define variáveis, expressões e objetos como simbólicos.
Sintaxe:
R = subs(S)
R = subs(S, new)
R = subs(S,old,new)
y=3;w=30;
syms a b n t x z
f = x^n+y; g = sin(a*t + b)-cosd(w);
Página 47 de 84
Apostila de MATLAB 7.3
que a declarada na seção 4.2). Isso também é válido para polinômios. Quando
se quer determinar a inversa de uma função, o comando finverse é o adequado
para isso.
Função Definição
collect Agrupa os coeficientes de acordo com o grau
expand Expande a expressão em produtos e somas
horner Determina o fator em comum da expressão
factor Fatora o polinômio, se os coeficientes são racionais
simplify Simplifica as expressões, de forma mais geral.
>> syms x
>> collect(x*(x*(x-6)+11)-6)
ans =
-6+x^3-6*x^2+11*x
Página 48 de 84
Apostila de MATLAB 7.3
7.2. Polinômios
· poly
Def: Determina os coeficientes do polinômio a partir de suas raízes.
Caso a entrada seja uma matriz, este calcula o polinômio característico da
matriz.
Sintaxe:
p = poly(A)
p = poly(r)
-2 -1
1 3 2
A = %Declara matriz
Página 49 de 84
Apostila de MATLAB 7.3
1 5 3
0 -2 9
2 11 -1
ans =
· roots
Def: Retorna um vetor coluna com a(s) raiz(es) do polinômio fornecido.
Sintaxe:
r = roots(c)
1 3 2
-2
-1
· polyval
Def: Determina o valor do polinômio para uma determinada entrada. Se
a entrada for uma matriz, a função retorna o valor do polinômio para cada
elemento.
Sintaxe:
y = polyval(p,X) à y receberá os valores do polinômio desenvolvido
para cada elemento da matriz X.
Página 50 de 84
Apostila de MATLAB 7.3
polinomio =
a =
1.0000 -1.0000
3.0000 2.8300
>> valores=polyval(polinomio,a)
valores =
15.2000 -10.8000
225.2000 187.2906
· polyfit
Def: Determina o polinômio interpolador com os pontos dados por x e y
com o grau n. Os coeficientes são retornados numa matriz linha.
Sintaxe:
p = polyfit(x,y,n)
Página 51 de 84
Apostila de MATLAB 7.3
Exercício 10- São dados os pontos (1;-1), (2;-7), (5;-8) e (8;10). Determine o
polinômio que interpola estes pontos. Em seguida, calcule as suas raízes e o
esboce em um gráfico, destacando o ponto no qual se tem o valor do polinômio
para x=3.
· solve
Def: Determina o valor do polinômio para uma determinada entrada.
Quando a solução é armazenada em uma variável, o retorno é dado em uma
estrutura de dados.
Sintaxe:
solve(eq) à Resolve a equação eq=0
solve(eq,var) à Determina as soluções de eq=0, em função da variável
var.
solve(eq1,eq2,...,eqn) à Resolve um sistema de equações definidas.
g = solve(eq1,eq2,...,eqn,var1,var2,...,varn) à Calcula as soluções de
um sistema de soluções em função das variáveis pré-definidas.
· dsolve
Def: Soluciona simbolicamente uma equação ou sistema de equações
diferenciais ordinárias.
Sintaxe:
r = dsolve('eq1,eq2,...', 'cond1,cond2,...','v')
r = dsolve('eq1','eq2',...,'cond1','cond2',...,'v')
Página 52 de 84
Apostila de MATLAB 7.3
dsolve('eq1,eq2,...','cond1,cond2,...', 'v')
dx
Exemplo 4- Determine a solução de = -ax .
dt
>> dsolve('Dx = -a*x')
dx
Exercício 11- Determine a solução de = -ax .
dt
Exercício 12- Eu tinha o triplo da idade que tu tinhas, quando eu tinha a idade
que tu tens. Quando tu tiveres a minha idade, a diferença de nossas idades
será de duas décadas. Determine nossas idades utilizando a função solve.
Página 53 de 84
Apostila de MATLAB 7.3
8. CÁLCULO DIFERENCIAL
8.1. Limites
· limit
Def: Determina o limite de uma expressão simbólica
Sintaxe:
limit(F,x,a) à calcula o limite de uma expressão simbólica F com x
tendendo a a;
limit(F,a) à determina o limite de F com uma variável simbólica
tendendo a a;
limit(F) àdetermina o limite com a = 0 como default;
limit(F,x,a,'right') à calcula o limite com x tendendo a a pela direita;
limit(F,x,a,'left') à calcula o limite com x tendendo a a pela esquerda;
x2 -1
Exemplo 5- Faça o seguinte limite pelo MATLAB: lim+
x ®1 x2 -1
>> limit('(abs(x^2)-1)/(x^2-1)',x,1,'right')
8.2. Diferenciação
· diff
Def: Calcula a diferencial de uma função/matriz dada.
Sintaxe:
diff(S) à diferencia a expressão simbólica S em função de uma
variável simbólica;
diff(S,'v') à diferencia S em torno de uma variável simbólica v;
Página 54 de 84
Apostila de MATLAB 7.3
faz-se:
>> syms x;
>>f=sqrt(log(x)+exp(x));
>> diff(f)
ans =
1/2/(log(x)+exp(x))^(1/2)*(1/x+exp(x))
>> pretty(ans)
8.3. Integração
· int
Def: Calcula integral de uma função simbólica dada.
Sintaxe:
int(S) à integração indefinida a função S em respeito a uma variável
simbólica já definida;
int(S,a,b) à integra de forma definida a função S de a a b;
int(S,v,a,b) à integra de a a b em função de uma variável v;
· Indefinida
>> syms x
>> y=sqrt(x^2+5);
>> f=int(y,x)
1/2*x*(x^2+5)^(1/2)+5/2*asinh(1/5*5^(1/2)*x)
· Definida de 2 a 5
Página 55 de 84
Apostila de MATLAB 7.3
>>g = int(y,x,2,5)
5/2*30^(1/2)+5/2*log(5^(1/2)+6^(1/2))-3-5/4*log(5)
>> eval(g)
definida abaixo:
· trapz
Def: Determina a integração de uma função a partir da Regra do
Trapézio.
Sintaxe:
Z = trapz(Y)
Z = trapz(X,Y)
Página 56 de 84
Apostila de MATLAB 7.3
· quad
Def: Determina a integração de uma função a partir da Regra de
Simpson.
Sintaxe:
q = quad(fun,a,b)
q = quad(fun,a,b,tool) à tool corresponde ao erro que a integral
retornará, sendo o default de 10 3 - .
É bom destacar que fun deve ser uma função do tipo arquivo.m. Por
seguinte:
Primeiro se cria o arquivo.m correspondente a função que deseja
integrar, ou seja:
function y=funcao(x)
y=exp(-x^2);
>> quad('funcao',0,3)
ans =
0.8862
Página 57 de 84
Apostila de MATLAB 7.3
· dblquad
Def: Determina a integração dupla de uma função.
Sintaxe:
q = dblquad(fun,xmin,xmax,ymin,ymax)
q = dblquad(fun,xmin,xmax,ymin,ymax,tol) à tol é a precisão que
deseja calcular, sendo o default 10-6 .
· triplequad
Def: Determina a integração tripla de uma função.
Sintaxe:
triplequad(fun,xmin,xmax,ymin,ymax,zmin,zmax)
triplequad(fun,xmin,xmax,ymin,ymax,zmin,zmax,tol)à tol é a precisão
que deseja calcular, sendo o default 10-6 .
· gradient
Def: Determina o gradiente numericamente.
Sintaxe:
FX = gradient(F) à retorna o coeficiente do gradiente de F em relação
a ∂x(default).
[FX,FY,FZ,...] = gradient(F) à retorna a matriz com os valores de ∂x,
∂y, ∂z..., respectivamente.
Página 58 de 84
Apostila de MATLAB 7.3
· divergence
Def: Determina o divergente de um campo vetorial.
Sintaxe:
div = divergence(X,Y,Z,U,V,W) à determina o divergente do campo
vetorial 3D U, V e W. X, Y e Z definem os limites de U, V e W,
respectivamente.
div = divergence(X,Y,U,V) à calcula agora para 2D.
div = divergence(U,V,W) à usa como default para X, Y e Z o valor de
meshgrid(1:n,1:m,1:p).
>> [x,y,z]=meshgrid(-1:0.3:1);
>> V=(18e-12)./(4.*pi.*8.85e-12.*sqrt(x.^2+y.^2+z.^2));
>> [px,py,pz]=gradient(V,0.3,0.3,0.3);
>> Ex=(-1).*px;
>> Ey=(-1).*py;
>> Ez=(-1).*pz;
>> quiver3(x,y,z,Ex,Ey,Ez)
>> axis([-1 1 -1 1 -1 1])
0.8
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
-1
1
0.5 1
0.8
0.6
0 0.4
0.2
0
-0.5 -0.2
-0.4
-0.6
-0.8
-1 -1
Página 59 de 84
Apostila de MATLAB 7.3
9. SÉRIES NUMÉRICAS
9.1. Somatório
· symsum
Def: Determina o somatório simbólico de uma expressão.
Sintaxe:
r = symsum(s) à encontra o somatório da função s em função de uma
variável simbólica pré-definida.
r = symsum(s,v) à fornece o somatório em função da variável v.
r = symsum(s,a,b) à determina o somatório de s variando a incógnita
de a até b.
r = symsum(s,v,a,b) à determina o somatório de s variando a incógnita
v de a até b.
x -1 ¥
1
a) å x2 b) å
( 2n - 1)
2
0 1
Página 60 de 84
Apostila de MATLAB 7.3
10.M-FILE
10.1. Definição
%declaração do código
...
Exemplo:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%
% Função exemplo
%
% A função recebe um vetor qualquer e retorna dois valores:
%
% vetor2 = vetor multiplicado por 2
%
% e v1 = o valor do primeiro elemento do vetor
%
%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%
Página 61 de 84
Apostila de MATLAB 7.3
>> A=[2 5 -8 4 1 6]
A =
2 5 -8 4 1 6
>> [x,y]=funcao(A)
x =
4 10 -16 8 2 12
y =
2
10.2. Organização
Exemplo:
Página 62 de 84
Apostila de MATLAB 7.3
11.PROGRAMANDO EM MATLAB
· if
Def: Operação condicional. Executa as funções contidas no comando.
Pode ser utilizado com else, que executa caso a condição declarada for falsa,
e com elseif, que executa a função caso outra condição posteriormente
declarada for verdadeira.
Para mais de uma condição, utiliza-se para “e”, &&, e para “ou”, ||.
Sintaxe:
if <condição>
[Comandos]
elseif <condição>
[Comandos]
else
[Comandos]
end
· for
Def: Comando de iteração. Permite que um conjunto de instruções seja
executado até que a condição seja satisfeita.
Sintaxe:
for <condição>
[Comandos]
end
· while
Def: Comando de iteração. Executa um bloco de instruções enquanto a
condição for verdadeira.
Sintaxe:
Página 63 de 84
Apostila de MATLAB 7.3
while <condição>
[Comandos]
end
· switch
Def: Operação condicional. Testa sucessivamente o valor da
expressão dada e direciona para o caso especificado. Funciona como um bloco
de “if’s”
Sintaxe:
switch <condição>
case caso1
[Comandos]
case {caso1, caso2, caso3, ...}
[Comandos]
otherwise (Caso não seja nenhuma das outras
condições)
[Comandos]
end
a = 3;
switch a
case {2}
disp('Resposta um')
case {3}
disp(' Resposta dois')
case '5'
disp(' Resposta tres')
otherwise
disp('Resposta ?')
end
· disp
Def: “Escreve” no command window um texto ou o valor de um vetor,
sem escrever seu nome.
Sintaxe:
Página 64 de 84
Apostila de MATLAB 7.3
disp(x)
· input
Def: Pede uma entrada do usuário pelo command window.
Sintaxe:
entrada = input(‘O que deseja?’)
X = input('Entre um número\n')
num = 10*X
Command Window:
Entre um número
23
X =
23
num =
230
· break
Def: Quebra um laço for ou while.
Sintaxe:
break
for i = 0:5
if i == 1
break
end
i = i + 1
end
Command Window:
i =
0
i =
1
Página 65 de 84
Apostila de MATLAB 7.3
· continue
Def: Passa para o próximo laço de um for ou while.
Sintaxe:
continue
for i = 0:3
if i == 1 && i == 2
continue
end
i = i + 1
end
Command Window:
i =
1
i =
4
· Operadores Lógicos
Def: Operadores lógicos
Página 66 de 84
Apostila de MATLAB 7.3
Página 67 de 84
Apostila de MATLAB 7.3
12.ANÁLISE DE SINAIS
x ( t ) ® x (a t + b )
a < 1 à Expansão
a > 1 à Compressão
a < 0 à Reflexão
b ¹ 0 à Deslocamento
· Deslocamento no tempo:
12
10
-2
-4
-20 -15 -10 -5 0 5 10 15 20
12
10
-2
-4
-20 -15 -10 -5 0 5 10 15 20
Página 68 de 84
Apostila de MATLAB 7.3
· Reflexão
-2
-20 -15 -10 -5 0 5 10 15 20
-2
-20 -15 -10 -5 0 5 10 15 20
· Escalonamento
Página 69 de 84
Apostila de MATLAB 7.3
12
10
-2
-4
-20 -15 -10 -5 0 5 10 15 20
12
10
-2
-4
-20 -15 -10 -5 0 5 10 15 20
· Impulso:
ì0, n ¹ 0
d [ n] = í
î1, n = 0
ì0, t ¹ 0
d (t ) = í
î1, t = 0
Command Window:
>> x=-2:7;
>> y=impulso(x,3);
>> stem(x,y)
Página 70 de 84
Apostila de MATLAB 7.3
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
-2 -1 0 1 2 3 4 5 6 7
· Degrau
ì0, n < 0
u [n] = í
î1, n ³ 0
ì0, t < 0
u (t ) = í
î1, t ³ 0
Command Window:
>> n=-2:7;
>> y=degrau(n,3);
>> stem(n,y)
Página 71 de 84
Apostila de MATLAB 7.3
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
-2 -1 0 1 2 3 4 5 6 7
Exercício: Determine:
a) y [ n ] = u [ n + 10] - 2u [ n + 5] + u [ n - 6]
>> n=-20:20;
>> y=degrau(n,-10)-2*degrau(n,-5)+degrau(n,6);
>> stem(n,y)
0.8
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
-1
-20 -15 -10 -5 0 5 10 15 20
Página 72 de 84
Apostila de MATLAB 7.3
n
æ1ö
b) y [ n ] = ç ÷ u [ n - 3]
è2ø
>> n=-20:20;
>> y=((1/2).^(n)).*degrau(n,3);
>> stem(n,y)
0.14
0.12
0.1
0.08
0.06
0.04
0.02
0
-20 -15 -10 -5 0 5 10 15 20
æ1 ö
c) y [ n ] = cos ç p n ÷ u [ n + 4]
è2 ø
>> n=-20:20;
>> y=cos(0.5*pi*n).*degrau(n,-4);
>> stem(n,y)
0.8
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
-1
-20 -15 -10 -5 0 5 10 15 20
Página 73 de 84
Apostila de MATLAB 7.3
d) y [ n ] = e 2 sen ( n )
>> n=-20:20;
>> y=exp(2*(sin(n)));
>> stem(n,y)
0
-20 -15 -10 -5 0 5 10 15 20
ænö
e) y [ n ] = sinc ç ÷
è2ø
>> x=-20:1:20;
>> y=sinc(x/2);
>> stem(x,y)
0.8
0.6
0.4
0.2
-0.2
-0.4
-20 -15 -10 -5 0 5 10 15 20
Página 74 de 84
Apostila de MATLAB 7.3
· dirac
Def: Obtém a função delta de Dirac, ou seja, a função impulso no
intervalo determionado por x..
Sintaxe:
dirac(x)
>> x=-10:10;
>> y=dirac(x-5); %Impulso no instante 5
>> stem(x,y)
· heaviside
Def: Determina a função degrau no intervalo determinado por x.
Sintaxe:
dirac(x)
>> x=-10:10;
>> y=dirac(x-5); %Impulso no instante 5
>> stem(x,y)
>> syms x
>> diff(heaviside(x),x)
ans =
dirac(x)
Página 75 de 84
Apostila de MATLAB 7.3
12.3. Convolução
· conv
Def: Determina a convolucão de dois sinais ou a multiplicação de dois
polinômios.
Sintaxe:
w = conv(u,v)
h=[1,2,1];
x=[2,3,-2];
y=conv(x,y)
Página 76 de 84
Apostila de MATLAB 7.3
y =
6 12 6 0
h=ones(1,10);
x=ones(1,5);
n=2:15;
y=conv(x,h);
stem(n,y);
Exercício 17- Use o MATLAB para determinar a saída do sistema com entrada
x[n] = 2 {u[n + 2] - u[n - 12]} sabendo que a resposta ao impulso desse sistema
· filter
Def: Expressa a descrição em equação de diferenças de um sistema
em uma forma recursiva que permita que a saída do sistema seja computada a
partir do sinal de entrada e das saídas passadas.
Sintaxe:
y = filter(b,a,X)
y = filter(b,a,X,zi)
Página 77 de 84
Apostila de MATLAB 7.3
· impz
Def: Determina a resposta ao impulso de um sistema de equações de
diferenças.
Sintaxe:
[h,t] = impz(b,a)
[h,t] = impz(b,a,n)
Página 78 de 84
Apostila de MATLAB 7.3
ò S (t )e
- jwt
F (w ) = dt
-¥
¥
1
ò F (w )e
jwt
S (t ) = dw
2p -¥
Página 79 de 84
Apostila de MATLAB 7.3
Resolução:
Cálculo da resposta ao impulso:
dV
i = iR + C
dt
Em t=0, i = d (t ) e iR = 0
1 dV 1
d (t ) = ® V (0) = V (0+ ) =
C dt C
Em t = 0+ , i (0+ ) = 0
V dV 1 -t
(1) 0 = + C ¾¾¾¾¾¾¾¾®
Re soluçãoequação diferencial
V (t ) = e RC
R dt C
dV 1 - t RC
i (t ) = h(t ) = C =- e
dt RC
1 - t 12
Para R=40k W e C=300 m F ® h(t ) = - e A
12
Página 80 de 84
Apostila de MATLAB 7.3
-l æ 1 -(t -l )12 ö
t t
iC (t ) = y (t ) = ò
-¥
x ( l ) h (t - l ) d l = ò0 çè 12 e
e - ÷ dl
ø
-t -t
e 12 - e-t
t
e 12 -11l 12
12 ò0
=- e d l =
11
Convolução
0
-0.01
-0.02
-0.03
i(A)
-0.04
-0.05
-0.06
-0.07
0 10 20 30 40 50 60 70 80 90
t(s)
ì x(t ) = e -5t
Exercício 19- Calcule a convolução das formas de onda í
îh(t ) = cos(2.5t ) - t
Página 81 de 84
Apostila de MATLAB 7.3
b0 + b1 z -1 + b2 z -2 + ... + bn z -n
H ( z) =
a0 + a1 z -1 + a2 z -2 + ... + an z -n
· Butter
Def: Determina os coeficientes de um filtro Butterworth. Esse filtro pode
ser passa baixa, passa alta, passa banda, rejeita banda.
Sintaxe:
[B,A] = Butter(N, Wn, ‘tipo’) à Determina os coeficientes da função
transferência dada a freqüência de corte e o tipo de filtro. Caso nada seja posto
em ‘tipo’, o Matlab interpreta filtro passa baixa como padrão.
· Freqz
Def: Calcula os valores de uma função complexa H(z)
Sintaxe:
Freqz(B,A,n) à Utiliza 3 argumentos de entrada. O primeiro é um vetor
contendo os coeficientes do polinômio B(z) da Equação (1). O segundo é um
vetor contendo os coeficientes do polinômio A(z). O terceiro é para especificar
o número de valores de freqüências normalizadas que se quer no intervalo de 0
a p.
Exemplo 14-
· Gerar um sinal com duas senóides de freqüências 5 e 80 Hz, com fs=200
Hz.
· Projetar um filtro para fs=200 Hz. Usar filtro de 2a ordem, Butterworth.
· Filtrar o sinal.
· Plotar a resposta em freqüência.
Página 82 de 84
Apostila de MATLAB 7.3
% Exemplo de filtros
% Filtragem
figure(2)
y=filter(B,A,x);
plot(t,y,'k-')
title('Sinal de Entrada')
xlabel('tempo (s)')
ylabel('amplitude')
Página 83 de 84
Apostila de MATLAB 7.3
13.REFERÊNCIAS BIBLIOGRÁFICAS
[3] HAYKIN, Simon & VEEN, Barry Van. Sinais e Sistemas. Editora
Bookman. Porto Alegre – RS. 2001
Página 84 de 84