Arg[JacobiSN + DrawContourLines

*To*: mathgroup at smc.vnet.net*Subject*: [mg44704] Arg[JacobiSN + DrawContourLines*From*: "Dr Andy D Kucar PEng" <ceo at radio4u.com>*Date*: Fri, 21 Nov 2003 05:13:26 -0500 (EST)*Reply-to*: <ceo at radio4u.com>*Sender*: owner-wri-mathgroup at wolfram.com

L&G I am using Math4.2 + W98. The rectangles in Math printouts below are either Pi or -> I am having some problems with 1.) Plot/draw/calc of Arg[JacobiSN ... and with 2.) Plot/draw of 3D contours via DrawContourLines Explanation 1.) Both Plot3D[Arg[JacobiSN and Draw2D[{ContourDraw[Arg[JacobiSN Run/see the printouts below, produce the self explanatory results, which seem to be incorrect, at least on my computer. I tried to zoom the graphs around the critical transition planes but the effect is the same. I haven't had time to analyze the behavior of other elliptic functions. 2.) The Draw2D[{ContourDraw[ routines produce correct results/graphs in other cases. However, corresponding 3D version DrawContourLines seems to have some problems The 3D contours, in at least some cases, are away from the surface, run/see the last printout below. The algorithm/position of these 3D contours somehow depends on number of PlotPoints, region, ... In some cases, the algorithm seems to have some difficulty to catch more than one funnel/max/peak/min/hole Would it be possible to have/find somewhere a more general contour/slice algorithm with (z=0) existing and (x=0), (y=0), F(x,y,z)=0 possibilities? Thanks Sincerely Andy m=1/2.; Plot3D[Arg[JacobiSN[x EllipticK[m]+I y EllipticK[1-m],m]],{x,1.,3.5},{y,0.75,1.25},PlotPoints?199, AxesEdge?{{-1,-1},{1,-1},{-1,-1}},Boxed?False,Axes?True, PlotRange?{{1.,3.5},{0.75,1.25},{-?/2,?/2}},ViewPoint?{2.3,-2.3,1.9}] m=1/2.; Draw2D[ {ContourDraw[Arg[JacobiSN[x EllipticK[m]+I y EllipticK[1-m],m]] // Evaluate,{x,0,4},{y,0,2}, Contours?Range[-?/3,?/3,?/6],PlotPoints?150]}, Frame?True] m=1/2.; sJi=Im[JacobiSN[#1 EllipticK[m]+I #2 EllipticK[1-m],m]]&; surf=Draw3D[sJi[x,y] // Evaluate,{x,0,4},{y,0,2},PlotPoints?200]; contx=DrawContourLines[sJi[x,y],{x,0,1},{y,0,1},PlotPoints?200, Contours?Range[0.2,1.,0.2],DrawContourOffset?{0,0,0.005}]; conty=DrawContourLines[sJi[x,y],{x,0,1},{y,0,1},PlotPoints?200, Contours?Range[1.4,1.8,0.2],DrawContourOffset?{0,0,0.005}]; contz=DrawContourLines[sJi[x,y],{x,0,1},{y,0,1},PlotPoints?200, Contours?{m^(-1/4)},DrawContourOffset?{0,0,0.005}]; conta=DrawContourLines[sJi[x,y],{x,1,3},{y,1,2},PlotPoints?200, Contours?Range[0.2,1.,0.2],DrawContourOffset?{0,0,0.005}]; contb=DrawContourLines[sJi[x,y],{x,1,3},{y,1,2},PlotPoints?200, Contours?Range[1.4,1.8,.2],DrawContourOffset?{0,0,0.005}]; contc=DrawContourLines[sJi[x,y],{x,0,4},{y,0,2},PlotPoints?200, Contours?{m^(-1/4)},DrawContourOffset?{0,0,0.005}]; contd=DrawContourLines[sJi[x,y],{x,0,4},{y,0,1.99},PlotPoints?200, Contours?{0.},DrawContourOffset?{0,0,0.005}]; contu=DrawContourLines[sJi[x,y],{x,3,4},{y,0,1},PlotPoints?200, Contours?Range[0.2,1.,0.2],DrawContourOffset?{0,0,0.005}]; contv=DrawContourLines[sJi[x,y],{x,3,4},{y,0,1},PlotPoints?200, Contours?Range[1.4,1.8,0.2],DrawContourOffset?{0,0,0.005}]; contw=DrawContourLines[sJi[x,y],{x,3,4},{y,0,1},PlotPoints?200, Contours?{m^(-1/4)},DrawContourOffset?{0,0,0.005}]; Draw3DItems[{EdgeForm[],surf,contx,conty,contu,contv,contz,conta,contb,Thickness[0.0035],contc,contd,contz,contw }, AxesEdge?{{-1,-1},{1,-1},{-1,-1}},Boxed?False,Axes?True, PlotRange?{{0,4},{0,2},{-2,2}},ViewPoint?{2.3,-2.3,1.9}]