Items tagged with surface surface Tagged Items Feed


 I solved  the laplace equation(pde) in spherical cordinates(in my problem tempreture is steady and azimuthal(theta) asymmetry,so my data is a simple function of "phi".)

but I'm really confused,how to make a contour plot of this data on the surface of the sphere where only each point of (phi)axis has a corresponding data value> "simplify(u(1,phi))"?? [the code with the data "u" is attached]

plzz help me soon and abit simple for a newbie,tnX alot. 



I have a surfdata-plot which - by interpolation - goes through different circles with different inclinations with respect to each other. The surface is color-coded with zhue from violet to red. In order to see the valleys behind peaks I would like to have a filled 2D-plot of my zhue-surfdata colors with contours wherever the surface passes z-coordinate integers located somewhere below the surface (e.g. at z=-7). Unfortunately, I haven't found examples of contourplots for surfdata plots so far.



[animate, animate3d, animatecurve, arrow, changecoords, complexplot, complexplot3d, conformal, conformal3d, contourplot, contourplot3d, coordplot, coordplot3d, densityplot, display, dualaxisplot, fieldplot, fieldplot3d, gradplot, gradplot3d, graphplot3d, implicitplot, implicitplot3d, inequal, interactive, interactiveparams, intersectplot, listcontplot, listcontplot3d, listdensityplot, listplot, listplot3d, loglogplot, logplot, matrixplot, multiple, odeplot, pareto, plotcompare, pointplot, pointplot3d, polarplot, polygonplot, polygonplot3d, polyhedra_supported, polyhedraplot, rootlocus, semilogplot, setcolors, setoptions, setoptions3d, spacecurve, sparsematrixplot, surfdata, textplot, textplot3d, tubeplot]



[ArrayInterpolation, BSpline, BSplineCurve, Interactive, LeastSquares, PolynomialInterpolation, RationalInterpolation, Spline, ThieleInterpolation]


R := [30, 32.5, 37.5, 42.5, 47.5, 50]:

incl := [0, .5, 1, -2, 5, 0]:

phases := [0, (1/12)*Pi, (1/8)*Pi, (1/4)*Pi, (1/2)*Pi, 0]:

colors := [grey, black, blue, red, green, grey]:

orbit := [R[j]*cos(t), R[j]*sin(t), incl[j]*cos(t-phases[j])]:

display(seq(spacecurve(orbit, t = 0 .. 2*Pi, color = colors[j], view = [-56 .. 56, -56 .. 56, -15 .. 15], labels = ["x [AU]", "y [AU]", "z [AU]"]), j = 1 .. 6));



R := [30, 32.5, 37.5, 42.5, 47.5, 50]:

incl := [0, .5, 1, -2, 2*evalf(Pi)-1.75, 0]:

pointplot(R, incl, color = [grey, red, blue, green, black, grey], labels = ["radius", "incl"]);


NewR := [seq(30+.4*i, i = 0 .. 50)]:

Newincl := ArrayInterpolation(R, incl, NewR, method = spline):

pointplot(NewR, Newincl, labels = ["radius", "incl"]);


phases := [0, (1/12)*evalf(Pi)+.3, 3*evalf(Pi)*(1/4), (1/4)*evalf(Pi)+.2, evalf(Pi)/(2.5)+.5, 0]:

pointplot(R, phases, labels = ["radius", "phase"]);


Newphases := ArrayInterpolation(R, phases, NewR, method = spline):

pointplot(NewR, Newphases, labels = ["radius", "phase"]);


t := [seq(0+i*(2*Pi*(1/50)), i = 0 .. 50)]:

f := proc (i, j) options operator, arrow; [NewR[i]*cos(t[j]), NewR[i]*sin(t[j]), Newincl[i]*cos(t[j]-Newphases[i])] end proc;

proc (i, j) options operator, arrow; [NewR[i]*cos(t[j]), NewR[i]*sin(t[j]), Newincl[i]*cos(t[j]-Newphases[i])] end proc


Surface := [seq([seq([NewR[i]*cos(t[j]), NewR[i]*sin(t[j]), Newincl[i]*cos(t[j]-Newphases[i])], i = 1 .. 51)], j = 1 .. 51)]:

plots[surfdata](Surface, labels = ["x [AU]", "y [AU]", "z [AU]"]);




Is it possible to let maple, given a certain equation of the form f(x,y,z)=0, find a parametric form of the surface/volume enclosed by that function?

Dear community,

The VectorCalculus package in Maple 18 exhibits some rather odd behaviour when calculating an integral over a 3D-domain (an elipsoid centered at (0,0,1) with length of semi-axes 2, 2, and 1) given by a 'Region'. It also reports an incorrect result when calculating the flux of a vector field through the surface of this ellipsoid.

See below for a minimal working example:


// integrate several functions over ellipsoid

int(2*x+2*y, [x, y, z] = Region(-2 .. 2, -sqrt(-x^2+4) .. sqrt(-x^2+4), -sqrt(1-(1/4)*x^2-(1/4)*y^2)+1 .. sqrt(1-(1/4)*x^2-(1/4)*y^2)+1));    ---- output: 0

int(2*z, [x, y, z] = Region(-2 .. 2, -sqrt(-x^2+4) .. sqrt(-x^2+4), -sqrt(1-(1/4)*x^2-(1/4)*y^2)+1 .. sqrt(1-(1/4)*x^2-(1/4)*y^2)+1));    ---- output: 32*Pi/3

