행렬 값 연속 분수에 대한 효율적인 알고리즘이 있습니까?


18

재귀 적으로 다음과 같이 정의 된 행렬 방정식이 있다고 가정합니다.

A[n] = inverse([1 - b[n]A[n+1]]) * a[n]

그런 다음 A [1]에 대한 방정식은 지루한 재 계산을 피하는 매우 효율적인 방법이있는 연속 분수와 유사합니다 (일부 예는 "수치 레시피"참조).

그러나 계수 b [n] 및 a [n]을 행렬로 만드는 유사한 방법이 있는지 궁금합니다. b [n] A [n + 1]이 정사각 행렬이어야한다는 제약이 있습니다.

1 - b[n]A[n+1]

실제로 뒤집을 수 없습니다.


이것은 몇 달 전에 math.SE에서 질문 한 질문입니다. 가 정사각형 또는 직사각형은? ㅏ
— JM

나는 math.SE의 의견에 누군가가 베타 버전이 온라인 상태가되면 여기에 물어 보라고 제안했습니다 :) 내 특별한 경우, A는 직사각형입니다. 재귀 방정식은 계층 적 방정식 세트에 해당하며 수량은 으로 증가 합니다. 필자의 경우, A [n]의 차원은 nx (n-1)입니다.n
— Lagerbaer

궁금한 점이 있습니다.이 응용 프로그램을 사용하려는 응용 프로그램은 무엇입니까?
— Hjulle

1
간단히 말해 특정 Hamiltonian에 Dyson의 ID를 사용하면 특정 인덱스 레이블을 지정할 수있는 Green의 함수가 생성됩니다 . 벡터로 인덱스와 같은 모든 기능들을 수집 V N은 저 쓸 수 V N을 = α N V N - 1 + β N V N + 1 다이슨의 ID 및 적절한 근사치를 사용. 너무 상처를 오프 사용 V N은 = 0 모든 N ≥ N은 나를 행렬을 찾을 수 있습니다 N 그래서 V의 NNV엔V엔=α엔V엔−1+β엔V엔+1V엔=0엔≥엔ㅏ엔 그리고이 행렬들은 저의 연속 분수 스타일 방정식으로 주어집니다. 이 기술은 예를 들어 타이트 바인딩 모델에 대한 격자 그린의 기능을 계산할 수 있습니다. V엔=ㅏ엔V엔−1
— Lagerbaer

1
그것은 내 분야가 아니지만이 문제와 관련된 것이 제시 된 세미나에서 잠시 돌아 왔습니다. [여기] [1]은 온라인에서 찾을 수있는 유일한 흔적입니다. 나는 그것이 도움이되는지 정말로 모른다. [1] : mh2009.ulb.ac.be/ResActiv.pdf
— user189035

답변:


9

행렬 함수에 다음 두 가지 방법이 제공 됩니다. Nicholas Higham의 이론 및 계산 , 81 페이지

여기서X는 정사각 행렬입니다.

아르 자형(엑스)=비0+ㅏ1엑스비1+ㅏ2엑스비2+⋯+ㅏ2미디엄−1엑스비2미디엄−1+ㅏ2미디엄엑스비2미디엄
엑스

하향식 방법 :

피−1=나는,큐−1=0,피0=비0나는,큐0=나는

j = 1 : 2 분

피제이=비제이피제이−1+ㅏ제이엑스피제이−2

큐제이=비제이큐제이−1+ㅏ제이엑스큐제이−2

종료

아르 자형미디엄=피2미디엄큐2미디엄−1


상향식 방법 :

와이2미디엄=(ㅏ2미디엄/비2미디엄)엑스

j = 2m−1 : −1 : 1의 경우

해결 대 Y의 J(비제이나는+와이제이+1)와이제이=ㅏ제이엑스와이제이 .

종료

아르 자형미디엄=비0나는+와이1


질문은 더 일반적인 형태의 평가를 요구합니다

비0+ㅏ1엑스1비1+ㅏ2엑스2비2+⋯+ㅏ2미디엄−1엑스2미디엄−1비2미디엄−1+ㅏ2미디엄엑스2미디엄비2미디엄

이것은 위의 공식을 간단히 일반화하여 평가할 수 있습니다. 예를 들어 상향식 방법은

와이2미디엄=(ㅏ2미디엄/비2미디엄)엑스2미디엄

j = 2m−1 : −1 : 1의 경우

해결 대한 Y J .(비제이나는+와이제이+1)와이제이=ㅏ제이엑스제이와이제이

종료

.아르 자형미디엄=비0나는+와이1


이것은 매우 흥미로운 것 같습니다. 난 내 특정 문제에 적용 할 수 있는지하지만 내 B [N] * A는 [N + 1] 정방 행렬이기 때문에 질문에 대한 답
— Lagerbaer

아,하지만 방금 매트릭스 가 솔루션의 모든 곳에서 동일하다는 것을 알았지 만, 반드시 내 것은 아닙니다. 엑스
— Lagerbaer 2013

좋아, 나는 그것을 일반화했다.
— David Ketcheson

6

나는이 대답이 많은 가정을한다는 것을 알고 있지만 적어도 알고리즘을 일반화합니다.

한다고 가정 , { B의 N } , 상기 시드 행렬 V N 정규 행렬의 고유 값 분해의 통근 가족 모든 형태 { N } 및{ㅏ엔}{비엔}V엔{ㅏ엔}{비엔}유'V엔유=Λ엔유'ㅏ엔유=Ω엔유'비엔유=Δ엔유Λ엔{Ω엔}{Δ엔}

일단 유도에 의해 분해를 말하면,

V엔=(나는−비엔V엔+1)−1ㅏ엔=(나는−유Δ엔유'유Λ엔+1유')−1유Ω엔유',

형태로 재 배열 될 수 있습니다

V엔=유(나는−Δ엔Λ엔+1)−1Ω엔유'≡유Λ엔유',

Λ엔{V엔}Λ엔V엔

ㅏ엔≡α엔나는비엔≡β엔나는V엔

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.