?? spline.txt
字號:
Sub SPLINE(X(), Y(), N, YP1, YPN, Y2())
Dim U(100)
If YP1 > 9.9E+29 Then
Y2(1) = 0
U(1) = 0
Else
Y2(1) = -0.5
AAA = (Y(2) - Y(1)) / (X(2) - X(1))
U(1) = (3# / (X(2) - X(1))) * (AAA - YP1)
End If
For I = 2 To N - 1
SIG = (X(I) - X(I - 1)) / (X(I + 1) - X(I - 1))
P = SIG * Y2(I - 1) + 2#
Y2(I) = (SIG - 1#) / P
AAA = (Y(I + 1) - Y(I)) / (X(I + 1) - X(I))
BBB = (Y(I) - Y(I - 1)) / (X(I) - X(I - 1))
CCC = X(I + 1) - X(I - 1)
U(I) = (6# * (AAA - BBB) / CCC - SIG * U(I - 1)) / P
Next I
If YPN > 9.9E+29 Then
QN = 0#
UN = 0#
Else
QN = 0.5
AAA = YPN - (Y(N) - Y(N - 1)) / (X(N) - X(N - 1))
UN = (3# / (X(N) - X(N - 1))) * AAA
End If
Y2(N) = (UN - QN * U(N - 1)) / (QN * Y2(N - 1) + 1#)
For K = N - 1 To 1 Step -1
Y2(K) = Y2(K) * Y2(K + 1) + U(K)
Next K
End Sub
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -