How could I plot this function ( I =A* sum( ( (dt.^2)*(B.^2) )/(C.^2) ) with time please? I am getting just a constant line while I expect to get a curve because it is a function of time.

1 次查看(过去 30 天)
I am working with this code but it does not give me the result that I expect :
function RunFisherfixedb
x0=[12 5];
dt = 0.055;
t=(0:dt:1);
n=length(t);
Iall=zeros(1,n);
for i = 1:n
I = Fisherfixedb(t,x0,A,dt);
Iall(i)=I;
end
figure(01)
plot(t,Iall,'k')
xlabel('Time')
ylabel('Fisher Information')
title('Average Fisher information in Two-species predator-prey model')
1;
% function I = Fisherfixedb(t,x,A,dt)
% a1 = 15*x(1) - 3*x(1)*x(2);
% b1 =-5*x(2) + 0.5*x(1)*x(2);
% C= (a1.^2) + (b1.^2);
% B = ( (a1.*(15-3*x(2))+b1.*(.5*x(2))).*a1 ) + ( (a1.*(-3*x(1))+ b1.*(-5+.5* x(1))).*b1);
% I = A*sum( (dt.^2)*((B.^2)/(C.^2)));
end
  5 个评论
Guillaume
Guillaume 2014-11-4
What is the result you see, and the result you expect?
Unfortunately, we can't test your function, since you haven't shown the code for the (badly named) system function.
Note that you may be better off starting a new question as most people won't be looking at a question that has been marked as answered. If you do that, pleas use the {} code button to format your code.

请先登录,再进行评论。

采纳的回答

Guillaume
Guillaume 2014-9-11
t is not used by your function Fisherfixeddb and all the other terms are constant, so of course, you get a constant line.
Fix your function to use t.
Note that you probably have a warning in the editor window precisely telling you that t is unused. Warnings are useful.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

标签

尚未输入任何标签。

Community Treasure Hunt

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

Start Hunting!

Translated by