Surface Plot in Matlab (Cylindrical Coordinates)

Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
1 reply · 20K views
phioder
Messages
25
Reaction score
0
Hello

Trying to plot in MATLAB the final solution equation [tex]u(r,z)[/tex] of the steady state temperatures in the circular cylinder

[tex]u(r,z)[/tex] is defined in cylindrical coordinates and I'm confused trying to understand also how MATLAB plots a mesh.

After some simplification The final solution looks like:

[tex]u(r,z) = u_0 \cdot sinh(\lambda z) \cdot J_0(\lambda r)[/tex]

and it is defined in

[tex]0<r<2[/tex]

[tex]0<z<4[/tex]

[tex]\lambda = constant[/tex]

The solution of the problem is not defined in [tex]\theta[/tex] and most of 3d plot examples I have found yet on the web define a theta vector.

In MATLAB a one dimensional linspace vector for r, one for z is defined and later evaluated with sinh() and J0(). The resulting vector are multiplied as sinh().*J0(), to get again a one dimensional vector, all vectors are of the same size, so I suppose the vectors are right.

Now the question is, is it possible to display [tex]u(x,t)[/tex] as a surface with Matlab? If yes, could anyone give me some kind of tip, hint on how to implement and understand the plot?

Best Regards and Thank you
 
Last edited:
Physics news on Phys.org
The solution is indepeendent of [itex]\theta[/itex], so it doesn't matter, I'd set [itex]r = \sqrt{x^2+y^2}[/itex] and plot in 3-d on that grid. Make [itex]x[/itex] and [itex]y[/itex] on a fine enough grid that you can get a bunch of points for a smooth surface.