24小时热门版块排行榜    

查看: 1864  |  回复: 2

冯且右11

铜虫 (初入文坛)

[求助] 穷虫50金! MATLAB的fsolve初值问题 已有1人参与

大家好,请教一个问题

在下用fsolve解非线性方程组,可是初值稍微改变,解就跟着变,我取的初值的绝对误差应该已经小于1。

是不是fsolve这个算法不好,有没有什么办法优化呢?


先谢谢各位啦~ 算法见下

function f =  emuch(x)
B = 0.003;
C = 0.0027;
H = x(1)+75*(B+C)+0.5*x(11);
alpha1 = 0.5+6*x(10)-H;
beta1 = H*(0.01-1)+(0.5+6*x(10))*(1+0.01);
gamma1 = 0.01*H;
alpha2 =0.15-x(10);
beta2 = 0.3;
gamma2 = x(10);
alpha3 = 0.3+0.2*x(10)-x(8);
beta3 = x(8)*(0.1-1)+(0.3+0.2*x(10))*(1+0.1);
gamma3 = x(6)*0.1;
Q = 0.01*(1-x(9))+2*x(9)+0.05*x(6);
P = 0.1+0.25*x(6);
R = 0.3*(20*B+2*C+x(1)+x(11)+0.067*x(10));
J = 0.64*(B+x(1)+0.5*x(11)+x(10));

f1 = 0.05*(2*gamma1/(beta1+sqrt(beta1^2-4*alpha1*gamma1)))-0.1*x(1);
f2 = 0.002+0.05*(2*gamma2/(beta2+sqrt(beta2^2-4*alpha2*gamma2)))-Q*x(2);
f3 = 0.006+0.02*(2*gamma1/(beta1+sqrt(beta1^2-4*alpha1*gamma1)))-P*x(3);
f4 =0.02+0.1*(2*gamma3/(beta3+sqrt(beta3^2-4*alpha3*gamma3)))-(0.01+R/(0.05+x(4)))*x(4);
f5 = 50*x(10)*x(12)-(0.06+Q+R/(0.05+x(4)))*x(5);
f6 = 50*x(11)*x(12)-(0.06+P+R/(0.05+x(4)))*x(6);
f7 = (0.005+0.06*x(8))-0.08*x(7);
f8 = x(7)-2*x(8);
f9 = (0.04+2*x(8))*(1-x(9))/(1.05-x(9))-J*x(9)/(0.05+x(9));
f10 = x(2)-x(5);
f11 = x(3)-x(6);
f12 = x(4)-x(5)-x(6);
f = [f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12];
end
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

george1990

金虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
冯且右11: 金币+10, 有帮助, 谢谢啦~,不过这个的精度貌似也不太好,因为从f8显然能看出x7和x8 2014-06-29 18:20:53
楼主可以使用1stOpt这个软件来求解,相对于matlab求解此类方程时的,1stOpt省去了fsolve需要的初值的问题,而且精度一般都很高。
下面是程序:
Parameter x(1:12);
//Constant
Constant   B = 0.003;
Constant   C = 0.0027;
//ConstStr
ConstStr  H = x1+75*(B+C)+0.5*x11;
ConstStr  alpha1 = 0.5+6*x10-H;
ConstStr  beta1 = H*(0.01-1)+(0.5+6*x10)*(1+0.01);
ConstStr  gamma1 = 0.01*H;
ConstStr  alpha2 =0.15-x10;
ConstStr  beta2 = 0.3;
ConstStr  gamma2 = x10;
ConstStr  alpha3 = 0.3+0.2*x10-x8;
ConstStr  beta3 = x8*(0.1-1)+(0.3+0.2*x10)*(1+0.1);
ConstStr  gamma3 = x6*0.1;
ConstStr  Q = 0.01*(1-x9)+2*x9+0.05*x6;
ConstStr  P = 0.1+0.25*x6;
ConstStr  R = 0.3*(20*B+2*C+x1+x11+0.067*x10);
ConstStr  J = 0.64*(B+x1+0.5*x11+x10);

