LMCAS
Lamina Computer Algebra System
Toggle main menu visibility
载入中...
搜索中...
未找到
matrix_decomposition_support.hpp
浏览该文件的文档.
1
#include "
computation_context.hpp
"
2
#pragma once
3
4
#include "
matrix_decomposition.hpp
"
5
#include "
internal/symbolic_ast.hpp
"
6
7
#include <optional>
8
9
namespace
LMCAS::detail::matrix_decomposition
{
10
11
Result<std::shared_ptr<const MatrixNode>
>
validate_decomposition_matrix
(
12
const
std::shared_ptr<SymbolicExpr>& A,
bool
require_square,
13
ComputationContext
&
context
,
const
std::string&
operation
);
14
Result<void>
validate_decomposition_output
(
15
const
std::shared_ptr<SymbolicExpr>& expr,
16
const
std::string&
name
,
const
std::string&
operation
);
17
std::optional<Rational>
exact_rational_expr
(
18
const
std::shared_ptr<const SymbolicNode>&
node
);
19
std::optional<Rational>
exact_rational_expr
(
20
const
std::shared_ptr<SymbolicExpr>& expr,
ComputationContext
&
context
);
21
std::shared_ptr<SymbolicExpr>
exact_number_expr
(
const
Rational&
value
);
22
std::optional<std::vector<std::vector<Rational>>>
exact_rational_matrix
(
23
const
std::shared_ptr<const MatrixNode>& matrix,
ComputationContext
&
context
);
24
std::shared_ptr<SymbolicExpr>
identity_matrix_expr
(std::size_t n);
25
std::optional<std::vector<Rational>>
exact_rectangular_diagonal_entries
(
26
const
std::shared_ptr<const MatrixNode>& matrix,
ComputationContext
&
context
);
27
std::optional<std::vector<Rational>>
exact_diagonal_entries
(
28
const
std::shared_ptr<const MatrixNode>& matrix,
ComputationContext
&
context
);
29
std::shared_ptr<SymbolicExpr>
rectangular_diagonal_expr
(
30
std::size_t rows, std::size_t cols,
const
std::vector<Rational>& diagonal);
31
32
}
LMCAS::ComputationContext
定义
computation_context.hpp:99
LMCAS::Result
定义
result.hpp:39
computation_context.hpp
matrix_decomposition.hpp
矩阵高级分解算法:LU、QR、Cholesky、SVD、特征分解及矩阵指数。
LMCAS::detail::matrix_decomposition
定义
matrix_decomposition_support.hpp:9
LMCAS::detail::matrix_decomposition::identity_matrix_expr
std::shared_ptr< SymbolicExpr > identity_matrix_expr(std::size_t n)
LMCAS::detail::matrix_decomposition::exact_number_expr
std::shared_ptr< SymbolicExpr > exact_number_expr(const Rational &value)
定义
matrix_decomposition_support.cpp:114
LMCAS::detail::matrix_decomposition::exact_rational_expr
std::optional< Rational > exact_rational_expr(const std::shared_ptr< const SymbolicNode > &node)
定义
matrix_decomposition_support.cpp:72
LMCAS::detail::matrix_decomposition::exact_diagonal_entries
std::optional< std::vector< Rational > > exact_diagonal_entries(const std::shared_ptr< const MatrixNode > &matrix, ComputationContext &context)
定义
matrix_decomposition_support.cpp:172
LMCAS::detail::matrix_decomposition::rectangular_diagonal_expr
std::shared_ptr< SymbolicExpr > rectangular_diagonal_expr(std::size_t rows, std::size_t cols, const std::vector< Rational > &diagonal)
LMCAS::detail::matrix_decomposition::validate_decomposition_matrix
Result< std::shared_ptr< const MatrixNode > > validate_decomposition_matrix(const std::shared_ptr< SymbolicExpr > &A, bool require_square, ComputationContext &context, const std::string &operation)
定义
matrix_decomposition_support.cpp:6
LMCAS::detail::matrix_decomposition::exact_rectangular_diagonal_entries
std::optional< std::vector< Rational > > exact_rectangular_diagonal_entries(const std::shared_ptr< const MatrixNode > &matrix, ComputationContext &context)
定义
matrix_decomposition_support.cpp:150
LMCAS::detail::matrix_decomposition::validate_decomposition_output
Result< void > validate_decomposition_output(const std::shared_ptr< SymbolicExpr > &expr, const std::string &name, const std::string &operation)
定义
matrix_decomposition_support.cpp:36
LMCAS::detail::matrix_decomposition::exact_rational_matrix
std::optional< std::vector< std::vector< Rational > > > exact_rational_matrix(const std::shared_ptr< const MatrixNode > &matrix, ComputationContext &context)
定义
matrix_decomposition_support.cpp:123
LMCAS::detail::node
const SymbolicNodePtr & node(const ::LMCAS::SymbolicExpr &expression) noexcept
定义
base.hpp:91
LMCAS::detail::operation
ComputationContext const std::string & operation
定义
exact_algebraic.hpp:32
LMCAS::detail::context
std::size_t std::size_t ComputationContext & context
定义
exact_algebraic.hpp:27
LMCAS::value
const std::string const ExprPtr & value
定义
expr.hpp:293
LMCAS::name
__attribute__((visibility("default"))) Result< EqvProfile > eqv_profile_from_name(const std const std::string & name
定义
equivalence_options.hpp:41
symbolic_ast.hpp
内部 AST 定义。
src
internal
matrix_decomposition_support.hpp
生成于
, 为 LMCAS使用
1.18.0