作业帮 > 数学 > 作业

matlab中定义一个函数 y(x1,x2)=求和a(i,j)*x1^i*x2^j

来源:学生作业帮 编辑:拍题作业网作业帮 分类:数学作业 时间:2024/04/30 22:18:47
matlab中定义一个函数 y(x1,x2)=求和a(i,j)*x1^i*x2^j
简单点的情况,假设这是个2次,2变量多项式,系数矩阵a已知,这样函数可以直接输入,写成如下形式
y=@(x1,x2)(a(1,1)*x1^1*x2^1+a(1,2)*x1^1*x2^2+a(2,1)*x1^2*x2^1+a(2,2)*x1^2*x2^2)
但是对于很多次方的情况,例如10次,就要写100个加法,太费时间了,有没有什么方法能快速完成这种函数定义?
将x当做向量,将i、j作为用循环变量来写,不就是一劳永逸的么
类似下面的代码:你需要修改下
function y = fun(x,a)
num = length(x);
y = 0;
for i=1:num
for j=1:num
y=y+a(i,j)*x(i)^i*x(j)^j;
end
end