Você está na página 1de 42

CENTRO FEDERAL DE EDUCAO TECNOLGICA DE MINAS GERAIS

PROGRAMA DE PS-GRADUAO EM ENGENHARIA ELTRICA

Terceira Lista de Exerccios (LE3)

Aluna: Bruna Patrcia de Paiva


Professora: rsula do Carmo Resende

1) Sobre SVD: apresente modelagem matemtica para calculo; apresente aplicaes

prticas; escolha uma aplicao associada compresso de matrizes e faa a


decomposio, a compresso e a analise o nmero de condicionamento antes e
depois da compresso. Comente e analise todos os resultados.
1.1 TEORIA
Decomposio em valores singulares

Em lgebra linear, a decomposio em valores singulares ou singular value


decomposition (SVD) a fatorao de uma matriz real ou complexa, com diversas
aplicaes importantes em processamento de sinais e estatstica.
Formalmente, a decomposio em valores singulares de uma matriz mn real ou
complexa M uma fatorao ou fatorizao na forma:

onde U uma matriz unitria mm real ou complexa, uma matriz retangular


diagonal mn com nmeros reais no-negativos na diagonal, e V* (a conjugada
transposta de V) uma matriz unitria nn real ou complexa. As entradas diagonais
i,i de so os chamados valores singulares de M. As m colunas de U e as n colunas
de V so os chamados vetores singulares esquerda e vetores singulares
direita de M, respetivamente.
A decomposio em valores singulares e a decomposio em autovalores so
intimamente relacionadas. Mais especificamente:

Os vetores singulares esquerda de M so autovetores de


Os vetores singulares direita de M so autovetores de
Os valores singulares no-nulos de M (ao longo da diagonal de ) so as razes
dos autovalores no-nulos de
ou

Dentre as aplicaes que envolvem a SVD esto o clculo da pseudoinversa, o ajuste


(fitting) de dados por mnimos quadrados, aproximao de matrizes, e a determinao
do posto, imagem e ncleo de uma matriz.
Enunciado do teorema
Suponha-se que M uma matriz mn cujas entradas vm de um corpo de escalares K,
que pode ser tanto o corpo de nmeros reais ou o corpo de nmeros complexos. Ento
existe
uma
fatorizao
da
forma:
onde U
uma matriz
unitria mm sobre K, a matriz uma matriz diagonal mn com nmeros reais nonegativos na diagonal, e V*, uma matriz unitria nn sobre K, denota a transposta
conjugada de V. Tal fatorizao chamada de decomposio em valores
singulares de M. Os elementos diagonais
de so chamados de valores
singulares de M. Uma conveno bastante comum listar os valores singulares em

ordem decrescente. Neste caso, a matriz diagonal determinada de forma nica


por M (mas as matrizes U e V no so).

Interpretaes intuitivas
Rotao, escala, rotao
No
caso
especial
porm
comum
no
qual M
apenas
uma matriz
quadrada mm com determinante positivo cujas entradas so meros nmeros reais,
ento U, V*, e so matrizes mm tambm de nmeros reais, pode ser vista como
uma matriz de escala, e U e V* podem ser vistas como matrizes de rotao.

Visualizao da SVD de uma matriz real bi-dimensional (shearing matrix) M. Primeiro,


v-se o crculo unitrio em azul juntamente com os dois vetores unitrios da base
cannica. Tambm pode ser vista a ao de M, que distorce o crculo a uma elipse. A
SVD decompe M em trs transformaes simples: a rotao V*, a escala (esticamento)
juntamente com os eixos rotacionados e uma segunda rotao U. Os comprimentos
1 e 2 dos semi-eixos da elipse so os valores singulares de M.
Se as condies supracitadas so satisfeitas, a expresso
pode ser interpretada
intuitivamente
como
uma composio (ou sequncia)
de
trs transformaes
geomtricas: uma rotao, uma escala, e outra rotao. A figura acima exemplifica como
uma matriz de cisalhamento (shear matrix) pode ser descrita como tal sequncia.
Valores singulares como semi-eixos de uma elipse ou elipsoide

Como ilustrado na figura, os valores singulares podem ser interpretados como os semieixos de uma elipse em 2D. Este conceito pode ser generalizado para o Espao
euclidiano n-dimensional,
com
valores
singulares
de
qualquer matriz
quadrada nxn sendo vistos como os semi-eixos de um elipsoide n-dimensional.
Veja abaixo para maiores detalhes.
U e V so bases ortonormais
Como U e V* so unitrias, as colunas de cada uma formam um conjunto de vetores
ortonormais, que podem ser tomados uma base. Pela definio de matriz unitria, o
mesmo vale para suas conjugadas transpostas U* e V. Em suma, U, U*, V,
e V* so bases ortonormais.
Exemplo
Considere-se a matriz 45

A decomposio em valores singulares desta matriz dada por

Note-se que contm apenas zeros fora da diagonal. Ademais, como as matrizes
e
so unitrias, multiplicando-se por suas respectivas conjugadas transpostas gera
matrizes identidades, como mostrado a seguir. Nesse caso, como e
so reais,
cada uma delas uma matriz ortogonal.

Deve-se notar que esta decomposio em valores singulares em particular no nica.


Escolhendo-se tal que

tambm uma decomposio vlida em valores singulares.


Valores singulares, vetores singulares e sua relao com a SVD
Um nmero real no-negativo um valor singular para M se e somente se
existem vetores unitrios u em Km e v em Kn tal que

Os vetores u e v so chamados vetor singular esquerda e vetor singular direita para


, respectivamente.
Em qualquer decomposio em valores singulares

Os elementos diagonais de so iguais aos valores singulares de M. As colunas


de U e V so, respectivamente, vetores singulares esquerda e direita para os valores
singulares correspondentes. Por consequncia, o teorema acima implica que:

