Mercurial > hg > ltpda
view m-toolbox/classes/@pzmodel/char.m @ 0:f0afece42f48
Import.
author | Daniele Nicolodi <nicolodi@science.unitn.it> |
---|---|
date | Wed, 23 Nov 2011 19:22:13 +0100 |
parents | |
children |
line wrap: on
line source
% CHAR convert a pzmodel object into a string. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % DESCRIPTION: CHAR convert a pzmodel object into a string. % % CALL: string = char(pzmodel) % % <a href="matlab:utils.helper.displayMethodInfo('pzmodel', 'char')">Parameters Description</a> % % VERSION: $Id: char.m,v 1.18 2011/04/08 08:56:32 hewitson Exp $ % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% function varargout = char(varargin) %%% Check if this is a call for parameters if utils.helper.isinfocall(varargin{:}) varargout{1} = getInfo(varargin{3}); return end objs = utils.helper.collect_objects(varargin(:), 'pzmodel'); pstr = ''; for ii = 1:numel(objs) if numel(objs(ii).poles(:))==0||numel(objs(ii).zeros(:))==0||numel(objs(ii).gain(:))==0 pole='no pole'; zero='no zero'; K='no gain'; else poles= vertcat(objs(ii).poles(:).ri); zeros= vertcat(objs(ii).zeros(:).ri); K=utils.math.getk(zeros,poles,objs(ii).gain); pole=num2str(poles(1)); zero=num2str(zeros(1)); for i=2:numel(poles) pole= [pole, ';', num2str(poles(i))]; end for i=2:numel(zeros) zero= [zero, ';' , num2str(zeros(i))]; end end pstr = [pstr 'pzmodel(g:' num2str(K) ' p:' pole ' z:' zero '), ']; end varargout{1} = pstr(1:end-2); end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Local Functions % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % FUNCTION: getInfo % % DESCRIPTION: Get Info Object % % HISTORY: 11-07-07 M Hewitson % Creation. % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% function ii = getInfo(varargin) if nargin == 1 && strcmpi(varargin{1}, 'None') sets = {}; pl = []; else sets = {'Default'}; pl = getDefaultPlist; end % Build info object ii = minfo(mfilename, 'pzmodel', 'ltpda', utils.const.categories.output, '$Id: char.m,v 1.18 2011/04/08 08:56:32 hewitson Exp $', sets, pl); ii.setModifier(false); end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % FUNCTION: getDefaultPlist % % DESCRIPTION: Get Default Plist % % HISTORY: 11-07-07 M Hewitson % Creation. % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% function plout = getDefaultPlist() persistent pl; if exist('pl', 'var')==0 || isempty(pl) pl = buildplist(); end plout = pl; end function pl = buildplist() pl = plist.EMPTY_PLIST; end