matlab fsolve 解的范围,【求助】用fsolve解四元非线性方程组,求解参数的范围问题...
求助各位大神,我用fsolve求解了一个四元非线性方程组,方程比较复杂,得到了结果不符合条件。
代码
syms a b c d e g s r t
e=0.2;
g=0.08;
s=1.5;
r=0.1;
t=2;
eq1=0.014696*(1-s*(1+r))*exp(t*(-(1-a-b-c-d-e)-s*a*(1+r)-s*d))+0.985304*exp(t*(-(1-a-b-c-d-e)))+0.020183903*(s-s^2*(1+r)-(1+r))*exp(t*(-s*(1-a-b-c-d-e)-a*(1+r)-s^2*a*(1+r)-s^2*d))+0.001513038*(s-(1+r))*exp(t*(-s*(1-a-b-c-d-e)-c/0.004-a*(1+r)))+0.581751*(s-(1+r))*exp(t*(-s*(1-a-b-c-d-e)-a*(1+r)))+0.026544385*(s^2-s*(1+r)-s^3*(1+r))*exp(t*(-s^2*(1-a-b-d-e)-a*s*(1+r)-a*s^3*(1+r)-d*s^3))+0.000703601*(s^2-s*(1+r))*exp(t*(-s^2*(1-a-b-d-g)-a*s*(1+r)-c*s/0.004))+0.336909*(s^2-s*(1+r))*exp(t*(-s^2*(1-a-b-d-g)-a*s*(1+r)))+0.219802093*(s^3-s^2*(1+r))*exp(t*(-s^3*(1-a-b-d-g)-a*s^2*(1+r)-d*s^3))-0.132650563*s^3*(1+r)*exp(t*(-s^3*a-b*(1+s+s^2+s^3)/0.776036))
eq2=0.014696*exp(t*(-(1-a-b-c-d-e)-s*a*(1+r)-s*d))+0.985304*exp(t*(-(1-a-b-c-d-e)))+0.030275854*exp(t*(-s*(1-a-b-c-d-e)-a*(1+r)-s^2*a*(1+r)-s^2*d))+0.002269557*exp(t*(-s*(1-a-b-c-d-e)-c/0.004-a*(1+r)))+0.872625847*exp(t*(-s*(1-a-b-c-d-e)-a*(1+r)))+0.059724865*exp(t*(-s^2*(1-a-b-d-e)-a*s*(1+r)-a*s^3*(1+r)-d*s^3))+0.001583103*exp(t*(-s^2*(1-a-b-d-g)-a*s*(1+r)-c*s/0.004))+0.758045*exp(t*(-s^2*(1-a-b-d-g)-a*s*(1+r)))+0.741832063*(s^3-s^2*(1+r))*exp(t*(-s^3*(1-a-b-d-g)-a*s^2*(1+r)-d*s^3))-10.46988*exp(t*(-s^3*a-b*(1+s+s^2+s^3)/0.776036))
eq3=0.014696*exp(t*(-(1-a-b-c-d-e)-s*a*(1+r)-s*d))+0.985304*exp(t*(-(1-a-b-c-d-e)))-0.021169475*exp(t*(-s*(1-a-b-c-d-e)-c/0.004-a*(1+r)-s^2*a*(1+r)-s^2*d))+0.030275854*exp(t*(-s*(1-a-b-c-d-e)-a*(1+r)-s^2*a*(1+r)-s^2*d))-0.610157226*exp(t*(-s*(1-a-b-c-d-e)-c/0.004-a*(1+r)))+0.872625847*exp(t*(-s*(1-a-b-c-d-e)-a*(1+r)))-0.043864723*exp(t*(-s^2*(1-a-b-d-e)-c*s/0.004-a*s*(1+r)-a*s^3*(1+r)-d*s^3))+0.059724865*exp(t*(-s^2*(1-a-b-d-e)-a*s*(1+r)-a*s^3*(1+r)-d*s^3))-0.370634601*exp(t*(-s^2*(1-a-b-d-g)-a*s*(1+r)-c*s/0.004))+0.758045*exp(t*(-s^2*(1-a-b-d-g)-a*s*(1+r)))+0.219802093*exp(t*(-s^2*(1-a-b-d-g)-a*s*(1+r)))
eq4=-0.00735*exp(t*(-(1-a-b-c-d-e)-s*a*(1+r)-s*d))+0.985304364*exp(t*(-(1-a-b-c-d-e)))-0.00355*exp(t*(-s*(1-a-b-c-d-e)-c/0.004-a*(1+r)-s^2*a*(1+r)-s^2*d))-0.011623989*exp(t*(-s*(1-a-b-c-d-e)-a*(1+r)-s^2*a*(1+r)-s^2*d))+0.204830512*exp(t*(-s*(1-a-b-c-d-e)-c/0.004-a*(1+r)))+0.670065*exp(t*(-s*(1-a-b-c-d-e)-a*(1+r)))-0.01118*exp(t*(-s^2*(1-a-b-d-e)-c*s/0.004-a*s*(1+r)-a*s^3*(1+r)-d*s^3))-0.018742499*exp(t*(-s^2*(1-a-b-d-e)-a*s*(1+r)-a*s^3*(1+r)-d*s^3))+0.09519189*(s^3-s^2*(1+r))*exp(t*(-s^3*(1-a-b-d-g)-a*s^2*(1+r)-d*s^3))
eq1=matlabFunction(eq1);
eq2=matlabFunction(eq2);
eq3=matlabFunction(eq3);
eq4=matlabFunction(eq4);
eq=@(a)[eq1(a(1),a(2), a(3), a(4));eq2(a(1),a(2), a(3), a(4)); eq3(a(1),a(2), a(3), a(4));eq4(a(1),a(2), a(3), a(4))]
[sol,fval]=fsolve(eq,[0.03,0.08,0.001,0.4])
结果是
sol =
0.9799 -0.0319 -0.0039 -2.4881
fval =
1.0e-11 *
-0.1603
0.2842
0.5883
0.0997
但是a,b,c,d应在0,1之间,且加起来不超过1我可以在定义变量时就限制范围吗?
求助大神!!!
matlab fsolve 解的范围,【求助】用fsolve解四元非线性方程组,求解参数的范围问题...相关推荐
- fsolve:对非线性方程组求解
fsolve 对非线性方程组求解 一:语法 x = fsolve (fun,x0) x = fsolve (fun,x0,options) x = fsolve (problem) [ x,fval ...
- python fsolve说明_python用fsolve、leastsq对非线性方程组求解
背景: 实现用python的optimize库的fsolve对非线性方程组进行求解.可以看到这一个问题实际上还是一个优化问题,也可以用之前拟合函数的leastsq求解.下面用这两个方法进行对比: 代码 ...
- matlab tolfun,非线性方程组求解问题(关于TolFun设置问题)
function main clear all clc global n G dl M M1 b1 b2 C4 C6 C7 C8 C9 a T=273.2+112.13; ...
- matlab非线性方程组求解得到矩阵,非线性方程组求解——附Matlab原程序
在科学与工程计算中,经常遇到求解非线性方程组的问题:非线性方程组在收敛速度及收敛性比线性方程组要差,特别对于非凸的非线性方程组,其求解更是困难.下面简要介绍非线性方程组的三种解法--牛顿法.拟牛顿法. ...
- matlab 非线性方程组画图,使用matlab进行非线性方程组求解
今天,恰好遇到使用matlab进行了非线性方程组的求解. 情况是,一些无法手动表示,推导的方程组,比如像超越方程这种,可以用matlab进行直接求值,这在一些需要仿真数据的场景比较有用. 环境:mat ...
- Matlab学习手记——非线性方程组求解:牛顿下山法
功能:牛顿下山法求解非线性方程组. 牛顿下山法 function [x, n] = NonLinearEquations_NewtonDown(x0, err) %{ 函数功能:牛顿下山法求解非线性方 ...
- matlab 条件方程组的解,Matlab带约束条件的非线性方程组求解
调试2天了,一定要帮帮了,你的程序有2大毛病. 一是你分辨不清符号计算和数值计算的区别 具体就是你的问题属于数值计算,不需要用到syms这些符号计算方面的内容 二是你对函数输入参数把握不明确 fsol ...
- matlab矩阵代数计算,MATLAB学习笔记(五):符号计算(符号矩阵+代数方程组求解)...
2.6 .1 符号矩阵分析 常用的矩阵分析指令如下: det(A)行列式A diag(A)取对角元素构成向量,或根据向量构成对角矩阵 [V,D]=eig(A)特征值分解,使 AV=VD (没看懂) e ...
- matlab 非线性状态方程,非线性方程组求解及matlab实现.ppt
非线性方程(组)求解 复习与练习 按以下要求编写一个函数计算 的值,其中x>0时,y= ; x<0时,y=2/x; x=0时,返回错误信息(x cann't be zero) . 要求:1 ...
最新文章
- 结构和联合--结构体内存和位段内存开辟规则
- python代码翻译-python实现在线翻译
- How is note created - backend implementation
- 前端学习(2456):文章列表
- R语言学习笔记(七)方差分析
- 随想录(单片机和步进电机学习笔记)
- 一步步学习NHibernate(8)——HQL查询(2)
- Mysql-5.5.3 主从同步不支持master-host问题的解决办法
- git向远程推送代码提示fatal: Authentication failed
- mysql 连接 互联网_互联网技术分享社区 MySQL字符串连接函数
- 【python基础】英文大小写函数
- 大天使之剑h5服务器临时维护,大天使之剑H5合服细节 战盟对决时间安排
- 单片机c语言程序编写步骤,用c语言编写单片机流水灯程序详解
- php购物车源代码模板,php购物车实现源码示例汇总
- FPGA系统性学习笔记连载_Day8【4位乘法器、4位除法器设计】 【原理及verilog实现、仿真】篇
- 22.9.24 比赛
- python+django电子招标投标管理系统pycharm项目
- phpcms自定义表单
- ZStack-ZCCE考题参考答案
- opencv控制鼠标
热门文章
- linux打地鼠游戏代码,JavaScript实现打地鼠小游戏
- WEB常见中间件漏洞原理
- 【论文阅读】 VL-BERT: Pre-training of generic visual-linguistic representations
- Openstack容器项目之Magnum
- 前端 开关按钮样式_如何使用HTML5+css3制作出12种常用的按钮开关样式(附完整代码)...
- CATIA 数控编程加工实例精解视频教程
- mysql禁用空密码登录_允许phpmyadmin 空密码登陆
- 读完《万历十五年》之后的一点看法
- python中info的用法_使用Python中的data.info()显示所有信息
- 综合布线的六个独立子系统介绍