matlab中要求向量n1和n2的叉乘,但n1中有个数组变量,所以cross(n1,n2)出错size不一样,

问题描述:

matlab中要求向量n1和n2的叉乘,但n1中有个数组变量,所以cross(n1,n2)出错size不一样,
theta=0:0.1*pi:2*pi;
x=(r-t)*cos(theta);
y=(r-t)*sin(theta);
z=sqrt(R^2-((r-t).*sin(theta)-e).^2)./sin(alpha)-(r-t).*cos(theta)./tan(alpha);
n1=[x*(cos(alpha))^2+z*sin(alpha)*cos(alpha) y-e x*sin(alpha)*cos(alpha)+z*(sin(alpha))^2];
n2=[x y 0];
t=cross(n1,n2)
1个回答 分类:综合 2014-12-06

问题解答:

我来补答
最后三行改成
n1=[x*(cos(alpha))^2+z*sin(alpha)*cos(alpha); y-e; x*sin(alpha)*cos(alpha)+z*(sin(alpha))^2];
n2=[x; y; zeros(1,length(x))];
t=cross(n1,n2)
 
 
展开全文阅读
剩余:2000