whay do we use @(t) in our code???
104 views (last 30 days)
Show older comments
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 Comments
Answers (1)
David Young
on 1 Mar 2011
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 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!