Previous: contour3, Up: Base modules
slopefield
To draw a slope field for the differential equation dy/dx=f(x,y) (or dy/dx=f(x)), use:
picture slopefield(real f(real,real), pair a, pair b, int nx=nmesh, int ny=nx, real tickfactor=0.5, pen p=currentpen);Here, the points
a
and b
are the lower left and upper
right corners of the rectangle in which the slope field is to be drawn,
nx
and ny
are the respective number of ticks in the
x and y directions, tickfactor
is the fraction of
the minimum cell dimension to use for drawing ticks, and p
is
the pen to use for drawing the slope fields.
The return value is a picture that can be added to
currentpicture
via the add(picture)
command.
The function
path curve(pair c, real f(real,real), pair a, pair b);takes a point (
c
) and a slope field-defining function f
(real f(real)
is also accepted), and returns, as a path, the
curve passing through that point. The points a
and b
represent the rectangular boundaries over which the curve is interpolated.
Here is an example of a slope field:
import slopefield; size(200); real func(real x) {return 2x;} add(slopefield(func,(-3,-3),(3,3),20)); draw(curve((0,0),func,(-3,-3),(3,3)),red);