Adding noise to a sine wave
조회 수: 1 (최근 30일)
이전 댓글 표시
Hi, I get error: Attempt to reference field of non-structure array. Error using + Matrix dimensions must agree.Error in (line 19), y=x+(alpha.v)
for following code please:
fs=8000;
tmax=4/360;
fangular=pi/10; % angular frequency (rad/sample).
n=1:fs*tmax;
A=1.2; % Amplitude
x=A*sin(n*fangular);
v=randn(1,64);
alpha=0.1;
noise=alpha*v;
y = x + noise;
plot(y)
댓글 수: 0
답변 (1개)
Jos (10584)
2017년 8월 23일
The expression "v.alpha" is interpreted by matlab as the contents of the field "alpha" of the structure variable "v". This is probably not what you meant.
You create v as a 1-by-64 array, and alpha is a scalar. I assume you want to simply multiply all elements of v by alpha, therefore:
v .* alpha
or, since alpha is a scalar,
v * alpha
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!