How to Plot a function on 3D-sphere?

1 Ansicht (letzte 30 Tage)
Wiqas Ahmad
Wiqas Ahmad am 6 Apr. 2021
Bearbeitet: Wiqas Ahmad am 9 Apr. 2021
I want to plot the function P of the equation shown. I have to obtan the following figure. I have already obtained all the inputs required by this function and have coded a program to get the figure but unable to get it.
N0=100;
r_med=0.5;
sigma_g=7;
N_ang=91;
[P11,P12,P33,P34,beta_s,alpha_c,beta_c] = ZK_W_Cloud_PhaseFunc(N0,r_med,sigma_g,N_ang)
theta=0:1:180;
beta1=180:1:360;
beta=2*beta1;
ph_ft1=P12.*cos(beta);
hph_ft=P11+ph_ft1
[x,y,z]=sphere
x1=x.*hph_ft;
y1=y.*hph_ft;
z1=z.*hph_ft;
S1=surf(x1,y1,z1)

Antworten (1)

Walter Roberson
Walter Roberson am 6 Apr. 2021
N0=100;
r_med=0.5;
sigma_g=7;
N_ang=91;
[P11,P12,P33,P34,beta_s,alpha_c,beta_c] = ZK_W_Cloud_PhaseFunc(N0,r_med,sigma_g,N_ang)
theta=0:1:180; %UNUSED
beta1=180:1:360;
beta=2*beta1;
ph_ft1=P12.*cosd(beta); %beta is degrees!
hph_ft=P11+ph_ft1
[x,y,z]=sphere
x1=x.*hph_ft;
y1=y.*hph_ft;
z1=z.*hph_ft;
S1=surf(x1,y1,z1)
Where is the alpha? Where is the sind(2*beta) ? Or all of the other variables??
It is not a good idea to use variable names that are completely different than the equations.
  3 Kommentare
Walter Roberson
Walter Roberson am 6 Apr. 2021
You added a small number of constants, but I do not see the term?
It is not a good idea to use variable names that are completely different than the equations. Make it easy for anyone who is looking at the equation to see that your implementation matches the equation.
Wiqas Ahmad
Wiqas Ahmad am 9 Apr. 2021
Bearbeitet: Wiqas Ahmad am 9 Apr. 2021
I modified my question and now the code is is according to the question. Hope it will be clear now
N0=100;
r_med=0.5;
sigma_g=7;
N_ang=91;
[P11,P12,P33,P34,beta_s,alpha_c,beta_c] = ZK_W_Cloud_PhaseFunc(N0,r_med,sigma_g,N_ang)
alpha=0:1:180;% angle alpha
beta=180:1:360; %angle beta
ph_ft(alpha,beta)=P11(alpha)+P12(alpha).*(cosd(2*beta)); %beta is in degrees! I have to plot this function
[x,y,z]=sphere
x1=x.*ph_ft;
y1=y.*ph_ft;
z1=z.*ph_ft;
S1=surf(x1,y1,z1)

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu MATLAB finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by