Home > classes > @ao > plus.m

plus

PURPOSE ^

PLUS implements addition operator for two analysis objects.

SYNOPSIS ^

function b = plus(varargin)

DESCRIPTION ^

 PLUS implements addition operator for two analysis objects.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

 DESCRIPTION: PLUS implements addition operator for two analysis objects.

 CALL:        a = a1+scalar
              a = a1+a2

 VERSION:     $Id: plus.m,v 1.14 2007/11/02 13:17:41 ingo Exp $

 The following call returns a parameter list object that contains the
 default parameter values:

 >> pl = plus(ao, 'Params')

 HISTORY: 01-02-07 M Hewitson
             Creation

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SUBFUNCTIONS ^

SOURCE CODE ^

0001 function b = plus(varargin)
0002 % PLUS implements addition operator for two analysis objects.
0003 %
0004 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0005 %
0006 % DESCRIPTION: PLUS implements addition operator for two analysis objects.
0007 %
0008 % CALL:        a = a1+scalar
0009 %              a = a1+a2
0010 %
0011 % VERSION:     $Id: plus.m,v 1.14 2007/11/02 13:17:41 ingo Exp $
0012 %
0013 % The following call returns a parameter list object that contains the
0014 % default parameter values:
0015 %
0016 % >> pl = plus(ao, 'Params')
0017 %
0018 % HISTORY: 01-02-07 M Hewitson
0019 %             Creation
0020 %
0021 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0022 
0023 VERSION = '$Id: plus.m,v 1.14 2007/11/02 13:17:41 ingo Exp $';
0024 
0025 %% Check if this is a call for parameters
0026 if nargin == 2
0027   if isa(varargin{1}, 'ao') && ischar(varargin{2})
0028     in = char(varargin{2});
0029     if strcmp(in, 'Params')
0030       b = getDefaultPL();
0031       return
0032     elseif strcmp(in, 'Version')
0033       b = VERSION;
0034       return
0035     end
0036   end
0037 end
0038 
0039 %% capture input variable names
0040 invars = {};
0041 for j=1:nargin
0042   iname = inputname(j);
0043   if isempty(iname) && isnumeric(varargin{j})
0044     iname = num2str(varargin{j});
0045   elseif isempty(iname) && ischar(varargin{j})
0046     iname = varargin{j};
0047   end
0048   invars = [invars cellstr(iname)];
0049 end
0050 
0051 ALGONAME = mfilename;
0052 VERSION  = '$Id: plus.m,v 1.14 2007/11/02 13:17:41 ingo Exp $';
0053 
0054 op = '+';
0055 
0056 [a1,a2,do] = aooperate(varargin, op);
0057 
0058 %--------- create output AO
0059 
0060 % make a new history object
0061 h = history(ALGONAME, VERSION, plist(), [a1.hist a2.hist]);
0062 h = set(h, 'invars', invars);
0063 
0064 % get names for output
0065 if isempty(char(invars{1}))
0066   n1 = a1.name;
0067 else
0068   n1 = char(invars{1});
0069 end
0070 if isempty(char(invars{2}))
0071   n2 = a2.name;
0072 else
0073   n2 = char(invars{2});
0074 end
0075 
0076 
0077 % make output analysis object
0078 b = ao(do, h);
0079 b = setnh(b, 'name', sprintf('%s %s %s', n1, op, n2));
0080 
0081 
0082 %% Get default params
0083 function pl_default = getDefaultPL()
0084 
0085   pl_default = plist();
0086 
0087 % END

Generated on Fri 02-Nov-2007 19:39:27 by m2html © 2003