| 6 | 1/1 | 返回列表 |
| 查看: 1162 | 回復(fù): 5 | ||||
[求助]
matlab lsqnonlin函數(shù)進(jìn)行非線性動(dòng)力學(xué)參數(shù)擬合,求高手指點(diǎn). 已有1人參與
|
|
function kinetics1 clear all clc a0=[10^11 81 0.3]; lb=[0 0 0];ub=[+inf +inf +inf]; c0=[0.0525564 100]; c16exp=... [0.0525564 100 0.0403533 73.3083 0.0267938 50.3759 0.015037 42.1053 0.0082474 24.812 0.00415801 13.9098 0.00278195 11.6541 0.00185881 10.1504 0.00183435 9.77444 0.0015879 9.77444]; c14exp=... [0.0525564 100 0.0493758 89.8496 0.0441658 81.203 0.0378303 72.9323 0.0357841 67.6692 0.0337337 61.6541 0.0276196 54.8872 0.0239832 47.7444 0.018766 40.6015 0.0160359 35.7143 0.0153455 34.5865]; c12exp=... [0.0526 100 0.0516 98.1203 0.0507 94.7368 0.0484 93.2331 0.0464 89.8496 0.0439 80.4511 0.0429 80.8271 0.0407 77.8195 0.0393 76.3158 0.0381 75.5639 0.0365 72.1805]; [a,resnorm,residual,exitflag,output,lambda,jacobian]=lsqnonlin(@objlm,a0,lb,ub,[],c0,c16exp,c14exp,c12exp); ci=nlparci(a,residual,jacobian); fprintf('\n\n使用函數(shù)lsqnonlin()估計(jì)得到的參數(shù)值為:\n'),a function f=objlm(a,c0,c16exp,c14exp,c12exp) %160度 tspan1=[0 0.1005 0.2143 0.3360 0.4365 0.5661 0.6667 0.7593 0.8677 0.9603]; [t,c16]=ode45(@kinetic16,tspan1,c0,[],a); f1=c16(:,1)-c16exp(:,1); f2=c16(:,2)-c16exp(:,2); %140度 tspan2=[0 0.1005 0.1984 0.2857 0.3571 0.4471 0.5529 0.6746 0.8042 0.9074 0.9683]; [t,c14]=ode45(@kinetic14,tspan2,c0,[],a); f3=c14(:,1)-c14exp(:,1); f4=c14(:,2)-c14exp(:,2); %120度 tspan3=[0 0.1005 0.2011 0.2937 0.4021 0.5000 0.5979 0.7090 0.8069 0.8862 0.9894]; [t,c12]=ode45(@kinetic12,tspan3,c0,[],a); f5=c12(:,1)-c12exp(:,1); f6=c12(:,2)-c12exp(:,2); f=[f1;f2;f3;f4;f5;f6]; %構(gòu)造目標(biāo)函數(shù) function dc16dt=kinetic16(t,c16,a) %160度 T1=433.15;R=0.008314; dc16dt=... [-(a(1).*exp(-a(2)./(R.*T1)).*((c16(2)./100).^(a(3))).*c16(1).*0.943) -(7.*a(1).*exp(-a(2)./(R.*T1)).*((c16(2)./100).^(a(3))).*c16(1).*0.943)]; function dc14dt=kinetic14(t,c14,a) %140度 T2=413.15;R=0.008314; dc14dt=... [-(a(1).*exp(-a(2)./(R.*T2)).*((c14(2)./100).^(a(3))).*c14(1).*0.926) -(7.*a(1).*exp(-a(2)./(R.*T2)).*((c14(2)./100).^(a(3))).*c14(1).*0.926)]; function dc12dt=kinetic12(t,c12,a) %120度 T3=393.15;R=0.008314; dc12dt=... [-(a(1).*exp(-a(2)./(R.*T3)).*((c12(2)./100).^(a(3))).*c12(1).*0.907) -(7.*a(1).*exp(-a(2)./(R.*T3)).*((c12(2)./100).^(a(3))).*c12(1).*0.907)]; |
專家顧問 (著名寫手)
![]() |
專家經(jīng)驗(yàn): +31 |
|
這類問題“嘗試”的工作量大。只給一點(diǎn)提示: 1。擬合問題最終數(shù)值上都是“最優(yōu)化”問題,這個(gè)是相對(duì)復(fù)雜的非線性非凸優(yōu)化問題 2。這類優(yōu)化問題的求解,常用的迭代方法或基于牛頓法延伸出來的方法,通常無法找到好的最優(yōu)解 理論上,這類問題,只有唯一的全局最優(yōu)解的情況下,沒有數(shù)值算法能夠確保必然收斂到這個(gè)點(diǎn) 現(xiàn)在通用的方法是: 先用全局優(yōu)化算法(differential-evolution差分演化,最常用,粒子群PSO)作初步篩查,然后再用nonlincon,fmincon之類函數(shù)自帶的局部優(yōu)化算法 通常要多算幾次做比較,可能還要調(diào)整優(yōu)化的參數(shù),直到找到最佳結(jié)果 |

