1
1
module ApproxFunOrthogonalPolynomials
2
- using Base, LinearAlgebra, Reexport, AbstractFFTs, FFTW, InfiniteArrays, FillArrays, FastTransforms, IntervalSets,
3
- DomainSets, Statistics
2
+ using Base, LinearAlgebra, Reexport, BandedMatrices, AbstractFFTs, FFTW, InfiniteArrays, FillArrays, FastTransforms, IntervalSets,
3
+ DomainSets, Statistics, SpecialFunctions
4
4
5
5
@reexport using ApproxFunBase
6
6
@@ -12,18 +12,20 @@ import ApproxFunBase: normalize!, flipsign, FiniteRange, Fun, MatrixFun, UnsetSp
12
12
UnivariateSpace, AmbiguousSpace, SumSpace, SubSpace, WeightSpace, NoSpace, Space,
13
13
HeavisideSpace, PointSpace,
14
14
IntervalOrSegment, RaggedMatrix, AlmostBandedMatrix,
15
- AnyDomain, ZeroSpace, TrivialInterlacer, BlockInterlacer,
15
+ AnyDomain, ZeroSpace, ArraySpace, TrivialInterlacer, BlockInterlacer,
16
16
AbstractTransformPlan, TransformPlan, ITransformPlan,
17
17
ConcreteConversion, ConcreteMultiplication, ConcreteDerivative, ConcreteIntegral,
18
18
ConcreteVolterra, Volterra, VolterraWrapper,
19
- MultiplicationWrapper, ConversionWrapper, DerivativeWrapper, Evaluation,
19
+ MultiplicationWrapper, ConversionWrapper, DerivativeWrapper, Evaluation, EvaluationWrapper,
20
20
Conversion, Multiplication, Derivative, Integral, bandwidths,
21
21
ConcreteEvaluation, ConcreteDefiniteLineIntegral, ConcreteDefiniteIntegral, ConcreteIntegral,
22
22
DefiniteLineIntegral, DefiniteIntegral, ConcreteDefiniteIntegral, ConcreteDefiniteLineIntegral,
23
23
ReverseOrientation, ReverseOrientationWrapper, ReverseWrapper, Reverse, NegateEven, Dirichlet, ConcreteDirichlet,
24
24
TridiagonalOperator, SubOperator, Space, @containsconstants , spacescompatible,
25
25
hasfasttransform, canonicalspace, domain, setdomain, prectype, domainscompatible,
26
- plan_transform, plan_itransform, plan_transform!, plan_itransform!, transform, itransform, hasfasttransform, Integral,
26
+ plan_transform, plan_itransform, plan_transform!, plan_itransform!, transform, itransform, hasfasttransform,
27
+ CanonicalTransformPlan,
28
+ Integral,
27
29
domainspace, rangespace, boundary,
28
30
union_rule, conversion_rule, maxspace_rule, conversion_type, maxspace, hasconversion, points,
29
31
rdirichlet, ldirichlet, lneumann, rneumann, ivp, bvp,
@@ -34,14 +36,20 @@ import ApproxFunBase: normalize!, flipsign, FiniteRange, Fun, MatrixFun, UnsetSp
34
36
invfromcanonicalD, fromcanonical, tocanonical, fromcanonicalD, tocanonicalD, canonicaldomain, setcanonicaldomain, mappoint,
35
37
reverseorientation, checkpoints, evaluate, mul_coefficients, coefficients, isconvertible,
36
38
clenshaw, ClenshawPlan, sineshaw,
37
- toeplitz_getindex, toeplitz_axpy!, ToeplitzOperator, hankel_getindex,
39
+ toeplitz_getindex, toeplitz_axpy!, sym_toeplitz_axpy!, hankel_axpy!, ToeplitzOperator, SymToeplitzOperator , hankel_getindex,
38
40
SpaceOperator, ZeroOperator, InterlaceOperator,
39
41
interlace!, reverseeven!, negateeven!, cfstype, pad!,
40
- extremal_args, hesseneigvals, chebyshev_clenshaw, recA, recB, recC, roots, chebmult_getindex, intpow, alternatingsum
42
+ extremal_args, hesseneigvals, chebyshev_clenshaw, recA, recB, recC, roots, chebmult_getindex, intpow, alternatingsum,
43
+ domaintype, diagindshift, rangetype, weight, isapproxinteger, default_Dirichlet, scal!
41
44
42
45
import DomainSets: Domain, indomain, UnionDomain, ProductDomain, FullSpace, Point, elements, DifferenceDomain,
43
46
Interval, ChebyshevInterval, boundary, ∂, rightendpoint, leftendpoint,
44
- dimension, Domain1d, Domain2d
47
+ dimension, Domain1d, Domain2d
48
+
49
+ import BandedMatrices: bandrange, bandshift,
50
+ inbands_getindex, inbands_setindex!, bandwidth, AbstractBandedMatrix,
51
+ colstart, colstop, colrange, rowstart, rowstop, rowrange,
52
+ bandwidths, _BandedMatrix, BandedMatrix
45
53
46
54
import Base: values, convert, getindex, setindex!, * , + , - , == , < , <= , > , | , ! , != , eltype, iterate,
47
55
>= , / , ^ , \ , ∪ , transpose, size, reindex, tail, broadcast, broadcast!, copyto!, copy, to_index, (:),
@@ -66,10 +74,26 @@ import FastTransforms: ChebyshevTransformPlan, IChebyshevTransformPlan, plan_che
66
74
plan_chebyshevtransform!, plan_ichebyshevtransform, plan_ichebyshevtransform!,
67
75
pochhammer
68
76
77
+ # we need to import all special functions to use Calculus.symbolic_derivatives_1arg
78
+ # we can't do importall Base as we replace some Base definitions
79
+ import SpecialFunctions: sinpi, cospi, airy, besselh,
80
+ asinh, acosh,atanh, erfcx, dawson, erf, erfi,
81
+ sin, cos, sinh, cosh, airyai, airybi, airyaiprime, airybiprime,
82
+ hankelh1, hankelh2, besselj, besselj0, bessely, besseli, besselk,
83
+ besselkx, hankelh1x, hankelh2x, exp2, exp10, log2, log10,
84
+ tan, tanh, csc, asin, acsc, sec, acos, asec,
85
+ cot, atan, acot, sinh, csch, asinh, acsch,
86
+ sech, acosh, asech, tanh, coth, atanh, acoth,
87
+ expm1, log1p, lfact, sinc, cosc, erfinv, erfcinv, beta, lbeta,
88
+ eta, zeta, gamma, lgamma, polygamma, invdigamma, digamma, trigamma,
89
+ abs, sign, log, expm1, tan, abs2, sqrt, angle, max, min, cbrt, log,
90
+ atan, acos, asin, erfc, inv
91
+
69
92
include (" ultraspherical.jl" )
70
93
include (" Domains/Domains.jl" )
71
94
include (" Spaces/Spaces.jl" )
72
95
include (" roots.jl" )
73
96
include (" specialfunctions.jl" )
97
+ include (" fastops.jl" )
74
98
75
99
end
0 commit comments