Code for Delay differential analytical Solution. Its showing error. Please correct it. Kindly do the Needful.

조회 수: 2 (최근 30일)
t=linspace(0,120,10);
%Xo = [0.005;0.0007;2];
a=0.0002; p=0.0001; s=0.006; r=0.0005; k=0.0138; q=0.2; tau=0.1; b=1;
l=0.005; m=0.0007; n=2;
x2 = b.*p - exp(-p.*t).*b.*p+ a.*l.*n.*exp(r.*t - r.*tau - s.*t + s.*tau)./(p + r - s) + p^2.*exp(-p.*t).*b.*t - b.*p + exp(-p.*t).*(-a.*l.*n.*exp(-r.*tau + s.*tau)./(p + r - s) + b.*p)+(1./(p+r-s).*(-s+p).*p.*s.*k((p + r - s).*(p.*s.*k.*(b.*p.^2.*(-s + p).*(-p.*t.^2./2 + exp(p.*t)./p) - a.*l.*m.*q.*exp((p - r).*tau + r.*t)./r) + k.*a.^2.*l.*n.^2.*p.*(-s + p).*exp((p + r - 2.*s).*t + 2.*s.*tau)./(p + r - 2.*s) + a.*l.*m.*n.*r.*s.*(-s + p).*exp((p + s).*tau + t.*(r - s))./(r - s) - ((k.*a.*n - l.*s).*p + m.*r.*s).*l.*(-s + p).*n.*a.*exp((p + r - s).*t + s.*tau)./(p + r - s) - a.*l.^2.*n.*p.*s.*(-s + p).*exp((p + 2.*r - s).*t + s.*tau)./(p + 2.*r - s)) + t.*b.*k.*p.^3.*r.*s.^2 + k.*s.*(-n.*p.^2 + (q.*m + n.*s).*p + m.*q.*(r - s)).*p.*l.*a.*exp((p + r - s).*t - tau.*(r - s))./(p + r - s) + t.*p.^3.*exp(-tau.*(r - s)).*a.*l.*n.*s.*k - t.*b.*k.*p.^3.*s.^3 + 2.*t.*b.*k.*p.^4.*s.^2 - t.*b.*k.*p.^5.*s - t.*b.*k.*p.^4.*r.*s - t.*p.^2.*s.^2.*exp(-tau.*(r - s)).*a.*l.*n.*k)-1./((p + r - s).*(-s + p).*p.*s.*k).*((p + r - s).*(p.*s.*k.*(b.*p.*(-s + p) - a.*l.*m.*q.*exp((p - r).*tau)./r) + k.*a.^2.*l.*n.^2.*p.*(-s + p).*exp(2.*s.*tau)./(p + r - 2.*s) + a.*l.*m.*n.*r.*s.*(-s + p).*exp((p + s).*tau)./(r - s) - ((k.*a.*n - l.*s).*p + m.*r.*s).*l.*(-s + p).*n.*a.*exp(s.*tau)./(p + r - s) - a.*l.^2.*n.*p.*s.*(-s + p).*exp(s.*tau)./(p + 2.*r - s)) + k.*s.*(-n.*p.^2 + (q.*m + n.*s).*p + m.*q.*(r - s)).*p.*l.*a.*exp(-tau.*(r - s))./(p + r - s))).*exp(-p.*t);
plot(t,x2,'*');

답변 (1개)

Dyuman Joshi
Dyuman Joshi 2024년 1월 19일
There is missing operator between k and the left parenthesis as shown below -
Fix it and the code will work.
t=linspace(0,120,10);
%Xo = [0.005;0.0007;2];
a=0.0002; p=0.0001; s=0.006; r=0.0005; k=0.0138; q=0.2; tau=0.1; b=1;
l=0.005; m=0.0007; n=2;
x2 = b.*p - exp(-p.*t).*b.*p+ a.*l.*n.*exp(r.*t - r.*tau - s.*t + s.*tau)./(p + r - s) + p^2.*exp(-p.*t).*b.*t - b.*p + exp(-p.*t).*(-a.*l.*n.*exp(-r.*tau + s.*tau)./(p + r - s) + b.*p) ...
% vv
+ (1./(p+r-s).*(-s+p).*p.*s.*k((p + r - s).*(p.*s.*k.*(b.*p.^2.*(-s + p).*(-p.*t.^2./2 + exp(p.*t)./p) - a.*l.*m.*q.*exp((p - r).*tau + r.*t)./r) + k.*a.^2.*l.*n.^2.*p.*(-s + p).*exp((p + r - 2.*s).*t + 2.*s.*tau)./(p + r - 2.*s) + a.*l.*m.*n.*r.*s.*(-s + p).*exp((p + s).*tau + t.*(r - s))./(r - s) - ((k.*a.*n - l.*s).*p + m.*r.*s).*l.*(-s + p).*n.*a.*exp((p + r - s).*t + s.*tau)./(p + r - s) - a.*l.^2.*n.*p.*s.*(-s + p).*exp((p + 2.*r - s).*t + s.*tau)./(p + 2.*r - s)) + t.*b.*k.*p.^3.*r.*s.^2 + k.*s.*(-n.*p.^2 + (q.*m + n.*s).*p + m.*q.*(r - s)).*p.*l.*a.*exp((p + r - s).*t - tau.*(r - s))./(p + r - s) + t.*p.^3.*exp(-tau.*(r - s)).*a.*l.*n.*s.*k - t.*b.*k.*p.^3.*s.^3 + 2.*t.*b.*k.*p.^4.*s.^2 - t.*b.*k.*p.^5.*s - t.*b.*k.*p.^4.*r.*s - t.*p.^2.*s.^2.*exp(-tau.*(r - s)).*a.*l.*n.*k)-1./((p + r - s).*(-s + p).*p.*s.*k).*((p + r - s).*(p.*s.*k.*(b.*p.*(-s + p) - a.*l.*m.*q.*exp((p - r).*tau)./r) + k.*a.^2.*l.*n.^2.*p.*(-s + p).*exp(2.*s.*tau)./(p + r - 2.*s) + a.*l.*m.*n.*r.*s.*(-s + p).*exp((p + s).*tau)./(r - s) - ((k.*a.*n - l.*s).*p + m.*r.*s).*l.*(-s + p).*n.*a.*exp(s.*tau)./(p + r - s) - a.*l.^2.*n.*p.*s.*(-s + p).*exp(s.*tau)./(p + 2.*r - s)) + k.*s.*(-n.*p.^2 + (q.*m + n.*s).*p + m.*q.*(r - s)).*p.*l.*a.*exp(-tau.*(r - s))./(p + r - s))).*exp(-p.*t);
plot(t,x2,'*');
  댓글 수: 5
Dyuman Joshi
Dyuman Joshi 2024년 1월 19일
편집: Dyuman Joshi 2024년 1월 19일
Hmmm, when I made my comment, the mistake was not corrected. The code seems to be working now, with the element-wise multiplication being used as the missing operation.
Torsten
Torsten 2024년 1월 19일
Small things are done immediately, miracles take a little longer... :-)

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

카테고리

Help CenterFile Exchange에서 MATLAB에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by