Skip to content

Commit c5eaf34

Browse files
authored
Infinite default bandwidth for PartialInverseOperator (#477)
* Infinite default bandwidth for PartialInverseOperator * version bump to v0.8.32 * namespace for aleph0
1 parent 1754012 commit c5eaf34

File tree

2 files changed

+18
-18
lines changed

2 files changed

+18
-18
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.8.31"
3+
version = "0.8.32"
44

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

src/Operators/general/PartialInverseOperator.jl

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,37 @@
11
export PartialInverseOperator
22

33
"""
4-
PartialInverseOperator(O::Operator, bandwidths = bandwidths(O))
4+
PartialInverseOperator(O::Operator, bandwidths = (0, Infinities.ℵ₀))
55
66
Return an approximate estimate for `inv(O)`, such that `PartialInverseOperator(O) * O` is banded, and
77
is approximately `I` up to a bandwidth that is one less than the sum of the bandwidths
88
of `O` and `PartialInverseOperator(O)`.
99
1010
!!! note
11-
Only upper triangular operators are supported as of now.
11+
Only upper-triangular operators are supported as of now.
1212
1313
# Examples
1414
1515
```jldoctest
1616
julia> C = Conversion(Chebyshev(), Ultraspherical(1));
1717
18-
julia> P = PartialInverseOperator(C); # default bandwidth = (0,2)
18+
julia> P = PartialInverseOperator(C); # default bandwidth
1919
2020
julia> P * C
2121
TimesOperator : Chebyshev() → Chebyshev()
22-
1.0 0.0 0.0 0.0 -0.5 ⋅ ⋅ ⋅ ⋅ ⋅ ⋅
23-
⋅ 1.0 0.0 0.0 0.0 -1.0 ⋅ ⋅ ⋅ ⋅ ⋅
24-
⋅ ⋅ 1.0 0.0 0.0 0.0 -1.0 ⋅ ⋅ ⋅ ⋅
25-
⋅ ⋅ ⋅ 1.0 0.0 0.0 0.0 -1.0 ⋅ ⋅ ⋅
26-
⋅ ⋅ ⋅ ⋅ 1.0 0.0 0.0 0.0 -1.0 ⋅ ⋅
27-
⋅ ⋅ ⋅ ⋅ 1.0 0.0 0.0 0.0 -1.0
28-
⋅ ⋅ ⋅ ⋅ 1.0 0.0 0.0 0.0 ⋱
29-
⋅ ⋅ ⋅ ⋅ 1.0 0.0 0.0 ⋱
30-
⋅ ⋅ ⋅ ⋅ 1.0 0.0 ⋱
31-
⋅ ⋅ ⋅ ⋅ 1.0 ⋱
32-
⋅ ⋅
33-
34-
julia> P = PartialInverseOperator(C, (0, 4)); # increase the upper bandwidth
22+
1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 ⋯
23+
⋅ 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 ⋱
24+
⋅ ⋅ 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 ⋱
25+
⋅ ⋅ ⋅ 1.0 0.0 0.0 0.0 0.0 0.0 0.0 ⋱
26+
⋅ ⋅ ⋅ ⋅ 1.0 0.0 0.0 0.0 0.0 0.0 ⋱
27+
⋅ ⋅ ⋅ ⋅ ⋅ 1.0 0.0 0.0 0.0 0.0
28+
⋅ ⋅ ⋅ ⋅ ⋅ ⋅ 1.0 0.0 0.0 0.0 ⋱
29+
⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ 1.0 0.0 0.0 ⋱
30+
⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ 1.0 0.0 ⋱
31+
⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ 1.0 ⋱
32+
⋱ ⋱
33+
34+
julia> P = PartialInverseOperator(C, (0, 4)); # specify an upper bandwidth
3535
3636
julia> P * C
3737
TimesOperator : Chebyshev() → Chebyshev()
@@ -58,7 +58,7 @@ function PartialInverseOperator(CO::CachedOperator{T},bandwidths) where T<:Numbe
5858
return PartialInverseOperator{T,typeof(CO),typeof(bandwidths)}(CO,bandwidths)
5959
end
6060

61-
function PartialInverseOperator(B::Operator, bandwidths = bandwidths(B))
61+
function PartialInverseOperator(B::Operator, bandwidths = (0,ℵ₀))
6262
PartialInverseOperator(cache(B), bandwidths)
6363
end
6464

0 commit comments

Comments
 (0)