You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
refactor: reuse existing code patterns in matrix-function kernels
Move `_mul_herm!` from `implementations/polar.jl` to
`implementations/projections.jl` and use it for the symmetric-product
kernels of `squareroot` and fractional `power` via
`MatrixFunctionViaEigh`, so hermitian output is guaranteed through the
same mechanism as the polar decomposition (BLAS `herk`/`syrk`, explicit
projection otherwise, GPU overrides).
Rewrite the `MatrixFunctionViaLA` kernels in the style of the
`exponential` implementation: an explicit eltype branch with a
`real.(...)` assignment instead of the bespoke `_copy_result!` helper.
`squareroot`/`logarithm` use a strict complex-result check (LinearAlgebra
returns real results whenever the principal value is real), while
`power` tolerates rounding-level imaginary components since fractional
powers are computed in complex arithmetic upstream.
0 commit comments