Uma matriz m n M tem pelo menos um e no mximo p = min(m,n) valores


singulares distintos.
sempre possvel encontrar uma base ortogonal U para Km consistindo dos
vetores singulares esquerda de M.
sempre possvel encontrar uma base ortogonal V para Kn consistindo dos
vetores singulares direita de M.

Um valor singular para o qual podemos encontrar dois vetores singulares esquerda (ou
direita) que sejam linearmente independentes chamado degenerado.
Valores singulares no-degenerados tm sempre vetores singulares esquerda e
direita nicos, a no ser pela multiplicao por um fator de fase nico ei (para o caso
real a no ser pelo sinal). Assim, se todos os valores singulares de M so nodegenerados e no-zero, ento sua decomposio em valores singulares nica, a no
ser por multiplicao de uma coluna de U por um fator de fase nico e a multiplicao
simultnea da coluna correspondente de V pelo mesmo fator unitrio de fase. Valores
singulares degenerados tm, por definio, vrios vetores singulares distintos. Ademais,
se u1 e u2 so dois vetores singulares esquerda ambos correspondendo ao valor
singular , ento qualquer combinao linear normalizada de dois vetores tambm um
vetor singular esquerda correspondendo ao valor singular . Raciocnio anlogo

vlido para vetores singulares direita. Por consequncia, se M tem valores singulares
degenerados, ento sua decomposio em valores singulares no nica.
Aplicaes da SVD
Pseudo-inversa
A decomposio em valores singulares pode ser usada para calcular
a pseudoinversa (MoorePenrose pseudoinverse) de uma matriz, a qual til como uma
forma de resolver problemas de mnimos quadrados lineares. De fato, a pseudoinversa
da matriz M com decomposio em valores singulares

onde + a pseudoinversa de , a qual formada substituindo-se todo elemento


diagonal no-nulo por seu inverso e tomando-se a transposta da matriz resultante.
Soluo de sistemas lineares homogneos
Um conjunto de equaes lineares homogneas pode ser escrito como
para
uma matriz e vetor . Uma situao tpica quando
dada e quer-se determinar
no-nulo que satisfaa a equao. Tal pertence ao ncleo de
e por vezes
chamado de vetor nulo ( direita) de . pode ser caracterizado como um vetor
singular direita correspondendo a um valor singular de
que seja zero. Isto significa
que se
uma matriz quadrada e no tem nenhum valor singular nulo, ento a
equao tem no-nulo como soluo. Tambm significa que se existem vrios valores
singulares nulos, qualquer combinao linear dos vetores singulares direita uma
soluo vlida. Analogamente definio de um vetor nulo ( direita), um no-nulo
satisfazendo
, com
sendo a transposta conjugada de , chamada de um
vetor nulo esquerda de .
Minimizao de mnimos quadrados totais
Um problema de mnimos quadrados totais (total least squares) objetiva determinar o
vetor que minimiza a norma de um vetor
sob a restrio
. Mostra-se
que a soluo o vetor singular direita de
correspondendo ao menor valor singular.
Imagem, ncleo e posto
Outra aplicao da SVD que a mesma representa explicitamente a imagem e
o ncleo de uma matriz M. Os vetores singulares direita que correspondem a valores
singulares nulos de M geram o ncleo (kernel) de M. Por exemplo, o ncleo gerado
pelas ltimas duas colunas de no exemplo acima. Os valores singulares esquerda
correspondendo aos valores singulares no-nulos de M geram a imagem de M. Assim,
o posto de M igual ao nmero de valores singulares no-nulos que igual ao nmero
de elementos no-diagonais em .
Em lgebra linear numrica os valores singulares podem ser usados para determinar
o posto efetivo de uma matriz, j que erros de arredondamento podem levar a valores
singulares pequenos porm no-nulos numa matriz de posto deficiente.

Aproximao por matriz de baixo posto


Algumas aplicaes prticas precisam resolver o problema de se aproximar uma
matriz

usando outra matriz

de posto . Para o caso em que a aproximao

baseada na minimizao da norma de Frobenius da diferena entre


restrio de que
:

sob a

, pode-se mostrar que a soluo dada pela SVD de

onde a mesma matriz que a no ser pelo fato de conter os maiores valores
singulares (os outros valores singulares so substitudos por zero). Isso conhecido
como o teorema EckartYoung, provado por tais autores em 1936 (apesar de ter-se
descoberto mais tarde que j era conhecido por outros autores; veja Stewart 1993).
Modelos separveis
A SVD pode ser vista como a decomposio de uma matriz em uma soma ponderada e
ordenada de matrizes separveis. O termo 'separvel' refere-se ao fato de uma matriz
poder ser escrita como um produto externo de dois vetores
, ou, em
coordenadas,
como:

. Especificamente, a matriz M pode ser decomposta

Aqui,
e so as i-simas colunas das matrizes SVD correspondentes,
so os
autovalores ordenados, e cada
separvel. A SVD pode ser usada para encontrar a
decomposio de um filtro de processamento de imagens em filtros separados verticais
e horizontais. Note-se que o nmero de 's no-nulos precisamente o posto da matriz.
Matriz ortogonal mais prxima
Pode-se utilizar a SVD de
para determinar a matriz ortogonal mais prxima de . A
proximidade medida pela norma de Frobenius de
. A soluo o produto
. Isso confere com a intuio j que uma matriz ortogonal deveria ter a
decomposio
onde a matriz identidade, de forma que se
ento
o produto
se reduz a colocar 1's no lugar dos valores singulares.
Um
problema
similar,
com
aplicaes
fundamentais
em viso
computacional, robtica e en:shape
analysis,

o Problema
de
Procrustes
Ortogonal (orthogonal Procrustes problem), que consiste em encontrar uma matriz
ortogonal que mapeia o mais prximo possvel de . Formalmente,

