我创建了一个3 d正弦表面。并且想要添加一个正态分布的随机噪声零均值和标准差0.03毫米。但它说错误*。下标赋值尺寸不匹配。有人能帮我查一下好吗
2视图(30天)
显示旧的评论
% 3 d正弦表面dx = 0.001;%在x毫米间距dy = 0.001;%的点沿着x和y nx = 128;纽约= 128;% n = 8000;%生成数组x和y的x = (0:1: nx-1) * dx;y = (0:1: ny-1) * dy;j = 1:纽约i = 1: nx
z (j, i) = 2 * sin(2 *π* x (i) / 0.064) + normrnd (0, 0.03 * 1 (nx, 1));
结束结束z = z-mean(意味着(z)); %转变为0意味着网(x, y, z)
0评论
答案(2)
优素福Khmou
2013年8月19日
编辑:优素福Khmou
2013年8月19日
对,
当您使用x, y循环,在每次迭代中,CPU计算时只有一个标量函数使用
normrnd
大小128 * 1,你可以调整你的方法:
% 3 d正弦表面
dx = 0.001;% x毫米的间距
dy = 0.001;%的数量
沿着x和y %点
nx = 128;纽约= 128;%
n = 8000;%生成一系列的x和y
x = (0:1: nx-1) * dx;
y = (0:1: ny-1) * dy;
为j = 1:纽约
为我= 1:nx
z (j, i) = 2 * sin(2 *π* x (i) / 0.064) + normrnd (0, - 0.03);
结束
结束
z = z-mean(平均(z));%转变为0意味着网(x, y, z)
或者你可以简单地添加高斯噪声如下:
Z = Z + normrnd (0, 0.03, nx,纽约);