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

📄 adi.dem

📁 Delphi Pascal 数据挖掘领域算法包 数值算法大全
💻 DEM
字号:
PROGRAM d17r2(input,output);
(* driver for routine ADI *)
LABEL 1;
CONST
   jmax=11;
   pi=3.1415926;
TYPE
   double = real;
   gljmax = ARRAY [1..jmax,1..jmax] OF double;
VAR
   alim,alpha,beta,eps : double;
   i,j,k,mid,twotok : integer;
   a,b,c,d,e,f,g,u : gljmax;

(*$I ADI.PAS *)

BEGIN
   FOR i := 1 to jmax DO BEGIN
      FOR j := 1 to jmax DO BEGIN
         a[i,j] := -1.0;
         b[i,j] := 2.0;
         c[i,j] := -1.0;
         d[i,j] := -1.0;
         e[i,j] := 2.0;
         f[i,j] := -1.0;
         g[i,j] := 0.0;
         u[i,j] := 0.0
      END
   END;
   mid := (jmax DIV 2)+1;
   g[mid,mid] := 2.0;
   alpha := 2.0*(1.0-cos(pi/jmax));
   beta := 2.0*(1.0-cos((jmax-1)*pi/jmax));
   alim := ln(4.0*jmax/pi);
   k := 0;
   twotok := 1;
   REPEAT
      k := k+1;
      twotok := 2*twotok;
   UNTIL twotok >= alim;
   eps := 1.0e-4;
   adi(a,b,c,d,e,f,g,u,jmax,k,alpha,beta,eps);
   writeln('ADI Solution:');
   FOR i := 1 to jmax DO BEGIN
      FOR j := 1 to jmax DO write(u[i,j]:7:2);
      writeln
   END;
   writeln;
   writeln('Test that solution satisfies difference eqns:');
   FOR i := 2 to (jmax-1) DO BEGIN
      FOR j := 2 to (jmax-1) DO BEGIN
         g[i,j] := -4.0*u[i,j]+u[i+1,j]
            +u[i-1,j]+u[i,j-1]+u[i,j+1]
      END;
      write(' ':7);
      FOR j := 2 to (jmax-1) DO write(g[i,j]:7:2);
      writeln
   END
END.

⌨️ 快捷键说明

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