collect_dependence#
- m4opt.utils.sympy.collect_dependence(expr, symbols)[source] [edit on github]#
Collect terms in an expression that depend on like combinations of symbols.
Examples
>>> from m4opt.utils.sympy import collect_dependence >>> from sympy.abc import a, b, c >>> from sympy import sin, Symbol >>> symbols = [a, b, c] >>> expr = a + b + c >>> collect_dependence(expr, symbols) {(c,): c, (b,): b, (a,): a} >>> expr = 42 + a * (sin(a) + sin(b)) + b * (b + c) + c >>> collect_dependence(expr, symbols) {(): 42, (c,): c, (b,): b**2, (b, c): b*c, (a,): a*sin(a), (a, b): a*sin(b)}