glucat  0.12.0
PyClical.pxd
Go to the documentation of this file.
1 # -*- coding: utf-8 -*-
2 # cython: language_level=3
3 #
4 # PyClical: Python interface to GluCat:
5 # Generic library of universal Clifford algebra templates
6 #
7 # PyClical.pxd: Basic Cython definitions for PyClical
8 # corresponding to C++ definitions from PyClical.h.
9 #
10 # copyright : (C) 2008-2021 by Paul C. Leopardi
11 #
12 # This library is free software: you can redistribute it and/or modify
13 # it under the terms of the GNU Lesser General Public License as published
14 # by the Free Software Foundation, either version 3 of the License, or
15 # (at your option) any later version.
16 #
17 # This library is distributed in the hope that it will be useful,
18 # but WITHOUT ANY WARRANTY; without even the implied warranty of
19 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 # GNU Lesser General Public License for more details.
21 #
22 # You should have received a copy of the GNU Lesser General Public License
23 # along with this library. If not, see <http://www.gnu.org/licenses/>.
24 
25 cimport glucat
26 from glucat cimport IndexSet, String, Clifford, scalar_t, vector
27 from libcpp.string cimport string
28 
29 cdef extern from "PyClical.h":
30  string glucat_package_version
31 
32  IndexSet operator&(IndexSet Lhs, IndexSet Rhs)
33  IndexSet operator|(IndexSet Lhs, IndexSet Rhs)
34  IndexSet operator^(IndexSet Lhs, IndexSet Rhs)
35 
36  string index_set_to_repr(IndexSet& Ist)
37  string index_set_to_str(IndexSet& Ist)
38 
39  Clifford operator+(Clifford Lhs, Clifford Rhs)
40  Clifford operator-(Clifford Lhs, Clifford Rhs)
41  Clifford operator*(Clifford Lhs, Clifford Rhs)
42  Clifford operator&(Clifford Lhs, Clifford Rhs)
43  Clifford operator%(Clifford Lhs, Clifford Rhs)
44  Clifford operator^(Clifford Lhs, Clifford Rhs)
45  Clifford operator/(Clifford Lhs, Clifford Rhs)
46  Clifford operator|(Clifford Lhs, Clifford Rhs)
47 
48  string clifford_to_repr(Clifford& Clf)
49  string clifford_to_str(Clifford& Clf)
50 
51  const scalar_t epsilon
String clifford_to_str(const Multivector_T &mv)
The "informal" string representation of Multivector_T mv.
Definition: PyClical.h:86
String index_set_to_repr(const Index_Set_T &ist)
The “official” string representation of Index_Set_T ist.
Definition: PyClical.h:57
String clifford_to_repr(const Multivector_T &mv)
The “official” string representation of Multivector_T mv.
Definition: PyClical.h:75
String index_set_to_str(const Index_Set_T &ist)
The "informal" string representation of Index_Set_T ist.
Definition: PyClical.h:66