请教一个非整数次幂方程的求解
该方程如下:a1*(x+b1)^t+a2*(x+b2)^t=c
{a}_{1}{(x+{b}_{1})}^{t}+{a}_{2}{(x+{b}_{2})}^{t}=c
其中,a1, a2, b1, b2, c 皆为常数;0<t<1
请教如何用fortran编写程序求出未知数x?
先谢过!
求解非线性方程,看专业的算法集,比如《徐士良程序集》。 li913 发表于 2017-7-31 07:59
求解非线性方程,看专业的算法集,比如《徐士良程序集》。
非常感谢您提供的信息
这两天加深了对非线性方程数值求解的理解
使用的是牛顿迭代法,问题解决过程中,发现程序倒不难,但是,初值选不好,收敛性会出现问题
经过多次检查修改基本能顺利运行了
这个用截弦法可能对初值不敏感,不会出现来回震荡的情况,牛顿法虽然快,但是有可能出现来回震荡的情况 kerb 发表于 2017-8-6 19:29
这个用截弦法可能对初值不敏感,不会出现来回震荡的情况,牛顿法虽然快,但是有可能出现来回震荡的情况 ...
谢谢您的解答
用牛顿法遇到不收敛的情况时,我也进一步看了截弦法
后来用matlab把函数曲线画出来,知道是什么样的图形,修改了初值用牛顿法解决了问题
页:
[1]