高分求Matlab高手啊: 如何求''未知''三元函数最小值。

作者&投稿:闽刷 (若有异议请与网页底部的电邮联系)
求助高手求一个函数的最小值~

#include
template //class与typename等效,也可使用typename
T FindMin(T *p,int length) //T为模板参数
{
T Min=*p; //赋初值
for(int i=1;i<length;i++) //寻找最小值
{
if(Min>p[i])
{
Min=p[i];
}
}
return Min;
}
void main()
{
int i,n;
double *p;
cout<<"输入数据个数:"<<ends;
cin>>n;
p=new double [n]; //动态分配n个整型空间
cout<<"输入"<<n<<"个数据:"<<ends;
for(i=0;i<n;i++)
{
cin>>p[i];
}
cout<<"最小值是: "<<FindMin(p,n)<<endl;
delete[] p; //释放空间
}

先变形
f(x)=sinwx-1/2*sin2wx
再求导
f`(x)=w*coswx-1/2*cos2wx*2w
=w*coswx-w*cos2wx
=w*(coswx-cos2wx)
求减区间,则令导数<0,即
w*(coswx-cos2wx)0,所以得
coswx<cos2wx,
即coswx<2(coswx)^2-1,令coswx=t
得2t^2-t-1>0,得t1(舍掉)
即coswx<-1/2
当a=-1时,f(x)=lnx+x+2/x-1
f(x)导数=(x^2+x-2)/x^2
f(2)导数=1即曲线y=f(x)在点(2,f(2))处的切线斜率为1
又f(2)=ln2+2
所以曲线y=f(x)在点(2,f(2))处的切线方程为x-y+ln2=0
(2)
f(x)的导数=1/x-a-(1-a)/(x^2)=(-ax^2+x+a-1)/(x^2)
分母在x=0时无意义,在x≠0时恒大于零,
分子=-ax^2+x+a-1,以x=1/2为对称轴,最大值3/4a-1/2<0恒小于零
f(x)的导数在x=0时无意义,在x≠0时恒小于零,
所以f(x)单调递减

像这种问题Matlab库函数直接可以求解。
编写三个m文件,一个主程序,两个function
主程序main.m
p0=[0 0 0];
A=[];b=[];Aeq=[];beq=[];vlb=[-2;-2;-2];vub=[2;2;2];
[x,fval]=fmincon('fun_u',p0,A,b,Aeq,beq,vlb,vub,'confun_u')

fun_u.m子函数即目标函数u
function y=fun_u(x)
y= (x(1)-0.1).^2 + (x(2) - 0.4).^2 + (x(3) - 0.3).^2;

约束条件confun_u.m文件,由于本问题无约束条件,所以该函数这样来写
function [g,ceq]=confun_u(x)
g=-1;
ceq=-1;

执行的时候直接运行main程序即可。当然你可以把main.m也改为一个function,输入参数为目标函数名‘fname’,这时你需要自己定义'fname'的内容。要是不清楚的地方可以继续追问

dui ma

呵呵,有难度!


请教Matlab高手求定积分近似值问题
1、对于数值积分,可以参考这个,https:\/\/zhidao.baidu.com\/question\/684723737992097932 2、对于相等较简单的不定积分(或定积分),可以优先考虑int()函数。int(S) %不定积分 syms x int(-2*x\/(1 + x^2)^2)int(S,a,b) %定积分 syms x int(x*log(1 + x), 0, 1)

matlab 分段函数求值
>> for t=-5:0.1:5 if t>0 y=-3*t.^2+5;else y=3*t.^2+5;end plot(t,y)hold on

matlab数学公式输入分式求和
用于数据分析、无线通信、深度学习、图像处理与计算机觉、信号处理、量化金融与风险管理、机器人,控制系统等领域。MATLAB是matrix&laboratory两个词的合,意为矩阵工厂(矩阵实验室),软件主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。

高等数学 利用MATLAB求常微分方程的初值问题 (1+x^2)y''=2xy' y|x=...
利用dsolve()函数,可求得常微分方程的初值问题 (1+x^2)y''=2xy'的解析解。实现代码 syms y(x),D2y=diff(y,2);Dy=diff(y,1);disp('常微分方程的解析解')y=dsolve((1+x^2)*D2y==2*x*Dy,y(0)==1,Dy(0)==3)

matlab求解!
clear;clc;load P.mat;%将90个学生5门功课的成绩存入矩阵P中,第一列为学生序号。这里序号为1:90。在此导入 i0=size(P);(1) 分别求每门课的最高分、最低分及相应学生序号;maxStudent(i0(2)-1,10)=0;%用于保存每门课最高分的学生的序号及分数。minStudent(i0(2)-1,10)=0;%用...

MATLAB如何对一列数据进行分段求平均值
对一列数据(大约100万个)进行分段求平均值,解决的方法有:1、把从excel表格中的数据,加载到矩阵变量A,然后用循环语句从矩阵A中调入100个、100个。。。数据求平均值。2、实现代码的思路,利用多重循环,每个循环为100个数据,求平均值并赋值给P(k),k=ceil(length(A)\/100)

怎样求matlab中分段函数的函数值?
如果函数只分了两段的话可以用switch模块,如果分三段的话可以用if模块,但是使用if模块的时候需要跟merge模块以及If Action Subsystem模块结合,还有一种方式就是用matlab fcn模块,如图所示:例子:已知函数f(x)= 求f(3)的值。解:由3∈(-∞,6),知f(3)=f(3+2)=f(5),又5∈(-∞,6...

求解matlab进行高斯分峰拟合的程序?或者原理?
我用的是cftool拟合的,比写程序快捷。运行结果: General model Gauss2: f(x) = a1*exp(-((x-b1)\/c1)^2) + a2*exp(-((x-b2)\/c2)^2,FhGsda

高分紧急求高手解答,用matlab plot()绘制名字!求程序!
利用单片机液晶点阵显示图形的办法:先在网上找个字模,再把字模改成0和1组成的表格,用matlab载入表格,再生成same size的一个网格,surf()一下就出来了,图片如下:

高分!拜求MATLAB将不标准的线性规划化标准型
对于你的题问我想说的是,这本来就不是一个MATLAB的问题,是数学问题,MATLAB是可以用来解线性规划的,但要求的线性规划问题要是MATLAB的标准形式,这个把一般线性规划问题划为MATLAB能做的标准形式使用你的数学知识来做的而不是MATLAB来做的,不知道你有没有熟悉MATLAB软件他可以求解的线性规划问题分为...

宁阳县15928933154: 高分求Matlab高手啊: 如何求''未知''三元函数最小值. -
伯牙吾台备盐酸: 像这种问题Matlab库函数直接可以求解.编写三个m文件,一个主程序,两个function 主程序main.m p0=[0 0 0]; A=[];b=[];Aeq=[];beq=[];vlb=[-2;-2;-2];vub=[2;2;2]; [x,fval]=fmincon('fun_u',p0,A,b,Aeq,beq,vlb,vub,'confun_u') fun_u.m子函数即目标函数u ...

宁阳县15928933154: 急!!跪求matlab高手 多元线性回归模型求解!高分! -
伯牙吾台备盐酸: >> Y1=[46.78 43.42 37.64]'; Y2=[36.05 37.43 31.63]'; Y3=[10.73 5.99 6.01]'; X1=[-6.08 -4.77 0.12]'; X2=[71.32 61.85 71.14]'; X3=[25.88 23.39 19.46]'; X4=[0.85 11.18 12.02]'; X5=[19.69 19.66 19.66]'; X6=[-0.71 -2.97 -0.17]'; X=[ones(3,1),X1,X2,X3,...

宁阳县15928933154: 跪求matlab的高手 有高分 -
伯牙吾台备盐酸: %熵在信息系统中作为事物不确定性的表征.function entr=yentropy(a) a=uint8(a);%把输入矩阵a强制转化成为一个字节类型的变量矩阵, %可以差不多理解是double转unsigned int.所以取值0~255 [m n l]=size(a);%可以从这看出a是一个三维...

宁阳县15928933154: 高分求解matlab的简单题,急求!
伯牙吾台备盐酸: clc;cleara=0;b=1;fa=1-a-sin(a);fb=1-b-sin(b);c=(a+b)/2;fc=1-c-sin(c);if fa*fb&gt;0,break,endwhile abs(fc)&gt;0.5*10^(-4) c=(a+b)/2;fc=1-c-sin(c);if fb*fc&gt;0 b=c; fb=fc;else a=c; fa=fc;endendformat longfx=fc,x=c结果:fx = -2.414986223420179e-005x...

宁阳县15928933154: 求高手..这个式子用matlab怎么编..谢谢..给高分..急啊
伯牙吾台备盐酸: 可以编写一个返回两个值的函数,为了使函数不与MATLAB内部函数重复,编写如下函数就可以实现上述未实现的功能. function y=asin1(x) z=asin(x)*180/pi; y=zeros(1,2); if x>0 y(1)=z; y(2)=180-z; elseif x<0 y(1)=z; y(2)=-180-z; else y(1)=0; y(2)=180; end

宁阳县15928933154: 跪求MATLAB高手!!!超高分去求答案!!! -
伯牙吾台备盐酸: function f=fxy(x,y)%if x>0 & y>0 f=x^2+sin(x*y)+2*y;else f=0;end%%%%%%%%%%%%%%%%%%%%%%%%%%f=fxy(-2,2)f = 0>> fxy(2,3)ans = 9.7206>> fxy(-3,-3)ans = 0

宁阳县15928933154: 求高手帮忙写一小段matlab代码(内详),很简单的,高分求 -
伯牙吾台备盐酸: 这个用Matlab里现有的函数就可以实现了.这个属于基于窗函数的FIR滤波器.私信详细解释把.

宁阳县15928933154: matlab 求助!!!!!!高分 -
伯牙吾台备盐酸: solve('equa1','equa2',..,'equa12','var1',..,'var12')用这个,前提是你有symbolic toolbox.你把所有的变量都变成sym格式. sym nsym T …...

宁阳县15928933154: 高分求matlab高手解答一下这个数学问题,感激不尽 -
伯牙吾台备盐酸: 轨迹clearx=0:0.01:1;y=-5*(1-x).^(4/5)/8+5*(1-x).^(6/5)/12+5/24;plot(x,y,'*')解题1.建立M文件eq1.m function dy=eq1(x,y) dy=zeros(2,1); dy(1)=y(2); dy(2)=1/5*sqrt(1+y(1)^2)/(1-x); 2. 取x0=0,xf=0.9999,建立主程序ff6.m如下:x0=0,xf=0.9999 [x,y]=ode...

宁阳县15928933154: 求高手 matlab循环求数值解 -
伯牙吾台备盐酸: B1的值是一直不变吗?最终是要求解出变量B?参考如下程序:f = @(a,b,c,B)A1-B1 % 这里把A1,B1具体表达式代入,B1中的e和h用实际数值 a = 1, b = 2, c = 3; fsolve(@(B)f(a,b,c,B), 0) % 这就可以求解出abc分别为1,2,3时的解

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网