0001 function bs = inv(varargin)
0002
0003
0004
0005
0006
0007
0008
0009 invars = {};
0010 for j=1:nargin
0011 invars = [invars cellstr(inputname(j))];
0012 end
0013
0014 ALGONAME = mfilename;
0015 VERSION = '$Id: inv.html,v 1.1 2007/06/08 14:15:02 hewitson Exp $';
0016
0017 as = [];
0018 for j=1:nargin
0019 a = varargin{j};
0020 if isa(a, 'ao')
0021 as = [as a];
0022 end
0023 end
0024
0025 pl = plist();
0026
0027 bs = [];
0028
0029 for j=1:length(as)
0030 a = as(j);
0031 d = get(a, 'data');
0032 dinfo = whos('d');
0033
0034
0035 dtype = dinfo.class;
0036 switch dtype
0037 case 'cdata'
0038 disp('* INVERSE of cdata object');
0039
0040
0041 [h, c] = single_operation(d, 'inv', pl);
0042
0043
0044 h = set(h, 'invars', [a.hist]);
0045 b = ao(c, h);
0046 b = set(b, 'name', sprintf('inv(%s)', char(invars{1})));
0047
0048 case 'tsdata' & 'fsdata' & 'xydata'
0049 error('### this function works for cdata type AO only')
0050 otherwise
0051 error('### unknown data type.')
0052
0053 end
0054
0055
0056 bs = [bs b];
0057 end
0058
0059