@@ -95,17 +95,17 @@ length(a::AFArray) = prod(size(a))
9595inv {T<:Complex,N} (X:: AFArray{T,N} ):: AFArray{T,N} = inverse (X,AF_MAT_NONE)
9696inv {T<:Real,N} (X:: AFArray{T,N} ):: AFArray{T,N} = inverse (X,AF_MAT_NONE)
9797range {T} (:: Type{AFArray{T}} , a:: Integer , b:: Integer ) = range (1 , [b], 0 , T) + T (a)
98- function range {T1, T2 } (:: Type{AFArray{T1 }} , a :: T2 , b :: T2 , c :: Integer )
99- x = b .* ones (AFArray{T1 }, c )
100- x[1 ] = a
98+ function range {T } (:: Type{AFArray{T }} , start, step, len :: Integer )
99+ x = step .* ones (AFArray{T }, len )
100+ x[1 ] = start
101101 cumsum (x)
102102end
103- function linspace {T} (:: Type{AFArray} , a:: T , b:: T , c:: Integer )
104- a_fl = Float64 (a)
105- b_fl = Float64 (b)
106- dx = (b_fl - a_fl)/ (Float64 (c) - 1.0 )
107- range (AFArray{Float64}, a_fl, dx, c)
103+ range (:: Type{AFArray} , a:: Integer , b:: Integer , c:: Integer ) = range (AFArray{Float64}, a, b, c)
104+ function linspace {T} (:: Type{AFArray{T}} , start, stop, len:: Integer )
105+ dx = T ((stop - start)/ (len - 1 ))
106+ range (AFArray{T}, start, dx, len)
108107end
108+ linspace (:: Type{AFArray} , start:: Integer , stop:: Integer , len:: Integer ) = linspace (AFArray{Float64}, start, stop, len)
109109function Base. sum (A:: AFArray , ndims)
110110 B = A
111111 for i in ndims
0 commit comments