用法一
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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。