% COPY makes a (deep) copy of the input smodel objects.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% DESCRIPTION: COPY makes a deep copy of the input smodel objects.%% CALL: b = copy(a, flag)%% INPUTS: a - input smodel object% flag - 1: make a deep copy, 0: return copies of handles%% OUTPUTS: b - copy of inputs%% This is a transparent function and adds no history.%% VERSION: $Id: copy.m,v 1.7 2011/02/11 19:59:02 luigi Exp $%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%function varargout = copy(old, deepcopy) if deepcopy % Loop over input smodel objects new = smodel.newarray(size(old)); obj = copy@ltpda_uoh(new, old, 1); for kk=1:numel(old) obj(kk).expr = old(kk).expr; obj(kk).params = old(kk).params; obj(kk).values = old(kk).values; obj(kk).xvar = old(kk).xvar; obj(kk).xvals = old(kk).xvals; obj(kk).trans = old(kk).trans; obj(kk).aliasNames = old(kk).aliasNames; obj(kk).aliasValues = old(kk).aliasValues; obj(kk).xunits = copy(old(kk).xunits,1); obj(kk).yunits = copy(old(kk).yunits,1); end else obj = old; end varargout{1} = obj;end