⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 difeq.txt

📁 VB常用数值算法集1 VB常用数值算法集1
💻 TXT
字号:
Sub DIFEQ(K, K1, K2, JSF, IS1, ISF, INDEXV(), NE, S(), NSI, NSJ, Y(), NYJ, NYK)
    M = 41
    If K = K1 Then
        If N + MM Mod 2 = 1 Then
            S(3, 3 + INDEXV(1)) = 1#  '方程(15-37)
            S(3, 3 + INDEXV(2)) = 0#
            S(3, 3 + INDEXV(3)) = 0#
            S(3, JSF) = Y(1, 1)       '方程(15-31)
        Else
            S(3, 3 + INDEXV(1)) = 0#  '方程(15-37)
            S(3, 3 + INDEXV(2)) = 1#
            S(3, 3 + INDEXV(3)) = 0#
            S(3, JSF) = Y(2, 1)       '方程(15-31)
        End If
    ElseIf K > K2 Then
        S(1, 3 + INDEXV(1)) = -(Y(3, M) - C2) / (2# * (MM + 1#))  '方程(15-38)
        S(1, 3 + INDEXV(2)) = 1#
        S(1, 3 + INDEXV(3)) = -Y(1, M) / (2# * (MM + 1#))
        S(1, JSF) = Y(2, M) - (Y(3, M) - C2) * Y(1, M) / (2# * (MM + 1#)) '方程(15-32)
        S(2, 3 + INDEXV(1)) = 1#  '方程(15-39)
        S(2, 3 + INDEXV(2)) = 0#
        S(2, 3 + INDEXV(3)) = 0#
        S(2, JSF) = Y(1, M) - ANORM  '方程(15-33)
    Else
        S(1, INDEXV(1)) = -1#  '方程(15-34)
        S(1, INDEXV(2)) = -0.5 * H
        S(1, INDEXV(3)) = 0#
        S(1, 3 + INDEXV(1)) = 1#
        S(1, 3 + INDEXV(2)) = -0.5 * H
        S(1, 3 + INDEXV(3)) = 0#
        TEMP = H / (1# - (X(K) + X(K - 1)) ^ 2 * 0.25)
        TEMP2 = 0.5 * (Y(3, K) + Y(3, K - 1)) - C2 * 0.25 * (X(K) + X(K - 1)) ^ 2
        S(2, INDEXV(1)) = TEMP * TEMP2 * 0.5  '方程(15-35)
        S(2, INDEXV(2)) = -1# - 0.5 * TEMP * (MM + 1#) * (X(K) + X(K - 1))
        S(2, INDEXV(3)) = 0.25 * TEMP * (Y(1, K) + Y(1, K - 1))
        S(2, 3 + INDEXV(1)) = S(2, INDEXV(1))
        S(2, 3 + INDEXV(2)) = 2# + S(2, INDEXV(2))
        S(2, 3 + INDEXV(3)) = S(2, INDEXV(3))
        S(3, INDEXV(1)) = 0#  '方程(15-36)
        S(3, INDEXV(2)) = 0#
        S(3, INDEXV(3)) = -1#
        S(3, 3 + INDEXV(1)) = 0#
        S(3, 3 + INDEXV(2)) = 0#
        S(3, 3 + INDEXV(3)) = 1#
        S(1, JSF) = Y(1, K) - Y(1, K - 1) - 0.5 * H * (Y(2, K) + Y(2, K - 1))  '方程(15-26)
        DUM = (X(K) + X(K - 1)) * 0.5 * (MM + 1#) * (Y(2, K) + Y(2, K - 1))    '方程(15-27)
        DUM = DUM - TEMP2 * 0.5 * (Y(1, K) + Y(1, K - 1))
        S(2, JSF) = Y(2, K) - Y(2, K - 1) - TEMP * DUM
        S(3, JSF) = Y(3, K) - Y(3, K - 1)  '方程(15-30)
    End If
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -