Local functions are not working in MatLab R2022a

I'm trying to write local functions in the way instructed in this video: https://www.youtube.com/watch?v=f0zKcuP3Wc0&list=PLlvaivyRxHmdTvpNBe4gKWrOBrcuxhpsl&index=48, beginning at 5:50. When running the code below, my MatLab R2022a says Unrecognized function or variable 'mymean'. What am I missing here?
x = 1:10;
n = length(x);
avg = mymean(x,n)
function a = mymean(v,n)
a = sum(v)/n;
end

6 Commenti

What's the name of the file in which you saved this code?
We can run your code in R2022a right here in the forum. As you can see below, it works. So, whatever the problem is, it's something in your environment specificially.
x = 1:10;
n = length(x);
avg = mymean(x,n)
avg = 5.5000
function a = mymean(v,n)
a = sum(v)/n;
end
It's saved in test.m. If I name it as mymean, MatLab says that the file and function names cannot be similar.
Any idea what could be the problem in my environment? I use Pop_OS Linux (Ubuntu).
@Jonne Klockars: how are you running the script? Please show the exact code you use to run your file.
The exact code is in the question. I have nothing else in the file. I select it all and press F9.

Accedi per commentare.

 Risposta accettata

Stephen23
Stephen23 il 9 Giu 2022
Modificato: Stephen23 il 9 Giu 2022
"I select it all and press F9."
That will not work.
You need to run the script by calling it by name from the command line:
>> test
MATLAB is a bit more strict with function definitions than some younger languages around these days, where you can just define anything on the fly. Selecting function code and pressing F9 will not define the function and then let you call it. MATLAB simply does not work that way. You need to call the function or run the script that calls the function.

3 Commenti

Yes. That was the problem. Thank you.
Also selecting the green play-symbol (Run) works. I watched the video series (link in question) before beginning the exercises and saw the instructor using F9. I'm quite sure she doesn't mention about the difference between it and Run / Command Line in any of the 60 videos.
some keyboard include a bottom "fn", when you accidently click that bottom, F9 not work. you need to press "fn" buttom agian to recover that.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Get Started with MATLAB in Centro assistenza e File Exchange

Prodotti

Release

R2022a

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by