onde

a norma de Frobenius.

Este problema equivalente ao de encontrar a matriz ortogonal mais prxima a uma


dada matriz

O Algoritmo de Kabsch
O algoritmo de Kabsch (Kabsch algorithm), tambm conhecido como Wahba's problem,
utiliza a SVD para calcular a rotao tima (no sentido dos mnimos quadrados) que
alinha um conjunto de pontos com um conjunto de pontos correspondentes. Isso tem
aplicaes para a comparao de estruturas moleculares e em problemas relacionados
a modelos 3D em viso computacional e robtica.
Outros exemplos
A SVD tambm aplicada extensivamente ao estudo de problemas inversos lineares e
til na anlise de mtodos de regularizao tais como os de regularizao de
Tikhonov(Tikhonov regularization). Tambm amplamente utilizada em estatstica, onde
se relaciona com a anlise de componentes principais e en:Correspondence analysis,
de aplicao direta em processamento de sinais e reconhecimento de padres. Tambm
usada em anlise modal, onde os mode shapes no escalados podem ser
determinados pelos vetores singulares. Ainda outro uso no indexamento semntico
latente no processamento de linguagem natural textual.
A SVD tambm tem papel crucial no campo da informao quntica (quantum
information), numa forma comumente chamada de decomposio de Schmidt. Atravs
dela, estados de dois sistemas qunticos so decompostos naturalmente, provendo
condio necessria e suficiente para eles serem entangled : se o posto de maior
que um.
Uma aplicao da SVD para matrizes grandes na previso numrica do tempo, onde
os vetores singulares gerados podem representar sistemas meteorolgicos inteiros.
Outra aplicao a obteno da equao do raio de luz que gerou um ponto em uma
projeo perspectiva de uma cena (como uma foto) atravs da pseudoinversa (Moore
Penrose pseudoinverse).
Relao com a decomposio em autovalores (espectral)
A decomposio em valores singulares bastante geral, j que pode ser aplicada a
qualquer matriz m n , ao passo que a decomposio em autovalores pode apenas ser
aplicada para algumas classes de matrizes quadradas.
Dada uma SVD de M, como acima, valem as seguintes condies:

Os lados direitos dessas relaes descrevem a decomposio em autovalor dos lados


esquerdos. Sendo assim:

Os vetores singulares esquerda de M so autovetores de


Os vetores singulares direita de M so autovetores de
Os valores singulares no-nulos de M (ao longo da diagonal de ) so as razes
dos autovalores no-nulos de
ou

No caso especial em que M uma matriz normal, que por definio deve ser quadrada,
o teorema espectral diz que ela pode ser unitariamente diagonalizada usando-se uma
base de autovalores, de forma que ela pode ser escrita
para uma matriz
unitria U e uma matriz diagonal D. Quando M tambm positiva semi-definida, a
decomposio
tambm uma SVD.
No entanto, as decomposies em autovalores e em valores singulares diferem para
todas outras matrizes M: a decomposio espectral
onde U no
necessariamente unitria e D no necessariamente positiva semi-definida, enquanto a
SVD
onde diagonal postiva semi-definida, e U e V so matrizes
unitrias que no so necessariamente relacionadas exceto atravs de M.
Condicionamento
Decomposicao em Valores Singulares
A decomposicao em valores singulares e o associado conceito de condicionamento so
ferramentas de suma importncia em mtodos nmericos e analise nmerica. Uma
matriz A do tipo m por n (real ou complexa) pode sempre ser escrita como:
A = U S V'
aonde U e V sao ortogonais (unitarias) e S diagonal. As colunas da matriz m por
m U sao os auto-vetores da matriz A A' enquanto que as colunas da matriz n por n V sao
os auto-vetores da matriz A A'. Alem disso os chamados valores singulares que sao os
elementos da diagonal de S sao as raizes quadradas dos auto-valores nao nulos de A A'
e de A' A
Em matlab para calcularmos a decomposicao em valores singulares (SVD) de uma
matriz A usamos o comando
>> [U,S,V] = svd(A)
Exemplo:
>> A = [ 2 0; 0 -3; 0 0]
A =
2

-3

>> [ U, S, V] = svd(A)
U =

-1

S =

V =

A idia geomtrica fundamental que permeia a SVD obtermos duas bases ortonornais
nas quais a transformao linear possa ser escrita como uma aplicao que manda
elementos de uma base em mltiplos de elementos da outra.
O comando eigshow permite visualizar no caso de matrizes 2 por 2 as duas bases
mencionadas acima em diversos exemplos.
A anlise da soluo de sistemas lineares pode ser feita com base na decomposio em
valores singulares. De fato, uma vez que possuimos a decomposio em valores
singulares de A = U S V'. Suponha quem=n e que todos os valores singulares
de A sejam
no
nulos.
Pra
resolvermos
o
sistema
Ax=y
basta fazermos:
x = V S-1 U' y
aonde, como S diagonal, S-1 bastante simples de ser calculada. invertendo os
elementos da diagonal de S. Por outro lado se alguns dos valores singulares estiverem
prximos de zero, isto significa que o nosso sistema de equaes potencialmente
instvel e que pequenas modificaes no lado direito y podem levar a grandes
modificaes na soluo s.
Isto leva a noo de condicionamento que a relao entre o maior e o menor dos
valores singulares.
Condicionamento
Para calcularmos o condicionamento de uma matriz com matlab basta o comando
``cond."
Exemplo:
% Criamos a matriz de Hilbert A = (( 1 / (i + j -1) )) , i,j = 1:5
>> A = hilb(5)

A =

1.0000

0.5000

0.3333

0.2500

0.2000

0.5000

0.3333

0.2500

0.2000

0.1667

0.3333

0.2500

0.2000

