LMCAS
Lamina Computer Algebra System
载入中...
搜索中...
未找到
LMCAS::ode_root_detail::Complex结构体 参考

#include </home/runner/work/docs/docs/LMCAS/src/internal/ode_polynomial_utils.hpp>

LMCAS::ode_root_detail::Complex 的协作图:

Public 成员函数

 Complex (double real=0.0, double imaginary=0.0)
double magnitude () const
Complex operator* (const Complex &other) const
Complex operator+ (const Complex &other) const
Complex operator- (const Complex &other) const
Complex operator/ (const Complex &other) const

Public 属性

double im
double re

详细描述

在文件 ode_polynomial_utils.hpp 第 19 行定义.

构造及析构函数说明

◆ Complex()

LMCAS::ode_root_detail::Complex::Complex ( double real = 0.0,
double imaginary = 0.0 )
inline

在文件 ode_polynomial_utils.hpp 第 23 行定义.

24 : re(real), im(imaginary) {}
ExprResult real(const ExprPtr &expression, ComputationContext &context)

引用了 im, re , 以及 LMCAS::real().

被这些函数引用 operator*(), operator+(), operator-() , 以及 operator/().

函数调用图:
这是这个函数的调用关系图:

成员函数说明

◆ magnitude()

double LMCAS::ode_root_detail::Complex::magnitude ( ) const
inline

在文件 ode_polynomial_utils.hpp 第 44 行定义.

44 {
45 return std::hypot(re, im);
46 }

引用了 im , 以及 re.

被这些函数引用 LMCAS::ode_root_detail::anonymous_namespace{ode_characteristic_roots.cpp}::iterate_characteristic_roots() , 以及 LMCAS::ode_root_detail::polynomial_root_backward_error().

这是这个函数的调用关系图:

◆ operator*()

Complex LMCAS::ode_root_detail::Complex::operator* ( const Complex & other) const
inline

在文件 ode_polynomial_utils.hpp 第 25 行定义.

25 {
26 return {re * other.re - im * other.im,
27 re * other.im + im * other.re};
28 }

引用了 Complex(), im , 以及 re.

函数调用图:

◆ operator+()

Complex LMCAS::ode_root_detail::Complex::operator+ ( const Complex & other) const
inline

在文件 ode_polynomial_utils.hpp 第 29 行定义.

29 {
30 return {re + other.re, im + other.im};
31 }

引用了 Complex(), im , 以及 re.

函数调用图:

◆ operator-()

Complex LMCAS::ode_root_detail::Complex::operator- ( const Complex & other) const
inline

在文件 ode_polynomial_utils.hpp 第 32 行定义.

32 {
33 return {re - other.re, im - other.im};
34 }

引用了 Complex(), im , 以及 re.

函数调用图:

◆ operator/()

Complex LMCAS::ode_root_detail::Complex::operator/ ( const Complex & other) const
inline

在文件 ode_polynomial_utils.hpp 第 35 行定义.

35 {
36 const double denominator =
37 other.re * other.re + other.im * other.im;
38 if (denominator < 1e-300) {
39 return {INFINITY, INFINITY};
40 }
41 return {(re * other.re + im * other.im) / denominator,
42 (im * other.re - re * other.im) / denominator};
43 }
ExprResult e()
const ExprPtr & denominator

引用了 Complex(), LMCAS::denominator, LMCAS::e(), im , 以及 re.

函数调用图:

类成员变量说明

◆ im

◆ re


该结构体的文档由以下文件生成: