You've already forked lazarus-ccr
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7925 8e941d3f-bd1b-0410-a28a-d453659cc2b4
44 lines
740 B
ObjectPascal
44 lines
740 B
ObjectPascal
program Project1;
|
|
|
|
{$mode objfpc}{$H+}
|
|
|
|
uses
|
|
Math, SysUtils;
|
|
|
|
const
|
|
v1Min = 1.0;
|
|
v1Max = 3.0;
|
|
dv1 = 0.5;
|
|
v2Min = 1.0;
|
|
v2Max = 5.0;
|
|
dv2 = 0.5;
|
|
a = 1.0;
|
|
b = -2.0;
|
|
c = 100;
|
|
EPS = 1E-3;
|
|
REL_ERROR = 0.02;
|
|
var
|
|
v1, v2, res, dres: Double;
|
|
F: TextFile;
|
|
begin
|
|
AssignFile(F, 'linear_regression_2vars.csv');
|
|
Rewrite(F);
|
|
WriteLn(F, 'Var1,Var2,Result,Weights');
|
|
v1 := v1Min;
|
|
while v1 <= v1Max + EPS do
|
|
begin
|
|
v2 := v2min;
|
|
while v2 <= v2Max + EPS do
|
|
begin
|
|
res := a * v1 + b * v2 + c;
|
|
dres := res * REL_ERROR;
|
|
res := res + RandG(0, dres);
|
|
WriteLn(F, v1:0:3, ',', v2:0:3, ',', res:0:3, ',', dres:0:3);
|
|
v2 := v2 + dv2;
|
|
end;
|
|
v1 := v1 + dv1;
|
|
end;
|
|
CloseFile(F);
|
|
end.
|
|
|