Skip to content

Add OrthAdjoint for left_orth, right_orth - #465

Merged
kshyatt merged 7 commits into
QuantumKitHub:mainfrom
Yue-Zhengyuan:codex/lq-adjoint
Oct 20, 2026
Merged

kshyatt merged 7 commits into
QuantumKitHub:mainfrom
Yue-Zhengyuan:codex/lq-adjoint

Conversation

@Yue-Zhengyuan

@Yue-Zhengyuan Yue-Zhengyuan commented Oct 17, 2026 •

Copy link
Copy Markdown
Member

Add OrthAdjoint for differentiating both left_orth(!) and right_orth(!). QRAdjoint is now its compatibility alias.

They will be useful in #422 (SI-CTMRG projector) and #441 (split-CTMRG).

@Yue-Zhengyuan
Yue-Zhengyuan requested a review from kshyatt October 17, 2026 01:37
@codecov

codecov Bot commented Oct 18, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 95.34884% with 2 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
src/utility/orth.jl 95.23% 2 Missing ⚠️
Files with missing lines Coverage Δ
src/Defaults.jl 85.71% <ø> (ø)
src/PEPSKit.jl 100.00% <ø> (ø)
src/algorithms/ctmrg/c4v.jl 89.88% <ø> (+89.88%) ⬆️
src/algorithms/ctmrg/ctmrg.jl 81.11% <ø> (+71.69%) ⬆️
src/algorithms/ctmrg/projectors/c4v_qr.jl 64.28% <ø> (+64.28%) ⬆️
src/algorithms/ctmrg/projectors/projectors.jl 87.50% <100.00%> (+50.00%) ⬆️
src/utility/orth.jl 95.23% <95.23%> (ø)

... and 93 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@leburgel

Copy link
Copy Markdown
Member

If this is possible, I would prefer to use one struct for both the QR and LQ pullback hooks. The QRAdjoint name predates the MatrixAlgebraKit update which now allows passing one algorithm (e.g. HouseHolder) to both left_orth and right_orth, but now it might be good to do something similar in spirit for the pullback hooks.

@pbrehmer pbrehmer left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with Lander that it would be nicer to have a single OrthAdjoint struct (and at first glance this seems straightforward to add I think?) but other than that this looks good to me!

@Yue-Zhengyuan Yue-Zhengyuan changed the title Add LQAdjoint for right_orth Add OrthAdjoint for left_orth, right_orth Oct 19, 2026

@pbrehmer pbrehmer left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I only have minor comments now, otherwise this is good to go for me.

Comment thread src/PEPSKit.jl
Comment thread src/utility/orth.jl Outdated
Co-authored-by: Paul Brehmer <paulbrehmer8@googlemail.com>
@kshyatt
kshyatt merged commit a27106b into QuantumKitHub:main Oct 20, 2026
78 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants