Mercurial > octave-libgccjit
comparison scripts/general/del2.m @ 18621:aff86394c201
del2.m: Add %!tests (bug #42005).
* del2.m: Add %!tests (bug #42005).
* contributors.in: Add Allan Jacobs to list of contributors.
author | Allan Jacobs <jacobsallanster@gmail.com> |
---|---|
date | Thu, 03 Apr 2014 16:30:05 -0700 |
parents | d63878346099 |
children |
comparison
equal
deleted
inserted
replaced
18606:0ede4dbb37f1 | 18621:aff86394c201 |
---|---|
156 endfor | 156 endfor |
157 | 157 |
158 D = D ./ nd; | 158 D = D ./ nd; |
159 endfunction | 159 endfunction |
160 | 160 |
161 | |
162 ## 3x3 constant test | |
163 %!test | |
164 %! a = ones (3,3); | |
165 %! b = del2 (a); | |
166 %! assert (b(:,1), [0.00;0.00;0.00]); | |
167 %! assert (b(:,2), [0.00;0.00;0.00]); | |
168 %! assert (b(:,3), [0.00;0.00;0.00]); | |
169 | |
170 ## 3x3 planar test | |
171 %!test | |
172 %! a = [1,2,3;2,3,4;3,4,5]; | |
173 %! b = del2 (a); | |
174 %! assert (b(:,1), [0.00;0.00;0.00]); | |
175 %! assert (b(:,2), [0.00;0.00;0.00]); | |
176 %! assert (b(:,3), [0.00;0.00;0.00]); | |
177 | |
178 ## 3x3 corner test | |
179 %!test | |
180 %! a = zeros (3,3); | |
181 %! a(1,1) = 1.0; | |
182 %! b = 2*del2 (a); | |
183 %! assert (b(:,1), [1.00;0.50;0.50]); | |
184 %! assert (b(:,2), [0.50;0.00;0.00]); | |
185 %! assert (b(:,3), [0.50;0.00;0.00]); | |
186 %! assert (b, flipud (2*del2 (flipud (a)))); | |
187 %! assert (b, fliplr (2*del2 (fliplr (a)))); | |
188 %! assert (b, flipud (fliplr (2*del2 (fliplr (flipud (a)))))); | |
189 | |
190 ## 3x3 boundary test | |
191 %!test | |
192 %! a = zeros (3,3); | |
193 %! a(2,1)=1.0; | |
194 %! b = 2*del2 (a); | |
195 %! assert (b(:,1), [-1.00;-0.50;-1.00]); | |
196 %! assert (b(:,2), [0.00;0.50;0.00]); | |
197 %! assert (b(:,3), [0.00;0.50;0.00]); | |
198 %! assert (b, flipud (2*del2 (flipud (a)))); | |
199 %! assert (b, fliplr (2*del2 (fliplr (a)))); | |
200 %! assert (b, flipud (fliplr (2*del2 (fliplr (flipud (a)))))); | |
201 | |
202 ## 3x3 center test | |
203 %!test | |
204 %! a = zeros (3,3); | |
205 %! a(2,2) = 1.0; | |
206 %! b = del2 (a); | |
207 %! assert (b(:,1), [0.00;-0.50;0.00]); | |
208 %! assert (b(:,2), [-0.50;-1.00;-0.50]); | |
209 %! assert (b(:,3), [0.00;-0.50;0.00]); | |
210 | |
211 ## 4x4 constant test | |
212 %!test | |
213 %! a = ones (4,4); | |
214 %! b = del2 (a); | |
215 %! assert (b(:,1), [0.00;0.00;0.00;0.00]); | |
216 %! assert (b(:,2), [0.00;0.00;0.00;0.00]); | |
217 %! assert (b(:,3), [0.00;0.00;0.00;0.00]); | |
218 %! assert (b(:,4), [0.00;0.00;0.00;0.00]); | |
219 | |
220 ## 4x4 planar test | |
221 %!test | |
222 %! a = [1,2,3,4;2,3,4,5;3,4,5,6;4,5,6,7]; | |
223 %! b = del2 (a); | |
224 %! assert (b(:,1), [0.00;0.00;0.00;0.00]); | |
225 %! assert (b(:,2), [0.00;0.00;0.00;0.00]); | |
226 %! assert (b(:,3), [0.00;0.00;0.00;0.00]); | |
227 %! assert (b(:,4), [0.00;0.00;0.00;0.00]); | |
228 | |
229 ## 4x4 corner test | |
230 %!test | |
231 %! a = zeros (4,4); | |
232 %! a(1,1) = 1.0; | |
233 %! b = 2*del2 (a); | |
234 %! assert (b(:,1), [2.00;0.50;0.00;-0.50]); | |
235 %! assert (b(:,2), [0.50;0.00;0.00;0.00]); | |
236 %! assert (b(:,3), [0.00;0.00;0.00;0.00]); | |
237 %! assert (b(:,4), [-0.50;0.00;0.00;0.00]); | |
238 %! assert (b, flipud (2*del2 (flipud (a)))); | |
239 %! assert (b, fliplr (2*del2 (fliplr (a)))); | |
240 %! assert (b, flipud (fliplr (2*del2 (fliplr (flipud (a)))))); | |
241 | |
242 ## 9x9 center test | |
243 %!test | |
244 %! a = zeros (9,9); | |
245 %! a(5,5) = 1.0; | |
246 %! b = 2*del2 (a); | |
247 %! assert (b(:,1), [0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00]); | |
248 %! assert (b(:,2), [0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00]); | |
249 %! assert (b(:,3), [0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00]); | |
250 %! assert (b(:,4), [0.00;0.00;0.00;0.00;0.50;0.00;0.00;0.00;0.00]); | |
251 %! assert (b(:,5), [0.00;0.00;0.00;0.50;-2.00;0.50;0.00;0.00;0.00]); | |
252 %! assert (b(:,6), b(:,4)); | |
253 %! assert (b(:,7), b(:,3)); | |
254 %! assert (b(:,8), b(:,2)); | |
255 %! assert (b(:,9), b(:,1)); | |
256 | |
257 ## 9x9 boundary test | |
258 %!test | |
259 %! a = zeros (9,9); | |
260 %! a(1,5) = 1.0; | |
261 %! b = 2*del2 (a); | |
262 %! assert (b(1,:), [0.00,0.00,0.00,0.50,0.00,0.50,0.00,0.00,0.00]); | |
263 %! assert (b(2,:), [0.00,0.00,0.00,0.00,0.50,0.00,0.00,0.00,0.00]); | |
264 %! assert (b(3:9,:), zeros (7,9)); | |
265 %! a(1,5) = 0.0; | |
266 %! a(5,1) = 1.0; | |
267 %! b = 2*del2 (a); | |
268 %! assert (b(:,1), [0.00;0.00;0.00;0.50;0.00;0.50;0.00;0.00;0.00]); | |
269 %! assert (b(:,2), [0.00;0.00;0.00;0.00;0.50;0.00;0.00;0.00;0.00]); | |
270 %! assert (b(:,3:9), zeros (9,7)); | |
271 | |
272 ## 9x9 dh center test | |
273 %!test | |
274 %! a = zeros (9,9); | |
275 %! a(5,5) = 1.0; | |
276 %! b = 8*del2 (a,2); | |
277 %! assert (b(:,1:3), zeros (9,3)); | |
278 %! assert (b(:,4), [0.00;0.00;0.00;0.00;0.50;0.00;0.00;0.00;0.00]); | |
279 %! assert (b(:,5), [0.00;0.00;0.00;0.50;-2.00;0.50;0.00;0.00;0.00]); | |
280 %! assert (b(:,6), b(:,4)); | |
281 %! assert (b(:,7:9), zeros (9,3)); | |
282 | |
283 ## 9x9 dx test | |
284 %!test | |
285 %! a = zeros (9,9); | |
286 %! a(5,5) = 1.0; | |
287 %! b = 4*del2 (a,2,1); | |
288 %! assert (b(1:3,:), zeros (3,9)); | |
289 %! assert (b(4,:), [0.00;0.00;0.00;0.00;1.00;0.00;0.00;0.00;0.00]'); | |
290 %! assert (b(5,:), [0.00;0.00;0.00;0.25;-2.5;0.25;0.00;0.00;0.00]'); | |
291 %! assert (b(6,:), b(4,:)); | |
292 %! assert (b(7:9,:), zeros (3,9)); | |
293 | |
294 ## 9x9 dy test | |
295 %!test | |
296 %! a = zeros (9,9); | |
297 %! a(5,5) = 1.0; | |
298 %! b = 4*del2 (a,1,2); | |
299 %! assert (b(:,1:3), zeros (9,3)); | |
300 %! assert (b(:,4), [0.00;0.00;0.00;0.00;1.00;0.00;0.00;0.00;0.00]); | |
301 %! assert (b(:,5), [0.00;0.00;0.00;0.25;-2.5;0.25;0.00;0.00;0.00]); | |
302 %! assert (b(:,6), b(:,4)); | |
303 %! assert (b(:,7:9), zeros (9,3)); | |
304 | |
305 ## 3D test | |
306 %!test | |
307 %! a = zeros (9,9,9); | |
308 %! a(5,5,5) = 1.0; | |
309 %! b = 8*3*del2 (a,2); | |
310 %! assert (b(:,:,1:3), zeros (9,9,3)); | |
311 %! assert (b(:,1:3,:), zeros (9,3,9)); | |
312 %! assert (b(1:3,:,:), zeros (3,9,9)); | |
313 %! assert (b(4:5,4,4), [0.0,0.0]'); | |
314 %! assert (b(5,5,4), 1.00); | |
315 %! assert (b(4,4,5), 0.00); | |
316 %! assert (b(5,4,5), 1.00); | |
317 %! assert (b(5,5,5),-6.00); | |
318 %! assert (b, flipdim (b,1)); | |
319 %! assert (b, flipdim (b,2)); | |
320 %! assert (b, flipdim (b,3)); | |
321 |