Is it possible to use variables stored in the workspace inside another function ?

1 view (last 30 days)
Is it possible to use variables stored in the workspace inside another function?
  3 Comments
Stephen23
Stephen23 on 22 Apr 2020
@HN: global variables and evalin are two anti-pattern options that you should definitely avoid using, unless you really want to force yourself into writing slow, compplex, obfuscated, buggy code that is difficult to debug.
The MATLAB documentation clearly states the the best practice is to pass input/output arguments:

Sign in to comment.

Accepted Answer

Star Strider
Star Strider on 22 Apr 2020
The best option is to pass them to the function as extra parameters. See: Passing Extra Parameters for an extended discussion.
  6 Comments
HN
HN on 23 Apr 2020
Edited: HN on 23 Apr 2020
I found it a bit harder to catch up the pass variable. Can you be a bit more specific please. Example.
When I run the for loop W is saved into the workspace. After finishing the for loop I wanted to use W inside fqdot function. How can I pass W into this funciton to compute omg?
Thank you so much for the help.
Star Strider
Star Strider on 23 Apr 2020
Please see the documentation on Passing Extra Parameters that I linked to in my original post.
I have no idea what you are doing in your code (other than it appears to be a Runge-Kutta integrator).

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!