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

3 ビュー (過去 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 Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by