home *** CD-ROM | disk | FTP | other *** search
- PROGRAM funcgen;
- { Create a Graph3D data file of function z=f(x,y) }
-
- CONST x0=-1; x1=9; dx=0.25;
- y0=-4; y1=4; dy=0.25;
- title='function f(r)=sin(r)/r';
- quantity='f(r)';
-
- FUNCTION f(x,y: Real): Real;
- VAR r: Real;
- BEGIN
- r := Sqrt(Sqr(x)+Sqr(y));
- IF r=0 THEN f := 1 ELSE
- f := Sin(r)/r;
- END;
-
- VAR datei: Text;
- nx,ny,i,j: Integer;
- x,y: Real;
-
- BEGIN
- nx := Round((x1-x0)/dx)+1;
- ny := Round((y1-y0)/dy)+1;
- ReWrite(datei,'RAM:function.3D');
- WriteLn(datei,title);
- WriteLn(datei,quantity);
- WriteLn(datei);
- WriteLn(datei,ny);
- FOR j := 1 TO ny DO BEGIN
- y := y0 + (j-1)*dy;
- IF Abs(y-Round(y))<dy/4 THEN WriteLn(datei,Round(y))
- ELSE WriteLn(datei);
- END;
- WriteLn(datei);
- WriteLn(datei,nx);
- FOR i := 1 TO nx DO BEGIN
- x := x0 + (i-1)*dx;
- IF Abs(x-Round(x))<dx/4 THEN WriteLn(datei,Round(x))
- ELSE WriteLn(datei);
- FOR j := 1 TO ny DO BEGIN
- y := y0 + (j-1)*dy;
- WriteLn(datei,f(x,y))
- END;
- WriteLn(datei);
- END;
- END.
-
-