naming convention for transfer functions
When referencing transfer functions from mo_mpr_transfer_func.f90, this is done by their function name. We need to create a naming convention and a documentation/search scheme for these function names that is user-friendly. Parametric transfer functions vary in respect to these attributes:
- number of predictors
- number of parameters
- type of function (with unlimited complexity)
Functions can of course be highly non-linear and complex including sine, cosine, log/exp functions as well as conditional evaluations. Currently, we have linear_2_arg, linear_2_arg_exp, linear_3_arg_thresh. So it resolves to roughly to {func_type}{n_arg}{func_type_addon}.
I favor a system like the current one that maybe also supplies some meta information on the transfer function (e.g. keywords: "Cosby", "Ks") in addition to its attributes. A documentation (HTML-based) should be generated directly from the source code retrieving those attributes (number of predictors and parameters as well as number of occurrences of certain operators (e.g. +-*/><^)). One should maybe also think about the default parameters for that transfer function reported in literature (if applicable).
Any suggestions are welcome.