用法一
sqrt(x)
返回 Real
參數拋出 DomainError
。改用複雜的否定論點。前綴運算符 √
等效於 sqrt
。 。為負的
另請參閱: hypot
。
例子
julia> sqrt(big(81))
9.0
julia> sqrt(big(-81))
ERROR: DomainError with -81.0:
NaN result for non-NaN input.
Stacktrace:
[1] sqrt(::BigFloat) at ./mpfr.jl:501
[...]
julia> sqrt(big(complex(-81)))
0.0 + 9.0im
julia> .√(1:4)
4-element Vector{Float64}:
1.0
1.4142135623730951
1.7320508075688772
2.0
用法二
sqrt(A::AbstractMatrix)
如果 A
沒有負實特征值,則計算 A
的主矩陣平方根,即特征值具有正實部的唯一矩陣 使得 。否則,返回非主平方根。
如果 A
是實對稱或 Hermitian,則其特征分解 ( eigen
) 用於計算平方根。對於此類矩陣,由於舍入誤差而顯得略微為負的特征值 λ 被視為為零。更準確地說,具有所有特征值 ≥ -rtol*(max |λ|)
的矩陣被視為半定矩陣(產生 Hermitian 平方根),負特征值被視為零。 rtol
是 sqrt
的關鍵字參數(僅在 Hermitian/實對稱情況下),默認為按 size(A,1)
縮放的機器精度。
否則,平方根通過 Björck-Hammarling 方法 [BH83] 確定,該方法計算複 Schur 形式 ( schur
),然後計算三角因子的複平方根。如果存在實平方根,則使用此方法的擴展 [H87] 來計算實 Schur 形式,然後使用 quasi-triangular 因子的實平方根。
例子
julia> A = [4 0; 0 4]
2×2 Matrix{Int64}:
4 0
0 4
julia> sqrt(A)
2×2 Matrix{Float64}:
2.0 0.0
0.0 2.0
相關用法
- Julia splice!用法及代碼示例
- Julia sizeof()用法及代碼示例
- Julia setfield()用法及代碼示例
- Julia sort用法及代碼示例
- Julia signed用法及代碼示例
- Julia sortperm用法及代碼示例
- Julia strip用法及代碼示例
- Julia setdiff!用法及代碼示例
- Julia setindex!方法用法及代碼示例
- Julia sizeof方法用法及代碼示例
- Julia stride用法及代碼示例
- Julia skipmissing用法及代碼示例
- Julia setdiff用法及代碼示例
- Julia sum用法及代碼示例
- Julia show方法用法及代碼示例
- Julia string用法及代碼示例
- Julia signbit()用法及代碼示例
- Julia startswith用法及代碼示例
- Julia strides用法及代碼示例
- Julia symdiff用法及代碼示例
- Julia split用法及代碼示例
- Julia sign用法及代碼示例
- Julia showerror用法及代碼示例
- Julia signbit用法及代碼示例
- Julia skipchars用法及代碼示例
注:本文由純淨天空篩選整理自julialang.org大神的英文原創作品 Base.sqrt — Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。