Defining vectors in MATLAB
4 views (last 30 days)
Show older comments
Hopefully this is understandable...
I'm writing a function that requires two variables to be entered, M1 and M2. And defined it in a way such that M = [M1 M2] within the function. The equation required requires the use of M1 and M2.
So on my m-file page, is it possible to say that M = [3 4], such that the program can use M1 = 3, M2 = 4. I want to make it so that I don't have to enter the variables into my function file, but into the m-file instead, so that any value can be used for M1 and M2.
Is this possible?
Thank you.
0 Comments
Accepted Answer
Star Strider
on 28 Feb 2015
It is not only possible, it is the correct way to design your code, if I understand correctly what you want to do.
You would reference ‘M’ differently, though:
M1 = 3;
M2 = 4;
M = [M1, M2];
then to refer to the elements of ‘M’:
M1 = M(1);
M2 = M(2);
I’m not certain what you want to do, so if you’re asking something different than what I wrote, please clarify.
More Answers (1)
Image Analyst
on 28 Feb 2015
You say "so that I don't have to enter the variables into my function file, but into the m-file instead" so I take it that you have two m-files , one is a "function file" and the other "m-file" is your script. So in your script I'd define the two variables
M1 = 3;
M2 = 4;
output = MyFunction(M1, M2);
Then in your "function file" "function that requires two variables to be entered, M1 and M2" , I'd have this where you list the two variables in the input argument list:
function output = MyFunction(M1, M2)
M = [M1, M2];
% more code that uses M....
0 Comments
See Also
Categories
Find more on Downloads in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!