Repository navigation
left_matmul: one Jacobian path through BA_kron_matrices_* - #166
Merged
Merged
Conversation
Pins sparsediff_linalg to the head of sparsediff_linalg#33 (stacked on #32; untagged, to be repinned to v0.5.1). The dense and sparse jacobian_init / eval_jacobian pairs become one pair calling the new dispatcher, which routes on A's kind and on n_blocks == 1. vector_mult.c includes matmul.h, where #32 moved DA_matrices_fill_values. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pins
sparsediff_linalgto v0.5.1.Absorbs:
BA_kron_matrices_*, one dispatcher for C = kron(I_p, A) @ J that routes onp == 1/ A's kind.free_fnslot removed (engine only callsfree_matrix, unchanged);DA_matrices_fill_valuesmoved tomatmul.h.Changes:
left_matmul.c:jacobian_init_dense/_sparseandeval_jacobian_dense/_sparse(each with its ownn_blocks == 1branch) become onejacobian_init_impl/eval_jacobian_implpair on the dispatcher; both constructors use it. Drops the now-unusedmatmul.hinclude.vector_mult.c: includematmul.hforDA_matrices_fill_values.No behaviour change: the dispatcher routes to the same functions the atom called before. 304 engine tests pass (Debug and Release), the library suite passes,
PROFILE_ONLYbuilds, no new warnings.🤖 Generated with Claude Code