comparison TensorMappings.jl @ 178:64b9751b3cb2 boundary_conditions

Fix error in getindex for TensorApplicationExpression
author Vidar Stiernström <vidar.stiernstrom@it.uu.se>
date Mon, 17 Jun 2019 10:41:20 +0200
parents 24779d423243
children
comparison
equal deleted inserted replaced
176:24779d423243 178:64b9751b3cb2
64 struct TensorApplicationExpression{T,R,D} <: AbstractArray{T,R} 64 struct TensorApplicationExpression{T,R,D} <: AbstractArray{T,R}
65 ta::TensorApplication{R,D} 65 ta::TensorApplication{R,D}
66 o::AbstractArray{T,D} 66 o::AbstractArray{T,D}
67 end 67 end
68 Base.size(tae::TensorApplicationExpression) = size(tae.ta) #TODO: Not sure how to handle this 68 Base.size(tae::TensorApplicationExpression) = size(tae.ta) #TODO: Not sure how to handle this
69 Base.getindex(tae::TensorApplicationExpression, I::Vararg) = apply(tae.ta, ta.o, I...) + o[I...] 69 Base.getindex(tae::TensorApplicationExpression, I::Vararg) = tae.ta[I...] + tae.o[I...]
70 import Base.+ 70 import Base.+
71 import Base.- 71 import Base.-
72 +(ta::TensorApplication{T,R,D}, o::AbstractArray{T,D}) where {T,R,D} = TensorApplicationExpression(ta,o) 72 +(ta::TensorApplication{T,R,D}, o::AbstractArray{T,D}) where {T,R,D} = TensorApplicationExpression(ta,o)
73 +(o::AbstractArray{T,D},ta::TensorApplication{T,R,D}) where {T,R,D} = ta + o 73 +(o::AbstractArray{T,D},ta::TensorApplication{T,R,D}) where {T,R,D} = ta + o
74 -(ta::TensorApplication{T,R,D}, o::AbstractArray{T,D}) where {T,R,D} = ta + -o 74 -(ta::TensorApplication{T,R,D}, o::AbstractArray{T,D}) where {T,R,D} = ta + -o