# HG changeset patch # User jwe # Date 910238442 0 # Node ID 258d7b26c719c039fa842f1f6c1b616c73195b91 # Parent fbb332b96e4f5db3bd705e3349c40a50a2a71f07 [project @ 1998-11-05 04:00:42 by jwe] diff -r fbb332b96e4f -r 258d7b26c719 scripts/general/is_duplicate_entry.m --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/scripts/general/is_duplicate_entry.m Thu Nov 05 04:00:42 1998 +0000 @@ -0,0 +1,44 @@ +## Copyright (C) 1996, 1997 A. S. Hodel +## +## This file is part of Octave. +## +## Octave 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, or (at your option) +## any later version. +## +## Octave 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 Octave; see the file COPYING. If not, write to the Free +## Software Foundation, 59 Temple Place - Suite 330, Boston, MA +## 02111-1307, USA. + +## Usage: is_duplicate_entry (x) +## +## Return non-zero if any entries in x are duplicates of one another. + +## Author: A. S. Hodel + +function retval = is_duplicate_entry (x) + + if (nargin == 1) + if (is_matrix (x)) + [m, n] = size (x); + lx = m*n; + lx1 = lx-1; + x = sort (reshape (x, 1, lx)); + dx = x(1:lx1) - x(2:lx); + retval = sum (dx == 0); + else + error ("is_duplicate_entry: expecting matrix argument"); + endif + else + usage ("is_duplicate_entry (x)"); + endif + +endfunction + diff -r fbb332b96e4f -r 258d7b26c719 scripts/general/is_symmetric.m --- a/scripts/general/is_symmetric.m Tue Nov 03 20:48:58 1998 +0000 +++ b/scripts/general/is_symmetric.m Thu Nov 05 04:00:42 1998 +0000 @@ -30,18 +30,14 @@ function retval = is_symmetric (x,tol) - retval = 0; - if (nargin == 1 || nargin == 2) - if (is_matrix (x)) - [nr, nc] = size (x); - if (nr == nc && nr > 0) - if (nargin == 1) - tol = eps; - endif - if (norm (x - x') / norm(x) <= tol) - retval = nr; - endif + retval = is_square (x); + if (retval != 0) + if (nargin == 1) + tol = eps; + endif + if (norm (x - x') / norm(x) > tol) + retval = 0; endif endif else