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

📄 dbrent.dem

📁 Delphi Pascal 数据挖掘领域算法包 数值算法大全
💻 DEM
字号:
PROGRAM d10r4(input,output);
(* driver for routine DBRENT *)
CONST
   tol=1.0e-6;
   eql=1.0e-4;
VAR
   ax,bx,cx,fa,fb,fc,xmin,dbr : real;
   i,iflag,j,nmin : integer;
   amin : ARRAY [1..20] OF real;

(*$I MODFILE.PAS *)
(*$I BESSJ1.PAS *)

FUNCTION dfunc(x: real): real;
BEGIN
   dfunc := -bessj1(x)
END;

(*$I BESSJ0.PAS *)

FUNCTION func(x: real): real;
BEGIN
   func := bessj0(x)
END;

(*$I MNBRAK.PAS *)

(*$I DBRENT.PAS *)

BEGIN
   nmin := 0;
   writeln;
   writeln('minima of the function bessj0');
   writeln('min. #':10,'x':8,
      'bessj0(x)':16,'bessj1(x)':12,'DBRENT':11);
   FOR i := 1 to 100 DO BEGIN
      ax := i;
      bx := i+1.0;
      mnbrak(ax,bx,cx,fa,fb,fc);
      dbr := dbrent(ax,bx,cx,tol,xmin);
      IF (nmin = 0) THEN BEGIN
         amin[1] := xmin;
         nmin := 1;
         writeln(nmin:7,xmin:15:6,func(xmin):12:6,
            dfunc(xmin):12:6,dbr:12:6);
      END ELSE BEGIN
         iflag := 0;
         FOR j := 1 to nmin DO BEGIN
            IF  (abs(xmin-amin[j]) <= eql*xmin)
               THEN iflag := 1
         END;
         IF (iflag = 0) THEN BEGIN
            nmin := nmin+1;
            amin[nmin] := xmin;
            writeln(nmin:7,xmin:15:6,func(xmin):12:6,
               dfunc(xmin):12:6,dbr:12:6)
         END
      END
   END
END.

⌨️ 快捷键说明

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