@@ -13,10 +13,11 @@ export polyval, polyint, polyder, roots, polyfit
13
13
export Pade, padeval
14
14
15
15
import Base: start, next, done, length, size, eltype, collect, eachindex
16
- import Base: endof, getindex, setindex!, copy, zero, one, convert, norm, gcd
16
+ import Base: endof, getindex, setindex!, copy, zero, one, convert, gcd
17
17
import Base: show, print, * , / , // , - , + , == , isapprox, divrem, div, rem, eltype
18
- import Base: promote_rule, truncate, chop, conj, transpose, dot, hash
18
+ import Base: promote_rule, truncate, chop, conj, transpose, hash
19
19
import Base: isequal
20
+ import Compat. LinearAlgebra: norm, dot, eigvals, diagm, vecnorm, qrfact
20
21
21
22
const SymbolLike = Union{AbstractString,Char,Symbol}
22
23
@@ -79,7 +80,8 @@ struct Poly{T}
79
80
return new {T} (zeros (T,1 ),Symbol (var))
80
81
else
81
82
# determine the last nonzero element and truncate a accordingly
82
- a_last = max (1 ,findlast (x-> x!= zero (T), a))
83
+ last_nz = findlast (! iszero, a)
84
+ a_last = max (1 , last_nz === nothing ? 0 : last_nz)
83
85
new {T} (a[1 : a_last], Symbol (var))
84
86
end
85
87
end
0 commit comments