b=2.2;
d=.4;
g=5.1;
w=6;
m=1.1;
n=2;
fsize=15;
sys=inline(' [(x(1).*(1-(x(1)/g)))-(x(1).*x(2)/((1+m*n)*(w*x(1).^2+1)+x(1))); b.*x(2)*(x(1)+n*(w*x(1).^2+1))./((1+m*n)*(w*x(1).^2+1)+x(1))-d*x(2)]');
options = odeset('RelTol' ,1e-4, 'AbsTol' ,1e-4);
[t,xa]=ode45(sys,[0 100],[.2 1.2],options);
set(gca, 'xtick', [0:2:8], 'FontSize' ,fsize);
plot (xa (: ,1), xa (:, 2));
can any one help me with the code plss Thanqq

댓글 수: 2

Stephen23
Stephen23 2017년 9월 21일
편집: Stephen23 2017년 9월 21일
@Murari Kanumoori: The very first line of the inline documentation states "inline will be removed in a future release. Use Anonymous Functions instead."
Can you explain why you need to use an inline function instead of a much better anonymous function? We are not asking to be annoying, but because we want to give you the best answer we can. And in this case, using anonymous functions is much better than using inline functions.
thankyou.. i changed it from in line to anonymous

댓글을 달려면 로그인하십시오.

 채택된 답변

Walter Roberson
Walter Roberson 2017년 9월 21일

0 개 추천

Do not use inline() unless you are stuck at MATLAB R12 or earlier. Use anonymous functions instead.

댓글 수: 2

can you help me in solving the question please
sys = @(t,x) [(x(1).*(1-(x(1)/g)))-(x(1).*x(2)/((1+m*n)*(w*x(1).^2+1)+x(1))); b.*x(2)*(x(1)+n*(w*x(1).^2+1))./((1+m*n)*(w*x(1).^2+1)+x(1))-d*x(2)];
However, one of the values just keeps increasing, and the integration is very slow as the function tries to keep the error down.
If you switch to ode15s from ode45 then the system finishes quickly, but one of the two values goes to 10^42

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Function Creation에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by