?? sor.txt
字號:
Sub SOR(A(), B(), C(), D(), E(), F(), U(), JMAX, RJAC)
MAXITS = 1000
EPS = 0.00001
ZERO = 0#
HALF = 0.5
QTR = 0.25
ONE = 1#
ANORMF = ZERO
For J = 2 To JMAX - 1
For L = 2 To JMAX - 1
ANORMF = ANORMF + Abs(F(J, L))
Next L
Next J
OMEGA = ONE
For N = 1 To MAXITS
ANORM = ZERO
For J = 2 To JMAX - 1
For L = 2 To JMAX - 1
If (J + L) Mod 2 = N Mod 2 Then
AAA = A(J, L) * U(J + 1, L) + B(J, L) * U(J - 1, L)
BBB = C(J, L) * U(J, L + 1) + D(J, L) * U(J, L - 1)
RESID = AAA + BBB + E(J, L) * U(J, L) - F(J, L)
ANORM = ANORM + Abs(RESID)
U(J, L) = U(J, L) - OMEGA * RESID / E(J, L)
End If
Next L
Next J
If N = 1 Then
OMEGA = ONE / (ONE - HALF * RJAC ^ 2)
Else
OMEGA = ONE / (ONE - QTR * RJAC ^ 2 * OMEGA)
End If
If N > 1 And ANORM < EPS * ANORMF Then Exit Sub
Next N
Print " MAXITS exceeded"
End Sub
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -