MATLAB中的.*和./

2020-10-28 教育 118阅读
这不是点乘的问题,这个你括号不匹配,表达式中左括号和右括号应该数量一样。第一项加一个左括号就行了,改为:
z = -20*exp((-0.2*sqrt(x.^2+y.^2)/2))-exp((cos(2*pi*x)+cos(2*pi*y))/2)+20+2.71828;
或者:
z = -20*exp(-0.2*(sqrt(x.^2+y.^2)/2))-exp((cos(2*pi*x)+cos(2*pi*y))/2)+20+2.71828;
点乘和点除代表矩阵对应元素相乘除。比如
A=[1 2; 3 4];
B=A;
A.*B=[1*1 2*2;3*3 4*4]=[1 4;9 16]
而A*B=[1*1+2*3,1*2+2*4;3*1+4*3,3*2+4*4]=[7 10;15 22]
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com