Why is @(x) used in matlab and how does it work?
507 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Alekhya
am 11 Mai 2020
Bearbeitet: madhan ravi
am 11 Mai 2020
pdfx = @(x) 2*sqrt(x); % Define PDF
x = rand(1,100000); % Generate Random ‘x’
px = pdfx(x); % Generate Data
This is a piece of code used to generate a random variable of self defined pdf. Why is @(x) used here and how is it working.
0 Kommentare
Akzeptierte Antwort
KALYAN ACHARJYA
am 11 Mai 2020
Bearbeitet: KALYAN ACHARJYA
am 11 Mai 2020
Its creates the function handle, I suggest ti go through the following MATLAB Documentation, and any issue let us know here
1.See the example, the first line cretes the function named as "pdfx" (Function is 2*sqrt(x))
pdfx = @(x) 2*sqrt(x);
2. Next you have defined x some random data
x = rand(1,100000); % Generate Random ‘x’
3. Passing the x values in the function pdfx as defined
px = pdfx(x);
Its similar to, defined the function file
function y=pdfx(x)
y =2*sqrt(x);
end
Now call the function
x = rand(1,100000);
px = pdfx(x);
Please go through the above mentioned link, you will get more information
Experts any comments please (If I missed any important issue)
0 Kommentare
Weitere Antworten (1)
madhan ravi
am 11 Mai 2020
Bearbeitet: madhan ravi
am 11 Mai 2020
It’s just a matter of choice as Kalyan mentioned above how it works. The usage depends completely on the coder. As pdfx(...) was defined before generation of data , it was defined as a function handle here. It’s equivalent to pdfx = ... without @(x) after generation of x.
3 Kommentare
Siehe auch
Kategorien
Mehr zu Geometry and Mesh finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!