當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Julia LinearAlgebra.eigvals!用法及代碼示例


用法一

eigvals!(A; permute::Bool=true, scale::Bool=true, sortby) -> values

eigvals 相同,但通過覆蓋輸入 A 而不是創建副本來節省空間。 permutescalesortby 關鍵字與 eigen 相同。

注意

輸入矩陣 A 在調用 eigvals! 後將不包含其特征值 - A 用作工作空間。

例子

julia> A = [1. 2.; 3. 4.]
2×2 Matrix{Float64}:
 1.0  2.0
 3.0  4.0

julia> eigvals!(A)
2-element Vector{Float64}:
 -0.3722813232690143
  5.372281323269014

julia> A
2×2 Matrix{Float64}:
 -0.372281  -1.0
  0.0        5.37228

用法二

eigvals!(A, B; sortby) -> values

eigvals 相同,但通過覆蓋輸入 A (和 B )而不是創建副本來節省空間。

注意

調用eigvals! 後,輸入矩陣AB 將不包含它們的特征值。它們用作工作區。

例子

julia> A = [1. 0.; 0. -1.]
2×2 Matrix{Float64}:
 1.0   0.0
 0.0  -1.0

julia> B = [0. 1.; 1. 0.]
2×2 Matrix{Float64}:
 0.0  1.0
 1.0  0.0

julia> eigvals!(A, B)
2-element Vector{ComplexF64}:
 0.0 - 1.0im
 0.0 + 1.0im

julia> A
2×2 Matrix{Float64}:
 -0.0  -1.0
  1.0  -0.0

julia> B
2×2 Matrix{Float64}:
 1.0  0.0
 0.0  1.0

用法三

eigvals!(A::Union{SymTridiagonal, Hermitian, Symmetric}, irange::UnitRange) -> values

eigvals 相同,但通過覆蓋輸入 A 而不是創建副本來節省空間。 irange 是要搜索的特征值範圍 indices - 例如,第 2 到第 8 個特征值。

用法四

eigvals!(A::Union{SymTridiagonal, Hermitian, Symmetric}, vl::Real, vu::Real) -> values

eigvals 相同,但通過覆蓋輸入 A 而不是創建副本來節省空間。 vl是尋找特征值區間的下界,vu是上界。

相關用法


注:本文由純淨天空篩選整理自julialang.org 大神的英文原創作品 LinearAlgebra.eigvals! — Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。