Skip to content

Commit c6de10a

Browse files
author
Kasper Peeters
committed
Add factor algorithm (from sympy).
1 parent 2a5f2aa commit c6de10a

File tree

2 files changed

+338
-331
lines changed

2 files changed

+338
-331
lines changed

core/packages/cdb/sympy/calculus.cnb

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -354,6 +354,49 @@
354354
{
355355
"cell_id": 16349293761953373413,
356356
"cell_origin": "client",
357+
"cell_type": "latex",
358+
"cells": [
359+
{
360+
"cell_id": 10700541688820127695,
361+
"cell_origin": "client",
362+
"cell_type": "latex_view",
363+
"source": "\\algorithm{factor}{Factorise an expression}\n\nThis function mimics the SymPy \\verb|factor| function, except that the argument has to be a Cadabra expression."
364+
}
365+
],
366+
"hidden": true,
367+
"source": "\\algorithm{factor}{Factorise an expression}\n\nThis function mimics the SymPy \\verb|factor| function, except that the argument has to be a Cadabra expression."
368+
},
369+
{
370+
"cell_id": 17538488045608728761,
371+
"cell_origin": "client",
372+
"cell_type": "input",
373+
"source": "def factor(ex):\n ret = $@(ex)$\n sbex = SympyBridge(ret)\n tmp = str(sympy.factor( sbex.to_sympy() ))\n sbex.from_sympy( tmp )\n return ret"
374+
},
375+
{
376+
"cell_id": 7561547917241467470,
377+
"cell_origin": "client",
378+
"cell_type": "input",
379+
"cells": [
380+
{
381+
"cell_id": 12368485212485632098,
382+
"cell_origin": "server",
383+
"cell_type": "latex_view",
384+
"cells": [
385+
{
386+
"cell_id": 1953276237970412465,
387+
"cell_origin": "server",
388+
"cell_type": "input_form",
389+
"source": "x (x + 1)"
390+
}
391+
],
392+
"source": "\\begin{dmath*}{}x \\left(x+1\\right)\\end{dmath*}"
393+
}
394+
],
395+
"source": "ex = factor($ x**2 + x $);"
396+
},
397+
{
398+
"cell_id": 16786632068897082656,
399+
"cell_origin": "client",
357400
"cell_type": "input",
358401
"source": ""
359402
}

0 commit comments

Comments
 (0)