aboutsummaryrefslogtreecommitdiff
path: root/include/triangular_solve.hpp
diff options
context:
space:
mode:
authory-jan137 <yousefjan24000@gmail.com>2026-03-14 14:49:46 +0300
committery-jan137 <yousefjan24000@gmail.com>2026-03-14 14:49:46 +0300
commit7db0d82731ababdf0b2f4d986dd54da3b4650954 (patch)
tree145564ba45b9ae74a7eeebc319027c730c7177bc /include/triangular_solve.hpp
parent5ac9489c079f3f1a0ba1d2d8385001ada83a13b8 (diff)
Add triangular solve
Diffstat (limited to 'include/triangular_solve.hpp')
-rw-r--r--include/triangular_solve.hpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/include/triangular_solve.hpp b/include/triangular_solve.hpp
new file mode 100644
index 0000000..632f225
--- /dev/null
+++ b/include/triangular_solve.hpp
@@ -0,0 +1,22 @@
+#pragma once
+
+#include <cstddef>
+
+#include "matrix.hpp"
+#include "vector.hpp"
+
+namespace linalg {
+
+Vector forward_substitution(
+ const Matrix& lower,
+ const Vector& rhs,
+ double singular_tolerance = 1e-12,
+ bool unit_diagonal = false);
+
+Vector backward_substitution(
+ const Matrix& upper,
+ const Vector& rhs,
+ double singular_tolerance = 1e-12,
+ bool unit_diagonal = false);
+
+} // namespace linalg