home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / sci / math / symbolic / 3048 < prev    next >
Encoding:
Text File  |  1992-11-20  |  1.8 KB  |  48 lines

  1. Newsgroups: sci.math.symbolic
  2. Path: sparky!uunet!mcsun!sunic!aun.uninett.no!nuug!nntp.uio.no!news
  3. From: rivero <rivero@cc.unizar.es>
  4. Subject: Re: Plotting implicite functions in Mathematica
  5. Message-ID: <1992Nov20.100743.11974@ulrik.uio.no>
  6. X-Xxdate: Fri, 20 Nov 92 11:04:57 GMT
  7. Sender: news@ulrik.uio.no (Mr News)
  8. Nntp-Posting-Host: 155.210.147.31
  9. Organization: fisica teorica UZ
  10. X-Useragent: Nuntius v1.1.1d12
  11. References: <1992Nov19.174001.1294@leland.Stanford.EDU>
  12. Date: Fri, 20 Nov 1992 10:07:43 GMT
  13. Lines: 33
  14.  
  15. In article <1992Nov19.174001.1294@leland.Stanford.EDU> mo Saarenheimo,
  16. sarrenhe@leland.Stanford.EDU writes:
  17. >I have an implicite function F(X,A)=0, 0<A<1, which can not be solved 
  18. >explicitly for X. I wish to plot X as a function of A. Here's the best
  19. >I've been able to work out.
  20. >
  21. >Plot[X/.FindRoot[F[X,A]==0,{X,Xinit}],{A,0,1}]
  22. >
  23. >The obvious problem with this approach is that, for every value of A, the
  24. >iteration for X begins from the same initial value Xinit. This is, of
  25. >course, inefficient, and often there exists no initial value Xinit for
  26. >which the iteration converges for every value of A.
  27.  
  28. If convergence is the only problem, and you have a good, fast machine,
  29. you could use ContourPlot[F[X,A],..., Contours->{0}
  30.  
  31. If you can not afford this increase in computational time, you could
  32. alter your FindRoot call to use secant method, by giving two points to start,
  33. and tryiing (perhaps qith a previous search for extremals) that there
  34. exists a solution between both.
  35.  
  36. >Since F(X,A) is continuous, the obvious alternative is to use the solution
  37. >reached by FindRoot for previous value of A as the initial value for the 
  38. >next iteration.
  39. >
  40. >Can somebody suggest an elegant and efficient way to do this?
  41.  
  42. Is not efficient, but in a pure C-style you can Plot[oldv=FindRoot[...
  43.  
  44.  
  45. -Alejandro Rivero
  46. Theoretical Physics
  47. Zaragoza Univ, Spain
  48.