楼主: killerxiong
17400 2

[问答] 在matlab中利用solve来解两个未知数的方程组解不出来,求高手指教 [推广有奖]

  • 0关注
  • 0粉丝

大专生

88%

还不是VIP/贵宾

-

威望
0
论坛币
10 个
通用积分
29.3319
学术水平
2 点
热心指数
2 点
信用等级
0 点
经验
466 点
帖子
30
精华
0
在线时间
84 小时
注册时间
2014-11-24
最后登录
2021-10-10

楼主
killerxiong 发表于 2015-4-1 22:12:12 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
这里有两个关于未知数c1和c2的方程,其中一个方程只包含未知数c1,另一个方程包含c1和c2,我单独解第一个方程的话可以得到c1的解,但是第二个方程就解不出结果了,请高手指点一下。
方程一是:1.05157-1.222668+.0048063*(1-exp(-.479452*c1))+.0098652*(1-exp(-.9835616*c1))+.0147561*(1-exp(-1.479452*c1))+.0196046*(1-exp(-1.983562*c1))+.0242522*(1-exp(-2.479452*c1))+.0288602*(1-exp(-2.983562*c1))+0.4*.9673068*(1-exp(-2.983562*c1))=0
方程二是:1.12898-3.341505+.0076901*(1-exp(-.479452*c1))+.0157843*(1-exp(-.9835616*c1))+.0236098*(1-exp(-1.479452*c1))+.0313674*(1-exp(-1.983562*c1))+.0388035*(1-exp(-2.479452*c1))+.0461763*(1-exp(-2.983562*c1))+.0532934*(1-exp(-2.983562*c1-.4986301*c2))+.0603177*(1-exp(-2.983562*c1-1.00274*c2))+.0670641*(1-exp(-2.983562*c1-1.49863*c2))+.0737597*(1-exp(-2.983562*c1-2.00274*c2))+.0801891*(1-exp(-2.983562*c1-2.49863*c2))+.0865684*(1-exp(-2.983562*c1-3.00274*c2))+.0926922*(1-exp(-2.983562*c1-3.49863*c2))+.0987661*(1-exp(-2.983562*c1-4.00274*c2))+.1046266*(1-exp(-2.983562*c1-4.50137*c2))+.1104049*(1-exp(-2.983562*c1-5.005479*c2))+0.4*.8637214*(1-exp(-2.983562*c1-5.005479*c2))=0

下面是我的程式:>> c1=solve('1.05157-1.222668+.0048063*(1-exp(-.479452*c1))+.0098652*(1-exp(-.9835616*c1))+.0147561*(1-exp(-1.479452*c1))+.0196046*(1-exp(-1.983562*c1))+.0242522*(1-exp(-2.479452*c1))+.0288602*(1-exp(-2.983562*c1))+0.4*.9673068*(1-exp(-2.983562*c1))','c1')

c1 =

0.15438446386393466762440363354485
>> c2=solve('1.12898-3.341505+.0076901*(1-exp(-.479452*c1))+.0157843*(1-exp(-.9835616*c1))+.0236098*(1-exp(-1.479452*c1))+.0313674*(1-exp(-1.983562*c1))+.0388035*(1-exp(-2.479452*c1))+.0461763*(1-exp(-2.983562*c1))+.0532934*(1-exp(-2.983562*c1-.4986301*c2))+.0603177*(1-exp(-2.983562*c1-1.00274*c2))+.0670641*(1-exp(-2.983562*c1-1.49863*c2))+.0737597*(1-exp(-2.983562*c1-2.00274*c2))+.0801891*(1-exp(-2.983562*c1-2.49863*c2))+.0865684*(1-exp(-2.983562*c1-3.00274*c2))+.0926922*(1-exp(-2.983562*c1-3.49863*c2))+.0987661*(1-exp(-2.983562*c1-4.00274*c2))+.1046266*(1-exp(-2.983562*c1-4.50137*c2))+.1104049*(1-exp(-2.983562*c1-5.005479*c2))+0.4*.8637214*(1-exp(-2.983562*c1-5.005479*c2))','c2')
Warning: Explicit solution could not be found.
> In solve at 179

c2 =

[ empty sym ]

我试过了fsolve函数,但是计算出来的结果跟上面计算出来的c1差太多,理论上c1和c2都是零点几的数字。
这个问题困扰了我好多天,实在想不出来该怎么解了。
请问高手,我要解这两个方程该怎样改程式啊?谢谢
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:MATLAB matla Solve atlab Mat matlab 方程组 未知数 solve 二元

沙发
enxizheng 发表于 2015-4-17 16:45:58
function y = myfunc( c )
y = 1.05157-1.222668+.0048063*(1-exp(-.479452*c(1)))+.0098652*(1-exp(-.9835616*c(1)))+...
    .0147561*(1-exp(-1.479452*c(1)))+.0196046*(1-exp(-1.983562*c(1)))+...
    .0242522*(1-exp(-2.479452*c(1)))+.0288602*(1-exp(-2.983562*c(1)))+...
    0.4*.9673068*(1-exp(-2.983562*c(1)));
end

命令窗口:
[x,fval] = fsolve(@myfunc,0.1)

结果:
x =
    0.1544
fval =
  -6.9046e-10

藤椅
enxizheng 发表于 2015-4-17 16:53:25
第二个函数, 当c1确定为0.15438446386393466762440363354485时, 该函数关于c2似乎没有零点, 当c2趋于无穷时, 该函数的似乎图像趋于-1. 你可以试着画一下第二个函数关于c2的图像.

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-4 17:16