0.1667

0.1429

0.2500

0.2000

0.1667

0.1429

0.1250

0.2000

0.1667

0.1429

0.1250

0.1111

>> cond(A)

ans =

4.7661e+05

O seguinte exemplo mostra como o mal condicionamento de uma matriz leva a serios
problemas. Consideraremos uma matriz de Hilbert de tamanho 10, definida por

e resolveremos os sistemas

com

um vetor aleatorio (uniformemente distribuido entre 0 e 0.1).

>> x2 = B\(ones(10,1)+0.1*rand(10,1));
>> x1 = B\(ones(10,1));
>> norm(x1-x2)/norm(x1)

ans =

1.4627e+04

>> A = hilb(10);
>> y1 = ones(10,1);
>> y2 = (ones(10,1) + 0.1*rand(10,1));

>> x1 = A\y1;
>> x2 = A\y2;
>> % erro relativo
>> rx = norm(x1-x2)/norm(x1)

rx =

2.5118e+04

>> %variacao no lado direito


>> ry = norm(y1-y2)/norm(y1)

ry =
0.0580
>> rx/ry
ans =
4.3322e+05
>> cond(A)
ans =
1.6025e+13

Note que uma pequena variao no lado direito levou a uma tremenda variao na
soluo. Isto era de se espera visto que o o nmero de condicionamento desta matriz
imenso.

1.2 ALGORITMO

close all
clear
clc
S='S'; s='s';
resp = 's';
while resp == 's' || resp == 'S'
clc;
Entrada = input ('Digite o caminho para o arquivo (entre aspas simples)\n');
img = imread(Entrada);

if ndims(img)>=3
img = rgb2gray(img);

% Converte para Preto e Branco

end

figure(1)
imshow(img)

img = single(uint8(img)); % Converso necessria para a funo svd

[U, S, V] = svd(img); % Gera as trs matrizes cujo produto resulta em A

valores_singulares = diag(S); % A diagonal da Matriz S contm os valores singulares


figure(2)
title('Valores Singulares')
plot(valores_singulares,'*')

k = input ('Digite quantos Valores Singulares voc deseja usar\n');

Sk = S(1:k,1:k);
Uk = U(:,1:k);
Vk = V(:,1:k);

%
% Retira valores singulares para comprimir a imagem
%

Pk = Sk*Vk';

tam_Pk = size(Pk);
tam_Pk = tam_Pk(1)*tam_Pk(2);

tam_Uk = size(Uk);
tam_Uk = tam_Uk(1)*tam_Uk(2);

tam_final = tam_Uk + tam_Pk; % tamanho aps compresso

tam_inicial = size(img);
tam_inicial = tam_inicial(1)*tam_inicial(2); % tamanho da imagem inicial em P/B

porcentagem = tam_final*100/tam_inicial;

if tam_inicial <= tam_final


fprintf('Essa compresso no vale a pena.\nO arquivo ficou maior!\n')
fprintf('O arquivo tem %f%% do tamanho do original em P/B.\n',porcentagem)
else
fprintf('Essa compresso vale a pena!!!\n')
fprintf('O arquivo tem %f%% do tamanho do original em P/B.\n',porcentagem)
end
figure(3)
img_o = uint8(Uk*Pk);
imshow(img_o);
nome = [Entrada(1:end-4) 'k' int2str(k) Entrada(end-3:end)];
imwrite(img_o,nome,'bmp');

resp = input('Deseja executar novamente? [S/N](Entre aspas simples)\n');


end

1.3 RESULTADO

Abaixo o resultado:
Compresso de imagem utilizado o MATLAB.
Inicialmente temos uma imagem, que quando em preto e branco representada por
uma matriz.

A decomposio por valores Singulares feita desse modo:

Para o caso da matriz Img acima temos:

Uma decomposio matricial transformar uma matriz em um produto de matrizes


assim temos que:

Essas matrizes tm caractersticas especiais, porm neste caso somente precisamos


entender um pouco da matriz S, que possui os valores singulares. A matriz S uma
matriz diagonal e sua diagonal contm os valores singulares em ordem decrescente. De
uma forma bem simplificada podemos dizer que os valores singulares representam a
importncia que determinada informao tem para a matriz logo nossa compresso se
refere a trocar valores singulares pequenos por zero. Na verdade o que faremos
eliminar as linhas e colunas de S a partir de determinado valor. Quando eliminamos
linhas e colunas de S , podemos eliminar de U e V tambm, pois estaremos
multiplicando por zero logo elas so desnecessrias, desse modo teremos as
matrizes Sk , Uk e Vk onde k o nmero de valores singulares que voc deseja manter
(quanto
mais
valores,
melhor
a
qualidade).

O produto destas matrizes ser parecido com a imagem original.

A imagem formada uma compresso da imagem original, porm como as matrizes


tero o mesmo tamanho, ambas ocuparo o mesmo espao, ento para que essa
compresso tenha algum resultado devemos armazenar a matriz Uk e uma
matriz Pk=SkVTk, pois elas ocuparo menos espao que o produto das mesmas.
Abaixo um exemplo com o logotipo, a imagem original :

A tabela a seguir mostra o numero de valores singulares utilizados, a imagem resultante


e a porcentagem de compresso:

k=25 / tamanho 12.6%

k=75 / tamanho 37.9%

k=125 / tamanho
63.1%

k=175 / tamanho
88.3%

k=200 / tamanho 100.9%

1.4 COMENTRIO/CONCLUSO
A imagem com k=75 no ruim e armazenada em 38% do espao ocupado pela
imagem original. A partir de k=200 valores singulares, a tcnica no vale a pena, porque
armazenar as matrizes Pk e Uk gasta mais espao que armazenar imagem original.

2) Simule (utilizando qualquer software) o circuito da figura 1 e obtenha a tabela de

