This list is closed, nobody may subscribe to it.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(10) |
Aug
(5) |
Sep
(3) |
Oct
(41) |
Nov
(41) |
Dec
(33) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(75) |
Feb
(10) |
Mar
(170) |
Apr
(174) |
May
(66) |
Jun
(11) |
Jul
(10) |
Aug
(44) |
Sep
(73) |
Oct
(28) |
Nov
(139) |
Dec
(52) |
2003 |
Jan
(35) |
Feb
(93) |
Mar
(62) |
Apr
(10) |
May
(55) |
Jun
(70) |
Jul
(37) |
Aug
(16) |
Sep
(56) |
Oct
(31) |
Nov
(57) |
Dec
(83) |
2004 |
Jan
(85) |
Feb
(67) |
Mar
(27) |
Apr
(37) |
May
(75) |
Jun
(85) |
Jul
(160) |
Aug
(68) |
Sep
(104) |
Oct
(25) |
Nov
(39) |
Dec
(23) |
2005 |
Jan
(10) |
Feb
(45) |
Mar
(43) |
Apr
(19) |
May
(108) |
Jun
(31) |
Jul
(41) |
Aug
(23) |
Sep
(65) |
Oct
(58) |
Nov
(44) |
Dec
(54) |
2006 |
Jan
(96) |
Feb
(27) |
Mar
(69) |
Apr
(59) |
May
(67) |
Jun
(35) |
Jul
(13) |
Aug
(461) |
Sep
(160) |
Oct
(399) |
Nov
(32) |
Dec
(72) |
2007 |
Jan
(316) |
Feb
(305) |
Mar
(318) |
Apr
(54) |
May
(194) |
Jun
(173) |
Jul
(282) |
Aug
(91) |
Sep
(227) |
Oct
(365) |
Nov
(168) |
Dec
(18) |
2008 |
Jan
(71) |
Feb
(111) |
Mar
(155) |
Apr
(173) |
May
(70) |
Jun
(67) |
Jul
(55) |
Aug
(83) |
Sep
(32) |
Oct
(68) |
Nov
(80) |
Dec
(29) |
2009 |
Jan
(46) |
Feb
(18) |
Mar
(95) |
Apr
(76) |
May
(140) |
Jun
(98) |
Jul
(84) |
Aug
(123) |
Sep
(94) |
Oct
(131) |
Nov
(142) |
Dec
(125) |
2010 |
Jan
(128) |
Feb
(158) |
Mar
(172) |
Apr
(134) |
May
(94) |
Jun
(84) |
Jul
(32) |
Aug
(127) |
Sep
(167) |
Oct
(109) |
Nov
(69) |
Dec
(78) |
2011 |
Jan
(39) |
Feb
(58) |
Mar
(52) |
Apr
(47) |
May
(56) |
Jun
(76) |
Jul
(55) |
Aug
(54) |
Sep
(165) |
Oct
(255) |
Nov
(328) |
Dec
(263) |
2012 |
Jan
(82) |
Feb
(147) |
Mar
(400) |
Apr
(216) |
May
(209) |
Jun
(160) |
Jul
(86) |
Aug
(141) |
Sep
(156) |
Oct
(6) |
Nov
|
Dec
|
2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
(1) |
Oct
|
Nov
(1) |
Dec
(2) |
2016 |
Jan
|
Feb
(2) |
Mar
(2) |
Apr
(1) |
May
(1) |
Jun
(2) |
Jul
(1) |
Aug
(1) |
Sep
|
Oct
|
Nov
(1) |
Dec
|
2019 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2021 |
Jan
|
Feb
|
Mar
|
Apr
(3) |
May
(4) |
Jun
(8) |
Jul
(2) |
Aug
(5) |
Sep
(9) |
Oct
|
Nov
|
Dec
|
From: <prn...@us...> - 2012-05-22 20:15:36
|
Revision: 10498 http://octave.svn.sourceforge.net/octave/?rev=10498&view=rev Author: prnienhuis Date: 2012-05-22 20:15:30 +0000 (Tue, 22 May 2012) Log Message: ----------- Updated to recent state Modified Paths: -------------- trunk/octave-forge/main/io/NEWS Modified: trunk/octave-forge/main/io/NEWS =================================================================== --- trunk/octave-forge/main/io/NEWS 2012-05-22 20:13:13 UTC (rev 10497) +++ trunk/octave-forge/main/io/NEWS 2012-05-22 20:15:30 UTC (rev 10498) @@ -6,7 +6,10 @@ --- getusedrange subfunc getusedrange_jod: str2num applied to indices rather than the substring. Must have been there for > 2 years, only surfaced with jopendocument v 1.3b1 - +--- oct2xls, oct2ods: cast all numeric types in input array to double as + spreadsheets have only double, boolean or character string type. This bug + has been there from the very beginning of the spreadsheet functions 8-O + ** Compatible with jOpenDocument version 1.3b1 getUsedRange() method added (MUCH faster than the old hack) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <prn...@us...> - 2012-05-22 20:13:19
|
Revision: 10497 http://octave.svn.sourceforge.net/octave/?rev=10497&view=rev Author: prnienhuis Date: 2012-05-22 20:13:13 +0000 (Tue, 22 May 2012) Log Message: ----------- Cast all numeric input data to double in main funcs Modified Paths: -------------- trunk/octave-forge/main/io/inst/oct2ods.m trunk/octave-forge/main/io/inst/oct2xls.m Modified: trunk/octave-forge/main/io/inst/oct2ods.m =================================================================== --- trunk/octave-forge/main/io/inst/oct2ods.m 2012-05-22 15:43:48 UTC (rev 10496) +++ trunk/octave-forge/main/io/inst/oct2ods.m 2012-05-22 20:13:13 UTC (rev 10497) @@ -115,6 +115,7 @@ ## 2012-02-20 Fixed range parameter to be default empty string rather than empty numeral ## 2012-02-27 More range arg fixes ## 2012-03-07 Updated texinfo help text +## 2012-05-22 Cast all numeric data in input array to double ## ## Last update of subfunctions below: 2012-02-26 @@ -136,6 +137,9 @@ error ("oct2ods: input array neither cell nor numeric array"); endif if (ndims (c_arr) > 2), error ("Only 2-dimensional arrays can be written to spreadsheet"); endif + # Cast all numerical values to double as spreadsheets only have double/boolean/text type + idx = cellfun (@isnumeric, obj, "UniformOutput", true); + obj(idx) = cellfun (@double, obj(idx), "UniformOutput", false); # Check ods file pointer struct test1 = ~isfield (ods, "xtype"); Modified: trunk/octave-forge/main/io/inst/oct2xls.m =================================================================== --- trunk/octave-forge/main/io/inst/oct2xls.m 2012-05-22 15:43:48 UTC (rev 10496) +++ trunk/octave-forge/main/io/inst/oct2xls.m 2012-05-22 20:13:13 UTC (rev 10497) @@ -111,13 +111,15 @@ ## 2012-02-20 Fixed range parameter to be default empty string rather than empty numeral ## 2012-02-27 More range param fixes ## 2012-03-07 Updated texinfo help text +## 2012-05-22 Cast all numeric data in input array to double ## Last script file update (incl. subfunctions): 2012-05-21 function [ xls, rstatus ] = oct2xls (obj, xls, wsh=1, crange='', spsh_opts=[]) if (nargin < 2) error ("oct2xls needs a minimum of 2 arguments."); endif - # Make sure input array is a cell array + + # Validate input array, make sure it is a cell array if (isempty (obj)) warning ("Request to write empty matrix - ignored."); rstatus = 1; @@ -131,6 +133,9 @@ error ("oct2xls: input array neither cell nor numeric array"); endif if (ndims (obj) > 2), error ("Only 2-dimensional arrays can be written to spreadsheet"); endif + # Cast all numerical values to double as spreadsheets only have double/boolean/text type + idx = cellfun (@isnumeric, obj, "UniformOutput", true); + obj(idx) = cellfun (@double, obj(idx), "UniformOutput", false); # Check xls file pointer struct test1 = ~isfield (xls, "xtype"); @@ -484,6 +489,7 @@ ## 2012-01-26 Fixed "seealso" help string ## 2012-02-27 Copyright strings updated ## 2012-05-21 "Double" cast added when writing numeric values +## 2012-05-21 "Double" cast moved into main func oct2xls function [ xls, rstatus ] = oct2jpoi2xls (obj, xls, wsh, crange, spsh_opts) @@ -576,7 +582,7 @@ else cell = row.createCell (kk, typearr(ii,jj)); if (isnumeric (obj{ii, jj})) - cell.setCellValue (double (obj{ii, jj})); + cell.setCellValue (obj{ii, jj}); else cell.setCellValue (obj{ii, jj}); endif @@ -654,6 +660,7 @@ ## 2012-01-26 Fixed "seealso" help string ## 2012-02-27 Copyright strings updated ## 2012-05-21 "Double" cast added when writing numeric values +## 2012-05-21 "Double" cast moved into main func oct2xls function [ xls, rstatus ] = oct2jxla2xls (obj, xls, wsh, crange, spsh_opts) @@ -735,7 +742,7 @@ kk = jj + lcol - 2; # JExcelAPI's column count is also 0-based switch typearr(ii, jj) case 1 # Numerical - tmp = java_new ('jxl.write.Number', kk, ll, double (obj{ii, jj})); + tmp = java_new ('jxl.write.Number', kk, ll, obj{ii, jj}); sh.addCell (tmp); case 2 # Boolean tmp = java_new ('jxl.write.Boolean', kk, ll, obj{ii, jj}); @@ -931,6 +938,7 @@ ## 2012-02-26 Bug fix when adding sheets near L.994 (wrong if-else-end construct). ## 2012-02-27 Copyright strings updated ## 2012-05-21 "Double" cast added when writing numeric values +## 2012-05-21 "Double" cast moved into main func oct2xls function [ xls, rstatus ] = oct2uno2xls (c_arr, xls, wsh, crange, spsh_opts) @@ -1038,7 +1046,7 @@ XCell = sh.getCellByPosition (lcol+jj-1, trow+ii-1); switch typearr(ii, jj) case 1 # Float - XCell.setValue (double (c_arr{ii, jj})); + XCell.setValue (c_arr{ii, jj}); case 2 # Logical. Convert to float as OOo has no Boolean type XCell.setValue (double (c_arr{ii, jj})); case 3 # String This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <par...@us...> - 2012-05-22 15:43:57
|
Revision: 10496 http://octave.svn.sourceforge.net/octave/?rev=10496&view=rev Author: paramaniac Date: 2012-05-22 15:43:48 +0000 (Tue, 22 May 2012) Log Message: ----------- control-devel: improve code documentation Modified Paths: -------------- trunk/octave-forge/extra/control-devel/inst/arx.m Modified: trunk/octave-forge/extra/control-devel/inst/arx.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/arx.m 2012-05-22 15:24:41 UTC (rev 10495) +++ trunk/octave-forge/extra/control-devel/inst/arx.m 2012-05-22 15:43:48 UTC (rev 10496) @@ -64,12 +64,14 @@ max_nb = max (nb, [], 2); # one maximum for each row/output, max_nb(p-by-1) n = max (na, max_nb); # n(p-by-1) - + ## create empty cells for numerator and denominator polynomials num = cell (p, m+p); den = cell (p, m+p); - + + ## MIMO (p-by-m) models are identified as p MISO (1-by-m) models + ## For multi-experiment data, minimize the trace of the error for i = 1 : p # for every output - Phi = cell (ex, 1); + Phi = cell (ex, 1); # one regression matrix per experiment for e = 1 : ex # for every experiment ## avoid warning: toeplitz: column wins anti-diagonal conflict ## therefore set first row element equal to y(1) @@ -78,19 +80,24 @@ PhiU = arrayfun (@(x) toeplitz (U{e}(1:end-1, x), [U{e}(1, x); zeros(nb(i,x)-1, 1)]), 1:m, "uniformoutput", false); Phi{e} = (horzcat (-PhiY, PhiU{:}))(n(i):end, :); endfor - + + ## compute parameter vector Theta Theta = __theta__ (Phi, Y, i, n); - - A = [1; Theta(1:na(i))]; # a0 = 1, a1 = Theta(1), an = Theta(n) - ThetaB = Theta(na(i)+1:end); # b0 = 0 (leading zero required by filt) - B = mat2cell (ThetaB, nb(i,:)); - B = reshape (B, 1, []); - B = cellfun (@(x) [0; x], B, "uniformoutput", false); - Be = repmat ({0}, 1, p); - Be(i) = 1; - num(i, :) = [B, Be]; - den(i, :) = repmat ({A}, 1, m+p); + ## extract polynomial matrices A and B from Theta + ## A is a scalar polynomial for output i, i=1:p + ## B is polynomial row vector (1-by-m) for output i + A = [1; Theta(1:na(i))]; # a0 = 1, a1 = Theta(1), an = Theta(n) + ThetaB = Theta(na(i)+1:end); # all polynomials from B are in one column vector + B = mat2cell (ThetaB, nb(i,:)); # now separate the polynomials, one for each input + B = reshape (B, 1, []); # make B a row cell (1-by-m) + B = cellfun (@(x) [0; x], B, "uniformoutput", false); # b0 = 0 (leading zero required by filt) + + ## add error inputs + Be = repmat ({0}, 1, p); # there are as many error inputs as system outputs (p) + Be(i) = 1; # inputs m+1:m+p are zero, except m+i which is one + num(i, :) = [B, Be]; # numerator polynomials for output i, individual for each input + den(i, :) = repmat ({A}, 1, m+p); # in a row (output i), all inputs have the same denominator polynomial endfor ## A(q) y(t) = B(q) u(t) + e(t) @@ -100,8 +107,10 @@ ## since A(q) is a diagonal polynomial matrix, its inverse is trivial: ## the corresponding transfer function has common row denominators. - sys = filt (num, den, tsam); - + sys = filt (num, den, tsam); # filt creates a transfer function in z^-1 + + ## compute initial state vector x0 if requested + ## this makes only sense for state-space models, therefore convert TF to SS if (nargout > 1) sys = prescale (ss (sys(:,1:m))); x0 = slib01cd (Y, U, sys.a, sys.b, sys.c, sys.d, 0.0) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jpi...@us...> - 2012-05-22 15:24:52
|
Revision: 10495 http://octave.svn.sourceforge.net/octave/?rev=10495&view=rev Author: jpicarbajal Date: 2012-05-22 15:24:41 +0000 (Tue, 22 May 2012) Log Message: ----------- admin: language file for geshi Modified Paths: -------------- trunk/octave-forge/admin/langfiles/octave.php Modified: trunk/octave-forge/admin/langfiles/octave.php =================================================================== --- trunk/octave-forge/admin/langfiles/octave.php 2012-05-22 14:51:19 UTC (rev 10494) +++ trunk/octave-forge/admin/langfiles/octave.php 2012-05-22 15:24:41 UTC (rev 10495) @@ -174,27 +174,183 @@ 'saveas','size','tempdir','tempname','type','ver','version','web', 'what','whatsnew','which','who','whos','workspace' ), + // Octave functions Function __list_functions__ lists them all + 6 => array( + '__all_opts__', '__contourc__', '__delaunayn__', '__dispatch__', + '__dsearchn__', '__error_text__', '__finish__', '__fltk_uigetfile__', + '__glpk__', '__gnuplot_drawnow__', '__init_fltk__', '__init_gnuplot__', + '__lin_interpn__', '__magick_read__', '__makeinfo__', '__pchip_deriv__', + '__plt_get_axis_arg__', '__qp__', '__voronoi__', 'accumarray', 'accumdim', + 'acosd', 'acot', 'acotd', 'acoth', 'acsc', 'acscd', 'acsch', 'addpref', + 'addtodate', 'allchild', 'amd', 'ancestor', 'anova', 'ans', 'arch_fit', + 'arch_rnd', 'arch_test', 'area', 'arma_rnd', 'asctime', 'asec', 'asecd', + 'asech', 'asind', 'assert', 'atand', 'autocor', 'autocov', 'autoreg_matrix', + 'autumn', 'axes', 'axis', 'balance', 'bar', 'barh', 'bartlett', + 'bartlett_test', 'base2dec', 'beep', 'bessel', 'besselj', 'beta', 'betacdf', + 'betai', 'betainc', 'betainv', 'betaln', 'betapdf', 'betarnd', 'bicg', + 'bicgstab', 'bicubic', 'bin2dec', 'bincoeff', 'binocdf', 'binoinv', + 'binopdf', 'binornd', 'bitcmp', 'bitget', 'bitset', 'blackman', 'blanks', + 'blkdiag', 'bone', 'box', 'brighten', 'bsxfun', 'bug_report', 'bunzip2', + 'bzip2', 'calendar', 'cart2pol', 'cart2sph', 'cast', 'cauchy_cdf', + 'cauchy_inv', 'cauchy_pdf', 'cauchy_rnd', 'caxis', 'ccolamd', 'cell2mat', + 'celldisp', 'cellfun', 'cellidx', 'center', 'cgs', 'chi2cdf', 'chi2inv', + 'chi2pdf', 'chi2rnd', 'chisquare_test_homogeneity', + 'chisquare_test_independence', 'chol', 'chop', 'circshift', 'cla', 'clabel', + 'clf', 'clg', 'clock', 'cloglog', 'close', 'closereq', 'colamd', 'colloc', + 'colon', 'colorbar', 'colormap', 'colperm', 'colstyle', 'comet', 'comet3', + 'comma', 'common_size', 'commutation_matrix', 'compan', 'compare_versions', + 'compass', 'computer', 'cond', 'condest', 'contour', 'contour3', 'contourc', + 'contourf', 'contrast', 'conv', 'conv2', 'convhull', 'convhulln', 'cool', + 'copper', 'copyfile', 'cor', 'cor_test', 'corr', 'corrcoef', 'cosd', 'cot', + 'cotd', 'coth', 'cov', 'cplxpair', 'cquad', 'cross', 'csc', 'cscd', 'csch', + 'cstrcat', 'csvread', 'csvwrite', 'ctime', 'cumtrapz', 'curl', 'cut', + 'cylinder', 'daspect', 'daspk', 'dasrt', 'dassl', 'date', 'datenum', + 'datestr', 'datetick', 'datevec', 'dblquad', 'deal', 'deblank', 'debug', + 'dec2base', 'dec2bin', 'dec2hex', 'deconv', 'del2', 'delaunay', 'delaunay3', + 'delaunayn', 'delete', 'demo', 'det', 'detrend', 'diffpara', 'diffuse', + 'dir', 'discrete_cdf', 'discrete_inv', 'discrete_pdf', 'discrete_rnd', + 'dispatch', 'display', 'divergence', 'dlmread', 'dlmwrite', 'dmperm', 'doc', + 'dos', 'dot', 'dsearch', 'dsearchn', 'dump_prefs', 'duplication_matrix', + 'durbinlevinson', 'edit', 'eig', 'eigs', 'ellipsoid', 'empirical_cdf', + 'empirical_inv', 'empirical_pdf', 'empirical_rnd', 'eomday', 'error_text', + 'errorbar', 'etime', 'etreeplot', 'example', 'expcdf', 'expinv', 'expm', + 'exppdf', 'exprnd', 'ezcontour', 'ezcontourf', 'ezmesh', 'ezmeshc', + 'ezplot', 'ezplot3', 'ezpolar', 'ezsurf', 'ezsurfc', 'f_test_regression', + 'fact', 'factor', 'factorial', 'fail', 'fcdf', 'feather', 'fft', 'fft2', + 'fftconv', 'fftfilt', 'fftn', 'fftshift', 'fftw', 'figure', 'fileattrib', + 'fileparts', 'fileread', 'fill', 'filter', 'filter2', 'find', 'findall', + 'findobj', 'findstr', 'finv', 'flag', 'flipdim', 'fliplr', 'flipud', + 'fminbnd', 'fminunc', 'fpdf', 'fplot', 'fractdiff', 'freqz', 'freqz_plot', + 'frnd', 'fsolve', 'fstat', 'fullfile', 'fzero', 'gamcdf', 'gaminv', + 'gammai', 'gammainc', 'gampdf', 'gamrnd', 'gca', 'gcbf', 'gcbo', 'gcd', + 'gcf', 'gen_doc_cache', 'genvarname', 'geocdf', 'geoinv', 'geopdf', + 'geornd', 'get_first_help_sentence', 'getappdata', 'getfield', 'getgrent', + 'getpref', 'getpwent', 'getrusage', 'ginput', 'givens', 'glpk', 'glpkmex', + 'gls', 'gmap40', 'gmres', 'gnuplot_binary', 'gplot', 'gradient', + 'graphics_toolkit', 'gray', 'gray2ind', 'grid', 'griddata', 'griddata3', + 'griddatan', 'gtext', 'guidata', 'guihandles', 'gunzip', 'gzip', 'hadamard', + 'hamming', 'hankel', 'hanning', 'help', 'hess', 'hex2dec', 'hex2num', + 'hggroup', 'hidden', 'hilb', 'hist', 'histc', 'hold', 'hot', + 'hotelling_test', 'hotelling_test_2', 'housh', 'hsv', 'hsv2rgb', 'hurst', + 'hygecdf', 'hygeinv', 'hygepdf', 'hygernd', 'idivide', 'ifftshift', 'image', + 'imagesc', 'imfinfo', 'imread', 'imshow', 'imwrite', 'ind2gray', 'ind2rgb', + 'index', 'info', 'inpolygon', 'inputname', 'int2str', 'interp1', 'interp1q', + 'interp2', 'interp3', 'interpft', 'interpn', 'intersect', 'intwarning', + 'inv', 'invhilb', 'iqr', 'is_duplicate_entry', 'is_global', 'is_leap_year', + 'is_valid_file_id', 'isa', 'isappdata', 'iscolumn', 'isdefinite', + 'isdeployed', 'isdir', 'isequal', 'isequalwithequalnans', 'isfigure', + 'ishermitian', 'ishghandle', 'ishold', 'isletter', 'ismac', 'ismember', + 'isocolors', 'isonormals', 'isosurface', 'ispc', 'ispref', 'isprime', + 'isprop', 'isrow', 'isscalar', 'issquare', 'isstr', 'isstrprop', + 'issymmetric', 'isunix', 'isvector', 'jet', 'kendall', + 'kolmogorov_smirnov_cdf', 'kolmogorov_smirnov_test', + 'kolmogorov_smirnov_test_2', 'kron', 'kruskal_wallis_test', 'krylov', + 'krylovb', 'kurtosis', 'laplace_cdf', 'laplace_inv', 'laplace_pdf', + 'laplace_rnd', 'lcm', 'legend', 'legendre', 'license', 'lin2mu', 'line', + 'linkprop', 'list_primes', 'loadaudio', 'loadobj', 'logistic_cdf', + 'logistic_inv', 'logistic_pdf', 'logistic_regression', 'logistic_rnd', + 'logit', 'loglog', 'loglogerr', 'logm', 'logncdf', 'logninv', 'lognpdf', + 'lognrnd', 'logspace', 'lookfor', 'lookup', 'ls', 'ls_command', 'lsode', + 'lsqnonneg', 'lu', 'luinc', 'magic', 'mahalanobis', 'manova', 'mat2str', + 'matlabroot', 'matrix_type', 'max', 'mcnemar_test', 'md5sum', 'mean', + 'meansq', 'median', 'menu', 'mesh', 'meshc', 'meshgrid', 'meshz', 'mex', + 'mexext', 'mgorth', 'mkoctfile', 'mkpp', 'mode', 'moment', 'movefile', + 'mpoles', 'mu2lin', 'namelengthmax', 'nargchk', 'narginchk', 'nargoutchk', + 'nbincdf', 'nbininv', 'nbinpdf', 'nbinrnd', 'nchoosek', 'ndgrid', 'newplot', + 'news', 'nextpow2', 'nonzeros', 'normcdf', 'normest', 'norminv', 'normpdf', + 'normrnd', 'now', 'nproc', 'nthargout', 'nthroot', 'ntsc2rgb', 'null', + 'num2str', 'ocean', 'ols', 'onenormest', 'optimget', 'optimset', + 'orderfields', 'orient', 'orth', 'pack', 'paren', 'pareto', 'parseparams', + 'pascal', 'patch', 'pathdef', 'pbaspect', 'pcg', 'pchip', 'pcolor', 'pcr', + 'peaks', 'periodogram', 'perl', 'perms', 'perror', 'pie', 'pie3', 'pink', + 'pinv', 'pkg', 'planerot', 'playaudio', 'plot', 'plot3', 'plotmatrix', + 'plotyy', 'poisscdf', 'poissinv', 'poisspdf', 'poissrnd', 'pol2cart', + 'polar', 'poly', 'polyaffine', 'polyarea', 'polyder', 'polyderiv', + 'polyfit', 'polygcd', 'polyint', 'polyout', 'polyreduce', 'polyval', + 'polyvalm', 'postpad', 'pow2', 'powerset', 'ppder', 'ppint', 'ppjumps', + 'ppplot', 'ppval', 'pqpnonneg', 'prctile', 'prepad', 'primes', 'print', + 'print_usage', 'prism', 'probit', 'profexplore', 'profile', 'profshow', + 'prop_test_2', 'python', 'qp', 'qqplot', 'qr', 'quad', 'quadcc', 'quadgk', + 'quadl', 'quadv', 'quantile', 'quiver', 'quiver3', 'qz', 'qzhess', + 'rainbow', 'rand', 'randi', 'range', 'rank', 'ranks', 'rat', 'rcond', + 'reallog', 'realpow', 'realsqrt', 'record', 'rectangle', 'rectint', + 'recycle', 'refresh', 'refreshdata', 'regexp', 'regexptranslate', + 'releasePKG', 'replot', 'repmat', 'residue', 'rgb2hsv', 'rgb2ind', + 'rgb2ntsc', 'ribbon', 'rindex', 'rmappdata', 'rmpref', 'roots', 'rose', + 'rosser', 'rot90', 'rotdim', 'rref', 'run', 'run_count', 'run_test', + 'rundemos', 'runlength', 'runtests', 'saveas', 'saveaudio', 'saveimage', + 'saveobj', 'savepath', 'scatter', 'scatter3', 'schur', 'sec', 'secd', + 'sech', 'semicolon', 'semilogx', 'semilogxerr', 'semilogy', 'semilogyerr', + 'setappdata', 'setaudio', 'setdiff', 'setfield', 'setpref', 'setstr', + 'setxor', 'shading', 'shell_cmd', 'shg', 'shift', 'shiftdim', 'sign_test', + 'sinc', 'sind', 'sinetone', 'sinewave', 'skewness', 'slice', 'sombrero', + 'sortrows', 'spaugment', 'spconvert', 'spdiags', 'spearman', 'spectral_adf', + 'spectral_xdf', 'specular', 'speed', 'spencer', 'speye', 'spfun', + 'sph2cart', 'sphere', 'spinmap', 'spline', 'spones', 'spparms', 'sprand', + 'sprandn', 'sprandsym', 'spring', 'spstats', 'spy', 'sqp', 'sqrtm', + 'stairs', 'statistics', 'std', 'stdnormal_cdf', 'stdnormal_inv', + 'stdnormal_pdf', 'stdnormal_rnd', 'stem', 'stem3', 'stft', 'str2double', + 'str2num', 'strcat', 'strchr', 'strerror', 'strfind', 'strjust', 'strmatch', + 'strread', 'strsplit', 'strtok', 'strtrim', 'strtrunc', 'structfun', + 'studentize', 'sub2ind', 'subplot', 'subsindex', 'subspace', 'substr', + 'substruct', 'summer', 'surf', 'surface', 'surfc', 'surfl', 'surfnorm', + 'svd', 'svds', 'swapbytes', 'syl', 'sylvester_matrix', 'symbfact', 'symrcm', + 'symvar', 'synthesis', 't_test', 't_test_2', 't_test_regression', 'table', + 'tand', 'tar', 'tcdf', 'tempdir', 'tempname', 'test', 'text', 'textread', + 'textscan', 'time', 'tinv', 'title', 'toeplitz', 'tpdf', 'trace', 'trapz', + 'treelayout', 'treeplot', 'tril', 'trimesh', 'triplequad', 'triplot', + 'trisurf', 'trnd', 'tsearch', 'tsearchn', 'type', 'typecast', 'u_test', + 'uicontextmenu', 'uicontrol', 'uigetdir', 'uigetfile', 'uimenu', 'uipanel', + 'uipushtool', 'uiputfile', 'uiresume', 'uitoggletool', 'uitoolbar', + 'uiwait', 'unidcdf', 'unidinv', 'unidpdf', 'unidrnd', 'unifcdf', 'unifinv', + 'unifpdf', 'unifrnd', 'unimplemented', 'union', 'unique', 'unix', 'unmkpp', + 'unpack', 'untabify', 'untar', 'unwrap', 'unzip', 'urlwrite', 'usejava', + 'validatestring', 'values', 'vander', 'var', 'var_test', 'vech', 'ver', + 'version', 'view', 'voronoi', 'voronoin', 'waitbar', 'waitforbuttonpress', + 'warning_ids', 'wavread', 'wavwrite', 'wblcdf', 'wblinv', 'wblpdf', + 'wblrnd', 'weekday', 'weibcdf', 'weibinv', 'weibpdf', 'weibrnd', + 'welch_test', 'what', 'which', 'white', 'whitebg', 'wienrnd', + 'wilcoxon_test', 'wilkinson', 'winter', 'xlabel', 'xlim', 'xor', 'ylabel', + 'ylim', 'yulewalker', 'z_test', 'z_test_2', 'zip', 'zlabel', 'zlim', + 'zscore', '__fltk_maxtime__', '__fltk_redraw__', '__ftp__', '__ftp_ascii__', + '__ftp_binary__', '__ftp_close__', '__ftp_cwd__', '__ftp_delete__', + '__ftp_dir__', '__ftp_mget__', '__ftp_mkdir__', '__ftp_mode__', + '__ftp_mput__', '__ftp_pwd__', '__ftp_rename__', '__ftp_rmdir__', + '__magick_finfo__', '__magick_format_list__', '__magick_write__', 'airy', + 'arrayfun', 'besselh', 'besseli', 'besselk', 'bessely', 'bitpack', + 'bitunpack', 'blkmm', 'cellindexmat', 'cellslices', 'chol2inv', + 'choldelete', 'cholinsert', 'cholinv', 'cholshift', 'cholupdate', 'convn', + 'csymamd', 'cummax', 'cummin', 'daspk_options', 'dasrt_options', + 'dassl_options', 'endgrent', 'endpwent', 'etree', 'getgrgid', 'getgrnam', + 'getpwnam', 'getpwuid', 'gmtime', 'gui_mode', 'ifft', 'ifft2', 'ifftn', + 'ind2sub', 'inverse', 'localtime', 'lsode_options', 'luupdate', 'mat2cell', + 'min', 'mktime', 'mouse_wheel_zoom', 'num2cell', 'num2hex', 'qrdelete', + 'qrinsert', 'qrshift', 'qrupdate', 'quad_options', 'rande', 'randg', + 'randn', 'randp', 'randperm', 'regexpi', 'regexprep', 'rsf2csf', 'setgrent', + 'setpwent', 'sprank', 'strftime', 'strptime', 'strrep', 'svd_driver', + 'symamd', 'triu', 'urlread' + ), //Function handle - 6 => array("@([A-Za-z_][A-Za-z1-9_]*)?"), + 7 => array("@([A-Za-z_][A-Za-z1-9_]*)?"), // Boolean // false and true can be used as functions too. // Do not highlight as boolean if followed by parentheses. - 7 => array("\b([false|true])(\b(?!(\s)*\()"), + 8 => array("\b([false|true])(\b(?!(\s)*\()"), // Decimal - 8 => array("\b([1-9][0-9]*|0)([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b"), + 9 => array("\b([1-9][0-9]*|0)([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b"), // Floating point number - 9 => array("\b([0-9]+[Ee][-]?[0-9]+|([0-9]*\.[0-9]+|[0-9]+\.)([Ee][-]?[0-9]+)?)[fFlL]?" + 10 => array("\b([0-9]+[Ee][-]?[0-9]+|([0-9]*\.[0-9]+|[0-9]+\.)([Ee][-]?[0-9]+)?)[fFlL]?" ), // Octal number - 10 => array("\b0[0-7]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b"), + 11 => array("\b0[0-7]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b"), // Hex number - 11 => array("\b0[xX][0-9a-fA-F]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b"), + 12 => array("\b0[xX][0-9a-fA-F]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b"), // Reserved constants // Most of the constants can be used as functions too. Do not highlight // as constants if followed by parentheses. - 12 => array("[e|eps|(J|j|I|i)|(Inf|inf)|(NaN|nan)|NA|ones|pi|rand|randn|zeros])(\b(?!(\s)*\()"), + 13 => array("[e|eps|(J|j|I|i)|(Inf|inf)|(NaN|nan)|NA|ones|pi|rand|randn|zeros])(\b(?!(\s)*\()"), // Package manager - 13 => array("(\b)pkg(?!(\s)*\()(\s)+(((un)?install|(un)?load|list|(global|local)_list|describe|prefix|(re)?build)(\b))?") + 14 => array("(\b)pkg(?!(\s)*\()(\s)+(((un)?install|(un)?load|list|(global|local)_list|describe|prefix|(re)?build)(\b))?") ), 'SYMBOLS' => array("((\.)?\+{1,2}?(?!\+) | (\.)?\-{1,2}?(?!\-) | (\.)?\*{1,2}?(?!\*) | (\.)?\/(?!\^) | @@ -218,7 +374,8 @@ 10 => false, 11 => false, 12 => false, - 13 => false + 13 => false, + 14 => false ), 'STYLES' => array( 'KEYWORDS' => array( @@ -226,7 +383,8 @@ 2 => 'color: #2E8B57; font-weight:bold;', // Storage type 3 => 'color: #0000FF; font-weight:bold;', // Internal variable 4 => 'color: #990000; font-weight:bold;', // Reserved words - 5 => 'color: #008A8C;' // Built-in + 5 => 'color: #008A8C; font-weight:bold;', // Built-in + 6 => 'color: #33CC33;' // Octave functions ), 'COMMENTS' => array( 1 => 'color: #0000FF; font-style: italic;', @@ -272,7 +430,8 @@ 10 => '', 11 => '', 12 => '', - 13 => '' + 13 => '', + 14 => '' ), 'OOLANG' => true, 'OBJECT_SPLITTERS' => array( This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jpi...@us...> - 2012-05-22 14:51:25
|
Revision: 10494 http://octave.svn.sourceforge.net/octave/?rev=10494&view=rev Author: jpicarbajal Date: 2012-05-22 14:51:19 +0000 (Tue, 22 May 2012) Log Message: ----------- admin: language file for geshi Modified Paths: -------------- trunk/octave-forge/admin/langfiles/octave.php Modified: trunk/octave-forge/admin/langfiles/octave.php =================================================================== --- trunk/octave-forge/admin/langfiles/octave.php 2012-05-22 14:49:36 UTC (rev 10493) +++ trunk/octave-forge/admin/langfiles/octave.php 2012-05-22 14:51:19 UTC (rev 10494) @@ -225,7 +225,7 @@ 1 => 'color: #2E8B57; font-weight:bold;', // Data types 2 => 'color: #2E8B57; font-weight:bold;', // Storage type 3 => 'color: #0000FF; font-weight:bold;', // Internal variable - 4 => 'color: #FF0000; font-weight:bold;', // Reserved words + 4 => 'color: #990000; font-weight:bold;', // Reserved words 5 => 'color: #008A8C;' // Built-in ), 'COMMENTS' => array( This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jpi...@us...> - 2012-05-22 14:49:47
|
Revision: 10493 http://octave.svn.sourceforge.net/octave/?rev=10493&view=rev Author: jpicarbajal Date: 2012-05-22 14:49:36 +0000 (Tue, 22 May 2012) Log Message: ----------- admin: language file for geshi Modified Paths: -------------- trunk/octave-forge/admin/langfiles/octave.php Modified: trunk/octave-forge/admin/langfiles/octave.php =================================================================== --- trunk/octave-forge/admin/langfiles/octave.php 2012-05-22 14:48:27 UTC (rev 10492) +++ trunk/octave-forge/admin/langfiles/octave.php 2012-05-22 14:49:36 UTC (rev 10493) @@ -224,7 +224,7 @@ 'KEYWORDS' => array( 1 => 'color: #2E8B57; font-weight:bold;', // Data types 2 => 'color: #2E8B57; font-weight:bold;', // Storage type - 3 => 'color: #0000FF;', // Internal variable + 3 => 'color: #0000FF; font-weight:bold;', // Internal variable 4 => 'color: #FF0000; font-weight:bold;', // Reserved words 5 => 'color: #008A8C;' // Built-in ), This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jpi...@us...> - 2012-05-22 14:48:38
|
Revision: 10492 http://octave.svn.sourceforge.net/octave/?rev=10492&view=rev Author: jpicarbajal Date: 2012-05-22 14:48:27 +0000 (Tue, 22 May 2012) Log Message: ----------- admin: language file for geshi Modified Paths: -------------- trunk/octave-forge/admin/langfiles/octave.php Modified: trunk/octave-forge/admin/langfiles/octave.php =================================================================== --- trunk/octave-forge/admin/langfiles/octave.php 2012-05-22 14:02:47 UTC (rev 10491) +++ trunk/octave-forge/admin/langfiles/octave.php 2012-05-22 14:48:27 UTC (rev 10492) @@ -57,144 +57,144 @@ 'cell', 'char ', 'double ', 'uint8', 'uint16', 'uint32', 'uint64', 'int8','int16', 'int32', 'int64', 'logical ', 'single ', 'struct ' ), - //Function handle - 2 => array("@([A-Za-z_][A-Za-z1-9_]*)?"), // Storage type - 3 => array( + 2 => array( 'global ', 'persistent ', 'static ' ), + // Internal variables + 3 => array( + 'ans' + ), + // Reserved words + 4 => array( + 'break', 'case', 'catch', 'continue', 'do', 'else', + 'elseif','end_try_catch', 'end_unwind_protect', 'endfor', + 'endfunction', 'endif', 'endswitch', 'endwhile', 'for', + 'function', 'if','otherwise', 'return', 'switch ', 'try', + 'until', 'unwind_protect', 'unwind_protect_cleanup', 'varargin', + 'varargout', 'while' + ), + // Built in + 5 => array( + 'all','any','exist','is','logical','mislocked', + 'abs','acos','acosh','acot','acoth','acsc','acsch','airy','angle', + 'area','asec','asech','asin','asinh','atan','atan2','atanh', + 'auread','autumn','auwrite','axes','axis','balance','bar','bar3', + 'bar3h','barh','besselh','besseli','besselj','besselk','Bessely', + 'beta','betainc','betaln','bicg','bicgstab','bin2dec','bitand', + 'bitcmp','bitget','bitmax','bitor','bitset','bitshift','bitxor', + 'blkdiag','bone','box','brighten','builtin','bwcontr','calendar', + 'camdolly','camlight','camlookat','camorbit','campan','campos', + 'camproj','camroll','camtarget','camup','camva','camzoom','capture', + 'cart2pol','cart2sph','cat','caxis','cdf2rdf','ceil', + 'cell2struct','celldisp','cellfun','cellplot','cellstr','cgs', + 'char','chol','cholinc','cholupdate','cla','clabel','class','clc', + 'clf','clg','clock','close','colmmd','colorbar','colorcube', + 'colordef','colormap','colperm','comet','comet3','compan','compass', + 'complex','computer','cond','condeig','condest','coneplot','conj', + 'contour','contourc','contourf','contourslice','contrast','conv', + 'conv2','convhull','cool','copper','copyobj','corrcoef','cos', + 'cosh','cot','coth','cov','cplxpair','cputime','cross','csc','csch', + 'cumprod','cumsum','cumtrapz','cylinder','daspect','date','datenum', + 'datestr','datetick','datevec','dbclear','dbcont','dbdown', + 'dblquad','dbmex','dbquit','dbstack','dbstatus','dbstep','dbstop', + 'dbtype','dbup','deblank','dec2bin','dec2hex','deconv','del2', + 'delaunay','det','diag','dialog','diff','diffuse','dlmread', + 'dlmwrite','dmperm','double','dragrect','drawnow','dsearch','eig', + 'eigs','ellipj','ellipke','eomday','eps','erf','erfc','erfcx', + 'erfiny','error','errorbar','errordlg','etime','eval','evalc', + 'evalin','exp','expint','expm','eye','ezcontour','ezcontourf', + 'ezmesh','ezmeshc','ezplot','ezplot3','ezpolar','ezsurf','ezsurfc', + 'factor','factorial','fclose','feather','feof','ferror','feval', + 'fft','fft2','fftshift','fgetl','fgets','fieldnames','figure', + 'fill','fill3','filter','filter2','find','findfigs','findobj', + 'findstr','fix','flag','flipdim','fliplr','flipud','floor','flops', + 'fmin','fmins','fopen','fplot','fprintf','fread','frewind','fscanf', + 'fseek','ftell','full','funm','fwrite','fzero','gallery','gamma', + 'gammainc','gammaln','gca','gcbo','gcd','gcf','gco','get', + 'getfield','ginput','gmres','gradient','gray','graymon','grid', + 'griddata','gsvd','gtext','hadamard','hankel','hdf','helpdlg', + 'hess','hex2dec','hex2num','hidden','hilb','hist','hold','hot', + 'hsv','hsv2rgb','i','ifft','ifft2','ifftn','ifftshift','imag', + 'image','imfinfo','imread','imwrite','ind2sub','Inf','inferiorto', + 'inline','inpolygon','input','inputdlg','inputname', + 'int2str','interp1','interp2','interp3','interpft', + 'interpn','intersect','inv','invhilb','ipermute','isa','ishandle', + 'ismember','isocaps','isonormals','isosurface','j','jet','keyboard', + 'lcm','legend','legendre','light','lighting','lightingangle', + 'lin2mu','line','lines','linspace','listdlg','loadobj','log', + 'log10','log2','loglog','logm','logspace','lower','lscov','lu', + 'luinc','magic','mat2str','material','max','mean','median','menu', + 'menuedit','mesh','meshc','meshgrid','min','mod','msgbox','mu2lin', + 'NaN','nargchk','nargin','nargout','nchoosek','ndgrid','ndims', + 'newplot','nextpow2','nnls','nnz','nonzeros','norm','normest','now', + 'null','num2cell','num2str','nzmax','ode113,','ode15s,','ode23s,', + 'ode23t,','ode23tb','ode45,','odefile','odeget','odeset','ones', + 'orient','orth','pagedlg','pareto','pascal','patch','pause', + 'pbaspect','pcg','pcolor','peaks','perms','permute','pi','pie', + 'pie3','pinv','plot','plot3','plotmatrix','plotyy','pol2cart', + 'polar','poly','polyarea','polyder','polyeig','polyfit','polyval', + 'polyvalm','pow2','primes','print','printdlg','printopt','prism', + 'prod','propedit','qmr','qr','qrdelete','qrinsert','qrupdate', + 'quad','questdlg','quiver','quiver3','qz','rand','randn','randperm', + 'rank','rat','rats','rbbox','rcond','real','realmax','realmin', + 'rectangle','reducepatch','reducevolume','refresh','rem','repmat', + 'reset','reshape','residue','rgb2hsv','rgbplot','ribbon','rmfield', + 'roots','rose','rot90','rotate','rotate3d','round','rref', + 'rrefmovie','rsf2csf','saveobj','scatter','scatter3','schur', + 'script','sec','sech','selectmoveresize','semilogx','semilogy', + 'set','setdiff','setfield','setxor','shading','shg','shiftdim', + 'shrinkfaces','sign','sin','single','sinh','slice','smooth3','sort', + 'sortrows','sound','soundsc','spalloc','sparse','spconvert', + 'spdiags','specular','speye','spfun','sph2cart','sphere','spinmap', + 'spline','spones','spparms','sprand','sprandn','sprandsym','spring', + 'sprintf','sqrt','sqrtm','squeeze','sscanf','stairs','std','stem', + 'stem3','str2double','str2num','strcat','strcmp','strcmpi', + 'stream2','stream3','streamline','strings','strjust','strmatch', + 'strncmp','strrep','strtok','struct','struct2cell','strvcat', + 'sub2ind','subplot','subspace','subvolume','sum','summer', + 'superiorto','surf','surf2patch','surface','surfc','surfl', + 'surfnorm','svd','svds','symmmd','symrcm','symvar','tan','tanh', + 'texlabel','text Create','textread','textwrap','tic','title','toc', + 'toeplitz','trace','trapz','tril','trimesh','trisurf','triu', + 'tsearch','uicontext Create','uicontextmenu','uicontrol', + 'uigetfile','uimenu','uiputfile','uiresume', + 'uisetcolor','uisetfont','uiwait Used','union','unique','unwrap', + 'upper','var','varargin','varargout','vectorize','view','viewmtx', + 'voronoi','waitbar','waitforbuttonpress','warndlg','warning', + 'waterfall','wavread','wavwrite','weekday','whitebg','wilkinson', + 'winter','wk1read','wk1write','xlabel','xlim','ylabel','ylim', + 'zeros','zlabel','zlim','zoom', + 'addpath','cd','clear','copyfile','delete','diary','dir','disp', + 'doc','docopt','echo','edit','fileparts','format','fullfile','help', + 'helpdesk','helpwin','home','inmem','lasterr','lastwarn','length', + 'load','lookfor','ls','matlabrc','matlabroot','mkdir','mlock', + 'more','munlock','open','openvar','pack','partialpath','path', + 'pathtool','profile','profreport','pwd','quit','rmpath','save', + 'saveas','size','tempdir','tempname','type','ver','version','web', + 'what','whatsnew','which','who','whos','workspace' + ), + //Function handle + 6 => array("@([A-Za-z_][A-Za-z1-9_]*)?"), // Boolean // false and true can be used as functions too. // Do not highlight as boolean if followed by parentheses. - 4 => array("[false|true](\b(?!(\s)*\()"), + 7 => array("\b([false|true])(\b(?!(\s)*\()"), // Decimal - 5 => array("\b([1-9][0-9]*|0)([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b"), + 8 => array("\b([1-9][0-9]*|0)([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b"), // Floating point number - 6 => array("\b([0-9]+[Ee][-]?[0-9]+|([0-9]*\.[0-9]+|[0-9]+\.)([Ee][-]?[0-9]+)?)[fFlL]?" + 9 => array("\b([0-9]+[Ee][-]?[0-9]+|([0-9]*\.[0-9]+|[0-9]+\.)([Ee][-]?[0-9]+)?)[fFlL]?" ), // Octal number - 7 => array("\b0[0-7]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b"), + 10 => array("\b0[0-7]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b"), // Hex number - 8 => array("\b0[xX][0-9a-fA-F]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b"), - // Internal variables - 9 => array( - 'ans' - ), + 11 => array("\b0[xX][0-9a-fA-F]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b"), // Reserved constants // Most of the constants can be used as functions too. Do not highlight // as constants if followed by parentheses. - 10 => array("[e|eps|(J|j|I|i)|(Inf|inf)|(NaN|nan)|NA|ones|pi|rand|randn|zeros])(\b(?!(\s)*\()"), + 12 => array("[e|eps|(J|j|I|i)|(Inf|inf)|(NaN|nan)|NA|ones|pi|rand|randn|zeros])(\b(?!(\s)*\()"), // Package manager - 11 => array("(\b)pkg(?!(\s)*\()(\s)+(((un)?install|(un)?load|list|(global|local)_list|describe|prefix|(re)?build)(\b))?"), - // Reserved words - 12 => array( - 'break ', 'case ', 'catch ', 'continue ', 'do ', 'else ', - 'elseif ','end_try_catch ', 'end_unwind_protect ', 'endfor ', - 'endfunction ', 'endif ', 'endswitch ', 'endwhile ', 'for ', - 'function ', 'if ','otherwise ', 'return ', 'switch ', 'try ', - 'until ', 'unwind_protect ', 'unwind_protect_cleanup ', 'varargin ', - 'varargout ', 'while ' - ), - // Built in - 13 => array( - 'all','any','exist','is','logical','mislocked', - 'abs','acos','acosh','acot','acoth','acsc','acsch','airy','angle', - 'area','asec','asech','asin','asinh','atan','atan2','atanh', - 'auread','autumn','auwrite','axes','axis','balance','bar','bar3', - 'bar3h','barh','besselh','besseli','besselj','besselk','Bessely', - 'beta','betainc','betaln','bicg','bicgstab','bin2dec','bitand', - 'bitcmp','bitget','bitmax','bitor','bitset','bitshift','bitxor', - 'blkdiag','bone','box','brighten','builtin','bwcontr','calendar', - 'camdolly','camlight','camlookat','camorbit','campan','campos', - 'camproj','camroll','camtarget','camup','camva','camzoom','capture', - 'cart2pol','cart2sph','cat','caxis','cdf2rdf','ceil', - 'cell2struct','celldisp','cellfun','cellplot','cellstr','cgs', - 'char','chol','cholinc','cholupdate','cla','clabel','class','clc', - 'clf','clg','clock','close','colmmd','colorbar','colorcube', - 'colordef','colormap','colperm','comet','comet3','compan','compass', - 'complex','computer','cond','condeig','condest','coneplot','conj', - 'contour','contourc','contourf','contourslice','contrast','conv', - 'conv2','convhull','cool','copper','copyobj','corrcoef','cos', - 'cosh','cot','coth','cov','cplxpair','cputime','cross','csc','csch', - 'cumprod','cumsum','cumtrapz','cylinder','daspect','date','datenum', - 'datestr','datetick','datevec','dbclear','dbcont','dbdown', - 'dblquad','dbmex','dbquit','dbstack','dbstatus','dbstep','dbstop', - 'dbtype','dbup','deblank','dec2bin','dec2hex','deconv','del2', - 'delaunay','det','diag','dialog','diff','diffuse','dlmread', - 'dlmwrite','dmperm','double','dragrect','drawnow','dsearch','eig', - 'eigs','ellipj','ellipke','eomday','eps','erf','erfc','erfcx', - 'erfiny','error','errorbar','errordlg','etime','eval','evalc', - 'evalin','exp','expint','expm','eye','ezcontour','ezcontourf', - 'ezmesh','ezmeshc','ezplot','ezplot3','ezpolar','ezsurf','ezsurfc', - 'factor','factorial','fclose','feather','feof','ferror','feval', - 'fft','fft2','fftshift','fgetl','fgets','fieldnames','figure', - 'fill','fill3','filter','filter2','find','findfigs','findobj', - 'findstr','fix','flag','flipdim','fliplr','flipud','floor','flops', - 'fmin','fmins','fopen','fplot','fprintf','fread','frewind','fscanf', - 'fseek','ftell','full','funm','fwrite','fzero','gallery','gamma', - 'gammainc','gammaln','gca','gcbo','gcd','gcf','gco','get', - 'getfield','ginput','gmres','gradient','gray','graymon','grid', - 'griddata','gsvd','gtext','hadamard','hankel','hdf','helpdlg', - 'hess','hex2dec','hex2num','hidden','hilb','hist','hold','hot', - 'hsv','hsv2rgb','i','ifft','ifft2','ifftn','ifftshift','imag', - 'image','imfinfo','imread','imwrite','ind2sub','Inf','inferiorto', - 'inline','inpolygon','input','inputdlg','inputname', - 'int2str','interp1','interp2','interp3','interpft', - 'interpn','intersect','inv','invhilb','ipermute','isa','ishandle', - 'ismember','isocaps','isonormals','isosurface','j','jet','keyboard', - 'lcm','legend','legendre','light','lighting','lightingangle', - 'lin2mu','line','lines','linspace','listdlg','loadobj','log', - 'log10','log2','loglog','logm','logspace','lower','lscov','lu', - 'luinc','magic','mat2str','material','max','mean','median','menu', - 'menuedit','mesh','meshc','meshgrid','min','mod','msgbox','mu2lin', - 'NaN','nargchk','nargin','nargout','nchoosek','ndgrid','ndims', - 'newplot','nextpow2','nnls','nnz','nonzeros','norm','normest','now', - 'null','num2cell','num2str','nzmax','ode113,','ode15s,','ode23s,', - 'ode23t,','ode23tb','ode45,','odefile','odeget','odeset','ones', - 'orient','orth','pagedlg','pareto','pascal','patch','pause', - 'pbaspect','pcg','pcolor','peaks','perms','permute','pi','pie', - 'pie3','pinv','plot','plot3','plotmatrix','plotyy','pol2cart', - 'polar','poly','polyarea','polyder','polyeig','polyfit','polyval', - 'polyvalm','pow2','primes','print','printdlg','printopt','prism', - 'prod','propedit','qmr','qr','qrdelete','qrinsert','qrupdate', - 'quad','questdlg','quiver','quiver3','qz','rand','randn','randperm', - 'rank','rat','rats','rbbox','rcond','real','realmax','realmin', - 'rectangle','reducepatch','reducevolume','refresh','rem','repmat', - 'reset','reshape','residue','rgb2hsv','rgbplot','ribbon','rmfield', - 'roots','rose','rot90','rotate','rotate3d','round','rref', - 'rrefmovie','rsf2csf','saveobj','scatter','scatter3','schur', - 'script','sec','sech','selectmoveresize','semilogx','semilogy', - 'set','setdiff','setfield','setxor','shading','shg','shiftdim', - 'shrinkfaces','sign','sin','single','sinh','slice','smooth3','sort', - 'sortrows','sound','soundsc','spalloc','sparse','spconvert', - 'spdiags','specular','speye','spfun','sph2cart','sphere','spinmap', - 'spline','spones','spparms','sprand','sprandn','sprandsym','spring', - 'sprintf','sqrt','sqrtm','squeeze','sscanf','stairs','std','stem', - 'stem3','str2double','str2num','strcat','strcmp','strcmpi', - 'stream2','stream3','streamline','strings','strjust','strmatch', - 'strncmp','strrep','strtok','struct','struct2cell','strvcat', - 'sub2ind','subplot','subspace','subvolume','sum','summer', - 'superiorto','surf','surf2patch','surface','surfc','surfl', - 'surfnorm','svd','svds','symmmd','symrcm','symvar','tan','tanh', - 'texlabel','text Create','textread','textwrap','tic','title','toc', - 'toeplitz','trace','trapz','tril','trimesh','trisurf','triu', - 'tsearch','uicontext Create','uicontextmenu','uicontrol', - 'uigetfile','uimenu','uiputfile','uiresume', - 'uisetcolor','uisetfont','uiwait Used','union','unique','unwrap', - 'upper','var','varargin','varargout','vectorize','view','viewmtx', - 'voronoi','waitbar','waitforbuttonpress','warndlg','warning', - 'waterfall','wavread','wavwrite','weekday','whitebg','wilkinson', - 'winter','wk1read','wk1write','xlabel','xlim','ylabel','ylim', - 'zeros','zlabel','zlim','zoom', - 'addpath','cd','clear','copyfile','delete','diary','dir','disp', - 'doc','docopt','echo','edit','fileparts','format','fullfile','help', - 'helpdesk','helpwin','home','inmem','lasterr','lastwarn','length', - 'load','lookfor','ls','matlabrc','matlabroot','mkdir','mlock', - 'more','munlock','open','openvar','pack','partialpath','path', - 'pathtool','profile','profreport','pwd','quit','rmpath','save', - 'saveas','size','tempdir','tempname','type','ver','version','web', - 'what','whatsnew','which','who','whos','workspace' - ) + 13 => array("(\b)pkg(?!(\s)*\()(\s)+(((un)?install|(un)?load|list|(global|local)_list|describe|prefix|(re)?build)(\b))?") ), 'SYMBOLS' => array("((\.)?\+{1,2}?(?!\+) | (\.)?\-{1,2}?(?!\-) | (\.)?\*{1,2}?(?!\*) | (\.)?\/(?!\^) | @@ -222,12 +222,16 @@ ), 'STYLES' => array( 'KEYWORDS' => array( - 1 => 'color: #0000FF;', - 2 => 'color: #0000FF;' + 1 => 'color: #2E8B57; font-weight:bold;', // Data types + 2 => 'color: #2E8B57; font-weight:bold;', // Storage type + 3 => 'color: #0000FF;', // Internal variable + 4 => 'color: #FF0000; font-weight:bold;', // Reserved words + 5 => 'color: #008A8C;' // Built-in ), 'COMMENTS' => array( - 1 => 'color: #228B22;', - 2 => 'color:#A020F0;' + 1 => 'color: #0000FF; font-style: italic;', + 2 => 'color: #0000FF; font-style: italic;', + 'MULTI' => 'color: #0000FF; font-style: italic;' ), 'ESCAPE_CHAR' => array( 0 => '' This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jpi...@us...> - 2012-05-22 14:02:58
|
Revision: 10491 http://octave.svn.sourceforge.net/octave/?rev=10491&view=rev Author: jpicarbajal Date: 2012-05-22 14:02:47 +0000 (Tue, 22 May 2012) Log Message: ----------- admin: language file for geshi Modified Paths: -------------- trunk/octave-forge/admin/langfiles/octave.php Modified: trunk/octave-forge/admin/langfiles/octave.php =================================================================== --- trunk/octave-forge/admin/langfiles/octave.php 2012-05-22 08:52:30 UTC (rev 10490) +++ trunk/octave-forge/admin/langfiles/octave.php 2012-05-22 14:02:47 UTC (rev 10491) @@ -52,212 +52,158 @@ 'QUOTEMARKS' => array('"',"'"), 'ESCAPE_CHAR' => '', 'KEYWORDS' => array( - // Data types - 1 => array( - 'cell', 'char ', 'double ', 'uint8', 'uint16', 'uint32', 'uint64', - 'int8','int16', 'int32', 'int64', 'logical ', 'single ', 'struct ' - ), - //Function handle - 2 => array( - GESHI_SEARCH => '(@([A-Za-z_][A-Za-z1-9_]*)?)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // Storage type - 3 => array( - 'global ', 'persistent ', 'static ' - ), - // Boolean - // false and true can be used as functions too. - // Do not highlight as boolean if followed by parentheses. - 4 => array( - GESHI_SEARCH => '([false|true])(\b(?!(\s)*\())', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // Decimal - 5 => array( - GESHI_SEARCH => '(\b([1-9][0-9]*|0)([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // Floating point number - 6 => array( - GESHI_SEARCH => '(\b([0-9]+[Ee][-]?[0-9]+|([0-9]*\.[0-9]+|[0-9]+\.)([Ee][-]?[0-9]+)?)[fFlL]?)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // Octal number - 7 => array( - GESHI_SEARCH => '(\b0[0-7]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // Hex number - 8 => array( - GESHI_SEARCH => '(\b0[xX][0-9a-fA-F]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // Internal variables - 9 => array( - 'ans' - ), - // Reserved constants - // Most of the constants can be used as functions too. Do not highlight - // as constants if followed by parentheses. - 10 => array( - GESHI_SEARCH => '([e|eps|(J|j|I|i)|(Inf|inf)|(NaN|nan)|NA|ones|pi|rand|randn|zeros])(\b(?!(\s)*\())', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // Package manager - 11 => array( - GESHI_SEARCH => '((\b)pkg(?!(\s)*\()(\s)+(((un)?install|(un)?load|list|(global|local)_list|describe|prefix|(re)?build)(\b))?)', - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), - // Reserved words - 12 => array( - 'break ', 'case ', 'catch ', 'continue ', 'do ', 'else ', - 'elseif ','end_try_catch ', 'end_unwind_protect ', 'endfor ', - 'endfunction ', 'endif ', 'endswitch ', 'endwhile ', 'for ', - 'function ', 'if ','otherwise ', 'return ', 'switch ', 'try ', - 'until ', 'unwind_protect ', 'unwind_protect_cleanup ', 'varargin ', - 'varargout ', 'while ' - ), - // Built in + // Data types + 1 => array( + 'cell', 'char ', 'double ', 'uint8', 'uint16', 'uint32', 'uint64', + 'int8','int16', 'int32', 'int64', 'logical ', 'single ', 'struct ' + ), + //Function handle + 2 => array("@([A-Za-z_][A-Za-z1-9_]*)?"), + // Storage type + 3 => array( + 'global ', 'persistent ', 'static ' + ), + // Boolean + // false and true can be used as functions too. + // Do not highlight as boolean if followed by parentheses. + 4 => array("[false|true](\b(?!(\s)*\()"), + // Decimal + 5 => array("\b([1-9][0-9]*|0)([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b"), + // Floating point number + 6 => array("\b([0-9]+[Ee][-]?[0-9]+|([0-9]*\.[0-9]+|[0-9]+\.)([Ee][-]?[0-9]+)?)[fFlL]?" + ), + // Octal number + 7 => array("\b0[0-7]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b"), + // Hex number + 8 => array("\b0[xX][0-9a-fA-F]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b"), + // Internal variables + 9 => array( + 'ans' + ), + // Reserved constants + // Most of the constants can be used as functions too. Do not highlight + // as constants if followed by parentheses. + 10 => array("[e|eps|(J|j|I|i)|(Inf|inf)|(NaN|nan)|NA|ones|pi|rand|randn|zeros])(\b(?!(\s)*\()"), + // Package manager + 11 => array("(\b)pkg(?!(\s)*\()(\s)+(((un)?install|(un)?load|list|(global|local)_list|describe|prefix|(re)?build)(\b))?"), + // Reserved words + 12 => array( + 'break ', 'case ', 'catch ', 'continue ', 'do ', 'else ', + 'elseif ','end_try_catch ', 'end_unwind_protect ', 'endfor ', + 'endfunction ', 'endif ', 'endswitch ', 'endwhile ', 'for ', + 'function ', 'if ','otherwise ', 'return ', 'switch ', 'try ', + 'until ', 'unwind_protect ', 'unwind_protect_cleanup ', 'varargin ', + 'varargout ', 'while ' + ), + // Built in 13 => array( - 'all','any','exist','is','logical','mislocked', - - 'abs','acos','acosh','acot','acoth','acsc','acsch','airy','angle', - 'ans','area','asec','asech','asin','asinh','atan','atan2','atanh', - 'auread','autumn','auwrite','axes','axis','balance','bar','bar3', - 'bar3h','barh','besselh','besseli','besselj','besselk','Bessely', - 'beta','betainc','betaln','bicg','bicgstab','bin2dec','bitand', - 'bitcmp','bitget','bitmax','bitor','bitset','bitshift','bitxor', - 'blkdiag','bone','box','brighten','builtin','bwcontr','calendar', - 'camdolly','camlight','camlookat','camorbit','campan','campos', - 'camproj','camroll','camtarget','camup','camva','camzoom','capture', - 'cart2pol','cart2sph','cat','caxis','cdf2rdf','ceil','cell', - 'cell2struct','celldisp','cellfun','cellplot','cellstr','cgs', - 'char','chol','cholinc','cholupdate','cla','clabel','class','clc', - 'clf','clg','clock','close','colmmd','colorbar','colorcube', - 'colordef','colormap','colperm','comet','comet3','compan','compass', - 'complex','computer','cond','condeig','condest','coneplot','conj', - 'contour','contourc','contourf','contourslice','contrast','conv', - 'conv2','convhull','cool','copper','copyobj','corrcoef','cos', - 'cosh','cot','coth','cov','cplxpair','cputime','cross','csc','csch', - 'cumprod','cumsum','cumtrapz','cylinder','daspect','date','datenum', - 'datestr','datetick','datevec','dbclear','dbcont','dbdown', - 'dblquad','dbmex','dbquit','dbstack','dbstatus','dbstep','dbstop', - 'dbtype','dbup','deblank','dec2bin','dec2hex','deconv','del2', - 'delaunay','det','diag','dialog','diff','diffuse','dlmread', - 'dlmwrite','dmperm','double','dragrect','drawnow','dsearch','eig', - 'eigs','ellipj','ellipke','eomday','eps','erf','erfc','erfcx', - 'erfiny','error','errorbar','errordlg','etime','eval','evalc', - 'evalin','exp','expint','expm','eye','ezcontour','ezcontourf', - 'ezmesh','ezmeshc','ezplot','ezplot3','ezpolar','ezsurf','ezsurfc', - 'factor','factorial','fclose','feather','feof','ferror','feval', - 'fft','fft2','fftshift','fgetl','fgets','fieldnames','figure', - 'fill','fill3','filter','filter2','find','findfigs','findobj', - 'findstr','fix','flag','flipdim','fliplr','flipud','floor','flops', - 'fmin','fmins','fopen','fplot','fprintf','fread','frewind','fscanf', - 'fseek','ftell','full','funm','fwrite','fzero','gallery','gamma', - 'gammainc','gammaln','gca','gcbo','gcd','gcf','gco','get', - 'getfield','ginput','gmres','gradient','gray','graymon','grid', - 'griddata','gsvd','gtext','hadamard','hankel','hdf','helpdlg', - 'hess','hex2dec','hex2num','hidden','hilb','hist','hold','hot', - 'hsv','hsv2rgb','i','ifft','ifft2','ifftn','ifftshift','imag', - 'image','imfinfo','imread','imwrite','ind2sub','Inf','inferiorto', - 'inline','inpolygon','input','inputdlg','inputname','int16', - 'int2str','int32','int8','interp1','interp2','interp3','interpft', - 'interpn','intersect','inv','invhilb','ipermute','isa','ishandle', - 'ismember','isocaps','isonormals','isosurface','j','jet','keyboard', - 'lcm','legend','legendre','light','lighting','lightingangle', - 'lin2mu','line','lines','linspace','listdlg','loadobj','log', - 'log10','log2','loglog','logm','logspace','lower','lscov','lu', - 'luinc','magic','mat2str','material','max','mean','median','menu', - 'menuedit','mesh','meshc','meshgrid','min','mod','msgbox','mu2lin', - 'NaN','nargchk','nargin','nargout','nchoosek','ndgrid','ndims', - 'newplot','nextpow2','nnls','nnz','nonzeros','norm','normest','now', - 'null','num2cell','num2str','nzmax','ode113,','ode15s,','ode23s,', - 'ode23t,','ode23tb','ode45,','odefile','odeget','odeset','ones', - 'orient','orth','pagedlg','pareto','pascal','patch','pause', - 'pbaspect','pcg','pcolor','peaks','perms','permute','pi','pie', - 'pie3','pinv','plot','plot3','plotmatrix','plotyy','pol2cart', - 'polar','poly','polyarea','polyder','polyeig','polyfit','polyval', - 'polyvalm','pow2','primes','print','printdlg','printopt','prism', - 'prod','propedit','qmr','qr','qrdelete','qrinsert','qrupdate', - 'quad','questdlg','quiver','quiver3','qz','rand','randn','randperm', - 'rank','rat','rats','rbbox','rcond','real','realmax','realmin', - 'rectangle','reducepatch','reducevolume','refresh','rem','repmat', - 'reset','reshape','residue','rgb2hsv','rgbplot','ribbon','rmfield', - 'roots','rose','rot90','rotate','rotate3d','round','rref', - 'rrefmovie','rsf2csf','saveobj','scatter','scatter3','schur', - 'script','sec','sech','selectmoveresize','semilogx','semilogy', - 'set','setdiff','setfield','setxor','shading','shg','shiftdim', - 'shrinkfaces','sign','sin','single','sinh','slice','smooth3','sort', - 'sortrows','sound','soundsc','spalloc','sparse','spconvert', - 'spdiags','specular','speye','spfun','sph2cart','sphere','spinmap', - 'spline','spones','spparms','sprand','sprandn','sprandsym','spring', - 'sprintf','sqrt','sqrtm','squeeze','sscanf','stairs','std','stem', - 'stem3','str2double','str2num','strcat','strcmp','strcmpi', - 'stream2','stream3','streamline','strings','strjust','strmatch', - 'strncmp','strrep','strtok','struct','struct2cell','strvcat', - 'sub2ind','subplot','subspace','subvolume','sum','summer', - 'superiorto','surf','surf2patch','surface','surfc','surfl', - 'surfnorm','svd','svds','symmmd','symrcm','symvar','tan','tanh', - 'texlabel','text Create','textread','textwrap','tic','title','toc', - 'toeplitz','trace','trapz','tril','trimesh','trisurf','triu', - 'tsearch','uicontext Create','uicontextmenu','uicontrol', - 'uigetfile','uimenu','uint32','uint8','uiputfile','uiresume', - 'uisetcolor','uisetfont','uiwait Used','union','unique','unwrap', - 'upper','var','varargin','varargout','vectorize','view','viewmtx', - 'voronoi','waitbar','waitforbuttonpress','warndlg','warning', - 'waterfall','wavread','wavwrite','weekday','whitebg','wilkinson', - 'winter','wk1read','wk1write','xlabel','xlim','ylabel','ylim', - 'zeros','zlabel','zlim','zoom', - - 'addpath','cd','clear','copyfile','delete','diary','dir','disp', - 'doc','docopt','echo','edit','fileparts','format','fullfile','help', - 'helpdesk','helpwin','home','inmem','lasterr','lastwarn','length', - 'load','lookfor','ls','matlabrc','matlabroot','mkdir','mlock', - 'more','munlock','open','openvar','pack','partialpath','path', - 'pathtool','profile','profreport','pwd','quit','rmpath','save', - 'saveas','size','tempdir','tempname','type','ver','version','web', - 'what','whatsnew','which','who','whos','workspace' - ) + 'all','any','exist','is','logical','mislocked', + 'abs','acos','acosh','acot','acoth','acsc','acsch','airy','angle', + 'area','asec','asech','asin','asinh','atan','atan2','atanh', + 'auread','autumn','auwrite','axes','axis','balance','bar','bar3', + 'bar3h','barh','besselh','besseli','besselj','besselk','Bessely', + 'beta','betainc','betaln','bicg','bicgstab','bin2dec','bitand', + 'bitcmp','bitget','bitmax','bitor','bitset','bitshift','bitxor', + 'blkdiag','bone','box','brighten','builtin','bwcontr','calendar', + 'camdolly','camlight','camlookat','camorbit','campan','campos', + 'camproj','camroll','camtarget','camup','camva','camzoom','capture', + 'cart2pol','cart2sph','cat','caxis','cdf2rdf','ceil', + 'cell2struct','celldisp','cellfun','cellplot','cellstr','cgs', + 'char','chol','cholinc','cholupdate','cla','clabel','class','clc', + 'clf','clg','clock','close','colmmd','colorbar','colorcube', + 'colordef','colormap','colperm','comet','comet3','compan','compass', + 'complex','computer','cond','condeig','condest','coneplot','conj', + 'contour','contourc','contourf','contourslice','contrast','conv', + 'conv2','convhull','cool','copper','copyobj','corrcoef','cos', + 'cosh','cot','coth','cov','cplxpair','cputime','cross','csc','csch', + 'cumprod','cumsum','cumtrapz','cylinder','daspect','date','datenum', + 'datestr','datetick','datevec','dbclear','dbcont','dbdown', + 'dblquad','dbmex','dbquit','dbstack','dbstatus','dbstep','dbstop', + 'dbtype','dbup','deblank','dec2bin','dec2hex','deconv','del2', + 'delaunay','det','diag','dialog','diff','diffuse','dlmread', + 'dlmwrite','dmperm','double','dragrect','drawnow','dsearch','eig', + 'eigs','ellipj','ellipke','eomday','eps','erf','erfc','erfcx', + 'erfiny','error','errorbar','errordlg','etime','eval','evalc', + 'evalin','exp','expint','expm','eye','ezcontour','ezcontourf', + 'ezmesh','ezmeshc','ezplot','ezplot3','ezpolar','ezsurf','ezsurfc', + 'factor','factorial','fclose','feather','feof','ferror','feval', + 'fft','fft2','fftshift','fgetl','fgets','fieldnames','figure', + 'fill','fill3','filter','filter2','find','findfigs','findobj', + 'findstr','fix','flag','flipdim','fliplr','flipud','floor','flops', + 'fmin','fmins','fopen','fplot','fprintf','fread','frewind','fscanf', + 'fseek','ftell','full','funm','fwrite','fzero','gallery','gamma', + 'gammainc','gammaln','gca','gcbo','gcd','gcf','gco','get', + 'getfield','ginput','gmres','gradient','gray','graymon','grid', + 'griddata','gsvd','gtext','hadamard','hankel','hdf','helpdlg', + 'hess','hex2dec','hex2num','hidden','hilb','hist','hold','hot', + 'hsv','hsv2rgb','i','ifft','ifft2','ifftn','ifftshift','imag', + 'image','imfinfo','imread','imwrite','ind2sub','Inf','inferiorto', + 'inline','inpolygon','input','inputdlg','inputname', + 'int2str','interp1','interp2','interp3','interpft', + 'interpn','intersect','inv','invhilb','ipermute','isa','ishandle', + 'ismember','isocaps','isonormals','isosurface','j','jet','keyboard', + 'lcm','legend','legendre','light','lighting','lightingangle', + 'lin2mu','line','lines','linspace','listdlg','loadobj','log', + 'log10','log2','loglog','logm','logspace','lower','lscov','lu', + 'luinc','magic','mat2str','material','max','mean','median','menu', + 'menuedit','mesh','meshc','meshgrid','min','mod','msgbox','mu2lin', + 'NaN','nargchk','nargin','nargout','nchoosek','ndgrid','ndims', + 'newplot','nextpow2','nnls','nnz','nonzeros','norm','normest','now', + 'null','num2cell','num2str','nzmax','ode113,','ode15s,','ode23s,', + 'ode23t,','ode23tb','ode45,','odefile','odeget','odeset','ones', + 'orient','orth','pagedlg','pareto','pascal','patch','pause', + 'pbaspect','pcg','pcolor','peaks','perms','permute','pi','pie', + 'pie3','pinv','plot','plot3','plotmatrix','plotyy','pol2cart', + 'polar','poly','polyarea','polyder','polyeig','polyfit','polyval', + 'polyvalm','pow2','primes','print','printdlg','printopt','prism', + 'prod','propedit','qmr','qr','qrdelete','qrinsert','qrupdate', + 'quad','questdlg','quiver','quiver3','qz','rand','randn','randperm', + 'rank','rat','rats','rbbox','rcond','real','realmax','realmin', + 'rectangle','reducepatch','reducevolume','refresh','rem','repmat', + 'reset','reshape','residue','rgb2hsv','rgbplot','ribbon','rmfield', + 'roots','rose','rot90','rotate','rotate3d','round','rref', + 'rrefmovie','rsf2csf','saveobj','scatter','scatter3','schur', + 'script','sec','sech','selectmoveresize','semilogx','semilogy', + 'set','setdiff','setfield','setxor','shading','shg','shiftdim', + 'shrinkfaces','sign','sin','single','sinh','slice','smooth3','sort', + 'sortrows','sound','soundsc','spalloc','sparse','spconvert', + 'spdiags','specular','speye','spfun','sph2cart','sphere','spinmap', + 'spline','spones','spparms','sprand','sprandn','sprandsym','spring', + 'sprintf','sqrt','sqrtm','squeeze','sscanf','stairs','std','stem', + 'stem3','str2double','str2num','strcat','strcmp','strcmpi', + 'stream2','stream3','streamline','strings','strjust','strmatch', + 'strncmp','strrep','strtok','struct','struct2cell','strvcat', + 'sub2ind','subplot','subspace','subvolume','sum','summer', + 'superiorto','surf','surf2patch','surface','surfc','surfl', + 'surfnorm','svd','svds','symmmd','symrcm','symvar','tan','tanh', + 'texlabel','text Create','textread','textwrap','tic','title','toc', + 'toeplitz','trace','trapz','tril','trimesh','trisurf','triu', + 'tsearch','uicontext Create','uicontextmenu','uicontrol', + 'uigetfile','uimenu','uiputfile','uiresume', + 'uisetcolor','uisetfont','uiwait Used','union','unique','unwrap', + 'upper','var','varargin','varargout','vectorize','view','viewmtx', + 'voronoi','waitbar','waitforbuttonpress','warndlg','warning', + 'waterfall','wavread','wavwrite','weekday','whitebg','wilkinson', + 'winter','wk1read','wk1write','xlabel','xlim','ylabel','ylim', + 'zeros','zlabel','zlim','zoom', + 'addpath','cd','clear','copyfile','delete','diary','dir','disp', + 'doc','docopt','echo','edit','fileparts','format','fullfile','help', + 'helpdesk','helpwin','home','inmem','lasterr','lastwarn','length', + 'load','lookfor','ls','matlabrc','matlabroot','mkdir','mlock', + 'more','munlock','open','openvar','pack','partialpath','path', + 'pathtool','profile','profreport','pwd','quit','rmpath','save', + 'saveas','size','tempdir','tempname','type','ver','version','web', + 'what','whatsnew','which','who','whos','workspace' + ) + ), + 'SYMBOLS' => array("((\.)?\+{1,2}?(?!\+) | (\.)?\-{1,2}?(?!\-) | + (\.)?\*{1,2}?(?!\*) | (\.)?\/(?!\^) | + (\.)?\\(?!\^) | (\.)?\^(?!\^) | + (?<=[0-9a-zA-Z_)\]}])(\.)?' | <=? | + >=? | != | ~= | == | <> | + &{1,2}?(?!&) | \|{1,2}?(?!\|) | ! | ~ | + = | : | ...)" ), - 'SYMBOLS' => array( - GESHI_SEARCH => "((\.)?\+{1,2}?(?!\+) | (\.)?\-{1,2}?(?!\-) | - (\.)?\*{1,2}?(?!\*) | (\.)?\/(?!\^) | - (\.)?\\(?!\^) | (\.)?\^(?!\^) | - (?<=[0-9a-zA-Z_)\]}])(\.)?' | <=? | - >=? | != | ~= | == | <> | - &{1,2}?(?!&) | \|{1,2}?(?!\|) | ! | ~ | - = | : | ...)", - GESHI_REPLACE => '\\1', - GESHI_MODIFIERS => '', - GESHI_BEFORE => '', - GESHI_AFTER => '' - ), 'CASE_SENSITIVE' => array( GESHI_COMMENTS => false, 1 => false, @@ -281,18 +227,7 @@ ), 'COMMENTS' => array( 1 => 'color: #228B22;', - 2 => 'color:#A020F0;', - 3 => 'color:#A020F0;' - 4 => 'color:#A020F0;' - 5 => 'color:#A020F0;' - 6 => 'color:#A020F0;' - 7 => 'color:#A020F0;' - 8 => 'color:#A020F0;' - 9 => 'color:#A020F0;' - 10 => 'color:#A020F0;' - 11 => 'color:#A020F0;' - 12 => 'color:#A020F0;' - 13 => 'color:#A020F0;' + 2 => 'color:#A020F0;' ), 'ESCAPE_CHAR' => array( 0 => '' @@ -322,22 +257,31 @@ ), 'URLS' => array( 1 => '', - 2 => '' + 2 => '', + 3 => '', + 4 => '', + 5 => '', + 6 => '', + 7 => '', + 8 => '', + 9 => '', + 10 => '', + 11 => '', + 12 => '', + 13 => '' ), -// 'OOLANG' => true, -// 'OBJECT_SPLITTERS' => array( -// 1 => '.', -// 2 => '::' -// ), + 'OOLANG' => true, + 'OBJECT_SPLITTERS' => array( + 1 => '.', + 2 => '::' + ), 'REGEXPS' => array( //Complex numbers 0 => '(?<![\\w\\/])[+-]?[\\d]*([\\d]\\.|\\.[\\d])?[\\d]*[ij](?![\\w]|\<DOT>html)' ), 'STRICT_MODE_APPLIES' => GESHI_NEVER, - 'SCRIPT_DELIMITERS' => array( - ), - 'HIGHLIGHT_STRICT_BLOCK' => array( - ) + 'SCRIPT_DELIMITERS' => array(), + 'HIGHLIGHT_STRICT_BLOCK' => array() ); ?> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jpi...@us...> - 2012-05-22 08:52:40
|
Revision: 10490 http://octave.svn.sourceforge.net/octave/?rev=10490&view=rev Author: jpicarbajal Date: 2012-05-22 08:52:30 +0000 (Tue, 22 May 2012) Log Message: ----------- admin: Adding language files Added Paths: ----------- trunk/octave-forge/admin/langfiles/ trunk/octave-forge/admin/langfiles/octave.lang trunk/octave-forge/admin/langfiles/octave.php Added: trunk/octave-forge/admin/langfiles/octave.lang =================================================================== --- trunk/octave-forge/admin/langfiles/octave.lang (rev 0) +++ trunk/octave-forge/admin/langfiles/octave.lang 2012-05-22 08:52:30 UTC (rev 10490) @@ -0,0 +1,811 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + + This file is part of GtkSourceView + + Authors: Søren Hauberg, Muthiah Annamalai, Carnë Draug + Copyright (C) 2006 Søren Hauberg <so...@ha...> + Copyright (C) 2006 Muthiah Annamalai <gnu...@us...> + Copyright (C) 2010 Carnë Draug <car...@gm...> + + GtkSourceView is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + GtkSourceView is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +--> +<language id="octave" _name="Octave" version="2.0" _section="Scientific"> + <metadata> + <property name="mimetypes">text/x-octave;text/x-matlab</property> + <property name="globs">*.m</property> + <property name="line-comment-start">#</property> + <property name="block-comment-start">#{</property> + <property name="block-comment-end">}#</property> + </metadata> + + <!-- + Note: matlab.lang and octave.lang used to be the same lang file since + octave syntax was originally a clone of matlab syntax. Over time the + two syntaxes diverged and grew different extensions. When making + modification check if they apply to both languages. + --> + + <styles> + <style id="comment" _name="Comment" map-to="def:comment"/> + <style id="string" _name="String" map-to="def:string"/> + <style id="operator" _name="Operator" map-to="def:operator"/> + <style id="data-type" _name="Data type" map-to="def:type"/> + <style id="storage-type" _name="Storage Type" map-to="def:type"/> + <style id="boolean" _name="Boolean" map-to="def:boolean"/> + <style id="decimal" _name="Decimal" map-to="def:decimal"/> + <style id="floating-point" _name="Floating Point" map-to="def:floating-point"/> + <style id="base-n-integer" _name="Base-N Integer" map-to="def:base-n-integer"/> + <style id="package-manager" _name="Package Manager" map-to="def:preprocessor"/> + <style id="keyword" _name="Keyword" map-to="def:keyword"/> + <style id="variable" _name="Variable" map-to="def:identifier"/> + <style id="reserved-constant" _name="Reserved Constant" map-to="def:special-constant"/> + <style id="builtin" _name="Builtin" map-to="def:builtin"/> + </styles> + + <definitions> + + <context id="block-comment" style-ref="comment" class="comment" class-disabled="no-spell-check"> + <start>^\s*(#|%){\s*$</start> + <end>^\s*(#|%)}\s*$</end> + <include> + <context ref="block-comment"/> + <context ref="def:in-comment"/> + </include> + </context> + + <context id="line-comment" style-ref="comment" end-at-line-end="true" class="comment" class-disabled="no-spell-check"> + <start>#|%</start> + <include> + <context ref="def:in-comment"/> + </include> + </context> + + <!-- Different from the line continue in the defaults.--> + <!-- Continuation line can be ... or \ optionally followed by whitespace + and comments --> + <context id="line-continue" style-ref="comment" class="comment" class-disabled="no-spell-check"> + <start>\.\.\.(\s)*$|\.\.\.(\s)*(#|%)+|\\(\s)*$|\\(\s)*(#|%)+</start> + <end>^</end> + <include> + <context ref="def:in-comment"/> + </include> + </context> + + <context id="double-quoted-string" style-ref="string" end-at-line-end="true" class="string" class-disabled="no-spell-check"> + <start>"</start> + <end>"</end> + <include> + <!-- octave uses the same printf format and escape chars as C --> + <context ref="c:printf"/> + <context ref="c:escaped-character"/> + <context ref="line-continue"/> + </include> + </context> + + <!-- Unlike double quoted string, single quote strings in octave do not + allow continuation lines.--> + <context id="single-quoted-string" style-ref="string" end-at-line-end="true" class="string" class-disabled="no-spell-check"> + <!-- + To do not misdetect the transpose operator ' as the start of a string + we assert to not follow a variable name (letters, digits and underscores) + or a closing bracket (round, square or curly) or a dot (to form the + array transpose operator ".'" ). --> + <start>(?<![0-9a-zA-Z_)\]}\.])'</start> + <end>'</end> + <include> + <context style-ref="def:special-char"> + <match>''</match> + </context> + </include> + </context> + + <!--To see the list of operators, use the function __operators__--> + <context id="operator" style-ref="operator"> + <match extended="true"> + (\.)?\+{1,2}?(?!\+) | # arithmetic operators + (\.)?\-{1,2}?(?!\-) | # already counting + (\.)?\*{1,2}?(?!\*) | # with auto increment, + (\.)?\/(?!\^) | # element by element, + (\.)?\\(?!\^) | # left division + (\.)?\^(?!\^) | # and both exp + (?<=[0-9a-zA-Z_)\]}])(\.)?' | # transpose operator + <=? | >=? | != | ~= | == | <> | # comparison operators + &{1,2}?(?!&) | \|{1,2}?(?!\|) | ! | ~ | # boolean operators + = | # assignment operator + : | # range operator + </match> + </context> + + <context id="data-type" style-ref="data-type"> + <keyword>cell(str)?</keyword> + <keyword>char</keyword> + <keyword>double</keyword> + <keyword>(u)?int(8|16|32|64)</keyword> + <keyword>logical</keyword> + <keyword>single</keyword> + <keyword>struct</keyword> + </context> + + <context id="function-handle" style-ref="data-type"> + <match>@([A-Za-z_][A-Za-z1-9_]*)?</match> + </context> + + <context id="storage-type" style-ref="storage-type"> + <keyword>global</keyword> + <keyword>persistent</keyword> + <keyword>static</keyword> + </context> + + <context id="boolean" style-ref="boolean"> + <!-- falase and true can be used as functions too. Do not highlight as + boolean if followed by parentheses --> + <suffix>\b(?!(\s)*\()</suffix> + <keyword>false</keyword> + <keyword>true</keyword> + </context> + + <context id="decimal" style-ref="decimal"> + <match>\b([1-9][0-9]*|0)([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b</match> + </context> + + <context id="floating-point-number" style-ref="floating-point"> + <match>\b([0-9]+[Ee][-]?[0-9]+|([0-9]*\.[0-9]+|[0-9]+\.)([Ee][-]?[0-9]+)?)[fFlL]?</match> + </context> + + <context id="octal-number" style-ref="base-n-integer"> + <match>\b0[0-7]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b</match> + </context> + + <context id="hex-number" style-ref="base-n-integer"> + <match>\b0[xX][0-9a-fA-F]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b</match> + </context> + + <context id="variables" style-ref="variable"> + <keyword>ans</keyword> + </context> + + <context id="reserved-constant" style-ref="reserved-constant"> + <!-- Most of the constants can be used as functions too. Do not highlight + as constants if followed by parentheses --> + <suffix>\b(?!(\s)*\()</suffix> + <keyword>e</keyword> + <keyword>eps</keyword> + <keyword>(J|j|I|i)</keyword> + <keyword>(Inf|inf)</keyword> + <keyword>(NaN|nan)</keyword> + <keyword>NA</keyword> + <keyword>ones</keyword> + <keyword>pi</keyword> + <keyword>rand</keyword> + <keyword>randn</keyword> + <keyword>zeros</keyword> + </context> + + <context id="package-manager" style-ref="package-manager"> + <match extended="true"> + (\b)pkg(?!(\s)*\()(\s)+ + (((un)?install|(un)?load|list|(global|local)_list|describe|prefix|(re)?build)(\b))? + </match> + </context> + + <!--To see the list of keywords, use the function __keywords__--> + <context id="keyword" style-ref="keyword"> + <keyword>break</keyword> + <keyword>case</keyword> + <keyword>catch</keyword> + <keyword>continue</keyword> + <keyword>do</keyword> + <keyword>else(if)?</keyword> + <keyword>end(_try_catch|_unwind_protect|for|function|if|switch|while)?</keyword> + <keyword>for</keyword> + <keyword>function</keyword> + <keyword>if</keyword> + <keyword>otherwise</keyword> + <keyword>return</keyword> + <keyword>switch</keyword> + <keyword>try</keyword> + <keyword>until</keyword> + <keyword>unwind_protect(_cleanup)?</keyword> + <keyword>vararg(in|out)</keyword> + <keyword>while</keyword> + </context> + + <define-regex id="is-type-functions" extended="true"> + a | method | object | + cell(str)? | char | field | float | integer | logical | numeric | real | + dir | + empty | + equal(withequalnans)? | + finite | inf | letter | member | na(n)? | prime | space | + global | + (hg)?handle | + hold | + keyword | + mac | pc | unix | + scalar | sparse | vector | + sorted | + str(prop|uct)? | + varname + </define-regex> + + <!--While there are many more builtin functions in octave, only some + are listed here. This is to avoid maintenance problems specially in the + case of functions that may later be removed. Extra functions can easily + be added manually. Function __list_functions__ lists them all --> + <context id="builtin" style-ref="builtin"> + <prefix>(?<!\.)\%[</prefix> + <suffix>\%](?!\.)</suffix> + + <keyword>(Inf|inf)</keyword> + <keyword>(NaN|nan)</keyword> + <keyword>abs</keyword> + <keyword>accumarray</keyword> + <keyword>acos(d|h)?</keyword> + <keyword>acot(d|h)?</keyword> + <keyword>acsc(d|h)?</keyword> + <keyword>addlistener</keyword> + <keyword>addpath</keyword> + <keyword>addproperty</keyword> + <keyword>addtodate</keyword> + <keyword>airy</keyword> + <keyword>all</keyword> + <keyword>allchild</keyword> + <keyword>amd</keyword> + <keyword>ancestor</keyword> + <keyword>and</keyword> + <keyword>angle</keyword> + <keyword>any</keyword> + <keyword>area</keyword> + <keyword>arrayfun</keyword> + <keyword>asec(d|h)?</keyword> + <keyword>asin(d|h)?</keyword> + <keyword>assert</keyword> + <keyword>assignin</keyword> + <keyword>atan(d|h)?</keyword> + <keyword>atan2</keyword> + <keyword>axes</keyword> + <keyword>axis</keyword> + <keyword>balance</keyword> + <keyword>bar(h)?</keyword> + <keyword>base2dec</keyword> + <keyword>beep</keyword> + <keyword>bessel(h|i|j|k|y)</keyword> + <keyword>beta(inc|ln)?</keyword> + <keyword>bicgstab</keyword> + <keyword>bin2dec</keyword> + <keyword>bit(and|cmp|or|xor)</keyword> + <keyword>bit(get|max|set|shift)</keyword> + <keyword>blanks</keyword> + <keyword>blkdiag</keyword> + <keyword>box</keyword> + <keyword>brighten</keyword> + <keyword>bsxfun</keyword> + <keyword>builtin</keyword> + <keyword>bunzip2</keyword> + <keyword>bzip2</keyword> + <keyword>calendar</keyword> + <keyword>cart2(pol|sph)</keyword> + <keyword>cast</keyword> + <keyword>cat</keyword> + <keyword>caxis</keyword> + <keyword>cd</keyword> + <keyword>ceil</keyword> + <keyword>cell2(mat|struct)</keyword> + <keyword>celldisp</keyword> + <keyword>cellfun</keyword> + <keyword>cgs</keyword> + <keyword>char</keyword> + <keyword>chol</keyword> + <keyword>cholupdate</keyword> + <keyword>circshift</keyword> + <keyword>cla</keyword> + <keyword>clabel</keyword> + <keyword>class</keyword> + <keyword>clc</keyword> + <keyword>clear</keyword> + <keyword>clf</keyword> + <keyword>clock</keyword> + <keyword>close(req)?</keyword> + <keyword>col(amd|perm)</keyword> + <keyword>colorbar</keyword> + <keyword>colormap</keyword> + <keyword>columns</keyword> + <keyword>comet</keyword> + <keyword>compan</keyword> + <keyword>compass</keyword> + <keyword>complex</keyword> + <keyword>computer</keyword> + <keyword>cond(est)?</keyword> + <keyword>conj</keyword> + <keyword>contour(3|c|f)?</keyword> + <keyword>contrast</keyword> + <keyword>conv(2|hull(n)?|n)?</keyword> + <keyword>copyfile</keyword> + <keyword>corrcoef</keyword> + <keyword>cos(d|h)?</keyword> + <keyword>cot(d|h)?</keyword> + <keyword>cov</keyword> + <keyword>cplxpair</keyword> + <keyword>cputime</keyword> + <keyword>cross</keyword> + <keyword>csc(d|h)?</keyword> + <keyword>csv(read|write)</keyword> + <keyword>ctranspose</keyword> + <keyword>cum(max|min|prod|sum|trapz)</keyword> + <keyword>curl</keyword> + <keyword>cylinder</keyword> + <keyword>daspect</keyword> + <keyword>date(num|str|tick|vec)?</keyword> + <keyword>db(clear|stack|status|stop|type|where)</keyword> + <keyword>db(cont|down|next|quit|step|up)</keyword> + <keyword>dbquad</keyword> + <keyword>deal</keyword> + <keyword>deblank</keyword> + <keyword>dec2(base|bin|hex)</keyword> + <keyword>deconv</keyword> + <keyword>del2</keyword> + <keyword>delaunay(3|n)?</keyword> + <keyword>demo</keyword> + <keyword>det</keyword> + <keyword>detrend</keyword> + <keyword>diag</keyword> + <keyword>diary</keyword> + <keyword>diff</keyword> + <keyword>diffuse</keyword> + <keyword>dir</keyword> + <keyword>disp</keyword> + <keyword>display</keyword> + <keyword>divergence</keyword> + <keyword>dlm(read|write)</keyword> + <keyword>dmperm</keyword> + <keyword>doc</keyword> + <keyword>dos</keyword> + <keyword>dot</keyword> + <keyword>double</keyword> + <keyword>drawnow</keyword> + <keyword>dsearch(n)?</keyword> + <keyword>echo</keyword> + <keyword>edit</keyword> + <keyword>eig(s)?</keyword> + <keyword>ellipsoid</keyword> + <keyword>eomday</keyword> + <keyword>eps</keyword> + <keyword>eq</keyword> + <keyword>erf(c|cx|cinv|inv)?</keyword> + <keyword>erfcx</keyword> + <keyword>error</keyword> + <keyword>errorbar</keyword> + <keyword>etime</keyword> + <keyword>etree(plot)?</keyword> + <keyword>eval(in)?</keyword> + <keyword>exist</keyword> + <keyword>exit</keyword> + <keyword>exp(int|m|m1)?</keyword> + <keyword>eye</keyword> + <keyword>ez(contour(f)?|mesh(c)?|plot(3)?|polar|surf(c)?)</keyword> + <keyword>f(close|open|read|seek|tell|write)</keyword> + <keyword>factor</keyword> + <keyword>factorial</keyword> + <keyword>false</keyword> + <keyword>feather</keyword> + <keyword>feof</keyword> + <keyword>ferror</keyword> + <keyword>feval</keyword> + <keyword>fft(2|n|shift)?</keyword> + <keyword>fftw</keyword> + <keyword>fget(l|s)</keyword> + <keyword>fieldnames</keyword> + <keyword>figure</keyword> + <keyword>file(attrib|marker|parts|sep)</keyword> + <keyword>fileread</keyword> + <keyword>fill</keyword> + <keyword>filter(2)?</keyword> + <keyword>find</keyword> + <keyword>findall</keyword> + <keyword>findobj</keyword> + <keyword>findstr</keyword> + <keyword>fix</keyword> + <keyword>flip(dim|lr|ud)</keyword> + <keyword>floor</keyword> + <keyword>fminbnd</keyword> + <keyword>format</keyword> + <keyword>fplot</keyword> + <keyword>fprint(f)?</keyword> + <keyword>frewind</keyword> + <keyword>fscanf</keyword> + <keyword>fsolve</keyword> + <keyword>full</keyword> + <keyword>fullfile</keyword> + <keyword>func2str</keyword> + <keyword>functions</keyword> + <keyword>fzero</keyword> + <keyword>gamma(inc|ln)?</keyword> + <keyword>gca</keyword> + <keyword>gcb(f|o)</keyword> + <keyword>gcd</keyword> + <keyword>gcf</keyword> + <keyword>ge</keyword> + <keyword>genpath</keyword> + <keyword>genvarname</keyword> + <keyword>get</keyword> + <keyword>getenv</keyword> + <keyword>getfield</keyword> + <keyword>ginput</keyword> + <keyword>gplot</keyword> + <keyword>gradient</keyword> + <keyword>grid(data|data3|datan)?</keyword> + <keyword>gt</keyword> + <keyword>gtext</keyword> + <keyword>gunzip</keyword> + <keyword>gzip</keyword> + <keyword>hadamard</keyword> + <keyword>hankel</keyword> + <keyword>help</keyword> + <keyword>hess</keyword> + <keyword>hex2(dec|num)</keyword> + <keyword>hggroup</keyword> + <keyword>hidden</keyword> + <keyword>hilb</keyword> + <keyword>hist(c)?</keyword> + <keyword>hold</keyword> + <keyword>home</keyword> + <keyword>horzcat</keyword> + <keyword>hsv2rgb</keyword> + <keyword>hypot</keyword> + <keyword>I</keyword> + <keyword>i</keyword> + <keyword>idivide</keyword> + <keyword>ifft(2|n|shift)?</keyword> + <keyword>im(finfo|read|show|write)</keyword> + <keyword>image(sc)?</keyword> + <keyword>ind2(rgb|sub)</keyword> + <keyword>inferiorto</keyword> + <keyword>info</keyword> + <keyword>inline</keyword> + <keyword>inpolygon</keyword> + <keyword>input</keyword> + <keyword>inputname</keyword> + <keyword>int(min|max)</keyword> + <keyword>int2str</keyword> + <keyword>interp(1|1q|2|3|ft|n)</keyword> + <keyword>intersect</keyword> + <keyword>intwarning</keyword> + <keyword>inv(erse)?</keyword> + <keyword>invhilb</keyword> + <keyword>ipermute</keyword> + <keyword>iqr</keyword> + <!-- rather than write here all the is(type) functions, a regex was + created named 'is-type-functions'. Add the type to that regex rather than + adding a new keyword here --> + <keyword>is\%{is-type-functions}</keyword> + <keyword>iso(colors|normals|surface)</keyword> + <keyword>J</keyword> + <keyword>j</keyword> + <keyword>jet</keyword> + <keyword>keyboard</keyword> + <keyword>kron</keyword> + <keyword>last(err|error|warn)</keyword> + <keyword>lcm</keyword> + <keyword>ldivide</keyword> + <keyword>le</keyword> + <keyword>legend</keyword> + <keyword>legendre</keyword> + <keyword>length</keyword> + <keyword>license</keyword> + <keyword>lin2mu</keyword> + <keyword>line</keyword> + <keyword>linkprop</keyword> + <keyword>linspace</keyword> + <keyword>list</keyword> + <keyword>load(obj)?</keyword> + <keyword>log(10|1p|2|space|m)?</keyword> + <keyword>loglog</keyword> + <keyword>lookfor</keyword> + <keyword>lower</keyword> + <keyword>ls</keyword> + <keyword>lsqnonneg</keyword> + <keyword>lt</keyword> + <keyword>lu(inc)?</keyword> + <keyword>magic</keyword> + <keyword>mat2(cell|str)</keyword> + <keyword>matlabroot</keyword> + <keyword>max</keyword> + <keyword>mean</keyword> + <keyword>median</keyword> + <keyword>menu</keyword> + <keyword>merge</keyword> + <keyword>mesh(grid|c|z)?</keyword> + <keyword>methods</keyword> + <keyword>mex</keyword> + <keyword>mexext</keyword> + <keyword>mfilename</keyword> + <keyword>min</keyword> + <keyword>minus</keyword> + <keyword>mislocked</keyword> + <keyword>mkdir</keyword> + <keyword>mkoctfile</keyword> + <keyword>mkpp</keyword> + <keyword>mldivide</keyword> + <keyword>mlock</keyword> + <keyword>mod</keyword> + <keyword>mode</keyword> + <keyword>more</keyword> + <keyword>movefile</keyword> + <keyword>mrdivide</keyword> + <keyword>mtimes</keyword> + <keyword>mu2lin</keyword> + <keyword>munlock</keyword> + <keyword>NA</keyword> + <keyword>namelengthmax</keyword> + <keyword>narg(in|out)</keyword> + <keyword>narg(out)?chk</keyword> + <keyword>nchoosek</keyword> + <keyword>ndgrid</keyword> + <keyword>ndims</keyword> + <keyword>ne</keyword> + <keyword>newplot</keyword> + <keyword>nextpow2</keyword> + <keyword>nnz</keyword> + <keyword>nonzeros</keyword> + <keyword>norm</keyword> + <keyword>normest</keyword> + <keyword>not</keyword> + <keyword>now</keyword> + <keyword>nthroot</keyword> + <keyword>null</keyword> + <keyword>num2(cell|hex|str)</keyword> + <keyword>numel</keyword> + <keyword>nzmax</keyword> + <keyword>onCleanup</keyword> + <keyword>ones</keyword> + <keyword>optim(get|set)</keyword> + <keyword>or</keyword> + <keyword>orderfields</keyword> + <keyword>orient</keyword> + <keyword>orth</keyword> + <keyword>pack</keyword> + <keyword>pareto</keyword> + <keyword>pascal</keyword> + <keyword>patch</keyword> + <keyword>path</keyword> + <keyword>pathsep</keyword> + <keyword>pause</keyword> + <keyword>pbaspect</keyword> + <keyword>pcg</keyword> + <keyword>pchip</keyword> + <keyword>pcolor</keyword> + <keyword>peaks</keyword> + <keyword>perl</keyword> + <keyword>perms</keyword> + <keyword>permute</keyword> + <keyword>pi</keyword> + <keyword>pie</keyword> + <keyword>pie3</keyword> + <keyword>pinv</keyword> + <keyword>pkg</keyword> + <keyword>planerot</keyword> + <keyword>plot(3|matrix|yy)?</keyword> + <keyword>pol2cart</keyword> + <keyword>polar</keyword> + <keyword>poly(der(inv)?|fit|int|val|valm)?</keyword> + <keyword>polyarea</keyword> + <keyword>pow2</keyword> + <keyword>power</keyword> + <keyword>ppval</keyword> + <keyword>primes</keyword> + <keyword>print(f)?</keyword> + <keyword>print_usage</keyword> + <keyword>prod</keyword> + <keyword>psi</keyword> + <keyword>pwd</keyword> + <keyword>qr(delete|insert|update)?</keyword> + <keyword>quad(gk|l|v)?</keyword> + <keyword>quit</keyword> + <keyword>quiver(3)?</keyword> + <keyword>qz</keyword> + <keyword>rand(i|n|perm)?</keyword> + <keyword>rank</keyword> + <keyword>rat(s)?</keyword> + <keyword>rcond</keyword> + <keyword>rdivide</keyword> + <keyword>real(log|max|min|pow|sqrt)?</keyword> + <keyword>record</keyword> + <keyword>rectint</keyword> + <keyword>refresh</keyword> + <keyword>refreshdata</keyword> + <keyword>regexp(i|rep|translate)?</keyword> + <keyword>rehash</keyword> + <keyword>rem</keyword> + <keyword>rename</keyword> + <keyword>repmat</keyword> + <keyword>reset</keyword> + <keyword>reshape</keyword> + <keyword>residue</keyword> + <keyword>restoredefaultpath</keyword> + <keyword>rgb2(hsv|ind)</keyword> + <keyword>ribbon</keyword> + <keyword>rmdir</keyword> + <keyword>rmfield</keyword> + <keyword>rmpath</keyword> + <keyword>roots</keyword> + <keyword>rose</keyword> + <keyword>rosser</keyword> + <keyword>rot90</keyword> + <keyword>round</keyword> + <keyword>rows</keyword> + <keyword>rref</keyword> + <keyword>rsf2csf</keyword> + <keyword>run</keyword> + <keyword>save(as|obj|path)?</keyword> + <keyword>scatter(3)?</keyword> + <keyword>schur</keyword> + <keyword>sec(d|h)?</keyword> + <keyword>semilog(x|y)</keyword> + <keyword>set</keyword> + <keyword>setdiff</keyword> + <keyword>setenv</keyword> + <keyword>setfield</keyword> + <keyword>setxor</keyword> + <keyword>shading</keyword> + <keyword>shg</keyword> + <keyword>shiftdim</keyword> + <keyword>sign</keyword> + <keyword>sin(d|h)?</keyword> + <keyword>size</keyword> + <keyword>slice</keyword> + <keyword>sort</keyword> + <keyword>sortrows</keyword> + <keyword>spalloc</keyword> + <keyword>sparse</keyword> + <keyword>spaugment</keyword> + <keyword>spconvert</keyword> + <keyword>spdiags</keyword> + <keyword>specular</keyword> + <keyword>speye</keyword> + <keyword>spfun</keyword> + <keyword>sph2cart</keyword> + <keyword>sphere</keyword> + <keyword>spinmap</keyword> + <keyword>spline</keyword> + <keyword>spones</keyword> + <keyword>spparms</keyword> + <keyword>sprand(n|sym)?</keyword> + <keyword>sprank</keyword> + <keyword>sprintf</keyword> + <keyword>spy</keyword> + <keyword>sqrt(m)?</keyword> + <keyword>squeeze</keyword> + <keyword>sscanf</keyword> + <keyword>stairs</keyword> + <keyword>std</keyword> + <keyword>stem(3)?</keyword> + <keyword>str(cat|(n)?cmp(i)?|find|just|match|rep|tok|trim)</keyword> + <keyword>str2(double|func|mat|num)</keyword> + <keyword>strread</keyword> + <keyword>struct</keyword> + <keyword>struct2cell</keyword> + <keyword>structfun</keyword> + <keyword>strvcat</keyword> + <keyword>sub2ind</keyword> + <keyword>subplot</keyword> + <keyword>subsasgn</keyword> + <keyword>subsindex</keyword> + <keyword>subspace</keyword> + <keyword>subsref</keyword> + <keyword>substruct</keyword> + <keyword>sum</keyword> + <keyword>superiorto</keyword> + <keyword>surf(ace|c|l|norm)?</keyword> + <keyword>svd</keyword> + <keyword>svds</keyword> + <keyword>swapbytes</keyword> + <keyword>symamd</keyword> + <keyword>symbfact</keyword> + <keyword>symrcm</keyword> + <keyword>symvar</keyword> + <keyword>system</keyword> + <keyword>tan(d|h)?</keyword> + <keyword>tar</keyword> + <keyword>temp(dir|name)</keyword> + <keyword>text</keyword> + <keyword>textread</keyword> + <keyword>tic</keyword> + <keyword>time</keyword> + <keyword>times</keyword> + <keyword>title</keyword> + <keyword>toc</keyword> + <keyword>toeplitz</keyword> + <keyword>trace</keyword> + <keyword>transpose</keyword> + <keyword>trapz</keyword> + <keyword>treelayout</keyword> + <keyword>treeplot</keyword> + <keyword>tri(mesh|plot|surf)</keyword> + <keyword>tril</keyword> + <keyword>triplequad</keyword> + <keyword>triu</keyword> + <keyword>true</keyword> + <keyword>tsearch(n)?</keyword> + <keyword>type</keyword> + <keyword>typecast</keyword> + <keyword>uigetdir</keyword> + <keyword>uigetfile</keyword> + <keyword>uimenu</keyword> + <keyword>uiputfile</keyword> + <keyword>union</keyword> + <keyword>unique</keyword> + <keyword>unix</keyword> + <keyword>unmkpp</keyword> + <keyword>untar</keyword> + <keyword>unwrap</keyword> + <keyword>unzip</keyword> + <keyword>upper</keyword> + <keyword>url(read|write)</keyword> + <keyword>validatestring</keyword> + <keyword>values</keyword> + <keyword>vander</keyword> + <keyword>var</keyword> + <keyword>vectorize</keyword> + <keyword>ver</keyword> + <keyword>version</keyword> + <keyword>vertcat</keyword> + <keyword>view</keyword> + <keyword>voronoi(n)?</keyword> + <keyword>waitforbuttonpress</keyword> + <keyword>warning</keyword> + <keyword>wav(read|write)</keyword> + <keyword>weekday</keyword> + <keyword>what</keyword> + <keyword>whitebg</keyword> + <keyword>who(s)?</keyword> + <keyword>wilkinson</keyword> + <keyword>xlabel</keyword> + <keyword>xlim</keyword> + <keyword>xor</keyword> + <keyword>ylabel</keyword> + <keyword>ylim</keyword> + <keyword>zeros</keyword> + <keyword>zlabel</keyword> + <keyword>zlim</keyword> + </context> + + <context id="octave" class="no-spell-check"> + <include> + <context ref="def:shebang"/> + <context ref="block-comment"/> + <context ref="line-comment"/> + <context ref="line-continue"/> + <context ref="double-quoted-string"/> + <context ref="single-quoted-string"/> + <context ref="operator"/> + <context ref="data-type"/> + <context ref="function-handle"/> + <context ref="storage-type"/> + <context ref="boolean"/> + <context ref="decimal"/> + <context ref="floating-point-number"/> + <context ref="octal-number"/> + <context ref="hex-number"/> + <context ref="variables"/> + <context ref="reserved-constant"/> + <context ref="package-manager"/> + <context ref="keyword"/> + <context ref="builtin"/> + </include> + </context> + </definitions> +</language> Added: trunk/octave-forge/admin/langfiles/octave.php =================================================================== --- trunk/octave-forge/admin/langfiles/octave.php (rev 0) +++ trunk/octave-forge/admin/langfiles/octave.php 2012-05-22 08:52:30 UTC (rev 10490) @@ -0,0 +1,343 @@ +<?php +/************************************************************************************* + * octave.php + * ----------- + * Author: Juan Pablo Carbajal (car...@if...) + * Copyright: (c) 2012 Juan Pablo Carbajal (http://www.florian-knorn.com) + * Release Version: 1.0.0 + * Date Started: 2012/05/22 + * + * Octave M-file language file for GeSHi. + * Derived from matlab.php by Florian Knorn and octave.lang for GtkSourceView. + * + * CHANGES + * ------- + * 2012/05/22 (1.0.0) + * - First Release + * + * TODO + * ------------------------- + * Instead of keywords use groups for different type of highlight + * http://qbnz.com/highlighter/geshi-doc.html#language-files + * + ************************************************************************************* + * + * This file is part of GeSHi. + * + * GeSHi is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * GeSHi is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GeSHi; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + ************************************************************************************/ + +$language_data = array ( + 'LANG_NAME' => 'GNU/Octave', + 'COMMENT_SINGLE' => array(1=> '#', 2 => '%'), + 'COMMENT_MULTI' => array('#{' => '#}', '%{' => '%}'), + //Octave Strings + 'COMMENT_REGEXP' => array( + 2 => "/(?<![\\w\\)\\]\\}\\.])('[^\\n']*?')/" + ), + 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, + 'QUOTEMARKS' => array('"',"'"), + 'ESCAPE_CHAR' => '', + 'KEYWORDS' => array( + // Data types + 1 => array( + 'cell', 'char ', 'double ', 'uint8', 'uint16', 'uint32', 'uint64', + 'int8','int16', 'int32', 'int64', 'logical ', 'single ', 'struct ' + ), + //Function handle + 2 => array( + GESHI_SEARCH => '(@([A-Za-z_][A-Za-z1-9_]*)?)', + GESHI_REPLACE => '\\1', + GESHI_MODIFIERS => '', + GESHI_BEFORE => '', + GESHI_AFTER => '' + ), + // Storage type + 3 => array( + 'global ', 'persistent ', 'static ' + ), + // Boolean + // false and true can be used as functions too. + // Do not highlight as boolean if followed by parentheses. + 4 => array( + GESHI_SEARCH => '([false|true])(\b(?!(\s)*\())', + GESHI_REPLACE => '\\1', + GESHI_MODIFIERS => '', + GESHI_BEFORE => '', + GESHI_AFTER => '' + ), + // Decimal + 5 => array( + GESHI_SEARCH => '(\b([1-9][0-9]*|0)([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b)', + GESHI_REPLACE => '\\1', + GESHI_MODIFIERS => '', + GESHI_BEFORE => '', + GESHI_AFTER => '' + ), + // Floating point number + 6 => array( + GESHI_SEARCH => '(\b([0-9]+[Ee][-]?[0-9]+|([0-9]*\.[0-9]+|[0-9]+\.)([Ee][-]?[0-9]+)?)[fFlL]?)', + GESHI_REPLACE => '\\1', + GESHI_MODIFIERS => '', + GESHI_BEFORE => '', + GESHI_AFTER => '' + ), + // Octal number + 7 => array( + GESHI_SEARCH => '(\b0[0-7]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b)', + GESHI_REPLACE => '\\1', + GESHI_MODIFIERS => '', + GESHI_BEFORE => '', + GESHI_AFTER => '' + ), + // Hex number + 8 => array( + GESHI_SEARCH => '(\b0[xX][0-9a-fA-F]+([Uu]([Ll]|LL|ll)?|([Ll]|LL|ll)[Uu]?)?\b)', + GESHI_REPLACE => '\\1', + GESHI_MODIFIERS => '', + GESHI_BEFORE => '', + GESHI_AFTER => '' + ), + // Internal variables + 9 => array( + 'ans' + ), + // Reserved constants + // Most of the constants can be used as functions too. Do not highlight + // as constants if followed by parentheses. + 10 => array( + GESHI_SEARCH => '([e|eps|(J|j|I|i)|(Inf|inf)|(NaN|nan)|NA|ones|pi|rand|randn|zeros])(\b(?!(\s)*\())', + GESHI_REPLACE => '\\1', + GESHI_MODIFIERS => '', + GESHI_BEFORE => '', + GESHI_AFTER => '' + ), + // Package manager + 11 => array( + GESHI_SEARCH => '((\b)pkg(?!(\s)*\()(\s)+(((un)?install|(un)?load|list|(global|local)_list|describe|prefix|(re)?build)(\b))?)', + GESHI_REPLACE => '\\1', + GESHI_MODIFIERS => '', + GESHI_BEFORE => '', + GESHI_AFTER => '' + ), + // Reserved words + 12 => array( + 'break ', 'case ', 'catch ', 'continue ', 'do ', 'else ', + 'elseif ','end_try_catch ', 'end_unwind_protect ', 'endfor ', + 'endfunction ', 'endif ', 'endswitch ', 'endwhile ', 'for ', + 'function ', 'if ','otherwise ', 'return ', 'switch ', 'try ', + 'until ', 'unwind_protect ', 'unwind_protect_cleanup ', 'varargin ', + 'varargout ', 'while ' + ), + // Built in + 13 => array( + 'all','any','exist','is','logical','mislocked', + + 'abs','acos','acosh','acot','acoth','acsc','acsch','airy','angle', + 'ans','area','asec','asech','asin','asinh','atan','atan2','atanh', + 'auread','autumn','auwrite','axes','axis','balance','bar','bar3', + 'bar3h','barh','besselh','besseli','besselj','besselk','Bessely', + 'beta','betainc','betaln','bicg','bicgstab','bin2dec','bitand', + 'bitcmp','bitget','bitmax','bitor','bitset','bitshift','bitxor', + 'blkdiag','bone','box','brighten','builtin','bwcontr','calendar', + 'camdolly','camlight','camlookat','camorbit','campan','campos', + 'camproj','camroll','camtarget','camup','camva','camzoom','capture', + 'cart2pol','cart2sph','cat','caxis','cdf2rdf','ceil','cell', + 'cell2struct','celldisp','cellfun','cellplot','cellstr','cgs', + 'char','chol','cholinc','cholupdate','cla','clabel','class','clc', + 'clf','clg','clock','close','colmmd','colorbar','colorcube', + 'colordef','colormap','colperm','comet','comet3','compan','compass', + 'complex','computer','cond','condeig','condest','coneplot','conj', + 'contour','contourc','contourf','contourslice','contrast','conv', + 'conv2','convhull','cool','copper','copyobj','corrcoef','cos', + 'cosh','cot','coth','cov','cplxpair','cputime','cross','csc','csch', + 'cumprod','cumsum','cumtrapz','cylinder','daspect','date','datenum', + 'datestr','datetick','datevec','dbclear','dbcont','dbdown', + 'dblquad','dbmex','dbquit','dbstack','dbstatus','dbstep','dbstop', + 'dbtype','dbup','deblank','dec2bin','dec2hex','deconv','del2', + 'delaunay','det','diag','dialog','diff','diffuse','dlmread', + 'dlmwrite','dmperm','double','dragrect','drawnow','dsearch','eig', + 'eigs','ellipj','ellipke','eomday','eps','erf','erfc','erfcx', + 'erfiny','error','errorbar','errordlg','etime','eval','evalc', + 'evalin','exp','expint','expm','eye','ezcontour','ezcontourf', + 'ezmesh','ezmeshc','ezplot','ezplot3','ezpolar','ezsurf','ezsurfc', + 'factor','factorial','fclose','feather','feof','ferror','feval', + 'fft','fft2','fftshift','fgetl','fgets','fieldnames','figure', + 'fill','fill3','filter','filter2','find','findfigs','findobj', + 'findstr','fix','flag','flipdim','fliplr','flipud','floor','flops', + 'fmin','fmins','fopen','fplot','fprintf','fread','frewind','fscanf', + 'fseek','ftell','full','funm','fwrite','fzero','gallery','gamma', + 'gammainc','gammaln','gca','gcbo','gcd','gcf','gco','get', + 'getfield','ginput','gmres','gradient','gray','graymon','grid', + 'griddata','gsvd','gtext','hadamard','hankel','hdf','helpdlg', + 'hess','hex2dec','hex2num','hidden','hilb','hist','hold','hot', + 'hsv','hsv2rgb','i','ifft','ifft2','ifftn','ifftshift','imag', + 'image','imfinfo','imread','imwrite','ind2sub','Inf','inferiorto', + 'inline','inpolygon','input','inputdlg','inputname','int16', + 'int2str','int32','int8','interp1','interp2','interp3','interpft', + 'interpn','intersect','inv','invhilb','ipermute','isa','ishandle', + 'ismember','isocaps','isonormals','isosurface','j','jet','keyboard', + 'lcm','legend','legendre','light','lighting','lightingangle', + 'lin2mu','line','lines','linspace','listdlg','loadobj','log', + 'log10','log2','loglog','logm','logspace','lower','lscov','lu', + 'luinc','magic','mat2str','material','max','mean','median','menu', + 'menuedit','mesh','meshc','meshgrid','min','mod','msgbox','mu2lin', + 'NaN','nargchk','nargin','nargout','nchoosek','ndgrid','ndims', + 'newplot','nextpow2','nnls','nnz','nonzeros','norm','normest','now', + 'null','num2cell','num2str','nzmax','ode113,','ode15s,','ode23s,', + 'ode23t,','ode23tb','ode45,','odefile','odeget','odeset','ones', + 'orient','orth','pagedlg','pareto','pascal','patch','pause', + 'pbaspect','pcg','pcolor','peaks','perms','permute','pi','pie', + 'pie3','pinv','plot','plot3','plotmatrix','plotyy','pol2cart', + 'polar','poly','polyarea','polyder','polyeig','polyfit','polyval', + 'polyvalm','pow2','primes','print','printdlg','printopt','prism', + 'prod','propedit','qmr','qr','qrdelete','qrinsert','qrupdate', + 'quad','questdlg','quiver','quiver3','qz','rand','randn','randperm', + 'rank','rat','rats','rbbox','rcond','real','realmax','realmin', + 'rectangle','reducepatch','reducevolume','refresh','rem','repmat', + 'reset','reshape','residue','rgb2hsv','rgbplot','ribbon','rmfield', + 'roots','rose','rot90','rotate','rotate3d','round','rref', + 'rrefmovie','rsf2csf','saveobj','scatter','scatter3','schur', + 'script','sec','sech','selectmoveresize','semilogx','semilogy', + 'set','setdiff','setfield','setxor','shading','shg','shiftdim', + 'shrinkfaces','sign','sin','single','sinh','slice','smooth3','sort', + 'sortrows','sound','soundsc','spalloc','sparse','spconvert', + 'spdiags','specular','speye','spfun','sph2cart','sphere','spinmap', + 'spline','spones','spparms','sprand','sprandn','sprandsym','spring', + 'sprintf','sqrt','sqrtm','squeeze','sscanf','stairs','std','stem', + 'stem3','str2double','str2num','strcat','strcmp','strcmpi', + 'stream2','stream3','streamline','strings','strjust','strmatch', + 'strncmp','strrep','strtok','struct','struct2cell','strvcat', + 'sub2ind','subplot','subspace','subvolume','sum','summer', + 'superiorto','surf','surf2patch','surface','surfc','surfl', + 'surfnorm','svd','svds','symmmd','symrcm','symvar','tan','tanh', + 'texlabel','text Create','textread','textwrap','tic','title','toc', + 'toeplitz','trace','trapz','tril','trimesh','trisurf','triu', + 'tsearch','uicontext Create','uicontextmenu','uicontrol', + 'uigetfile','uimenu','uint32','uint8','uiputfile','uiresume', + 'uisetcolor','uisetfont','uiwait Used','union','unique','unwrap', + 'upper','var','varargin','varargout','vectorize','view','viewmtx', + 'voronoi','waitbar','waitforbuttonpress','warndlg','warning', + 'waterfall','wavread','wavwrite','weekday','whitebg','wilkinson', + 'winter','wk1read','wk1write','xlabel','xlim','ylabel','ylim', + 'zeros','zlabel','zlim','zoom', + + 'addpath','cd','clear','copyfile','delete','diary','dir','disp', + 'doc','docopt','echo','edit','fileparts','format','fullfile','help', + 'helpdesk','helpwin','home','inmem','lasterr','lastwarn','length', + 'load','lookfor','ls','matlabrc','matlabroot','mkdir','mlock', + 'more','munlock','open','openvar','pack','partialpath','path', + 'pathtool','profile','profreport','pwd','quit','rmpath','save', + 'saveas','size','tempdir','tempname','type','ver','version','web', + 'what','whatsnew','which','who','whos','workspace' + ) + ), + 'SYMBOLS' => array( + GESHI_SEARCH => "((\.)?\+{1,2}?(?!\+) | (\.)?\-{1,2}?(?!\-) | + (\.)?\*{1,2}?(?!\*) | (\.)?\/(?!\^) | + (\.)?\\(?!\^) | (\.)?\^(?!\^) | + (?<=[0-9a-zA-Z_)\]}])(\.)?' | <=? | + >=? | != | ~= | == | <> | + &{1,2}?(?!&) | \|{1,2}?(?!\|) | ! | ~ | + = | : | ...)", + GESHI_REPLACE => '\\1', + GESHI_MODIFIERS => '', + GESHI_BEFORE => '', + GESHI_AFTER => '' + ), + 'CASE_SENSITIVE' => array( + GESHI_COMMENTS => false, + 1 => false, + 2 => false, + 3 => false, + 4 => false, + 5 => false, + 6 => false, + 7 => false, + 8 => false, + 9 => false, + 10 => false, + 11 => false, + 12 => false, + 13 => false + ), + 'STYLES' => array( + 'KEYWORDS' => array( + 1 => 'color: #0000FF;', + 2 => 'color: #0000FF;' + ), + 'COMMENTS' => array( + 1 => 'color: #228B22;', + 2 => 'color:#A020F0;', + 3 => 'color:#A020F0;' + 4 => 'color:#A020F0;' + 5 => 'color:#A020F0;' + 6 => 'color:#A020F0;' + 7 => 'color:#A020F0;' + 8 => 'color:#A020F0;' + 9 => 'color:#A020F0;' + 10 => 'color:#A020F0;' + 11 => 'color:#A020F0;' + 12 => 'color:#A020F0;' + 13 => 'color:#A020F0;' + ), + 'ESCAPE_CHAR' => array( + 0 => '' + ), + 'BRACKETS' => array( + 0 => 'color: #080;' + ), + 'STRINGS' => array( + //0 => 'color: #A020F0;' + ), + 'NUMBERS' => array( + 0 => 'color: #33f;' + ), + 'METHODS' => array( + 1 => '', + 2 => '' + ), + 'SYMBOLS' => array( + 0 => 'color: #080;' + ), + 'REGEXPS' => array( + 0 => 'color: #33f;' + ), + 'SCRIPT' => array( + 0 => '' + ) + ), + 'URLS' => array( + 1 => '', + 2 => '' + ), +// 'OOLANG' => true, +// 'OBJECT_SPLITTERS' => array( +// 1 => '.', +// 2 => '::' +// ), + 'REGEXPS' => array( + //Complex numbers + 0 => '(?<![\\w\\/])[+-]?[\\d]*([\\d]\\.|\\.[\\d])?[\\d]*[ij](?![\\w]|\<DOT>html)' + ), + 'STRICT_MODE_APPLIES' => GESHI_NEVER, + 'SCRIPT_DELIMITERS' => array( + ), + 'HIGHLIGHT_STRICT_BLOCK' => array( + ) +); + +?> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <par...@us...> - 2012-05-22 08:10:14
|
Revision: 10489 http://octave.svn.sourceforge.net/octave/?rev=10489&view=rev Author: paramaniac Date: 2012-05-22 08:10:02 +0000 (Tue, 22 May 2012) Log Message: ----------- control-devel: compute initial state vector for arx models (in state-space, of course) Modified Paths: -------------- trunk/octave-forge/extra/control-devel/devel/DestillationMEarx.m trunk/octave-forge/extra/control-devel/devel/HeatingSystem.m trunk/octave-forge/extra/control-devel/devel/LakeErieARX.m trunk/octave-forge/extra/control-devel/inst/arx.m trunk/octave-forge/extra/control-devel/src/devel_slicot_functions.cc Added Paths: ----------- trunk/octave-forge/extra/control-devel/src/slib01cd.cc Modified: trunk/octave-forge/extra/control-devel/devel/DestillationMEarx.m =================================================================== --- trunk/octave-forge/extra/control-devel/devel/DestillationMEarx.m 2012-05-22 06:31:46 UTC (rev 10488) +++ trunk/octave-forge/extra/control-devel/devel/DestillationMEarx.m 2012-05-22 08:10:02 UTC (rev 10489) @@ -71,14 +71,18 @@ dat = iddata (Y, U) -[sys, x0] = ident (dat, 5, 4) % s=5, n=4 +[sys, x0] = moen4 (dat, 's', 5, 'n', 4) % s=5, n=4 sys2 = arx (dat, 4, 4); +[sys2, x02] = arx (dat, 4, 4); x0=x0{1}; +x02=x02{1}; [y, t] = lsim (sys, U_dest, [], x0); -[y2, t2] = lsim (sys(:, 1:5), U_dest); +%[y2, t2] = lsim (sys2(:, 1:5), U_dest); +[y2, t2] = lsim (sys2, U_dest, [], x02); + % ARX has no initial conditions, therefore the bad results err = norm (Y_dest - y, 1) / norm (Y_dest, 1) Modified: trunk/octave-forge/extra/control-devel/devel/HeatingSystem.m =================================================================== --- trunk/octave-forge/extra/control-devel/devel/HeatingSystem.m 2012-05-22 06:31:46 UTC (rev 10488) +++ trunk/octave-forge/extra/control-devel/devel/HeatingSystem.m 2012-05-22 08:10:02 UTC (rev 10489) @@ -76,11 +76,14 @@ % s=15, n=7 [sys1, x0] = moen4 (dat, 's', 15, 'n', 7) -sys2 = arx (dat, 7, 7) % normally na = nb +%sys2 = arx (dat, 7, 7) % normally na = nb +[sys2, x02] = arx (dat, 7, 7); [y1, t1] = lsim (sys1, U, [], x0); -[y2, t] = lsim (sys2(:, 1), U); +%[y2, t] = lsim (sys2(:, 1), U); +[y2, t] = lsim (sys2, U, [], x02); + err1 = norm (Y - y1, 1) / norm (Y, 1) err2 = norm (Y - y2, 1) / norm (Y, 1) Modified: trunk/octave-forge/extra/control-devel/devel/LakeErieARX.m =================================================================== --- trunk/octave-forge/extra/control-devel/devel/LakeErieARX.m 2012-05-22 06:31:46 UTC (rev 10488) +++ trunk/octave-forge/extra/control-devel/devel/LakeErieARX.m 2012-05-22 08:10:02 UTC (rev 10489) @@ -76,14 +76,18 @@ 'outname', {'a. dissolved oxygen'; 'b. algae'}) -[sys, x0] = ident (dat, 5, 4) % s=5, n=4 -sys2 = arx (dat, 4, 4) +[sys, x0] = moen4 (dat, 's', 5, 'n', 4) % s=5, n=4 +% sys2 = arx (dat, 4, 4) +[sys2, x02] = arx (dat, 4, 4) x0=x0{1}; +x02=x02{1}; [y, t] = lsim (sys, U_erie, [], x0); -[y2, t2] = lsim (sys2(:, 1:5), U_erie); +% [y2, t2] = lsim (sys2(:, 1:5), U_erie); +[y2, t2] = lsim (sys2, U_erie, [], x02); + err = norm (Y_erie - y, 1) / norm (Y_erie, 1) err2 = norm (Y_erie - y2, 1) / norm (Y_erie, 1) Modified: trunk/octave-forge/extra/control-devel/inst/arx.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/arx.m 2012-05-22 06:31:46 UTC (rev 10488) +++ trunk/octave-forge/extra/control-devel/inst/arx.m 2012-05-22 08:10:02 UTC (rev 10489) @@ -24,7 +24,7 @@ ## Created: April 2012 ## Version: 0.1 -function sys = arx (dat, na, nb) +function [sys, varargout] = arx (dat, na, nb) ## TODO: delays @@ -101,6 +101,17 @@ ## the corresponding transfer function has common row denominators. sys = filt (num, den, tsam); + + if (nargout > 1) + sys = prescale (ss (sys(:,1:m))); + x0 = slib01cd (Y, U, sys.a, sys.b, sys.c, sys.d, 0.0) + ## return x0 as vector for single-experiment data + ## instead of a cell containing one vector + if (numel (x0) == 1) + x0 = x0{1}; + endif + varargout{1} = x0; + endif endfunction Modified: trunk/octave-forge/extra/control-devel/src/devel_slicot_functions.cc =================================================================== --- trunk/octave-forge/extra/control-devel/src/devel_slicot_functions.cc 2012-05-22 06:31:46 UTC (rev 10488) +++ trunk/octave-forge/extra/control-devel/src/devel_slicot_functions.cc 2012-05-22 08:10:02 UTC (rev 10489) @@ -1,6 +1,7 @@ -// #include "slib01ad.cc" // preprocess the input-output data -#include "slident.cc" // system identification -#include "slitest.cc" // debug system identification +// #include "slib01ad.cc" // preprocess the input-output data +#include "slident.cc" // system identification +#include "slib01cd.cc" // compute initial state vector +// #include "slitest.cc" // debug system identification #include "slident_a.cc" #include "slident_b.cc" #include "slident_c.cc" \ No newline at end of file Added: trunk/octave-forge/extra/control-devel/src/slib01cd.cc =================================================================== --- trunk/octave-forge/extra/control-devel/src/slib01cd.cc (rev 0) +++ trunk/octave-forge/extra/control-devel/src/slib01cd.cc 2012-05-22 08:10:02 UTC (rev 10489) @@ -0,0 +1,200 @@ +/* + +Copyright (C) 2012 Lukas F. Reichlin + +This file is part of LTI Syncope. + +LTI Syncope is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +LTI Syncope is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with LTI Syncope. If not, see <http://www.gnu.org/licenses/>. + +Compute initial state vector x0 +Uses IB01CD by courtesy of NICONET e.V. +<http://www.slicot.org> + +Author: Lukas Reichlin <luk...@gm...> +Created: May 2012 +Version: 0.1 + +*/ + +#include <octave/oct.h> +#include <octave/f77-fcn.h> +#include <octave/Cell.h> +#include "common.h" + +extern "C" +{ + int F77_FUNC (ib01cd, IB01CD) + (char& JOBX0, char& COMUSE, char& JOB, + int& N, int& M, int& L, + int& NSMP, + double* A, int& LDA, + double* B, int& LDB, + double* C, int& LDC, + double* D, int& LDD, + double* U, int& LDU, + double* Y, int& LDY, + double* X0, + double* V, int& LDV, + double& TOL, + int* IWORK, + double* DWORK, int& LDWORK, + int& IWARN, int& INFO); +} + +// PKG_ADD: autoload ("slib01cd", "devel_slicot_functions.oct"); +DEFUN_DLD (slib01cd, args, nargout, + "-*- texinfo -*-\n\ +Slicot IB01CD Release 5.0\n\ +No argument checking.\n\ +For internal use only.") +{ + int nargin = args.length (); + octave_value_list retval; + + if (nargin != 7) + { + print_usage (); + } + else + { + // arguments in + char jobx0 = 'X'; + char comuse = 'U'; + char jobbd = 'D'; + + const Cell y_cell = args(0).cell_value (); + const Cell u_cell = args(1).cell_value (); + + Matrix a = args(2).matrix_value (); + Matrix b = args(3).matrix_value (); + Matrix c = args(4).matrix_value (); + Matrix d = args(5).matrix_value (); + + double rcond = args(6).double_value (); + double tol_c = rcond; + + int n = a.rows (); // n: number of states + int m = b.columns (); // m: number of inputs + int l = c.rows (); // l: number of outputs + + int lda = max (1, n); + int ldb = max (1, n); + int ldc = max (1, l); + int ldd = max (1, l); + + // m and l are equal for all experiments, checked by iddata class + int n_exp = y_cell.nelem (); // number of experiments + + + // arguments out + Cell x0_cell (n_exp, 1); // cell of initial state vectors x0 + + // repeat for every experiment in the dataset + // compute individual initial state vector x0 for every experiment + for (int i = 0; i < n_exp; i++) + { + Matrix y = y_cell.elem(i).matrix_value (); + Matrix u = u_cell.elem(i).matrix_value (); + + int nsmp = y.rows (); // nsmp: number of samples + int ldv = max (1, n); + + int ldu; + + if (m == 0) + ldu = 1; + else // m > 0 + ldu = nsmp; + + int ldy = nsmp; + + // arguments out + ColumnVector x0 (n); + Matrix v (ldv, n); + + // workspace + int liwork_c = n; // if JOBX0 = 'X' and COMUSE <> 'C' + int ldwork_c; + int t = nsmp; + + int ldw1_c = 2; + int ldw2_c = t*l*(n + 1) + 2*n + max (2*n*n, 4*n); + int ldw3_c = n*(n + 1) + 2*n + max (n*l*(n + 1) + 2*n*n + l*n, 4*n); + + ldwork_c = ldw1_c + n*( n + m + l ) + max (5*n, ldw1_c, min (ldw2_c, ldw3_c)); + + OCTAVE_LOCAL_BUFFER (int, iwork_c, liwork_c); + OCTAVE_LOCAL_BUFFER (double, dwork_c, ldwork_c); + + // error indicators + int iwarn_c = 0; + int info_c = 0; + + // SLICOT routine IB01CD + F77_XFCN (ib01cd, IB01CD, + (jobx0, comuse, jobbd, + n, m, l, + nsmp, + a.fortran_vec (), lda, + b.fortran_vec (), ldb, + c.fortran_vec (), ldc, + d.fortran_vec (), ldd, + u.fortran_vec (), ldu, + y.fortran_vec (), ldy, + x0.fortran_vec (), + v.fortran_vec (), ldv, + tol_c, + iwork_c, + dwork_c, ldwork_c, + iwarn_c, info_c)); + + + if (f77_exception_encountered) + error ("slib01cd: exception in SLICOT subroutine IB01CD"); + + static const char* err_msg_c[] = { + "0: OK", + "1: the QR algorithm failed to compute all the " + "eigenvalues of the matrix A (see LAPACK Library " + "routine DGEES); the locations DWORK(i), for " + "i = g+1:g+N*N, contain the partially converged " + "Schur form", + "2: the singular value decomposition (SVD) algorithm did " + "not converge"}; + + static const char* warn_msg_c[] = { + "0: OK", + "1: warning message not specified", + "2: warning message not specified", + "3: warning message not specified", + "4: the least squares problem to be solved has a " + "rank-deficient coefficient matrix", + "5: warning message not specified", + "6: the matrix A is unstable; the estimated x(0) " + "and/or B and D could be inaccurate"}; + + + error_msg ("slib01cd", info_c, 2, err_msg_c); + warning_msg ("slib01cd", iwarn_c, 6, warn_msg_c); + + x0_cell.elem(i) = x0; // add x0 from the current experiment to cell of initial state vectors + } + + + // return values + retval(0) = x0_cell; + } + + return retval; +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <par...@us...> - 2012-05-22 06:31:56
|
Revision: 10488 http://octave.svn.sourceforge.net/octave/?rev=10488&view=rev Author: paramaniac Date: 2012-05-22 06:31:46 +0000 (Tue, 22 May 2012) Log Message: ----------- control-devel: increase workspace for better efficiency, add comments Modified Paths: -------------- trunk/octave-forge/extra/control-devel/src/slident.cc Modified: trunk/octave-forge/extra/control-devel/src/slident.cc =================================================================== --- trunk/octave-forge/extra/control-devel/src/slident.cc 2012-05-22 05:59:21 UTC (rev 10487) +++ trunk/octave-forge/extra/control-devel/src/slident.cc 2012-05-22 06:31:46 UTC (rev 10488) @@ -180,7 +180,7 @@ else ctrl = 'N'; - + // m and l are equal for all experiments, checked by iddata class int n_exp = y_cell.nelem (); // number of experiments int m = u_cell.elem(0).columns (); // m: number of inputs int l = y_cell.elem(0).columns (); // l: number of outputs @@ -201,6 +201,7 @@ ColumnVector sv (l*nobr); + // repeat for every experiment in the dataset for (int i = 0; i < n_exp; i++) { if (n_exp == 1) @@ -215,13 +216,13 @@ Matrix y = y_cell.elem(i).matrix_value (); Matrix u = u_cell.elem(i).matrix_value (); - //int m = u.columns (); // m: number of inputs - //int l = y.columns (); // l: number of outputs - int nsmp = y.rows (); // nsmp: number of samples - nsmpl += nsmp; // y.rows == u.rows is checked by iddata class - // TODO: check minimal nsmp size - + // int m = u.columns (); // m: number of inputs + // int l = y.columns (); // l: number of outputs + int nsmp = y.rows (); // nsmp: number of samples in the current experiment + nsmpl += nsmp; // nsmpl: total number of samples of all experiments + + // minimal nsmp size checked by __slicot_identification__.m if (batch == 'O') { if (nsmp < 2*(m+l+1)*nobr - 1) @@ -255,6 +256,7 @@ // TODO: Handle 'k' for DWORK int ldwork_a; + int ns = nsmp - 2*nobr + 1; if (alg == 'C') { @@ -290,7 +292,7 @@ } else // (alg == 'Q') { - int ns = nsmp - 2*nobr + 1; + // int ns = nsmp - 2*nobr + 1; if (ldr >= ns && batch == 'F') { @@ -313,38 +315,33 @@ } } -/* -IB01AD.f Lines 438-445 -C FURTHER COMMENTS -C -C For ALG = 'Q', BATCH = 'O' and LDR < NS, or BATCH <> 'O', the -C calculations could be rather inefficient if only minimal workspace -C (see argument LDWORK) is provided. It is advisable to provide as -C much workspace as possible. Almost optimal efficiency can be -C obtained for LDWORK = (NS+2)*(2*(M+L)*NOBR), assuming that the -C cache size is large enough to accommodate R, U, Y, and DWORK. -*/ + /* + IB01AD.f Lines 438-445 + C FURTHER COMMENTS + C + C For ALG = 'Q', BATCH = 'O' and LDR < NS, or BATCH <> 'O', the + C calculations could be rather inefficient if only minimal workspace + C (see argument LDWORK) is provided. It is advisable to provide as + C much workspace as possible. Almost optimal efficiency can be + C obtained for LDWORK = (NS+2)*(2*(M+L)*NOBR), assuming that the + C cache size is large enough to accommodate R, U, Y, and DWORK. + */ -// warning ("==================== ldwork_a before: %d =====================", ldwork_a); -// ldwork_a = (ns+2)*(2*(m+l)*nobr); -//////////ldwork_a = max (ldwork_a, (ns+2)*(2*(m+l)*nobr)); -// ldwork_a *= 3; -// warning ("==================== ldwork_a after: %d =====================", ldwork_a); + ldwork_a = max (ldwork_a, (ns+2)*(2*(m+l)*nobr)); + /* + IB01AD.f Lines 291-195: + c the workspace used for alg = 'q' is + c ldrwrk*2*(m+l)*nobr + 4*(m+l)*nobr, + c where ldrwrk = ldwork/(2*(m+l)*nobr) - 2; recommended + c value ldrwrk = ns, assuming a large enough cache size. + c for good performance, ldwork should be larger. -/* -IB01AD.f Lines 291-195: -c the workspace used for alg = 'q' is -c ldrwrk*2*(m+l)*nobr + 4*(m+l)*nobr, -c where ldrwrk = ldwork/(2*(m+l)*nobr) - 2; recommended -c value ldrwrk = ns, assuming a large enough cache size. -c for good performance, ldwork should be larger. + somehow ldrwrk and ldwork must have been mixed up here -somehow ldrwrk and ldwork must have been mixed up here + */ -*/ - OCTAVE_LOCAL_BUFFER (int, iwork_a, liwork_a); OCTAVE_LOCAL_BUFFER (double, dwork_a, ldwork_a); @@ -609,8 +606,10 @@ char jobbd = 'D'; // arguments out - Cell x0_cell (n_exp, 1); - + Cell x0_cell (n_exp, 1); // cell of initial state vectors x0 + + // repeat for every experiment in the dataset + // compute individual initial state vector x0 for every experiment for (int i = 0; i < n_exp; i++) { Matrix y = y_cell.elem(i).matrix_value (); @@ -628,7 +627,7 @@ int ldy = nsmp; - + // arguments out ColumnVector x0 (n); Matrix v (ldv, n); @@ -697,7 +696,7 @@ error_msg ("ident: IB01CD", info_c, 2, err_msg_c); warning_msg ("ident: IB01CD", iwarn_c, 6, warn_msg_c); - x0_cell.elem(i) = x0; + x0_cell.elem(i) = x0; // add x0 from the current experiment to cell of initial state vectors } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <par...@us...> - 2012-05-22 05:59:27
|
Revision: 10487 http://octave.svn.sourceforge.net/octave/?rev=10487&view=rev Author: paramaniac Date: 2012-05-22 05:59:21 +0000 (Tue, 22 May 2012) Log Message: ----------- control-devel: also test initial state vector (2) Modified Paths: -------------- trunk/octave-forge/extra/control-devel/inst/moen4.m Modified: trunk/octave-forge/extra/control-devel/inst/moen4.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/moen4.m 2012-05-22 05:46:13 UTC (rev 10486) +++ trunk/octave-forge/extra/control-devel/inst/moen4.m 2012-05-22 05:59:21 UTC (rev 10487) @@ -287,6 +287,13 @@ %! -0.014211 %! 0.500073 ]; # X0e is not from SLICOT %! +%! ## The SLICOT test for IB01CD uses COMUSE=C, not COMUSE=U. +%! ## This means that they don't use the matrices B and D +%! ## computed by IB01BD. They use only A and C from IB01BD, +%! ## while B and D are from SLICOT routine IB01CD. +%! ## Therefore they get slightly different matrices B and D +%! ## and finally a different initial state vector X0. +%! %!assert (SYS.A, Ae, 1e-4); %!assert (SYS.B, Be, 1e-4); %!assert (SYS.C, Ce, 1e-4); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <par...@us...> - 2012-05-22 05:46:19
|
Revision: 10486 http://octave.svn.sourceforge.net/octave/?rev=10486&view=rev Author: paramaniac Date: 2012-05-22 05:46:13 +0000 (Tue, 22 May 2012) Log Message: ----------- control-devel: also test initial state vector Modified Paths: -------------- trunk/octave-forge/extra/control-devel/inst/moen4.m Modified: trunk/octave-forge/extra/control-devel/inst/moen4.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/moen4.m 2012-05-22 02:02:32 UTC (rev 10485) +++ trunk/octave-forge/extra/control-devel/inst/moen4.m 2012-05-22 05:46:13 UTC (rev 10486) @@ -40,7 +40,7 @@ endfunction -%!shared SYS, X0, INFO, Ae, Be, Ce, De, Ke, Qe, Rye, Se +%!shared SYS, X0, INFO, Ae, Be, Ce, De, Ke, Qe, Rye, Se, X0e %! %! Y = [ 4.7661 5.5451 5.8503 5.3766 4.8833 5.4865 3.5378 5.3155 6.0530 4.3729 %! 4.7637 5.1886 5.9236 5.6818 4.8858 5.1495 3.5549 5.5329 6.0799 4.7417 @@ -282,6 +282,11 @@ %! 0.0008 %! -0.0005 ]; %! +%! X0e = [ -11.496422 +%! -0.718576 +%! -0.014211 +%! 0.500073 ]; # X0e is not from SLICOT +%! %!assert (SYS.A, Ae, 1e-4); %!assert (SYS.B, Be, 1e-4); %!assert (SYS.C, Ce, 1e-4); @@ -290,3 +295,4 @@ %!assert (INFO.Q, Qe, 1e-4); %!assert (INFO.Ry, Rye, 1e-4); %!assert (INFO.S, Se, 1e-4); +%!assert (X0, X0e, 1e-4); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <be...@us...> - 2012-05-22 02:02:39
|
Revision: 10485 http://octave.svn.sourceforge.net/octave/?rev=10485&view=rev Author: benjf5 Date: 2012-05-22 02:02:32 +0000 (Tue, 22 May 2012) Log Message: ----------- Added cubicwgt and the wavelet coefficient functions. Added Paths: ----------- trunk/octave-forge/extra/lssa/cubicwgt.m trunk/octave-forge/extra/lssa/nucorrcoeff.m trunk/octave-forge/extra/lssa/nuwaveletcoeff.m Added: trunk/octave-forge/extra/lssa/cubicwgt.m =================================================================== --- trunk/octave-forge/extra/lssa/cubicwgt.m (rev 0) +++ trunk/octave-forge/extra/lssa/cubicwgt.m 2012-05-22 02:02:32 UTC (rev 10485) @@ -0,0 +1,22 @@ +## Copyright (C) 2012 Benjamin Lewis <be...@gm...> +## +## This program is free software; you can redistribute it and/or modify it under +## the terms of the GNU General Public License as published by the Free Software +## Foundation; either version 3 of the License, or (at your option) any later +## version. +## +## This program is distributed in the hope that it will be useful, but WITHOUT +## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +## details. +## +## You should have received a copy of the GNU General Public License along with +## this program; if not, see <http://www.gnu.org/licenses/>. + +## This function implements the windowing function on page 10 of the doc. +## if t is in [-1,1] then the windowed term is a = 1 + ( |t|^2 * ( 2|t| - 3 ) +## else the windowed term is 0. +function a = cubicwgt(t) ## where t is the set of time values + a = abs(t); + a = ifelse( ( a < 1 ), 1 + ( ( a .^ 2 ) .* ( 2 .* a - 3 ) ), a = 0); +endfunction Added: trunk/octave-forge/extra/lssa/nucorrcoeff.m =================================================================== --- trunk/octave-forge/extra/lssa/nucorrcoeff.m (rev 0) +++ trunk/octave-forge/extra/lssa/nucorrcoeff.m 2012-05-22 02:02:32 UTC (rev 10485) @@ -0,0 +1,38 @@ +## Copyright (C) 2012 Benjamin Lewis <be...@gm...> +## +## This program is free software; you can redistribute it and/or modify it under +## the terms of the GNU General Public License as published by the Free Software +## Foundation; either version 3 of the License, or (at your option) any later +## version. +## +## This program is distributed in the hope that it will be useful, but WITHOUT +## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +## details. +## +## You should have received a copy of the GNU General Public License along with +## this program; if not, see <http://www.gnu.org/licenses/>. + +## nucorrcoeff, computes a coefficient of the wavelet correlation of two time series + +function coeff = nucorrcoeff(X1, Y1, X2, Y2, t, o, wgt = cubicwgt, wgtrad = 1) + so = 0.05 * o; + ## The first solution that comes to mind is admittedly slightly ugly and has a data footprint of O(2n) + ## but it is vectorised. + mask = ( abs( X1 - t ) * so ) < wgtrad; + mask = mask .* [ 1 : length(mask) ]; + rx1 = X1(mask); ## I've kept the variable names from the R function here + ry1 = Y1(mask); ## Needs to have a noisy error if length(Y1) != length(X1) -- add this! + mask = ( abs( X2 - t ) * so ) < wgtrad; + mask = mask .* [ 1 : length(mask) ]; + rx2 = X2(mask); + ry2 = Y2(mask); + ## I've used the same mask for all of these as it's an otherwise unimportant variable ... can this leak memory? + length(rx1) ##printing this length is probably used as a warning if 0 is returned; I inculded it + ## in particular to maintain an exact duplicate of the R function. + s = sum( wgt( ( rx1 - t ) .* so ) ) * sum( wgt( ( rx2 - t ) .* so ); + coeff = ifelse( s != 0 , ( sum( wgt( ( rx1 - t ) .* so ) .* exp( i .* o .* rx1 ) .* ry1 ) + * sum( wgt( ( rx2 - t ) .* so ) .* exp( i .* o .* rx2 ) .* ry2 ) ) / s, 0 ); + + +endfunction \ No newline at end of file Added: trunk/octave-forge/extra/lssa/nuwaveletcoeff.m =================================================================== --- trunk/octave-forge/extra/lssa/nuwaveletcoeff.m (rev 0) +++ trunk/octave-forge/extra/lssa/nuwaveletcoeff.m 2012-05-22 02:02:32 UTC (rev 10485) @@ -0,0 +1,27 @@ +## Copyright (C) 2012 Benjamin Lewis <be...@gm...> +## +## This program is free software; you can redistribute it and/or modify it under +## the terms of the GNU General Public License as published by the Free Software +## Foundation; either version 2 of the License, or (at your option) any later +## version. +## +## This program is distributed in the hope that it will be useful, but WITHOUT +## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +## details. +## +## You should have received a copy of the GNU General Public License along with +## this program; if not, see <http://www.gnu.org/licenses/>. + +function coeff = nuwaveletcoeff( X , Y , t , o , wgt = cubicwgt , wgtrad = 1 ) + so = 0.05 .* o; + mask = abs( X - t ) * so < wgtrad; + mask = mask .* [ 1 : length(mask) ]; + rx = X(mask); + ## This was the fastest way to extract a matching subset that I could think of, but it has a complexity O(2n). + ry = Y(mask); + ## Going by the R code, this can use the same mask. + s = sum( wgt( ( X - t ) .* so ) ); + coeff = ifelse( s != 0 , sum( wgt( ( rx - t ) .* so) .* exp( i .* o .* ( rx - t ) ) .* ry ) ./ s , 0 ); + +endfunction \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jpi...@us...> - 2012-05-21 21:39:54
|
Revision: 10484 http://octave.svn.sourceforge.net/octave/?rev=10484&view=rev Author: jpicarbajal Date: 2012-05-21 21:39:48 +0000 (Mon, 21 May 2012) Log Message: ----------- admin: releasePKG removes .svnignore files under UNIX Modified Paths: -------------- trunk/octave-forge/admin/releasePKG.m Modified: trunk/octave-forge/admin/releasePKG.m =================================================================== --- trunk/octave-forge/admin/releasePKG.m 2012-05-21 21:13:04 UTC (rev 10483) +++ trunk/octave-forge/admin/releasePKG.m 2012-05-21 21:39:48 UTC (rev 10484) @@ -69,7 +69,7 @@ % Export from repo outpath = checkpath(parser.Results.outpath); - exported = sprintf([outpath "%s"], pkgname); + exported = sprintf ([outpath "%s"], pkgname); % Repo path svn_repo = checkpath(parser.Results.repopath); @@ -85,6 +85,11 @@ 'to your .octaverc to make it permanent.' "\n\n"], ... parser.Results.repopath, parser.Results.repopath); fflush (stdout); + + % Delete .svnignore files + % This works only for unix + unix (sprintf('find %s -name .svnignore | xargs rm -v',exported)); + end printf("Exported to %s\n", exported); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jpi...@us...> - 2012-05-21 21:13:10
|
Revision: 10483 http://octave.svn.sourceforge.net/octave/?rev=10483&view=rev Author: jpicarbajal Date: 2012-05-21 21:13:04 +0000 (Mon, 21 May 2012) Log Message: ----------- linear-algebra: applying patches from S?\195?\169bastien Villemot. Modified Paths: -------------- trunk/octave-forge/main/linear-algebra/inst/circulant_inv.m trunk/octave-forge/main/linear-algebra/inst/nmf_bpas.m Modified: trunk/octave-forge/main/linear-algebra/inst/circulant_inv.m =================================================================== --- trunk/octave-forge/main/linear-algebra/inst/circulant_inv.m 2012-05-21 20:15:41 UTC (rev 10482) +++ trunk/octave-forge/main/linear-algebra/inst/circulant_inv.m 2012-05-21 21:13:04 UTC (rev 10483) @@ -41,4 +41,4 @@ %!shared v %! v = [1 2 3]'; -%!assert (make_circulant_matrix(circulant_inv(v)), inv(make_circulant_matrix(v)), 10*eps); +%!assert (circulant_make_matrix(circulant_inv(v)), inv(circulant_make_matrix(v)), 10*eps); Modified: trunk/octave-forge/main/linear-algebra/inst/nmf_bpas.m =================================================================== --- trunk/octave-forge/main/linear-algebra/inst/nmf_bpas.m 2012-05-21 20:15:41 UTC (rev 10482) +++ trunk/octave-forge/main/linear-algebra/inst/nmf_bpas.m 2012-05-21 21:13:04 UTC (rev 10483) @@ -653,16 +653,16 @@ %! [W,H,iter,HIS]=nmf_bpas(A,k,'verbose',2); %!test -%! [W,H,iter,HIS]=nmf_bpas(A,k,'verbose',1,'nnls_solver','as'); +%! [W,H,iter,HIS]=nmf_bpas(A,k,'verbose',1,'nnlssolver','as'); %!test %! [W,H,iter,HIS]=nmf_bpas(A,k,'verbose',1,'type','sparse'); %!test -%! [W,H,iter,HIS]=nmf_bpas(A,k,'verbose',1,'type','sparse','nnls_solver','bp','alpha',1.1,'beta',1.3); +%! [W,H,iter,HIS]=nmf_bpas(A,k,'verbose',1,'type','sparse','nnlssolver','bp','alpha',1.1,'beta',1.3); %!test -%! [W,H,iter,HIS]=nmf_bpas(A,k,'verbose',2,'type','plain','w_init',rand(m,k)); +%! [W,H,iter,HIS]=nmf_bpas(A,k,'verbose',2,'type','plain','winit',rand(m,k)); %!demo %! m = 300; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <par...@us...> - 2012-05-21 20:15:48
|
Revision: 10482 http://octave.svn.sourceforge.net/octave/?rev=10482&view=rev Author: paramaniac Date: 2012-05-21 20:15:41 +0000 (Mon, 21 May 2012) Log Message: ----------- control-devel: don't confirm system order if requested Modified Paths: -------------- trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m trunk/octave-forge/extra/control-devel/inst/test_devel.m Modified: trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m 2012-05-21 19:56:13 UTC (rev 10481) +++ trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m 2012-05-21 20:15:41 UTC (rev 10482) @@ -67,6 +67,7 @@ tol = -1.0; % 0; s = []; n = []; + conf = []; ## handle keys and values for k = 1 : 2 : nkv @@ -84,6 +85,8 @@ tol = val; case "rcond" rcond = val; + case "confirm" + conf = logical (val); otherwise warning ("%s: invalid property name '%s' ignored", method, key); endswitch @@ -114,6 +117,9 @@ endif endif + if (! isempty (conf)) + ctrl = ! conf; + endif ## perform system identification [a, b, c, d, q, ry, s, k, x0] = slident (dat.y, dat.u, nobr, n, meth, alg, conct, ctrl, rcond, tol); Modified: trunk/octave-forge/extra/control-devel/inst/test_devel.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/test_devel.m 2012-05-21 19:56:13 UTC (rev 10481) +++ trunk/octave-forge/extra/control-devel/inst/test_devel.m 2012-05-21 20:15:41 UTC (rev 10482) @@ -3,3 +3,5 @@ test @iddata/cat test @iddata/detrend test @iddata/fft + +test moen4 \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <prn...@us...> - 2012-05-21 19:56:19
|
Revision: 10481 http://octave.svn.sourceforge.net/octave/?rev=10481&view=rev Author: prnienhuis Date: 2012-05-21 19:56:13 +0000 (Mon, 21 May 2012) Log Message: ----------- cast int vars to double in Java-based subfuncs as Excel has no integer types. A similar fix for COM/ActiveX is pending. Modified Paths: -------------- trunk/octave-forge/main/io/inst/oct2xls.m Modified: trunk/octave-forge/main/io/inst/oct2xls.m =================================================================== --- trunk/octave-forge/main/io/inst/oct2xls.m 2012-05-21 17:32:29 UTC (rev 10480) +++ trunk/octave-forge/main/io/inst/oct2xls.m 2012-05-21 19:56:13 UTC (rev 10481) @@ -112,7 +112,7 @@ ## 2012-02-27 More range param fixes ## 2012-03-07 Updated texinfo help text -## Last script file update (incl. subfunctions): 2012-02-26 +## Last script file update (incl. subfunctions): 2012-05-21 function [ xls, rstatus ] = oct2xls (obj, xls, wsh=1, crange='', spsh_opts=[]) @@ -483,6 +483,7 @@ ## 2011-11-19 Try-catch added to allow for changed method name for nr of worksheets ## 2012-01-26 Fixed "seealso" help string ## 2012-02-27 Copyright strings updated +## 2012-05-21 "Double" cast added when writing numeric values function [ xls, rstatus ] = oct2jpoi2xls (obj, xls, wsh, crange, spsh_opts) @@ -574,7 +575,11 @@ end_try_catch else cell = row.createCell (kk, typearr(ii,jj)); - cell.setCellValue (obj{ii, jj}); + if (isnumeric (obj{ii, jj})) + cell.setCellValue (double (obj{ii, jj})); + else + cell.setCellValue (obj{ii, jj}); + endif endif endfor endfor @@ -648,6 +653,7 @@ ## 2010-11-12 Moved ptr struct check into main func ## 2012-01-26 Fixed "seealso" help string ## 2012-02-27 Copyright strings updated +## 2012-05-21 "Double" cast added when writing numeric values function [ xls, rstatus ] = oct2jxla2xls (obj, xls, wsh, crange, spsh_opts) @@ -729,7 +735,7 @@ kk = jj + lcol - 2; # JExcelAPI's column count is also 0-based switch typearr(ii, jj) case 1 # Numerical - tmp = java_new ('jxl.write.Number', kk, ll, obj{ii, jj}); + tmp = java_new ('jxl.write.Number', kk, ll, double (obj{ii, jj})); sh.addCell (tmp); case 2 # Boolean tmp = java_new ('jxl.write.Boolean', kk, ll, obj{ii, jj}); @@ -884,7 +890,7 @@ sh.getCell(jj+trow-2, ii+lcol-2).setVal (obj{jj, ii}); # Addr.cnt = 0-based changed = 1; catch - # Cell not existant. Add cell + # Cell not existent. Add cell if ~(typearr(jj, ii) == 5) sh.add (obj{jj, ii}, jj+trow-2, ii+lcol-2); changed = 1; @@ -924,6 +930,7 @@ ## 2012-02-25 Catch stray Java RuntimeException when deleting sheets ## 2012-02-26 Bug fix when adding sheets near L.994 (wrong if-else-end construct). ## 2012-02-27 Copyright strings updated +## 2012-05-21 "Double" cast added when writing numeric values function [ xls, rstatus ] = oct2uno2xls (c_arr, xls, wsh, crange, spsh_opts) @@ -1031,7 +1038,7 @@ XCell = sh.getCellByPosition (lcol+jj-1, trow+ii-1); switch typearr(ii, jj) case 1 # Float - XCell.setValue (c_arr{ii, jj}); + XCell.setValue (double (c_arr{ii, jj})); case 2 # Logical. Convert to float as OOo has no Boolean type XCell.setValue (double (c_arr{ii, jj})); case 3 # String This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <par...@us...> - 2012-05-21 17:32:38
|
Revision: 10480 http://octave.svn.sourceforge.net/octave/?rev=10480&view=rev Author: paramaniac Date: 2012-05-21 17:32:29 +0000 (Mon, 21 May 2012) Log Message: ----------- control-devel: touch up manual Modified Paths: -------------- trunk/octave-forge/extra/control-devel/DESCRIPTION trunk/octave-forge/extra/control-devel/INDEX trunk/octave-forge/extra/control-devel/devel/pdfdoc/control-devel.tex Modified: trunk/octave-forge/extra/control-devel/DESCRIPTION =================================================================== --- trunk/octave-forge/extra/control-devel/DESCRIPTION 2012-05-21 16:11:14 UTC (rev 10479) +++ trunk/octave-forge/extra/control-devel/DESCRIPTION 2012-05-21 17:32:29 UTC (rev 10480) @@ -1,6 +1,6 @@ Name: Control-Devel -Version: 0.1.51 -Date: 2012-02-28 +Version: 0.2.0 +Date: 2012-05-21 Author: Lukas Reichlin <luk...@gm...> Maintainer: Lukas Reichlin <luk...@gm...> Title: Control Systems Developer's Playground Modified: trunk/octave-forge/extra/control-devel/INDEX =================================================================== --- trunk/octave-forge/extra/control-devel/INDEX 2012-05-21 16:11:14 UTC (rev 10479) +++ trunk/octave-forge/extra/control-devel/INDEX 2012-05-21 17:32:29 UTC (rev 10480) @@ -5,15 +5,25 @@ @iddata/cat @iddata/detrend @iddata/diff + @iddata/fft @iddata/get @iddata/horzcat + @iddata/ifft @iddata/merge @iddata/plot @iddata/set @iddata/size @iddata/vertcat System Identification + arx fitfrd + moen4 moesp n4sid - +Overloaded Operators + @iddata/horzcat + @iddata/subsasgn + @iddata/subsref + @iddata/vertcat +Miscellaneous + test_devel \ No newline at end of file Modified: trunk/octave-forge/extra/control-devel/devel/pdfdoc/control-devel.tex =================================================================== --- trunk/octave-forge/extra/control-devel/devel/pdfdoc/control-devel.tex 2012-05-21 16:11:14 UTC (rev 10479) +++ trunk/octave-forge/extra/control-devel/devel/pdfdoc/control-devel.tex 2012-05-21 17:32:29 UTC (rev 10480) @@ -1,13 +1,34 @@ \input texinfo @c -*-texinfo-*- @c %**start of header -@setfilename control.info +@setfilename control-devel.info @settitle Octave Control Systems Package @afourpaper -@set VERSION 0.1.50 +@set VERSION 0.2.0 @finalout @c @afourwide @c %**end of header + +@c The following macro is used for the on-line help system, but we don't +@c want lots of `See also: foo, bar, and baz' strings cluttering the +@c printed manual (that information should be in the supporting text for +@c each group of functions and variables). + +@macro seealso {args} +@iftex +@vskip 2pt +@end iftex +@ifnottex +@c Texinfo @sp should work but in practice produces ugly results for HTML. +@c A simple blank line produces the correct behavior. +@c @sp 1 + +@end ifnottex +@noindent +@strong{See also:} \args\. +@end macro + + @c %*** Start of TITLEPAGE @titlepage @title control-devel @value{VERSION} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <par...@us...> - 2012-05-21 16:11:25
|
Revision: 10479 http://octave.svn.sourceforge.net/octave/?rev=10479&view=rev Author: paramaniac Date: 2012-05-21 16:11:14 +0000 (Mon, 21 May 2012) Log Message: ----------- control-devel: add slicot test to moen4 Modified Paths: -------------- trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m trunk/octave-forge/extra/control-devel/inst/moen4.m Modified: trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m 2012-05-21 15:52:05 UTC (rev 10478) +++ trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m 2012-05-21 16:11:14 UTC (rev 10479) @@ -132,7 +132,7 @@ ## state covariance matrix Q ## output covariance matrix Ry ## state-output cross-covariance matrix S - info = struct ("K", k, "Q", q, "Ry", ry, "S", s) + info = struct ("K", k, "Q", q, "Ry", ry, "S", s); endfunction Modified: trunk/octave-forge/extra/control-devel/inst/moen4.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/moen4.m 2012-05-21 15:52:05 UTC (rev 10478) +++ trunk/octave-forge/extra/control-devel/inst/moen4.m 2012-05-21 16:11:14 UTC (rev 10479) @@ -39,250 +39,254 @@ endfunction -%{ + +%!shared SYS, X0, INFO, Ae, Be, Ce, De, Ke, Qe, Rye, Se %! - - 4.7661 5.5451 5.8503 5.3766 4.8833 5.4865 3.5378 5.3155 6.0530 4.3729 - 4.7637 5.1886 5.9236 5.6818 4.8858 5.1495 3.5549 5.5329 6.0799 4.7417 - 4.8394 4.8833 5.9212 5.8235 4.8931 4.8442 3.4938 5.4450 6.1287 5.0884 - 5.0030 4.6000 5.9773 5.9529 4.7148 4.5414 3.4474 5.3961 6.0799 5.1861 - 5.0176 4.2704 5.7405 6.0628 4.4511 4.2679 3.4401 5.2740 6.1678 5.0372 - 5.0567 4.0384 5.3888 6.0897 4.2337 4.0604 3.4083 5.0274 6.1947 4.7856 - 5.1544 3.8381 5.0005 6.0750 4.0433 3.9602 3.4108 4.7441 6.2362 4.5634 - 5.3619 3.7112 4.8491 6.0262 3.8650 3.7893 3.4523 4.6684 6.0530 4.5341 - 5.4254 3.5915 4.9444 5.9944 3.7576 3.6428 3.6818 4.6513 5.6525 4.7050 - 5.5695 3.5353 5.1739 6.0775 3.6696 3.5256 4.0604 4.5146 5.2740 4.7417 - 5.6818 3.4865 5.3693 5.8577 3.5939 3.4987 4.4413 4.2679 4.8589 4.6489 - 5.7429 3.4767 5.4474 5.7014 3.5475 3.4547 4.8540 4.2606 4.5341 4.4315 - 5.8039 3.4254 5.6037 5.7307 3.5060 3.4083 5.1544 4.2630 4.4560 4.2386 - 5.9187 3.3815 5.7307 5.7844 3.4547 3.3790 5.4254 4.1898 4.6196 4.0652 - 5.8210 3.3693 5.8503 5.8235 3.3986 3.3766 5.5964 4.2777 4.8662 3.9431 - 5.4474 3.3644 5.9798 5.8943 3.3619 3.3619 5.5866 4.6000 5.1177 3.8113 - 5.0616 3.3473 5.9920 5.7624 3.3400 3.3595 5.3546 4.9322 5.1666 3.6916 - 4.6293 3.3815 6.0848 5.4157 3.3742 3.3693 5.0274 5.2838 5.0567 3.6525 - 4.2679 3.4206 5.9407 4.9615 3.5207 3.3986 4.8638 5.5280 5.0030 3.8259 - 4.0115 3.4132 5.8039 4.5952 3.7136 3.5793 4.7612 5.7405 5.0982 4.2240 - 3.8503 3.4523 5.7917 4.3314 3.7576 3.9480 4.5707 5.8748 5.3253 4.4242 - 3.7112 3.6355 5.6037 4.2972 3.7795 4.4120 4.3681 5.9554 5.5671 4.4291 - 3.5695 4.0384 5.2643 4.5829 3.6965 4.5854 4.3974 5.9920 5.4670 4.3192 - 3.5182 4.3754 4.9468 4.8613 3.7771 4.5146 4.5732 5.8455 5.2521 4.1385 - 3.6525 4.7270 4.6196 5.1739 3.8870 4.3436 4.8418 5.5280 4.9468 3.9651 - 3.8186 5.0567 4.5146 5.1666 3.9041 4.1556 5.2032 5.0616 4.8809 3.8870 - 3.8626 5.2985 4.4340 4.9199 3.8503 3.9847 5.4523 4.7344 4.9810 3.8015 - 4.0115 5.5329 4.2850 4.6074 3.9651 4.0433 5.6525 4.5341 5.2252 3.7014 - 4.3534 5.4670 4.1214 4.3705 4.2826 4.3070 5.8552 4.5341 5.4596 3.6403 - 4.7050 5.1959 3.9456 4.1825 4.5219 4.4218 5.9065 4.6977 5.7234 3.7673 - 5.0836 4.8858 3.9847 4.0384 4.7148 4.3534 5.9529 4.7441 5.7917 4.1507 - 5.3449 4.7637 4.2191 4.1458 4.9712 4.2240 5.8284 4.6196 5.9065 4.6489 - 5.2740 4.8760 4.5463 4.4315 5.2203 4.0530 5.7917 4.6440 5.9920 4.9908 - 5.1275 5.0420 4.8735 4.5561 5.5329 3.9407 5.7991 4.8320 5.8357 5.0884 - 4.7612 5.2838 5.1544 4.4804 5.6525 3.8381 5.8137 5.1324 5.5280 5.0225 - 4.4511 5.4914 5.3888 4.3754 5.7820 3.7307 5.8772 5.4108 5.1422 4.7832 - 4.2215 5.5964 5.6135 4.3705 5.9554 3.6525 5.9554 5.6257 4.7759 4.6855 - 4.0457 5.6721 5.8357 4.5585 6.0359 3.6110 5.7820 5.6037 4.4902 4.6660 - 3.8748 5.7722 5.8845 4.8589 6.1190 3.5646 5.5182 5.3155 4.2362 4.7075 - 3.7307 5.8308 5.9554 4.8955 6.1336 3.4963 5.1275 4.9615 4.0237 4.9126 - 3.6623 5.9334 5.7624 4.7417 6.1532 3.4621 4.7637 4.6196 3.8870 5.1959 - 3.5768 5.8992 5.4596 4.7441 6.1922 3.4547 4.4926 4.3583 3.7527 5.4157 - 3.5427 5.9358 5.0616 4.8760 6.1434 3.4254 4.2337 4.1556 3.6818 5.6232 - 3.4792 5.8943 4.7075 5.1055 6.1678 3.3790 4.0115 4.0335 3.8064 5.7405 - 3.4547 5.9187 4.4584 5.2398 5.9920 3.4328 3.8552 3.8870 4.1458 5.8992 - 3.3595 5.9944 4.2679 5.5182 5.6525 3.6232 3.6916 3.7722 4.6000 5.9285 - 3.2985 5.9578 4.0530 5.6525 5.4596 3.9749 3.6355 3.6403 5.0030 6.0506 - 3.2252 6.0311 3.9431 5.7234 5.4376 4.3803 3.8186 3.5329 5.3033 6.1532 - 3.2008 6.0628 3.8259 5.8552 5.3400 4.7148 4.1556 3.4352 5.5524 5.9651 - 3.2252 6.0408 3.9676 5.9627 5.0982 5.0738 4.5903 3.4279 5.6159 5.5866 - 3.2276 6.0970 4.2801 5.9847 4.7856 5.3693 4.9883 3.4230 5.5231 5.3815 - 3.2740 6.1239 4.4804 5.9847 4.4926 5.6037 5.0762 3.3986 5.6110 5.3717 - 3.4572 6.1629 4.4926 6.0555 4.2362 5.7453 4.9077 3.6037 5.7136 5.4865 - 3.8674 6.0408 4.3900 6.0628 4.0677 5.6525 4.6489 4.0237 5.8455 5.5671 - 4.3217 5.8455 4.1971 6.0555 3.9334 5.4010 4.3778 4.4511 5.8992 5.8210 - 4.4926 5.7722 4.1116 6.0701 3.8235 5.0152 4.2166 4.7930 5.9944 5.9138 - 4.4315 5.7991 3.9822 5.7844 3.7307 4.7099 4.2875 4.9029 6.0921 5.9944 - 4.2435 5.9236 3.8674 5.4401 3.6110 4.4169 4.5903 4.7808 6.0921 6.0115 - 4.0506 5.9285 3.7673 5.0567 3.5646 4.2362 4.8467 4.5903 6.1434 5.9993 - 3.8577 6.0018 3.8723 4.9419 3.5500 4.2362 5.1397 4.3363 6.1532 6.0188 - 3.7307 6.0018 4.2362 5.0103 3.5573 4.2484 5.3888 4.1458 6.2337 5.8210 - 3.7917 6.0604 4.6635 5.1348 3.5134 4.2215 5.6892 4.2166 6.1873 5.7282 - 3.9212 5.8821 4.9712 5.3131 3.5158 4.2972 5.8845 4.4340 6.0140 5.7405 - 3.9554 5.5109 5.0665 5.4792 3.6941 4.5903 6.0433 4.7148 5.8357 5.7649 - 3.8479 5.3229 4.9029 5.6232 4.0726 4.8931 6.1703 5.0982 5.7746 5.8821 - 3.7258 5.3717 4.6757 5.5622 4.4804 5.1348 6.2118 5.3595 5.6867 5.9260 - 3.6110 5.4547 4.3925 5.3302 4.7050 5.4279 6.2508 5.5695 5.5378 5.7502 - 3.7160 5.4376 4.0994 5.0103 4.6123 5.3790 6.2093 5.7722 5.3278 5.4157 - 4.0921 5.1593 4.1141 4.6660 4.3851 5.3644 6.0140 5.9212 5.0543 4.9956 - 4.4804 4.9029 4.3265 4.4145 4.2020 5.4523 5.7014 6.0555 4.7002 4.8613 - 4.8149 4.5878 4.6440 4.2020 4.0262 5.5671 5.4694 5.9627 4.3949 4.9029 - 5.0543 4.5024 4.9712 4.0482 3.9041 5.6721 5.4792 5.6428 4.1800 5.1031 - 5.3033 4.5952 5.1593 4.0799 3.7746 5.7698 5.5573 5.4352 4.0433 5.3644 - 5.4865 4.8247 5.3888 4.1898 3.6916 5.8308 5.7282 5.3888 3.8772 5.5964 - 5.6721 5.0640 5.5768 4.1312 3.8455 5.9236 5.8821 5.5378 3.7527 5.7527 - 5.7795 5.2716 5.6525 4.0042 4.2020 5.9651 5.9847 5.6818 3.7282 5.8455 - 5.7991 5.4670 5.8039 3.9163 4.5854 6.0579 5.9016 5.7014 3.8699 5.9285 - 5.6648 5.6159 5.9138 3.9602 4.9029 6.0506 5.5817 5.6159 4.2069 6.0066 - 5.2911 5.5280 5.8870 4.1996 5.2569 6.0726 5.3717 5.6672 4.3558 5.8406 - 4.8809 5.2545 5.7991 4.6245 5.5109 6.1116 5.4181 5.7405 4.4267 5.5182 - 4.5585 4.8833 5.7307 4.8833 5.6403 6.0701 5.5109 5.8039 4.4535 5.1739 - 4.1849 4.5170 5.7624 5.1373 5.8430 5.8967 5.6672 5.8821 4.5219 4.7392 - 3.8894 4.1971 5.8137 5.3790 5.9749 5.7551 5.7917 5.9505 4.3925 4.4584 - 3.7087 4.0018 5.8210 5.6232 5.9358 5.7185 5.6989 6.0726 4.1556 4.4267 - 3.6232 3.8064 5.9285 5.7624 5.8210 5.8210 5.4840 6.1483 3.9651 4.6025 - 3.5695 3.9041 6.0140 5.8333 5.5280 6.0018 5.1544 6.1165 3.8772 4.8223 - 3.7185 3.9236 5.7649 5.6867 5.1715 6.0018 4.9810 6.1776 3.9700 5.1837 - 4.0335 3.8699 5.4132 5.3668 4.8101 5.9016 5.0616 6.2020 4.2582 5.4303 - 4.4120 3.8064 5.0982 5.2252 4.4535 5.5573 5.1959 6.2069 4.4218 5.6525 - 4.6293 3.7209 4.6782 5.2398 4.3803 5.1739 5.3595 5.9920 4.3363 5.8210 - 4.5585 3.8186 4.3729 5.3546 4.5659 4.8003 5.6159 5.5646 4.2997 5.7063 - 4.3949 4.1409 4.3925 5.5085 4.8052 4.4315 5.7624 5.1788 4.3925 5.3693 - 4.1800 4.5292 4.5903 5.5964 5.1251 4.1947 5.8577 4.9981 4.6757 5.0274 - 4.1971 4.8052 4.9199 5.7527 5.3546 4.0066 5.9480 5.0518 4.7612 4.7050 - 4.4315 5.0860 5.0176 5.8748 5.5891 3.8503 5.8357 5.2325 4.6587 4.4145 - 4.7148 5.3400 4.8589 5.9065 5.7649 3.7478 5.7063 5.4840 4.4902 4.1458 - 4.9615 5.5329 4.6757 5.8943 5.9236 3.6428 5.4987 5.6867 4.3070 3.9651 - 5.3009 5.5768 4.6196 5.7429 5.9407 3.5915 5.1886 5.8992 4.1263 4.0335 - 5.5671 5.6672 4.8345 5.4474 5.8577 3.5695 5.1177 5.8699 3.9724 4.3729 - 5.6818 5.7917 5.0909 5.0250 5.6941 3.5280 5.1910 5.9773 4.0775 4.6831 - - - - 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 3.4100 - 3.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 - 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 - 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 - 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 - 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 6.4100 - 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 - 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 - 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 - 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 - 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 - 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 3.4100 - 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 3.4100 - 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 3.4100 - 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 3.4100 - 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 - 3.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 - 3.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 - 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 - 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 - 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 - 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 - 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 - 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 - 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 - 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 - 6.4100 3.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 - 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 - 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 - 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 - 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 - 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 - 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 - 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 - 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 3.4100 3.4100 3.4100 - 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 - 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 - 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 - 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 - 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 - 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 - 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 - 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 - 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 - 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 - 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 - 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 - 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 6.4100 - 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 - 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 - 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 - 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 - 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 - 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 - 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 - 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 - 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 6.4100 - 3.4100 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 - 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 - 3.4100 3.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 - 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 - 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 - 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 - 3.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 - 6.4100 3.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 - 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 - 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 - 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 - 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 - 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 - 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 - 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 - 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 - 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 - 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 - 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 - 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 - 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 - 3.4100 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 - 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 - 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 - 3.4100 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 - 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 - 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 - 6.4100 3.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 - 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 3.4100 6.4100 - 3.4100 3.4100 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 - 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 - 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 - 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 3.4100 - 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 - 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 - 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 - 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 - 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 - 6.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 3.4100 6.4100 - 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 - 3.4100 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 - 3.4100 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 - 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 - -ae = [ 0.8924 0.3887 0.1285 0.1716 - -0.0837 0.6186 -0.6273 -0.4582 - 0.0052 0.1307 0.6685 -0.6755 - 0.0055 0.0734 -0.2148 0.4788 ]; - -ce = [ -0.4442 0.6663 0.3961 0.4102 ]; - -be = [ -0.2142 - -0.1968 - 0.0525 - 0.0361 ]; - -de = [ -0.0041 ]; - -ke = [ -1.9513 - -0.1867 - 0.6348 - -0.3486 ]; - -qe = [ 0.0052 0.0005 -0.0017 0.0009 - 0.0005 0.0000 -0.0002 0.0001 - -0.0017 -0.0002 0.0006 -0.0003 - 0.0009 0.0001 -0.0003 0.0002 ]; - -rye = [ 0.0012 ]; - -se = [ -0.0025 - -0.0002 - 0.0008 - -0.0005 ]; - -assert (a, ae, 1e-4); -assert (b, be, 1e-4); -assert (c, ce, 1e-4); -assert (d, de, 1e-4); -assert (k, ke, 1e-4); -assert (q, qe, 1e-4); -assert (ry, rye, 1e-4); -assert (s, se, 1e-4); -%} +%! Y = [ 4.7661 5.5451 5.8503 5.3766 4.8833 5.4865 3.5378 5.3155 6.0530 4.3729 +%! 4.7637 5.1886 5.9236 5.6818 4.8858 5.1495 3.5549 5.5329 6.0799 4.7417 +%! 4.8394 4.8833 5.9212 5.8235 4.8931 4.8442 3.4938 5.4450 6.1287 5.0884 +%! 5.0030 4.6000 5.9773 5.9529 4.7148 4.5414 3.4474 5.3961 6.0799 5.1861 +%! 5.0176 4.2704 5.7405 6.0628 4.4511 4.2679 3.4401 5.2740 6.1678 5.0372 +%! 5.0567 4.0384 5.3888 6.0897 4.2337 4.0604 3.4083 5.0274 6.1947 4.7856 +%! 5.1544 3.8381 5.0005 6.0750 4.0433 3.9602 3.4108 4.7441 6.2362 4.5634 +%! 5.3619 3.7112 4.8491 6.0262 3.8650 3.7893 3.4523 4.6684 6.0530 4.5341 +%! 5.4254 3.5915 4.9444 5.9944 3.7576 3.6428 3.6818 4.6513 5.6525 4.7050 +%! 5.5695 3.5353 5.1739 6.0775 3.6696 3.5256 4.0604 4.5146 5.2740 4.7417 +%! 5.6818 3.4865 5.3693 5.8577 3.5939 3.4987 4.4413 4.2679 4.8589 4.6489 +%! 5.7429 3.4767 5.4474 5.7014 3.5475 3.4547 4.8540 4.2606 4.5341 4.4315 +%! 5.8039 3.4254 5.6037 5.7307 3.5060 3.4083 5.1544 4.2630 4.4560 4.2386 +%! 5.9187 3.3815 5.7307 5.7844 3.4547 3.3790 5.4254 4.1898 4.6196 4.0652 +%! 5.8210 3.3693 5.8503 5.8235 3.3986 3.3766 5.5964 4.2777 4.8662 3.9431 +%! 5.4474 3.3644 5.9798 5.8943 3.3619 3.3619 5.5866 4.6000 5.1177 3.8113 +%! 5.0616 3.3473 5.9920 5.7624 3.3400 3.3595 5.3546 4.9322 5.1666 3.6916 +%! 4.6293 3.3815 6.0848 5.4157 3.3742 3.3693 5.0274 5.2838 5.0567 3.6525 +%! 4.2679 3.4206 5.9407 4.9615 3.5207 3.3986 4.8638 5.5280 5.0030 3.8259 +%! 4.0115 3.4132 5.8039 4.5952 3.7136 3.5793 4.7612 5.7405 5.0982 4.2240 +%! 3.8503 3.4523 5.7917 4.3314 3.7576 3.9480 4.5707 5.8748 5.3253 4.4242 +%! 3.7112 3.6355 5.6037 4.2972 3.7795 4.4120 4.3681 5.9554 5.5671 4.4291 +%! 3.5695 4.0384 5.2643 4.5829 3.6965 4.5854 4.3974 5.9920 5.4670 4.3192 +%! 3.5182 4.3754 4.9468 4.8613 3.7771 4.5146 4.5732 5.8455 5.2521 4.1385 +%! 3.6525 4.7270 4.6196 5.1739 3.8870 4.3436 4.8418 5.5280 4.9468 3.9651 +%! 3.8186 5.0567 4.5146 5.1666 3.9041 4.1556 5.2032 5.0616 4.8809 3.8870 +%! 3.8626 5.2985 4.4340 4.9199 3.8503 3.9847 5.4523 4.7344 4.9810 3.8015 +%! 4.0115 5.5329 4.2850 4.6074 3.9651 4.0433 5.6525 4.5341 5.2252 3.7014 +%! 4.3534 5.4670 4.1214 4.3705 4.2826 4.3070 5.8552 4.5341 5.4596 3.6403 +%! 4.7050 5.1959 3.9456 4.1825 4.5219 4.4218 5.9065 4.6977 5.7234 3.7673 +%! 5.0836 4.8858 3.9847 4.0384 4.7148 4.3534 5.9529 4.7441 5.7917 4.1507 +%! 5.3449 4.7637 4.2191 4.1458 4.9712 4.2240 5.8284 4.6196 5.9065 4.6489 +%! 5.2740 4.8760 4.5463 4.4315 5.2203 4.0530 5.7917 4.6440 5.9920 4.9908 +%! 5.1275 5.0420 4.8735 4.5561 5.5329 3.9407 5.7991 4.8320 5.8357 5.0884 +%! 4.7612 5.2838 5.1544 4.4804 5.6525 3.8381 5.8137 5.1324 5.5280 5.0225 +%! 4.4511 5.4914 5.3888 4.3754 5.7820 3.7307 5.8772 5.4108 5.1422 4.7832 +%! 4.2215 5.5964 5.6135 4.3705 5.9554 3.6525 5.9554 5.6257 4.7759 4.6855 +%! 4.0457 5.6721 5.8357 4.5585 6.0359 3.6110 5.7820 5.6037 4.4902 4.6660 +%! 3.8748 5.7722 5.8845 4.8589 6.1190 3.5646 5.5182 5.3155 4.2362 4.7075 +%! 3.7307 5.8308 5.9554 4.8955 6.1336 3.4963 5.1275 4.9615 4.0237 4.9126 +%! 3.6623 5.9334 5.7624 4.7417 6.1532 3.4621 4.7637 4.6196 3.8870 5.1959 +%! 3.5768 5.8992 5.4596 4.7441 6.1922 3.4547 4.4926 4.3583 3.7527 5.4157 +%! 3.5427 5.9358 5.0616 4.8760 6.1434 3.4254 4.2337 4.1556 3.6818 5.6232 +%! 3.4792 5.8943 4.7075 5.1055 6.1678 3.3790 4.0115 4.0335 3.8064 5.7405 +%! 3.4547 5.9187 4.4584 5.2398 5.9920 3.4328 3.8552 3.8870 4.1458 5.8992 +%! 3.3595 5.9944 4.2679 5.5182 5.6525 3.6232 3.6916 3.7722 4.6000 5.9285 +%! 3.2985 5.9578 4.0530 5.6525 5.4596 3.9749 3.6355 3.6403 5.0030 6.0506 +%! 3.2252 6.0311 3.9431 5.7234 5.4376 4.3803 3.8186 3.5329 5.3033 6.1532 +%! 3.2008 6.0628 3.8259 5.8552 5.3400 4.7148 4.1556 3.4352 5.5524 5.9651 +%! 3.2252 6.0408 3.9676 5.9627 5.0982 5.0738 4.5903 3.4279 5.6159 5.5866 +%! 3.2276 6.0970 4.2801 5.9847 4.7856 5.3693 4.9883 3.4230 5.5231 5.3815 +%! 3.2740 6.1239 4.4804 5.9847 4.4926 5.6037 5.0762 3.3986 5.6110 5.3717 +%! 3.4572 6.1629 4.4926 6.0555 4.2362 5.7453 4.9077 3.6037 5.7136 5.4865 +%! 3.8674 6.0408 4.3900 6.0628 4.0677 5.6525 4.6489 4.0237 5.8455 5.5671 +%! 4.3217 5.8455 4.1971 6.0555 3.9334 5.4010 4.3778 4.4511 5.8992 5.8210 +%! 4.4926 5.7722 4.1116 6.0701 3.8235 5.0152 4.2166 4.7930 5.9944 5.9138 +%! 4.4315 5.7991 3.9822 5.7844 3.7307 4.7099 4.2875 4.9029 6.0921 5.9944 +%! 4.2435 5.9236 3.8674 5.4401 3.6110 4.4169 4.5903 4.7808 6.0921 6.0115 +%! 4.0506 5.9285 3.7673 5.0567 3.5646 4.2362 4.8467 4.5903 6.1434 5.9993 +%! 3.8577 6.0018 3.8723 4.9419 3.5500 4.2362 5.1397 4.3363 6.1532 6.0188 +%! 3.7307 6.0018 4.2362 5.0103 3.5573 4.2484 5.3888 4.1458 6.2337 5.8210 +%! 3.7917 6.0604 4.6635 5.1348 3.5134 4.2215 5.6892 4.2166 6.1873 5.7282 +%! 3.9212 5.8821 4.9712 5.3131 3.5158 4.2972 5.8845 4.4340 6.0140 5.7405 +%! 3.9554 5.5109 5.0665 5.4792 3.6941 4.5903 6.0433 4.7148 5.8357 5.7649 +%! 3.8479 5.3229 4.9029 5.6232 4.0726 4.8931 6.1703 5.0982 5.7746 5.8821 +%! 3.7258 5.3717 4.6757 5.5622 4.4804 5.1348 6.2118 5.3595 5.6867 5.9260 +%! 3.6110 5.4547 4.3925 5.3302 4.7050 5.4279 6.2508 5.5695 5.5378 5.7502 +%! 3.7160 5.4376 4.0994 5.0103 4.6123 5.3790 6.2093 5.7722 5.3278 5.4157 +%! 4.0921 5.1593 4.1141 4.6660 4.3851 5.3644 6.0140 5.9212 5.0543 4.9956 +%! 4.4804 4.9029 4.3265 4.4145 4.2020 5.4523 5.7014 6.0555 4.7002 4.8613 +%! 4.8149 4.5878 4.6440 4.2020 4.0262 5.5671 5.4694 5.9627 4.3949 4.9029 +%! 5.0543 4.5024 4.9712 4.0482 3.9041 5.6721 5.4792 5.6428 4.1800 5.1031 +%! 5.3033 4.5952 5.1593 4.0799 3.7746 5.7698 5.5573 5.4352 4.0433 5.3644 +%! 5.4865 4.8247 5.3888 4.1898 3.6916 5.8308 5.7282 5.3888 3.8772 5.5964 +%! 5.6721 5.0640 5.5768 4.1312 3.8455 5.9236 5.8821 5.5378 3.7527 5.7527 +%! 5.7795 5.2716 5.6525 4.0042 4.2020 5.9651 5.9847 5.6818 3.7282 5.8455 +%! 5.7991 5.4670 5.8039 3.9163 4.5854 6.0579 5.9016 5.7014 3.8699 5.9285 +%! 5.6648 5.6159 5.9138 3.9602 4.9029 6.0506 5.5817 5.6159 4.2069 6.0066 +%! 5.2911 5.5280 5.8870 4.1996 5.2569 6.0726 5.3717 5.6672 4.3558 5.8406 +%! 4.8809 5.2545 5.7991 4.6245 5.5109 6.1116 5.4181 5.7405 4.4267 5.5182 +%! 4.5585 4.8833 5.7307 4.8833 5.6403 6.0701 5.5109 5.8039 4.4535 5.1739 +%! 4.1849 4.5170 5.7624 5.1373 5.8430 5.8967 5.6672 5.8821 4.5219 4.7392 +%! 3.8894 4.1971 5.8137 5.3790 5.9749 5.7551 5.7917 5.9505 4.3925 4.4584 +%! 3.7087 4.0018 5.8210 5.6232 5.9358 5.7185 5.6989 6.0726 4.1556 4.4267 +%! 3.6232 3.8064 5.9285 5.7624 5.8210 5.8210 5.4840 6.1483 3.9651 4.6025 +%! 3.5695 3.9041 6.0140 5.8333 5.5280 6.0018 5.1544 6.1165 3.8772 4.8223 +%! 3.7185 3.9236 5.7649 5.6867 5.1715 6.0018 4.9810 6.1776 3.9700 5.1837 +%! 4.0335 3.8699 5.4132 5.3668 4.8101 5.9016 5.0616 6.2020 4.2582 5.4303 +%! 4.4120 3.8064 5.0982 5.2252 4.4535 5.5573 5.1959 6.2069 4.4218 5.6525 +%! 4.6293 3.7209 4.6782 5.2398 4.3803 5.1739 5.3595 5.9920 4.3363 5.8210 +%! 4.5585 3.8186 4.3729 5.3546 4.5659 4.8003 5.6159 5.5646 4.2997 5.7063 +%! 4.3949 4.1409 4.3925 5.5085 4.8052 4.4315 5.7624 5.1788 4.3925 5.3693 +%! 4.1800 4.5292 4.5903 5.5964 5.1251 4.1947 5.8577 4.9981 4.6757 5.0274 +%! 4.1971 4.8052 4.9199 5.7527 5.3546 4.0066 5.9480 5.0518 4.7612 4.7050 +%! 4.4315 5.0860 5.0176 5.8748 5.5891 3.8503 5.8357 5.2325 4.6587 4.4145 +%! 4.7148 5.3400 4.8589 5.9065 5.7649 3.7478 5.7063 5.4840 4.4902 4.1458 +%! 4.9615 5.5329 4.6757 5.8943 5.9236 3.6428 5.4987 5.6867 4.3070 3.9651 +%! 5.3009 5.5768 4.6196 5.7429 5.9407 3.5915 5.1886 5.8992 4.1263 4.0335 +%! 5.5671 5.6672 4.8345 5.4474 5.8577 3.5695 5.1177 5.8699 3.9724 4.3729 +%! 5.6818 5.7917 5.0909 5.0250 5.6941 3.5280 5.1910 5.9773 4.0775 4.6831 ](:); +%! +%! +%! +%! U = [ 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 3.4100 +%! 3.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 +%! 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 +%! 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 +%! 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 +%! 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 6.4100 +%! 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 +%! 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 +%! 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 +%! 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 +%! 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 +%! 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 3.4100 +%! 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 3.4100 +%! 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 3.4100 +%! 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 3.4100 +%! 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 +%! 3.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 +%! 3.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 +%! 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 +%! 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 +%! 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 +%! 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 +%! 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 +%! 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 +%! 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 +%! 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 +%! 6.4100 3.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 +%! 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 +%! 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 +%! 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 +%! 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 +%! 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 +%! 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 +%! 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 +%! 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 3.4100 3.4100 3.4100 +%! 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 +%! 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 +%! 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 +%! 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 +%! 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 +%! 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 +%! 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 +%! 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 +%! 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 +%! 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 +%! 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 +%! 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 +%! 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 6.4100 +%! 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 +%! 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 +%! 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 +%! 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 +%! 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 +%! 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 +%! 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 +%! 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 +%! 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 6.4100 +%! 3.4100 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 +%! 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 +%! 3.4100 3.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 +%! 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 +%! 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 +%! 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 +%! 3.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 +%! 6.4100 3.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 +%! 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 +%! 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 +%! 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 +%! 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 +%! 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 +%! 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 +%! 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 +%! 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 +%! 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 +%! 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 +%! 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 +%! 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 +%! 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 +%! 3.4100 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 +%! 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 +%! 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 +%! 3.4100 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 +%! 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 +%! 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 +%! 6.4100 3.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 +%! 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 3.4100 6.4100 +%! 3.4100 3.4100 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 +%! 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 +%! 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 +%! 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 3.4100 +%! 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 +%! 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 +%! 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 +%! 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 +%! 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 +%! 6.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 3.4100 6.4100 +%! 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 +%! 3.4100 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 +%! 3.4100 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 +%! 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 ](:); +%! +%! +%! DAT = iddata (Y, U); +%! +%! [SYS, X0, INFO] = moen4 (DAT, "s", 15, "rcond", 0.0, "tol", -1.0, "confirm", false); +%! +%! Ae = [ 0.8924 0.3887 0.1285 0.1716 +%! -0.0837 0.6186 -0.6273 -0.4582 +%! 0.0052 0.1307 0.6685 -0.6755 +%! 0.0055 0.0734 -0.2148 0.4788 ]; +%! +%! Ce = [ -0.4442 0.6663 0.3961 0.4102 ]; +%! +%! Be = [ -0.2142 +%! -0.1968 +%! 0.0525 +%! 0.0361 ]; +%! +%! De = [ -0.0041 ]; +%! +%! Ke = [ -1.9513 +%! -0.1867 +%! 0.6348 +%! -0.3486 ]; +%! +%! Qe = [ 0.0052 0.0005 -0.0017 0.0009 +%! 0.0005 0.0000 -0.0002 0.0001 +%! -0.0017 -0.0002 0.0006 -0.0003 +%! 0.0009 0.0001 -0.0003 0.0002 ]; +%! +%! Rye = [ 0.0012 ]; +%! +%! Se = [ -0.0025 +%! -0.0002 +%! 0.0008 +%! -0.0005 ]; +%! +%!assert (SYS.A, Ae, 1e-4); +%!assert (SYS.B, Be, 1e-4); +%!assert (SYS.C, Ce, 1e-4); +%!assert (SYS.D, De, 1e-4); +%!assert (INFO.K, Ke, 1e-4); +%!assert (INFO.Q, Qe, 1e-4); +%!assert (INFO.Ry, Rye, 1e-4); +%!assert (INFO.S, Se, 1e-4); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <par...@us...> - 2012-05-21 15:52:16
|
Revision: 10478 http://octave.svn.sourceforge.net/octave/?rev=10478&view=rev Author: paramaniac Date: 2012-05-21 15:52:05 +0000 (Mon, 21 May 2012) Log Message: ----------- control-devel: return info struct Modified Paths: -------------- trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m trunk/octave-forge/extra/control-devel/inst/moen4.m trunk/octave-forge/extra/control-devel/inst/moesp.m trunk/octave-forge/extra/control-devel/inst/n4sid.m Modified: trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m 2012-05-21 15:33:24 UTC (rev 10477) +++ trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m 2012-05-21 15:52:05 UTC (rev 10478) @@ -16,7 +16,7 @@ ## along with LTI Syncope. If not, see <http://www.gnu.org/licenses/>. ## -*- texinfo -*- -## @deftypefn{Function File} {[@var{sys}, @var{x0}] =} __slicot_identification__ (@var{method}, @var{dat}, @dots{}) +## @deftypefn{Function File} {[@var{sys}, @var{x0}], @var{info} =} __slicot_identification__ (@var{method}, @var{dat}, @dots{}) ## Backend for moesp, moen4 and n4sid. ## @end deftypefn @@ -24,7 +24,7 @@ ## Created: May 2012 ## Version: 0.1 -function [sys, x0] = __slicot_identification__ (method, dat, varargin) +function [sys, x0, info] = __slicot_identification__ (method, dat, varargin) ## determine identification method switch (method) @@ -121,9 +121,18 @@ ## assemble model sys = ss (a, b, c, d, dat.tsam{1}); + ## return x0 as vector for single-experiment data + ## instead of a cell containing one vector if (numel (x0) == 1) x0 = x0{1}; endif + + ## assemble info struct + ## Kalman gain matrix K + ## state covariance matrix Q + ## output covariance matrix Ry + ## state-output cross-covariance matrix S + info = struct ("K", k, "Q", q, "Ry", ry, "S", s) endfunction Modified: trunk/octave-forge/extra/control-devel/inst/moen4.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/moen4.m 2012-05-21 15:33:24 UTC (rev 10477) +++ trunk/octave-forge/extra/control-devel/inst/moen4.m 2012-05-21 15:52:05 UTC (rev 10478) @@ -16,10 +16,10 @@ ## along with LTI Syncope. If not, see <http://www.gnu.org/licenses/>. ## -*- texinfo -*- -## @deftypefn {Function File} {[@var{sys}, @var{x0}] =} moen4 (@var{dat}, @dots{}) -## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} moen4 (@var{dat}, @var{n}, @dots{}) -## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} moen4 (@var{dat}, @var{opt}, @dots{}) -## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} moen4 (@var{dat}, @var{n}, @var{opt}, @dots{}) +## @deftypefn {Function File} {[@var{sys}, @var{x0}, @var{info}] =} moen4 (@var{dat}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}, @var{info}] =} moen4 (@var{dat}, @var{n}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}, @var{info}] =} moen4 (@var{dat}, @var{opt}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}, @var{info}] =} moen4 (@var{dat}, @var{n}, @var{opt}, @dots{}) ## Combined method: MOESP algorithm for finding the ## matrices A and C, and N4SID algorithm for ## finding the matrices B and D. @@ -29,12 +29,260 @@ ## Created: May 2012 ## Version: 0.1 -function [sys, x0] = moen4 (varargin) +function [sys, x0, info] = moen4 (varargin) if (nargin == 0) print_usage (); endif - [sys, x0] = __slicot_identification__ ("moen4", varargin{:}); + [sys, x0, info] = __slicot_identification__ ("moen4", varargin{:}); -endfunction \ No newline at end of file +endfunction + +%{ +%! + + 4.7661 5.5451 5.8503 5.3766 4.8833 5.4865 3.5378 5.3155 6.0530 4.3729 + 4.7637 5.1886 5.9236 5.6818 4.8858 5.1495 3.5549 5.5329 6.0799 4.7417 + 4.8394 4.8833 5.9212 5.8235 4.8931 4.8442 3.4938 5.4450 6.1287 5.0884 + 5.0030 4.6000 5.9773 5.9529 4.7148 4.5414 3.4474 5.3961 6.0799 5.1861 + 5.0176 4.2704 5.7405 6.0628 4.4511 4.2679 3.4401 5.2740 6.1678 5.0372 + 5.0567 4.0384 5.3888 6.0897 4.2337 4.0604 3.4083 5.0274 6.1947 4.7856 + 5.1544 3.8381 5.0005 6.0750 4.0433 3.9602 3.4108 4.7441 6.2362 4.5634 + 5.3619 3.7112 4.8491 6.0262 3.8650 3.7893 3.4523 4.6684 6.0530 4.5341 + 5.4254 3.5915 4.9444 5.9944 3.7576 3.6428 3.6818 4.6513 5.6525 4.7050 + 5.5695 3.5353 5.1739 6.0775 3.6696 3.5256 4.0604 4.5146 5.2740 4.7417 + 5.6818 3.4865 5.3693 5.8577 3.5939 3.4987 4.4413 4.2679 4.8589 4.6489 + 5.7429 3.4767 5.4474 5.7014 3.5475 3.4547 4.8540 4.2606 4.5341 4.4315 + 5.8039 3.4254 5.6037 5.7307 3.5060 3.4083 5.1544 4.2630 4.4560 4.2386 + 5.9187 3.3815 5.7307 5.7844 3.4547 3.3790 5.4254 4.1898 4.6196 4.0652 + 5.8210 3.3693 5.8503 5.8235 3.3986 3.3766 5.5964 4.2777 4.8662 3.9431 + 5.4474 3.3644 5.9798 5.8943 3.3619 3.3619 5.5866 4.6000 5.1177 3.8113 + 5.0616 3.3473 5.9920 5.7624 3.3400 3.3595 5.3546 4.9322 5.1666 3.6916 + 4.6293 3.3815 6.0848 5.4157 3.3742 3.3693 5.0274 5.2838 5.0567 3.6525 + 4.2679 3.4206 5.9407 4.9615 3.5207 3.3986 4.8638 5.5280 5.0030 3.8259 + 4.0115 3.4132 5.8039 4.5952 3.7136 3.5793 4.7612 5.7405 5.0982 4.2240 + 3.8503 3.4523 5.7917 4.3314 3.7576 3.9480 4.5707 5.8748 5.3253 4.4242 + 3.7112 3.6355 5.6037 4.2972 3.7795 4.4120 4.3681 5.9554 5.5671 4.4291 + 3.5695 4.0384 5.2643 4.5829 3.6965 4.5854 4.3974 5.9920 5.4670 4.3192 + 3.5182 4.3754 4.9468 4.8613 3.7771 4.5146 4.5732 5.8455 5.2521 4.1385 + 3.6525 4.7270 4.6196 5.1739 3.8870 4.3436 4.8418 5.5280 4.9468 3.9651 + 3.8186 5.0567 4.5146 5.1666 3.9041 4.1556 5.2032 5.0616 4.8809 3.8870 + 3.8626 5.2985 4.4340 4.9199 3.8503 3.9847 5.4523 4.7344 4.9810 3.8015 + 4.0115 5.5329 4.2850 4.6074 3.9651 4.0433 5.6525 4.5341 5.2252 3.7014 + 4.3534 5.4670 4.1214 4.3705 4.2826 4.3070 5.8552 4.5341 5.4596 3.6403 + 4.7050 5.1959 3.9456 4.1825 4.5219 4.4218 5.9065 4.6977 5.7234 3.7673 + 5.0836 4.8858 3.9847 4.0384 4.7148 4.3534 5.9529 4.7441 5.7917 4.1507 + 5.3449 4.7637 4.2191 4.1458 4.9712 4.2240 5.8284 4.6196 5.9065 4.6489 + 5.2740 4.8760 4.5463 4.4315 5.2203 4.0530 5.7917 4.6440 5.9920 4.9908 + 5.1275 5.0420 4.8735 4.5561 5.5329 3.9407 5.7991 4.8320 5.8357 5.0884 + 4.7612 5.2838 5.1544 4.4804 5.6525 3.8381 5.8137 5.1324 5.5280 5.0225 + 4.4511 5.4914 5.3888 4.3754 5.7820 3.7307 5.8772 5.4108 5.1422 4.7832 + 4.2215 5.5964 5.6135 4.3705 5.9554 3.6525 5.9554 5.6257 4.7759 4.6855 + 4.0457 5.6721 5.8357 4.5585 6.0359 3.6110 5.7820 5.6037 4.4902 4.6660 + 3.8748 5.7722 5.8845 4.8589 6.1190 3.5646 5.5182 5.3155 4.2362 4.7075 + 3.7307 5.8308 5.9554 4.8955 6.1336 3.4963 5.1275 4.9615 4.0237 4.9126 + 3.6623 5.9334 5.7624 4.7417 6.1532 3.4621 4.7637 4.6196 3.8870 5.1959 + 3.5768 5.8992 5.4596 4.7441 6.1922 3.4547 4.4926 4.3583 3.7527 5.4157 + 3.5427 5.9358 5.0616 4.8760 6.1434 3.4254 4.2337 4.1556 3.6818 5.6232 + 3.4792 5.8943 4.7075 5.1055 6.1678 3.3790 4.0115 4.0335 3.8064 5.7405 + 3.4547 5.9187 4.4584 5.2398 5.9920 3.4328 3.8552 3.8870 4.1458 5.8992 + 3.3595 5.9944 4.2679 5.5182 5.6525 3.6232 3.6916 3.7722 4.6000 5.9285 + 3.2985 5.9578 4.0530 5.6525 5.4596 3.9749 3.6355 3.6403 5.0030 6.0506 + 3.2252 6.0311 3.9431 5.7234 5.4376 4.3803 3.8186 3.5329 5.3033 6.1532 + 3.2008 6.0628 3.8259 5.8552 5.3400 4.7148 4.1556 3.4352 5.5524 5.9651 + 3.2252 6.0408 3.9676 5.9627 5.0982 5.0738 4.5903 3.4279 5.6159 5.5866 + 3.2276 6.0970 4.2801 5.9847 4.7856 5.3693 4.9883 3.4230 5.5231 5.3815 + 3.2740 6.1239 4.4804 5.9847 4.4926 5.6037 5.0762 3.3986 5.6110 5.3717 + 3.4572 6.1629 4.4926 6.0555 4.2362 5.7453 4.9077 3.6037 5.7136 5.4865 + 3.8674 6.0408 4.3900 6.0628 4.0677 5.6525 4.6489 4.0237 5.8455 5.5671 + 4.3217 5.8455 4.1971 6.0555 3.9334 5.4010 4.3778 4.4511 5.8992 5.8210 + 4.4926 5.7722 4.1116 6.0701 3.8235 5.0152 4.2166 4.7930 5.9944 5.9138 + 4.4315 5.7991 3.9822 5.7844 3.7307 4.7099 4.2875 4.9029 6.0921 5.9944 + 4.2435 5.9236 3.8674 5.4401 3.6110 4.4169 4.5903 4.7808 6.0921 6.0115 + 4.0506 5.9285 3.7673 5.0567 3.5646 4.2362 4.8467 4.5903 6.1434 5.9993 + 3.8577 6.0018 3.8723 4.9419 3.5500 4.2362 5.1397 4.3363 6.1532 6.0188 + 3.7307 6.0018 4.2362 5.0103 3.5573 4.2484 5.3888 4.1458 6.2337 5.8210 + 3.7917 6.0604 4.6635 5.1348 3.5134 4.2215 5.6892 4.2166 6.1873 5.7282 + 3.9212 5.8821 4.9712 5.3131 3.5158 4.2972 5.8845 4.4340 6.0140 5.7405 + 3.9554 5.5109 5.0665 5.4792 3.6941 4.5903 6.0433 4.7148 5.8357 5.7649 + 3.8479 5.3229 4.9029 5.6232 4.0726 4.8931 6.1703 5.0982 5.7746 5.8821 + 3.7258 5.3717 4.6757 5.5622 4.4804 5.1348 6.2118 5.3595 5.6867 5.9260 + 3.6110 5.4547 4.3925 5.3302 4.7050 5.4279 6.2508 5.5695 5.5378 5.7502 + 3.7160 5.4376 4.0994 5.0103 4.6123 5.3790 6.2093 5.7722 5.3278 5.4157 + 4.0921 5.1593 4.1141 4.6660 4.3851 5.3644 6.0140 5.9212 5.0543 4.9956 + 4.4804 4.9029 4.3265 4.4145 4.2020 5.4523 5.7014 6.0555 4.7002 4.8613 + 4.8149 4.5878 4.6440 4.2020 4.0262 5.5671 5.4694 5.9627 4.3949 4.9029 + 5.0543 4.5024 4.9712 4.0482 3.9041 5.6721 5.4792 5.6428 4.1800 5.1031 + 5.3033 4.5952 5.1593 4.0799 3.7746 5.7698 5.5573 5.4352 4.0433 5.3644 + 5.4865 4.8247 5.3888 4.1898 3.6916 5.8308 5.7282 5.3888 3.8772 5.5964 + 5.6721 5.0640 5.5768 4.1312 3.8455 5.9236 5.8821 5.5378 3.7527 5.7527 + 5.7795 5.2716 5.6525 4.0042 4.2020 5.9651 5.9847 5.6818 3.7282 5.8455 + 5.7991 5.4670 5.8039 3.9163 4.5854 6.0579 5.9016 5.7014 3.8699 5.9285 + 5.6648 5.6159 5.9138 3.9602 4.9029 6.0506 5.5817 5.6159 4.2069 6.0066 + 5.2911 5.5280 5.8870 4.1996 5.2569 6.0726 5.3717 5.6672 4.3558 5.8406 + 4.8809 5.2545 5.7991 4.6245 5.5109 6.1116 5.4181 5.7405 4.4267 5.5182 + 4.5585 4.8833 5.7307 4.8833 5.6403 6.0701 5.5109 5.8039 4.4535 5.1739 + 4.1849 4.5170 5.7624 5.1373 5.8430 5.8967 5.6672 5.8821 4.5219 4.7392 + 3.8894 4.1971 5.8137 5.3790 5.9749 5.7551 5.7917 5.9505 4.3925 4.4584 + 3.7087 4.0018 5.8210 5.6232 5.9358 5.7185 5.6989 6.0726 4.1556 4.4267 + 3.6232 3.8064 5.9285 5.7624 5.8210 5.8210 5.4840 6.1483 3.9651 4.6025 + 3.5695 3.9041 6.0140 5.8333 5.5280 6.0018 5.1544 6.1165 3.8772 4.8223 + 3.7185 3.9236 5.7649 5.6867 5.1715 6.0018 4.9810 6.1776 3.9700 5.1837 + 4.0335 3.8699 5.4132 5.3668 4.8101 5.9016 5.0616 6.2020 4.2582 5.4303 + 4.4120 3.8064 5.0982 5.2252 4.4535 5.5573 5.1959 6.2069 4.4218 5.6525 + 4.6293 3.7209 4.6782 5.2398 4.3803 5.1739 5.3595 5.9920 4.3363 5.8210 + 4.5585 3.8186 4.3729 5.3546 4.5659 4.8003 5.6159 5.5646 4.2997 5.7063 + 4.3949 4.1409 4.3925 5.5085 4.8052 4.4315 5.7624 5.1788 4.3925 5.3693 + 4.1800 4.5292 4.5903 5.5964 5.1251 4.1947 5.8577 4.9981 4.6757 5.0274 + 4.1971 4.8052 4.9199 5.7527 5.3546 4.0066 5.9480 5.0518 4.7612 4.7050 + 4.4315 5.0860 5.0176 5.8748 5.5891 3.8503 5.8357 5.2325 4.6587 4.4145 + 4.7148 5.3400 4.8589 5.9065 5.7649 3.7478 5.7063 5.4840 4.4902 4.1458 + 4.9615 5.5329 4.6757 5.8943 5.9236 3.6428 5.4987 5.6867 4.3070 3.9651 + 5.3009 5.5768 4.6196 5.7429 5.9407 3.5915 5.1886 5.8992 4.1263 4.0335 + 5.5671 5.6672 4.8345 5.4474 5.8577 3.5695 5.1177 5.8699 3.9724 4.3729 + 5.6818 5.7917 5.0909 5.0250 5.6941 3.5280 5.1910 5.9773 4.0775 4.6831 + + + + 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 3.4100 + 3.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 + 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 + 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 + 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 + 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 6.4100 + 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 + 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 + 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 + 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 + 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 + 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 3.4100 + 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 3.4100 + 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 3.4100 + 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 3.4100 + 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 + 3.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 + 3.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 + 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 + 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 + 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 + 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 + 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 + 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 + 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 + 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 + 6.4100 3.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 + 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 + 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 + 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 + 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 + 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 + 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 + 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 + 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 3.4100 3.4100 3.4100 + 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 + 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 + 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 + 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 + 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 + 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 + 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 + 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 + 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 + 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 + 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 + 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 + 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 6.4100 + 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 + 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 + 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 + 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 + 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 + 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 + 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 + 3.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 3.4100 6.4100 6.4100 + 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 6.4100 + 3.4100 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 + 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 + 3.4100 3.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 + 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 + 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 + 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 + 3.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 + 6.4100 3.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 + 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 3.4100 + 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 + 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 + 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 + 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 + 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 + 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 + 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 + 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 + 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 + 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 + 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 + 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 + 3.4100 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 + 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 3.4100 + 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 + 3.4100 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 + 3.4100 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 6.4100 + 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 6.4100 + 6.4100 3.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 + 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 6.4100 6.4100 3.4100 6.4100 + 3.4100 3.4100 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 + 3.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 3.4100 + 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 3.4100 + 3.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 6.4100 3.4100 + 6.4100 6.4100 6.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 + 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 + 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 + 6.4100 6.4100 3.4100 6.4100 6.4100 3.4100 3.4100 6.4100 3.4100 3.4100 + 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 3.4100 6.4100 3.4100 6.4100 + 6.4100 6.4100 6.4100 3.4100 3.4100 3.4100 6.4100 6.4100 3.4100 6.4100 + 6.4100 6.4100 6.4100 3.4100 6.4100 3.4100 6.4100 6.4100 6.4100 6.4100 + 3.4100 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 + 3.4100 6.4100 6.4100 6.4100 3.4100 3.4100 6.4100 6.4100 6.4100 6.4100 + 3.4100 6.4100 6.4100 3.4100 3.4100 3.4100 3.4100 6.4100 6.4100 6.4100 + +ae = [ 0.8924 0.3887 0.1285 0.1716 + -0.0837 0.6186 -0.6273 -0.4582 + 0.0052 0.1307 0.6685 -0.6755 + 0.0055 0.0734 -0.2148 0.4788 ]; + +ce = [ -0.4442 0.6663 0.3961 0.4102 ]; + +be = [ -0.2142 + -0.1968 + 0.0525 + 0.0361 ]; + +de = [ -0.0041 ]; + +ke = [ -1.9513 + -0.1867 + 0.6348 + -0.3486 ]; + +qe = [ 0.0052 0.0005 -0.0017 0.0009 + 0.0005 0.0000 -0.0002 0.0001 + -0.0017 -0.0002 0.0006 -0.0003 + 0.0009 0.0001 -0.0003 0.0002 ]; + +rye = [ 0.0012 ]; + +se = [ -0.0025 + -0.0002 + 0.0008 + -0.0005 ]; + +assert (a, ae, 1e-4); +assert (b, be, 1e-4); +assert (c, ce, 1e-4); +assert (d, de, 1e-4); +assert (k, ke, 1e-4); +assert (q, qe, 1e-4); +assert (ry, rye, 1e-4); +assert (s, se, 1e-4); +%} Modified: trunk/octave-forge/extra/control-devel/inst/moesp.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/moesp.m 2012-05-21 15:33:24 UTC (rev 10477) +++ trunk/octave-forge/extra/control-devel/inst/moesp.m 2012-05-21 15:52:05 UTC (rev 10478) @@ -16,10 +16,10 @@ ## along with LTI Syncope. If not, see <http://www.gnu.org/licenses/>. ## -*- texinfo -*- -## @deftypefn {Function File} {[@var{sys}, @var{x0}] =} moesp (@var{dat}, @dots{}) -## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} moesp (@var{dat}, @var{n}, @dots{}) -## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} moesp (@var{dat}, @var{opt}, @dots{}) -## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} moesp (@var{dat}, @var{n}, @var{opt}, @dots{}) +## @deftypefn {Function File} {[@var{sys}, @var{x0}, @var{info}] =} moesp (@var{dat}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}, @var{info}] =} moesp (@var{dat}, @var{n}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}, @var{info}] =} moesp (@var{dat}, @var{opt}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}, @var{info}] =} moesp (@var{dat}, @var{n}, @var{opt}, @dots{}) ## MOESP: Multivariable Output Error State sPace. ## @end deftypefn @@ -27,12 +27,12 @@ ## Created: May 2012 ## Version: 0.1 -function [sys, x0] = moesp (varargin) +function [sys, x0, info] = moesp (varargin) if (nargin == 0) print_usage (); endif - [sys, x0] = __slicot_identification__ ("moesp", varargin{:}); + [sys, x0, info] = __slicot_identification__ ("moesp", varargin{:}); endfunction \ No newline at end of file Modified: trunk/octave-forge/extra/control-devel/inst/n4sid.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/n4sid.m 2012-05-21 15:33:24 UTC (rev 10477) +++ trunk/octave-forge/extra/control-devel/inst/n4sid.m 2012-05-21 15:52:05 UTC (rev 10478) @@ -16,10 +16,10 @@ ## along with LTI Syncope. If not, see <http://www.gnu.org/licenses/>. ## -*- texinfo -*- -## @deftypefn {Function File} {[@var{sys}, @var{x0}] =} n4sid (@var{dat}, @dots{}) -## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} n4sid (@var{dat}, @var{n}, @dots{}) -## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} n4sid (@var{dat}, @var{opt}, @dots{}) -## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} n4sid (@var{dat}, @var{n}, @var{opt}, @dots{}) +## @deftypefn {Function File} {[@var{sys}, @var{x0}, @var{info}] =} n4sid (@var{dat}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}, @var{info}] =} n4sid (@var{dat}, @var{n}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}, @var{info}] =} n4sid (@var{dat}, @var{opt}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}, @var{info}] =} n4sid (@var{dat}, @var{n}, @var{opt}, @dots{}) ## N4SID: Numerical algorithm for Subspace State Space System IDentification. ## @end deftypefn @@ -27,12 +27,12 @@ ## Created: May 2012 ## Version: 0.1 -function [sys, x0] = n4sid (varargin) +function [sys, x0, info] = n4sid (varargin) if (nargin == 0) print_usage (); endif - [sys, x0] = __slicot_identification__ ("n4sid", varargin{:}); + [sys, x0, info] = __slicot_identification__ ("n4sid", varargin{:}); endfunction \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <par...@us...> - 2012-05-21 15:33:30
|
Revision: 10477 http://octave.svn.sourceforge.net/octave/?rev=10477&view=rev Author: paramaniac Date: 2012-05-21 15:33:24 +0000 (Mon, 21 May 2012) Log Message: ----------- control-devel: get slicot test working again Modified Paths: -------------- trunk/octave-forge/extra/control-devel/devel/test_slident.m Modified: trunk/octave-forge/extra/control-devel/devel/test_slident.m =================================================================== --- trunk/octave-forge/extra/control-devel/devel/test_slident.m 2012-05-21 15:27:49 UTC (rev 10476) +++ trunk/octave-forge/extra/control-devel/devel/test_slident.m 2012-05-21 15:33:24 UTC (rev 10477) @@ -2032,7 +2032,8 @@ tol = -1.0; n = 0; -[a, b, c, d, q, ry, s, k, x0] = slident (Y, U, nobr, n, meth, alg, jobd, batch, conct, ctrl, rcond, tol) +% [a, b, c, d, q, ry, s, k, x0] = slident (Y, U, nobr, n, meth, alg, jobd, batch, conct, ctrl, rcond, tol) +[a, b, c, d, q, ry, s, k, x0] = slident (dat.Y, dat.U, nobr, n, meth, alg, conct, ctrl, rcond, tol) ae = [ 0.8924 0.3887 0.1285 0.1716 @@ -2089,7 +2090,7 @@ % [y, t] = lsim (P, U); -[y, t] = lsim (P, U, [], x0); +[y, t] = lsim (P, U, [], x0{1}); err = norm (Y - y, 1) / norm (Y, 1) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <par...@us...> - 2012-05-21 15:28:00
|
Revision: 10476 http://octave.svn.sourceforge.net/octave/?rev=10476&view=rev Author: paramaniac Date: 2012-05-21 15:27:49 +0000 (Mon, 21 May 2012) Log Message: ----------- control-devel: use new moen4 method for test examples Modified Paths: -------------- trunk/octave-forge/extra/control-devel/devel/CDplayer.m trunk/octave-forge/extra/control-devel/devel/Destillation.m trunk/octave-forge/extra/control-devel/devel/DestillationME.m trunk/octave-forge/extra/control-devel/devel/Evaporator.m trunk/octave-forge/extra/control-devel/devel/GlassFurnace.m trunk/octave-forge/extra/control-devel/devel/HeatingSystem.m trunk/octave-forge/extra/control-devel/devel/LakeErie.m trunk/octave-forge/extra/control-devel/devel/pH.m Modified: trunk/octave-forge/extra/control-devel/devel/CDplayer.m =================================================================== --- trunk/octave-forge/extra/control-devel/devel/CDplayer.m 2012-05-21 15:16:30 UTC (rev 10475) +++ trunk/octave-forge/extra/control-devel/devel/CDplayer.m 2012-05-21 15:27:49 UTC (rev 10476) @@ -50,7 +50,7 @@ dat = iddata (Y, U) -[sys, x0] = moen4 (dat, 8) % s=15, n=8 +[sys, x0] = moen4 (dat, 8, 's', 15) % s=15, n=8 [y, t] = lsim (sys, U, [], x0); Modified: trunk/octave-forge/extra/control-devel/devel/Destillation.m =================================================================== --- trunk/octave-forge/extra/control-devel/devel/Destillation.m 2012-05-21 15:16:30 UTC (rev 10475) +++ trunk/octave-forge/extra/control-devel/devel/Destillation.m 2012-05-21 15:27:49 UTC (rev 10476) @@ -69,7 +69,7 @@ dat = iddata (Y_dest, U_dest) -[sys, x0] = ident (dat, 5, 4) % s=5, n=4 +[sys, x0] = moen4 (dat, 's', 5, 'n', 4) % s=5, n=4 [y, t] = lsim (sys, U_dest, [], x0); Modified: trunk/octave-forge/extra/control-devel/devel/DestillationME.m =================================================================== --- trunk/octave-forge/extra/control-devel/devel/DestillationME.m 2012-05-21 15:16:30 UTC (rev 10475) +++ trunk/octave-forge/extra/control-devel/devel/DestillationME.m 2012-05-21 15:27:49 UTC (rev 10476) @@ -71,7 +71,7 @@ dat = iddata (Y, U) -[sys, x0] = ident (dat, 5, 4) % s=5, n=4 +[sys, x0] = moen4 (dat, 's', 5, 'n', 4) % s=5, n=4 x0=x0{1}; Modified: trunk/octave-forge/extra/control-devel/devel/Evaporator.m =================================================================== --- trunk/octave-forge/extra/control-devel/devel/Evaporator.m 2012-05-21 15:16:30 UTC (rev 10475) +++ trunk/octave-forge/extra/control-devel/devel/Evaporator.m 2012-05-21 15:27:49 UTC (rev 10476) @@ -51,7 +51,7 @@ dat = iddata (Y, U) -[sys, x0] = ident (dat, 10, 4) % s=10, n=4 +[sys, x0] = moen4 (dat, 's', 10, 'n', 4) % s=10, n=4 [y, t] = lsim (sys, U, [], x0); Modified: trunk/octave-forge/extra/control-devel/devel/GlassFurnace.m =================================================================== --- trunk/octave-forge/extra/control-devel/devel/GlassFurnace.m 2012-05-21 15:16:30 UTC (rev 10475) +++ trunk/octave-forge/extra/control-devel/devel/GlassFurnace.m 2012-05-21 15:27:49 UTC (rev 10476) @@ -48,7 +48,7 @@ dat = iddata (Y, U) -[sys, x0] = moen4 (dat, 5) % s=10, n=5 +[sys, x0] = moen4 (dat, 's', 10, 'n', 5) % s=10, n=5 [y, t] = lsim (sys, U, [], x0); Modified: trunk/octave-forge/extra/control-devel/devel/HeatingSystem.m =================================================================== --- trunk/octave-forge/extra/control-devel/devel/HeatingSystem.m 2012-05-21 15:16:30 UTC (rev 10475) +++ trunk/octave-forge/extra/control-devel/devel/HeatingSystem.m 2012-05-21 15:27:49 UTC (rev 10476) @@ -75,7 +75,7 @@ 'outunit', '°C') % s=15, n=7 -[sys1, x0] = ident (dat, 15, 7) +[sys1, x0] = moen4 (dat, 's', 15, 'n', 7) sys2 = arx (dat, 7, 7) % normally na = nb [y1, t1] = lsim (sys1, U, [], x0); Modified: trunk/octave-forge/extra/control-devel/devel/LakeErie.m =================================================================== --- trunk/octave-forge/extra/control-devel/devel/LakeErie.m 2012-05-21 15:16:30 UTC (rev 10475) +++ trunk/octave-forge/extra/control-devel/devel/LakeErie.m 2012-05-21 15:27:49 UTC (rev 10476) @@ -76,7 +76,7 @@ 'outname', {'a. dissolved oxygen'; 'b. algae'}) -[sys, x0] = ident (dat, 5, 4) % s=5, n=4 +[sys, x0] = moen4 (dat, 's', 5, 'n', 4) % s=5, n=4 x0=x0{1}; Modified: trunk/octave-forge/extra/control-devel/devel/pH.m =================================================================== --- trunk/octave-forge/extra/control-devel/devel/pH.m 2012-05-21 15:16:30 UTC (rev 10475) +++ trunk/octave-forge/extra/control-devel/devel/pH.m 2012-05-21 15:27:49 UTC (rev 10476) @@ -51,7 +51,7 @@ dat = iddata (Y, U) -[sys, x0] = moen4 (dat, 6) % s=15, n=6 +[sys, x0] = moen4 (dat, 's', 15, 'n', 6) % s=15, n=6 [y, t] = lsim (sys, U, [], x0); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <par...@us...> - 2012-05-21 15:16:36
|
Revision: 10475 http://octave.svn.sourceforge.net/octave/?rev=10475&view=rev Author: paramaniac Date: 2012-05-21 15:16:30 +0000 (Mon, 21 May 2012) Log Message: ----------- control-devel: handle properties for identification backend Modified Paths: -------------- trunk/octave-forge/extra/control-devel/devel/PowerPlant.m trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m Modified: trunk/octave-forge/extra/control-devel/devel/PowerPlant.m =================================================================== --- trunk/octave-forge/extra/control-devel/devel/PowerPlant.m 2012-05-21 13:40:38 UTC (rev 10474) +++ trunk/octave-forge/extra/control-devel/devel/PowerPlant.m 2012-05-21 15:16:30 UTC (rev 10475) @@ -65,7 +65,7 @@ dat = iddata (Y, U, tsam, 'outname', outname, 'inname', inname) -[sys, x0] = ident (dat, 10, 8) % s=10, n=8 +[sys, x0] = moen4 (dat, 's', 10, 'n', 8) % s=10, n=8 [y, t] = lsim (sys, U, [], x0); Modified: trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m 2012-05-21 13:40:38 UTC (rev 10474) +++ trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m 2012-05-21 15:16:30 UTC (rev 10475) @@ -61,8 +61,8 @@ ## default arguments alg = 0; - conct = 1; # no connection between experiments - ctrl = 1; # don't confirm order n + conct = 1; # no connection between experiments + ctrl = 1; # don't confirm order n rcond = 0.0; tol = -1.0; % 0; s = []; @@ -89,49 +89,36 @@ endswitch endfor - - - s = min (2*n, n+10); # upper bound for n + + ## handle s/nobr and n nsmp = sum (ns); # total number of samples nobr = fix ((nsmp+1)/(2*(m+l+1))); if (e > 1) nobr = min (nobr, fix (min (ns) / 2)); endif - nobr = min (nobr, s) - -%{ if (isempty (s) && isempty (n)) - nsmp = ns(1); - nobr = fix ((nsmp+1)/(2*(m+l+1))); - ctrl = 0; # confirm system order estimate + ctrl = 0; # confirm system order estimate n = 0; - % nsmp >= 2*(m+l+1)*nobr - 1 - % nobr <= (nsmp+1)/(2*(m+l+1)) elseif (isempty (s)) - s = min (2*n, n+10); - nsmp = ns(1); - nobr = fix ((nsmp+1)/(2*(m+l+1))); + s = min (2*n, n+10); # upper bound for n nobr = min (nobr, s); - ctrl = 1; # no confirmation elseif (isempty (n)) - nobr = s; - ctrl = 0; # confirm system order estimate + nobr = __check_s__ (s, nobr, method); + ctrl = 0; # confirm system order estimate n = 0; - else # s & n non-empty - nsmp = ns(1); - nobr = fix ((nsmp+1)/(2*(m+l+1))); - if (s > nobr) - error ("ident: s > nobr"); + else # s & n non-empty + nobr = __check_s__ (s, nobr, method); + if (n >= nobr) + error ("%s: n=%d, but require n < %d (s)", method, n, nobr); endif - nobr = s; - ctrl = 1; - ## TODO: specify n for IB01BD endif -%} + + ## perform system identification [a, b, c, d, q, ry, s, k, x0] = slident (dat.y, dat.u, nobr, n, meth, alg, conct, ctrl, rcond, tol); + ## assemble model sys = ss (a, b, c, d, dat.tsam{1}); if (numel (x0) == 1) @@ -139,3 +126,14 @@ endif endfunction + + +function nobr = __check_s__ (s, nobr, method) + + if (s <= nobr) + nobr = s; + else + error ("%s: require upper bound s <= %d, but the requested s is %d", method, nobr, s); + endif + +endfunction This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <par...@us...> - 2012-05-21 13:40:50
|
Revision: 10474 http://octave.svn.sourceforge.net/octave/?rev=10474&view=rev Author: paramaniac Date: 2012-05-21 13:40:38 +0000 (Mon, 21 May 2012) Log Message: ----------- control-devel: work on identification user functions (2) Modified Paths: -------------- trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m trunk/octave-forge/extra/control-devel/inst/moen4.m trunk/octave-forge/extra/control-devel/inst/moesp.m trunk/octave-forge/extra/control-devel/inst/n4sid.m Modified: trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m 2012-05-21 13:03:02 UTC (rev 10473) +++ trunk/octave-forge/extra/control-devel/inst/__slicot_identification__.m 2012-05-21 13:40:38 UTC (rev 10474) @@ -1,5 +1,32 @@ -function [sys, x0] = __slicot_identification__ (method, dat, n = []) +## Copyright (C) 2012 Lukas F. Reichlin +## +## This file is part of LTI Syncope. +## +## LTI Syncope is free software: you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation, either version 3 of the License, or +## (at your option) any later version. +## +## LTI Syncope is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. +## +## You should have received a copy of the GNU General Public License +## along with LTI Syncope. If not, see <http://www.gnu.org/licenses/>. +## -*- texinfo -*- +## @deftypefn{Function File} {[@var{sys}, @var{x0}] =} __slicot_identification__ (@var{method}, @var{dat}, @dots{}) +## Backend for moesp, moen4 and n4sid. +## @end deftypefn + +## Author: Lukas Reichlin <luk...@gm...> +## Created: May 2012 +## Version: 0.1 + +function [sys, x0] = __slicot_identification__ (method, dat, varargin) + + ## determine identification method switch (method) case "moesp" meth = 0; @@ -10,20 +37,60 @@ otherwise error ("ident: invalid method"); # should never happen endswitch - + if (! isa (dat, "iddata")) error ("%s: first argument must be an 'iddata' dataset", method); endif + + if (nargin > 2) # ident (dat, ...) + if (is_real_scalar (varargin{1})) # ident (dat, n, ...) + varargin = horzcat (varargin(2:end), {"order"}, varargin(1)); + endif + if (isstruct (varargin{1})) # ident (dat, opt, ...), ident (dat, n, opt, ...) + varargin = horzcat (__opt2cell__ (varargin{1}), varargin(2:end)); + endif + endif + + nkv = numel (varargin); # number of keys and values + + if (rem (nkv, 2)) + error ("%s: keys and values must come in pairs", method); + endif + [ns, l, m, e] = size (dat); # dataset dimensions + ## default arguments alg = 0; conct = 1; # no connection between experiments ctrl = 1; # don't confirm order n rcond = 0.0; tol = -1.0; % 0; + s = []; + n = []; - [ns, l, m, e] = size (dat); + ## handle keys and values + for k = 1 : 2 : nkv + key = lower (varargin{k}); + val = varargin{k+1}; + switch (key) + ## TODO: proper argument checking + case {"n", "order"} + n = val; + case "s" + s = val; + case {"alg", "algorithm"} + error ("alg"); + case "tol" + tol = val; + case "rcond" + rcond = val; + otherwise + warning ("%s: invalid property name '%s' ignored", method, key); + endswitch + endfor + + s = min (2*n, n+10); # upper bound for n nsmp = sum (ns); # total number of samples nobr = fix ((nsmp+1)/(2*(m+l+1))); Modified: trunk/octave-forge/extra/control-devel/inst/moen4.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/moen4.m 2012-05-21 13:03:02 UTC (rev 10473) +++ trunk/octave-forge/extra/control-devel/inst/moen4.m 2012-05-21 13:40:38 UTC (rev 10474) @@ -16,7 +16,10 @@ ## along with LTI Syncope. If not, see <http://www.gnu.org/licenses/>. ## -*- texinfo -*- -## @deftypefn {Function File} {@var{dat} =} moen4 (@var{dat}, @var{s}, @var{n}) +## @deftypefn {Function File} {[@var{sys}, @var{x0}] =} moen4 (@var{dat}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} moen4 (@var{dat}, @var{n}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} moen4 (@var{dat}, @var{opt}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} moen4 (@var{dat}, @var{n}, @var{opt}, @dots{}) ## Combined method: MOESP algorithm for finding the ## matrices A and C, and N4SID algorithm for ## finding the matrices B and D. Modified: trunk/octave-forge/extra/control-devel/inst/moesp.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/moesp.m 2012-05-21 13:03:02 UTC (rev 10473) +++ trunk/octave-forge/extra/control-devel/inst/moesp.m 2012-05-21 13:40:38 UTC (rev 10474) @@ -16,7 +16,10 @@ ## along with LTI Syncope. If not, see <http://www.gnu.org/licenses/>. ## -*- texinfo -*- -## @deftypefn {Function File} {@var{dat} =} moesp (@var{dat}, @var{s}, @var{n}) +## @deftypefn {Function File} {[@var{sys}, @var{x0}] =} moesp (@var{dat}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} moesp (@var{dat}, @var{n}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} moesp (@var{dat}, @var{opt}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} moesp (@var{dat}, @var{n}, @var{opt}, @dots{}) ## MOESP: Multivariable Output Error State sPace. ## @end deftypefn Modified: trunk/octave-forge/extra/control-devel/inst/n4sid.m =================================================================== --- trunk/octave-forge/extra/control-devel/inst/n4sid.m 2012-05-21 13:03:02 UTC (rev 10473) +++ trunk/octave-forge/extra/control-devel/inst/n4sid.m 2012-05-21 13:40:38 UTC (rev 10474) @@ -16,7 +16,10 @@ ## along with LTI Syncope. If not, see <http://www.gnu.org/licenses/>. ## -*- texinfo -*- -## @deftypefn {Function File} {@var{dat} =} n4sid (@var{dat}, @var{s}, @var{n}) +## @deftypefn {Function File} {[@var{sys}, @var{x0}] =} n4sid (@var{dat}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} n4sid (@var{dat}, @var{n}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} n4sid (@var{dat}, @var{opt}, @dots{}) +## @deftypefnx {Function File} {[@var{sys}, @var{x0}] =} n4sid (@var{dat}, @var{n}, @var{opt}, @dots{}) ## N4SID: Numerical algorithm for Subspace State Space System IDentification. ## @end deftypefn This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |