Mercurial > octave
annotate scripts/general/del2.m @ 23946:c7b801f36be4
del2.m: Overhaul function (bug #51728).
* del2.m: Rename output variable to 'L' to represent "Laplacian" in docstring.
Add example code to docstring. Overhaul input validation. Verify that spacing
inputs are either scalars or vectors and that they match size of respective
dimension. Use indexing, rather than for loop, to initially assign ":" to all
entries in idx. Add BIST test for bug #51728. Add BIST inpu validation tests.
author | Rik <rik@octave.org> |
---|---|
date | Fri, 25 Aug 2017 16:26:59 -0700 |
parents | 092078913d54 |
children | 194eb4bd202b |
rev | line source |
---|---|
23219
3ac9f9ecfae5
maint: Update copyright dates.
John W. Eaton <jwe@octave.org>
parents:
23083
diff
changeset
|
1 ## Copyright (C) 2000-2017 Kai Habel |
21562
6c2fd62db1f7
maint: Eliminate accidental double spaces in code.
Rik <rik@octave.org>
parents:
21546
diff
changeset
|
2 ## Copyright (C) 2007 David Bateman |
6788 | 3 ## |
4 ## This file is part of Octave. | |
5 ## | |
6 ## Octave is free software; you can redistribute it and/or modify it | |
7 ## under the terms of the GNU General Public License as published by | |
22755
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
8 ## the Free Software Foundation; either version 3 of the License, or |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
9 ## (at your option) any later version. |
6788 | 10 ## |
11 ## Octave is distributed in the hope that it will be useful, but | |
12 ## WITHOUT ANY WARRANTY; without even the implied warranty of | |
22755
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
13 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22323
diff
changeset
|
14 ## GNU General Public License for more details. |
6788 | 15 ## |
16 ## You should have received a copy of the GNU General Public License | |
7016 | 17 ## along with Octave; see the file COPYING. If not, see |
18 ## <http://www.gnu.org/licenses/>. | |
6788 | 19 |
20 ## -*- texinfo -*- | |
23946
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
21 ## @deftypefn {} {@var{L} =} del2 (@var{M}) |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
22 ## @deftypefnx {} {@var{L} =} del2 (@var{M}, @var{h}) |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
23 ## @deftypefnx {} {@var{L} =} del2 (@var{M}, @var{dx}, @var{dy}, @dots{}) |
6788 | 24 ## |
9165
8c71a86c4bf4
Update section 17.5 (Utility Functions) of arith.txi
Rik <rdrider0-list@yahoo.com>
parents:
9141
diff
changeset
|
25 ## Calculate the discrete Laplace |
8c71a86c4bf4
Update section 17.5 (Utility Functions) of arith.txi
Rik <rdrider0-list@yahoo.com>
parents:
9141
diff
changeset
|
26 ## @tex |
8c71a86c4bf4
Update section 17.5 (Utility Functions) of arith.txi
Rik <rdrider0-list@yahoo.com>
parents:
9141
diff
changeset
|
27 ## operator $( \nabla^2 )$. |
8c71a86c4bf4
Update section 17.5 (Utility Functions) of arith.txi
Rik <rdrider0-list@yahoo.com>
parents:
9141
diff
changeset
|
28 ## @end tex |
8c71a86c4bf4
Update section 17.5 (Utility Functions) of arith.txi
Rik <rdrider0-list@yahoo.com>
parents:
9141
diff
changeset
|
29 ## @ifnottex |
8c71a86c4bf4
Update section 17.5 (Utility Functions) of arith.txi
Rik <rdrider0-list@yahoo.com>
parents:
9141
diff
changeset
|
30 ## operator. |
8c71a86c4bf4
Update section 17.5 (Utility Functions) of arith.txi
Rik <rdrider0-list@yahoo.com>
parents:
9141
diff
changeset
|
31 ## @end ifnottex |
20158
7503499a252b
doc: Update docstrings to have one sentence summary as first line.
Rik <rik@octave.org>
parents:
19833
diff
changeset
|
32 ## |
11469
c776f063fefe
Overhaul m-script files to use common variable name between code and documentation.
Rik <octave@nomad.inbox5.com>
parents:
10821
diff
changeset
|
33 ## For a 2-dimensional matrix @var{M} this is defined as |
6788 | 34 ## @tex |
23946
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
35 ## $$L = {1 \over 4} \left( {d^2 \over dx^2} M(x,y) + {d^2 \over dy^2} M(x,y) \right)$$ |
6788 | 36 ## @end tex |
37 ## @ifnottex | |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
38 ## |
6788 | 39 ## @example |
40 ## @group | |
41 ## 1 / d^2 d^2 \ | |
23946
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
42 ## L = --- * | --- M(x,y) + --- M(x,y) | |
6788 | 43 ## 4 \ dx^2 dy^2 / |
44 ## @end group | |
45 ## @end example | |
10821
693e22af08ae
Grammarcheck documentation of m-files
Rik <octave@nomad.inbox5.com>
parents:
10793
diff
changeset
|
46 ## |
6788 | 47 ## @end ifnottex |
21546
f7f97d7e9294
doc: Wrap m-file docstrings to 79 characters + newline (80 total).
Rik <rik@octave.org>
parents:
20852
diff
changeset
|
48 ## For N-dimensional arrays the sum in parentheses is expanded to include |
f7f97d7e9294
doc: Wrap m-file docstrings to 79 characters + newline (80 total).
Rik <rik@octave.org>
parents:
20852
diff
changeset
|
49 ## second derivatives over the additional higher dimensions. |
6788 | 50 ## |
51 ## The spacing between evaluation points may be defined by @var{h}, which is a | |
11587
c792872f8942
all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents:
11523
diff
changeset
|
52 ## scalar defining the equidistant spacing in all dimensions. Alternatively, |
10793
be55736a0783
Grammarcheck the documentation from m-files.
Rik <octave@nomad.inbox5.com>
parents:
10635
diff
changeset
|
53 ## the spacing in each dimension may be defined separately by @var{dx}, |
11587
c792872f8942
all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents:
11523
diff
changeset
|
54 ## @var{dy}, etc. A scalar spacing argument defines equidistant spacing, |
10793
be55736a0783
Grammarcheck the documentation from m-files.
Rik <octave@nomad.inbox5.com>
parents:
10635
diff
changeset
|
55 ## whereas a vector argument can be used to specify variable spacing. The |
be55736a0783
Grammarcheck the documentation from m-files.
Rik <octave@nomad.inbox5.com>
parents:
10635
diff
changeset
|
56 ## length of the spacing vectors must match the respective dimension of |
11469
c776f063fefe
Overhaul m-script files to use common variable name between code and documentation.
Rik <octave@nomad.inbox5.com>
parents:
10821
diff
changeset
|
57 ## @var{M}. The default spacing value is 1. |
6788 | 58 ## |
23946
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
59 ## Dimensions with fewer than 3 data points are skipped. Boundary points are |
9141
c1fff751b5a8
Update section 17.1 (Utility Functions) of arith.txi
Rik <rdrider0-list@yahoo.com>
parents:
9051
diff
changeset
|
60 ## calculated from the linear extrapolation of interior points. |
6788 | 61 ## |
23946
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
62 ## Example: Second derivative of 2*x^3 |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
63 ## |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
64 ## @example |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
65 ## @group |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
66 ## f = @@(x) 2*x.^3; |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
67 ## dd = @@(x) 12*x; |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
68 ## x = 1:6; |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
69 ## L = 4*del2 (f(x)); |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
70 ## assert (L, dd (x)); |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
71 ## @end group |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
72 ## @end example |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
73 ## |
6788 | 74 ## @seealso{gradient, diff} |
75 ## @end deftypefn | |
76 | |
77 ## Author: Kai Habel <kai.habel@gmx.de> | |
78 | |
23946
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
79 function L = del2 (M, varargin) |
11587
c792872f8942
all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents:
11523
diff
changeset
|
80 |
6788 | 81 if (nargin < 1) |
82 print_usage (); | |
83 endif | |
84 | |
85 nd = ndims (M); | |
86 sz = size (M); | |
87 dx = cell (1, nd); | |
23946
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
88 if (nargin == 1) |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
89 for i = 1 : nd |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
90 dx(i) = ones (sz(i), 1); |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
91 endfor |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
92 elseif (nargin == 2 && isscalar (varargin{1})) |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
93 h = varargin{1}; |
6788 | 94 for i = 1 : nd |
23946
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
95 dx(i) = h * ones (sz(i), 1); |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
96 endfor |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
97 elseif (numel (varargin) <= nd) |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
98 ndx = numel (varargin); |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
99 varargin(ndx+1:nd) = 1; # Fill missing dims with 1. |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
100 ## Reverse dx{1} and dx{2} as the X-dim is the 2nd dim of a meshgrid array |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
101 varargin([1, 2]) = varargin([2, 1]); |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
102 for i = 1 : nd |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
103 arg = varargin{i}; |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
104 if (isscalar (arg)) |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
105 dx(i) = arg * ones (sz(i), 1); |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
106 elseif (isvector (arg)) |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
107 if (length (arg) != sz(i)) |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
108 error ("del2: number of elements in spacing vector %d does not match dimension %d of M", i, i); |
10549 | 109 endif |
23946
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
110 dx(i) = diff (varargin{i})(:); |
6788 | 111 else |
23946
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
112 error ("del2: spacing element %d must be a scalar or vector", i); |
6788 | 113 endif |
114 endfor | |
115 else | |
116 print_usage (); | |
117 endif | |
118 | |
119 idx = cell (1, nd); | |
23946
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
120 idx(:) = ":"; |
6788 | 121 |
23946
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
122 L = zeros (sz); |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
123 for i = 1 : nd |
6788 | 124 if (sz(i) >= 3) |
125 DD = zeros (sz); | |
126 idx1 = idx2 = idx3 = idx; | |
127 | |
128 ## interior points | |
129 idx1{i} = 1 : sz(i) - 2; | |
130 idx2{i} = 2 : sz(i) - 1; | |
131 idx3{i} = 3 : sz(i); | |
132 szi = sz; | |
23946
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
133 szi(i) = 1; |
6788 | 134 |
135 h1 = repmat (shiftdim (dx{i}(1 : sz(i) - 2), 1 - i), szi); | |
136 h2 = repmat (shiftdim (dx{i}(2 : sz(i) - 1), 1 - i), szi); | |
137 DD(idx2{:}) = ((M(idx1{:}) - M(idx2{:})) ./ h1 + ... | |
10549 | 138 (M(idx3{:}) - M(idx2{:})) ./ h2) ./ (h1 + h2); |
6788 | 139 |
140 ## left and right boundary | |
141 if (sz(i) == 3) | |
10549 | 142 DD(idx1{:}) = DD(idx3{:}) = DD(idx2{:}); |
6788 | 143 else |
10549 | 144 idx1{i} = 1; |
145 idx2{i} = 2; | |
146 idx3{i} = 3; | |
19833
9fc020886ae9
maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19697
diff
changeset
|
147 DD(idx1{:}) = (dx{i}(1) + dx{i}(2)) / dx{i}(2) * DD(idx2{:}) - ... |
9fc020886ae9
maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19697
diff
changeset
|
148 dx{i}(1) / dx{i}(2) * DD(idx3{:}); |
6788 | 149 |
10549 | 150 idx1{i} = sz(i); |
151 idx2{i} = sz(i) - 1; | |
152 idx3{i} = sz(i) - 2; | |
19833
9fc020886ae9
maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19697
diff
changeset
|
153 DD(idx1{:}) = (dx{i}(sz(i) - 1) + dx{i}(sz(i) - 2)) / ... |
9fc020886ae9
maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19697
diff
changeset
|
154 dx{i}(sz(i) - 2) * DD(idx2{:}) - ... |
9fc020886ae9
maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
19697
diff
changeset
|
155 dx{i}(sz(i) - 1) / dx{i}(sz(i) - 2) * DD(idx3{:}); |
6788 | 156 endif |
157 | |
23946
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
158 L += DD; |
6788 | 159 endif |
160 endfor | |
161 | |
23946
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
162 L ./= nd; |
21758
ffad2baa90f7
maint: Use newlines to make code more readable.
Rik <rik@octave.org>
parents:
21562
diff
changeset
|
163 |
6788 | 164 endfunction |
17338
1c89599167a6
maint: End m-files with 1 blank line.
Rik <rik@octave.org>
parents:
14138
diff
changeset
|
165 |
18617
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
166 |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
167 ## 3x3 constant test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
168 %!test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
169 %! a = ones (3,3); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
170 %! b = del2 (a); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
171 %! assert (b(:,1), [0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
172 %! assert (b(:,2), [0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
173 %! assert (b(:,3), [0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
174 |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
175 ## 3x3 planar test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
176 %!test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
177 %! a = [1,2,3;2,3,4;3,4,5]; |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
178 %! b = del2 (a); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
179 %! assert (b(:,1), [0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
180 %! assert (b(:,2), [0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
181 %! assert (b(:,3), [0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
182 |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
183 ## 3x3 corner test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
184 %!test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
185 %! a = zeros (3,3); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
186 %! a(1,1) = 1.0; |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
187 %! b = 2*del2 (a); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
188 %! assert (b(:,1), [1.00;0.50;0.50]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
189 %! assert (b(:,2), [0.50;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
190 %! assert (b(:,3), [0.50;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
191 %! assert (b, flipud (2*del2 (flipud (a)))); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
192 %! assert (b, fliplr (2*del2 (fliplr (a)))); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
193 %! assert (b, flipud (fliplr (2*del2 (fliplr (flipud (a)))))); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
194 |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
195 ## 3x3 boundary test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
196 %!test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
197 %! a = zeros (3,3); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
198 %! a(2,1)=1.0; |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
199 %! b = 2*del2 (a); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
200 %! assert (b(:,1), [-1.00;-0.50;-1.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
201 %! assert (b(:,2), [0.00;0.50;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
202 %! assert (b(:,3), [0.00;0.50;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
203 %! assert (b, flipud (2*del2 (flipud (a)))); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
204 %! assert (b, fliplr (2*del2 (fliplr (a)))); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
205 %! assert (b, flipud (fliplr (2*del2 (fliplr (flipud (a)))))); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
206 |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
207 ## 3x3 center test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
208 %!test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
209 %! a = zeros (3,3); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
210 %! a(2,2) = 1.0; |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
211 %! b = del2 (a); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
212 %! assert (b(:,1), [0.00;-0.50;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
213 %! assert (b(:,2), [-0.50;-1.00;-0.50]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
214 %! assert (b(:,3), [0.00;-0.50;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
215 |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
216 ## 4x4 constant test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
217 %!test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
218 %! a = ones (4,4); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
219 %! b = del2 (a); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
220 %! assert (b(:,1), [0.00;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
221 %! assert (b(:,2), [0.00;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
222 %! assert (b(:,3), [0.00;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
223 %! assert (b(:,4), [0.00;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
224 |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
225 ## 4x4 planar test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
226 %!test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
227 %! a = [1,2,3,4;2,3,4,5;3,4,5,6;4,5,6,7]; |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
228 %! b = del2 (a); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
229 %! assert (b(:,1), [0.00;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
230 %! assert (b(:,2), [0.00;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
231 %! assert (b(:,3), [0.00;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
232 %! assert (b(:,4), [0.00;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
233 |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
234 ## 4x4 corner test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
235 %!test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
236 %! a = zeros (4,4); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
237 %! a(1,1) = 1.0; |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
238 %! b = 2*del2 (a); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
239 %! assert (b(:,1), [2.00;0.50;0.00;-0.50]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
240 %! assert (b(:,2), [0.50;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
241 %! assert (b(:,3), [0.00;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
242 %! assert (b(:,4), [-0.50;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
243 %! assert (b, flipud (2*del2 (flipud (a)))); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
244 %! assert (b, fliplr (2*del2 (fliplr (a)))); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
245 %! assert (b, flipud (fliplr (2*del2 (fliplr (flipud (a)))))); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
246 |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
247 ## 9x9 center test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
248 %!test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
249 %! a = zeros (9,9); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
250 %! a(5,5) = 1.0; |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
251 %! b = 2*del2 (a); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
252 %! assert (b(:,1), [0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
253 %! assert (b(:,2), [0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
254 %! assert (b(:,3), [0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
255 %! assert (b(:,4), [0.00;0.00;0.00;0.00;0.50;0.00;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
256 %! assert (b(:,5), [0.00;0.00;0.00;0.50;-2.00;0.50;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
257 %! assert (b(:,6), b(:,4)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
258 %! assert (b(:,7), b(:,3)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
259 %! assert (b(:,8), b(:,2)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
260 %! assert (b(:,9), b(:,1)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
261 |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
262 ## 9x9 boundary test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
263 %!test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
264 %! a = zeros (9,9); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
265 %! a(1,5) = 1.0; |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
266 %! b = 2*del2 (a); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
267 %! assert (b(1,:), [0.00,0.00,0.00,0.50,0.00,0.50,0.00,0.00,0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
268 %! assert (b(2,:), [0.00,0.00,0.00,0.00,0.50,0.00,0.00,0.00,0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
269 %! assert (b(3:9,:), zeros (7,9)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
270 %! a(1,5) = 0.0; |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
271 %! a(5,1) = 1.0; |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
272 %! b = 2*del2 (a); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
273 %! assert (b(:,1), [0.00;0.00;0.00;0.50;0.00;0.50;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
274 %! assert (b(:,2), [0.00;0.00;0.00;0.00;0.50;0.00;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
275 %! assert (b(:,3:9), zeros (9,7)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
276 |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
277 ## 9x9 dh center test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
278 %!test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
279 %! a = zeros (9,9); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
280 %! a(5,5) = 1.0; |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
281 %! b = 8*del2 (a,2); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
282 %! assert (b(:,1:3), zeros (9,3)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
283 %! assert (b(:,4), [0.00;0.00;0.00;0.00;0.50;0.00;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
284 %! assert (b(:,5), [0.00;0.00;0.00;0.50;-2.00;0.50;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
285 %! assert (b(:,6), b(:,4)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
286 %! assert (b(:,7:9), zeros (9,3)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
287 |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
288 ## 9x9 dx test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
289 %!test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
290 %! a = zeros (9,9); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
291 %! a(5,5) = 1.0; |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
292 %! b = 4*del2 (a,2,1); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
293 %! assert (b(1:3,:), zeros (3,9)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
294 %! assert (b(4,:), [0.00;0.00;0.00;0.00;1.00;0.00;0.00;0.00;0.00]'); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
295 %! assert (b(5,:), [0.00;0.00;0.00;0.25;-2.5;0.25;0.00;0.00;0.00]'); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
296 %! assert (b(6,:), b(4,:)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
297 %! assert (b(7:9,:), zeros (3,9)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
298 |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
299 ## 9x9 dy test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
300 %!test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
301 %! a = zeros (9,9); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
302 %! a(5,5) = 1.0; |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
303 %! b = 4*del2 (a,1,2); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
304 %! assert (b(:,1:3), zeros (9,3)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
305 %! assert (b(:,4), [0.00;0.00;0.00;0.00;1.00;0.00;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
306 %! assert (b(:,5), [0.00;0.00;0.00;0.25;-2.5;0.25;0.00;0.00;0.00]); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
307 %! assert (b(:,6), b(:,4)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
308 %! assert (b(:,7:9), zeros (9,3)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
309 |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
310 ## 3D test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
311 %!test |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
312 %! a = zeros (9,9,9); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
313 %! a(5,5,5) = 1.0; |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
314 %! b = 8*3*del2 (a,2); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
315 %! assert (b(:,:,1:3), zeros (9,9,3)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
316 %! assert (b(:,1:3,:), zeros (9,3,9)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
317 %! assert (b(1:3,:,:), zeros (3,9,9)); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
318 %! assert (b(4:5,4,4), [0.0,0.0]'); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
319 %! assert (b(5,5,4), 1.00); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
320 %! assert (b(4,4,5), 0.00); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
321 %! assert (b(5,4,5), 1.00); |
21e5205679d0
del2.m: Add %!tests (bug #42005).
Allan Jacobs <jacobsallanster@gmail.com>
parents:
17744
diff
changeset
|
322 %! assert (b(5,5,5),-6.00); |
19126
995df67fc912
Flip arrays - ND support for fliplr and flipud, and replace flipdim with flip.
Carnë Draug <carandraug+dev@gmail.com>
parents:
18617
diff
changeset
|
323 %! assert (b, flip (b,1)); |
995df67fc912
Flip arrays - ND support for fliplr and flipud, and replace flipdim with flip.
Carnë Draug <carandraug+dev@gmail.com>
parents:
18617
diff
changeset
|
324 %! assert (b, flip (b,2)); |
995df67fc912
Flip arrays - ND support for fliplr and flipud, and replace flipdim with flip.
Carnë Draug <carandraug+dev@gmail.com>
parents:
18617
diff
changeset
|
325 %! assert (b, flip (b,3)); |
23946
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
326 |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
327 %!test <*51728> |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
328 %! x = linspace (-2*pi, 2*pi); |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
329 %! U = cos (x); |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
330 %! L = 4*del2 (U, x); |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
331 |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
332 ## Test input validation |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
333 %!error del2 () |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
334 %!error del2 (1, 1, 2, 3) |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
335 %!error <in spacing vector 1> del2 (1, 2, [1 1]) |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
336 %!error <in spacing vector 2> del2 (1, [1 1], 2) |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
337 %!error <must be a scalar or vector> del2 (1, ones (2,2), 2) |
c7b801f36be4
del2.m: Overhaul function (bug #51728).
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
338 |