How to plot a data in spherical coordinates?

88 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 Graphics 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!