Escolar Documentos
Profissional Documentos
Cultura Documentos
GENERALIZADO
Aprovada por:
_____________________________________________
Carlos Magluta, D. Sc.
_____________________________________________
Ney Roitman, D. Sc.
_____________________________________________
Alvaro Luiz Gayoso Azeredo Coutino, D. Sc.
_____________________________________________
Webe João Mansur, Ph. D.
_____________________________________________
Paulo Batista Gonçalves, D. Sc.
ii
“A mente não é um vaso a ser repleto, mas uma tocha a ser acesa”.
Plutarco (46-120).
iii
Dedicatória
À minha mãe pelo dom da vida e pelo amparo ao longo desses anos.
iv
AGRADECIMENTOS
para comigo.
pesquisa.
Aos inúmeros amigos que fiz na COPPE, dentre os quais: Adcleides, Delfim
Luiz, Daniel.
À Ludwig van Beethoven e Elvis Presley pela companhia nas horas mais
solitárias.
v
Resumo da Tese apresentada à COPPE/UFRJ como parte dos requisitos
GENERALIZADO
Abril/2003
Ney Roitman
vi
Abstract of Thesis presented to COPPE/UFRJ as a partial fulfillment of
April/2003
Ney Roitman
dynamic analysis, where the eigenvalues represent the natural frequencies and
eigenvectors motivated the search for new methods for the solution of complex
eigensystems.
vii
Índice
Capítulo 1 ......................................................................................................................1
1 Introdução..............................................................................................................1
Capítulo 2 ......................................................................................................................6
2.1 Introdução......................................................................................................6
liberdade ....................................................................................................................6
Capítulo 3 ....................................................................................................................16
3 Teoria Matemática...............................................................................................16
3.1 Introdução....................................................................................................16
viii
3.6 Critérios para a análise da acurácia dos autovalores ...................................29
Capítulo 4 ....................................................................................................................32
4 Implementação Numérica....................................................................................32
4.1 Introdução....................................................................................................32
Capítulo 5 ....................................................................................................................50
5 Aplicações ...........................................................................................................50
Carapeba 61
Capítulo 6 ....................................................................................................................65
7 Referências Bibliográficas...................................................................................68
ix
Lista de Tabelas
computados..........................................................................................................53
computados..........................................................................................................54
Tabela 5.3- Comparação da Norma dos Vetores Resíduo e Tempo de CPU ..............55
Tabela 5.6 –Comparação dos Tempos de Cpu para diferentes autovalores entre o
IRAM e Subespaço..............................................................................................63
x
Lista de Figuras
3D ........................................................................................................................62
xi
Nomenclatura
Letras Maiúsculas
C
_ – Matriz de Amortecimento.
K
_ – Matriz de Rigidez.
M
_ – Matriz de massa.
Q
_ - Matriz Ortogonal.
U
_ – Matriz de Deslocamentos.
A
_ – Matriz do problema de autovalor.
B
_ - Matriz do problema de autovalor do problema generalizado.
G
_ – Matriz projetada no subespaço de Krylov.
X
_ – Matriz de Transformação.
R
_ - Matriz triangular superior.
U
_ – Matriz ortogonal.
H
_ – Matriz de Hessenberg.
Kk – Subespaço de Krylov.
P
_ – Projetor ortogonal.
xii
_ é uma base ortonormal de Kk(A,
V _ v_1) .
Letras Minúsculas
a e b - Constantes reais.
_x – Autovetor.
t - Autovetor à esquerda.
_f – Vetor resíduo.
_r –Vetor resíduo.
Letras Gregas
ω – Frequência de excitação.
λ - Autovalor.
σ ( A) - Espectro de A .
θ - valor de Ritz.
xiii
µj – deslocamentos dados durante o processo do “IRAM”.
xiv
Capítulo 1
1 Introdução
elevado, pois o seu uso implica o cálculo de todos os autovalores e autovetores, não
autovalores/autovetores .
subespaço de Krylov. Métodos baseados nesse subespaço são uma tendência para
todos os campos que requerem a solução de sistemas de equações lineares, bem como
Trata-se de uma rotina de domínio público e código aberto, estando este pacote de
1
Após a instalação do software, verificou-se que a versão do conjunto de rotinas
erros encontrados poderiam ser corrigidos, porém trata-se de um pacote com quase
obtida uma versão que não apresentou os mesmos erros sendo, portanto utilizada
uma rotina deveria ser de simples utilização, bastando apenas sua chamada pelo
sendo necessário que o usuário crie sua própria estratégia para a solução de problemas
generalizados. Além disso, ao longo deste trabalho, verificou-se que outras estratégias
receber uma nova abordagem. Métodos matriciais desenvolvidos por Schur e Jacobi
2
solução de problemas de ordem satisfatória, deixando de lado o tratamento polinomial
obtendo uma matriz da qual fosse mais simples obter seus autovalores do que a matriz
Arnoldi foi abandonado, sendo praticamente deixado de lado por mais de uma década
O principal impulso para o método foi dado por SAAD (1980), que sugeriu uma
uma variação do método de Arnoldi deu-se por causa de problemas que serão melhor
expostos no Capítulo 4.
3
desenvolver rotinas as mais generalistas possíveis, capazes de serem utilizadas em
rotina para competir com o ARPACK. Trata-se, pois, de um trabalho que visa discutir
seguinte forma:
Arnoldi.
4
c. No Capítulo 4 estão descritas as implementações do Método de Arnoldi
5
Capítulo 2
2.1 Introdução
estruturas no domínio da frequência, que, como já foi dito anteriormente, foi o tema
estudado por MAGLUTA (1993), o qual, na ocasião, chegou a matrizes que tinham
liberdade
considerando como sendo uma das partes a estrutura principal reduzida a um grau de
sistema de absorção e,
6
Mp, Ma - Massa;
Kp, Ka - Rigidez;
xp, xa – Deslocamento;
Kp Cp
Mp
ka ca
Fp Xp
ma
Xa
∂2_x ∂_x
M
_ 2 +C _ ∂t + K_
_x = F
_(t) (2.3)
∂t
.onde,
M 0
_ = p
M (2.4)
0 M a
..
é a matriz de massa,
C + Ca − Ca
_= p
C (2.5)
− Ca Ca
.
é a matriz amortecimento,
7
K + Ka − Ka
_= p
K (2.6)
− Ka K a
.
é a matriz de rigidez,
x
_x = p (2.7)
xa
.
é o vetor de deslocamentos,
F
_ (t) = p
F (2.8)
0
.
é o vetor da força aplicada.
C
_ = aM
_ + bK
_ (2.9)
.onde,
não amortecido:
(K _ r2)φ_r = _0
_ - Mω (2.10)
onde,
F _ eiωt
_ (t) = F (2.11)
.
8
As soluções do sistema não-amortecido são dadas por:
_ r eiωt
_x(t) = Ar φ (2.12)
.
∂_x(t) iωt
∂t = iωArφ_r e (2.13)
.
∂2_x(t)
= - ω2Arφ_r eiωt (2.14)
∂t2
.onde,
ω – Frequência de excitação
Ar – Amplitude de resposta
.onde,
mr = φ_rTM
_ φ_r - Massa modal;
kr = φ_rTK
_ φ_r - Rigidez modal;
cr = φ_rTC
_ φ_r - Amortecimento modal;
Fr = φ_rTF
_ - Força que atua no “r-ésimo” modo – força generalizada.
φ_rTF
_
Ar = 2 (2.16)
(kr - ω mr) + iωcr
.
Substituindo a eq (2.16) em (2.12), e somando as contribuições dos modos
tem-se:
9
N φ_rφ_rTF
_
_x(t) = ∑ 2 eiωt (2.17)
(kr - ω mr) + iωcr
r=1
_x(t) = α
_(ω)_
F(t) (2.18)
.onde α
_(ω) é a função de resposta em frequência (F.R.F.).
proporcional
rigidez não é válida para os casos de uso de sistemas de absorção, pois, usualmente, o
(-ω2M
_ + iω_
C + K)
_ _x(t) = F
_ (t) (2.19)
.
Sendo,
_(ω) = ( -ω2M
β _ + iω_
C+K
_) (2.20)
.
A forma inversa de β
_(ω) é dada por:
_(ω) )A
(β
_(ω)-1 = det(_
β β(ω)) (2.21)
.
_(ω) )A representa a forma adjunta.
Onde ( β
Portanto:
10
(-1)j+kβkj(ω)
-1
_(ω) = det(_
β β(ω)) (2.22)
.
Fazendo det(_
β(ω)) = 0 , pode-se calcular as quatro raízes do sistema que, neste
1
λ1 = ξ1ω1 + ω1(1 - ξ12)2 i (2.23)
.
1
λ2 = ξ2ω2 + ω2(1 - ξ22)2 i (2.24)
.
1
λ 1 = ξ1ω1 - ω1(1 - ξ12)2 i (2.25)
.
1
λ 2 = ξ2ω2 - ω2(1 - ξ22)2 i (2.26)
.
Onde,
1
φj = (2ωrAjji)2 (2.27)
.
Os modos de vibração são compostos por números complexos e
autovetor onde todos os pontos da estrutura passam por uma posição de equilíbrio no
mesmo instante de tempo; nos modos complexos a forma modal “trafega” pela
estrutura.
11
2.4 Sistema com muitos graus de liberdade
passo é estender o mesmo para casos com vários graus de liberdade. A principal
absorção de vibrações.
utilizada uma técnica que utiliza os dados experimentais disponíveis, já que a taxa de
C _ ∑ ab(M
_ =M _ -1K)
_ b (2.28)
ne
cr = φ_rTC _ ∑ ab(M
_ φ_r = 2ξrωrmr = φ_rTM _ -1K
_ )bφ_r (2.29)
b=0
.
onde ne representa o número de dados experimentais.
Como K
_ φ_r = ωrM
_ φ_r :
M
cr = ∑ abφ_rTM
_ φ_rωr2b (2.30)
b=0
.
12
Explicitando o ξr:
M
ξr = 0.5 ∑ abωr2b-1 (2.31)
b=0
.
Na forma matricial:
ξ_ = Q_
_a (2.32)
.onde,
_ -1_ξ
_a = Q (2.33)
.
frequências naturais e modos de vibração. A eq. (2.10) adaptada para “n” graus de
13
∂x
x
_ = ∂x
U ⇒ U& = ∂2t (2.34)
∂t ( 2 n×1) ∂ 2x
∂t ( 2 n×1)
.
A equação diferencial do movimento fica:
x& x
[C M ]( n×2 n ) + [K 0]( n×2 n ) = 0_ (2.35)
&x& x&
.
A eq. (2.35) possui “2n” incógnitas, logo impossível de serem determinadas.
x& x
[M 0] + [0 − M ] = _0 (2.36)
&x& x&
.
Resultando:
A
_U _ U& = _0
_ +B (2.37)
sendo,
K 0
A
_= (2.38)
0 − M
.
C M
B
_= (2.39)
M 0
.
U _ eλt ⇒ U& = λ_
_ =φ φeλt (2.40)
(A
_ + λ_
B)φ
_ = _0 (2.41)
.
14
autovalores e autovetores podem ser complexos conjugados, porém as matrizes A
_ eB
_
são reais.
Métodos consagrados como a iteração por subespaço (BATHE (1996)), não são
geral, o projeto de sistemas de absorção necessita que apenas poucos modos sejam
calculados. No entanto, a rotina QZ, apesar de bastante precisa, não permite essa
essa dificuldade, a solução adotada na época foi a utilização de uma estratégia de sub-
estruturação para reduzir a ordem das matrizes do problema. Porém, esta estratégia
LANCZOS (1950) e sua derivação pode ser justificada pelo subespaço de Krylov. O
15
Capítulo 3
3 Teoria Matemática
3.1 Introdução
n
_ - λ_I) = ∏(λ - λj)dj
pA = det(A (3.1)
j=1
.onde,
λ - Autovalor
_x - Autovetor
16
As raízes de (3.1) tornam a seguinte igualdade verdadeira:
A_
_ x = λ_x (3.2)
.
Na verdade x é chamado de autovetor à direita associado ao autovalor λ .
Ainda tem-se1:
_tHA
_ = λ_tH (3.3)
.onde,
t - Autovetor à esquerda.
autovetor à direita.
A_
_ x = λ_
B_x (3.4)
.
Onde,
B
_ - Matriz quadrada de ordem igual à matriz A
_.
espectro de A :
_ = {λ1,λ2,...,λn}
σ(A) (3.5)
.onde,
σ ( A) - Espectro de A .
1
Considerando a possibilidade da obtenção de autovalores e autovetores complexos, deve-se
generalizar o conceito de autovalor à esquerda adotando a operação de transposta-conjugada para
englobar as grandezas vetoriais complexas.
17
3.3 Subespaços invariantes e transformações similares
x ∈ S ⇒ Ax ∈ S , S ∈ C n (3.6)
onde,
Seja X a matriz cujas colunas contêm os vetores que formam uma base que
gera S e X satisfaz:
A
_X_ =X
_G_ (3.7)
.
E define-se o problema de Autovalor de G
_,
G_
_ y = λ_y (3.8)
.
Caso A
_ eG
_ sejam da mesma ordem:
G _ -1A
_ =X _X_ (3.9)
.
Substituindo-se (3.9) em (3.8), e pré-multiplicando ambos os lados da equação
por X , tem-se:
A
_X_ _y = λX
_ _y (3.10)
que toda matriz quadrada é unitariamente similar a uma matriz triangular superior R
_ :
18
Teorema 3.1 (Decomposição de Schur) (GOLUB , VAN LOAN (1997)) : “Seja
que” :
A
_Q_ =Q
_R_ (3.11)
onde,
Q _ HQ
_ - Matriz unitária, ou seja Q _= Q
_Q_ H = _I
R
_ - Matriz triangular superior, cujos elementos da diagonal principal são os
autovalores de A
_.
Quando A
_ é real e simétrica, seus autovalores são reais. Quando a matriz do
problema de autovalor padrão, eq. (3.2), deixa de ser simétrica seus autovalores
autovalores reais, para que isto ocorra, é necessário que qualquer combinação linear
de A
_ eB
_ seja positivo-definida.
a decomposição de Schur não pode ser obtida tal como foi expressa no Teorema 3.1,
pois R
_ não convergirá para uma matriz real e triangular superior com os autovalores
matriz quadrada é dita matriz de Hessenberg superior se os seus elementos hij forem
H=
_ U_T A
_U_ (3.12)
onde,
19
_ – Matriz ortogonal ∈ ℜ nxn
U
H
_ – Matriz real quadrada de ordem “n”.
H 11 H 12
H = (3.13)
0 H 22
.
Então, λ ( H ) = λ ( H 11 ) ∪ λ ( H 22 ) (3.14)
.
Baseado no lema (3.1), pode-se usar um método que faça com que os
definido por:
{ 2
K K ( A, v1 ) = gerado por v1 , Av1 , A v1 ,..., A
k −1
v1 } (3.15)
onde,
Kk – Subespaço de Krylov
w
_ = q (A)
_ v_1 (3.16)
20
Métodos de projeção nesse subespaço foram estudados e desenvolvidos por
<w
_ ,A_ _ ∈ Kk(A,
_ x -_x θ>=0, para todo w _ v_1) (3.17)
.
Onde,
P
_=W
_W_H (3.18)
onde,
P
_ – Projetor ortogonal em Kk(A,
_ v_1)
Pode-se definir:
Â=_
_ PA_ (3.19)
e,
_ W_HA
G= _W_ (3.20)
_x=W_
_ y com G_
_ y=_
y θ e independe da escolha da base ortonormal W
_ .
21
O lema (3.2) é uma consequência direta da imposição da condição de Galerkin
G_
_ y=_
yθ (3.21)
_ H(A
W _ W_
_ y-W_
_ yθ)=0 (3.22)
. Como _x = W_
_ y , e comparando com a condição de Galerkin ( eq. (3.17)), fica
condição.
seguinte forma:
V=
_ W_Q
_ (3.23)
onde,
Q
_ – Matriz unitária qualquer, de ordem k.
Utilizando a matriz V
_ , faz-se a seguinte mudança de base :
_ V_HA
H= _V_ (3.24)
_ Q_HW_HA
H= _W_Q
_ (3.25)
. E, substituindo (3.20):
_ Q_HG
H= _Q_ (3.26)
.
A eq (3.26) demonstra que H
_ é unitariamente similar à G
_ (vide eq. (3.9)), o
transformação unitária Q.
_ Como já foi explicado, matrizes semelhantes de mesma
22
ordem, possuem os mesmos autovalores o que resulta na conservação dos valores de
_x = W_
_y=V
_ _ŷ (3.27)
onde,
_x – vetor de Ritz
Sendo,
_ H_y
ŷ = Q (3.28)
polinômios, partindo do tratamento polinomial feito por SAAD (1992). Com base em
em quatro partes:
que k então:
q(A)
_ v1=q(Â)v
_ 1=Wq(
_ G)z
_ 1 (3.29)
onde,
v_1=Wz
_ 1 (3.30)
P
_q(A)
_ v_1=q(Â)v
_ 1 (3.31)
.
Demonstração:
A prova dessa parte do lema será feita por indução, assumindo que:
q(A)
_ v_1 = q(Â)
_ v_1 seja verdade, para q(t) = 1 é fácil concluir que realmente é
verdadeira a expressão.
23
Adota-se o sub-índice i para designar a ordem do polinômio, portanto:
qi(A)
_ v_1 = qi(Â)
_ v_1 (3.32)
.
Multiplicando ambos os lados por A:
_
qi+1(A)
_ v_1 = Aq
_ i(Â)
_ v_1 (3.33)
.
Se i+1 ≤ k-1, o vetor do lado esquerdo da equação pertence ao subespaço de
P
_qi+1(A)
_ v_1 = P
_Aq
_ i(Â)
_ v_1 (3.34)
.
_ v_1 ∈ Kk(A,
Deve-se notar que qi(Â) _ v_1) e recorrendo a eq. (3.19):
qi+1(A)
_ v_1 = qi+1(Â)
_ v_1 (3.35)
.
A eq. (3.35) prova a validade para i+1 ≤ k-1, falta ainda provar a validade para
i+1=k, para tanto basta multiplicar os dois lados da seguinte igualdade por P
_A:
_
qi-1(A)
_ v_1 = qi-1(Â)
_ v_1 (3.36)
.
Resultando em:
P
_qi(A)
_ v_1 = qi(Â)
_ v_1 (3.37)
.
Lema (3.3.b) (SAAD (1992)) – Se p̂ (λ)=det(G-λ_
_ I) é o polinômio
(1991)) e || p^(A)
_ v_1 || ≤ || q(A)v
_ 1 || , i.e., p̂ minimiza a norma de qualquer polinômio
mônico2 de grau k.
2
Um polinômio de grau n é dito como sendo mônico quando o coeficiente do termo de ordem mais alta
é igual a 1.
24
p̂ (Â)
_ =0 (3.38)
e portanto:
<P
_ p̂ (Â) _ = 0, ∀ w ∈ Kk(A,
_ v_1 , w) _ v_1) (3.40)
.
Como o projetor ortogonal P
_ é auto-adjunto:
< p̂ (Â)
_ v_1 , P _ = 0, ∀ w ∈ Kk(A,
_w> _ v_1) (3.41)
.
Como w
_ é um vetor pertencente ao Subespaço de Krylov:
w _jv_1
_ =A (3.42)
.
A eq. (3.41) pode ser escrita assim:
< p̂ (Â)
_ v_1 , P
_w>
_ = 0, j = 0,..., k-1 (3.43)
.
Escrevendo p̂ (t) = tk - s(t), onde s(t) é de ordem k-1, obtem-se:
_ k - s(A)
<A _jv_1 > = 0 , j= 0,..., k-1
_ v_1 , A (3.44)
.
O produto escalar representado na eq. (3.44) representa a minimização da
norma de q(A)
_ v_1 , sendo q(A)
_ um polinômio mônico de ordem k.
A
_ W_
_y-W _ y = γp^(A)v
_ G_ _ 1 , para qualquer escalar γ .
(3.45)
respeito a Kk(A,v
_ 1) então :
25
A_ xθ = γ p^(A)v
_x - _ _ 1 , para qualquer escalar γ. (3.46)
se que esse polinômio é simplesmente uma combinação linear dos vetores que
A
_ W_ _ yθ = γ p^(A)v
_ y - W_ _ 1 (3.47)
. Conforme (2.13.a):
A
_ W_
_y-W _ y = γ p^(A)v
_ G_ _ 1 (3.48)
dela, passo a passo, gerar os vetores dessa mesma base. Utilizando uma transformação
padrão de Householder (GOLUB, VAN LOAN (1996)) para gerar uma matriz unitária
Q
_ de ordem “k” , tal que:
v_1=V
_ e_1 (3.49)
onde,
V=
_ W_Q
_ (3.50)
,e,
_ Q_HG
H= _Q_ (3.51)
. De forma que H
_ seja uma matriz de Hessenberg superior com elementos da
Arnoldi:
26
_ V_k = V_kH_k + _fe_T
A (3.52)
onde,
_f = γ p^(A)v
_ 1 (3.53)
. Se todo w ∈ Kk(A,
_ v_1) e, portanto pode ser escrito tal como (1.17), Kk(A,
_ v_1) é um
contidos no espectro de A
_ , e os correspondentes vetores de Ritz são aproximações
para os autovetores de A
_.
no subespaço de Krylov. O método tem por objetivo reduzir uma matriz densa em
fazendo com que os autovalores e autovetores dessa matriz se aproximem dos valores
e vetores de Ritz, que por sua vez são aproximações para os autovalores e autovetores
da matriz de Hessenberg. Esse processo é feito em”k” passos de tal forma que k ≤ n, o
fato de k ser menor que n não é obstáculo para a obtenção de boas aproximações para
onde,
V_k – Matriz ∈ C nxn cujas colunas são vetores ortonormais, tal que V_kH_f = 0
27
H_k – Matriz de Hessenberg superior ∈ C nxn
passo vai se construindo os vetores da base ortonormal V_k , os vetores que formam as
colunas dessa matriz são conhecidos como vetores de Arnoldi. A mesma equação
provem da projeção ortogonal imposta pela condição de Galerkin (eq. (1.17)), uma
redução de A
_ para a forma de Hessenberg, igualando as primeiras “k” colunas em
H_k_
y = _yθ (3.55)
e,
x = V_k_
_ y (3.56)
onde,
βk = || f_k || (3.58)
Sendo (θ,_
x) um par de Ritz, conclui-se que :
θ = _yHH_k_ y)HA(
y = (V_k_ y) = _xHA_
_ V_k_ _x
(3.59)
x) || = | βke_kT_
|| r(_ y| (3.60)
28
Como o vetor _f pode ser caracterizado como o vetor resíduo da fatoração, é
problema e matriz V
_ é uma base de um subespaço invariante de A
_ . Como o processo
matriz bem próxima a matriz do problema. Essa perturbação pode ser vista quando se
Nesta seção serão considerados critérios para a avaliação de quão próximos são
autovalor/autovetor de A
_ se a último coordenada do autovetor de H_k tende a zero.
que implica que ela possui elementos diferentes de zero na sua subdiagonal, então:
| e_kTy_ | ≠ 0 (3.64)
.
Porém pode-se fazer com que a quantidade mostrada na eq. (3.64) seja pequena
se os elementos da matriz H
_ forem suficientemente distantes de zero. No que tange às
29
matrizes hermitianas (simétrico no que se refere ao conjunto dos números reais), um
da norma do vetor residual f_k não é suficiente para avaliar a acurácia dos autovalores,
dita defectiva se ela possui autovalores defectivos, por sua vez, um autovalor é dito
(WILKINSON (1965)).
(A
_ +E
_ )_
x=_
xθ (3.65)
onde,
_ = - ( e_kT_
E xH
y )_ (3.66)
.
Quando se faz referência a um problema hermitiano (simétrico) basta que || f_k ||
ou | e_kT_y | seja pequeno para que a aproximação seja suficientemente acurada, mas,
nos casos não-hermitianos e não simétricos, essa condição não basta. O teorema (2.2)
seja θ um autovalor de A
_ +E
_ , ou seja θ é uma aproximação de λ. Denota-se _s e x_
associados a λ, então:
|| E
_ ||
|λ-θ|≤ H + O( || E
_ ||2) (3.67)
|| _y _x ||
.
30
No caso hermitiano (simétrico), _y = x_ , logo || _yH_x || = 1 e por isso θ é uma boa
onde tol indica a tolerância do algoritmo, sendo definida pelo usuário, caso nenhuma
tolerância seja especificada recomenda-se usar tol = εmach , onde εmach é a precisão da
máquina, que mede a precisão dos números em ponto flutuante do sistema. Ficará
com Reinício Implícito, o qual foi o método escolhido (os motivos também serão
apresentados).
31
Capítulo 4
4 Implementação Numérica
4.1 Introdução
autovalores do problema físico. Para esta aproximação foi utilizada uma técnica que
reduzido.
em k-Passos:
32
Entrada : ( A, v 1 )
v1
; w = Av 1 ; α = v 1 w;
H
v1 =
v1
f 1 = w − α v 1 ;V 1 = (v 1 ); H 1 = (α );
Para j = 1,2,..., k − 1
f
(a.1) β j = f j ; v j +1 =
j
;
βj
Hj
(a.2)V = (V j , v j +1 ); Hˆ j = ;
β je j
j +1 T
(a.3) w = Av j +1 ;
H
(a.4)h = V j +1 w; f j +1
= w −V j +1 h;
(a.5) H j +1 (
= Hˆ j , h ; )
Fim do Para
O algoritmo da Figura 4.1 obtém após “k” passos a matriz de Hessenberg (H),
_ a
do processo está diretamente relacionada com a escolha do vetor de partida v_1 . Se v_1
for uma combinação linear dos “k” autovetores, então o vetor resíduo f_k (calculado no
passo (a.4) do algoritmo) é nulo, isto significa que o subespaço de Krylov gerado é
A.
_
aumentando a sua ordem a cada iteração. Desse processo resulta uma matriz V
_ (ordem
33
h11 h12 h13 h14 h15
h h22 h23 h24 h25
12
_m = 0
H h32 h33 h34 h35 (4.1)
0 0 h43 h44 h45
0 0 0 h54 h55
isso foi usado, quando possível, rotinas que efetuem essas operações, aproveitando o
máximo possível a estrutura esparsa da matriz, bem como sua simetria (quando o
No entanto para algumas simulações realizadas pôde-se verificar que isto não é um
grande empecilho para o processo. Isto vem a comprovar que o par de Ritz independe
processo pode ser melhorada com o aumento do número de passos “k”. Porém à
medida que o número de passos cresce, há perda da ortogonalidade da matriz V_k. Essa
preponderante é que fica proibitivo um grande número de passos, pois como a ordem
implica que serão necessárias O(k3) operações para a obtenção dos autovalores da
referida matriz. Será exposto no próximo item o procedimento para atingir uma boa
passos.
34
4.3 Método de Arnoldi com Reinício Implícito
espectro desejado.
Hessenberg obtida após “m” passos do método de Arnoldi, onde m pode ser definido
H.
_ Esse método ficou conhecido como Método de Arnoldi com Reinício Implícito,
IRAM para simplificar (obedecendo as iniciais do método na língua inglesa, tal como
35
(
Entrada A, V m , H m , f m
) Obtidos após m passos do algoritmo da figura 1
Para l = 1,2,..., até convergência
(b.1) Calcular o espectro de H m e selecionar p deslocamentos µ1 , µ 2 ,..., µ p
H T
(b.2)q = em ;
(b.3) Para j = 1,2,...,p
[ ]
(b.4) Fatorar Q, R = qr ( H m − µ j );
H
(b.5) H m = Q H m Q;V m = V m Q;
H
(b.6)q = q Q;
Fim de para
(b.7) f k
= v k +1 β k + f mσ k ;
(b.8)V k = V m (1 : n,1 : k ); H k = H m (1 : k ,1 : k );
(b.9) Recomeçar uma nova Decomposição com o Método de Arnoldi
partindo do k-ésimo passo, aplicando mais “p” passos até atingir uma
nova “m-step Arnoldi Factorization”
Teste de Convergência
Fim de Para
Arnoldi em “p” passos adicionais partindo do k-ésimo passo, de tal forma que os
elementos da subdiagonal de H
_ tendam a zero. O número de deslocamentos a serem
dados na matriz H
_ é igual ao número de autovalores desejados, e os valores adotados
Conforme pode ser visto na Figura 4.2, no início do algoritmo o passo (b.9) faz uso do
algoritmo mostrado na Figura 4.1. Deve-se destacar que para o passo (b.9) o
_ k,H
matrizes V _ k, e o vetor _fk . Deve-se destacar que não é necessário recalcular os
primeiros “k” passos a cada iteração, basta tomar uma submatriz de ordem “k” da
_ k, bastando tomar as
matriz de Hessenberg, o mesmo ocorrendo com a matriz V
36
tem sua ordem acrescida a cada passo e é adicionada a matriz V
_ uma nova coluna
como já foi descrito no item anterior. Por exemplo, dado um problema de autovalor
do qual se desejam obter os “p” autovalores de menor magnitude, deve-se utilizar “p”
Duplo desenvolvido por FRANCIS (1961). Nesse procedimento são aplicados dois
v + = q(A)
_ _ v_1 (4.2)
onde,
q(A)_
_ x = q(λ)_
x (4.3)
. A escolha ideal para o vetor de partida v_1 é uma combinação linear dos
autovetores:
37
v_1 = a1x_1 + ... + anx_n (4.4)
onde,
Pode-se verificar a partir da eq. (4.5) que quanto maior for o número de termos
subespaço de Krylov. Isto implica que mesmo que o número de autovalores desejados
4.2. O polinômio que será usado no vetor de partida funciona como um filtro
partida é :
v+ = ψ(A)_
_ _ v1 (4.6)
onde,
p
ψ(λ) = ∏(λ - µj) (4.7)
1
sendo,
38
µj – São os deslocamentos escolhidos de acordo com o espectro desejado.
_ TH_mQ
H_m + = Q _
A matriz ortogonal Q
_ também é Hessenberg superior.
A primeira coluna de Q
_ atende a seguinte equação:
Q
_ e_1 = α( Hm -_µp_I )( H_m - µp-1_I )...( H_m - µ1_I )e_1 (4.8)
onde,
α – é um escalar qualquer.
fatoração QR (para mais detalhes ver FRANCIS (1961)). A prova para a terceira
Q _ 1Q
_ =Q _2 (4.9)
R
_ =R
_ 2R
_1 (4.10)
onde,
_ (2) = Q
H _ T (1) H
_ (1) Q
_ (1) e assim em diante.
39
E dessa forma:
_ (1) - µ2_I )( H
= (H _ (1) -µ1_I )
definição:
( H_m - µ_I ) = Q_
_R (4.11)
e, por definição:
H _ TH_mQ
_ +=Q _ (4.12)
V
_ +=V
_ mQ
_ (4.13)
logo,
V
_m = V _T
_ +Q (4.14)
A
_V_m = V _ m + _f me_mH
_ mH (4.15)
3
A fatoração QR decompõe uma matriz qualquer, obtendo duas matrizes uma ortogonal, outra
triangular superior.
40
Adicionado aos dois lados da eq. o termo -µ_I:
A
_V_ m -µ_I = V _ m -µ_I + _f me_mH e reorganizando de tal modo que:
_ mH
(A _m = V
_ -µ_I )V _ m - µ_I ) + _fm_emH
_ m( H (4.16)
(A _m - V
_ -µ_I )V _ R ) = _fm_emH
_ m( Q_ (4.17)
A
_V_ mQ
_ -V
_ mQ(
_ R _ + µ_I ) = _fm_emHQ
_Q _ (4.18)
_+ = ( R
.É fácil mostrar que H _Q_ - µ_I ) e recorrendo à eq. (4.13):
A
_V_+ = V _ + + _fm_emHQ
_ +H _ (4.19)
matriz resultante é:
onde,
A
_V_+ = V _ + + _f+_emH
_ +H (4.21)
dela que serão aplicados mais “p” passos para se obter a nova Fatoração de Arnoldi
41
Fatoração QR com Deslocamentos Implícitos a matriz de Hessenberg tem o seguinte
Hessenberg obtida no Método de Arnoldi, (vide eq. (4.1)) pode-se observar que essa
nova matriz é mais próxima a uma matriz triangular superior. As aproximações para
diagonal principal.
convergência dos autovalores calculados como mostrado na Figura 4.2. Como critério
do problema padrão pode ser usado para o problema generalizado, bastando apenas
núcleo do processo.
42
4.4 O problema de autovalor generalizado
apresenta na sua forma generalizada, como, por exemplo, são as eqs. (3.10) e (3.41).
fazem com que o método para o problema padrão possa ser usado para o problema
generalizado.
problema padrão:
C
__
x = λ_
x (4.23)
onde,
C _ -1A
_ =B _ (4.24)
.
O que do ponto de vista da álgebra linear é coerente, numericamente pode trazer
aqui analisados. Há duas alternativas para se evitar o uso da eq. (4.24) no processo de
cálculo dos autovalores. Uma alternativa para esse problema é obter a forma padrão
1. Produto Matriz-vetor: _z = A_
_v ;
B
_w_ = _z (4.25)
43
Tratando especificamente do problema de autovalor generalizado cujas matrizes
foram expressas nas eqs. (2.38) e (2.39), foi constatado que o uso de métodos diretos
ν = || B _ -1 ||
_ || · || B (4.26)
onde,
singularidade, logo ν tem que ser um número de valor absoluto modesto, é claro que
comportamento da matriz.
COUTINHO (2002b) sugeriu que fosse adotada uma estratégia que aproveitasse o
particionamento da matriz B
_ (ver eq. (2.39)) recorrendo-se diretamente às matrizes de
massa e amortecimento da estrutura. Dessa forma a eq. (4.25) pode ser reescrita da
seguinte maneira:
ou então:
C
_ w_1 + M_ w_2 = z_1 (i)
(4.28)
_ w_1 = z_2 ( ii )
M
44
Após reescrever as eqs. , resolve-se o sistema de equações (ii) em função de
w_1 e em seguida substituí-lo em (i) obtendo-se dessa forma w_2. Testes realizados com
SAAD (1981) mostrou que o Subespaço de Krylov pode ser usado na solução de
(JIA (2000)) utilizando o mesmo algoritmo apresentado na Figura 4.1, fazendo apenas
inicial r_o = _z - B
_ wo , esse vetor resíduo será usado para gerar o Subespaço de Krylov
utilizado no algoritmo:
Entrada: (B;ro,tol)
ro
v1 = || r ||;
o
Para j = 1,2,...,até convergência
u = Bvj ;
Para i = 1,2,...,j
h = v Hu; u = u - h v
i,j i i,j i
u
hj+1,j = || u ||; vj+1 = h ;
j+1,j
Fim de Para
Resolver o sistema:
Hjyj = βei, onde β = || ro ||
tj = Vjyj; wj = wo + tj; onde Vj = (v1,v2,...,vj)
Calcular a norma do vetor rj:
|| r || = h | (e )Ty |
j j+1,j j j
Testar a convergência: Se || rj || ≤ tol então fim, se
não continue
Fim de Para
45
equações representado por:
H
_jy_j = βe_1 (4.29)
A solução desse sistema pode ser obtida de uma maneira mais “barata” em
termos computacionais (JIA (2000)), após uma primeira inversão da matriz através da
−1 H −j 1c j d Tj H −j 1 H −j 1c j
H j + −
u j +1, j +1 u j +1, j +1
H_j+1-1 = (4.30)
d H −1
T
1
− j j
u j +1, j +1 u j +1, j +1
onde,
46
4.5 Transformação Espectral
calculados sejam uma boa aproximação, pois ela ignora a influência do mal
dos autovalores e o ângulo entre os subespaços invariantes também são fatores que
espectro que se deseja obter. Esse método consiste em se realizar uma transformação
Método de Arnoldi com Reinício Implícito. A essa transformação foi dado o nome de
A_
_ x = λ_
B_x
Nos dois lados da equação do problema original será introduzido mais um termo
e mantendo a igualdade:
A_
_ x - µ_
B_x = λ_
B_x - µ_
B_x (4.34)
.
Reorganizando a (4.34) obtém-se:
(A B )-1 B
_ - µ_ __x = τ_
x (4.35)
.onde,
1
τ= λ-µ (4.36)
.
47
Os novos autovalores a serem calculado são τ a equação que se deve recorrer
1
λ=µ+ τ (4.37)
deve-se estar atento ao seguinte detalhe: caso se deseja calcular o menor espectro do
1. Produto Matriz-vetor: _z = B
_ _v ;
(A
_ - µ_
B )w
_ = _z (4.38)
isso foi implementada uma rotina que para um dado autovalor da matriz de
Hessenberg, é obtido seu respectivo autovetor através de iteração inversa. Para tal foi
(eq. (3.55)), para obter o autovetor do problema original é necessário fazer uso da
48
seguinte equação:
_x = V
_ m_
y (4.39)
onde,
49
Capítulo 5
5 Aplicações
dois exemplos: um problema padrão e outro generalizado. Para este último foram
métodos, serão descritos os parâmetros que serão usados para realizar as avaliações e
comparações.
equações:
rj = || A_
_ x - λj _
x || (5.1)
onde,
autovetor.
rj = || A_
_ x - λj B
__
x || (5.2)
50
O erro do processo é estimado calculando a norma do vetor _r, cujos elementos
Erro = || _r || (5.3)
.
Deve-se lembrar que uma norma do vetor resíduo nula implica que os autovalores
frequências sejam conhecidos, os mesmos serão citados e usados como parâmetros para
51
Foram escolhidos quatro exemplos, sendo o primeiro exemplo um problema de
IV).
O primeiro exemplo é uma matriz que é comumente usada para testar algoritmos
como um teste inicial da rotina para esse tipo de problema, uma vez que o número de
aproximadamente cinco vezes maior. O quarto exemplo tem como objetivo avaliar a
Como primeiro problema a ser usado como teste, foi selecionada a matriz de
Wilkinson de ordem cem, matriz esta gerada pelo programa MATLAB® (MARCUS
distintos, porém muito próximos um dos outros. Para gerá-la basta passar como
52
Antes do teste, foi feita uma avaliação da influência do número de passos “m”
Hessenberg (vide algoritmo da figura 4.2). O objetivo é tentar alcançar uma relação
processamento.
A Tabela 5.1 e Tabela 5.2 mostram as variações dos parâmetros escolhidos para
análise, sendo que na primeira estão mostrados os valores associados aos três
autovalores computados
53
Tabela 5.2 - Parâmetros do teste realizado com a matriz de Wilkinson, 15
autovalores computados
4.2), após “m” passos realizados pelo algoritmo de Arnoldi (vide figura 4.1), é
requeridos. Isto explica o acréscimo de tempo na Tabela 5.2 em relação à Tabela 5.1.
Pode-se ainda observar nestas tabelas que à medida que o número de passos “m”
existência de um valor ótimo para “m” de maneira que possa minimizar o tempo de
CPU gasto.
adotado “m” igual a 30 passos, uma vez que para essa quantidade foi obtido o melhor
54
desempenho para o cálculo de 15 autovalores. Cabe lembrar que o número de passos
à metodologia citada no item 4.4 para realizar a transformação para o problema padrão.
Também não foi usada a técnica de transformação espectral (vide item 4.5).
(1996)). O inconveniente dessa rotina do IMSL é que o seu uso implica no cálculo de
COPPEPACK
1,82395 x 10-14 0,25034
Como pode ser visto na Tabela 5.3, o pior desempenho foi o da rotina do pacote
IMSL. Isto pode ser perfeitamente justificado, pois o algoritmo QR com Deslocamento
Duplo, calcula todos os autovalores, não conseguindo calcular apenas uma porção do
55
desenvolvida apresentaram desempenhos bastante semelhantes demonstrando assim a
calculada.
satisfatórios. O ARPACK mostrou-se ser o mais preciso dos três, considerando que este
exemplo trata-se de um problema que tem muitos autovalores próximos um dos outros.
usada para testes com pessoas saltando ou dançando. O objetivo é caracterizar cargas
plataforma foi discretizada como uma viga bi-apoiada em elementos finitos lineares de
na Tabela 5.4..
(Hz)
56
Os resultados numéricos e experimentais estão bem ajustados, considerando os
agora, a simulação numérica será realizada com a adição de três sistemas de absorção,
distância do vão em relação a cada um dos dois apoios. Os sistemas de absorção foram
adotada foi a já citada no Capítulo 4 (vide item 4.4) sugerida por COUTINHO. Ao
solução de sistemas lineares (vide figura 4.3). Para este exemplo também foram
realizados os mesmos testes a fim de determinar uma relação entre o número de passos
57
Desempenho do COPPEPACK - Caso II
3,5
3
Tempo de CPU
2,5
2
COPPEPACK
1,5
1
0,5
0
0 10 20 30 40 50
Núme ro de Autov alore s
58
ser reduzido aumentando-se o número de passos “m”, porém este aumento conduziria a
um acréscimo do tempo de CPU.
A discretização dessa estrutura também foi feita com elementos finitos de pórtico
Como nos exemplos anteriores, também foram realizados testes para estabelecer a
tempo de processamento. Para este caso o número de passos utilizados foi 45, e para
59
A estratégia para a solução do sistema de equações originado pelo problema
pode ser adotado sem abdicar da precisão necessária para o modelo. A Tabela 5.5 mostra
os resultados obtidos:
exemplo anterior. Deve-se ressaltar que para esta análise seriam necessários apenas os
60
Dsempenho do COPPEPACK
18
16
14
Tempo de CPU
12
10
COPPEPACK
8
6
4
2
0
0 10 20 30 40 50
Número de Autovalores
pelo COPPEPACK
que ambos são satisfatórios, porém a rotina COPPEPACK se mostrou mais precisa.
Através dos resultados obtidos neste exemplo e no anterior, pode-se concluir que as
Carapeba
Este exemplo, trata-se de uma estrutura offshore mostrado na Figura 5.4, a qual
61
Figura 5.4 –Plataforma Offshore de Carapeba, discretizada em elementos
finitos, vista 3D
com um número maior de graus de liberdade. Para atingir este objetivo, os resultados
(1996)). Esta rotina pôde ser utilizada uma vez que as matrizes são simétricas e
espacial, ficando discretizada com 165 nós e 416 elementos. A esparsidade das
62
GADEA em seu trabalho de identificação de danos estruturais através da Função
naturais associadas aos modos globais. Testes realizados por GADEA revelaram que
são necessários 40 autovalores para a obtenção dos modos globais que interessavam na
análise.
para problemas que necessitem de poucos autovalores, no máximo 20. E que para
muito rapidamente. Isto pode ser visto na Tabela 5.6, a qual mostra a comparação dos
Tabela 5.6 –Comparação dos Tempos de Cpu para diferentes autovalores entre o IRAM e
Subespaço
Autovalores
Número de
Utilizada
Rotina
10 25 30 40 50 100
63
Conforme pode ser observado nesta tabela os tempos de CPU gastos pelo
computacional da rotina.
ordem de grandeza, cerca de 1,0 x 10-9, o que é considerado bastante aceitável. Vale a
IRAM não é dependente do vetor de partida, pois para todos os casos simulados foram
64
Capítulo 6
problema, deve-se utilizar o Método de Arnoldi com Reinício Implícito aliado a uma
que contenha os autovalores desejados. Deve-se destacar que esta transformação não
garante que os autovalores da matriz de Hessenberg, que estejam fora desse espectro,
65
A combinação do número de passos e números de iterações pode ser utilizada de
sorte a diminuir o tempo gasto para a solução do problema, sem abrir mão da
algoritmo usado para o problema de autovalor. Esta estratégia evita assim qualquer
técnica que recorra a uma transformação direta por via da inversão de matrizes,
podendo desse modo transformar um problema esparso num problema com matrizes
cheias. Esta operação matricial pode levar a uma perda das vantagens que se pode
tirar da esparsidade de uma matriz por ser o Método de Arnoldi um método que
preocupar com os detalhes do Método, tais como: técnicas usadas para transformação
autovalores.
questionamentos, os quais, devido ao tempo exíguo, não puderam ser resolvidos e/ou
66
principalmente de uma investigação mais criteriosa sobre o método
equações lineares.
Métodos das Diferenças Finitas, etc, pois quase todos os testes realizados
Finitos.
computacional possível.
67
7 Referências Bibliográficas
Philadelphia.
ARNOLDI, W. E., 1951, In: “The principle of minimized iterations in the solution
New York.
Engenharia Estrutural.
Cambridge, U.K. .
68
FRANCIS, J. G. F., 1961, In: “The QR transformation”. The Computer Jounal,
4:265-271.
Engenharia Civil.
Inc., Houston.
JIA, Z., 2000, In: “Some Recursions on Arnoldi's Method and IOM for Large Non-
39:125-129 .
LANCZOS, C., 1950, In: “An iteration method for the solution of the eigenvalue
SIAM, Philadelphia.
69
MAGLUTA, C., 1993, Sistemas Dinâmicos Passivos para Absorção de Vibrações
MARCUS, A., 1993, Engineering Programming HandBook, The Math Works Inc,
Natic, MA.
MOLER, J., STEWAR, G. W., 1973, In: “The QZ Algorithm”, Linear Algebra
Appl., 143:19-47.
SAAD, Y., 1996, Iterative Method for Solution of Sparse Systems, Halsted Press.
SAAD, Y., 1992, Numerical Methods for Large Eigenvalue Problems, Halsted
Press.
70
SORENSEN, D. C., 1992, In: “Implicity aplicattion of polynomial filter in a k-step
143:19-47.
Canbridge,UK.
71