Skip to content

Commit aeb524e

Browse files
authored
Derivative 2 Diff (#83)
* remove TwoBand and SingularIntegrals * tests pass * v0.5
1 parent 9620af9 commit aeb524e

File tree

8 files changed

+40
-608
lines changed

8 files changed

+40
-608
lines changed

Project.toml

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "SemiclassicalOrthogonalPolynomials"
22
uuid = "291c01f3-23f6-4eb6-aeb0-063a639b53f2"
33
authors = ["Sheehan Olver <[email protected]>"]
4-
version = "0.4.0"
4+
version = "0.5"
55

66
[deps]
77
ArrayLayouts = "4c555306-a7a7-4459-81d9-ec55ddd5c99a"
@@ -15,21 +15,19 @@ InfiniteLinearAlgebra = "cde9dba0-b1de-11e9-2c62-0bab9446c55c"
1515
LazyArrays = "5078a376-72f3-5289-bfd5-ec5146d43c02"
1616
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
1717
QuasiArrays = "c4ea9172-b204-11e9-377d-29865faadc5c"
18-
SingularIntegrals = "d7440221-8b5e-42fc-909c-0567823f424a"
1918
SpecialFunctions = "276daf66-3868-5448-9aa4-cd146d93841b"
2019

2120
[compat]
2221
ArrayLayouts = "1"
2322
BandedMatrices = "0.17"
24-
ClassicalOrthogonalPolynomials = "0.10.1"
25-
ContinuumArrays = "0.12, 0.13"
23+
ClassicalOrthogonalPolynomials = "0.11"
24+
ContinuumArrays = "0.14"
2625
FillArrays = "1"
2726
HypergeometricFunctions = "0.3.4"
2827
InfiniteArrays = "0.12.9"
2928
InfiniteLinearAlgebra = "0.6.19"
3029
LazyArrays = "1"
31-
QuasiArrays = "0.9, 0.10"
32-
SingularIntegrals = "0.1"
30+
QuasiArrays = "0.11"
3331
SpecialFunctions = "1.0, 2"
3432
julia = "1.9"
3533

examples/equilibriummeasure.jl

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

examples/idealfluidflow_2_plates.jl

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

src/SemiclassicalOrthogonalPolynomials.jl

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,25 @@
11
module SemiclassicalOrthogonalPolynomials
22
using ClassicalOrthogonalPolynomials: WeightedOPLayout
33
using ClassicalOrthogonalPolynomials, FillArrays, LazyArrays, ArrayLayouts, QuasiArrays, InfiniteArrays, ContinuumArrays, LinearAlgebra, BandedMatrices,
4-
SpecialFunctions, HypergeometricFunctions, SingularIntegrals, InfiniteLinearAlgebra
4+
SpecialFunctions, HypergeometricFunctions, InfiniteLinearAlgebra
55

6-
import Base: getindex, axes, size, \, /, *, +, -, summary, ==, copy, sum, unsafe_getindex, convert, OneTo
6+
import Base: getindex, axes, size, \, /, *, +, -, summary, ==, copy, sum, unsafe_getindex, convert, OneTo, diff
77

88
import ArrayLayouts: MemoryLayout, ldiv, diagonaldata, subdiagonaldata, supdiagonaldata
99
import BandedMatrices: bandwidths, AbstractBandedMatrix, BandedLayout, _BandedMatrix
1010
import LazyArrays: resizedata!, paddeddata, CachedVector, CachedMatrix, CachedAbstractVector, LazyMatrix, LazyVector, arguments, ApplyLayout, colsupport, AbstractCachedVector, ApplyArray,
1111
AccumulateAbstractVector, LazyVector, AbstractCachedMatrix, BroadcastLayout
1212
import ClassicalOrthogonalPolynomials: OrthogonalPolynomial, recurrencecoefficients, jacobimatrix, normalize, _p0, UnitInterval, orthogonalityweight, NormalizedOPLayout,
1313
Bidiagonal, Tridiagonal, SymTridiagonal, symtridiagonalize, normalizationconstant, LanczosPolynomial,
14-
OrthogonalPolynomialRatio, Weighted, WeightLayout, UnionDomain, oneto, WeightedBasis, HalfWeighted,
14+
OrthogonalPolynomialRatio, Weighted, AbstractWeightLayout, UnionDomain, oneto, WeightedBasis, HalfWeighted,
1515
golubwelsch, AbstractOPLayout, weight, cholesky_jacobimatrix, qr_jacobimatrix, isnormalized
16-
import SingularIntegrals: Hilbert, Associated, associated
16+
1717
import InfiniteArrays: OneToInf, InfUnitRange
1818
import ContinuumArrays: basis, Weight, @simplify, AbstractBasisLayout, BasisLayout, MappedBasisLayout, grid, plotgrid, _equals, ExpansionLayout
1919
import FillArrays: SquareEye
2020
import HypergeometricFunctions: _₂F₁general2
2121

22-
export LanczosPolynomial, Legendre, Normalized, normalize, SemiclassicalJacobi, SemiclassicalJacobiWeight, WeightedSemiclassicalJacobi, OrthogonalPolynomialRatio, TwoBandJacobi, TwoBandWeight
22+
export LanczosPolynomial, Legendre, Normalized, normalize, SemiclassicalJacobi, SemiclassicalJacobiWeight, WeightedSemiclassicalJacobi, OrthogonalPolynomialRatio
2323

2424
""""
2525
SemiclassicalJacobiWeight(t, a, b, c)
@@ -72,8 +72,8 @@ function jacobiexpansion(w::SemiclassicalJacobiWeight{T}) where T
7272
LanczosPolynomial(@.(x^a * (1-x)^b * (t-x)^c), P).w
7373
end
7474

75-
_equals(::WeightLayout, ::ExpansionLayout, A::SemiclassicalJacobiWeight, B) = jacobiexpansion(A) == B
76-
_equals(::ExpansionLayout, ::WeightLayout, A, B::SemiclassicalJacobiWeight) = A == jacobiexpansion(B)
75+
_equals(::AbstractWeightLayout, ::ExpansionLayout, A::SemiclassicalJacobiWeight, B) = jacobiexpansion(A) == B
76+
_equals(::ExpansionLayout, ::AbstractWeightLayout, A, B::SemiclassicalJacobiWeight) = A == jacobiexpansion(B)
7777

7878

7979
"""
@@ -385,13 +385,13 @@ end
385385

386386
\(w_A::Weighted{<:Any,<:SemiclassicalJacobi}, w_B::Weighted{<:Any,<:SemiclassicalJacobi}) = convert(WeightedBasis, w_A) \ convert(WeightedBasis, w_B)
387387

388-
massmatrix(P::SemiclassicalJacobi) = Diagonal(Fill(sum(orthogonalityweight(P)),∞))
388+
weightedgrammatrix(P::SemiclassicalJacobi) = Diagonal(Fill(sum(orthogonalityweight(P)),∞))
389389

390390
@simplify function *(Ac::QuasiAdjoint{<:Any,<:SemiclassicalJacobi}, wB::WeightedBasis{<:Any,<:SemiclassicalJacobiWeight,<:SemiclassicalJacobi})
391391
A = parent(Ac)
392392
w,B = arguments(wB)
393393
P = SemiclassicalJacobi(w.t, w.a, w.b, w.c)
394-
(P\A)' * massmatrix(P) * (P \ B)
394+
(P\A)' * weightedgrammatrix(P) * (P \ B)
395395
end
396396

397397
function ldiv(Q::SemiclassicalJacobi, f::AbstractQuasiVector)
@@ -440,8 +440,6 @@ convert(::Type{WeightedBasis}, Q::HalfWeighted{:ab,T,<:SemiclassicalJacobi}) whe
440440
convert(::Type{WeightedBasis}, Q::HalfWeighted{:bc,T,<:SemiclassicalJacobi}) where T = SemiclassicalJacobiWeight(Q.P.t, zero(T),Q.P.b,Q.P.c) .* Q.P
441441
convert(::Type{WeightedBasis}, Q::HalfWeighted{:ac,T,<:SemiclassicalJacobi}) where T = SemiclassicalJacobiWeight(Q.P.t, Q.P.a,zero(T),Q.P.c) .* Q.P
442442

443-
444-
include("twoband.jl")
445443
include("derivatives.jl")
446444

447445

0 commit comments

Comments
 (0)