Mathematica 9 is now available
Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2012

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Getting only 1 of 3 curves of intersection

  • To: mathgroup at smc.vnet.net
  • Subject: [mg126312] Re: Getting only 1 of 3 curves of intersection
  • From: Bob Hanlon <hanlonr357 at gmail.com>
  • Date: Mon, 30 Apr 2012 04:42:40 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • References: <201204290609.CAA10817@smc.vnet.net>

g1 = Plot3D[Sin[x*y], {x, 0, Pi}, {y, 0, Pi},
   PlotStyle -> None,
   MeshStyle -> Red,
   Axes -> True,
   AxesLabel -> {"x", "y", "z"}];

g2 = Plot3D[Cos[x*y], {x, 0, Pi}, {y, 0, Pi},
   Mesh -> None,
   PlotStyle -> {Cyan, Opacity[.8]}];

rSol = Reduce[{z - Sin[x y] == 0, z - Cos[x y] == 0,
   0 <= x <= \[Pi], 0 <= y <= \[Pi]}, {y, z}]

(((2*Pi - 2*ArcTan[1 + Sqrt[2]])/Pi <= x <=
           Pi && y == (2*Pi - 2*ArcTan[1 + Sqrt[2]])/
             x) || (-((2*ArcTan[1 - Sqrt[2]])/Pi) <=
           x <= Pi && y == -((2*ArcTan[1 - Sqrt[2]])/
                x)) || ((2*Pi - 2*ArcTan[1 - Sqrt[2]])/
             Pi <= x <= Pi &&
         y == (2*Pi - 2*ArcTan[1 - Sqrt[2]])/x)) &&
   z == Sin[x*y]

rSol // FullSimplify

x <= Pi && (((9*Pi)/x == 4*y && 4*x >= 9) ||
      (4*x*y == Pi && 4*x >= 1) ||
      ((5*Pi)/x == 4*y && 4*x >= 5)) &&
   z == Sin[x*y]

param = Cases[rSol,
   (y == f_) :> {x, f, Sin[x*f]}, Infinity] //
  FullSimplify

{{x, (5*Pi)/(4*x), -(1/Sqrt[2])},
   {x, Pi/(4*x), 1/Sqrt[2]}, {x, (9*Pi)/(4*x),
     1/Sqrt[2]}}

g3 = ParametricPlot3D[param, {x, 0, Pi},
   PlotStyle -> {{Magenta, Thickness[.007]}}];

Show[g1, g2, g3,
 Background -> LightYellow,
 ImageSize -> 500]


Bob Hanlon


On Sun, Apr 29, 2012 at 2:09 AM, Bill <WDWNORWALK at aol.com> wrote:
> Hi:
>
> Consider the following plot:
>
> g1=Plot3D[Sin[x*y],{x,0,Pi},{y,0,Pi},PlotStyle->None,MeshStyle->Red,Axes->True,AxesLabel->{"x","y","z"}];
> g2=Plot3D[Cos[x*y],{x,0,Pi},{y,0,Pi},Mesh->None,PlotStyle->{Cyan,Opacity[.8]}];
> nsSol=NSolve[{z-Sin[x*y],z-Cos[x*y]},{y,z}];//Quiet
> g3=ParametricPlot3D[{x,y,z}/.nsSol[[2]],{x,0,Pi},PlotStyle->{Magenta,Thickness[.007]}];
> Show[g1,g2,g3,Background->LightYellow,ImageSize->500]
>
> Using the above Mathematica 8.0.4 code, I can plot one curve of intersection shown in magenta.
> Within the plotted area, I can see 2 more places where intersection curves should be.
> I've tried using Reduce in place of NSolve, but can't get it to work.
>
> Question: If this can be done, can someone please give me the code?
>
>
> Thanks,
>
> Bill



  • Prev by Date: Re: Creating 'smart' textbooks with mathematica?
  • Next by Date: Re: Getting only 1 of 3 curves of intersection
  • Previous by thread: Re: Getting only 1 of 3 curves of intersection
  • Next by thread: Re: Getting only 1 of 3 curves of intersection