SVD

Index

Documentation

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

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

source
StableDQMC.gesdd — Method

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

source
StableDQMC.gesvd — Method

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_plus — Method
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_plus — Method
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_loh — Method

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_sum — Method
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_loh — Method
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_plus — Method
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_plus — Method
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_loh — Method
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_sum — Method
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_loh — Method
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