What is the best way to organize parameters in a flexible way?

3 views (last 30 days)
Interpretation of some parameters depend on other parameters, and I want to store a meaningful name if possible. As an example:
type_of_function = 'linear' or 'sinusoid' if linear: a and b should be the parameters if sinusoid: amplitude, phase, frequency should be the parameters.
So how to organize my parameters? In a structure? Or cell array? And how?

Accepted Answer

Image Analyst
Image Analyst on 11 Jun 2015
Cell arrays are complicated and confusing. I think a structure or structure array is a lot simpler, intuitive, and more straightforward if you have a mixture of related data of different types. It's a good choice to hold a variety of data.
If all your data have the same number of elements, though they may be of different types, then a table would be good and may have some advantages over a structure for doing certain types of bulk operations.
If you want certain functions to be associated with your data, then you can build a class, but if all you have is just data and just need a way to store them, then you wouldn't need a class.

More Answers (1)

Ingrid on 11 Jun 2015
Edited: Ingrid on 11 Jun 2015
I would think in a class so that you write a class functionType which can hold two classes either linear or sinusoid and than define a class for both the linear and the sinusoid which defines which parameters these classes can hold
organizing as a class has an additional advantage that you can also define methods that perform calculations with your parameters


Find more on Cell Arrays 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!