diff --git a/graph/graphviz.py b/graph/graphviz.py
index 28be57f23f0ed9bb8b9c145098b00f1aa1ed00ee..5a17e9accf8abd1a43133643591b1ee85e2d40ba 100644
--- a/graph/graphviz.py
+++ b/graph/graphviz.py
@@ -8,8 +8,8 @@ from ast.visitor import Visitor
 from graphviz import Digraph
 
 class ASTGraph:
-    def __init__(self, ast_node, filename, ref="G", max_depth=0):
-        self.graph = Digraph(ref, filename, node_attr={'color': 'lightblue2', 'style': 'filled'})
+    def __init__(self, ast_node, filename, ref="AST", max_depth=0):
+        self.graph = Digraph(ref, filename=filename, node_attr={'color': 'lightblue2', 'style': 'filled'})
         self.graph.attr(size='6,6')
         self.visitor = Visitor(ast_node, max_depth=max_depth)
 
diff --git a/sim/particle_simulation.py b/sim/particle_simulation.py
index 766b7f2ba06725e573b4d56f554197343b9322db..52c9e0fabe8658b1ba6669b3a60695757f2ce5a4 100644
--- a/sim/particle_simulation.py
+++ b/sim/particle_simulation.py
@@ -8,6 +8,7 @@ from ast.properties import Properties
 from ast.transform import Transform
 from ast.variables import Variables
 from sim.arrays import ArraysDecl
+from graph.graphviz import ASTGraph
 from sim.cell_lists import CellLists, CellListsBuild, CellListsStencilBuild
 from sim.grid import Grid2D, Grid3D
 from sim.kernel_wrapper import KernelWrapper
@@ -200,5 +201,5 @@ class ParticleSimulation:
         #Transform.apply(program, Transform.reuse_array_access_expressions)
         #Transform.apply(program, Transform.move_loop_invariant_expressions)
 
+        ASTGraph(self.kernels.lower(), "kernels").generate_and_view()
         self.code_gen.generate_program(self, program)
-