| 查看: 1863 | 回复: 3 | ||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | ||
poko宝贝木虫 (正式写手)
|
[求助]
求助!!!使用 Numerical recipes in C++求解非线性方程组 已有1人参与
|
|
|
Golbally Convergent for Nonlinear Equation 调用的newt函数。没有学过指针函数什么的,照葫芦画瓢写的很烂。编译提示错误是: newt.cpp(22): warning #159: declaration is incompatible with previous "fmin" (declared at line 342 of "/usr/include/bits/mathcalls.h" float fmin(float x[]); newt.cpp(38): internal error: assertion failed at: "shared/edgcpfe/lower_c99.c", line 2870 f=fmin(x); ^ code如下,其中void *vecfunc(int n,float x[],float fvec[])是很复杂的非线性方程组,这里为了简洁易见,简单列了几个方程,可能解不出来。 Numerical recipes in C++书里格式是 void (*vecfunc)(int n,float x[],float fvec[]),但是调用的时候老出错,就把括号去了。 整个调用的函数包已经打包在附件,急用,请大神帮忙。 ////////////////////////////////////////////////// #include <math.h> #define NRANSI #include "nrutil.h" #include "nrutil.cpp" #include "newt.cpp" #include "fdjac.cpp" #include "fmin.cpp" #include "lnsrch.cpp" #include "lubksb.cpp" #include "ludcmp.cpp" void *vecfunc(int n, float x[], float fvec[]); int main() { int n; n=5; float x[n]; float *fvec; int *check; check=ivector(1,n); fvec=vector(1,n); newt(x, n, check, vecfunc); free_ivector(check,1,n); free_vector(fvec,1,n); return 1; } void *vecfunc(int n,float x[],float fvec[]) { //float x[5]; //float fvec[5]; fvec[1]=x[1]*x[2]+x[5]-1.0; fvec[2]=x[1]+x[2]-x[3]; fvec[3]=x[1]*x[4]+x[2]+x[3]-10.0; fvec[4]=x[1]+x[2]+x[3]-1.0; fvec[5]=x[4]+x[5]-1.0; } |
» 本帖附件资源列表
-
欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com - 附件 1 : Golbally_Convergent__for_Nonlinear_Equation.zip
2017-02-09 13:21:52, 12.55 K
» 猜你喜欢
北京211副教授,35岁,想重新出发,去国外做博后,怎么样?
已经有7人回复
Cas 72-43-5需要30g,定制合成,能接单的留言
已经有7人回复
磺酰氟产物,毕不了业了!
已经有5人回复
论文终于录用啦!满足毕业条件了
已经有25人回复
2026年机械制造与材料应用国际会议 (ICMMMA 2026)
已经有3人回复
自荐读博
已经有3人回复
求助:我三月中下旬出站,青基依托单位怎么办?
已经有5人回复
不自信的我
已经有5人回复
投稿Elsevier的杂志(返修),总是在选择OA和subscription界面被踢皮球
已经有8人回复
cob
木虫 (正式写手)
- 应助: 29 (小学生)
- 金币: 1926.1
- 散金: 666
- 红花: 4
- 帖子: 443
- 在线: 320.8小时
- 虫号: 348545
- 注册: 2007-04-18
- 性别: GG
- 专业: 机械动力学
3楼2017-02-10 08:50:12









回复此楼