whay do we use @(t) in our code???
조회 수: 31 (최근 30일)
이전 댓글 표시
f = 0.5; % Set f to whatever it's supposed to be here
S1 = @(t) sin(2*pi*f*t); S2 = @(t) 1/2 * sin(6*pi*f*t); S = @(t) S1(t) + S2(t);
T = linspace(0,1,1000); plot(T,S1(T),T,S2(T),T,S(T)); legend({'S1(t)','S2(t)','S(t)'}); in this code why do we use @(t),,,and what dose that mean????
댓글 수: 0
답변 (1개)
David Young
2011년 3월 1일
It's constructing anonymous functions. See http://www.mathworks.com/help/techdoc/matlab_prog/f4-70115.html and http://www.mathworks.com/products/matlab/demos.html?file=/products/demos/shipping/matlab/anondemo.html.
You could achieve the same result more simply by computing the values without building the function, like this:
f = 0.5; % Set f to whatever it's supposed to be here
T = linspace(0,1,1000);
Y1 = sin(2*pi*f*T);
Y2 = 1/2 * sin(6*pi*f*T);
Y = Y1 + Y2;
plot(T,Y1,T,Y2,T,Y);
legend({'S1(t)','S2(t)','S(t)'});
The advantage of making the functions is that they are available for use later, but if you don't need that you might find it easier to work without them, using code like the example above.
댓글 수: 0
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!