MathGroup Archive 2000

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

Search the Archive

Re: plotting surfaces

  • To: mathgroup at
  • Subject: [mg24018] Re: plotting surfaces
  • From: hwolf at
  • Date: Tue, 20 Jun 2000 03:07:33 -0400 (EDT)
  • Organization: debis Systemhaus
  • References: <8i9oit$>
  • Sender: owner-wri-mathgroup at

A Prashanth pg ee schrieb:
> i have a set of functions for plotting. some of them are algebraic, some
> transcendental, some are explicitly solvable for z and some are not (my
> functions, ofcourse, have three variables: x,y and z).
> could you tell me sir, the relavant commands for plotting these surfaces.
> do i need mathematica 3.0 as well; i have rightnow the 2.2 version with
> me.
> one of my functions for instance happens to be sin(xyz) +log(z) = 1, which
> clearly is not solvable for z. so how would i proceed with the plot with
> the version i rightnow have?
> sincerely,
> prashanth.

I think it's not so much a matter of the Mathematica Version (except possibly
for speed); I'd advice you to

(1) try to get an explicit description of your surface (z = z[x,y]); then use

(2) else try to get a parametric description (x=x[u,v], y=y[u,v], z=z[u,v]);
then use ParametricPlot3D

(3) else you may try 

<< Graphics`ContourPlot3D`


ContourPlot3D[Sin[x y z] + Log[z], {x, 1/2, 2}, {y, 1/2, 2}, {z, 0.01, 10.}, 
    Contours -> {1}, BoxRatios -> {1, 1, 1}, PlotPoints -> 7] // Timing

This took approx. 7 minutes on my machine, and gives you only a short glimpse at
the surface.

(4) Better you try to _study_ the surfaces beforehand, e.g. do

Plot[Sin[z] + Log[z], {z, 0., 10 Pi}]


p = Plot3D[Sin[x z] + Log[z], {x, 0.01, 3.}, {z, 0.01, 5 Pi}, PlotPoints -> 40]

Show[p, ViewPoint -> {-1.3, -2.4, 2.}]

Perhaps the best (affordable) view for that surface is with

<< Graphics`ImplicitPlot`

ImplicitPlot[Sin[x  z] + Log[z] == 1, {x, 0.01, 10.}, {z, 0.01, 8.}, 
    PlotPoints -> 150] 

although this gives you only a 2-dim picture, you can see much more from this
than from the 3-dim ContourPlot3D above (since the dependency on x and y is only
through x*y). 

But if you really *need* the 3-dim plot, you could construct it from that last
computation; though not complicated, that will cost you some programming work
(build 3d-polygons from the 2d-line you have got).

Kind regards,
	Hartmut Wolf

  • Prev by Date: Re: I wish Descending Order Result
  • Next by Date: RE: Re: Fast (compiled) routine for element testing and replacement in large matrices?
  • Previous by thread: Re: plotting surfaces
  • Next by thread: block diagonalisation matrices