49 nparams = length(params);
50 ranges =
cell(nparams,1);
55 if (params(pidx).MinVal == params(pidx).MaxVal)
56 ranges[pidx] = params(pidx).MinVal;
58 if strcmp(params(pidx).Spacing,
" lin ")
59 ranges[pidx] = linspace(params(pidx).MinVal,...
60 params(pidx).MaxVal,...
61 params(pidx).Desired);
62 elseif strcmp(params(pidx).Spacing,
" log ")
65 if params(pidx).MinVal == 0
69 M = log10(params(pidx).MaxVal);
70 ranges[pidx] = logspace(m, M, params(pidx).Desired);
71 elseif params(pidx).MaxVal == 0
73 m = log10(params(pidx).MinVal);
76 ranges[pidx] = logspace(m, M, params(pidx).Desired);
77 elseif params(pidx).MinVal < 0
80 ml = log10(abs(params(pidx).MinVal));
81 Mr = log10(params(pidx).MaxVal);
83 divl = params(pidx).Desired/2;
84 divr = params(pidx).Desired/2;
89 divl = (params(pidx).Desired - diff)/2;
95 divr = (params(pidx).Desired - diff)/2;
100 ranges[pidx] = [-logspace(ml, Ml, divl) logspace(mr, Mr, divr)];
102 m = log10(params(pidx).MinVal);
103 M = log10(params(pidx).MaxVal);
104 ranges[pidx] = logspace(m, M, params(pidx).Desired);
134 if ~isa(obj,
" sampling.GridSampler ")
135 obj = sampling.GridSampler;
137 obj =
loadobj@sampling.BaseSampler(obj);
Collection of generally useful functions.
function samples = performSampling(params)
Uses the given model and generates a training set by creating a regular grid in joint time/parameter ...
function [ matrix< double > params , rowvec< integer > idx ] = filter(matrix< double > params)
Filters from the given parameters only those that belong to this domain.
static function comb = createCombinations(ranges, varargin)
Creates the cartesian product of the vectors passed as a matrix containing elements of each vector pe...
static function obj = loadobj(obj)
Introduced as the "Spacing" property has moved to data.ModelParam.
A MatLab cell array or matrix.
BaseSampler Basis class for parameter sampling classes.
GridSampler: Samples the models params on a grid, using the ModelParam.Desired field.