关于#matlab#的问题:代码矩阵维度不一致

我需要绘制出一个二元函数的图像,函数表达式如下:

img


其中

img


r(g)=0.006038 g^2 - 0.09368 g + 0.3247,M是常数。但现在报错,说我错误使用'-',矩阵维度不一致。是哪里出问题了呢?如何解决?

我写的代码如下:

img


希望有人能指点迷津!

y是5个元素,所以r,k都是5个元素。
z那行用k除减去x,k与x维度不一致。

img

提供参考实例:matlab做矩阵运算时,却出现错误使用 - ,*等, 矩阵维度必须一致的错误,链接:https://blog.csdn.net/yjwdishou/article/details/112442009

这个图像,N是因变量,g和t是自变量
代码中,g是8:12,默认长度是5。t是0:365,默认长度是366,两者长度不一样,所以出错
把g的长度改成366就好

clc
clear
M = 8; 
theta = 2.668;
K0 = 1840;
N0 = 920;
x = 0:365;
y = 8:4/365:12;
r = 0.006038 * y.^2 - 0.09368 * y + 0.3247;
K = K0 * (1 + r - M);
z = K./(exp(log10((K/N0) - 1) - theta * x) + 1);
plot3(x,y,z,'r','linewidth',1.5)
xlabel('t');
ylabel('g');
zlabel('N');


img

你这最后解出来怎么是复数??