www.gusucode.com > mbcdesign 工具箱 matlab 源码程序 > mbcdesign/@cset_lhs/designproperties.m

    function p = designproperties(c,p,m)
%DESIGNPROPERTIES properties for command-line
%
% p = designproperties(c,p)

%  Copyright 2007 The MathWorks, Inc.


CLSID = mfilename('class');
[p,OK] = PersistentStore(p,CLSID);
if ~OK
    p = iMakeProps(c,p,m);
    PersistentStore(p,CLSID);
end


function p = iMakeProps(c,p,m)

p = designproperties(c.candidateset,p,m);
p = addprop(p,'NumberOfPoints',...
    @iGetNumberOfPoints,...
    @iSetNumberOfPoints,...
    'int',[0 Inf],...
    'Number of points');
p = addprop(p,'SelectionCriteria',...
    @iGetCriteria,...
    @iSetCriteria,...
    'enum',{'discrepancy', 'minimax', 'maximin', 'cdfvariance', 'cdfmaximum'},...
    'Selection criteria for best LHS design');

p = addprop(p,'Symmetry',...
    @iGetSymmetry,...
    @iSetSymmetry,...
    'boolean','',...
    'Symmetric design');


function v = iGetCriteria(c,m)

v = c.alg;

function c = iSetCriteria(c,v,m)

c = set(c,'doRecalc',0);
c = set(c,'costmethod',v);

function v = iGetSymmetry(c,m)

v = c.symmetry;

function c = iSetSymmetry(c,v,m)

c.symmetry = v;

function v = iGetNumberOfPoints(c,m)
v = c.N;

function c = iSetNumberOfPoints(c,v,m)

c = set(c,'doRecalc',0);
c = set(c,'N',v);