How to plot a data in spherical coordinates?

24 views (last 30 days)
Let me explain, what I'm actually solving.
I'm solving Diffusion-Reaction equation(2D) in spherical coordinates(axis-symmetric case).
I'm solving this equation numerically. So at the end I'm getting , r, θ.
So I want to plot this function in r and θ plane instead of palne
I'm attaching data.mat file to this question
Can anyone help in this regard?
Thanks in advance.

Accepted Answer

David Hill
David Hill on 16 Aug 2022
[x,y,z]=sph2cart(th,conc,r);
surf(x,y,z);
  3 Comments
Torsten
Torsten on 16 Aug 2022
Edited: Torsten on 16 Aug 2022
If you solve the equation in r and theta, you also get the solution C in r and theta. So plotting in the r-theta plane would simply mean
[R,THETA] = ndgrid(r,theta);
surf(R,THETA,C)
where C(i,j) = C(r(i),theta(j)).
So you plot over a rectangle with x-axis r and y-axis theta (0<=r<=R, 0<=theta<=2*pi).
If you want to plot in the x-y-plane (thus over the circle with radius R), you must convert to x and y coordinates via x = r*cos(theta), y= r*sin(theta).

Sign in to comment.

More Answers (0)

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Products


Release

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!