matlab 求指数方程

问题描述:

matlab 求指数方程
用solve函数求不出来,不知道哪里不对.方程是a*exp(b)+c=9.846659,a*exp(4*b)+c=7.03417,a*exp(8*b)+c=4.489171.麻烦把程序贴出来~
我要求a,b,c系数是多少。
1个回答 分类: 综合 2014-11-23

问题解答:

我来补答
用solve函数可以解,
syms a b c
s=solve(a*exp(b)+c-9.846659,a*exp(4*b)+c-7.03417,a*exp(8*b)+c-4.489171)
s =
a:[6x1 sym]
b:[6x1 sym]
c:[6x1 sym]
s.a
s.b
s.c
再问: 人工算了一下,算出来有一组a,b,c是实数的(应该没有算错),怎么用给的程序算显示的都是负数结果啊?我想明白这个方程有没有全是实数的结果?有的话我只需要实数的结果。谢谢~
再答: 是的,只有一组是实数解,其余都是复数解

>> s.a

ans =
11.039
-.81556-.72430*i
-2.9595-5.7391*i
-.77709
-2.9595+5.7391*i
-.81556+.72430*i
>> s.b
ans =
-.11179
.18171+1.5079*i
-.28405+2.1337*i
.21651+3.1416*i
-.28405-2.1337*i
.18171-1.5079*i
>> s.c

ans =
-.24437e-1
9.0413+1.0308*i
5.0044-.42127*i
8.8817
5.0044+.42127*i
9.0413-1.0308*i
实数解为
a=11.0386
b=-0.11179
c=-0.024437
展开全文阅读