以上代码出现了问题函数或变量 'a1' 无法识别。 出错 untitled (第 78 行) eqn = u1 == u30_1 + 3*a1*u21_1 + 3*a^2*u12_1 + a^3*u03_1;
时间: 2023-12-18 07:11:20 浏览: 58
在第78行之前添加 `syms a1;`语句,即可解决问题函数或变量 'a1' 无法识别的问题。修改后的代码如下:
```matlab
[m,n] = size(I1);
for i = 1:m
for j = 1:n
u12_1 = sum(sum((i-x_bar_1)^1*(j-y_bar_1)^2*I1));
u21_1 = sum(sum((i-x_bar_1)^2*(j-y_bar_1)^1*I1));
u03_1 = sum(sum((i-x_bar_1)^0*(j-y_bar_1)^3*I1));
u30_1 = sum(sum((i-x_bar_1)^3*(j-y_bar_1)^0*I1));
u12_2 = sum(sum((i-x_bar_2)^1*(j-y_bar_2)^2*I2));
u21_2 = sum(sum((i-x_bar_2)^2*(j-y_bar_2)^1*I2));
u03_2 = sum(sum((i-x_bar_2)^0*(j-y_bar_2)^3*I2));
u30_2 = sum(sum((i-x_bar_2)^3*(j-y_bar_2)^0*I2));
u12_3 = sum(sum((i-x_bar_3)^1*(j-y_bar_3)^2*I3));
u21_3 = sum(sum((i-x_bar_3)^2*(j-y_bar_3)^1*I3));
u03_3 = sum(sum((i-x_bar_3)^0*(j-y_bar_3)^3*I3));
u30_3 = sum(sum((i-x_bar_3)^3*(j-y_bar_3)^0*I3));
u12_4 = sum(sum((i-x_bar_4)^1*(j-y_bar_4)^2*I4));
u21_4 = sum(sum((i-x_bar_4)^2*(j-y_bar_4)^1*I4));
u03_4 = sum(sum((i-x_bar_4)^0*(j-y_bar_4)^3*I4));
u30_4 = sum(sum((i-x_bar_4)^3*(j-y_bar_4)^0*I4));
end
end
syms a1;
eqn = u1 == u30_1 + 3*a1*u21_1 + 3*a1^2*u12_1 + a1^3*u03_1;
eqn = subs(eqn, u1, 0);
a1 = solve(eqn, a1);
```