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

📄 d9r9.frm

📁 数据拟合源程序
💻 FRM
字号:
VERSION 5.00
Begin VB.Form Form1 
   Caption         =   "Form1"
   ClientHeight    =   5580
   ClientLeft      =   60
   ClientTop       =   345
   ClientWidth     =   7455
   LinkTopic       =   "Form1"
   ScaleHeight     =   5580
   ScaleWidth      =   7455
   StartUpPosition =   3  'Windows Default
   Begin VB.CommandButton Command1 
      Caption         =   "Command1"
      Height          =   375
      Left            =   5880
      TabIndex        =   0
      Top             =   5040
      Width           =   1215
   End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Private Sub Command1_Click()
    'PROGRAM D9R9
    'Driver for roution FGAUSS
    NPT = 3
    NLIN = 2
    NA = 3 * NLIN
    Dim A(6), DYDA(6), DF(6)
    A(1) = 3#: A(2) = 0.2: A(3) = 0.5: A(4) = 1#: A(5) = 0.7: A(6) = 0.3
    Print Tab(6); "X       Y      DATA1     DATA2   DATA3    DATA4     DATA5   DATA6"
    For I = 1 To NPT
        X = 0.3 * I
        Call FGAUSS(X, A(), Y, DYDA(), NA)
        E1 = Exp(-((X - A(2)) / A(3)) ^ 2)
        E2 = Exp(-((X - A(5)) / A(6)) ^ 2)
        F = A(1) * E1 + A(4) * E2
        DF(1) = E1
        DF(4) = E2
        DF(2) = A(1) * E1 * 2# * (X - A(2)) / (A(3) ^ 2)
        DF(5) = A(4) * E2 * 2# * (X - A(5)) / (A(6) ^ 2)
        DF(3) = A(1) * E1 * 2# * ((X - A(2)) ^ 2) / (A(3) ^ 3)
        DF(6) = A(4) * E2 * 2# * ((X - A(5)) ^ 2) / (A(6) ^ 3)
        Print Tab(5)
        Print Tab(5); "from FGAUSS"
        Print Tab(5)
        Print Tab(3); Format(X, "##.##00"); Tab(13); Format$(Y, "##.##00");
        For J = 1 To 6
            Print Tab(21 + (J - 1) * 9); Format$(DYDA(J), "##.###0");
        Next J
        Print Tab(5)
        Print Tab(5); "independent calc."
        Print Tab(5)
        Print Tab(3); Format(X, "##.##00"); Tab(13); Format$(F, "##.##00");
        For J = 1 To 6
            Print Tab(21 + (J - 1) * 9); Format$(DF(J), "##.###0");
        Next J
        Print
    Next I
End Sub
   Sub FGAUSS(X, A(), Y, DYDA(), NA)
      Y = 0#
      For I = 1 To NA - 1 Step 3
          ARG = (X - A(I + 1)) / A(I + 2)
          EX = Exp(-ARG ^ 2)
          FAC = A(I) * EX * 2# * ARG
          Y = Y + A(I) * EX
          DYDA(I) = EX
          DYDA(I + 1) = FAC / A(I + 2)
          DYDA(I + 2) = FAC * ARG / A(I + 2)
      Next I
   End Sub

⌨️ 快捷键说明

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