Re: plotting surfaces

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

```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
Plot3D

(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`

and

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}]

and

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