MATLAB 的多元非线性方程求极值问题function f=fun(x)f=0.5742*x(1)+11.8636*x(3)-0.1693*x(4)-0.3868*x(5)-0.0674*(x(1)^2)-0.3546*(x(2).^2)-1.2180*(x(3).^2)+0.0123*(x(4).^2)+0.0012*(x(5).^2);x0=[5,2.75,6,27,60] %起始点[x,fval]=fminunc(@fun,
来源:学生作业帮助网 编辑:作业帮 时间:2024/08/01 10:15:57
![MATLAB 的多元非线性方程求极值问题function f=fun(x)f=0.5742*x(1)+11.8636*x(3)-0.1693*x(4)-0.3868*x(5)-0.0674*(x(1)^2)-0.3546*(x(2).^2)-1.2180*(x(3).^2)+0.0123*(x(4).^2)+0.0012*(x(5).^2);x0=[5,2.75,6,27,60] %起始点[x,fval]=fminunc(@fun,](/uploads/image/z/5166639-63-9.jpg?t=MATLAB+%E7%9A%84%E5%A4%9A%E5%85%83%E9%9D%9E%E7%BA%BF%E6%80%A7%E6%96%B9%E7%A8%8B%E6%B1%82%E6%9E%81%E5%80%BC%E9%97%AE%E9%A2%98function+f%3Dfun%28x%29f%3D0.5742%2Ax%281%29%2B11.8636%2Ax%283%29-0.1693%2Ax%284%29-0.3868%2Ax%285%29-0.0674%2A%28x%281%29%5E2%29-0.3546%2A%28x%282%29.%5E2%29-1.2180%2A%28x%283%29.%5E2%29%2B0.0123%2A%28x%284%29.%5E2%29%2B0.0012%2A%28x%285%29.%5E2%29%3Bx0%3D%5B5%2C2.75%2C6%2C27%2C60%5D+%25%E8%B5%B7%E5%A7%8B%E7%82%B9%5Bx%2Cfval%5D%3Dfminunc%28%40fun%2C)
MATLAB 的多元非线性方程求极值问题function f=fun(x)f=0.5742*x(1)+11.8636*x(3)-0.1693*x(4)-0.3868*x(5)-0.0674*(x(1)^2)-0.3546*(x(2).^2)-1.2180*(x(3).^2)+0.0123*(x(4).^2)+0.0012*(x(5).^2);x0=[5,2.75,6,27,60] %起始点[x,fval]=fminunc(@fun,
MATLAB 的多元非线性方程求极值问题
function f=fun(x)
f=0.5742*x(1)+11.8636*x(3)-0.1693*x(4)-0.3868*x(5)-0.0674*(x(1)^2)-0.3546*(x(2).^2)-1.2180*(x(3).^2)+0.0123*(x(4).^2)+0.0012*(x(5).^2);
x0=[5,2.75,6,27,60] %起始点
[x,fval]=fminunc(@fun,x0)
为什么会被报错?
MATLAB 的多元非线性方程求极值问题function f=fun(x)f=0.5742*x(1)+11.8636*x(3)-0.1693*x(4)-0.3868*x(5)-0.0674*(x(1)^2)-0.3546*(x(2).^2)-1.2180*(x(3).^2)+0.0123*(x(4).^2)+0.0012*(x(5).^2);x0=[5,2.75,6,27,60] %起始点[x,fval]=fminunc(@fun,
f=@(x) 0.5742*x(1)+11.8636*x(3)-0.1693*x(4)-0.3868*x(5)-0.0674*(x(1)^2)-0.3546*(x(2).^2)-1.2180*(x(3).^2)+0.0123*(x(4).^2)+0.0012*(x(5).^2);
x0=[5,2.75,6,27,60] %起始点
[x,fval]=fminunc(f,x0)
你是不是把这段代码写在一个M文件里了?
应该是前两行存为文件fun.m,后两句
x0=[5,2.75,6,27,60] %起始点
[x,fval]=fminunc(@fun,x0)
在命令窗口里调用。
从你的表达式看,五个变元之间没有耦合,可以分开来求,很容易可以判断,函数最小值应该发生在x1、x2、x3=inf,x4...
全部展开
你是不是把这段代码写在一个M文件里了?
应该是前两行存为文件fun.m,后两句
x0=[5,2.75,6,27,60] %起始点
[x,fval]=fminunc(@fun,x0)
在命令窗口里调用。
从你的表达式看,五个变元之间没有耦合,可以分开来求,很容易可以判断,函数最小值应该发生在x1、x2、x3=inf,x4、x5=-inf处。
收起