專家顧問 (著名寫手)
![]() |
專家經(jīng)驗(yàn): +31 |

鐵蟲 (初入文壇)
|
您好,我現(xiàn)在研一,也在做matlab非線性擬合求解動(dòng)力學(xué)參數(shù),當(dāng)待求解的參數(shù)多了之后,求解的結(jié)果總是限入局部最優(yōu),請問您怎么解決的?謝謝了! 發(fā)自小木蟲Android客戶端 |
| 6 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 調(diào)劑 +3 | 13853210211 2026-03-24 | 3/150 |
|
|---|---|---|---|---|
|
[考研]
|
pk3725069 2026-03-19 | 17/850 |
|
|
[考研] 300分,材料,求調(diào)劑,英一數(shù)二 +3 | 超贊的 2026-03-24 | 3/150 |
|
|
[考研] 一志愿吉大化學(xué)322求調(diào)劑 +4 | 17501029541 2026-03-23 | 6/300 |
|
|
[考研] 求材料,環(huán)境專業(yè)調(diào)劑 +3 | 18567500178 2026-03-18 | 3/150 |
|
|
[考研] 341求調(diào)劑(一志愿湖南大學(xué)070300) +5 | 番茄頭--- 2026-03-22 | 6/300 |
|
|
[考研] 一志愿國科過程所081700,274求調(diào)劑 +3 | 三水研0水立方 2026-03-23 | 3/150 |
|
|
[考研] 0703化學(xué)求調(diào)劑 +4 | 奶油草莓. 2026-03-22 | 5/250 |
|
|
[考研] 328求調(diào)劑 +4 | LHHL66 2026-03-23 | 4/200 |
|
|
[考研] 北科281學(xué)碩材料求調(diào)劑 +8 | tcxiaoxx 2026-03-20 | 9/450 |
|
|
[考研] 323求調(diào)劑 +6 | 洼小桶 2026-03-18 | 6/300 |
|
|
[考研] 352求調(diào)劑 +3 | 大米飯! 2026-03-22 | 3/150 |
|
|
[考研] 289材料與化工(085600)B區(qū)求調(diào)劑 +3 | 這么名字咋樣 2026-03-22 | 4/200 |
|
|
[考研] 275求調(diào)劑 +6 | shansx 2026-03-22 | 8/400 |
|
|
[考研] 一志愿北京化工大學(xué)070300 學(xué)碩336求調(diào)劑 +5 | vv迷 2026-03-21 | 8/400 |
|
|
[考研] 354求調(diào)劑 +7 | Tyoumou 2026-03-18 | 10/500 |
|
|
[考研] 299求調(diào)劑 +5 | shxchem 2026-03-20 | 7/350 |
|
|
[考研] 085601調(diào)劑 358分 +3 | zzzzggh 2026-03-20 | 4/200 |
|
|
[考研] 288求調(diào)劑 +16 | 于海海海海 2026-03-19 | 16/800 |
|
|
[考研] 求調(diào)劑一志愿南京航空航天大學(xué)289分 +3 | @taotao 2026-03-19 | 3/150 |
|