현재 Briggs et al, 8 장의 "A Multigrid Tutorial"을 사용하고 있습니다.
그런 다음 제한 연산자와 미세 그리드 연산자의 구성은 다음과 같습니다.
x1, x1, x2의 3 개의 그리드 포인트가 있고 중간 x1은 괜찮고 다른 하나는 거칠다고 가정 해 봅시다. 중간은로 보간됩니다 x1 = x0*w0 + x2*w2
. 따라서 보간 연산자는 Matlab에 있습니다.
I = [1, 0, 0; w0, 0, w2; 0, 0, 1]
I =
[ 1, 0, 0]
[ w0, 0, w2]
[ 0, 0, 1]
제한 연산자는 다음과 같습니다.
transpose(I)
ans =
[ 1, w0, 0]
[ 0, 0, 0]
[ 0, w2, 1]
이제 하나가 보간 직접 다음 제한하고한다면 어떤 결과의 곱셈에, 무슨 일이 일어날 지 보자 I
과 transpose(I)
:
I*transpose(I)
ans =
[ 1, w0, 0]
[ w0, w0^2 + w2^2, w2]
[ 0, w2, 1]
이 행렬은 항등 행렬과 같거나 적어도 규범 1 또는 무언가를 가질 것으로 기대합니다. 그러나 w0 = w2 = 0.5라고하면 x = [1, 1, 1]을 적용하면 [1.5 1.5 1.5]가됩니다. 반복적으로 적용되는 제한 보간 연산은 적어도 무언가에 수렴한다고 가정합니다. 그러나 아닙니다.이 경우 모든 벡터 구성 요소에 모든 제한 보간에 1.5가 곱해집니다. 나에게는 매우 이상해 보인다.
아무도 무슨 일인지 설명 할 수 있습니까?
1