#pragma once #include #include #include namespace MbD { class SingularMatrixError : virtual public std::runtime_error { protected: std::shared_ptr> redundantEqnNos; public: explicit SingularMatrixError(const std::string& msg, std::shared_ptr> redunEqnNos) : std::runtime_error(msg), redundantEqnNos(redunEqnNos) { } virtual ~SingularMatrixError() noexcept {} virtual std::shared_ptr> getRedundantEqnNos() const noexcept { return redundantEqnNos; } }; }