From 0bfd2fae85d6f784b046928687e7a063889d9b18 Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner Date: Fri, 25 May 2007 15:21:22 -0400 Subject: [PATCH] Fix polynomial evaluation and add evaluate_kw. --- src/mapper/evaluator.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/mapper/evaluator.py b/src/mapper/evaluator.py index b353d4b..dac5e05 100644 --- a/src/mapper/evaluator.py +++ b/src/mapper/evaluator.py @@ -53,8 +53,9 @@ class EvaluationMapper(RecursiveMapper): return self.rec(expr.base) ** self.rec(expr.exponent) def map_polynomial(self, expr): + import pymbolic return pymbolic.sum( - coeff*expr.base**exp + self.rec(coeff)*self.rec(expr.base)**exp for exp,coeff in expr.data) def map_list(self, expr): @@ -76,6 +77,9 @@ class FloatEvaluationMapper(EvaluationMapper): def evaluate(expression, context={}): return EvaluationMapper(context)(expression) +def evaluate_kw(expression, **context): + return EvaluationMapper(context)(expression) + def evaluate_to_float(expression, context={}): return FloatEvaluationMapper(context)(expression) -- GitLab