The @ symbol in Matlab

685 views (last 30 days)
Emma
Emma on 17 Oct 2019
Commented: Steven Lord on 23 Jan 2024
What does f = @(n) ((1/2).^n).*(n>=0); mean? Is this the (1/2)^n function, for values of n greater than zero? I am not sure how the @ symbol works in Matlab as I have not found an adequate explanation in the Matlab documentation.

Accepted Answer

KALYAN ACHARJYA
KALYAN ACHARJYA on 17 Oct 2019

More Answers (2)

POOPESH
POOPESH on 23 Jan 2024
what does the meaning of g=@(x)(x^2*(1-2*x));
  1 Comment
Steven Lord
Steven Lord on 23 Jan 2024
It is an anonymous function. The first paragraph of that page is "An anonymous function is a function that is not stored in a program file, but is associated with a variable whose data type is function_handle. Anonymous functions can accept multiple inputs and return one output. They can contain only a single executable statement."
They are often used for small and simple functions to avoid having to create a separate function file.
By the way, you may want to vectorize your function so you can call it with an array of values, not just one value at a time.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!