matlab维数不一样问题 求大神高分悬赏

2025-03-12 01:56:18
推荐回答(1个)
回答1:

错误原因是因为delta和omega的维度不一样,所以最后一样相乘就出错了。需要修改两个地方:

t=0:1:25;
n=0:1:366;
a_omega  = 15.*(t-12);
omega =  repmat(a_omega,1,367); % ① 修改元素个数:26×367
a_delta = 23.45.*sind(2*pi*(284+n)/365);
for ii  = 1:length(n)
    for jj = 1:length(t)
        delta((ii-1)*length(t)+jj) = a_delta(ii);
    end
end
phi = 40.1;
sind_alpha = sind(phi)*sind(delta)+cosd(phi)*cosd(delta).*cosd(omega); % ② 使用点乘