Branch Coverage

lib/Math/MatrixDecomposition/Eigen.pm
Criterion Covered Total %
branch 104 220 47.2


line true false branch
56 0 1 if @_ > 0
71 0 4 @_ > 0 && &looks_like_number($_[0]) ? :
72 4 0 $m ? :
0 4 @_ > 0 && &looks_like_number($_[0]) ? :
74 0 4 if @$a != $m * $n or mod($m, 1) != 0 or $m < 1 or mod($n, 1) != 0 or $n < 1
79 0 4 if $m != $n
100 1 3 if @$d > $n
110 1 3 if @$Z > $n
115 2 5 if @$v > $n
128 3 3 if ($$a[$i * $n + $j] != $$a[$j * $n + $i])
136 1 3 if ($sym) { }
176 0 2 if ($scale == 0) { }
269 2 0 if ($h != 0)
330 1 2 if $t2 > $t
334 3 3 if abs $e->[$m] <= &eps() * $t
337 2 1 if ($m > $l)
391 2 3 if abs $e->[$l] <= &eps() * $t
418 3 0 if ($prop{'balance'})
446 0 2 if $scale == 0
513 8 14 $i == $j ? :
519 0 2 if $H[$m * $N + ($m - 1)] == 0
560 2 6 if ($i < $lo or $i > $hi)
587 0 30 if $s == 0
590 3 27 if abs $H[$l * $N + ($l - 1)] < &eps() * $s
595 5 14 if ($l == $n) { }
1 13 elsif ($l == $n - 1) { }
620 1 0 if ($q >= 0) { }
627 1 0 if $z != 0
684 0 13 if ($iter == 10 or $iter == 20)
700 0 13 if ($iter == 30)
704 0 0 if ($s > 0)
707 0 0 if $y < $x
737 13 0 if $m == $l
738 0 0 if abs($H[$m * $N + ($m - 1)]) * (abs($q) + abs($r)) < &eps() * (abs($p) * (abs($H[($m - 1) * $N + ($m - 1)]) + abs($z) + abs($H[($m + 1) * $N + ($m + 1)])))
744 0 13 if $i > $m + 2
753 13 13 if ($k != $m)
757 0 13 $not_last ? :
760 0 13 if $x == 0
768 26 0 if ($s != 0)
770 13 13 if ($k != $m) { }
0 13 elsif ($l != $m) { }
786 13 13 if ($not_last) { }
853 0 3 if $norm == 0
860 8 0 if ($q == 0) { }
0 0 elsif ($q < 0) { }
876 0 7 if ($e->[$i] < 0) { }
885 7 0 if ($e->[$i] == 0) { }
887 7 0 $w != 0 ? :
900 0 0 abs $x > abs $z ? :
907 0 7 if (&eps() * $t * $t > 1)
924 0 0 if (abs $H[$n * $N + ($n - 1)] > abs $H[($n - 1) * $N + $n]) { }
952 0 0 if ($e->[$i] < 0) { }
962 0 0 if ($e->[$i] == 0) { }
976 0 0 if ($vr == 0 and $vi == 0)
987 0 0 if (abs $x > abs($z) + abs($q)) { }
1004 0 0 if (&eps() * $t * $t > 1)
1020 2 6 if ($i < $lo or $i > $hi)
1054 3 0 if ($prop{'balance'})
1073 0 1 if ($k != $i)
1086 0 1 if ($k != $i)
1101 0 11 if $e->[$i] != 0
1107 4 0 if $prop{'normalize'}
1110 4 0 if ($prop{'positive'})
1118 0 11 if $Z->[$j][$i] == 0
1120 5 6 if ($Z->[$j][$i] < 0)
1165 3 0 if ($n > 1)
1168 3 0 if ($opt{'permute'})
1180 12 8 if $i != $j and $$a[$j * $n + $i] != 0
1183 6 1 unless $swap
1185 0 1 if ($j != $l)
1217 12 7 if $i != $j and $$a[$i * $n + $j] != 0
1220 6 1 unless $swap
1222 0 1 if ($j != $k)
1246 3 0 if ($opt{'scale'})
1260 0 3 $small >= 1 * 2**-1022 ? :
1291 0 9 if $c == 0 or $r == 0
1301 0 1 if &isnan($f + $c + $ca + $g + $r + $ra)
1326 1 0 unless ($c + $r >= "0.95" * $s or $f < 1 and $scale[$i] < 1 and $f * $scale[$i] <= $sfmin1 or $f > 1 and $scale[$i] > 1 and $scale[$i] >= $sfmax1 / $f)
1344 3 1 unless $no_conv
1350 3 0 if ref $opt{'low'}
1353 3 0 if ref $opt{'high'}
1369 11 0 if $len != 0
1385 0 4 if ($order =~ /\Avec_/) { }
0 4 elsif (grep ref($_), @{$$self{'value'};}) { }
1392 0 0 $order eq 'vec_asc' ? :
0 0 $order eq 'vec_desc' ? :
1402 0 0 if (ref $_) { }
1417 0 0 unless abs $d[$b] <=> abs $d[$a] or $m[$b] <=> $m[$a] or $d[$b] <=> $d[$a]
1419 0 0 unless abs $d[$a] <=> abs $d[$b] or $m[$a] <=> $m[$b] or $d[$a] <=> $d[$b]
1421 0 0 unless $m[$b] <=> $m[$a] or $d[$b] <=> $d[$a]
1423 0 0 unless $m[$a] <=> $m[$b] or $d[$a] <=> $d[$b]
1425 0 0 unless $d[$b] <=> $d[$a]
1427 0 0 unless $d[$a] <=> $d[$b]
0 0 $order eq 'asc' ? :
0 0 $order eq 'desc' ? :
0 0 $order eq 'norm_asc' ? :
0 0 $order eq 'norm_desc' ? :
0 0 $order eq 'abs_asc' ? :
0 0 $order eq 'abs_desc' ? :
1436 0 0 unless abs $d->[$b] <=> abs $d->[$a]
1438 0 0 unless abs $d->[$a] <=> abs $d->[$b]
1442 4 0 $order eq 'asc' ? :
0 4 $order eq 'desc' ? :
0 4 $order eq 'abs_asc' || $order eq 'norm_asc' ? :
0 4 $order eq 'abs_desc' || $order eq 'norm_desc' ? :
1447 4 0 if (@p > 0)
1467 0 0 if $#$u != $#$v
1474 0 0 if $d = $u->[$i] <=> $v->[$i]
1485 0 4 @_ > 0 ? :
1495 11 0 @_ > 0 ? :