Skip to content

Commit 00e3a5f

Browse files
authored
Support LazyArrays v2.0 and BlockArrays v1.0 (#81)
* Support LazyArrays v2.0 and BlockArrays v1.0 * PseudoBlock -> Blocked
1 parent ab9555f commit 00e3a5f

File tree

6 files changed

+14
-14
lines changed

6 files changed

+14
-14
lines changed

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
fail-fast: false
1111
matrix:
1212
version:
13-
- '1.9'
13+
- '1.10'
1414
os:
1515
- ubuntu-latest
1616
- macOS-latest

Project.toml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "HarmonicOrthogonalPolynomials"
22
uuid = "e416a80e-9640-42f3-8df8-80a93ca01ea5"
33
authors = ["Sheehan Olver <solver@mac.com>"]
4-
version = "0.5.4"
4+
version = "0.6"
55

66
[deps]
77
BlockArrays = "8e7c35d0-a365-5155-bbbb-fb81a777f24e"
@@ -18,18 +18,18 @@ SpecialFunctions = "276daf66-3868-5448-9aa4-cd146d93841b"
1818
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
1919

2020
[compat]
21-
BlockArrays = "0.16"
22-
BlockBandedMatrices = "0.12"
23-
ClassicalOrthogonalPolynomials = "0.12"
24-
ContinuumArrays = "0.17"
21+
BlockArrays = "1.0"
22+
BlockBandedMatrices = "0.13"
23+
ClassicalOrthogonalPolynomials = "0.13"
24+
ContinuumArrays = "0.18"
2525
DomainSets = "0.7"
2626
FastTransforms = "0.15, 0.16"
27-
InfiniteArrays = "0.13.8"
27+
InfiniteArrays = "0.14"
2828
IntervalSets = "0.7"
2929
QuasiArrays = "0.11"
3030
SpecialFunctions = "1, 2"
3131
StaticArrays = "1"
32-
julia = "1.9"
32+
julia = "1.10"
3333

3434
[extras]
3535
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ Inclusion(the 3-dimensional unit sphere)
3939
julia> f = 𝐱 -> ((x,y,z) = 𝐱; exp(x)*cos(y*sin(z))); # function to be approximation
4040

4141
julia> S \ f.(𝐱) # expansion coefficients, adaptively computed
42-
-blocked ∞-element PseudoBlockArray{Complex{Float64},1,LazyArrays.CachedArray{Complex{Float64},1,Array{Complex{Float64},1},Zeros{Complex{Float64},1,Tuple{InfiniteArrays.OneToInf{Int64}}}},Tuple{BlockedUnitRange{ArrayLayouts.RangeCumsum{Int64,InfiniteArrays.InfStepRange{Int64,Int64}}}}}:
42+
-blocked ∞-element BlockedArray{Complex{Float64},1,LazyArrays.CachedArray{Complex{Float64},1,Array{Complex{Float64},1},Zeros{Complex{Float64},1,Tuple{InfiniteArrays.OneToInf{Int64}}}},Tuple{BlockedOneTo{Int,ArrayLayouts.RangeCumsum{Int64,InfiniteArrays.InfStepRange{Int64,Int64}}}}}:
4343
4.05681442931116 + 0.0im
4444
──────────────────────────────────────────────────
4545
1.5777291816142751 + 3.19754060061646e-16im

src/HarmonicOrthogonalPolynomials.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ include("spheretrav.jl")
2121
include("coordinates.jl")
2222

2323
# roughly try to double the computational time each iteration
24-
increasingtruncations(::BlockedUnitRange{<:RangeCumsum{Int,<:AbstractRange}}) = broadcast(n -> Block.(oneto((2^(n ÷ 2)) ÷ 2)), 4:2:∞)
24+
increasingtruncations(::BlockedOneTo{Int,<:RangeCumsum{Int,<:AbstractRange}}) = broadcast(n -> Block.(oneto((2^(n ÷ 2)) ÷ 2)), 4:2:∞)
2525

2626

2727
checkpoints(::UnitSphere{T}) where T = [SphericalCoordinate{T}(0.1,0.2), SphericalCoordinate{T}(0.3,0.4)]
@@ -131,7 +131,7 @@ plan_transform(P::MultivariateOrthogonalPolynomial, Bs::NTuple{N,Int}, dims=ntup
131131

132132
function _sum(A::AbstractSphericalHarmonic{T}, dims) where T
133133
@assert dims == 1
134-
PseudoBlockArray(Hcat(sqrt(4convert(T, π)), Zeros{T}(1,∞)), (Base.OneTo(1),axes(A,2)))
134+
BlockedArray(Hcat(sqrt(4convert(T, π)), Zeros{T}(1,∞)), (Base.OneTo(1),axes(A,2)))
135135
end
136136

137137
include("laplace.jl")

src/angularmomentum.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ end
3434
n = mortar(Fill.(oneto(∞),1:2:∞))
3535
k = mortar(Base.OneTo.(0:2:∞))
3636
m = T.(iseven.(k) .* (k .÷ 2))
37-
dat = PseudoBlockArray(Vcat(
37+
dat = BlockedArray(Vcat(
3838
(-m)', # n, k-1
3939
(0 .* m)', # n, k
4040
(m)', # n, k+1

src/multivariateops.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ where A[N] is (N+1) x 2N, B[N] and C[N] are (N+1) x N.
8585

8686

8787
# forwardrecurrence(N::Block{1}, A::AbstractVector, B::AbstractVector, C::AbstractVector, xy) =
88-
# forwardrecurrence!(PseudoBlockVector{promote_type(eltype(eltype(A)),eltype(eltype(B)),eltype(eltype(C)),eltype(xy))}(undef, 1:Int(N)), A, B, C, xy)
88+
# forwardrecurrence!(BlockedVector{promote_type(eltype(eltype(A)),eltype(eltype(B)),eltype(eltype(C)),eltype(xy))}(undef, 1:Int(N)), A, B, C, xy)
8989

9090
# use block expansion
9191
ContinuumArrays.transform_ldiv(V::SubQuasiArray{<:Any,2,<:MultivariateOrthogonalPolynomial,<:Tuple{Inclusion,BlockSlice{BlockOneTo}}}, B::AbstractQuasiArray, _) =
@@ -103,7 +103,7 @@ ContinuumArrays._sub_factorize(::Tuple{Any,Any}, (kr,jr)::Tuple{Any,BlockSlice{B
103103

104104
# Make sure block structure matches. Probably should do this for all block mul
105105
QuasiArrays.mul(A::MultivariateOrthogonalPolynomial, b::AbstractVector) =
106-
ApplyQuasiArray(*, A, PseudoBlockVector(b, (axes(A,2),)))
106+
ApplyQuasiArray(*, A, BlockedVector(b, (axes(A,2),)))
107107

108108

109109
# plotting

0 commit comments

Comments
 (0)