📄 d7r9.txt
字号:
implementation
//PROGRAM D7R9
//Driver for routine FGAUSS
uses
unit2;
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
const
s1='%8.4f';
NPT = 3; NLIN = 2; NA = 3 * NLIN;
var
A,DYDA,DF:array[0..6] of real;
I,J:integer; X,Y,E1,E2,FF:real;
F:TextFile;
begin
A[1]:=3; A[2]:=0.2; A[3]:=0.5;
A[4]:=1; A[5]:=0.7; A[6]:=0.3;
//输出计算结果到文件
AssignFile(F, 'd:\delphi_shu\p7\d7r9.dat');
Rewrite(F);
Writeln(F,' X Y DATA1 DATA2 DATA3 DATA4 DATA5 DATA6');
For I:=1 To NPT do
begin
X:= 0.3 * I;
FGAUSS(X,A,Y,DYDA,NA);
E1:=Exp(-Sqr((X - A[2]) / A[3]));
E2:=Exp(-Sqr((X - A[5]) / A[6]));
FF:=A[1] * E1 + A[4] * E2;
DF[1]:=E1;
DF[4]:=E2;
DF[2]:=A[1] * E1 * 2 * (X - A[2]) / Sqr(A[3]);
DF[5]:=A[4] * E2 * 2 * (X - A[5]) / Sqr(A[6]);
DF[3]:=A[1] * E1 * 2 * Sqr(X - A[2]) / exp(3*Ln(A[3]));
DF[6]:=A[4] * E2 * 2 * Sqr(X - A[5]) / exp(3*Ln(A[6]));
Writeln(F);
Writeln(F,'from FGAUSS');
Writeln(F);
Writeln(F, Format(s1,[X]), Format(s1,[Y]),Format(s1,[DYDA[1]]),
Format(s1,[DYDA[2]]),Format(s1,[DYDA[3]]),Format(s1,[DYDA[4]]),
Format(s1,[DYDA[5]]),Format(s1,[DYDA[6]]));
Writeln(F);
Writeln(F,'independent calc.');
Writeln(F);
Writeln(F, Format(s1,[X]), Format(s1,[FF]),Format(s1,[DF[1]]),
Format(s1,[DF[2]]),Format(s1,[DF[3]]),Format(s1,[DF[4]]),
Format(s1,[DF[5]]),Format(s1,[DF[6]]));
Writeln(F);
end;
CloseFile(F);
//屏幕显示计算结果
memo1.Lines.LoadFromFile('d:\delphi_shu\p7\d7r9.dat');
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -