| 10 | 1/1 | 返回列表 |
| 查看: 1968 | 回復(fù): 9 | ||
津津愛(ài)睡覺(jué)金蟲(chóng) (小有名氣)
|
[求助]
Matlab小白,急需計(jì)算一個(gè)模型,求懂的大神看看怎么修改。萬(wàn)分感謝 已有2人參與
|
|
Matlab小白,急需計(jì)算一個(gè)模型,解微分方程組,求懂的大神看看怎么修改。萬(wàn)分感謝 function dy = funct(t,y) I = 50 % mA F = 96487 % C/mol c0 = 10 % mM Vol = 3.344 % ml Q = 6.5 % ml/min A = 33.75 % cm2 syms x eqn = 0.86*x+0.4*(x*exp(-asinh(theta/(-2*x)))+x*exp(asinh(theta/(-2*x))))==y(3) cma = double(solve(eqn,x)) cmion = (y(3)-0.86*cma)/0.4 phi_sp = asinh(-3/y(2)) phi_ele = asinh(-3/cma) phi_mem = (I*170)/(-1.12*F*(cma.*cosh(phi_ele)+y(2).*cosh(phi_sp))) J = -(1.12*1e-3/170)*(2*cma.*cosh(phi_ele)-2*y(2).*cosh(phi_sp))+3*phi_mem dy=zeros(3,1); dy(1) = (1e4*I/A)/(116*F) dy(2) = -J/(250e-6*0.5)+(c0-y(2))/(0.5*(Vol/Q)*60) dy(3) = J/(290*1e-6) end clear all; c0=10 tspan=[0 600] [t,y] = ode45(@funct,tspan,[0 c0 1.66*c0]) plot(t, y(:,2)) xlabel('t'),ylabel('c') 錯(cuò)誤使用 odearguments (line 92) FUNCT 返回的矢量的長(zhǎng)度為 2,但初始條件矢量的長(zhǎng)度為 3。FUNCT 返回的矢量和初始條件矢量的元素?cái)?shù)目必須相同。 出錯(cuò) ode45 (line 113) [neq, tspan, ntspan, next, t0, tfinal, tdir, y0, f0, odeArgs, odeFcn, ... |

鐵蟲(chóng) (小有名氣)
| theta值未知,eqn方程求解cma可能會(huì)遇到無(wú)解情況,建議提供公式資料看看 |

金蟲(chóng) (小有名氣)
|
function dydt = funct(t,x, y) I = 50; % mA F = 96487; % C/mol c0 = 10; % mM Vol = 3.344; % ml Q = 6.5; % ml/min A = 33.75; % cm2 y1=y(1); y2=y(2); y3=y(3); y3 = 0.86*x+0.4*(x*exp(-asinh(y1/(-2*x)))+x*exp(asinh(y1/(-2*x)))) phi_sp = asinh(-3/y2) phi_ele = asinh(-3/x) phi_mem=(I*170)/(-1.12*F*(x*cosh(phi_ele)+y2*cosh(phi_sp))) J =-(1.12*1e-3/170)*(2*x*cosh(phi_ele)-2*y2*cosh(phi_sp))+3*phi_mem dy1dt = (1e4*I/A)/(116*F) dy2dt = -J/(250e-6*0.5)+(c0-y2)/(0.5*(Vol/Q)*60) dy3dt = J/(290*1e-6) end clear all; I = 50; % mA F = 96487; % C/mol c0 = 10; % mM Vol = 3.344; % ml Q = 6.5; % ml/min A = 33.75; % cm2 tspan=[0 600] x0=c0 [t,x,y] = ode45(@funct,tspan, c0, [0 c0 1.66*c0]) plot(t, theta) xlabel('t'),ylabel('c') 出錯(cuò) ode45 (line 113) [neq, tspan, ntspan, next, t0, tfinal, tdir, y0, f0, odeArgs, odeFcn, ... 改了程序,現(xiàn)在錯(cuò)誤變成這樣。公式就是想解一個(gè)三個(gè)未知數(shù)的微分方程組,但是里面有未知數(shù) |

金蟲(chóng) (小有名氣)
|
function dydt = funct(t,x, y) I = 50; % mA F = 96487; % C/mol c0 = 10; % mM Vol = 3.344; % ml Q = 6.5; % ml/min A = 33.75; % cm2 y1=y(1); y2=y(2); y3=y(3); y3 = 0.86*x+0.4*(x*exp(-asinh(y1/(-2*x)))+x*exp(asinh(y1/(-2*x)))) phi_sp = asinh(-3/y2) phi_ele = asinh(-3/x) phi_mem=(I*170)/(-1.12*F*(x*cosh(phi_ele)+y2*cosh(phi_sp))) J =-(1.12*1e-3/170)*(2*x*cosh(phi_ele)-2*y2*cosh(phi_sp))+3*phi_mem dy1dt = (1e4*I/A)/(116*F) dy2dt = -J/(250e-6*0.5)+(c0-y2)/(0.5*(Vol/Q)*60) dy3dt = J/(290*1e-6) end clear all; I = 50; % mA F = 96487; % C/mol c0 = 10; % mM Vol = 3.344; % ml Q = 6.5; % ml/min A = 33.75; % cm2 tspan=[0 600] x0=c0 [t,x,y] = ode45(@funct,tspan, c0, [0 c0 1.66*c0]) plot(t, theta) xlabel('t'),ylabel('c') 出錯(cuò) ode45 (line 113) [neq, tspan, ntspan, next, t0, tfinal, tdir, y0, f0, odeArgs, odeFcn, ... 改了程序,現(xiàn)在錯(cuò)誤變成這樣。公式就是想解一個(gè)三個(gè)未知數(shù)的微分方程組,但是里面有未知數(shù) |

金蟲(chóng) (小有名氣)

至尊木蟲(chóng) (著名寫(xiě)手)

至尊木蟲(chóng) (著名寫(xiě)手)

鐵蟲(chóng) (小有名氣)

金蟲(chóng) (小有名氣)
|
dy(1)=a*y(1)+b*y(2); y(2)=c*y(1)+d*y(3); dy(3)=-e*y(2)*(y(3)-t)/y(1); function daedi a=-0.2; b=0.5; c=0.1; d=-1; e=0.3; y0=[0.8;0.5;0.1]; %初值,y0(2)=0.5是猜測(cè)值 options=optimset('display','off'); y0(2)=fsolve(@(y2)y2-(c*y0(1)+d*y0(3)),y0(2),options); %求出相容的初值y0(2) % 求解微分方程 [t,y]=ode45(@(t,y)myodefun(t,y,a,b,c,d,e),[0,20],y0); figure('numbertitle','off','name','DAE 求解示例 方法1.2') plot(t,y) legend('y1(t)','y2(t)','y3(t)') function dy=myodefun(t,y,a,b,c,d,e) dy=zeros(3,1); % dy(2)=0很重要,否則反求出y(2)后會(huì)被積分 % 先求解代數(shù)方程,順序很重要 cons=@(y2)y2-(c*y(1)+d*y(3)); % 隱式代數(shù)約束 options=optimset('display','off'); % 關(guān)閉提示 y(2)=fsolve(cons,y(2),options); %用上次的y(2)作為猜測(cè)值 dy(1)=a*y(1)+b*y(2); dy(3)=-e*y(2)*(y(3)-t)/y(1); 現(xiàn)在通過(guò)這個(gè)例子已經(jīng)可以運(yùn)行,想問(wèn)您怎么繼續(xù)編寫(xiě)這個(gè)例子中y(2)隨t的動(dòng)態(tài)變化呢 感謝感謝 |

金蟲(chóng) (小有名氣)
|
dy(1)=a*y(1)+b*y(2); y(2)=c*y(1)+d*y(3); dy(3)=-e*y(2)*(y(3)-t)/y(1); function daedi a=-0.2; b=0.5; c=0.1; d=-1; e=0.3; y0=[0.8;0.5;0.1]; %初值,y0(2)=0.5是猜測(cè)值 options=optimset('display','off'); y0(2)=fsolve(@(y2)y2-(c*y0(1)+d*y0(3)),y0(2),options); %求出相容的初值y0(2) % 求解微分方程 [t,y]=ode45(@(t,y)myodefun(t,y,a,b,c,d,e),[0,20],y0); figure('numbertitle','off','name','DAE 求解示例 方法1.2') plot(t,y) legend('y1(t)','y2(t)','y3(t)') function dy=myodefun(t,y,a,b,c,d,e) dy=zeros(3,1); % dy(2)=0很重要,否則反求出y(2)后會(huì)被積分 % 先求解代數(shù)方程,順序很重要 cons=@(y2)y2-(c*y(1)+d*y(3)); % 隱式代數(shù)約束 options=optimset('display','off'); % 關(guān)閉提示 y(2)=fsolve(cons,y(2),options); %用上次的y(2)作為猜測(cè)值 dy(1)=a*y(1)+b*y(2); dy(3)=-e*y(2)*(y(3)-t)/y(1); 現(xiàn)在通過(guò)這個(gè)例子已經(jīng)可以運(yùn)行,想問(wèn)您怎么繼續(xù)編寫(xiě)這個(gè)例子中y(2)隨t的動(dòng)態(tài)變化呢 感謝感謝 |

| 10 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 化工282求調(diào)劑一志愿211 +3 | NA0912 2026-03-05 | 4/200 |
|
|---|---|---|---|---|
|
[考研] 306求調(diào)劑 +3 | Bahati 2026-03-05 | 3/150 |
|
|
[考研] 334求調(diào)劑 +3 | Trying] 2026-03-03 | 4/200 |
|
|
[考研] 接收調(diào)劑 +18 | 津萌津萌 2026-03-02 | 27/1350 |
|
|
[考研] 江西師范大學(xué)王昆-盧章輝課題組招化學(xué)方向碩士研究生兩名 +3 | 哈哈大俠 2026-02-28 | 3/150 |
|
|
[考研] 290求調(diào)劑 +5 | Bananaiy 2026-03-04 | 5/250 |
|
|
[考研] 一志愿南京大學(xué)資源與環(huán)境專業(yè)283分求調(diào)劑 +3 | 追云?? 2026-03-04 | 3/150 |
|
|
[考研] 一志愿西交化工專碩288專業(yè)課93求調(diào)劑 +6 | 好運(yùn)好運(yùn)接接 2026-03-04 | 6/300 |
|
|
[考研] 281電子信息求調(diào)劑 +5 | jhtfeybgj 2026-03-02 | 9/450 |
|
|
[考研] 復(fù)試調(diào)劑 +3 | 呼呼?~+123456 2026-03-05 | 5/250 |
|
|
[考研] 材料學(xué)碩080500復(fù)試調(diào)劑294 +3 | 四葉zjz 2026-03-04 | 3/150 |
|
|
[考研] 312求調(diào)劑 +8 | 醋精華了一下發(fā)?/a> 2026-03-03 | 10/500 |
|
|
[考研] 化學(xué)0703求調(diào)劑 學(xué)碩 理/工科均可 總分279 +3 | 1一11 2026-03-03 | 5/250 |
|
|
[考研] 清華大學(xué) 材料與化工 353分求調(diào)劑 +5 | awaystay 2026-03-02 | 6/300 |
|
|
[考研] 290分材料工程085601求調(diào)劑 數(shù)二英一 +8 | llx0610 2026-03-02 | 9/450 |
|
|
[考研] 085600材料工程一志愿中科大總分312求調(diào)劑 +9 | 吃宵夜1 2026-02-28 | 11/550 |
|
|
[考研] 哈工大計(jì)算機(jī)劉劼團(tuán)隊(duì)招生 +4 | hit_aiot 2026-03-01 | 6/300 |
|
|
[考研] 291分工科求調(diào)劑 +9 | science餓餓 2026-03-01 | 10/500 |
|
|
[考研] 290求調(diào)劑 +9 | 材料專碩調(diào)劑; 2026-02-28 | 11/550 |
|
|
[考研]
|
LYidhsjabdj 2026-02-28 | 4/200 |
|