diff LazyTensors/src/lazy_operations.jl @ 236:856caf960d89 boundary_conditions

Use CartesianIndex for a bunch of index operations
author Jonatan Werpers <jonatan@werpers.com>
date Wed, 26 Jun 2019 18:24:07 +0200
parents a20bb4fac23d
children 1c6afdcfd657
line wrap: on
line diff
--- a/LazyTensors/src/lazy_operations.jl	Wed Jun 26 17:54:32 2019 +0200
+++ b/LazyTensors/src/lazy_operations.jl	Wed Jun 26 18:24:07 2019 +0200
@@ -136,8 +136,8 @@
 Base.adjoint(t::TensorMapping) = LazyTensorMappingTranspose(t)
 Base.adjoint(t::LazyTensorMappingTranspose) = t.tm
 
-apply(tm::LazyTensorMappingTranspose{T,R,D}, v::AbstractArray{T,R}, I::Vararg) where {T,R,D} = apply_transpose(tm.tm, v, I...)
-apply_transpose(tm::LazyTensorMappingTranspose{T,R,D}, v::AbstractArray{T,D}, I::Vararg) where {T,R,D} = apply(tm.tm, v, I...)
+apply(tm::LazyTensorMappingTranspose{T,R,D}, v::AbstractArray{T,R}, I::CartesianIndex{D}) where {T,R,D} = apply_transpose(tm.tm, v, I)
+apply_transpose(tm::LazyTensorMappingTranspose{T,R,D}, v::AbstractArray{T,D}, I::CartesianIndex{R}) where {T,R,D} = apply(tm.tm, v, I)
 
 range_size(tmt::LazyTensorMappingTranspose{T,R,D}, d_size::NTuple{R,Integer}) where {T,R,D} = domain_size(tmt.tm, d_size)
 domain_size(tmt::LazyTensorMappingTranspose{T,R,D}, r_size::NTuple{D,Integer}) where {T,R,D} = range_size(tmt.tm, r_size)