[已答复] 出错 矩阵维度必须一致,有人可以帮忙看一下吗

[复制链接]
18693607572 发表于 2019-4-16 17:13:18
clc;clear;
% 本程序利用wilson算法设计风力机叶片,考虑叶尖损失系数和叶毂损失系数
global D R langi lang0
global r_hub N ri
N=3;% 叶片数量
D=70.3;%叶轮直径;
R=D/2;
n=20;% 叶素个数
r_hub=1.5;% 叶毂半径;
lang0=6;%尖速比;
v=12;% 水流流速
CL=1.4;% 翼型升力系数
arfa0=9/180*pi;%翼型攻角,本设计采用NACA 63-815翼型;
for i=1:n % 将叶片分为11个叶素,从0.1m 到 0.3m,均匀开来;
    ri=0.1+(i-1)*0.02;
    langi=lang0*ri/R;
    % 以下利用优化函数 fmincon 求截面的 轴向诱导因子a;周向诱导因子b;
    % 损失因子F 和 倾角 theta;存在向量 X 中;
    x0=[0.3,0.05,0.8,0.3];
    A=[];B=[];
    Aeq=[];Beq=[];
    VLB=[0,0,0,0];VUB=[];
    [Q(i,1:4),fval]=fmincon('fun',x0,A,B,Aeq,Beq,VLB,VUB,'mycon');
end
a=Q(:,1);b=Q(:,2);F=Q(:,3);theta=Q(:,4);r=linspace(0.1,R,n)';
arfa=linspace(arfa0,arfa0-2,11)'/180*pi;% 攻角沿翼展线性变化;
beita=theta-arfa;% 修正前安装角;
for i=1:11
    c(i)=(1-a(i)*F(i))*a(i)*F(i)*8*pi*sin(theta(i))^2/cos(theta(i))/(1-a(i))^2*r(i)/CL/N;% 修正前弦长;
end
c=c';
QQ图片20190416170816.png

2 条回复


TouAkira 发表于 2019-4-16 20:45:30
你的Q是个20*4阶的矩阵,所以a,b,F,theta都是20*1的向量,而arfa的差值向量被你设定成11*1的向量,当然不能直接进行加法运算了
把arfa改成与a,b,F,theta维度一致的20*1的向量
  1. arfa=linspace(arfa0,arfa0-2,20)'/180*pi
复制代码

不会投三分 发表于 2022-5-7 15:04:16
楼主 想问一下  你的风力机整个的编程是怎么样的  可以看一下吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

相关帖子
相关文章
热门教程
站长推荐
快速回复 返回顶部 返回列表