@@ -109,9 +109,8 @@ include("show.jl") # display polynomials.
109
109
110
110
convert {T} (:: Type{Poly{T}} , p:: Poly{T} ) = p
111
111
convert {T} (:: Type{Poly{T}} , p:: Poly ) = Poly (convert (Vector{T}, p. a), p. var)
112
- convert {T, S<:Number} (:: Type{Poly{T}} , x:: S , var:: SymbolLike = :x ) = Poly (promote_type (T, S)[x], var)
113
- convert {T, S<:Number} (:: Type{Poly{T}} , x:: Vector{S} , var:: SymbolLike = :x ) = (R = promote_type (T,S); Poly (convert (Vector{R},x), var))
114
- convert {T, S<:Number,n} (:: Type{Poly{T}} , x:: Array{S,n} , var:: SymbolLike = :x ) = map (el-> convert (Poly{promote_type (T,S)},el,var),x)
112
+ convert {T, S<:Number} (:: Type{Poly{T}} , x:: S , var:: SymbolLike = :x ) = Poly (T[x], var)
113
+ convert {T, S<:Number} (:: Type{Poly{T}} , x:: AbstractArray{S} , var:: SymbolLike = :x ) = map (el-> Poly (T[el],var), x)
115
114
promote_rule {T, S} (:: Type{Poly{T}} , :: Type{Poly{S}} ) = Poly{promote_type (T, S)}
116
115
promote_rule {T, S<:Number} (:: Type{Poly{T}} , :: Type{S} ) = Poly{promote_type (T, S)}
117
116
eltype {T} (:: Poly{T} ) = T
@@ -306,7 +305,7 @@ dot_operators = quote
306
305
@compat Base.:.* {T<: Number ,S}(c:: T , p:: Poly{S} ) = Poly (c * p. a, p. var)
307
306
@compat Base.:.* {T<: Number ,S}(p:: Poly{S} , c:: T ) = Poly (p. a * c, p. var)
308
307
end
309
- VERSION < v " 0.6.0-dev " && eval (dot_operators)
308
+ VERSION < v " 0.6.0" && eval (dot_operators)
310
309
311
310
312
311
# are any values NaN
@@ -434,7 +433,7 @@ polyint{T,S<:Number}(p::Poly{T}, k::S) = _polyint(p, k)
434
433
function _polyint {T,S<:Number} (p:: Poly{T} , k:: S )
435
434
n = length (p)
436
435
R = promote_type (typeof (one (T)/ 1 ), S)
437
- a2 = Array (R, n+ 1 )
436
+ a2 = Vector {R} ( n+ 1 )
438
437
a2[1 ] = k
439
438
for i = 1 : n
440
439
a2[i+ 1 ] = p[i- 1 ] / i
474
473
475
474
function _polyder {T} (p:: Poly{T} , order:: Int = 1 )
476
475
n = length (p)
477
- a2 = Array (T, n- order)
476
+ a2 = Vector {T} ( n- order)
478
477
for i = order: n- 1
479
478
a2[i- order+ 1 ] = p[i] * prod ((i- order+ 1 ): i)
480
479
end
0 commit comments