valores (t (seg) e I (A)). Resolva analiticamente o circuito. Faa o ajuste da funo


utilizando regresso (avalie a que melhor se adeque a esse problema). Plote em um
grfico os valores simulados, calculados (soluo analtica) e os valores obtidos a
partir da regresso. Escolha os valores para os elementos de forma que a resposta
seja oscilatria. Comente os resultados.

Figura 1

2.1 TEORIA
RLC srie com fonte da alimentao do tipo Thvenin
Neste circuito, os trs componentes esto todos em srie com a fonte de tenso.
Notaes do circuito RLC srie:
v - a tenso da fonte de alimentao (medida
em volts V)
i - a corrente do circuito (medida
em ampres A)
R - a resistncia do resistor (medida
em ohms = V/A);
L - a indutncia do indutor (medida
em henrys = H = Wb/A = Vs/A)
C - a capacitncia do capacitor (medida
em farads = F = C/V = As/V)
Dados os parmetros v, R, L, e C, a soluo para a corrente (I) utilizando a Lei da
Tenso de Kirchoff :

Para uma tenso varivel com o tempo v(t), isto se torna

Rearranjando a equao [dividindo por L e derivando ambos os termos] tem-se a


seguinte equao diferencial de segunda ordem:

Definem-se agora dois parmetros chave:

sendo ambos medidos em radianos por segundo.


Substituindo estes parmetros na equao diferencial, obtm-se:

A soluo para Resposta de Entrada Zero


Colocando a entrada (fonte de tenso) em zero, obtm-se:

com as condies iniciais para a corrente do indutor, I L(0), e a tenso do capacitor V C(0).
De modo a resolver a equao propriamente, as condies iniciais necessrias so
I(0) e I'(0).
O primeiro j foi feito, visto que a corrente na total igual corrente no indutor, portanto

A segunda obtida aplicando a Lei da Tenso de Kirchoff novamente:

Agora tem-se uma equao diferencial de segunda ordem homognea com duas
condies iniciais. Substitundo os parmetros e 0, tem-se

Convertendo a forma da equao para seu polinomial caracterstico

Utilizando a frmula quadrtica, acham-se as razes como

Dependendo dos valores de e 0, existem trs casos possveis:


Sobrecarga/Regime sobreamortecido (aperidico)

Neste caso, as solues do polinomial caracterstico so dois nmeros reais negativos.


Isto chamado de "sobrecarga".
Duas razes reais negativas, as solues so:

Carga crtica/ Regime amortecido crtico (aperidico limite)

Neste caso, as solues da polinomial caracterstica


reais negativos idnticos. Isto chamado de "carga crtica".
As duas razes so idnticas (

so

dois nmeros

). As solues so:

para constantes arbitrrias A e B


Subcarga/ Regime subamortecido (peridico amortecido; pseudo-peridico)

Neste caso as solues do polinomial caracterstico so um conjugado complexo e


possuem uma parte real negativa. Isto chamado de "subcarga" e resulta em
oscilaes no circuito.
As solues consistem de duas razes conjugadas

onde

As solues so:

para constantes arbitrrias A e B.


Utilizando a frmula de Euler [
soluo para

], pode-se simplificar a

para constantes arbitrrias C e D.


Estas solues so caracterizadas por uma resposta sinusoidal com decaimento
exponencial. O tempo necessrio para que as oscilaes sejam eliminadas depende da
qualidade do circuito, ou fator Q. Quanto maior a qualidade, mais tempo necessrio
para que as oscilaes decaiam.
2.2 Soluao analtica

R
=
2L

=5/(2*3)= 0,83
1
=0
LC
0 = 1/3*0,01 = 33,33

0,83<33,33
: circuito subamortecido

c = 33,33-0,83 rad/s
c = 32,64 rad/s
Aplicando a condio inicial:
0 = k*cos = 90o

Em t = 0+ VL = 127V
127/3 = -k*cos - 32,64*k*sen k = -1,3

i(t) = -1,3 * e-t * cos(32,64*t + 90o)

2.3 RESULTADO

polinmio de grau 3 em cor azul


polinmio de grau 5 em cor verde

2.4 COMENTRIO/CONCLUSO
Foram estimados valores para o resistor, indutor e o capacitor para que fizesse a
simulao no simulink do MATLAB e com esses valores encontrar a corrente.
Com posse destas informaes foram traados as curvas, sendo o valor medido em
amarelo, o valor do polinmio de grau 3 em azul e o valor do polinmio de grau 5 em
verde. O polinmio de grau 5 foi o que melhor definiu a curva caracterstica, observando
que quanto maior o grau do polinmio melhor a sua aproximao com o comportamento
real.

3) Para os Tpicos: Interpolao de Hermite, Interpolao com Spline Cbico e


Extrapolao faa:
Descrio de um problema real;
Modelagem matemtica e numrica (cdigo em anexo);
Resultados e concluses
3.1 TEORIA
Interpolao de Hermite
Uma das primeiras representaes matemticas de curvas complexas, Hermite definiu
uma curva utilizando uma equao polinomial, dois pontos e dois vetores tangentes que
determinam sua forma. A curva proposta por Hermite definida por um polinmio e
pontos de incio e fim, associados a dois vetores o que permite um controle razovel
sobre a curva. A utilizao e edio dos pontos e dos vetores tangentes so teis para o
modelamento de formas complexas, no entanto, utilizando a metodologia de Hermite, os
valores dos pontos e as inclinaes dos vetores devem ser atribudos numericamente,
dificultando a utilizao prtica desta tcnica.

Fig- Curva de Hermite

f
A interpolao de Hermite tem como objetivo representar uma funo
por um
f
polinmio que seja interpolador de
e que a sua derivada seja interpolador da
f
derivada de
nesses mesmos pontos. A partir desta afirmao temos a seguinte
relao:
f ( xi ) H ( x i)
f ( x i) H ( x i)
sendo

