diff --git a/python/pystencils_walberla/jinja_filters.py b/python/pystencils_walberla/jinja_filters.py index 0033154484e603524950a96a9f343bba3b0c76ec..ee79ef903fae7add43ac4b791f0e5cdccf8cc718 100644 --- a/python/pystencils_walberla/jinja_filters.py +++ b/python/pystencils_walberla/jinja_filters.py @@ -170,8 +170,8 @@ def generate_block_data_to_field_extraction(ctx, kernel_info, parameters_to_igno return result -def generate_refs_for_kernel_parameters(kernel_info, prefix, parameters_to_ignore): - symbols = {p.field_name for p in kernel_info.parameters if p.is_field_pointer} +def generate_refs_for_kernel_parameters(kernel_info, prefix, parameters_to_ignore=(), ignore_fields=False): + symbols = {p.field_name for p in kernel_info.parameters if p.is_field_pointer and not ignore_fields} symbols.update(p.symbol.name for p in kernel_info.parameters if not p.is_field_parameter) symbols.difference_update(parameters_to_ignore) return "\n".join("auto & %s = %s%s_;" % (s, prefix, s) for s in symbols) diff --git a/python/pystencils_walberla/templates/Sweep.tmpl.cpp b/python/pystencils_walberla/templates/Sweep.tmpl.cpp index ae15b45953455966605ad783ecbf5d2434a6b552..b3b12c6b39f93c71fc8a3a9fd3b4430e6a1cbb16 100644 --- a/python/pystencils_walberla/templates/Sweep.tmpl.cpp +++ b/python/pystencils_walberla/templates/Sweep.tmpl.cpp @@ -58,7 +58,7 @@ namespace {{namespace}} { void {{class_name}}::operator()( IBlock * block{%if target is equalto 'gpu'%} , cudaStream_t stream{% endif %} ) { {{kernel|generate_block_data_to_field_extraction|indent(4)}} - {{kernel|generate_refs_for_kernel_parameters(prefix='this->', parameters_to_ignore=['velocity', 'src', 'src_tmp', 'pdfs', 'pdfs_tmp'])|indent(4) }} + {{kernel|generate_refs_for_kernel_parameters(prefix='this->', ignore_fields=True)|indent(4) }} {{kernel|generate_call(stream='stream')|indent(4)}} {{kernel|generate_swaps|indent(4)}} } @@ -78,7 +78,7 @@ void {{class_name}}::runOnCellInterval( const shared_ptr<StructuredBlockStorage> return; {{kernel|generate_block_data_to_field_extraction|indent(4)}} - {{kernel|generate_refs_for_kernel_parameters(prefix='this->', parameters_to_ignore=['velocity', 'src', 'src_tmp', 'pdfs', 'pdfs_tmp'])|indent(4) }} + {{kernel|generate_refs_for_kernel_parameters(prefix='this->', ignore_fields=True)|indent(4) }} {{kernel|generate_call(stream='stream', cell_interval='ci')|indent(4)}} {{kernel|generate_swaps|indent(4)}} }