吴老师,您好!请教您一个问题。

我想求下面方程组的解:

quadl(@(x) exp(a(1)+a(2)*x+a(3)*x.^2+a(4)*x.^3+a(5)*x.^4),-100,100)-1;

quadl(@(x) x.*exp(a(1)+a(2)*x+a(3)*x.^2+a(4)*x.^3+a(5)*x.^4),-100,100)-m1;

quadl(@(x) x.^2.*exp(a(1)+a(2)*x+a(3)*x.^2+a(4)*x.^3+a(5)*x.^4),-100,100)-m2;

quadl(@(x) x.^3.*exp(a(1)+a(2)*x+a(3)*x.^2+a(4)*x.^3+a(5)*x.^4),-100,100)-m3;

quadl(@(x) x.^4.*exp(a(1)+a(2)*x+a(3)*x.^2+a(4)*x.^3+a(5)*x.^4),-100,100)-m4;

其中m1=0.0177;m2=1.0494;m3=0.0448;m4=3.4693;

(积分上下限本来是正负无穷大,这里用足够大的数代替的)

要求a参数的值,我写了以下的代码求解:

function l=shuju()

a0=[0,0,0,-0.002,-0.000207];

[a,fvar]=fsolve(@f,a0);

function F=f(a)

m1=0.0177;

m2=1.0494;

m3=0.0448;

m4=3.4693;

F=[quadl(@(x)exp(a(1)+a(2)*x+a(3)*x.^2+a(4)*x.^3+a(5)*x.^4),-100,100)-1;

quadl(@(x)x.*exp(a(1)+a(2)*x+a(3)*x.^2+a(4)*x.^3+a(5)*x.^4),-100,100)-m1;

quadl(@(x)x.^2.*exp(a(1)+a(2)*x+a(3)*x.^2+a(4)*x.^3+a(5)*x.^4),-100,100)-m2;

quadl(@(x)x.^3.*exp(a(1)+a(2)*x+a(3)*x.^2+a(4)*x.^3+a(5)*x.^4),-100,100)-m3;

quadl(@(x)x.^4.*exp(a(1)+a(2)*x+a(3)*x.^2+a(4)*x.^3+a(5)*x.^4),-100,100)-m4];

end

a

fvar

end

但是运行出来的结果一直不是很正确,可能是问题非常依赖与初值的选取吧,会出现:

Maximum function count exceeded; singularity likely.

或者:Optimizer appears to be converging to a minimum that is not a root:

Sum of squares of the function values is > sqrt(options.TolFun).

Try again with a new starting point.

而且改变上下限积分后经常会出现积分为零的情况。

不知道吴老师对于这种问题有没有什么好的建议或者经验。是不是只能通过改变初值来进行试探的求解?或者是不是有更好的方法或者函数可以使用,不知道quadl是不是适合这种问题。

我把方程组转换为优化问题求解,目标函数设定为五个方程的平方和,然后用fmincon求解,出来结果显示:

Optimization terminated: first-order optimality relative error

less than options.TolFun, and relative constraint violation less

than options.TolCon.

但是不论我怎么减小TolFun的值,最后的函数值还是很大,没有收敛。优化方法采用内点法和Active-set方法都是这样。

如果老师有什么建议或者好的想法情不吝赐教,非常感谢!