i 0,1,..., n

Em sendo o polinmio de Hermite o nico de grau igual a 2n+1 que verifica as condicoes
f
da equao acima de
nos pontos x0,x1...xn.
Temos por notao o polinomio interpolador de Hermite de grau 2n+1 dado por:

2 n 1 ( x ) f ( x 0 )

2 n 1

i 1

i 1

f [ x 0 , x 1 ,...x i ] ( x xj)
j 0

ou
H

2 n 1

( x) ( f ( x 0 ) f [ x 0 , x 0 ] * ( x x 0 )

f [ x 0 , x 0 , x1 ] * ( x x 0 ) 2 f [ x 0 , x 0 , x1 , x1 ] *
* ( x x 0 ) 2 * ( x x1 )
f [ x 0 , x 0 , x1 , x1 , x n , x n ] * ( x x 0 ) 2 *
* ( x x1 ) 2 * * ( x x n ))

Interpolao com Spline Cbico


Normalmente utilizado para sinais de natureza bastante oscilatoria. O spline cbico,
divide o itervalo em uma srie de subintervalos para construo do polinmio cbico de
aproximao (geralmente) diferente para cada subintervalo ou ns.
Um polinmio cbco genrico possui quarto constante de modo que o procedimento
com splines cbicos tem flexibilidade suficiente para assegurar que o interpolador no s
seja continuamente deivvel no itnervalo, mas que ele tam uma derivada de 2 ordem
contnua. A construo do spline cvico no garante entretanto, que as derivadas do
interpolador concordem com as da funo que est sendo aproximada mesmo em seus
ns.

Curva Spline Cbico

Por definio, o spline cbico dever satisfazer as seguintes condies:


S(x) um polinmio cbico, indicado por Sj (x), no subintervalo [xj,xj+1 ] para cada
j=0,1,...,n-1;
S(xj) =f(xj) para cada j=0,1,...,n;
Sj+1 (xj+1)=Sj (xj+1) para cada j=0,1,...,n-2;
Sj+1 (xj+1)=Sj (xj+1) para cada j=0,1,...,n-2;
Sj+1 (xj+1) =Sj (xj+1) para cada j=0,1,...,n-2;
Pelo menos uma das seguintes condies de contorno satisfeita:
S (x0) =S (xn) =0 (contorno livre ou natural)
S (x0) =f (x0) e S (xn) =f (xn) (contorno restrito)

Quando as condies de contorno i so atendidas, o spline chamado de spline natural


entretanto, condies de contorno restrita levam a aproximaoes mais precisas, na
medida em que elas incluem mais informaes sobre a funo mas para aplicao desta
condio de contorno poreciso se obter os valores das derivadas nos pontos extremos
ou uma aproximao acurada desses valores.
Extrapolao
A extrapolao o processo de fazer uma estimativa de um valor de f(x) que est fora
do intervalo dos pontos-base conhecidos, x 1,x2, ..., xn. Como descreve a Figura abaixo, a
natureza da extremidade aberta da extrapolao representa um passo no desconhecido,
pois o processo estende a curva alm da regio conhecida. Dessa forma, a curva
verdadeira pode facilmente divergir da previso. Portanto, deve-se tomar extremo
cuidado quando ocorrer um caso no qual seja preciso extrapolar.

Extrapolao Linear: Na extrapolao linear uma linha tangente criada no final do


intervalo de dados conhecidos e estendida alm desde limite. Este mtodo resultar em
bons resultados apenas se for aplicado para extrapolar funes aproximadamente
lineares ou se no estender para muito longe do intervalo de dados conhecidos.

Extrapolao Polinomial: Neste mtodo uma curva polinomial pode ser criada atravs de
todos os dados do intervalo ou dos dados bem prximos do final. Desta forma, a curva
resultante pode ser estendida alm do intervalo de dados conhecidos. A extrapolao
polinomial tipicamente feita por meio da interpolao de Lagrange, ou usando o
mtodo de Newton ou diferenas finitas para criar uma srie de Newton que se adeque
aos dados. O polinmio resultante pode ser usado para a extrapolao. Polinmios com
ordens elevadas devem ser usados com cuidado.
Extrapolao Cnica: Neste caso uma seo cnica pode ser criada usando cinco
pontos prximos ao final do intervalo conhecido.

Cubic Spline - Interpolao para curvas de juros


Cubic spline uma metodologia de interpolao numrica, assim como
interpolao linear, exponencial etc. De fato, representa uma forma de interpolao
atravs polinmios de 3 ordem, sendo da originado o nome cubic.
A maior caracterstica das interpolaes cubic spline o amortecimento ou
suavidade que apresentam na transio de um n para outro, sendo muito utilizada para
estabilizao de cmeras de vdeo e outros instrumentos sensveis a variaes bruscas.

A utilizao da interpolao cubic spline em finanas tambm motivada por est


caracterstica de suavizar as interseces ou, olhando para uma curva de juros, suavizar
a transio de um ponto para outro.
Neste mtodo, a trajetria entre cada conjunto de dois pontos representada por um
polinmio de ordem 3 e algumas condies de contorno so estabelecidas para garantir
a suavidade. Sendo assim, cada segmento da curva definido por:

onde uint uma parametrizao dos pontos Dint no tempo dada por:

Como condies de contorno, temos que nos pontos de interseco entre os


segmentos, tanto o valor do polinmio - que representa cada segmento - como sua
primeira e segunda derivadas devem ser iguais (isto equivale a dizer que a curva
apresentar uma continuidade C2 - at segunda derivada). Ou:

(primeira derivada do segmento - inclinao da curva)


(segunda derivada do segmento - alterao da inclinao da curva)

