0001
0002
0003
0004
0005
0006 classdef normal_uncertain
0007 properties
0008 descriptor='';
0009 mean = NaN;
0010 stddev = NaN;
0011 lower = NaN;
0012 upper = NaN;
0013 end
0014
0015 methods
0016 function [nuv]=normal_uncertain(varargin)
0017
0018 switch nargin
0019
0020
0021
0022 case 0
0023
0024
0025
0026 case 1
0027 if isa(varargin{1},'normal_uncertain')
0028 nuv=varargin{1};
0029 else
0030 error('Object ''%s'' is a ''%s'' class object, not ''%s''.',...
0031 inputname(1),class(varargin{1}),'normal_uncertain');
0032 end
0033
0034
0035
0036 case 2
0037 error('Construction of ''%s'' class object requires at least %d inputs.',...
0038 'normal_uncertain',3)
0039
0040
0041
0042 otherwise
0043 nuv.descriptor=varargin{1};
0044 nuv.mean =varargin{2};
0045 nuv.stddev =varargin{3};
0046 if (nargin >= 4)
0047 nuv.lower =varargin{4};
0048 if (nargin >= 5)
0049 nuv.upper =varargin{5};
0050 if (nargin > 5)
0051 warning('normal_uncertain:extra_arg',...
0052 'Extra arguments for object of class ''%s''.',...
0053 class(nuv));
0054 end
0055 end
0056 end
0057 end
0058
0059 end
0060 function [desc] =dvar_desc(nuv)
0061 desc=cell(size(nuv));
0062 for i=1:numel(nuv)
0063 desc(i)=cellstr(nuv(i).descriptor);
0064 end
0065 desc=allempty(desc);
0066 end
0067 function [initpt]=dvar_initpt(nuv)
0068 initpt=[];
0069 end
0070 function [lower] =dvar_lower(nuv)
0071 lower=zeros(size(nuv));
0072 for i=1:numel(nuv)
0073 lower(i)=nuv(i).lower;
0074 end
0075 lower=allnan(lower);
0076 end
0077 function [upper] =dvar_upper(nuv)
0078 upper=zeros(size(nuv));
0079 for i=1:numel(nuv)
0080 upper(i)=nuv(i).upper;
0081 end
0082 upper=allnan(upper);
0083 end
0084 function [mean] =dvar_mean(nuv)
0085 mean=zeros(size(nuv));
0086 for i=1:numel(nuv)
0087 mean(i)=nuv(i).mean;
0088 end
0089 end
0090 function [stddev]=dvar_stddev(nuv)
0091 stddev=zeros(size(nuv));
0092 for i=1:numel(nuv)
0093 stddev(i)=nuv(i).stddev;
0094 end
0095 end
0096 function [initst]=dvar_initst(nuv)
0097 initst=[];
0098 end
0099 end
0100 end