Skip to content

Commit 0a4b17e

Browse files
authored
Move RecurrenceArray to RecurrenceRelationships.jl (#48)
* Move RecurrenceArray to RecurrenceRelationships.jl * Update Project.toml * Update SingularIntegrals.jl * tests pass * Support C^(-1/2) * Update Project.toml * Update ci.yml * v0.3.3 * Update ci.yml
1 parent 24832b2 commit 0a4b17e

File tree

10 files changed

+31
-266
lines changed

10 files changed

+31
-266
lines changed

.github/workflows/ci.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,16 @@ jobs:
2020
fail-fast: false
2121
matrix:
2222
version:
23-
- '1.10'
23+
- 'lts'
24+
- '1'
2425
os:
2526
- ubuntu-latest
2627
- macOS-latest
2728
- windows-latest
2829
arch:
2930
- x64
3031
steps:
31-
- uses: actions/checkout@v2
32+
- uses: actions/checkout@v4
3233
- uses: julia-actions/setup-julia@v2
3334
with:
3435
version: ${{ matrix.version }}
@@ -48,4 +49,5 @@ jobs:
4849
- uses: julia-actions/julia-processcoverage@v1
4950
- uses: codecov/codecov-action@v4
5051
with:
52+
token: ${{ secrets.CODECOV_TOKEN }}
5153
file: lcov.info

Project.toml

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "SingularIntegrals"
22
uuid = "d7440221-8b5e-42fc-909c-0567823f424a"
33
authors = ["Sheehan Olver <solver@mac.com>"]
4-
version = "0.3.2"
4+
version = "0.3.3"
55

66
[deps]
77
ArrayLayouts = "4c555306-a7a7-4459-81d9-ec55ddd5c99a"
@@ -16,20 +16,24 @@ LazyArrays = "5078a376-72f3-5289-bfd5-ec5146d43c02"
1616
LazyBandedMatrices = "d7e5e226-e90b-4449-9968-0f923699bf6f"
1717
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
1818
QuasiArrays = "c4ea9172-b204-11e9-377d-29865faadc5c"
19+
RecurrenceRelationships = "807425ed-42ea-44d6-a357-6771516d7b2c"
20+
RecurrenceRelationshipArrays = "b889d2dc-af3c-4820-88a8-238fa91d3518"
1921
SpecialFunctions = "276daf66-3868-5448-9aa4-cd146d93841b"
2022

2123
[compat]
2224
ArrayLayouts = "1.4"
2325
BandedMatrices = "1"
24-
ClassicalOrthogonalPolynomials = "0.12, 0.13"
25-
ContinuumArrays = "0.17.2, 0.18"
26-
FastTransforms = "0.15, 0.16"
26+
ClassicalOrthogonalPolynomials = "0.13.7"
27+
ContinuumArrays = "0.18"
28+
FastTransforms = "0.16"
2729
FillArrays = "1"
2830
HypergeometricFunctions = "0.3.4"
29-
InfiniteArrays = "0.13, 0.14"
30-
LazyArrays = "1.10, 2"
31-
LazyBandedMatrices = "0.9, 0.10"
31+
InfiniteArrays = "0.14"
32+
LazyArrays = "2"
33+
LazyBandedMatrices = "0.10"
3234
QuasiArrays = "0.11"
35+
RecurrenceRelationships = "0.1"
36+
RecurrenceRelationshipArrays = "0.1"
3337
SpecialFunctions = "1, 2"
3438
julia = "1.10"
3539

src/SingularIntegrals.jl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,18 @@ module SingularIntegrals
22
using ClassicalOrthogonalPolynomials, ContinuumArrays, QuasiArrays, LazyArrays, LazyBandedMatrices, FillArrays, BandedMatrices, LinearAlgebra, SpecialFunctions, HypergeometricFunctions, InfiniteArrays
33
using ContinuumArrays: @simplify, Weight, AbstractAffineQuasiVector, inbounds_getindex, broadcastbasis, MappedBasisLayouts, MemoryLayout, MappedWeightLayout, AbstractWeightLayout, ExpansionLayout, demap, basismap, AbstractBasisLayout, SubBasisLayout
44
using QuasiArrays: AbstractQuasiMatrix, BroadcastQuasiMatrix, LazyQuasiArrayStyle, AbstractQuasiVecOrMat
5-
import ClassicalOrthogonalPolynomials: AbstractJacobiWeight, WeightedBasis, jacobimatrix, orthogonalityweight, recurrencecoefficients, _p0, Clenshaw, chop, initiateforwardrecurrence, MappedOPLayouts, unweighted, WeightedOPLayout, MappedOPLayout
5+
import ClassicalOrthogonalPolynomials: AbstractJacobiWeight, AbstractJacobi, WeightedBasis, jacobimatrix, orthogonalityweight, recurrencecoefficients, _p0, chop, initiateforwardrecurrence, MappedOPLayouts, unweighted, WeightedOPLayout, MappedOPLayout
66
using LazyBandedMatrices: Tridiagonal, SymTridiagonal, subdiagonaldata, supdiagonaldata, diagonaldata, ApplyLayout
77
import LazyArrays: AbstractCachedMatrix, AbstractCachedArray, paddeddata, arguments, resizedata!, cache_filldata!, zero!, cacheddata, LazyArrayStyle
88
import Base: *, +, -, /, \, Slice, axes, getindex, sum, ==, oneto, size, broadcasted, copy, tail, view
99
import LinearAlgebra: dot
1010
using BandedMatrices: _BandedMatrix
11-
using FastTransforms: _forwardrecurrence!, _forwardrecurrence_next
11+
using RecurrenceRelationshipArrays
12+
using RecurrenceRelationshipArrays: Clenshaw
1213

1314
export associated, stieltjes, logkernel, powerkernel, complexlogkernel
1415

1516

16-
include("recurrence.jl")
1717
include("stieltjes.jl")
1818
include("logkernel.jl")
1919
include("power.jl")

src/logkernel.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,8 @@ function complexlogkernel_recurrence(wP::Weighted{<:Any,<:Legendre})
166166
end
167167
complexlogkernel(P::Legendre, z...) = complexlogkernel(Weighted(P), z...)
168168
logkernel(P::Legendre, x...) = logkernel(Weighted(P), x...)
169+
complexlogkernel(J::AbstractJacobi{T}, z...) where T = complexlogkernel(Legendre{T}(), z...) * (Legendre{T}() \ J)
170+
logkernel(J::AbstractJacobi{T}, z...) where T = logkernel(Legendre{T}(), z...) * (Legendre{T}() \ J)
169171

170172

171173

src/recurrence.jl

Lines changed: 0 additions & 207 deletions
This file was deleted.

src/stieltjes.jl

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,8 +114,6 @@ function stieltjes(wP::Weighted{<:Any,<:OrthogonalPolynomial})
114114
(-A[1]*sum(w))*[zero(axes(P,1)) Q] + stieltjes(w) .* P
115115
end
116116

117-
stieltjes(P::Legendre) = stieltjes(Weighted(P))
118-
119117

120118
##
121119
# OffStieltjes
@@ -199,6 +197,7 @@ sqrtx2(x::Real) = sign(x)*sqrt(x^2-1)
199197

200198

201199
stieltjes(P::Legendre, z...) = stieltjes(Weighted(P), z...)
200+
stieltjes(J::AbstractJacobi{T}, z...) where T = stieltjes(Legendre{T}(), z...) * (Legendre{T}() \ J)
202201

203202
@simplify function *(S::StieltjesPoints, wP::Weighted)
204203
z = S.args[1].args[1] # vector of points to eval at

test/runtests.jl

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ using SingularIntegrals: Stieltjes, StieltjesPoint, ChebyshevInterval, associate
44
using LazyArrays: MemoryLayout, PaddedLayout, colsupport, rowsupport, paddeddata
55
using LazyBandedMatrices: blockcolsupport, Block, BlockHcat, blockbandwidths
66

7-
include("test_recurrence.jl")
87

98
@testset "Associated" begin
109
T = ChebyshevT()

test/test_logkernel.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ using ClassicalOrthogonalPolynomials: affine
2424

2525
@testset "expand" begin
2626
@test complexlogkernel(exp.(x), 2 + im) sum(log.((2+im) .- x) .* exp.(x))
27-
@test_throws ErrorException complexlogkernel(Jacobi(0.1,0.2), 2+im)
27+
@test_throws InexactError complexlogkernel(Jacobi(0.1,0.2), 2+im)
2828
end
2929
end
3030

test/test_recurrence.jl

Lines changed: 0 additions & 42 deletions
This file was deleted.

0 commit comments

Comments
 (0)