Os pontos (0) e (1) representam, respectivamente, o incio e o final de cada segmento


da curva cubic spline.
Ainda para o ponto inicial e final da curva, tem-se:

A fim de permitir a resoluo deste sistema de equaes, mais duas condies so


impostas para as extremidades:

Esta metodologia de construo de um spline tambm conhecida como natural


cubic spline ou spline cbico natural.
Como desvantagens deste mtodo, podemos salientar que ele apresenta algumas
instabilidades, principalmente em curvas com pontos muito prximos uns dos outros.
Uma outra observao a ausncia de uma teoria econmica que suporte o modelo
para curvas de juros.
Extrapolaes no so o objetivo de uma cubic spline.
Funo MX.CSPLINE
Acesso:
Menu - Inserir | Funo | Metrixus

- Barra de ferramentas Padro | Metrixus


Descrio: Retorna a taxa de juros interpolada pelo mtodo cubic spline para o perodo
indicado a partir da curva de juros fornecida. No caso perodos alm do ltimo
vencimento da curva de juros informada, a taxa retornada negativa e equivale taxa
do ltimo ponto da curva de juros (curva flat aps o ltimo vencimento). Esta funo no
realiza extrapolaes.
Uma mesma curva de juros no pode possuir mais de uma informao para o
mesmo ponto no tempo (por exemplo uma informao de futuros de juros e outra de
swaps). Se isto ocorrer, prevalecer a maior taxa.
Chamada: MX.CSPLINE (Dias teis, Curva de Juros)

Argumento

Dias teis

Curva de
Juros

Tipo

Descrio

integer

Nmero de dias teis para o qual se deseja


calcular a taxa de juros interpolada pelo
mtodo cubic spline. Este nmero deve ser
maior do que 1.

range

Intervalo (matriz n linhas por 2 colunas)


contendo as taxas de juros ao ano (efetiva
base 252) na primeira coluna e os dias teis
at o vencimento de cada ponto na segunda
coluna. Estes dados so utilizados no clculo
de taxas de juros para qualquer vencimento.
Deve haver pelo menos 2 pontos diferentes
em uma curva de juros.

Chamada: MX.CSPLINE (Dias teis, Curva de Juros)

Os pontos da curva de juros informada no precisam estar ordenados no tempo, mas


devem estar dispostos em um intervalo com duas colunas apenas.
Dados de texto ou em branco para a curva de juros so ignorados pela funo. Dados
menores do que 1 para o parmetro Dias teis tambm so ignorados!

Importante: As taxas de juros informadas no parmetro Curva de Juros devem ser as


taxas de juros anuais com base 252. As taxas devem estar na primeira coluna e os dias
teis para estas taxas na segunda coluna.

Importante: Para pontos repetidos no tempo, prevalecer aquele de maior taxa!

O resultado para uma curva de juros informada com n pontos :


Interpolao: considerando as equaes e condies de uma cubic spline e
considerando Pi e Pi+1 como pontos da curva de juros, Di e Di+1 como o nmero de dias
teis correspondentes a estes pontos e Dint a data do ponto procurado,
sendo Dint entre Di e Di+1, a taxa de juros Pint interpolada para o ponto procurado ser
dada por:
Interpolao:

Onde:
Parmetro uint

Importante: Se o ponto procurado for um vencimento anterior ao primeiro vencimento


da curva de juros, a taxa retornada ser igual taxa de juros do primeiro vencimento!
Exemplo de utilizao para interpolao cubic spline:
Interpolao de curva de juros - parmetros:
Dias teis: 120
Curva: A2:B11 (11 pontos em qualquer ordem)
18,75%

20

20,65%

220

20,70%

300

20,40%

140

19,15%

40

19,75%

80

20,71%

350

20,60%

180

19,40%

60

20,00%

100

= MX.CSPLINE( 120; A2:B11)


Resultados:
20,200%

Curva de juros interpolada para vrios pontos. Para a construo deste grfico foram calculadas as
taxas interpoladas para todos os dias teis at o ltimo ponto (ou vencimento) informado. No h
extrapolaes neste grfico. Nota-se uma reta at o primeiro vencimento, indicando que no
interpolaes neste perodo.

Exemplo de utilizao para interpolao cubic spline com curva invertida:


Interpolao de curva de juros invertida - parmetros:
Dias teis 250
Curva: A2:B11 (11 pontos em qualquer ordem)
18,75%

20

19,15%

40

19,40%

60

19,75%

80

20,00%

100

20,40%

140

20,60%

180

20,58%

220

20,40%

300

20,30%

350

= MX.CSPLINE( 250; A2:B11)


Resultados:
20,523%

Novamente, no h dados para extrapolaes e nota-se uma reta at o primeiro vencimento.

3.2 ALGORITMO

Splines Polinomiais
% Programa para aproximao polinomial de pontos no plano
clear all;
close all;
ptos = [1 1;2 4;4 2;5 2;6 4;7 4;8 5];
N = length(ptos(:,1));
x = ptos(:,1);
y = ptos(:,2);
r = 6; % Grau do polinmio
% Clculo da matriz Z e do vetor q
Z = zeros(r+1,r+1);
q = zeros(r+1,1);
for j=0:r,
for k=0:r,
for i=1:N,
Z(j+1,k+1) = Z(j+1,k+1)+power(x(i),j+k);
end
end
for i=1:N,
q(j+1) = q(j+1)+y(i)*power(x(i),j);
end
end
% Obteno dos coeficientes do polinmio
a = inv(Z)*q;
% Produo dos resultados grficos
t = [0:0.1:10];
ind = 1;
f = zeros(length(t),1);
for i=1:length(t),
for j=0:r,
f(i,1) = f(i,1)+a(j+1)*power(t(i),j);
end
end
figure(1);

% Plotagem dos pontos fornecidos


