SVD

Index

Documentation

StableDQMC.fact_multMethod
fact_mult(A::SVD, B::SVD) -> SVD

Stabilized multiplication of two SVD decompositions. Returns a SVD factorization object.

source
StableDQMC.gesddMethod

Calculates the SVD deomposition of a matrix by employing a divide and conquer approach. Returns a SVD factorization object.

source
StableDQMC.gesvdMethod

Calculates the SVD deomposition of a matrix. Returns a SVD factorization object.

source
StableDQMC.inv_one_plus!Method
inv_one_plus!(res, A::SVD, B::SVD) -> res

Stabilized calculation of [1 + UlDlVtlUrDrVtr]^(-1). Writes the result into res.

See svd_inv_one_plus for preallocation options.

source
StableDQMC.inv_one_plus!Method
inv_one_plus!(res, F::SVD) -> res

Stabilized calculation of [1 + USVt]^(-1):

  • Use one intermediate SVD decomposition.

Writes the result into res.

See svd_inv_one_plus for preallocation options.

source
StableDQMC.inv_one_plusMethod
inv_one_plus(A::SVD, B::SVD) -> AbstractMatrix

Stabilized calculation of [1 + UlDlTlUrDrTr]^(-1).

See svd_inv_one_plus for preallocation options.

source
StableDQMC.inv_one_plusMethod
inv_one_plus(F::SVD) -> AbstractMatrix

Stabilized calculation of [1 + USVt]^(-1):

  • Use one intermediate SVD decomposition.

See svd_inv_one_plus for preallocation options.

source
StableDQMC.inv_one_plus_loh!Method

invoneplus_loh!(res, F::SVD) -> res

Stabilized calculation of [1 + USVt]^(-1):

  • Separate scales larger and smaller than unity
  • Use two intermediate SVD decompositions.

Writes the result into res.

See svd_inv_one_plus_loh for preallocation options.

source
StableDQMC.inv_one_plus_lohMethod

invoneplus_loh(F::SVD) -> AbstractMatrix

Stabilized calculation of [1 + USVt]^(-1):

  • Separate scales larger and smaller than unity
  • Use two intermediate SVD decompositions.

See svd_inv_one_plus_loh for preallocation options.

source
StableDQMC.inv_sum!Method
inv_sum!(res, A::SVD, B::SVD) -> res

Stabilized calculation of [UaSaVta + UbSbVtb]^(-1):

  • Use one intermediate SVD decompositions.

Writes the result into res.

See svd_inv_sum for preallocation options.

source
StableDQMC.inv_sumMethod
inv_sum(A::SVD, B::SVD) -> res

Stabilized calculation of [UaSaVta + UbSbVtb]^(-1):

  • Use one intermediate SVD decompositions.

See svd_inv_sum for preallocation options.

source
StableDQMC.inv_sum_loh!Method
inv_sum_loh!(res, A::SVD, B::SVD) -> res

Stabilized calculation of [UaSaVta + UbSbVtb]^(-1):

  • Separate scales larger and smaller than unity
  • Use two intermediate SVD decompositions.

Writes the result into res.

See svd_inv_sum_loh for preallocation options.

source
StableDQMC.inv_sum_lohMethod
inv_sum_loh(A::SVD, B::SVD) -> res

Stabilized calculation of [UaSaVta + UbSbVtb]^(-1):

  • Separate scales larger and smaller than unity
  • Use two intermediate SVD decompositions.

See svd_inv_sum_loh for preallocation options.

source
StableDQMC.svd_inv_one_plusMethod
svd_inv_one_plus(A::SVD, B::SVD) -> SVD

Stabilized calculation of [1 + UlDlVtlUrDrVtr]^(-1). Returns and SVD factorization object.

Optional preallocations via keyword arguments:

  • tmp = similar(A.U)
  • tmp2 = similar(A.U)
  • tmp3 = similar(A.U)
source
StableDQMC.svd_inv_one_plusMethod
svd_inv_one_plus(F::SVD) -> SVD

Stabilized calculation of [1 + USVt]^(-1):

  • Use one intermediate SVD decomposition.

Options for preallocation via keyword arguments:

  • t = similar(F.U)
  • a = similar(F.U)
  • c = similar(F.U)
source
StableDQMC.svd_inv_one_plus_lohMethod
svd_inv_one_plus_loh(F::SVD) -> SVD

Stabilized calculation of [1 + USVt]^(-1):

  • Separate scales larger and smaller than unity
  • Use two intermediate SVD decompositions.

Options for preallocation via keyword arguments:

  • l = similar(F.U)
  • r = similar(F.U)
  • Dp = similar(F.D)
  • Dm = similar(F.D)
source
StableDQMC.svd_inv_sumMethod
svd_inv_sum(A::SVD, B::SVD) -> SVD

Stabilized calculation of [UaSaVta + UbSbVtb]^(-1):

  • Use one intermediate SVD decompositions.

Options for preallocations via keyword arguments:

  • m1 = similar(A.U)
  • m2 = similar(A.U)
source
StableDQMC.svd_inv_sum_lohMethod
svd_inv_sum_loh(A::SVD, B::SVD) -> SVD

Stabilized calculation of [UaSaVta + UbSbVtb]^(-1):

  • Separate scales larger and smaller than unity
  • Use two intermediate SVD decompositions.

Options for preallocations via keyword arguments:

  • None (yet)
source