2026a

# landen


椭圆模数的 Landen 变换

函数库: TySignalProcessing

# 语法

v = landen(k)
v = landen(k,tol)

# 说明

v = landen(k) 返回椭圆模数的 Landen 变换。


v = landen(k,tol) 返回椭圆模数的 Landen 变换,tol 用于指定容差,默认等于 eps( )。

# 示例

椭圆模数的 Landen 变换

给定椭圆模数,计算模数降幅 Landen 向量。

using TySignalProcessing
M = 0.5
v = landen(M)
v = 5-element Vector{Float64}:
0.07179676972449082
0.0012920262399947755
4.173332995427069e-7
4.3541770726804474e-14
4.739714495064017e-28

# 输入参数

k - 椭圆模数
标量

椭圆模数,指定为标量。

数据类型: Int | Float

tol - 容差
标量

容差,默认 tol 等于 eps( )。

数据类型: Float

# 输出参数

v - 模数降幅Landen向量
向量

模数降幅 Landen 向量输出,返回为向量。

数据类型: Float

# 版本历史记录

在 2024a 之前推出

2025a SP3:修复了函数在输入 0 时会返回标量的问题,限制了输入值的范围

修复 landen 函数在输入 0 时会返回标量的问题,landen 函数总是输出 Float64 向量,与输入值无关;限制 v = landen(k) 中 k 的范围为 [0,1],例如:

ret1 = landen(-1)
ret2 = landen(0)

更新前结果:

ret1
Any[]

ret2
0

2025a SP3 更新后结果:

ERROR: k必须>=0且<=1

ret2
1-element Vector{Float64}:
 0.0

# 另请参阅

ellip | ellipdeg