Expand description
Python bindings for oCAS.
The top-level Python module is named ocas (see pyproject.toml).
§Quick start
import ocas
e = ocas.Expression("x^2 + 2*x + 1")
print(e.diff("x")) # derivative
print(e.simplify())
print(ocas.solve_diophantine(3, 5, 1))Re-exports§
pub use algebraic::PyAlgebraicElement;pub use algebraic::PyAlgebraicExtension;pub use algebraic::PyAlgebraicFactor;pub use algebraic::PyAlgebraicPolynomial;pub use domain::PyFiniteField;pub use domain::PyIntegerDomain;pub use domain::PyRationalDomain;pub use double_float::PyDoubleF64;pub use dual::PyDualShape;pub use dual::PyHyperDual;pub use eval::PyExpressionEvaluator;pub use expression::Expression;pub use groebner::PyGroebnerBasis;pub use groebner::PyHilbertSeries;pub use groebner::PyMultivariatePolynomial;pub use groebner::PyPolynomialSystemSolution;pub use groebner::PyPrimaryComponent;pub use groebner::PyRealSolution;pub use groebner::py_eliminate;pub use groebner::py_groebner_basis;pub use groebner::py_hilbert_series;pub use groebner::py_ideal_contains;pub use groebner::py_ideal_radical;pub use groebner::py_is_zero_dimensional;pub use groebner::py_primary_decomposition;pub use groebner::py_solve_polynomial_system;pub use matrix::PyMatrix;pub use ntheory::py_crt;pub use ntheory::py_discrete_log;pub use ntheory::py_divisor_count;pub use ntheory::py_divisor_sigma;pub use ntheory::py_factorint;pub use ntheory::py_isprime;pub use ntheory::py_isprime_u64;pub use ntheory::py_jacobi_symbol;pub use ntheory::py_liouville_lambda;pub use ntheory::py_mobius;pub use ntheory::py_nextprime;pub use ntheory::py_totient;pub use numeric::PyIntegrateResult;pub use numeric::PyVegas;pub use numeric::integrate_1d;pub use ode::py_classify_ode;pub use ode::py_dsolve;pub use ode::py_dsolve_ivp;pub use polynomial::PyPolynomial;pub use polynomial::PyPolynomialFactor;pub use solve::PyDiophantineSolution;pub use solve::py_solve_diophantine;pub use solve::py_solve_linear_integer;pub use solve::py_solve_linear_rational;pub use tensor::PyTensor;pub use tensor::canonicalize_tensors;pub use tensor::contract_tensors;pub use tensor::refresh_dummies;pub use tensor::tensor_symmetrise_sign;pub use tensor::young_project;
Modules§
- algebraic
- Python bindings for algebraic number fields and polynomials over them.
- domain
- Python
Domainclasses — coefficient-domain selectors. - double_
float - Python bindings for
DoubleF64. - dual
- Python bindings for hyper-dual numbers (forward automatic differentiation).
- eval
- Python evaluation module — numeric evaluation of expressions.
- expression
- Python
Expression— a self-contained symbolic expression. - groebner
- Python bindings for Gröbner basis computation and ideal operations.
- matrix
- Python
Matrixclass — dense matrices over ℤ, ℚ, or GF(p). - ntheory
- Python
ntheorymodule — number-theory functions (SymPyntheorystyle). - numeric
- Python bindings for numerical integration (Vegas adaptive Monte Carlo).
- ode
- Python
odemodule — ordinary differential equation solvers. - polynomial
- Python
Polynomialclass — dense univariate polynomials over ℤ, ℚ, or GF(p). - solve
- Python
solvemodule — linear and Diophantine equation solvers. - tensor
- Python bindings for the basic tensor algebra module.