From 3bb90210a8c352a1d1b381ebf39b4a3b44f4821a Mon Sep 17 00:00:00 2001
From: Stephan Seitz <stephan.seitz@fau.de>
Date: Fri, 30 Oct 2020 12:47:16 +0100
Subject: [PATCH] Update

---
 src/pystencils_autodiff/backends/python_bindings.py       | 3 ++-
 src/pystencils_autodiff/lbm/adjoint_boundaryconditions.py | 6 ++++--
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/pystencils_autodiff/backends/python_bindings.py b/src/pystencils_autodiff/backends/python_bindings.py
index a459b5e..5e7d23f 100644
--- a/src/pystencils_autodiff/backends/python_bindings.py
+++ b/src/pystencils_autodiff/backends/python_bindings.py
@@ -120,7 +120,8 @@ REGISTER_KERNEL_BUILDER(Name("{{ python_name }}").Device({{ device }}), {{ pytho
 
         render_dict = {'python_name': stringcase.pascalcase(function_node.function_name),  # tf wants PascalCase!
                        'cpp_name': function_node.function_name,
-                       'parameters': [p.symbol.name for p in parameters],
+                       'parameters': [p.symbol.name for p in parameters
+                                      if hasattr(p.symbol, 'dtype') and not str(p.symbol) == 'meshFunctor'],
                        'input_fields': input_fields,
                        'inputs': self.inputs,
                        'output_fields': output_fields,
diff --git a/src/pystencils_autodiff/lbm/adjoint_boundaryconditions.py b/src/pystencils_autodiff/lbm/adjoint_boundaryconditions.py
index 0dfbf4a..229ce8a 100644
--- a/src/pystencils_autodiff/lbm/adjoint_boundaryconditions.py
+++ b/src/pystencils_autodiff/lbm/adjoint_boundaryconditions.py
@@ -13,7 +13,7 @@ class AdjointBoundaryCondition(Boundary):
         self._constant_fields = constant_fields
         self._time_constant_fields = time_constant_fields
 
-    def __call__(self, pdf_field: pystencils_autodiff.AdjointField, direction_symbol, lb_method, **kwargs):
+    def __call__(self, pdf_field: pystencils_autodiff.AdjointField, direction_symbol, *args, **kwargs):
 
         # apply heuristics
         if pdf_field.name.startswith('diff'):
@@ -24,13 +24,15 @@ class AdjointBoundaryCondition(Boundary):
             f'{pdf_field} should be a pystencils_autodiff.AdjointField to use AdjointBoundaryCondition'
 
         forward_field = pdf_field.corresponding_forward_field
-        forward_assignments = self._forward_condition(forward_field, direction_symbol, lb_method, **kwargs)
+        forward_assignments = self._forward_condition(forward_field, direction_symbol, *args, **kwargs)
 
         backward_assignments = pystencils_autodiff.create_backward_assignments(
             forward_assignments,
             diff_fields_prefix=pdf_field.name_prefix,
             time_constant_fields=self._time_constant_fields,
             constant_fields=self._constant_fields)
+        assert backward_assignments.all_assignments, ("Must have a at least one read field in forward boundary "
+                                                      "to have an meaningful adjoint boundary condition")
 
         return backward_assignments
 
-- 
GitLab