hybrd算法求解非线性方程组
大家好,我用hybrd算法求解非线性方程组,出现问题,这个应该如何解决呢?算法代码
程序代码:
subroutine function_equations(n,x,fvec,iflag)
implicit none
integer n,iflag
double precision x(n),fvec(n)
! ------------------------------------------------
fvec(1) = 3d0*x(1)-cos(x(2)*x(3))-0.5d0
fvec(2) = x(1)**2-81d0*(x(2)+0.1d0)**2+sin(x(3))+1.06d0
fvec(3) = dexp(-x(1)*x(2))+20d0*x(3)+(10d0*3.1415926d0-3d0)/3d0
return
end
program main_test
implicit none
external function_equations
integer,parameter :: n=3 ,lwa=(n*(3*n+13))/2
double precision x(n),fvec(n)
double precision,parameter :: tol = 1d-8
double precision wa(lwa)
integer info
wa(lwa) = 1d0
! hybrd1(fcn,n,x,fvec,tol,info,wa,lwa)
call hybrd1(function_equations,n,x,fvec,tol,info,wa,lwa)
end
你既没有给全代码,也没有给出任何错误问题。 谢谢楼上!!
代码是全的。页面上是求解的问题,上面有两个附件,也是。f文件,下载下来粘到fortran里面就可以了。
因为论坛对帖子的行数有要求,所以才将两个f文件作为附件上传了。
请各位高手帮忙看看。 缺少如下函数:
1>hybrd.obj : error LNK2019: 无法解析的外部符号 _DPMPAR,该符号在函数 _HYBRD 中被引用
1>hybrd.obj : error LNK2019: 无法解析的外部符号 _ENORM,该符号在函数 _HYBRD 中被引用
1>hybrd.obj : error LNK2019: 无法解析的外部符号 _FDJAC1,该符号在函数 _HYBRD 中被引用
1>hybrd.obj : error LNK2019: 无法解析的外部符号 _QRFAC,该符号在函数 _HYBRD 中被引用
1>hybrd.obj : error LNK2019: 无法解析的外部符号 _QFORM,该符号在函数 _HYBRD 中被引用
1>hybrd.obj : error LNK2019: 无法解析的外部符号 _DOGLEG,该符号在函数 _HYBRD 中被引用
1>hybrd.obj : error LNK2019: 无法解析的外部符号 _R1UPDT,该符号在函数 _HYBRD 中被引用
1>hybrd.obj : error LNK2019: 无法解析的外部符号 _R1MPYQ,该符号在函数 _HYBRD 中被引用
另外,你的代码错误提示是什么? fcode 发表于 2015-3-18 17:03
缺少如下函数:
1>hybrd.obj : error LNK2019: 无法解析的外部符号 _DPMPAR,该符号在函数 _HYBRD 中被引 ...
就是你贴出来的这些信息。 muzili2008 发表于 2015-3-19 16:06
就是你贴出来的这些信息。
既然缺少这些,那你就得去找这些函数对应的fortran文件
这个程序应该不是你自己写的,所以你还是找写这个程序的人要缺少的部分 本帖最后由 kerb 于 2015-3-21 22:36 编辑
你需要下载minpack,netlib里面可以找到,附件是John Burkardt修改成的f90版本 非常感谢 !
最近没有上论坛 ,这个感谢回复的晚了!!!
非常感谢!! muzili2008 发表于 2015-5-26 17:04
非常感谢 !
看到您解决问题了,想问问您相关的问题,我现在碰到解非线性方程组的问题了
页:
[1]