int(2*x+2*y+2*z, [x, y, z] = Region(-2 .. 2, -sqrt(-x^2+4) .. sqrt(-x^2+4), -sqrt(1-(1/4)*x^2-(1/4)*y^2)+1 .. sqrt(1-(1/4)*x^2-(1/4)*y^2)+1));    ---- output: -32*Pi/3


Why does the integral change sign?


// Calculate flux of vector field over surface of ellipsoid

F2 := VectorField(`<,>`(x^2, y^2, z^2));

S2 := Surface(`<,>`(2*sin(t)*cos(s), 2*sin(t)*sin(s), 1+cos(t)), s = 0 .. 2*Pi, t = 0 .. Pi);

Flux(F2, S2, 'outward');   ---- output: -32*Pi/3


However, since 'z' is positive over the entire ellipsoid, by the Divergence Theorem we know the result should be positive (in fact, equal to +32*Pi/3). Changing 'outward' to 'inward' does not change the sign, by the way.


Is this a bug inside the VectorCalculus package which appears more often, or have I done something wrong?

Thank you for responding and apologies if a similar question has already been answered in another thread.

Best wishes,


Dear all,

I know how interpolating curves using 1D Fourier tranform.


How to use 2D Fourier transform to find a 2D Fourier series to interpolate surfaces as:

f := proc (x, y) options operator, arrow; sin(x)^2+cos(y)^2 end proc

plot3d(f(x, y), x = 0 .. Pi, y = 0 .. Pi)

Or surface data [x,y,f(x,y)].

Thank you

I'd like to plot a surface from three lists in the following way:

For each item in the list X we have a specific curve "plotted" in the plane Y vs Z.

In other terms, we have something like that: each X[i] will be related to two lists, say, Z[1], Z[2], Z[3] and Y[1], Y[2], Y[3], X[i+1] will be related to Z[4],Z[5],Z[6], and Y[4],Y[5],Y[6] and so on...

A very 'thin' surface following this would be, as a example:


Y=[[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29], [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30]]

Z=[[20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49], [21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50]]

I am looking for some tutorial showing something similar but without any success. Please, any kind of help certainly will be absolutely very appreciated. Thanks in advance! Best regards,




I want to draw a solid that lies under z=4+x^2-y^2 and the base is bounded by -1<=x<=1 and 0<=y<=2.

I tried the following, but does not look nice. The plane x=1 is outside of the surface boundary. I also used the range as -1<=x<=1.01, otherwise I can't see the plane.

Thanks for helping.

In a 3d coordinate system I have a circular spacecurve with z-minimum -4 and z-maximum +4. In the same 3d coordinate system I have a 3d surface plot with z-minimum -0.5 and z-maximum +1.3 . When I choose the color option "Z(Hue)" in order to color-code the z-values on the 3d surface and make the topography more clear, I mostly get a totally green 3d surface. It seems that the color scaling is coupled with the spacecurve with z-values of +-4 . How can I uncouple the color scaling from the spacecurve and couple it with the z-range of the surface, while the color-limits shall be at +-1.3 ?

Take a 3d plot of some uneven surface in the xyz space and you want to have the surface colored according to local z-coordinates (e.g. a valley is blue, a peak is red with all rainbow colors inbetween). For such a color-coding one can in principal select the plot option "Color->Z (Hue)". What do you do if the valley and the peak are still more or less green colored? How can you force the valley and peak to have different colors?

I have this surface which I display with the following commands:



It all works, and the surface has nice default rainbow colors, but when I choose Color->Z (Hue) everything turns to green. Also when I manually write in the first of the above lines "color=["Blue","Red"]" the surface turns all red. The ranges of the x and y axis are larger than the z axis by a factor of about 50. Might this be the problem? How can I adjust the color ranges for my small z axis?

hypersurface is a homogenous polynomial

f(x,y) = 0

i do not understand how sampling hypersurface can generate this kind of polynomial


a curve has residual p if it is linked, in a complete intersection, to a curve with residual p-1

0 residual if is a complete intersection of two surfaces

do complete intersection means two surfaces totally overlapped?

why they are not the same one if complete intersection?

How do you plot different kinds of data simultaneously in one graph? E.g. surfdata and spacecurve?


How do you plot a list of values/an array into a surface?


t = [seq(0+i*(2*evalf(Pi)*(1/10)), i = 0 .. 10)]

x:=[3,4,2*evalf(Pi), 7.83]:



plot3d([x[i]*cos(t), x[i]*sin(t), y[i]*cos(t-z[i])],-10..10,-10..10);



I Want to plot only the intersection between this Surfaces 


z = sqrt(x^2+y^2)

y >= abs(x)

x^2+y^2+z^2 >= 4

x^2+y^2+z^2 <= 9


Anyone knows how ?


I currently have:

plot3d(78.9*x+49.1*y+15.7*(1-x-y), x = 0 .. 1, y = 0 .. 1)

I have ratios x, y and z and the ratio of z is implicit from the ratios of x and y (z=1-x-y), therefore whenever x+y>1 the surface is meaningless as it gives z as a negative ratio.

I want the surface to be plotted only for x+y<1, so something like:

plot3d(78.9*x+49.1*y+15.7*(1-x-y), x = 0 .. 1, y = 0 .. 1, x+y<1)

But I can't find a suitable command.

Thanks in advance,



1 2 3 Page 1 of 3