mrqcof.txt

来自「《Delphi常用数值算法集》的配书源码」· 文本 代码 · 共 32 行

TXT
32
字号
Procedure MRQCOF(X,Y,SIG:array of real; NDATA:integer;var A:array of real;
              MA:integer; LISTA:array of integer; MFIT:integer;var ALPHA:matrx2;
              var BETA:array of real; NALP:integer;var CHISQ:real);
var
    DYDA:array[0..20] of real;
    J,I,K:integer;   YMOD,SIG2I,DY,WT:real;
begin
    For J:=1 To MFIT do
    begin
      For K:=1 To J do
        ALPHA[J, K]:=0;
      BETA[J]:=0;
    end; 
    CHISQ:=0; 
    For I:=1 To NDATA do
    begin
        FGAUSS(X[I], A, YMOD, DYDA, MA);
        SIG2I:=1 / (SIG[I] * SIG[I]);
        DY:=Y[I] - YMOD;
        For J:=1 To MFIT do
        begin
            WT:=DYDA[LISTA[J]] * SIG2I;
            For K:=1 To J do
                ALPHA[J, K]:=ALPHA[J, K] + WT * DYDA[LISTA[K]];
            BETA[J]:=BETA[J] + DY * WT;
        end; 
        CHISQ:=CHISQ + DY * DY * SIG2I;
    end; 
    For J:=2 To MFIT do
        For K:=1 To J - 1 do
            ALPHA[K, J]:=ALPHA[J, K];
end;

⌨️ 快捷键说明

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