getOptions

A simple, user friendly way to handle and parse variable argument inputs (varargin) into MATLAB functions.
100 téléchargements
Mise à jour 11 mai 2020

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

Citation pour cette source

Biafra Ahanonu (2026). getOptions (https://github.com/bahanonu/getOptions/releases/tag/v1.0.1), GitHub. Extrait(e) le .

Compatibilité avec les versions de MATLAB
Créé avec R2019a
Compatible avec toutes les versions
Plateformes compatibles
Windows macOS Linux
Version Publié le Notes de version
1.0.1

See release notes for this release on GitHub: https://github.com/bahanonu/getOptions/releases/tag/v1.0.1

1.0.0

Pour consulter ou signaler des problèmes liés à ce module complémentaire GitHub, accédez au dépôt GitHub.
Pour consulter ou signaler des problèmes liés à ce module complémentaire GitHub, accédez au dépôt GitHub.