Skip to content

Commit 3b5adb8

Browse files
add the generic ratio of gamma functions Λ(z,λ₁,λ₂) = Γ(z+λ₁)/Γ(z+λ₂)
add jac2jac for moving one set of parameters
1 parent 059ac0b commit 3b5adb8

File tree

8 files changed

+104
-95
lines changed

8 files changed

+104
-95
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,3 +46,5 @@ then increment/decrement operators are used with linear complexity (and linear c
4646
1. N. Hale and A. Townsend. <a href="http://dx.doi.org/10.1137/130932223">A fast, simple, and stable Chebyshev—Legendre transform using and asymptotic formula</a>, SIAM J. Sci. Comput., 36:A148—A167, 2014.
4747

4848
2. R. M. Slevinsky. <a href="http://arxiv.org/abs/1602.02618">On the use of Hahn's asymptotic formula and stabilized recurrence for a fast, simple, and stable Chebyshev—Jacobi transform</a>, arXiv:1602.02618, 2016.
49+
50+
3. A. Townsend, M. Webb, and S. Olver. <a href="http://arxiv.org/abs/1604.07486">Fast polynomial transforms based on Toeplitz and Hankel matrices</a>, arXiv:1604.07486, 2016.

docs/api/FastTransforms.md

Lines changed: 39 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ See also [`icjt`](#method__icjt.1) and [`jjt`](#method__jjt.1).
1313

1414

1515
*source:*
16-
[FastTransforms/src/cjt.jl:127](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/cjt.jl#L127)
16+
[FastTransforms/src/cjt.jl:127](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/cjt.jl#L127)
1717

1818
---
1919

@@ -23,7 +23,7 @@ Calculates the Gaunt coefficients in 64-bit floating-point arithmetic.
2323

2424

2525
*source:*
26-
[FastTransforms/src/gaunt.jl:24](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/gaunt.jl#L24)
26+
[FastTransforms/src/gaunt.jl:24](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/gaunt.jl#L24)
2727

2828
---
2929

@@ -43,7 +43,7 @@ This is a Julia implementation of the stable recurrence described in:
4343

4444

4545
*source:*
46-
[FastTransforms/src/gaunt.jl:14](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/gaunt.jl#L14)
46+
[FastTransforms/src/gaunt.jl:14](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/gaunt.jl#L14)
4747

4848
---
4949

@@ -56,7 +56,7 @@ See also [`cjt`](#method__cjt.1) and [`jjt`](#method__jjt.1).
5656

5757

5858
*source:*
59-
[FastTransforms/src/cjt.jl:135](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/cjt.jl#L135)
59+
[FastTransforms/src/cjt.jl:135](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/cjt.jl#L135)
6060

6161
---
6262

@@ -69,7 +69,7 @@ See also [`cjt`](#method__cjt.1) and [`icjt`](#method__icjt.1).
6969

7070

7171
*source:*
72-
[FastTransforms/src/cjt.jl:143](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/cjt.jl#L143)
72+
[FastTransforms/src/cjt.jl:143](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/cjt.jl#L143)
7373

7474
---
7575

@@ -88,7 +88,7 @@ Optionally:
8888

8989

9090
*source:*
91-
[FastTransforms/src/cjt.jl:157](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/cjt.jl#L157)
91+
[FastTransforms/src/cjt.jl:157](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/cjt.jl#L157)
9292

9393
---
9494

@@ -107,7 +107,7 @@ Optionally:
107107

108108

109109
*source:*
110-
[FastTransforms/src/cjt.jl:176](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/cjt.jl#L176)
110+
[FastTransforms/src/cjt.jl:176](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/cjt.jl#L176)
111111

112112
## Internal
113113

@@ -122,7 +122,7 @@ Modified Chebyshev moments of the first kind with respect to the Jacobi weight:
122122

123123

124124
*source:*
125-
[FastTransforms/src/specialfunctions.jl:385](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/specialfunctions.jl#L385)
125+
[FastTransforms/src/specialfunctions.jl:399](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/specialfunctions.jl#L399)
126126

127127
---
128128

@@ -135,7 +135,7 @@ Modified Chebyshev moments of the second kind with respect to the Jacobi weight:
135135

136136

137137
*source:*
138-
[FastTransforms/src/specialfunctions.jl:403](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/specialfunctions.jl#L403)
138+
[FastTransforms/src/specialfunctions.jl:417](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/specialfunctions.jl#L417)
139139

140140
---
141141

@@ -145,7 +145,7 @@ Compute weights of the Clenshaw—Curtis quadrature rule with a Jacobi weight.
145145

146146

147147
*source:*
148-
[FastTransforms/src/clenshawcurtis.jl:12](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/clenshawcurtis.jl#L12)
148+
[FastTransforms/src/clenshawcurtis.jl:12](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/clenshawcurtis.jl#L12)
149149

150150
---
151151

@@ -155,7 +155,7 @@ Compute nodes and weights of the Clenshaw—Curtis quadrature rule with a Jacobi
155155

156156

157157
*source:*
158-
[FastTransforms/src/clenshawcurtis.jl:6](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/clenshawcurtis.jl#L6)
158+
[FastTransforms/src/clenshawcurtis.jl:6](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/clenshawcurtis.jl#L6)
159159

160160
---
161161

@@ -165,7 +165,7 @@ Compute Jacobi expansion coefficients in Pₙ^(α-1,β) given Jacobi expansion c
165165

166166

167167
*source:*
168-
[FastTransforms/src/specialfunctions.jl:453](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/specialfunctions.jl#L453)
168+
[FastTransforms/src/specialfunctions.jl:467](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/specialfunctions.jl#L467)
169169

170170
---
171171

@@ -175,7 +175,7 @@ Compute Jacobi expansion coefficients in Pₙ^(α-1,α-1) given Jacobi expansion
175175

176176

177177
*source:*
178-
[FastTransforms/src/specialfunctions.jl:475](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/specialfunctions.jl#L475)
178+
[FastTransforms/src/specialfunctions.jl:489](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/specialfunctions.jl#L489)
179179

180180
---
181181

@@ -185,7 +185,7 @@ Compute Jacobi expansion coefficients in Pₙ^(α,β-1) given Jacobi expansion c
185185

186186

187187
*source:*
188-
[FastTransforms/src/specialfunctions.jl:464](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/specialfunctions.jl#L464)
188+
[FastTransforms/src/specialfunctions.jl:478](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/specialfunctions.jl#L478)
189189

190190
---
191191

@@ -195,7 +195,7 @@ Compute nodes and weights of Fejer's first quadrature rule with a Jacobi weight.
195195

196196

197197
*source:*
198-
[FastTransforms/src/fejer.jl:7](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/fejer.jl#L7)
198+
[FastTransforms/src/fejer.jl:7](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/fejer.jl#L7)
199199

200200
---
201201

@@ -205,7 +205,7 @@ Compute nodes and weights of Fejer's second quadrature rule with a Jacobi weight
205205

206206

207207
*source:*
208-
[FastTransforms/src/fejer.jl:12](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/fejer.jl#L12)
208+
[FastTransforms/src/fejer.jl:12](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/fejer.jl#L12)
209209

210210
---
211211

@@ -215,7 +215,7 @@ Compute weights of Fejer's first quadrature rule with a Jacobi weight.
215215

216216

217217
*source:*
218-
[FastTransforms/src/fejer.jl:21](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/fejer.jl#L21)
218+
[FastTransforms/src/fejer.jl:21](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/fejer.jl#L21)
219219

220220
---
221221

@@ -225,7 +225,7 @@ Compute weights of Fejer's second quadrature rule with a Jacobi weight.
225225

226226

227227
*source:*
228-
[FastTransforms/src/fejer.jl:26](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/fejer.jl#L26)
228+
[FastTransforms/src/fejer.jl:26](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/fejer.jl#L26)
229229

230230
---
231231

@@ -235,7 +235,7 @@ Compute a typed 0.5.
235235

236236

237237
*source:*
238-
[FastTransforms/src/specialfunctions.jl:12](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/specialfunctions.jl#L12)
238+
[FastTransforms/src/specialfunctions.jl:12](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/specialfunctions.jl#L12)
239239

240240
---
241241

@@ -245,7 +245,7 @@ Compute Jacobi expansion coefficients in Pₙ^(α+1,β) given Jacobi expansion c
245245

246246

247247
*source:*
248-
[FastTransforms/src/specialfunctions.jl:418](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/specialfunctions.jl#L418)
248+
[FastTransforms/src/specialfunctions.jl:432](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/specialfunctions.jl#L432)
249249

250250
---
251251

@@ -255,7 +255,7 @@ Compute Jacobi expansion coefficients in Pₙ^(α+1,α+1) given Jacobi expansion
255255

256256

257257
*source:*
258-
[FastTransforms/src/specialfunctions.jl:440](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/specialfunctions.jl#L440)
258+
[FastTransforms/src/specialfunctions.jl:454](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/specialfunctions.jl#L454)
259259

260260
---
261261

@@ -265,7 +265,7 @@ Compute Jacobi expansion coefficients in Pₙ^(α,β+1) given Jacobi expansion c
265265

266266

267267
*source:*
268-
[FastTransforms/src/specialfunctions.jl:429](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/specialfunctions.jl#L429)
268+
[FastTransforms/src/specialfunctions.jl:443](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/specialfunctions.jl#L443)
269269

270270
---
271271

@@ -275,7 +275,7 @@ Pochhammer symbol (x)_n = Γ(x+n)/Γ(x) for the rising factorial.
275275

276276

277277
*source:*
278-
[FastTransforms/src/specialfunctions.jl:32](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/specialfunctions.jl#L32)
278+
[FastTransforms/src/specialfunctions.jl:32](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/specialfunctions.jl#L32)
279279

280280
---
281281

@@ -285,7 +285,7 @@ Stirling series for Γ(z).
285285

286286

287287
*source:*
288-
[FastTransforms/src/specialfunctions.jl:63](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/specialfunctions.jl#L63)
288+
[FastTransforms/src/specialfunctions.jl:63](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/specialfunctions.jl#L63)
289289

290290
---
291291

@@ -295,7 +295,7 @@ Compute a typed 2.
295295

296296

297297
*source:*
298-
[FastTransforms/src/specialfunctions.jl:20](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/specialfunctions.jl#L20)
298+
[FastTransforms/src/specialfunctions.jl:20](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/specialfunctions.jl#L20)
299299

300300
---
301301

@@ -307,17 +307,27 @@ For 64-bit floating-point arithmetic, the Lambda function uses the asymptotic se
307307

308308

309309
*source:*
310-
[FastTransforms/src/specialfunctions.jl:147](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/specialfunctions.jl#L147)
310+
[FastTransforms/src/specialfunctions.jl:147](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/specialfunctions.jl#L147)
311311

312312
---
313313

314314
<a id="method__923.2" class="lexicon_definition"></a>
315-
#### Λ(x::Number) [](#method__923.2)
315+
#### Λ(z::Number) [](#method__923.2)
316316
The Lambda function Λ(z) = Γ(z+½)/Γ(z+1) for the ratio of gamma functions.
317317

318318

319319
*source:*
320-
[FastTransforms/src/specialfunctions.jl:141](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/specialfunctions.jl#L141)
320+
[FastTransforms/src/specialfunctions.jl:141](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/specialfunctions.jl#L141)
321+
322+
---
323+
324+
<a id="method__923.3" class="lexicon_definition"></a>
325+
#### Λ(z::Number, λ₁::Number, λ₂::Number) [](#method__923.3)
326+
The Lambda function Λ(z,λ₁,λ₂) = Γ(z+λ₁)/Γ(z+λ₂) for the ratio of gamma functions.
327+
328+
329+
*source:*
330+
[FastTransforms/src/specialfunctions.jl:160](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/specialfunctions.jl#L160)
321331

322332
---
323333

@@ -327,5 +337,5 @@ The Kronecker δ function.
327337

328338

329339
*source:*
330-
[FastTransforms/src/specialfunctions.jl:26](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/e92c43c4bdbef278e459e31155eebe6c4f245429/src/specialfunctions.jl#L26)
340+
[FastTransforms/src/specialfunctions.jl:26](https://github.com/MikaelSlevinsky/FastTransforms.jl/tree/059ac0ba6b7b0216a19f5441660845326102abd1/src/specialfunctions.jl#L26)
331341

docs/api/index.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,9 @@
6363

6464
[Λ(x::Float64)](FastTransforms.md#method__923.1) For 64-bit floating-point arithmetic, the Lambda function uses the asymptotic series for τ in Appendix B of
6565

66-
[Λ(x::Number)](FastTransforms.md#method__923.2) The Lambda function Λ(z) = Γ(z+½)/Γ(z+1) for the ratio of gamma functions.
66+
[Λ(z::Number)](FastTransforms.md#method__923.2) The Lambda function Λ(z) = Γ(z+½)/Γ(z+1) for the ratio of gamma functions.
67+
68+
[Λ(z::Number, λ₁::Number, λ₂::Number)](FastTransforms.md#method__923.3) The Lambda function Λ(z,λ₁,λ₂) = Γ(z+λ₁)/Γ(z+λ₂) for the ratio of gamma functions.
6769

6870
[δ(k::Integer, j::Integer)](FastTransforms.md#method__948.1) The Kronecker δ function.
6971

docs/index.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,3 +46,5 @@ then increment/decrement operators are used with linear complexity (and linear c
4646
1. N. Hale and A. Townsend. <a href="http://dx.doi.org/10.1137/130932223">A fast, simple, and stable Chebyshev—Legendre transform using and asymptotic formula</a>, SIAM J. Sci. Comput., 36:A148—A167, 2014.
4747

4848
2. R. M. Slevinsky. <a href="http://arxiv.org/abs/1602.02618">On the use of Hahn's asymptotic formula and stabilized recurrence for a fast, simple, and stable Chebyshev—Jacobi transform</a>, arXiv:1602.02618, 2016.
49+
50+
3. A. Townsend, M. Webb, and S. Olver. <a href="http://arxiv.org/abs/1604.07486">Fast polynomial transforms based on Toeplitz and Hankel matrices</a>, arXiv:1604.07486, 2016.

src/FastTransforms.jl

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ using Base, ToeplitzMatrices
66
import Base: *
77

88
export cjt, icjt, jjt, plan_cjt, plan_icjt
9-
export leg2cheb,leg2chebu
9+
export leg2cheb, leg2chebu, jac2jac
1010
export gaunt
1111

1212
# Other module methods and constants:
@@ -44,6 +44,7 @@ include("toeplitzhankel.jl")
4444

4545
leg2cheb(x...)=th_leg2cheb(x...)
4646
leg2chebu(x...)=th_leg2chebu(x...)
47+
jac2jac(x...)=th_jac2jac(x...)
4748

4849

4950

src/specialfunctions.jl

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ Anαβ{T<:Integer}(n::AbstractMatrix{T},α::Number,β::Number) = [ Anαβ(n[i,j]
138138
"""
139139
The Lambda function Λ(z) = Γ(z+½)/Γ(z+1) for the ratio of gamma functions.
140140
"""
141-
Λ(x::Number) = exp(lgamma(x+half(x))-lgamma(x+one(x)))
141+
Λ(z::Number) = exp(lgamma(z+half(z))-lgamma(z+one(z)))
142142
"""
143143
For 64-bit floating-point arithmetic, the Lambda function uses the asymptotic series for τ in Appendix B of
144144
@@ -154,6 +154,20 @@ function Λ(x::Float64)
154154
end
155155
@vectorize_1arg Number Λ
156156

157+
"""
158+
The Lambda function Λ(z,λ₁,λ₂) = Γ(z+λ₁)/Γ(z+λ₂) for the ratio of gamma functions.
159+
"""
160+
Λ(z::Number,λ₁::Number,λ₂::Number) = exp(lgamma(z+λ₁)-lgamma(z+λ₂))
161+
function Λ(x::Float64,λ₁::Float64,λ₂::Float64)
162+
if min(x+λ₁,x+λ₂) 8.979120323411497
163+
exp(λ₂-λ₁+(x-.5)*log1p((λ₁-λ₂)/(x+λ₂)))*(x+λ₁)^λ₁/(x+λ₂)^λ₂*stirlingseries(x+λ₁)/stirlingseries(x+λ₂)
164+
else
165+
(x+λ₂)/(x+λ₁)*Λ(x+1.,λ₁,λ₂)
166+
end
167+
end
168+
Λ{T<:Number}(x::AbstractArray{T},λ₁::Number,λ₂::Number) = promote_type(T,typeof(λ₁),typeof(λ₂))[ Λ(x[i],λ₁,λ₂) for i in eachindex(x) ]
169+
170+
157171
Cnλ(n::Integer::Float64) = 2^λ/sqrtpi*Λ(n+λ)
158172
Cnλ(n::Integer::Number) = 2^λ/sqrt(oftype(λ,π))*Λ(n+λ)
159173
function Cnλ{T<:Integer}(n::UnitRange{T}::Number)

0 commit comments

Comments
 (0)