matlab解带参数的积分方程组,方程组求解问题:方程组中有带参数的积分函数,求参数...相关推荐

  1. python自定义函数参数_python自定义函数的参数之四种表现形式

    (1)def a(x,y):print x,y 这是最常见的定义方式,调用该函数,a(1,2)则x取1,y取2,形参与实参相对应,如果a(1)或者a(1,2,3)则会报错 (2)def a(x,y=3 ...

  2. C++ main函数中参数argc和argv

    argc 是 argument count的缩写,表示传入main函数的参数个数: argv 是 argument vector的缩写,表示传入main函数的参数序列或指针,并且第一个参数argv[0 ...

  3. 数组作为函数的参数传参时,数组名会退化为指针

    1.数组作为函数的参数传参时,数组名会退化为指针 数组作为函数的参数传参时,数组名会退化为指针,数值传参时,需要把数值的长度一起传过去,另外,sizeof()运算符包含字符串的哨兵'/0',而strl ...

  4. Button中command后面函数添加参数解决方法

    Button中command后面函数添加参数解决方法 参考文章: (1)Button中command后面函数添加参数解决方法 (2)https://www.cnblogs.com/smart-ziha ...

  5. 【C/C++】main函数之参数argc和argv含义及用法

    初识argc和argv,对其用法甚是困惑,偶得大神"-牧野-"之总结,犹如醍醐灌顶,故转载分享如下,供更多博友学习. argc 是 argument count的缩写,表示传入ma ...

  6. (转)C++ main函数中参数argc和argv含义及用法

    原博地址:https://blog.csdn.net/dcrmg/article/details/51987413 argc 是 argument count的缩写,表示传入main函数的参数个数: ...

  7. matlab中solve解方程,matlab解方程组.我的每一个方程都很长,如果用solve,solve里的参数就会很长.有什么办法呢?...

    问题描述: matlab解方程组.我的每一个方程都很长,如果用solve,solve里的参数就会很长.有什么办法呢? s= (((22*r)/5 - 479/50)*(7*r^2 + (149*r)/ ...

  8. matlab解含字母方程,求助关于解含字母参数方程组的问题

    我现在需要解一个含字母的方程组,写的代码为 [x,y]=solve('lac*cos(a0-a1)+lab*cos(a2)-lcd-lbd*cos(a3)','lac*sin(a0-a1)+lab*s ...

  9. matlab 解方程组_一文读懂MATLAB微分方程

    此教程说明如何使用 MATLAB 构造几种不同类型的微分方程并求解.MATLAB 提供了多种数值算法来求解各种微分方程: 初始值问题 边界值问题 时滞微分方程 偏微分方程 初始值问题 vanderpo ...

  10. 如何用matlab解异或方程,Matlab-6:解非线性方程组newton迭代法

    函数文件: function x=newton_Iterative_method(f,n,Initial) x0=Initial; tol=1e-11; x1=x0-Jacobian(f,n,x0)\ ...

最新文章

  1. 计算机dns没有响应如何解决方案,dns未响应如何解决 dns未响应解决方法【图文】...
  2. 岗位内推 | 腾讯云小微自然语言技术中心招聘NLP研究型实习生
  3. Linux内核出错的栈打印详解,linux内核中打印栈回溯信息 - dump_stack()函数分析
  4. 文件服务器+好处,文件服务器 好处
  5. 7-84 点赞狂魔 (25 分)
  6. 韩顺平php视频笔记69 静态变量与静态方法
  7. Java锁示例– ReentrantLock
  8. AV_PIX_FMT_YUV420P12LE’在此作用域中尚未声明
  9. 面试不再尬聊的Mysql数据库优化方案
  10. 什么是悬赏任务APP源码?
  11. python中grid是什么意思_python中网格Grid和列表List的认识
  12. 千钧一发之际赢得暂缓令,苹果App Store要反败为胜了?
  13. 微信开发者工具-真机调试,可查看接口信息
  14. android 画板功能
  15. [开发工具]记录MPLAB新老双IDE与C18编译器配置
  16. IDEA配置关联Git
  17. Minecraft神奇玩家不用键盘,行走全部靠骑猪最后通关MC
  18. std::thread介绍
  19. WordPress个人资料中直接修改用户名插件Username Changer
  20. 【stm32】手把手用cubemx配置血氧传感器(MAX30102)

热门文章

  1. android xml 解析
  2. android 日期选择器
  3. mysql coalesce函数用法_MySQL coalesce函数用法说明(转)
  4. SQL Server 日志清理、数据文件收缩
  5. Idea创建web项目,配置tomcat服务器
  6. js对html节点的操作
  7. c command语言学例子,乔姆斯基语言学理论发展史研究
  8. Linux下安装和配置solr/tomcat/IK分词器 详细实例二.
  9. 2019 徐州icpc网络赛 E. XKC's basketball team
  10. BZOJ 3456: 城市规划(dp+多项式求逆)