LMCAS
Lamina Computer Algebra System
载入中...
搜索中...
未找到
series_support.hpp
浏览该文件的文档.
1#pragma once
2
3#include "result.hpp"
4#include "lmcas_export.hpp"
5#include <memory>
6#include <optional>
7#include <string>
8#include <vector>
9
10namespace LMCAS {
11
12class SymbolicNode;
13class NumberNode;
14class SymbolicExpr;
15
16
18
20
21double series_number_value(const NumberNode& number);
22bool series_is_number(const std::shared_ptr<SymbolicExpr>& expression);
23double series_get_double(const std::shared_ptr<SymbolicExpr>& expression);
24bool series_is_infinity(const std::shared_ptr<SymbolicExpr>& expression);
25
27 const std::vector<std::shared_ptr<SymbolicExpr>>& coefficients,
28 const std::string& operation,
29 const std::string& name);
30
33 const std::string& operation);
34
35std::optional<int> supported_laurent_integer_power(
36 const std::shared_ptr<const SymbolicNode>& node,
37 const std::string& variable);
38
39}
40}
bool series_is_infinity(const std::shared_ptr< SymbolicExpr > &expression)
double series_number_value(const NumberNode &number)
Result< void > validate_power_series_coefficients(const std::vector< std::shared_ptr< SymbolicExpr > > &coefficients, const std::string &operation, const std::string &name)
bool series_is_number(const std::shared_ptr< SymbolicExpr > &expression)
double series_get_double(const std::shared_ptr< SymbolicExpr > &expression)
std::optional< int > supported_laurent_integer_power(const std::shared_ptr< const SymbolicNode > &node, const std::string &variable)
Result< void > validate_series_variable(const std::string &variable, ComputationContext &context, const std::string &operation)
const SymbolicNodePtr & node(const ::LMCAS::SymbolicExpr &expression) noexcept
const std::string & variable
ComputationContext const std::string & operation
std::size_t std::size_t ComputationContext & context
__attribute__((visibility("default"))) Result< EqvProfile > eqv_profile_from_name(const std const std::string & name