# Why Does numel() Accept More than One Argument?

29 views (last 30 days)
Paul on 24 May 2024 at 18:54
Commented: Paul on 24 May 2024 at 19:28
@doc:numel indicates that the function accepts only a single argument. But it can be called with more than one argument and it returns a result.
which numel(rand(3),rand(5))
built-in (/MATLAB/toolbox/matlab/elmat/@double/numel) % double method
numel(rand(3),rand(5)) % return numel of the second argument?
ans = 25
which numel(rand(3),rand(5),rand(4))
built-in (/MATLAB/toolbox/matlab/elmat/@double/numel) % double method
numel(rand(3),rand(5),rand(4)) % returns ?
ans = 400
DGM on 24 May 2024 at 19:11
Edited: DGM on 24 May 2024 at 19:12
Paul on 24 May 2024 at 19:28

Animesh on 24 May 2024 at 19:19
Hey @Paul,
When the numel function in MATLAB is called with more than one input argument, it returns the product of number of elements in the parameters after the first.
Hence the following code snippet returns 400, i.e. "numel ( rand ( 5 ) ) * numel ( rand ( 4 ) )":
numel(rand(3),rand(5),rand(4))
ans = 400
numel(rand(5)) * numel(rand(4))
ans = 400

### Categories

Find more on Logical in Help Center and File Exchange

R2024a

### Community Treasure Hunt

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

Start Hunting!