看板 MATLAB 關於我們 聯絡資訊
抱歉 其實我不太懂程式 只是覺得這巢狀迴圈 J=1:3 應該會跑3次 可市跑出來的ˇ只有J=3 for j=1:3 c=0.18+0.02*(j-1); x=[1e-6,1e-6,1e-6,1-1e-6]; [t, y]=ode45(@diflv4dhet,[0 8888],x,[],c,s,e); for i=2:length(t) if y(i-1,3) >0.1 && y(i,3) <0.1 w =t(i)+((0.1-y(i,3))*(t(i+1)-t(i))/(y(i+1,3)-y(i,3))) ; %time temp time=[time w]; end end T=time(2:end-1)-time(1:end-2) ; T=T(end-49 : end); end point=[c*ones(1,50);T]; ptt=[ptt point]; end -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 120.107.198.122
Append:你為什麼認為跑出來的只有J=3? 04/13 23:32
vincent59:你看到workspace才這麼說的吧??? 04/13 23:41
vincent59:就目前看來 的確已跑了3次 04/13 23:42
vincent59:你想驗證的話 很簡單 你在迴圈裡 打j 04/13 23:43
cancellarame:抱歉 詞不達意 應該是說跑了3回 但是取值只看到1回 04/13 23:55
cancellarame:應該怎麼寫 才能取到3回的值 謝謝 04/13 23:58
rex0707:c要用向量寫吧 不然每換一個j c就被覆蓋一次 04/14 01:10
rex0707:阿 抱歉沒看清楚 你是哪個要取三回的值? 04/14 01:11
rex0707:要取3回的值你有將他設成是矩陣嗎? 04/14 01:12
rex0707:再依序將值寫入 04/14 01:12
cancellarame:應該是ptt 要取3回的值 04/15 01:15
cancellarame:程式目的是要判別是否為週期解 現在是將C值改變 04/15 01:25
vincent59:你能否告訴我,你最後跑出來ptt變數的大小? 04/15 07:40
vincent59:ptt的內容??? 04/15 07:44
vincent59:還有你貼上來的程式其實不能跑的??? 04/15 07:45
vincent59:是哪3回的值???? 04/15 08:21
vincent59:不要讓我們猜阿?? 04/15 08:22
vincent59:如果猜的沒錯,其實你都抓到那3個值 04/15 08:23
vincent59:其中一行改成 point=[c*ones(50,1) T']; 04/15 08:23
vincent59:你就知道我想表達的?? 04/15 08:24
mp19990920:你如果仔細看看就會發現,i迴圈裡面沒有用到j,所以才 04/15 08:50
mp19990920:會有這樣的結果。 04/15 08:50
cancellarame:49 50欄的值分別是 72.7573 72.8094 04/15 11:59
cancellarame:49 50行 vincent59大 改或不改結果都一樣耶 04/15 12:02
vincent59:看樣子 越接近你要問的 04/16 09:15
vincent59:請問mp大 i迴圈裡面沒有用到j是指???? 04/16 09:24
vincent59:請問原po 您說的一樣是指?? 04/16 10:50
cancellarame:抱歉 小弟能力還沒法獨自解決迴圈問題 04/16 12:29
cancellarame:point=[c*ones(1,50);T]; 換成 point=[c*ones(50,1) 04/16 12:30
cancellarame:跑出的 49 50行 的值分別是 72.7573 72.8094 04/16 12:32
cancellarame:[c*ones(1,50);T]換成point=[c*ones(50,1) T']; 04/16 12:58
vincent59:這叫一樣???? 好!咱們來一行一行來研究XD 04/16 16:25
diva:v大加油 04/16 19:19
vincent59:diva大應該也很強吧 xd 04/16 19:40