24小时热门版块排行榜    

查看: 1973  |  回复: 4

dingyy1987

金虫 (小有名气)

[求助] 哪位大神有istopt,我网上下了一个不能运行sharedmodel,求帮我运行一下 已有2人参与

Title "123";
Parameter c1,c2,c3,c4,c5;
Variable x,z,f;
SharedModel;
Function
        z=(x^c2/c3/c4)^(1/c4);
        f=c1*(x^c2/c3/c4)^(1/c4)*exp(-1/c4)+c5*(1-exp(-1/c4));
data;
14857.77758        0.0414        8.94345E6
18553.17237        0.05291        8.99335E6
20174.23991        0.06071        8.98066E6
24127.20834        0.07239        8.98738E6
24273.43798        0.07442        9.01031E6
26951.77543        0.08156        9.05148E6
20564.9827        0.07419        8.59135E6
19910.72847        0.07655        8.38573E6
18344.07188        0.07431        8.19985E6
16706.67637        0.07078        8.1676E6
16478.50121        0.0693        8.33608E6
22360.23753        0.08006        8.7983E6
21293.07227        0.07569        8.8397E6
20308.9913        0.07284        8.78015E6
23946.8144        0.08034        8.8947E6
20146.16809        0.07223        8.61393E6
17522.67615        0.06795        8.41823E6
17196.59303        0.06577        8.45751E6
17575.12863        0.06553        8.43412E6
15275.12691        0.0583        8.35688E6
18133.81317        0.06291        8.55274E6
18676.61758        0.06373        8.62984E6
16488.34249        0.05812        8.47193E6
16964.95475        0.06073        8.4801E6
17575.16675        0.06188        8.50543E6
17177.05496        0.05957        8.52406E6
15914.92064        0.05696        8.523E6
14213.56581        0.05257        8.42825E6
15066.24199        0.05465        8.42138E6
15927.43786        0.05661        8.44597E6
13486.53921        0.0505        8.27752E6
13013.96774        0.04854        8.32841E6
13728.11816        0.05051        8.39552E6
14144.65298        0.05275        8.41224E6
14954.59782        0.05585        8.40791E6
13582.45324        0.05299        8.31854E6
12648.72128        0.0508        8.27208E6
11698.11831        0.04785        8.21884E6
11582.30157        0.04853        8.22806E6
10380.45227        0.04524        8.15268E6
11064.31308        0.04744        8.19212E6
11121.39599        0.04783        8.15213E6
11078.61898        0.04852        8.08062E6
9802.8059        0.0446        8.00574E6
7929.85965        0.04011        7.80904E6
9503.21012        0.047        7.85323E6
8308.91314        0.04326        7.79567E6
8082.84269        0.04295        7.78816E6
7749.99714        0.04217        7.72199E6
6839.21332        0.03864        7.56499E6
6910.27878        0.03997        7.51553E6
6940.63115        0.04122        7.44532E6
6401.43753        0.04093        7.32896E6
5752.16969        0.0386        7.21224E6
4958.64579        0.03575        7.08191E6
4917.3898        0.03696        7.00645E6
4279.60599        0.03513        6.83156E6
3229.51003        0.02891        6.70232E6
2500.59496        0.02539        6.50041E6
2086.75039        0.02345        6.29762E6
2273.74314        0.02434        6.3008E6
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
不能运行是版本问题吧。
z和f相差的太大了,很难保证两个拟合的都好。
2楼2016-10-25 14:39:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yz457694

