Skip to content

Commit 503a3f7

Browse files
authored
Improve inference in normalized space derivative (#526)
1 parent 147181a commit 503a3f7

File tree

2 files changed

+6
-5
lines changed

2 files changed

+6
-5
lines changed

Project.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name = "ApproxFunBase"
22
uuid = "fbd15aa5-315a-5a7d-a8a4-24992e37be05"
3-
version = "0.9.2"
3+
version = "0.9.3"
44

55
[deps]
66
AbstractFFTs = "621f4979-c628-5d54-868e-fcf4e3e8185c"

src/Operators/banded/CalculusOperator.jl

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -206,18 +206,19 @@ Base.@constprop :aggressive function DefaultDerivative(sp::Space, k::Number)
206206
csp = canonicalspace(sp)
207207
D1 = if csp == sp
208208
_Dsp = invfromcanonicalD(sp)*Derivative(setdomain(sp,canonicaldomain(sp)))
209-
rsp = rangespace(_Dsp)
209+
rsp = setdomain(rangespace(_Dsp), domain(sp))
210210
_Dsp
211211
else
212212
Dcsp = Derivative(csp)
213213
rsp = rangespace(Dcsp)
214214
Dcsp * Conversion_maybeconcrete(sp, csp, Val(:forward))
215215
end
216-
D=DerivativeWrapper(SpaceOperator(D1,sp,setdomain(rsp,domain(sp))),1)
216+
D=DerivativeWrapper(D1,1,sp,rsp)
217217
if k==1
218-
D
218+
return D
219219
else
220-
DerivativeWrapper(TimesOperator(Derivative(rangespace(D),k-1),D), k, sp)
220+
Drsp = Derivative(rsp,k-1)
221+
DerivativeWrapper(TimesOperator(Drsp,D), k, sp, rangespace(Drsp))
221222
end
222223
end
223224
end

0 commit comments

Comments
 (0)