A function plotting issue with fplot
7 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I want to plot the function
vs
. I can get the result using fplot, however the x-range (
) is not
correct. My code is:
v1 = -2.63; v2 = -2.38; gamma=1;
T=[0:0.01:5];
k=pi/2;
l=-k;
w=-2*cos(k);
w1=-2*cos(l);
delta2 = @(T) v2-w+(gamma.*abs(T).^2);
delta1 = @(T) v1-w+gamma*abs(T).^2.*abs(delta2(T)-exp(1i.*k)).^2;
delta21 = @(T) v1-w1+(gamma.*abs(T).^2);
delta11 = @(T) v2-w1+gamma*abs(T).^2.*abs(delta21(T)-exp(1i.*l)).^2;
fplot(@(T) abs((exp(i*k)-exp(-i*k))/(1+(delta2(T)-exp(i*k)).*(exp(i*k)-delta1(T))))^2,[0,5],'g')
hold on
fplot(@(T) abs((exp(i*l)-exp(-i*l))/(1+(delta21(T)-exp(i*l)).*(exp(i*l)-delta11(T))))^2,[0,5],'r')
hold off
The output is alright but the x-axis range seems not correct. The correct figure (ignoring the middle dotted black curve) should look like

What I get is the following

I tried various ways but failed to fix the x-axis issue, what is the problem here?. Any help is highly appreciated. Thanks.
2 commentaires
Geoff Hayes
le 10 Mar 2019
John - is the output correct? If it is, what is the x-axis issue? Why do you think it should look like the first figure?
Réponses (0)
Voir également
Catégories
En savoir plus sur Annotations dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!