铁杆木虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
dingyy1987: 金币+50, ★★★★★最佳答案, 很有帮助,而且也很热心 2016-10-25 20:48:03
用matlab给你编了个程序
主程序:
CODE:
%共享参数拟合
%原理:非线性最小二乘拟合
clear,clc
format long
data=[
14857.77758  0.0414  8.94345E6
18553.17237  0.05291  8.99335E6
20174.23991  0.06071  8.98066E6
24127.20834  0.07239  8.98738E6
24273.43798  0.07442  9.01031E6
26951.77543  0.08156  9.05148E6
20564.9827  0.07419  8.59135E6
19910.72847  0.07655  8.38573E6
18344.07188  0.07431  8.19985E6
16706.67637  0.07078  8.1676E6
16478.50121  0.0693  8.33608E6
22360.23753  0.08006  8.7983E6
21293.07227  0.07569  8.8397E6
20308.9913  0.07284  8.78015E6
23946.8144  0.08034  8.8947E6
20146.16809  0.07223  8.61393E6
17522.67615  0.06795  8.41823E6
17196.59303  0.06577  8.45751E6
17575.12863  0.06553  8.43412E6
15275.12691  0.0583  8.35688E6
18133.81317  0.06291  8.55274E6
18676.61758  0.06373  8.62984E6
16488.34249  0.05812  8.47193E6
16964.95475  0.06073  8.4801E6
17575.16675  0.06188  8.50543E6
17177.05496  0.05957  8.52406E6
15914.92064  0.05696  8.523E6
14213.56581  0.05257  8.42825E6
15066.24199  0.05465  8.42138E6
15927.43786  0.05661  8.44597E6
13486.53921  0.0505  8.27752E6
13013.96774  0.04854  8.32841E6
13728.11816  0.05051  8.39552E6
14144.65298  0.05275  8.41224E6
14954.59782  0.05585  8.40791E6
13582.45324  0.05299  8.31854E6
12648.72128  0.0508  8.27208E6
11698.11831  0.04785  8.21884E6
11582.30157  0.04853  8.22806E6
10380.45227  0.04524  8.15268E6
11064.31308  0.04744  8.19212E6
11121.39599  0.04783  8.15213E6
11078.61898  0.04852  8.08062E6
9802.8059  0.0446  8.00574E6
7929.85965  0.04011  7.80904E6
9503.21012  0.047  7.85323E6
8308.91314  0.04326  7.79567E6
8082.84269  0.04295  7.78816E6
7749.99714  0.04217  7.72199E6
6839.21332  0.03864  7.56499E6
6910.27878  0.03997  7.51553E6
6940.63115  0.04122  7.44532E6
6401.43753  0.04093  7.32896E6
5752.16969  0.0386  7.21224E6
4958.64579  0.03575  7.08191E6
4917.3898  0.03696  7.00645E6
4279.60599  0.03513  6.83156E6
3229.51003  0.02891  6.70232E6
2500.59496  0.02539  6.50041E6
2086.75039  0.02345  6.29762E6
2273.74314  0.02434  6.3008E6];
x=data(:,1);
ze=data(:,2);
fe=data(:,3);
fun=@(c)myfun(x,c,ze,fe);
c0=[7.55629E8,0.18679,46.54595,0.35525,6.06252E6]';%初值
options = optimset('Display','on','MaxFunEvals',1000,'MaxIter',1000);
c=lsqnonlin(fun,c0,[],[],options)
zc=(x.^c(2)/c(3)/c(4)).^(1/c(4));
fc=c(1)*(x.^c(2)/c(3)/c(4)).^(1/c(4)).*exp(-1/c(4))+c(5)*(1-exp(-1/c(4)));

%相关系数
ye=[ze;fe];
yc=[zc;fc];
R=corrcoef(ye,yc)

%绘图
subplot(2,1,1);
scatter(x,ze,'o');
hold on
scatter(x,zc,'+');
subplot(2,1,2);
scatter(x,fe,'o');
hold on
scatter(x,fc,'+')

函数
CODE:
function y=myfun(x,c,ze,fe)
    zc=(x.^c(2)/c(3)/c(4)).^(1/c(4));
    fc=c(1)*(x.^c(2)/c(3)/c(4)).^(1/c(4)).*exp(-1/c(4))+c(5)*(1-exp(-1/c(4)));
    n=length(zc);
    i=1:n;
    y=(zc-ze).^2+(fc-fe).^2;

结果:
c =
  1.0e+008 *
   7.556291199986442
   0.000000001867029
   0.000000465455226
   0.000000003562897
   0.060625164104285
R=0.999425581659652
见图1
哪位大神有istopt,我网上下了一个不能运行sharedmodel,求帮我运行一下
图1.jpg

3楼2016-10-25 16:17:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingyy1987

金虫 (小有名气)

引用回帖:
3楼: Originally posted by yz457694 at 2016-10-25 16:17:27
用matlab给你编了个程序
主程序:

