Re: ParametricPlot problem
- To: mathgroup at smc.vnet.net
- Subject: [mg97823] Re: [mg97773] ParametricPlot problem
- From: "David Park" <djmpark at comcast.net>
- Date: Sun, 22 Mar 2009 05:51:17 -0500 (EST)
- References: <14534444.1237632927449.JavaMail.root@m02>
Jakub, transfer[r_, c_][f_] := 1/(1 + I 2 \[Pi] f r c) One method is to use brute force by increasing both the PlotPoints and pushing MaxRecursion to the limit of 15 for plots (the Help is misleading). MaxRecursion is usually the first choice, before PlotPoints, for obtaining better detail and smoother curves. But here we also need PlotPoints. ParametricPlot[{Re[transfer[100., .00001][f]], Im[transfer[100., .00001][f]]}, {f, .1, 100000000}, AspectRatio -> .5, PlotPoints -> 400, MaxRecursion -> 15, PlotRange -> All, Frame -> True] However, a much better method is to use a log variable in the plot iterator. ParametricPlot[{Re[transfer[100., .00001][10^logf]], Im[transfer[100., .00001][10^logf]]}, {logf, -1., 8.}, AspectRatio -> .5, PlotRange -> All, Frame -> True] In both cases you can keep double clicking the curve to see the points that Mathematica actually used. David Park djmpark at comcast.net http://home.comcast.net/~djmpark/ From: Serych Jakub [mailto:Serych at panska.cz] Dear M users, I'm trying to draw phasor characteristic of simple RC low pass filter. Its transfer function is: r = 100; c = 0.00001; transfer[f_] := 1/(1 + I 2 \[Pi] f r c); The phasor characteristic should be drawn with: ParametricPlot[{Re[transfer[f]], Im[transfer[f]]}, {f, 0, Infinity}] I can understand, that Mathematica has problem with calculation of the transfer function for frequency from 0 to Infinity, so I tried to use 10^8 in the place of infinity. But as the ParametricPlot IMHO subdivides the frequency range into constant intervals, it draws piece of the curve only for frequencies near to 10^8. I found that the relatively reasonable result is with frequency range 0 to 10^3: ParametricPlot[{Re[transfer[f]], Im[transfer[f]]}, {f, 0, 10^3}] but there is missing the part of curve near to coordinates origin. Is there any way to tell the ParametricPlot to divide the interval of the frequency in logarithmic manner to have the possibility to draw the phasor characteristic in the bigger frequency range? I tried the PlotPoints and PerformanceGoal options, but it doesn't help (or I cannot use it). Thanks a lot for any help Jakub