| 6 | 1/1 | 返回列表 |
| 查看: 1026 | 回復(fù): 5 | ||||
zhangleiii新蟲 (初入文壇)
|
[求助]
matlab出錯(cuò) 求助高手解答
|
|
function fun=weifen11 global r x ; A ,B, C ,D, F (r) ,G(r) ,H(r) 賦值 x=zeros(2,1); x0=[1 100]; tspan=[0 1]; fun=@(t,x)[I*(x(2)+M)*jifen1-J*x(2)*jifen2-0.1*x(2) -K*x(1)*jifen3-0.01*x(1)]; function a=jifen1 a=Roberg(f1,0,1.25*10^-6) function y1= f1 y1=F.*2.*pi.*r.*A.*(D.*H.*x(1,1)+C.*G.*x(2,1))/(1+C.*G.*x(2,1)+B.*F.*x(2,1)+D.*H.*x(1,1)); %n2 end end function b=jifen2 b=Roberg(f2,0,1.25*10^-6) function y2=f2 y2=G.*2.*pi.*r.*A.*(1+B.*F.*x(2))/(1+C.*G.*x(2)+B.*F.*x(2)+D.*H.*x(1)); end end function c=jifen3 c=Roberg(f3,0,1.25*10^-6) function y3=f3 y3=H*2*pi.*r.*A.*(1+B.*F.*x(2))/(1+C.*G.*x(2)+B.*F.*x(2)+D.*H.*x(1)); %n1 end end options=odeset('reltol',1e-6,'abstol',1e-8); [t,x]=ode45(fun,tspan,x0,options); plot(t,x) end 運(yùn)行出錯(cuò): ??? Subscripted assignment dimension mismatch. Error in ==> Roberg at 12 T(1,1)=(h/2)*(subs(sym(f),findsym(sym(f)),a)+subs(sym(f),findsym(sym(f)),b)); Error in ==> weifen11>jifen1 at 22 a=Roberg(f1,0,1.25*10^-6) Error in ==> weifen11>@(t,x)[I*(x(2)+M)*jifen1-J*x(2)*jifen2-0.1*x(2);-K*x(1)*jifen3-0.01*x(1)] at 18 fun=@(t,x)[I*(x(2)+M)*jifen1-J*x(2)*jifen2-0.1*x(2) Error in ==> funfun\private\odearguments at 110 f0 = feval(ode,t0,y0,args{:}); % ODE15I sets args{1} to yp0. Error in ==> ode45 at 173 [neq, tspan, ntspan, next, t0, tfinal, tdir, y0, f0, odeArgs, odeFcn, ... Error in ==> weifen11 at 40 [t,x]=ode45(fun,tspan,x0,options); |
新蟲 (初入文壇)
榮譽(yù)版主 (著名寫手)
![]() |
專家經(jīng)驗(yàn): +4 |

新蟲 (初入文壇)
|
謝謝你~~上個(gè)問(wèn)題解決了。我又重新調(diào)試了一下 如下: function fun=weifen11 global r x ; A B C D F(r) G(r) H(r) 賦值 fun=@(t,x)[-K.*x(1).*jifen3-0.01.*x(1) I.*(x(2)+M).*jifen1-J.*x(2).*jifen2-0.1.*x(2)]; function a=jifen1 a=Roberg(f1,0,1.25*10^-6) function y1= f1 y1=F.*2.*pi.*r.*A.*(D.*H.*x(1)+C.*G.*x(2))./(1+C.*G.*x(2)+B.*F.*x(2)+D.*H.*x(1)); %isen2 end end function b=jifen2 b=Roberg(f2,0,1.25*10^-6) function y2=f2 y2=G.*2.*pi.*r.*A.*(1+B.*F.*x(2))./(1+C.*G.*x(2)+B.*F.*x(2)+D.*H.*x(1)); %isan1 end end function c=jifen3 c=Roberg(f3,0,1.25*10^-6) function y3=f3 y3=H.*2.*pi.*r.*A.*(1+B.*F.*x(2))./(1+C.*G.*x(2)+B.*F.*x(2)+D.*H.*x(1)); %ipn1 end end x0=[10 10]; tspan=[0 1]; options=odeset('reltol',1e-6,'abstol',1e-8); [t,x]=ode45(weifen11,tspan,x0,options) plot(t,x) end 運(yùn)行出錯(cuò) ??? Maximum recursion limit of 500 reached. Use set(0,'RecursionLimit',N) to change the limit. Be aware that exceeding your available stack space can crash MATLAB and/or your computer. Error in ==> besschk at 50 end 我實(shí)在弄不懂了,謝謝幫忙啊~~ |
榮譽(yù)版主 (著名寫手)
![]() |
專家經(jīng)驗(yàn): +4 |
|
你的程序一定使用了遞歸調(diào)用,MATLAB限制了遞歸調(diào)用的次數(shù),默認(rèn)是500次 所謂遞歸就是自己調(diào)用自己,因?yàn)檫@樣比較占用資源,MATLAB為了防止死循環(huán),所以限制了遞歸次數(shù) 你可以使用 set(0,'RecursionLimit',1000)將遞歸次數(shù)修改為1000次 我覺(jué)得你的函數(shù)修改下比較好 function fun=weifen11(t,x) global r x ; A B C D F(r) G(r) H(r) 賦值 a=Roberg(f1,0,1.25*10^-6) b=Roberg(f2,0,1.25*10^-6) c=Roberg(f3,0,1.25*10^-6) fun=[-K.*x(1).*c-0.01.*x(1) I.*(x(2)+M).*a-J.*x(2).*b-0.1.*x(2)]; function y1= f1(x) y1=F.*2.*pi.*r.*A.*(D.*H.*x(1)+C.*G.*x(2))./(1+C.*G.*x(2)+B.*F.*x(2)+D.*H.*x(1)); %isen2 function y2=f2(x) y2=G.*2.*pi.*r.*A.*(1+B.*F.*x(2))./(1+C.*G.*x(2)+B.*F.*x(2)+D.*H.*x(1)); %isan1 function y3=f3(x) y3=H.*2.*pi.*r.*A.*(1+B.*F.*x(2))./(1+C.*G.*x(2)+B.*F.*x(2)+D.*H.*x(1)); %ipn1 |

| 6 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 一志愿武漢理工材料工程專碩調(diào)劑 +8 | Doleres 2026-03-19 | 8/400 |
|
|---|---|---|---|---|
|
[考研] 329求調(diào)劑 +8 | 想上學(xué)吖吖 2026-03-19 | 8/400 |
|
|
[考研] 274求調(diào)劑 +9 | S.H1 2026-03-18 | 9/450 |
|
|
[考研] 085600材料與化工 +7 | 安全上岸! 2026-03-16 | 7/350 |
|
|
[考研] 295材料求調(diào)劑,一志愿武漢理工085601專碩 +5 | Charlieyq 2026-03-19 | 5/250 |
|
|
[考研] 353求調(diào)劑 +3 | 拉鉤不許變 2026-03-20 | 3/150 |
|
|
[考研] 求調(diào)劑 +3 | 暗涌afhb 2026-03-16 | 3/150 |
|
|
[考研] 梁成偉老師課題組歡迎你的加入 +9 | 一鴨鴨喲 2026-03-14 | 11/550 |
|
|
[考研] 321求調(diào)劑 +8 | 何潤(rùn)采123 2026-03-18 | 10/500 |
|
|
[考研] 0703化學(xué)調(diào)劑 +4 | 18889395102 2026-03-18 | 4/200 |
|
|
[考研] 一志愿985,本科211,0817化學(xué)工程與技術(shù)319求調(diào)劑 +10 | Liwangman 2026-03-15 | 10/500 |
|
|
[考研] 344求調(diào)劑 +6 | knight344 2026-03-16 | 7/350 |
|
|
[考研] 334求調(diào)劑 +3 | 志存高遠(yuǎn)意在機(jī)?/a> 2026-03-16 | 3/150 |
|
|
[考研] 268求調(diào)劑 +8 | 一定有學(xué)上- 2026-03-14 | 9/450 |
|
|
[考研] 301求調(diào)劑 +4 | A_JiXing 2026-03-16 | 4/200 |
|
|
[考研] 290求調(diào)劑 +3 | p asserby. 2026-03-15 | 4/200 |
|
|
[考研] 302求調(diào)劑 +4 | 小賈同學(xué)123 2026-03-15 | 8/400 |
|
|
[論文投稿] 有沒(méi)有大佬發(fā)小論文能帶我個(gè)二作 +3 | 增銳漏人 2026-03-17 | 4/200 |
|
|
[考研] 考研調(diào)劑 +3 | 淇ya_~ 2026-03-17 | 5/250 |
|
|
[考研] 0703 物理化學(xué)調(diào)劑 +3 | 我可以上岸的對(duì)?/a> 2026-03-13 | 5/250 |
|