for i=1:N,
plot(x(i),y(i),'*');
hold on;
end
% Plotagem da funo polinomial
plot(t,f);
axis([0 9 0 6]);
title(sprintf);%d pontos e polinmio de grau %d',N,r));
hold off;

3.3 RESULTADO

7 pontos e polinmio de grau 6

7 pontos e polinmio de grau 5

7 pontos e polinmio de grau

7 pontos e polinmio de grau 3

7 pontos e polinmio de grau 2

7 pontos e polinmio de grau 1

3.4 COMENTRIO/CONCLUSO
A interpolao de Hermite muito mais simples do que interpolao por splines cbicos,
pois esta envolve a resoluo de um sistema linear. O Splines cbicos a desvantagens
deste mtodo, que ele apresenta algumas instabilidades, principalmente em curvas
com pontos muito prximos uns dos outros.

4) O grfico a seguir apresenta as variaes do PIB e PIB/percapita.

Para esses dados (PIB e PIBpercapita) faa:


1. Encontre o polinmio interpolador que melhor represente essa funo (PI de maior grau
possvel) (Use regresso ou interpolao);
2. Plote o diagrama de disperso e o PI encontrado;
3. Comente todos os resultados
4.1 TEORIA
Interpolao Polinomial
A interpolao consiste em determinar uma funo (iremos considerar polinmios), que
assume valores conhecidos em certos pontos (que chamaremos ns de interpolao). A
classe de funes escolhida para a interpolao a priori arbitrria, e deve ser
adequada s caracteristicas que pretendemos que a funo possua.
A interpolao polinomial pode-se revelar desadequada se os ns de interpolao no
forem escolhidos convenientemente (o que leva ao uso de ns de Chebyshev...). De um
modo geral, o conjunto das funes interpoladoras determinado por um nmero finito
de parmetros (no caso dos polinmios, so os seus coeficientes...) que dever ser igual
ao nmero de condies impostas (ou seja, ao nmero de ns), para que haja apenas
uma soluo. Nos casos que veremos, a determinao dos parmetros, que definem a
funo interpoladora, ir levar-nos resoluo de um sistema linear.
Consideremos um conjunto de pontos (designados ns de interpolao)
x0 , ... , xn , a que esto associados os valores de uma funo f0 , ... , fn,
respectivamente.
Pretendemos encontrar um polinmio p tal que

p ( x i ) = fi
para i = 0, ..., n.

O polinmio de 3 grau interpola a funo em 4 pontos


Escrevendo p( x ) = a0 + a1 x + ... + am xm, obtemos o sistema
a0 + a1 x0 + ... + am x0m = f0
...
a0 + a1 xn + ... + am xnm = fn
e para que este sistema seja possvel e determinado pelo menos necessrio que m=n.
Obtemos assim o sistema linear :

em que a matriz do sistema conhecida como Matriz de Vandermonde.


A existncia e unicidade do polinmio interpolador equivalente a assegurar que o
sistema possvel e determinado para quaisquer x0 , ... , xn distintos.
Teorema:
Dados n+1 ns, x0 ,
...
,
xn e
os
respectivos
valores f0 ,
existe um e um s, polinmio interpolador de grau <n, para esses valores.

...

fn,

Unicidade:
Supondo que existem dois polinmios interpoladores p e q de grau < n, ento o
polinmio p(x) - q(x) tem grau < n e n+1 razes, j que, sendo polinmios interpoladores,
verificam :
p ( x i ) = fi = q ( x i )
para i
=
0,
...,
n.
Consequentemente, como tem n+1 razes e grau < n, o polinmio p(x)-q(x) ter que ser
nulo, logo p=q .

Existncia:
Podemos mostrar a existncia, construindo os.

4.2 POLINMIO INTERPOLADOR


Para obtermos o polinmio, utilizamos:

PIB

PIB PER CAPITA

4.3 RESULTADO

4.4 COMENTRIO/CONCLUSO

Foi adotado a frmula de Lagrange pois reduzem significativamente o nmero de


operaes envolvido. Desse modo o mtodo de Lagrange apresenta uma facilidade
computacional, e sua expresso depende apenas dos valores de x e y.

REFERNCIAS

Filho, F. F. C., Algoritmos Numricos. LTC Editora. 2 edio.


Furlan,D. L., Sanches, I. J., Mtodos Numricos. Curitiba: Universidade Federal do
Paran, 2007.
Souza, M.J. F., Apostila de Clculo Numrico, Departamento de Computao, Instituto
de Cincias Exatas e Biolgicas, Universidade Federal de Ouro Preto.
Marina Andretta, Resoluo de sistemas de equaes lineares: Mtodo de eliminao de
Gauss - estratgias de pivotamento. Disponvel em:
<http://www.icmc.usp.br/~andretta/ensino/aulas/sme0500-1-12/pivotamento.pdf>
Multiplicao de matrizes: Disponvel em:
<http://www.alunosonline.com.br/matematica/multiplicacao-de-matrizes.html>
Jlio F. Szeremeta, Anlise Numrica I. Disponvel em: <http://
www.inf.ufsc.br/~peters/Analise_I2.doc>
http://www.mat.ufrgs.br/~guidi/grad/MAT01032/calculo_numerico.cap3.pdf
ftp://ftp.dca.fee.unicamp.br/pub/docs/vonzuben/ia004_1s10/notas_de_aula/topico1_IA00
4_1s10_Parte5.pdf
http://lab.duxus.com.br/addins/manual/metrixus/index2_2_8.php
http://people.ufpr.br/~ademir.ribeiro/orientacao/Wagner.pdf
http://w3.impa.br/~zubelli/tutorial/node8.html
http://pt.wikipedia.org/wiki/Decomposi%C3%A7%C3%A3o_em_valores_singulares

Você também pode gostar