comparison src/SbpOperators/volumeops/derivatives/second_derivative_variable.jl @ 931:720b1358e06d feature/variable_derivatives

More strict apply
author Jonatan Werpers <jonatan@werpers.com>
date Mon, 21 Feb 2022 15:22:44 +0100
parents ba5f4a0ec879
children 863287577ad4
comparison
equal deleted inserted replaced
930:ba5f4a0ec879 931:720b1358e06d
101 function LazyTensors.apply(op::SecondDerivativeVariable, v::AbstractArray, I::Vararg{Index}) 101 function LazyTensors.apply(op::SecondDerivativeVariable, v::AbstractArray, I::Vararg{Index})
102 if I[derivative_direction(op)] isa Index{Lower} 102 if I[derivative_direction(op)] isa Index{Lower}
103 return apply_lower(op, v, Int.(I)...) 103 return apply_lower(op, v, Int.(I)...)
104 elseif I[derivative_direction(op)] isa Index{Upper} 104 elseif I[derivative_direction(op)] isa Index{Upper}
105 return apply_upper(op, v, Int.(I)...) 105 return apply_upper(op, v, Int.(I)...)
106 elseif I[derivative_direction(op)] isa Index{Interior}
107 return apply_interior(op, v, Int.(I)...)
106 else 108 else
107 return apply_interior(op, v, Int.(I)...) 109 error("Invalid region")
108 end 110 end
109 end 111 end
110 112
111 function LazyTensors.apply(op::SecondDerivativeVariable, v::AbstractArray, I...) 113 function LazyTensors.apply(op::SecondDerivativeVariable, v::AbstractArray, I...)
112 dir = derivative_direction(op) 114 dir = derivative_direction(op)