From 05119269509205a383d4dd3c3e8a8fa3672b4ba7 Mon Sep 17 00:00:00 2001
From: Stephan Seitz <stephan.seitz@fau.de>
Date: Wed, 3 Jul 2019 16:35:10 +0200
Subject: [PATCH] Make subexpressions optional for constructing an
 AssignmentCollection

When introducing new people to pystencils it's often simpler not to
differentiate between `main_assignments` and `subexpressions` in the
beginning.
Also for simple kernels subexpressions are often not needed, since
intermediate symbols can also be set in main_assignments.

Subexpression should be kept for expert users.
---
 pystencils/simp/assignment_collection.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pystencils/simp/assignment_collection.py b/pystencils/simp/assignment_collection.py
index 5d57add..8f0b481 100644
--- a/pystencils/simp/assignment_collection.py
+++ b/pystencils/simp/assignment_collection.py
@@ -28,7 +28,7 @@ class AssignmentCollection:
     # ------------------------------- Creation & Inplace Manipulation --------------------------------------------------
 
     def __init__(self, main_assignments: Union[List[Assignment], Dict[sp.Expr, sp.Expr]],
-                 subexpressions: Union[List[Assignment], Dict[sp.Expr, sp.Expr]],
+                 subexpressions: Union[List[Assignment], Dict[sp.Expr, sp.Expr]] = {},
                  simplification_hints: Optional[Dict[str, Any]] = None,
                  subexpression_symbol_generator: Iterator[sp.Symbol] = None) -> None:
         if isinstance(main_assignments, Dict):
-- 
GitLab