Matlab中非被积变量为矩阵变量如何求积分?
要求f(r)*r的定积分里面的R(i)、Z(i)在每次for循环里的值都是变化的fori=1:1:20fun=@(r)Ar*(((o1/2*(sign(R(i))*sqr...
要求f(r)*r的定积分 里面的R(i)、Z(i)在每次for循环里的值都是变化的
for i=1:1:20
fun=@(r)Ar*(((o1/2*(sign(R(i))*sqrt(R(i)^2-r^2)-R(i)+Z(i))+o)^5)-((o1/2*(sign(R(i))*sqrt(R(i)^2-r^2)-R(i)+Z(i))+o)^3.3))*r;
q=quad(fun,0,a);%f(r)*r的定积分
end 展开
for i=1:1:20
fun=@(r)Ar*(((o1/2*(sign(R(i))*sqrt(R(i)^2-r^2)-R(i)+Z(i))+o)^5)-((o1/2*(sign(R(i))*sqrt(R(i)^2-r^2)-R(i)+Z(i))+o)^3.3))*r;
q=quad(fun,0,a);%f(r)*r的定积分
end 展开
1个回答
展开全部
题主给出的数组积分代码,用quad数值积分函数求解其积分问题是不合理的。由于quad函数要求被积函数中的数值为单一数值,所以被积函数中的不能用R(i)、Z(i)来代替R、Z,因此题主的代码应该这样来修改:
for i=1:1:20
Ri=R(i);Zi=Z(i);
fun=@(r)Ar*(((o1/2*(sign(Ri)*sqrt(Ri^2-r^2)-Ri+Zi)+o)^5)-((o1/2*(sign(Ri)*sqrt(Ri^2-r^2)-Ri+Zi)+o)^3.3))*r;
q=quad(fun,0,a);%f(r)*r的定积分
end
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询