我正在评估一个简单的功能:
y = (2*x)/sqrt( 1 + x.^2 ); 其中x是其中包含约100个值的向量。但是,在这种情况下,MATLAB使y等于单个标量值。如果我做:
y = 2*x; 我得到了一个y值的向量,正如预期的那样。如果我做:
y = x.^2; 我
也得到了y中值的向量。
为什么上面的方程y = (2*x)/sqrt( 1 + x.^2 );给一个单一的价值,而不是价值的载体?
回答:
操作B/A (给定B = 2*x并且A = sqrt(1+x.^2) )将尝试执行
矩阵右除法 ,对于行向量x将是对
矩阵最小二乘的解。方程组yA = B ,得出y的标量值。
对于按
元素进行数组划分 , B./A改为执行操作B./A (请注意. )。
更多&回答...