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

📄 nlmtclmainmodule.bas

📁 求解非线性方程的方法
💻 BAS
字号:
Attribute VB_Name = "MainModule"
Sub Main()
    Dim b As Double
    Dim m As Integer, n As Integer
    Dim y As Double
    Dim s As String
    
    ' 3元方程组
    n = 3
    
    ' 分配内存
    ReDim x(n) As Double
    
    ' 迭代初值
    x(1) = 0
    x(2) = 0
    x(3) = 0
    
    ' 随机数初始值与控制参数
    b = 2#
    m = 10
    
    
    '求解
    Call NLMtcl(n, x, b, m, 0.00001)
    
    For i = 1 To n
        s = s & "x(" & i & ") = " & x(i) & Chr(13)
    Next i
    
    MsgBox s
    
End Sub

' 待求解的方程组的函数
Function Func(x() As Double) As Double
    Dim f1 As Double, f2 As Double, f3 As Double
    
    f1 = 3# * x(1) + x(2) + 2# * x(3) * x(3) - 3#
    f2 = -3# * x(1) + 5# * x(2) * x(2) + 2# * x(1) * x(3) - 1#
    f3 = 25# * x(1) * x(2) + 20# * x(3) + 12#
    
    Func = Sqr(f1 * f1 + f2 * f2 + f3 * f3)
End Function

⌨️ 快捷键说明

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