A function plotting issue with fplot
7 views (last 30 days)
Show older comments
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 Comments
Geoff Hayes
on 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?
Answers (0)
See Also
Categories
Find more on Annotations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!