注册 登录
编程论坛 Matlab

[求助]一个方程的求解

fiberlaser 发布于 2006-07-28 20:15, 723 次点击

求助各位高手!!!!


遇到一个难题!
求解一个隐含方程:(其中的一些常量都用数值表示了)
x^(1-0.1298)*(abs((1+0.4249/4821)/(1+0.4249/4821*x^(1-0.1298))))^(1-0.8398*0.4821/0.4249)-exp(-0.4821*(1-0.1298)*z)
其中有两个未知数,x,z; z是一个取值范围,可以是z=0:0.1:20; 这样求得每个z对应一个x;

自己的编程为如下:但是每次只能对应一个z,求得一个x;

function y=funs(x)
y=x^(1-0.1298)*(abs((1+0.4249/4821)/(1+0.4249/4821*x^(1-0.1298))))^(1-0.8398*0.4821/0.4249)-exp(-0.4821*(1-0.1298)*2);


x=fsolve('Fun',2)

现在的问题就是能不能做一个循环或者什么措施,一次把所有z对应的x都求出来?自己想在设方程时用一个循环,但是总是出错,原因是这样就变成很多方程了,所以不行!

万分感谢!!!!

1 回复
#2
sxs772006-09-07 16:34
兄弟,我也碰到了,你类似的问题,我也是方程中的参数是需要在循环中改变,以求的一系列的解,也是百思不得其解,如果兄弟你解决这个问题,还望赐教!qq;23476225
1