ConstStr   f1 = 0.05*(2*gamma1/(beta1+sqrt(beta1^2-4*alpha1*gamma1)))-0.1*x1;
ConstStr   f2 = 0.002+0.05*(2*gamma2/(beta2+sqrt(beta2^2-4*alpha2*gamma2)))-Q*x2;
ConstStr   f3 = 0.006+0.02*(2*gamma1/(beta1+sqrt(beta1^2-4*alpha1*gamma1)))-P*x3;
ConstStr   f4 =0.02+0.1*(2*gamma2/(beta3+sqrt(beta3^2-4*alpha3*gamma3)))-(0.01+R/(0.05+x4))*x4;
ConstStr   f5 = 50*x10*x12-(0.06+Q+R/(0.05+x4))*x5;
ConstStr   f6 = 50*x11*x12-(0.06+P+R/(0.05+x4))*x6;
ConstStr   f7 = (0.005+0.06*x8)-0.08*x7;
ConstStr   f8 = x7-2*x8;
ConstStr   f9 = (0.04+2*x8)*(1-x9)/(1.05-x9)-J*x9/(0.05+x9);
ConstStr   f10 = x2-x5;
ConstStr   f11 = x3-x6;
ConstStr   f12 = x4-x5-x6;

Function f1=0;
f2=0;
f3=0;
f4=0;
f5=0;
f6=0;
f7=0;
f8=0;
f9=0;
f10=0;
f11=0;
f12=0;
求出来的x系列的值如下:
x1: -0.00241408292469573
x2: -1.19963721286631E-5
x3: -0.00163511248524538
x4: -0.00164712704345382
x5: -1.19975380217937E-5
x6: -0.00163512908617766
x7: -7.04705240745422E-20
x8: 1.73072251386771E-18
x9: -0.00331312406855758
x10: -0.0122596988050143
x11: -1.65447541443873
x12: -0.000192121359156606
但是楼主注意,这个方程组好像答案不唯一,对于x是否还有别的约束条件呢,楼主可以在看看,这系列值只作为楼主参考。
天天多学一点
2楼2014-06-28 23:47:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

冯且右11

铜虫 (初入文坛)

抱歉啊!!! f10 ,f11 ,f12应该改去掉 ,改为:

x10=x2-x5
x11=x3-x6
x12=x4-x5-x6
3楼2014-06-29 18:47:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 冯且右11 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 311求调剂 +6 冬十三 2026-03-18 6/300 2026-03-22 20:18 by edmund7
[考研] 材料与化工085600,总分304,本科有两篇sci参与,求调剂 +4 幸运的酱酱 2026-03-22 5/250 2026-03-22 20:15 by edmund7
[考研] 289材料与化工(085600)B区求调剂 +3 这么名字咋样 2026-03-22 4/200 2026-03-22 17:56 by 云民大李老师
[考研] 284求调剂 +5 Zhao anqi 2026-03-22 5/250 2026-03-22 17:38 by barlinike
[考研] 289求调剂 +7 怀瑾握瑜l 2026-03-20 7/350 2026-03-22 15:57 by ColorlessPI
[考研] 生物学一志愿985,分数349求调剂 +4 zxts12 2026-03-21 7/350 2026-03-22 09:57 by zxts12
[考研] 286求调剂 +10 Faune 2026-03-21 10/500 2026-03-21 23:34 by 314126402
[考研] 材料求调剂 +5 @taotao 2026-03-21 5/250 2026-03-21 20:55 by lbsjt
[考研] 266求调剂 +3 哇呼哼呼哼 2026-03-20 3/150 2026-03-21 16:46 by barlinike
[考研] 085601调剂 358分 +3 zzzzggh 2026-03-20 4/200 2026-03-21 10:21 by luoyongfeng
[考研] 265求调剂 +9 梁梁校校 2026-03-17 9/450 2026-03-21 02:17 by JourneyLucky
[考研] 一志愿华中科技大学,080502,354分求调剂 +5 守候夕阳CF 2026-03-18 5/250 2026-03-21 01:06 by JourneyLucky
[考研] 一志愿武理材料305分求调剂 +6 想上岸的鲤鱼 2026-03-18 7/350 2026-03-21 01:03 by JourneyLucky
[考研] 329求调剂 +9 想上学吖吖 2026-03-19 9/450 2026-03-20 22:01 by luoyongfeng
[考研] 281求调剂(0805) +14 烟汐忆海 2026-03-16 25/1250 2026-03-20 15:47 by yuncha
[考研] 0856调剂,是学校就去 +8 sllhht 2026-03-19 9/450 2026-03-20 14:25 by 无懈可击111
[考研] 085600材料与化工调剂 324分 +10 llllkkkhh 2026-03-18 12/600 2026-03-19 14:33 by llllkkkhh
[考研] 材料考研调剂 +3 xwt。 2026-03-19 3/150 2026-03-19 11:22 by w沐阳w
[考研] 277调剂 +5 自由煎饼果子 2026-03-16 6/300 2026-03-17 19:26 by 李leezz
[考研] 一志愿南京大学,080500材料科学与工程,调剂 +4 Jy? 2026-03-16 4/200 2026-03-17 11:02 by gaoqiong
信息提示
请填处理意见