%共享参数拟合
%原理:非线性最小二乘拟合
clear,clc
format long
data=;
x=data(:,1);
ze=data(:,2);
fe=data(:,3);
fun=@(c)myfun(x,c,ze,fe);
c0=';%初值
options ...

很厉害,请问一下,你初始参数怎么定的?
每次我改初始参数后,拟合效果就很差,就是说本程序严重依赖初始参数的预定。
不知道是误差规定的,还是迭代不够??
4楼2016-10-25 20:00:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yz457694

铁杆木虫 (正式写手)

你在这个值附近修改结果变差是因为达到了一些边界条件,比如迭代过程MaxFunEvals,MaxIter等参数超过了预设的值,运行结束的时候命令窗口会提示拟合结束的原因,你可以相应的在options那一行代码里面增强一下迭代参数,结果就还是会收敛在这个值(你的数据z,f之间量级差太大了,所以迭代参数可以调高一些)。这个初值开始也很头大,后来观察发现z中只含有c2,c3,c4,f中全都包含,就想试了试先通过z-x拟合确定c2,c3,c4,然后固定c2,c3,c4,拟合f-x,结果收敛还不错(通过origin实现),然后作为初值用matlab来整体拟合。

发自小木虫Android客户端
5楼2016-10-25 20:31:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 dingyy1987 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 北科281学硕材料求调剂 +17 tcxiaoxx 2026-03-20 19/950 2026-03-26 16:04 by 不吃魚的貓
[考研] 材料学硕297已过四六级求调剂推荐 +13 adaie 2026-03-19 13/650 2026-03-26 14:05 by 小小麦片
[考研] 招08考数学 +8 laoshidan 2026-03-20 17/850 2026-03-25 17:52 by 一个红太阳
[考研] 085602 289分求调剂 +7 WWW西西弗斯 2026-03-24 7/350 2026-03-25 14:28 by 3Strings
[考研] 359求调剂 +3 王了个楠 2026-03-25 3/150 2026-03-25 12:50 by Dyhoer
[考研] 07化学280分求调剂 +7 722865 2026-03-23 7/350 2026-03-25 09:29 by aa331100
[考研] 0856材料专硕353求调剂 +6 NIFFFfff 2026-03-20 6/300 2026-03-24 21:02 by hello七七
[考研] 300求调剂,材料科学英一数二 +5 leaflight 2026-03-24 5/250 2026-03-24 16:25 by laoshidan
[考研] 一志愿吉大化学322求调剂 +4 17501029541 2026-03-23 6/300 2026-03-24 10:21 by 戴围脖的小蚊子
[考研] 一志愿河北工业大学0817化工278分求调剂 +7 jhybd 2026-03-23 12/600 2026-03-24 09:03 by jhybd
[考研] 298求调剂 +8 上岸6666@ 2026-03-20 8/400 2026-03-23 11:02 by laoshidan
[考研] 280分求调剂 一志愿085802 +4 PUMPT 2026-03-22 7/350 2026-03-22 22:13 by 星空星月
[考研] 315分,诚求调剂,材料与化工085600 +3 13756423260 2026-03-22 3/150 2026-03-22 20:11 by edmund7
[考研] 319求调剂 +4 小力气珂珂 2026-03-20 4/200 2026-03-22 15:53 by ColorlessPI
[考研] 336求调剂 +5 rmc8866 2026-03-21 5/250 2026-03-21 17:24 by 学员8dgXkO
[考研] 求调剂 +3 白QF 2026-03-21 3/150 2026-03-21 13:12 by zhukairuo
[考研] 330求调剂0854 +3 assdll 2026-03-21 3/150 2026-03-21 13:01 by 搏击518
[考研] 22408 344分 求调剂 一志愿 华电计算机技术 +4 solanXXX 2026-03-20 4/200 2026-03-20 23:49 by alg094825
[考研] 295复试调剂 +8 简木ChuFront 2026-03-19 8/400 2026-03-20 20:44 by zhukairuo
[考研] 320求调剂0856 +3 不想起名字112 2026-03-19 3/150 2026-03-19 22:53 by 学员8dgXkO
信息提示
请填处理意见