A simple, user friendly way to handle and parse variable argument inputs (varargin) into MATLAB functions.
Al momento, stai seguendo questo contributo
- Vedrai gli aggiornamenti nel tuo feed del contenuto seguito
- Potresti ricevere delle email a seconda delle tue preferenze per le comunicazioni
getOptions is a simple, user friendly way to handle and parse variable argument inputs (varargin) into MATLAB functions.
Please see my 2014 write-up (https://bahanonu.com/getOptions) for details and reasons behind implementing and using this function.
Install by adding getOptions directory to path. Usage instructions in getOptions.m, in the README, on GitHub, or briefly below.
===
Instructions on using getOptions.
There are two ways to input options to a function that getOptions will parse. The first involves passing an 'options' parameter with a structure containing all options that the user would like to modify.
Method #1
opts.Option1= 1;
opts.Option2 = 0;
exampleFxn(inputArg1,'options',opts);
The second method involves passing Name-Value arguments as is normal in MATLAB.
Method #2
exampleFxn(inputArg1,'Option1',1,'Option2',0);
Next add getOptions to beginning of a function as below with all options put inside a structure.
function [out1] = exampleFxn(in1,varargin)
% ========================
% FUNCTION OPTIONS
% Description option #1
opts.Option1 = '';
% Description option #2
opts.Option2 = 1;
% Description option #3
opts.Option3 = 1;
% get options
opts = getOptions(opts,varargin); % ***HERE IS WHERE getOptions IS USED***
% disp(opts)
% unpack options into current workspace (not recommended)
% fn=fieldnames(opts);
% for i=1:length(fn)
% eval([fn{i} '=opts.' fn{i} ';']);
% end
% ========================
% Your function
end
Cita come
Biafra Ahanonu (2026). getOptions (https://github.com/bahanonu/getOptions/releases/tag/v1.0.1), GitHub. Recuperato .
Informazioni generali
Compatibilità della release di MATLAB
- Compatibile con qualsiasi release
Compatibilità della piattaforma
- Windows
- macOS
- Linux
| Versione | Pubblicato | Note della release | Action |
|---|---|---|---|
| 1.0.1 | See release notes for this release on GitHub: https://github.com/bahanonu/getOptions/releases/tag/v1.0.1 |
||
| 1.0.0 |
