老师,请教您一个问题。(错误如图片所示)?

functionga_main19()clc,clearall,closeallfun=@fitnessfun;%设置适应度函数句柄,(在函数名前加@即可)nonlcon... function ga_main19()clc,clear all,close allfun = @fitnessfun; % 设置适应度函数句柄,(在函数名前加@即可)nonlcon = @nonlconfun; % 设置非线性约束函数句柄% 已知量L5=80;H=1200;L4=sqrt(L5^2+H^2);Deb=atand(L5/H);Dec=90-Deb;Ded=90+Deb;nvars = 3; % 自变量个数A = []; b = []; % 线性不等式约束Aeq = []; beq = []; % 线性等式约束lb = [0;0;0]; ub = []; % 自变量定义域[L, fval,h] = ga(fun,nvars,A,b,Aeq,beq,lb,ub,nonlcon,[])endfunction f = fitnessfun(L)f = -acosd((L3^2+L4^2-(L1-L2)^2)./2*L3*L4);endfunction [c,ceq] = nonlconfun(L)%非线性不等式约束c(1,1) = ((L3-L2)^2+(L2+L3)^2-(2*L5)^2)./2*(L3-L2)*(L2+L3); c(2,1) = L1^2+L2^2-L3^2-L4^2;%非线性等式约束ceq (1,1)= 2*L1*L4*cosd(Ded)-L1^2-L4^2+(L2+L3)^2; ceq (2,1)= 2*L1*L4*cosd(Dec)-L1^2-L4^2+(L2-L3)^2;end 展开
 我来答
lhmhz
高粉答主

2020-07-25 · 专注matlab等在各领域中的应用。
lhmhz
采纳数:7264 获赞数:17007

向TA提问 私信TA
展开全部

题主你这里的自定义函数,使用的变量为L,这不是一个单一的变量,而是多个的变量。即

L1=L(1);L2=L(2);L3=L(3)

修改后可以运行。但得到的结果为不完全的解,请题主检查已知条件是否合理?

来自:求助得到的回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式