发布网友
共1个回答
热心网友
放在一个m文件中即可,但还需要你自己给出初始值,上下限等,不然结果会令你很失望
function [] = cxd()
clear;
clc;
%lb=[0 4.95];
%ub=[10 5.22];
[x,fval]=fmincon(@myfun,[1;1],[],[],[],[],[],[],@mycon2) %%%% 主函数
function [c,ceq]=mycon2(x)
c=[x(2)-5200;
2*x(2)/1000-6.008*10^-3;
2+0.0015*x(2)-5.99*10^-3;
1.35*(x(2)+6.008*10^-3-2)/(5.99*x(2)*10^-3-2)-186.3];
ceq=pi*(x(2)^3/12+x(1)*x(2)^2/4)-7.5*10^10;
function f=myfun(x)
e=10;
f=7.85*pi*x(1)*(x(2)+6.008*10^-3*x(2))*6.008*10^-3*x(2)*10^-6+5.4165*pi*5.99*10^-3*x(2)*(x(2)+5.99*10^-3*x(2))^2*10^-6;