Julia 中矩阵指数的函数或运算符

Function or operator for matrix exponential in Julia

我正在寻找函数或运算符 计算 Julia 中的第 n 个矩阵指数 其中 n 是一个非负整数。 例如,在 MATLAB 中,我会为 A * A * A 编写 expm(A, 3)。 我可以多次使用 * 调用产品, 但是有没有办法计算矩阵指数 不这样做?

julia> A = [1 -1; 0 2]
2x2 Array{Int64,2}:
 1  -1
 0   2

julia> A * A
2x2 Array{Int64,2}:
 1  -3
 0   4

julia> A * A * A
2x2 Array{Int64,2}:
 1  -7
 0   8

只需使用求幂运算符即可。

julia> A = [1 -1; 0 2]
2x2 Array{Int64,2}:
 1  -1
 0   2

julia> A^2
2x2 Array{Int64,2}:
 1  -3
 0   4

julia> A^3
2x2 Array{Int64,2}:
 1  -7
 0   8

要找出它的实现位置,您可以使用函数 methods

julia> methods(^)
# 45 methods for generic function "^":
...

^(A::Array{T,2}, p::Integer) at linalg/dense.jl:170
^(x, p::Integer) at intfuncs.jl:108
^(A::Array{T,2}, p::Number) at linalg/dense.jl:173

根据该信息,您可以在 the Julia repository 中找到它。