On 4/23/07, Robert Bradshaw <[EMAIL PROTECTED]> wrote:
>
> This can't always be done in general, and even if it can it's usually
> really ugly. For example, sin(sin(y) + y) = x^5 - x + 1.
>
> There are other algorithms to do this kind of implicit plotting.

Maybe we should enumerate some.    For example, there's this obvious one
for plotting F(x,y) == 0 on some rectangle R.

 (1) Determine if F is a polynomial in either x or y.  If not, either
(a) give up,
       or (b) somehow find a polynomial approximation to F in x using
Taylor series.
       Assume without loss that F is a polynomial in x (with coefficients that
       are arbitrary functions of y).
 (2) For each of a slightly randomly chosen list of sample points p_i in the y
      direction, compute the polynomial F(x,p_i) numerically.  Then use
      the (very fast GSL) numerical polynomial solver to compute the
      double precision roots of the polynomial F(x,p_i).
  (3) Use some sort of clever sorting method to order the solutions found in (2)
      along a curve.  Then plot that curve.

The input parameters to the plot routine would influence the number of
sample points;
also one could adaptively refine in step (2) depending on the nature
of the solution
to F(x,p_i)=0.  Hopefully there is a paper about this somewhere, which explains
the subtleties I'm missing.

William

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/
-~----------~----~----~----~------~----~------~--~---

Reply via email to