How to run m-files(main function is variable) with Matlab code?
12 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
The values of variable have been got by excel file. And also known the name of m-file for the main function. I want to call this main function with variable or others instead of type the function name directly.
for example
below inputs already defined.
a1=1;
a2=2;
a3=5;
b1=6;
b2=9;
...
Question is how to run the m-file with above inputs value? i try to use
run myfun
but error happen due to variable a1, a2, ...b2 don't be assigned with above values.
I know we can use below comen code. but it is not what I want because there are many different m-file. I want to make a general coe to replace below code. I don't want to copy below code flow and past it every time for too many m-file.
[x1,x2,x3]=myfun(a1 a2 a3 b1 b2 )
below function is defined in myfun.m
function [x1,x2,x3]=myfun(a1 a2 a3 b1 b2 )
x1=a1+a2,
x2=a3+a2;
x3=b1+b2+b3;
end
3 Kommentare
Rik
am 19 Mai 2020
It looks to me like your numbered variables should be arrays instead. Otherwise you would have to do something useful with 30k input variables. That isn't impossible, but it is not likely to be what you need.
Akzeptierte Antwort
Ameer Hamza
am 19 Mai 2020
Bearbeitet: Ameer Hamza
am 19 Mai 2020
You can use the cell array to expand the input arguments automatically. For example
argument_input1=5;
argument_input2=6;
...
argument_input30003=9;
Input_parameter={5 6 .. 9} % cell array
Call the function like this
S=myfun(Input_parameter{:})
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Language Fundamentals 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!