Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
c47926e
Update header comment in trilinos_space.h for consistency and clarity
loumalouomega Apr 14, 2026
f80a797
Merge branch 'master' into trilinos/improvement-trilinos-space
loumalouomega Apr 14, 2026
480c198
Add Epetra_FECrsGraph include and define additional types in Trilinos…
loumalouomega Apr 14, 2026
c905fe0
Add utility methods for communicator and vector/matrix operations in …
loumalouomega Apr 14, 2026
79b8403
Add CreateVectorCopy method and update communicator parameter types i…
loumalouomega Apr 14, 2026
9d061ad
Add ScaleAndAdd method for unaliased matrix addition in TrilinosSpace
loumalouomega Apr 14, 2026
a986c47
Replace Epetra_Map with MapType in resize methods for improved type c…
loumalouomega Apr 14, 2026
f994baf
Add methods to build system and constraints structures in TrilinosSpace
loumalouomega Apr 14, 2026
bd80e96
Add IsDistributedSpace method to TrilinosSpace for distributed system…
loumalouomega Apr 14, 2026
8f49ec4
Refactor TrilinosSpace to use MapType and GraphType for improved type…
loumalouomega Apr 14, 2026
dd1519b
Add helper functions for matrix and vector operations in TrilinosSpace
loumalouomega Apr 14, 2026
a99f0aa
Add ManualFinalize method to TrilinosSpace for matrix assembly finali…
loumalouomega Apr 14, 2026
c9604dc
Refactor TrilinosSparseSpaceType definition for improved clarity and …
loumalouomega Apr 14, 2026
805224f
Refactor TrilinosSparseSpaceType usage in tests for improved consiste…
loumalouomega Apr 14, 2026
df1b7c7
Add TrilinosLinearAlgebraLibrary enum and LinearAlgebraLibrary method…
loumalouomega Apr 14, 2026
e228a86
Reorganize access, inquiry, and I/O sections in TrilinosSpace for imp…
loumalouomega Apr 14, 2026
10f9109
Refactor ReadMatrixMarket and ReadMatrixMarketVector methods for impr…
loumalouomega Apr 14, 2026
3160302
Add methods for setting global and local vector/matrix entries with a…
loumalouomega Apr 14, 2026
a10dd9a
Make LinearAlgebraLibrary method constexpr for consisstency
loumalouomega Apr 14, 2026
874512a
Refactor BuildSystemStructure to support row/column block connectivit…
loumalouomega Apr 14, 2026
2ffad04
Fix typos in parameter descriptions for GenerateSparseMatrixIndexAndV…
loumalouomega Apr 15, 2026
204bfca
Remove unnecessary blank line before TrilinosIsDistributedSpace test …
loumalouomega Apr 15, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -250,6 +250,61 @@ Vector GatherValues(TrilinosSparseSpaceType& dummy,
dummy.sublist(sublist_name).set(name, value);
}

bool WriteMatrixMarketMatrixHelper(TrilinosSparseSpaceType& dummy, const char* filename, const TrilinosSparseSpaceType::MatrixType& rM, const bool symmetric)
{
return TrilinosSparseSpaceType::WriteMatrixMarketMatrix(filename, rM, symmetric);
}

bool WriteMatrixMarketVectorHelper(TrilinosSparseSpaceType& dummy, const char* filename, const TrilinosSparseSpaceType::VectorType& rV)
{
return TrilinosSparseSpaceType::WriteMatrixMarketVector(filename, rV);
}

void GlobalAssembleMatrix(TrilinosSparseSpaceType& dummy, TrilinosSparseSpaceType::MatrixType& rA)
{
TrilinosSparseSpaceType::GlobalAssemble(rA);
}

void GlobalAssembleVector(TrilinosSparseSpaceType& dummy, TrilinosSparseSpaceType::VectorType& rV)
{
TrilinosSparseSpaceType::GlobalAssemble(rV);
}

void SetVector(TrilinosSparseSpaceType& dummy, TrilinosSparseSpaceType::VectorType& rX, double value)
{
TrilinosSparseSpaceType::Set(rX, value);
}

double GetDiagonalNormHelper(TrilinosSparseSpaceType& dummy, const TrilinosSparseSpaceType::MatrixType& rA)
{
return TrilinosSparseSpaceType::GetDiagonalNorm(rA);
}

double GetAveragevalueDiagonalHelper(TrilinosSparseSpaceType& dummy, const TrilinosSparseSpaceType::MatrixType& rA)
{
return TrilinosSparseSpaceType::GetAveragevalueDiagonal(rA);
}

double GetMaxDiagonalHelper(TrilinosSparseSpaceType& dummy, const TrilinosSparseSpaceType::MatrixType& rA)
{
return TrilinosSparseSpaceType::GetMaxDiagonal(rA);
}

double GetMinDiagonalHelper(TrilinosSparseSpaceType& dummy, const TrilinosSparseSpaceType::MatrixType& rA)
{
return TrilinosSparseSpaceType::GetMinDiagonal(rA);
}

void CopyMatrixValuesHelper(TrilinosSparseSpaceType& dummy, TrilinosSparseSpaceType::MatrixType& rA, const TrilinosSparseSpaceType::MatrixType& rB)
{
TrilinosSparseSpaceType::CopyMatrixValues(rA, rB);
}

double GetValue(TrilinosSparseSpaceType& dummy, const TrilinosSparseSpaceType::VectorType& rX, std::size_t I)
{
return TrilinosSparseSpaceType::GetValue(rX, I);
}

void AddBasicOperations(pybind11::module& m)
{
py::class_< Epetra_MpiComm > (m,"Epetra_MpiComm")
Expand Down Expand Up @@ -310,10 +365,22 @@ void AddBasicOperations(pybind11::module& m)
.def("CreateEmptyVectorPointer", CreateEmptyVectorPointer)
.def("ReadMatrixMarketMatrix", ReadMatrixMarketMatrix)
.def("ReadMatrixMarketVector", ReadMatrixMarketVector)
.def("WriteMatrixMarketMatrix", WriteMatrixMarketMatrixHelper)
.def("WriteMatrixMarketVector", WriteMatrixMarketVectorHelper)
.def("SetValue", SetValue)
//.def("GetValue", GetValue) //deliberately commented out. Only works for local Ids
.def("GatherValues", GatherValues)
.def("GlobalAssembleMatrix", GlobalAssembleMatrix)
.def("GlobalAssembleVector", GlobalAssembleVector)
.def("Set", SetVector)
.def("TransposeMult", TransposeMult)
.def("GetDiagonalNorm", GetDiagonalNormHelper)
.def("GetAveragevalueDiagonal", GetAveragevalueDiagonalHelper)
.def("GetMaxDiagonal", GetMaxDiagonalHelper)
.def("GetMinDiagonal", GetMinDiagonalHelper)
.def("CopyMatrixValues", CopyMatrixValuesHelper)
.def_static("IsDistributed", &TrilinosSparseSpaceType::IsDistributed)
.def_static("IsDistributedSpace", &TrilinosSparseSpaceType::IsDistributedSpace)
.def_static("FastestDirectSolverList", &TrilinosSparseSpaceType::FastestDirectSolverList)
;

Expand Down
Loading
Loading