Skip to content

Xpetra: Support transposes in matrix-matrix product for BlockedCrsMatrix type - #15172

Merged
MalachiTimothyPhillips merged 5 commits into
trilinos:developfrom
MalachiTimothyPhillips:malachi/add-xpetra-transpose-matrix-matrix-multiply
Apr 27, 2026
Merged

Xpetra: Support transposes in matrix-matrix product for BlockedCrsMatrix type#15172
MalachiTimothyPhillips merged 5 commits into
trilinos:developfrom
MalachiTimothyPhillips:malachi/add-xpetra-transpose-matrix-matrix-multiply

Conversation

@MalachiTimothyPhillips

Copy link
Copy Markdown
Contributor

@trilinos/xpetra

malphil added 2 commits April 23, 2026 09:35
…ix multiplication

Signed-off-by: malphil <malphil@sandia.gov>
…Matrix

Signed-off-by: malphil <malphil@sandia.gov>
@github-actions

Copy link
Copy Markdown

CDash for AT2 results [Currently only accessible from Sandia networks]

Reproducing CI builds locally

CI builds can be reproduced locally in a container.

Requirements: Python 3.9+, Podman, CMake

Steps:

  • Check out the branch of the PR locally.
  • Run commonTools/pr_reproducer/reproducer.sh.

Signed-off-by: malphil <malphil@sandia.gov>
Signed-off-by: malphil <malphil@sandia.gov>
@github-actions

Copy link
Copy Markdown

Your PR updated files that did not respect package formatting settings.
Please apply the patch given below. Alternatively you can download a patch file here.

Patch
diff --git a/packages/xpetra/src/Utils/Xpetra_MatrixMatrix_def.hpp b/packages/xpetra/src/Utils/Xpetra_MatrixMatrix_def.hpp
index e41f5dd6..af4d38ad 100644
--- a/packages/xpetra/src/Utils/Xpetra_MatrixMatrix_def.hpp
+++ b/packages/xpetra/src/Utils/Xpetra_MatrixMatrix_def.hpp
@@ -189,7 +189,8 @@ RCP<Xpetra::BlockedCrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node>> MatrixM
   const size_t B_inner = transposeB ? B.Cols() : B.Rows();
   TEUCHOS_TEST_FOR_EXCEPTION(A_inner != B_inner, Exceptions::RuntimeError,
                              "TwoMatrixMultiplyBlock: Block dimensions are not compatible for multiplication. "
-                             "A has " << A_inner << " block columns and B has " << B_inner << " block rows.");
+                             "A has "
+                                 << A_inner << " block columns and B has " << B_inner << " block rows.");
 
   RCP<const MapExtractor> rgmapextractor = transposeA ? A.getDomainMapExtractor() : A.getRangeMapExtractor();
   RCP<const MapExtractor> domapextractor = transposeB ? B.getRangeMapExtractor() : B.getDomainMapExtractor();

More details about our use of clang-format and other tools can be found in the wiki.

Signed-off-by: malphil <malphil@sandia.gov>
@MalachiTimothyPhillips
MalachiTimothyPhillips enabled auto-merge (squash) April 23, 2026 23:05
@MalachiTimothyPhillips
MalachiTimothyPhillips merged commit 854446a into trilinos:develop Apr 27, 2026
25 of 28 checks passed
@MalachiTimothyPhillips
MalachiTimothyPhillips deleted the malachi/add-xpetra-transpose-matrix-matrix-multiply branch April 27, 2026 13:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants