1Ufunc(3) User Contributed Perl Documentation Ufunc(3)
2
3
4
6 PDL::Ufunc - primitive ufunc operations for pdl
7
9 This module provides some primitive and useful functions defined using
10 PDL::PP based on functionality of what are sometimes called ufuncs (for
11 example NumPY and Mathematica talk about these). It collects all the
12 functions generally used to "reduce" or "accumulate" along a dimension.
13 These all do their job across the first dimension but by using the
14 slicing functions you can do it on any dimension.
15
16 The PDL::Reduce module provides an alternative interface to many of the
17 functions in this module.
18
20 use PDL::Ufunc;
21
23 prodover
24 Signature: (a(n); int+ [o]b())
25
26 Project via product to N-1 dimensions
27
28 This function reduces the dimensionality of an ndarray by one by taking
29 the product along the 1st dimension.
30
31 By using xchg etc. it is possible to use any dimension.
32
33 $y = prodover($x);
34
35 $spectrum = prodover $image->transpose
36
37 prodover processes bad values. It will set the bad-value flag of all
38 output ndarrays if the flag is set for any of the input ndarrays.
39
40 cprodover
41 Signature: (a(n); cdouble [o]b())
42
43 Project via product to N-1 dimensions
44
45 This function reduces the dimensionality of an ndarray by one by taking
46 the product along the 1st dimension.
47
48 By using xchg etc. it is possible to use any dimension.
49
50 $y = dprodover($x);
51
52 $spectrum = dprodover $image->transpose
53
54 Unlike prodover, the calculations are performed in complex double
55 precision.
56
57 cprodover processes bad values. It will set the bad-value flag of all
58 output ndarrays if the flag is set for any of the input ndarrays.
59
60 dprodover
61 Signature: (a(n); double [o]b())
62
63 Project via product to N-1 dimensions
64
65 This function reduces the dimensionality of an ndarray by one by taking
66 the product along the 1st dimension.
67
68 By using xchg etc. it is possible to use any dimension.
69
70 $y = dprodover($x);
71
72 $spectrum = dprodover $image->transpose
73
74 Unlike "prodover", the calculations are performed in double precision.
75
76 dprodover processes bad values. It will set the bad-value flag of all
77 output ndarrays if the flag is set for any of the input ndarrays.
78
79 cumuprodover
80 Signature: (a(n); int+ [o]b(n))
81
82 Cumulative product
83
84 This function calculates the cumulative product along the 1st
85 dimension.
86
87 By using xchg etc. it is possible to use any dimension.
88
89 The sum is started so that the first element in the cumulative product
90 is the first element of the parameter.
91
92 $y = cumuprodover($x);
93
94 $spectrum = cumuprodover $image->transpose
95
96 cumuprodover processes bad values. It will set the bad-value flag of
97 all output ndarrays if the flag is set for any of the input ndarrays.
98
99 dcumuprodover
100 Signature: (a(n); double [o]b(n))
101
102 Cumulative product
103
104 This function calculates the cumulative product along the 1st
105 dimension.
106
107 By using xchg etc. it is possible to use any dimension.
108
109 The sum is started so that the first element in the cumulative product
110 is the first element of the parameter.
111
112 $y = cumuprodover($x);
113
114 $spectrum = cumuprodover $image->transpose
115
116 Unlike "cumuprodover", the calculations are performed in double
117 precision.
118
119 dcumuprodover processes bad values. It will set the bad-value flag of
120 all output ndarrays if the flag is set for any of the input ndarrays.
121
122 sumover
123 Signature: (a(n); int+ [o]b())
124
125 Project via sum to N-1 dimensions
126
127 This function reduces the dimensionality of an ndarray by one by taking
128 the sum along the 1st dimension.
129
130 By using xchg etc. it is possible to use any dimension.
131
132 $y = sumover($x);
133
134 $spectrum = sumover $image->transpose
135
136 sumover processes bad values. It will set the bad-value flag of all
137 output ndarrays if the flag is set for any of the input ndarrays.
138
139 csumover
140 Signature: (a(n); cdouble [o]b())
141
142 Project via sum to N-1 dimensions
143
144 This function reduces the dimensionality of an ndarray by one by taking
145 the sum along the 1st dimension.
146
147 By using xchg etc. it is possible to use any dimension.
148
149 $y = dsumover($x);
150
151 $spectrum = dsumover $image->transpose
152
153 Unlike sumover, the calculations are performed in complex double
154 precision.
155
156 csumover processes bad values. It will set the bad-value flag of all
157 output ndarrays if the flag is set for any of the input ndarrays.
158
159 dsumover
160 Signature: (a(n); double [o]b())
161
162 Project via sum to N-1 dimensions
163
164 This function reduces the dimensionality of an ndarray by one by taking
165 the sum along the 1st dimension.
166
167 By using xchg etc. it is possible to use any dimension.
168
169 $y = dsumover($x);
170
171 $spectrum = dsumover $image->transpose
172
173 Unlike "sumover", the calculations are performed in double precision.
174
175 dsumover processes bad values. It will set the bad-value flag of all
176 output ndarrays if the flag is set for any of the input ndarrays.
177
178 cumusumover
179 Signature: (a(n); int+ [o]b(n))
180
181 Cumulative sum
182
183 This function calculates the cumulative sum along the 1st dimension.
184
185 By using xchg etc. it is possible to use any dimension.
186
187 The sum is started so that the first element in the cumulative sum is
188 the first element of the parameter.
189
190 $y = cumusumover($x);
191
192 $spectrum = cumusumover $image->transpose
193
194 cumusumover processes bad values. It will set the bad-value flag of
195 all output ndarrays if the flag is set for any of the input ndarrays.
196
197 dcumusumover
198 Signature: (a(n); double [o]b(n))
199
200 Cumulative sum
201
202 This function calculates the cumulative sum along the 1st dimension.
203
204 By using xchg etc. it is possible to use any dimension.
205
206 The sum is started so that the first element in the cumulative sum is
207 the first element of the parameter.
208
209 $y = cumusumover($x);
210
211 $spectrum = cumusumover $image->transpose
212
213 Unlike "cumusumover", the calculations are performed in double
214 precision.
215
216 dcumusumover processes bad values. It will set the bad-value flag of
217 all output ndarrays if the flag is set for any of the input ndarrays.
218
219 andover
220 Signature: (a(n); int+ [o]b())
221
222 Project via and to N-1 dimensions
223
224 This function reduces the dimensionality of an ndarray by one by taking
225 the and along the 1st dimension.
226
227 By using xchg etc. it is possible to use any dimension.
228
229 $y = andover($x);
230
231 $spectrum = andover $image->transpose
232
233 If "a()" contains only bad data (and its bad flag is set), "b()" is set
234 bad. Otherwise "b()" will have its bad flag cleared, as it will not
235 contain any bad values.
236
237 bandover
238 Signature: (a(n); [o]b())
239
240 Project via bitwise and to N-1 dimensions
241
242 This function reduces the dimensionality of an ndarray by one by taking
243 the bitwise and along the 1st dimension.
244
245 By using xchg etc. it is possible to use any dimension.
246
247 $y = bandover($x);
248
249 $spectrum = bandover $image->transpose
250
251 If "a()" contains only bad data (and its bad flag is set), "b()" is set
252 bad. Otherwise "b()" will have its bad flag cleared, as it will not
253 contain any bad values.
254
255 borover
256 Signature: (a(n); [o]b())
257
258 Project via bitwise or to N-1 dimensions
259
260 This function reduces the dimensionality of an ndarray by one by taking
261 the bitwise or along the 1st dimension.
262
263 By using xchg etc. it is possible to use any dimension.
264
265 $y = borover($x);
266
267 $spectrum = borover $image->transpose
268
269 If "a()" contains only bad data (and its bad flag is set), "b()" is set
270 bad. Otherwise "b()" will have its bad flag cleared, as it will not
271 contain any bad values.
272
273 orover
274 Signature: (a(n); int+ [o]b())
275
276 Project via or to N-1 dimensions
277
278 This function reduces the dimensionality of an ndarray by one by taking
279 the or along the 1st dimension.
280
281 By using xchg etc. it is possible to use any dimension.
282
283 $y = orover($x);
284
285 $spectrum = orover $image->transpose
286
287 If "a()" contains only bad data (and its bad flag is set), "b()" is set
288 bad. Otherwise "b()" will have its bad flag cleared, as it will not
289 contain any bad values.
290
291 zcover
292 Signature: (a(n); int+ [o]b())
293
294 Project via == 0 to N-1 dimensions
295
296 This function reduces the dimensionality of an ndarray by one by taking
297 the == 0 along the 1st dimension.
298
299 By using xchg etc. it is possible to use any dimension.
300
301 $y = zcover($x);
302
303 $spectrum = zcover $image->transpose
304
305 If "a()" contains only bad data (and its bad flag is set), "b()" is set
306 bad. Otherwise "b()" will have its bad flag cleared, as it will not
307 contain any bad values.
308
309 intover
310 Signature: (a(n); float+ [o]b())
311
312 Project via integral to N-1 dimensions
313
314 This function reduces the dimensionality of an ndarray by one by taking
315 the integral along the 1st dimension.
316
317 By using xchg etc. it is possible to use any dimension.
318
319 $y = intover($x);
320
321 $spectrum = intover $image->transpose
322
323 Notes:
324
325 "intover" uses a point spacing of one (i.e., delta-h==1). You will
326 need to scale the result to correct for the true point delta).
327
328 For "n > 3", these are all "O(h^4)" (like Simpson's rule), but are
329 integrals between the end points assuming the pdl gives values just at
330 these centres: for such `functions', sumover is correct to O(h), but is
331 the natural (and correct) choice for binned data, of course.
332
333 intover ignores the bad-value flag of the input ndarrays. It will set
334 the bad-value flag of all output ndarrays if the flag is set for any of
335 the input ndarrays.
336
337 average
338 Signature: (a(n); int+ [o]b())
339
340 Project via average to N-1 dimensions
341
342 This function reduces the dimensionality of an ndarray by one by taking
343 the average along the 1st dimension.
344
345 By using xchg etc. it is possible to use any dimension.
346
347 $y = average($x);
348
349 $spectrum = average $image->transpose
350
351 average processes bad values. It will set the bad-value flag of all
352 output ndarrays if the flag is set for any of the input ndarrays.
353
354 avgover
355 Synonym for average.
356
357 caverage
358 Signature: (a(n); cdouble [o]b())
359
360 Project via average to N-1 dimensions
361
362 This function reduces the dimensionality of an ndarray by one by taking
363 the average along the 1st dimension.
364
365 By using xchg etc. it is possible to use any dimension.
366
367 $y = daverage($x);
368
369 $spectrum = daverage $image->transpose
370
371 Unlike average, the calculation is performed in complex double
372 precision.
373
374 caverage processes bad values. It will set the bad-value flag of all
375 output ndarrays if the flag is set for any of the input ndarrays.
376
377 daverage
378 Signature: (a(n); double [o]b())
379
380 Project via average to N-1 dimensions
381
382 This function reduces the dimensionality of an ndarray by one by taking
383 the average along the 1st dimension.
384
385 By using xchg etc. it is possible to use any dimension.
386
387 $y = daverage($x);
388
389 $spectrum = daverage $image->transpose
390
391 Unlike "average", the calculation is performed in double precision.
392
393 daverage processes bad values. It will set the bad-value flag of all
394 output ndarrays if the flag is set for any of the input ndarrays.
395
396 davgover
397 Synonym for daverage.
398
399 medover
400 Signature: (a(n); [o]b(); [t]tmp(n))
401
402 Project via median to N-1 dimensions
403
404 This function reduces the dimensionality of an ndarray by one by taking
405 the median along the 1st dimension.
406
407 By using xchg etc. it is possible to use any dimension.
408
409 $y = medover($x);
410
411 $spectrum = medover $image->transpose
412
413 medover processes bad values. It will set the bad-value flag of all
414 output ndarrays if the flag is set for any of the input ndarrays.
415
416 oddmedover
417 Signature: (a(n); [o]b(); [t]tmp(n))
418
419 Project via oddmedian to N-1 dimensions
420
421 This function reduces the dimensionality of an ndarray by one by taking
422 the oddmedian along the 1st dimension.
423
424 By using xchg etc. it is possible to use any dimension.
425
426 $y = oddmedover($x);
427
428 $spectrum = oddmedover $image->transpose
429
430 The median is sometimes not a good choice as if the array has an even
431 number of elements it lies half-way between the two middle values -
432 thus it does not always correspond to a data value. The lower-odd
433 median is just the lower of these two values and so it ALWAYS sits on
434 an actual data value which is useful in some circumstances.
435
436 oddmedover processes bad values. It will set the bad-value flag of all
437 output ndarrays if the flag is set for any of the input ndarrays.
438
439 modeover
440 Signature: (data(n); [o]out(); [t]sorted(n))
441
442 Project via mode to N-1 dimensions
443
444 This function reduces the dimensionality of an ndarray by one by taking
445 the mode along the 1st dimension.
446
447 By using xchg etc. it is possible to use any dimension.
448
449 $y = modeover($x);
450
451 $spectrum = modeover $image->transpose
452
453 The mode is the single element most frequently found in a discrete data
454 set.
455
456 It only makes sense for integer data types, since floating-point types
457 are demoted to integer before the mode is calculated.
458
459 "modeover" treats BAD the same as any other value: if BAD is the most
460 common element, the returned value is also BAD.
461
462 modeover does not process bad values. It will set the bad-value flag
463 of all output ndarrays if the flag is set for any of the input
464 ndarrays.
465
466 pctover
467 Signature: (a(n); p(); [o]b(); [t]tmp(n))
468
469 Project via percentile to N-1 dimensions
470
471 This function reduces the dimensionality of an ndarray by one by
472 finding the specified percentile (p) along the 1st dimension. The
473 specified percentile must be between 0.0 and 1.0. When the specified
474 percentile falls between data points, the result is interpolated.
475 Values outside the allowed range are clipped to 0.0 or 1.0
476 respectively. The algorithm implemented here is based on the
477 interpolation variant described at
478 <http://en.wikipedia.org/wiki/Percentile> as used by Microsoft Excel
479 and recommended by NIST.
480
481 By using xchg etc. it is possible to use any dimension.
482
483 $y = pctover($x, $p);
484
485 $spectrum = pctover $image->transpose, $p
486
487 pctover processes bad values. It will set the bad-value flag of all
488 output ndarrays if the flag is set for any of the input ndarrays.
489
490 oddpctover
491 Signature: (a(n); p(); [o]b(); [t]tmp(n))
492
493 Project via percentile to N-1 dimensions
494
495 This function reduces the dimensionality of an ndarray by one by
496 finding the specified percentile along the 1st dimension. The
497 specified percentile must be between 0.0 and 1.0. When the specified
498 percentile falls between two values, the nearest data value is the
499 result. The algorithm implemented is from the textbook version
500 described first at <http://en.wikipedia.org/wiki/Percentile>.
501
502 By using xchg etc. it is possible to use any dimension.
503
504 $y = oddpctover($x, $p);
505
506 $spectrum = oddpctover $image->transpose, $p
507
508 oddpctover processes bad values. It will set the bad-value flag of all
509 output ndarrays if the flag is set for any of the input ndarrays.
510
511 pct
512 Return the specified percentile of all elements in an ndarray. The
513 specified percentile (p) must be between 0.0 and 1.0. When the
514 specified percentile falls between data points, the result is
515 interpolated.
516
517 $x = pct($data, $pct);
518
519 oddpct
520 Return the specified percentile of all elements in an ndarray. The
521 specified percentile must be between 0.0 and 1.0. When the specified
522 percentile falls between two values, the nearest data value is the
523 result.
524
525 $x = oddpct($data, $pct);
526
527 avg
528 Return the average of all elements in an ndarray.
529
530 See the documentation for "average" for more information.
531
532 $x = avg($data);
533
534 This routine handles bad values.
535
536 sum
537 Return the sum of all elements in an ndarray.
538
539 See the documentation for "sumover" for more information.
540
541 $x = sum($data);
542
543 This routine handles bad values.
544
545 prod
546 Return the product of all elements in an ndarray.
547
548 See the documentation for "prodover" for more information.
549
550 $x = prod($data);
551
552 This routine handles bad values.
553
554 davg
555 Return the average (in double precision) of all elements in an ndarray.
556
557 See the documentation for "daverage" for more information.
558
559 $x = davg($data);
560
561 This routine handles bad values.
562
563 dsum
564 Return the sum (in double precision) of all elements in an ndarray.
565
566 See the documentation for "dsumover" for more information.
567
568 $x = dsum($data);
569
570 This routine handles bad values.
571
572 dprod
573 Return the product (in double precision) of all elements in an ndarray.
574
575 See the documentation for "dprodover" for more information.
576
577 $x = dprod($data);
578
579 This routine handles bad values.
580
581 zcheck
582 Return the check for zero of all elements in an ndarray.
583
584 See the documentation for "zcover" for more information.
585
586 $x = zcheck($data);
587
588 This routine handles bad values.
589
590 and
591 Return the logical and of all elements in an ndarray.
592
593 See the documentation for "andover" for more information.
594
595 $x = and($data);
596
597 This routine handles bad values.
598
599 band
600 Return the bitwise and of all elements in an ndarray.
601
602 See the documentation for "bandover" for more information.
603
604 $x = band($data);
605
606 This routine handles bad values.
607
608 or
609 Return the logical or of all elements in an ndarray.
610
611 See the documentation for "orover" for more information.
612
613 $x = or($data);
614
615 This routine handles bad values.
616
617 bor
618 Return the bitwise or of all elements in an ndarray.
619
620 See the documentation for "borover" for more information.
621
622 $x = bor($data);
623
624 This routine handles bad values.
625
626 min
627 Return the minimum of all elements in an ndarray.
628
629 See the documentation for "minimum" for more information.
630
631 $x = min($data);
632
633 This routine handles bad values.
634
635 max
636 Return the maximum of all elements in an ndarray.
637
638 See the documentation for "maximum" for more information.
639
640 $x = max($data);
641
642 This routine handles bad values.
643
644 median
645 Return the median of all elements in an ndarray.
646
647 See the documentation for "medover" for more information.
648
649 $x = median($data);
650
651 This routine handles bad values.
652
653 mode
654 Return the mode of all elements in an ndarray.
655
656 See the documentation for "modeover" for more information.
657
658 $x = mode($data);
659
660 This routine handles bad values.
661
662 oddmedian
663 Return the oddmedian of all elements in an ndarray.
664
665 See the documentation for "oddmedover" for more information.
666
667 $x = oddmedian($data);
668
669 This routine handles bad values.
670
671 any
672 Return true if any element in ndarray set
673
674 Useful in conditional expressions:
675
676 if (any $x>15) { print "some values are greater than 15\n" }
677
678 See "or" for comments on what happens when all elements in the check
679 are bad.
680
681 all
682 Return true if all elements in ndarray set
683
684 Useful in conditional expressions:
685
686 if (all $x>15) { print "all values are greater than 15\n" }
687
688 See "and" for comments on what happens when all elements in the check
689 are bad.
690
691 minmax
692 Returns a list with minimum and maximum values of an ndarray.
693
694 ($mn, $mx) = minmax($pdl);
695
696 This routine does not thread over the dimensions of $pdl; it returns
697 the minimum and maximum values of the whole ndarray. See "minmaximum"
698 if this is not what is required. The two values are returned as Perl
699 scalars similar to min/max, and therefore ignore whether the values are
700 bad.
701
702 pdl> $x = pdl [1,-2,3,5,0]
703 pdl> ($min, $max) = minmax($x);
704 pdl> p "$min $max\n";
705 -2 5
706
707 qsort
708 Signature: (a(n); [o]b(n))
709
710 Quicksort a vector into ascending order.
711
712 print qsort random(10);
713
714 Bad values are moved to the end of the array:
715
716 pdl> p $y
717 [42 47 98 BAD 22 96 74 41 79 76 96 BAD 32 76 25 59 BAD 96 32 BAD]
718 pdl> p qsort($y)
719 [22 25 32 32 41 42 47 59 74 76 76 79 96 96 96 98 BAD BAD BAD BAD]
720
721 qsorti
722 Signature: (a(n); indx [o]indx(n))
723
724 Quicksort a vector and return index of elements in ascending order.
725
726 $ix = qsorti $x;
727 print $x->index($ix); # Sorted list
728
729 Bad elements are moved to the end of the array:
730
731 pdl> p $y
732 [42 47 98 BAD 22 96 74 41 79 76 96 BAD 32 76 25 59 BAD 96 32 BAD]
733 pdl> p $y->index( qsorti($y) )
734 [22 25 32 32 41 42 47 59 74 76 76 79 96 96 96 98 BAD BAD BAD BAD]
735
736 qsortvec
737 Signature: (a(n,m); [o]b(n,m))
738
739 Sort a list of vectors lexicographically.
740
741 The 0th dimension of the source ndarray is dimension in the vector; the
742 1st dimension is list order. Higher dimensions are threaded over.
743
744 print qsortvec pdl([[1,2],[0,500],[2,3],[4,2],[3,4],[3,5]]);
745 [
746 [ 0 500]
747 [ 1 2]
748 [ 2 3]
749 [ 3 4]
750 [ 3 5]
751 [ 4 2]
752 ]
753
754 Vectors with bad components should be moved to the end of the array:
755
756 qsortveci
757 Signature: (a(n,m); indx [o]indx(m))
758
759 Sort a list of vectors lexicographically, returning the indices of the
760 sorted vectors rather than the sorted list itself.
761
762 As with "qsortvec", the input PDL should be an NxM array containing M
763 separate N-dimensional vectors. The return value is an integer M-PDL
764 containing the M-indices of original array rows, in sorted order.
765
766 As with "qsortvec", the zeroth element of the vectors runs slowest in
767 the sorted list.
768
769 Additional dimensions are threaded over: each plane is sorted
770 separately, so qsortveci may be thought of as a collapse operator of
771 sorts (groan).
772
773 Vectors with bad components should be moved to the end of the array:
774
775 minimum
776 Signature: (a(n); [o]c())
777
778 Project via minimum to N-1 dimensions
779
780 This function reduces the dimensionality of an ndarray by one by taking
781 the minimum along the 1st dimension.
782
783 By using xchg etc. it is possible to use any dimension.
784
785 $y = minimum($x);
786
787 $spectrum = minimum $image->transpose
788
789 Output is set bad if all elements of the input are bad, otherwise the
790 bad flag is cleared for the output ndarray.
791
792 Note that "NaNs" are considered to be valid values; see isfinite and
793 badmask for ways of masking NaNs.
794
795 minimum_ind
796 Signature: (a(n); indx [o] c())
797
798 Like minimum but returns the index rather than the value
799
800 Output is set bad if all elements of the input are bad, otherwise the
801 bad flag is cleared for the output ndarray.
802
803 minimum_n_ind
804 Signature: (a(n); indx [o]c(m))
805
806 Returns the index of "m" minimum elements
807
808 Not yet been converted to ignore bad values
809
810 maximum
811 Signature: (a(n); [o]c())
812
813 Project via maximum to N-1 dimensions
814
815 This function reduces the dimensionality of an ndarray by one by taking
816 the maximum along the 1st dimension.
817
818 By using xchg etc. it is possible to use any dimension.
819
820 $y = maximum($x);
821
822 $spectrum = maximum $image->transpose
823
824 Output is set bad if all elements of the input are bad, otherwise the
825 bad flag is cleared for the output ndarray.
826
827 Note that "NaNs" are considered to be valid values; see isfinite and
828 badmask for ways of masking NaNs.
829
830 maximum_ind
831 Signature: (a(n); indx [o] c())
832
833 Like maximum but returns the index rather than the value
834
835 Output is set bad if all elements of the input are bad, otherwise the
836 bad flag is cleared for the output ndarray.
837
838 maximum_n_ind
839 Signature: (a(n); indx [o]c(m))
840
841 Returns the index of "m" maximum elements
842
843 Not yet been converted to ignore bad values
844
845 maxover
846 Synonym for maximum.
847
848 maxover_ind
849 Synonym for maximum_ind.
850
851 maxover_n_ind
852 Synonym for maximum_n_ind.
853
854 minover
855 Synonym for minimum.
856
857 minover_ind
858 Synonym for minimum_ind.
859
860 minover_n_ind
861 Synonym for minimum_n_ind
862
863 minmaximum
864 Signature: (a(n); [o]cmin(); [o] cmax(); indx [o]cmin_ind(); indx [o]cmax_ind())
865
866 Find minimum and maximum and their indices for a given ndarray;
867
868 pdl> $x=pdl [[-2,3,4],[1,0,3]]
869 pdl> ($min, $max, $min_ind, $max_ind)=minmaximum($x)
870 pdl> p $min, $max, $min_ind, $max_ind
871 [-2 0] [4 3] [0 1] [2 2]
872
873 See also "minmax", which clumps the ndarray together.
874
875 If "a()" contains only bad data, then the output ndarrays will be set
876 bad, along with their bad flag. Otherwise they will have their bad
877 flags cleared, since they will not contain any bad values.
878
879 minmaxover
880 Synonym for minmaximum.
881
883 Copyright (C) Tuomas J. Lukka 1997 (lukka@husc.harvard.edu).
884 Contributions by Christian Soeller (c.soeller@auckland.ac.nz) and Karl
885 Glazebrook (kgb@aaoepp.aao.gov.au). All rights reserved. There is no
886 warranty. You are allowed to redistribute this software / documentation
887 under certain conditions. For details, see the file COPYING in the PDL
888 distribution. If this file is separated from the PDL distribution, the
889 copyright notice should be included in the file.
890
891
892
893perl v5.34.0 2021-08-16 Ufunc(3)