codac 2.0.0
Loading...
Searching...
No Matches
codac2_sympy.h
Go to the documentation of this file.
1
9
10#pragma once
11
12#include <stdexcept>
14
15namespace codac2
16{
23 AnalyticFunction<ScalarType>
24 sympy_simplify(const AnalyticFunction<ScalarType>& f);
25
32 AnalyticFunction<VectorType>
33 sympy_simplify(const AnalyticFunction<VectorType>& f);
34
41 AnalyticFunction<MatrixType>
42 sympy_simplify(const AnalyticFunction<MatrixType>& f);
43
50 AnalyticFunction<ScalarType>
51 sympy_horner(const AnalyticFunction<ScalarType>& f);
52
59 AnalyticFunction<VectorType>
60 sympy_horner(const AnalyticFunction<VectorType>& f);
61
68 AnalyticFunction<MatrixType>
69 sympy_horner(const AnalyticFunction<MatrixType>& f);
70
81 AnalyticFunction<ScalarType>
82 sympy_partial_diff(const AnalyticFunction<ScalarType>& f, Index flat_input_index);
83
95 AnalyticFunction<ScalarType>
96 sympy_partial_diff(const AnalyticFunction<ScalarType>& f, const ScalarVar& x);
97
109 AnalyticFunction<ScalarType>
110 sympy_partial_diff(const AnalyticFunction<ScalarType>& f, const ScalarExpr& x);
111
118 AnalyticFunction<ScalarType>
119 sympy_diff(const AnalyticFunction<ScalarType>& f);
120
129 AnalyticFunction<ScalarType>
130 sympy_diff(const AnalyticFunction<ScalarType>& f, const ScalarVar& x);
131
143 AnalyticFunction<ScalarType>
144 sympy_diff(const AnalyticFunction<ScalarType>& f, const ScalarExpr& x);
145
153 AnalyticFunction<ScalarType>
154 sympy_diff(const AnalyticFunction<ScalarType>& f, Index order);
155
165 AnalyticFunction<ScalarType>
166 sympy_diff(const AnalyticFunction<ScalarType>& f, const ScalarVar& x, Index order);
167
180 AnalyticFunction<ScalarType>
181 sympy_diff(const AnalyticFunction<ScalarType>& f, const ScalarExpr& x, Index order);
182
189 AnalyticFunction<VectorType>
190 sympy_gradient(const AnalyticFunction<ScalarType>& f);
191
198 AnalyticFunction<MatrixType>
199 sympy_hessian(const AnalyticFunction<ScalarType>& f);
200
207 AnalyticFunction<MatrixType>
208 sympy_diff(const AnalyticFunction<VectorType>& f);
209
218 AnalyticFunction<ScalarType>
219 sympy_series(const AnalyticFunction<ScalarType>& f, double center, Index order);
220
233 AnalyticFunction<ScalarType>
234 sympy_series(const AnalyticFunction<ScalarType>& f, const ScalarVar& x, double center, Index order);
235
250 AnalyticFunction<ScalarType>
251 sympy_series(const AnalyticFunction<ScalarType>& f, const ScalarExpr& x, double center, Index order);
252
264 bool sympy_equal(const AnalyticFunction<ScalarType>& f, const AnalyticFunction<ScalarType>& g);
265
275 bool sympy_equal(const AnalyticFunction<VectorType>& f, const AnalyticFunction<VectorType>& g);
276
286 bool sympy_equal(const AnalyticFunction<MatrixType>& f, const AnalyticFunction<MatrixType>& g);
287}
Definition codac2_OctaSym.h:21
AnalyticFunction< ScalarType > sympy_partial_diff(const AnalyticFunction< ScalarType > &f, Index flat_input_index)
Returns the symbolic partial derivative of a scalar function.
AnalyticFunction< ScalarType > sympy_diff(const AnalyticFunction< ScalarType > &f)
Returns the symbolic derivative of a scalar univariate function.
AnalyticFunction< VectorType > sympy_gradient(const AnalyticFunction< ScalarType > &f)
Returns the symbolic gradient of a scalar function.
AnalyticFunction< ScalarType > sympy_simplify(const AnalyticFunction< ScalarType > &f)
Symbolically simplifies a scalar analytic function.
AnalyticFunction< ScalarType > sympy_series(const AnalyticFunction< ScalarType > &f, double center, Index order)
Returns a truncated Taylor series of a scalar univariate function.
AnalyticFunction< ScalarType > sympy_horner(const AnalyticFunction< ScalarType > &f)
Rewrites a scalar analytic function in Horner form when possible.
AnalyticFunction< MatrixType > sympy_hessian(const AnalyticFunction< ScalarType > &f)
Returns the symbolic Hessian matrix of a scalar function.
bool sympy_equal(const AnalyticFunction< ScalarType > &f, const AnalyticFunction< ScalarType > &g)
Tests symbolic equality of two scalar analytic functions through SymPy.