#240 plot2d stunningly slow in some simple cases

Lisp Core (471)

plot2d(x*1.01,[x,0,1]) is fast (16mS).
plot2d(x*1.01e2,[x,0,1]) is surprisingly slower (2683mS)
plot2d(x*1.01e4,[x,0,1]) is so slow I didn't bother to wait.

What is going on here? This is ridiculous!

Maxima version: 5.9.0
Maxima build date: 19:10 2/9/2003
host type: i686-pc-mingw32
lisp-implementation-type: Kyoto Common Lisp
lisp-implementation-version: GCL-2-5.0


  • Raymond Toy

    Raymond Toy - 2003-04-03

    Logged In: YES

    This is caused by draw2d. It tries to be smart so that if
    the dy is larger than dx, a smaller step is taken. For the
    second example, EVERY dy is too large, so we generate many
    extra samples. The third is even worse because even more
    samples are computed.

    I don't know how to fix this. Perhaps if we use the slope
    and extrapolate a point and the computed point is reasonably
    close, we don't try extra samples. If it's very far off, we
    use more samples.

    However, I think we should just give up being smart. Let
    the user specify more grid points ore a smaller range.

  • Raymond Toy

    Raymond Toy - 2003-04-03
    • labels: --> Lisp Core
    • assigned_to: nobody --> rtoy
  • Raymond Toy

    Raymond Toy - 2003-05-25

    Logged In: YES

    Should be fixed with the adaptive plotting routine

  • Raymond Toy

    Raymond Toy - 2003-05-25
    • status: open --> closed

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks