Mercurial > hg > octave-lyh
annotate scripts/general/flipud.m @ 14383:07c55bceca23 stable
Fix guarded_eval() subfunction in fminunc (bug #35534).
* fminunc.m: Fix guarded_eval() subfunction in fminunc (bug #35534).
author | Olaf Till <olaf.till@uni-jena.de> |
---|---|
date | Wed, 15 Feb 2012 14:44:37 +0100 |
parents | 72c96de7a403 |
children | f3d52523cde1 |
rev | line source |
---|---|
14138
72c96de7a403
maint: update copyright notices for 2012
John W. Eaton <jwe@octave.org>
parents:
12639
diff
changeset
|
1 ## Copyright (C) 1993-2012 John W. Eaton |
2313 | 2 ## |
3 ## This file is part of Octave. | |
4 ## | |
5 ## Octave is free software; you can redistribute it and/or modify it | |
6 ## under the terms of the GNU General Public License as published by | |
7016 | 7 ## the Free Software Foundation; either version 3 of the License, or (at |
8 ## your option) any later version. | |
2313 | 9 ## |
10 ## Octave is distributed in the hope that it will be useful, but | |
11 ## WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
13 ## General Public License for more details. | |
14 ## | |
15 ## You should have received a copy of the GNU General Public License | |
7016 | 16 ## along with Octave; see the file COPYING. If not, see |
17 ## <http://www.gnu.org/licenses/>. | |
245 | 18 |
3369 | 19 ## -*- texinfo -*- |
20 ## @deftypefn {Function File} {} flipud (@var{x}) | |
12639
4d777e05d47c
doc: Review and update documentation for "Matrix Manipulation" chapter.
Rik <octave@nomad.inbox5.com>
parents:
11587
diff
changeset
|
21 ## Return a copy of @var{x} with the order of the rows reversed. In |
4d777e05d47c
doc: Review and update documentation for "Matrix Manipulation" chapter.
Rik <octave@nomad.inbox5.com>
parents:
11587
diff
changeset
|
22 ## other words, @var{x} is flipped upside-down about a horizontal axis. For |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
8920
diff
changeset
|
23 ## example: |
3426 | 24 ## |
3369 | 25 ## @example |
26 ## @group | |
27 ## flipud ([1, 2; 3, 4]) | |
28 ## @result{} 3 4 | |
29 ## 1 2 | |
30 ## @end group | |
31 ## @end example | |
4869 | 32 ## |
12639
4d777e05d47c
doc: Review and update documentation for "Matrix Manipulation" chapter.
Rik <octave@nomad.inbox5.com>
parents:
11587
diff
changeset
|
33 ## Note that @code{flipud} only works with 2-D arrays. To flip N-D arrays |
4869 | 34 ## use @code{flipdim} instead. |
5642 | 35 ## @seealso{fliplr, flipdim, rot90, rotdim} |
3369 | 36 ## @end deftypefn |
4 | 37 |
2314 | 38 ## Author: jwe |
39 | |
2311 | 40 function y = flipud (x) |
4 | 41 |
42 if (nargin != 1) | |
6046 | 43 print_usage (); |
4 | 44 endif |
45 | |
4869 | 46 if (ndims (x) > 2) |
8664 | 47 error ("flipud: Only works with 2-d arrays"); |
4869 | 48 endif |
49 | |
4 | 50 nr = rows (x); |
51 y = x (nr:-1:1, :); | |
52 | |
53 endfunction | |
7411 | 54 |
55 %!assert((flipud ([1, 2; 3, 4]) == [3, 4; 1, 2] | |
56 %! && flipud ([1, 2; 3, 4; 5, 6]) == [5, 6; 3, 4; 1, 2] | |
57 %! && flipud ([1, 2, 3; 4, 5, 6]) == [4, 5, 6; 1, 2, 3])); | |
58 | |
59 %!error flipud (); | |
60 | |
61 %!error flipud (1, 2); | |
62 |