Re: What do I do to get better curves?

• To: mathgroup at smc.vnet.net
• Subject: [mg120946] Re: What do I do to get better curves?
• From: Bob Hanlon <hanlonr at cox.net>
• Date: Thu, 18 Aug 2011 03:23:14 -0400 (EDT)
• Delivered-to: l-mathgroup@mail-archive0.wolfram.com
• Reply-to: hanlonr at cox.net

```The function definitions should explicitly include all parameters.

p[k_, w_, r_] := Sqrt[w^2/r^2 - k^2];
q[k_, w_, r_] := Sqrt[w^2 - k^2];
a[k_, w_, p_, q_, r_] := (k^2 - w^2)^2 Sin[p] Cos[q] + 4 k^2 p q Cos[p] Sin[q];
a[k_, w_, r_] := a[k, w, p[k, w, r], q[k, w, r], r];

For the function to be real valued the arguments of the square roots must be nonnegative.

FullSimplify[Reduce[Thread[
Cases[a[k, w, r], Sqrt[z_] -> z, Infinity] > 0],
k], {w >= 0, k >= 0, r > 1}]

k r < w

Checking the function value on the boundary

a[k, k*r, r]

0

Or equivalently,

a[w/r, w, r]

0

So the line k = w/r is part of the contour.

Manipulate[Show[
Plot[w/r, {w, 0, 6}, PlotStyle -> Blue],
ContourPlot[a[k, w, r] == 0, {w, 0, 6}, {k, 0, w/r},
ContourStyle -> Directive[Red, AbsoluteThickness[2]]],
AspectRatio -> 1,
Frame -> True,
Axes -> False,
PlotRange -> {0, 6}],
{{r, 6197/3122}, 1, 5, Appearance -> "Labeled"}]

Bob Hanlon

---- becko <becko565 at hotmail.com> wrote:

=============
Run the following code in mathematica:

r=6197/3122;
p[k_,w_]:=Sqrt[w^2/r^2-k^2];q[k_,w_]:=Sqrt[w^2-k^2];
a[k_,w_,p_,q_]:=(k^2-w^2)^2 Sin[p]Cos[q]+4k^2 p q Cos[p]Sin[q]
a[k_,w_]:=a[k,w,p[k,w],q[k,w]];
ContourPlot[a[k,w]==0,{w,0,6},{k,0,14}]

The curves thus obtained are very inaccurate. I tried raising the
PlotPoints and WorkingPrecision opions of ContourPlot, but it doesn't
work. Morevoer, you see that the only parameter that shows up, 'r', is
an exact rational number. I don't know what else to try. Thanks.

```

• Prev by Date: Re: setting header options in another nb with code
• Next by Date: Re: Basic questions on _Plus and recursion
• Previous by thread: Re: What do I do to get better curves?
• Next by thread: Re: What do I do to get better curves?