作业帮 > 综合 > 作业

这样的指数方程组用matlab怎么解?我就这么多财富了,

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/30 11:14:31
这样的指数方程组用matlab怎么解?我就这么多财富了,
A*(1-exp(-t1/l1)).*exp(-t1/l2)-0.1=0;
A*(1-exp(-t2/l1)).*exp(-t2/l2)-0.9=0;
A*(1-exp(-t4/l1)).*exp(-t4/l2)-0.5=0;其中t1,t2,t4是已知量,A,l1,l2是待求的量,指条明路,我实在没辙,忙活了几天也搞不定.我用fsolve命令也解不出来,给定初值,解出来的竟然还是初值
已经解决了,用数值分析中牛顿迭代的方法,自己编程,这种复杂的方程看来是不能指望matlab给我们做了
我想人机结合可以解的:
先将方程组
A*(1-exp(-t1/l1)).*exp(-t1/l2)-0.1=0;
A*(1-exp(-t2/l1)).*exp(-t2/l2)-0.9=0;
A*(1-exp(-t4/l1)).*exp(-t4/l2)-0.5=0;
假设exp(-1/l1) = a1, exp(-1/l2) = a2
变形为
A*(1-a1^t1)*a2^t1 = 0.1
A*(1-a1^t2)*a2^t2 = 0.9
A*(1-a1^t4)*a2^t4 = 0.5
显然t1,t2,t4均不相等
消去A,a2得方程:
(t1-t2)/(t2-t4) =
[ln(0.1/(1-a1^t1) - ln(0.9/(1-a1^t2)))] / [ln(0.9/(1-a1^t2) - ln(0.5/(1-a1^t4)))]
求a1的代码如下:
clc,clear all;
t=[1,2,3]; %[t1 t2 t4]
syms t1 t2 t4 a1 a2 A equal;
equal = (t1-t2)*(log((1-a1^t4)/(1-a1^t2)) - log(0.9/0.5)) - (t2-t4)*(log((1-a1^t2)/(1-a1^t1)) - log(0.1/0.9));
equal = subs(equal,{'t1','t2','t4'},{t(1),t(2),t(3)});
eq = inline(equal);
plot(linspace(-100,100,1000),eq(linspace(-100,100,1000)));
如果图形与y=0无交点,则方程无实数解.若有则输入如下代码:
x1 = fzero(eq,x0);%注意x0根据图形来确定,最好在y=0对应x的大概范围.
这样可以解出l1,
剩下A,l2马上就可以得出了.
如果知道t1,t2,t4的值就好解一点了
m1,m2已知吧?