From be4a4290e7fba849dff15d4453182daf22dcf493 Mon Sep 17 00:00:00 2001
From: Martin Bauer <martin.bauer@fau.de>
Date: Thu, 11 Jul 2019 11:15:39 +0200
Subject: [PATCH] Import sorting using isort

---
 .isort.cfg                                    |  4 +++
 lbmpy/boundaries/__init__.py                  |  3 +-
 lbmpy/boundaries/boundaryconditions.py        |  9 ++---
 lbmpy/boundaries/boundaryhandling.py          |  3 +-
 lbmpy/chapman_enskog/__init__.py              |  4 +--
 lbmpy/chapman_enskog/chapman_enskog.py        | 17 ++++++----
 .../chapman_enskog_higher_order.py            |  9 ++---
 .../chapman_enskog_steady_state.py            | 15 +++++----
 lbmpy/chapman_enskog/derivative.py            |  1 +
 lbmpy/creationfunctions.py                    | 33 ++++++++++---------
 lbmpy/cumulants.py                            |  3 +-
 lbmpy/fieldaccess.py                          | 14 ++++----
 lbmpy/forcemodels.py                          |  1 +
 lbmpy/geometry.py                             |  5 +--
 lbmpy/innerloopsplit.py                       |  6 ++--
 lbmpy/lbstep.py                               | 13 +++++---
 lbmpy/macroscopic_value_kernels.py            |  3 +-
 lbmpy/max_domain_size_info.py                 |  3 +-
 lbmpy/methods/__init__.py                     | 12 ++++---
 lbmpy/methods/abstractlbmethod.py             |  5 +--
 lbmpy/methods/conservedquantitycomputation.py |  6 ++--
 lbmpy/methods/creationfunctions.py            | 30 +++++++++--------
 lbmpy/methods/cumulantbased.py                | 13 +++++---
 lbmpy/methods/entropic.py                     |  3 +-
 lbmpy/methods/entropic_eq_srt.py              |  3 +-
 lbmpy/methods/momentbased.py                  |  8 +++--
 lbmpy/methods/momentbasedsimplifications.py   |  3 +-
 lbmpy/moments.py                              |  6 ++--
 lbmpy/parameterization.py                     |  7 ++--
 lbmpy/phasefield/analytical.py                |  9 +++--
 lbmpy/phasefield/cahn_hilliard_lbm.py         |  3 +-
 lbmpy/phasefield/eos.py                       |  3 +-
 lbmpy/phasefield/experiments2D.py             |  3 +-
 lbmpy/phasefield/high_density_ratio_model.py  |  3 +-
 lbmpy/phasefield/kerneleqs.py                 |  9 ++---
 lbmpy/phasefield/n_phase_boyer.py             |  5 +--
 lbmpy/phasefield/nphase_nestler.py            |  9 ++---
 lbmpy/phasefield/phasefieldstep.py            | 13 ++++----
 lbmpy/phasefield/phasefieldstep_direct.py     |  3 +-
 lbmpy/phasefield/post_processing.py           |  4 +--
 lbmpy/phasefield/scenarios.py                 | 11 ++++---
 lbmpy/quadratic_equilibrium_construction.py   |  7 ++--
 lbmpy/relaxationrates.py                      |  3 +-
 lbmpy/scenarios.py                            |  5 +--
 lbmpy/session.py                              | 19 ++++++-----
 lbmpy/simplificationfactory.py                |  6 ++--
 lbmpy/sparse/__init__.py                      |  5 +--
 lbmpy/sparse/mapping.py                       | 11 ++++---
 lbmpy/sparse/update_rule_sparse.py            |  5 ++-
 lbmpy/turbulence_models.py                    |  2 +-
 lbmpy/updatekernels.py                        |  7 ++--
 lbmpy_tests/benchmark/evaluation.py           |  2 +-
 lbmpy_tests/benchmark/test_benchmark.py       |  8 +++--
 .../scenario_kida_vortex_flow.py              |  6 ++--
 .../full_scenarios/rod/scenario_rod.py        |  2 ++
 .../schaefer_turek/scenario_schaefer_turek.py |  4 ++-
 .../shear_wave/scenario_shear_wave.py         |  6 ++--
 .../square_channel/scenario_square_channel.py |  5 ++-
 lbmpy_tests/lattice_tensors.py                |  1 +
 .../test_force_computation_equivalence.py     |  8 +++--
 lbmpy_tests/phasefield/test_nestler_model.py  |  7 ++--
 lbmpy_tests/phasefield/test_nphase_1D.py      |  9 +++--
 lbmpy_tests/phasefield/test_nphase_2D.py      | 12 +++----
 lbmpy_tests/test_boundary_handling.py         |  9 ++---
 .../test_boundary_indexlist_creation.py       |  1 +
 lbmpy_tests/test_builtin_periodicity.py       |  1 +
 lbmpy_tests/test_chapman_enskog.py            | 22 ++++++++-----
 lbmpy_tests/test_code_hashequivalence.py      |  5 +--
 ...onserved_quantity_relaxation_invariance.py |  8 +++--
 lbmpy_tests/test_cpu_gpu_equivalence.py       |  6 ++--
 lbmpy_tests/test_cumulants.py                 |  6 ++--
 lbmpy_tests/test_entropic.py                  |  1 +
 lbmpy_tests/test_float_kernel.py              |  4 +--
 lbmpy_tests/test_force_on_boundary.py         |  5 +--
 lbmpy_tests/test_geometry_setup_serial.py     |  7 ++--
 lbmpy_tests/test_html_output.py               |  3 +-
 lbmpy_tests/test_lbstep.py                    |  5 +--
 lbmpy_tests/test_macroscopic_value_kernels.py |  5 +--
 lbmpy_tests/test_maxwellian_equilibrium.py    |  7 ++--
 .../test_momentbased_methods_equilibrium.py   |  5 +--
 lbmpy_tests/test_moments.py                   |  2 +-
 lbmpy_tests/test_phase_field_scenarios.py     | 11 ++++---
 lbmpy_tests/test_phasefield.py                |  9 ++---
 lbmpy_tests/test_phasefield_scenarios.py      |  2 +-
 lbmpy_tests/test_plot.py                      |  6 ++--
 lbmpy_tests/test_postprocessing.py            |  1 +
 lbmpy_tests/test_relaxation_rate.py           |  1 +
 lbmpy_tests/test_scaling_widget.py            |  2 +-
 lbmpy_tests/test_serial_scenarios.py          |  4 ++-
 .../test_simple_equilibrium_conservation.py   |  1 +
 lbmpy_tests/test_split_optimization.py        |  5 +--
 lbmpy_tests/test_srt_trt_simplifications.py   |  2 +-
 lbmpy_tests/test_stencils.py                  |  6 ++--
 lbmpy_tests/test_vectorization.py             |  3 +-
 lbmpy_tests/walberla_scenario_setup.py        |  2 +-
 95 files changed, 364 insertions(+), 250 deletions(-)
 create mode 100644 .isort.cfg

diff --git a/.isort.cfg b/.isort.cfg
new file mode 100644
index 00000000..cbdece31
--- /dev/null
+++ b/.isort.cfg
@@ -0,0 +1,4 @@
+[settings]
+line_length=100
+balanced_wrapping=True
+multi_line_output=4
diff --git a/lbmpy/boundaries/__init__.py b/lbmpy/boundaries/__init__.py
index 1a3bc2a2..b013519e 100644
--- a/lbmpy/boundaries/__init__.py
+++ b/lbmpy/boundaries/__init__.py
@@ -1,4 +1,5 @@
-from lbmpy.boundaries.boundaryconditions import NoSlip, UBB, FixedDensity, NeumannByCopy, StreamInConstant
+from lbmpy.boundaries.boundaryconditions import (
+    UBB, FixedDensity, NeumannByCopy, NoSlip, StreamInConstant)
 from lbmpy.boundaries.boundaryhandling import LatticeBoltzmannBoundaryHandling
 
 __all__ = ['NoSlip', 'UBB', 'FixedDensity', 'NeumannByCopy', 'LatticeBoltzmannBoundaryHandling', 'StreamInConstant']
diff --git a/lbmpy/boundaries/boundaryconditions.py b/lbmpy/boundaries/boundaryconditions.py
index 3ea7f127..ac455a5f 100644
--- a/lbmpy/boundaries/boundaryconditions.py
+++ b/lbmpy/boundaries/boundaryconditions.py
@@ -1,10 +1,11 @@
 import sympy as sp
-from pystencils import Field, Assignment
+
+from lbmpy.boundaries.boundaryhandling import BoundaryOffsetInfo, LbmWeightInfo
+from lbmpy.simplificationfactory import create_simplification_strategy
+from pystencils import Assignment, Field
 from pystencils.astnodes import SympyAssignment
-from pystencils.sympyextensions import get_symmetric_part
 from pystencils.data_types import create_type
-from lbmpy.simplificationfactory import create_simplification_strategy
-from lbmpy.boundaries.boundaryhandling import BoundaryOffsetInfo, LbmWeightInfo
+from pystencils.sympyextensions import get_symmetric_part
 
 
 class Boundary:
diff --git a/lbmpy/boundaries/boundaryhandling.py b/lbmpy/boundaries/boundaryhandling.py
index 172f8fac..575a046d 100644
--- a/lbmpy/boundaries/boundaryhandling.py
+++ b/lbmpy/boundaries/boundaryhandling.py
@@ -1,6 +1,7 @@
 import numpy as np
 import sympy as sp
-from pystencils import TypedSymbol, create_indexed_kernel, Assignment
+
+from pystencils import Assignment, TypedSymbol, create_indexed_kernel
 from pystencils.backends.cbackend import CustomCodeNode
 from pystencils.boundaries import BoundaryHandling
 from pystencils.boundaries.boundaryhandling import BoundaryOffsetInfo
diff --git a/lbmpy/chapman_enskog/__init__.py b/lbmpy/chapman_enskog/__init__.py
index bc5abb7a..a110d2f2 100644
--- a/lbmpy/chapman_enskog/__init__.py
+++ b/lbmpy/chapman_enskog/__init__.py
@@ -1,5 +1,5 @@
-from lbmpy.chapman_enskog.chapman_enskog import ChapmanEnskogAnalysis, remove_higher_order_u, \
-    take_moments, chapman_enskog_ansatz, CeMoment
+from lbmpy.chapman_enskog.chapman_enskog import (
+    CeMoment, ChapmanEnskogAnalysis, chapman_enskog_ansatz, remove_higher_order_u, take_moments)
 from lbmpy.chapman_enskog.chapman_enskog_steady_state import SteadyStateChapmanEnskogAnalysis
 
 __all__ = ['ChapmanEnskogAnalysis', 'remove_higher_order_u', 'take_moments', 'chapman_enskog_ansatz', 'CeMoment',
diff --git a/lbmpy/chapman_enskog/chapman_enskog.py b/lbmpy/chapman_enskog/chapman_enskog.py
index 9ca4509f..020f4a7a 100644
--- a/lbmpy/chapman_enskog/chapman_enskog.py
+++ b/lbmpy/chapman_enskog/chapman_enskog.py
@@ -1,13 +1,18 @@
-import sympy as sp
 from collections import namedtuple
+
+import sympy as sp
 from sympy.core.cache import cacheit
+
+from lbmpy.chapman_enskog.derivative import (
+    chapman_enskog_derivative_expansion, chapman_enskog_derivative_recombination)
+from lbmpy.moments import (
+    discrete_moment, get_moment_indices, moment_matrix, non_aliased_moment,
+    polynomial_to_exponent_representation)
 from pystencils.cache import disk_cache
-from pystencils.fd import expand_diff_full, Diff, DiffOperator, expand_diff_linear, \
-    expand_diff_products, normalize_diff_order
+from pystencils.fd import (
+    Diff, DiffOperator, expand_diff_full, expand_diff_linear, expand_diff_products,
+    normalize_diff_order)
 from pystencils.sympyextensions import normalize_product, symmetric_product
-from lbmpy.moments import discrete_moment, moment_matrix, polynomial_to_exponent_representation, get_moment_indices, \
-    non_aliased_moment
-from lbmpy.chapman_enskog.derivative import chapman_enskog_derivative_recombination, chapman_enskog_derivative_expansion
 
 
 class ChapmanEnskogAnalysis:
diff --git a/lbmpy/chapman_enskog/chapman_enskog_higher_order.py b/lbmpy/chapman_enskog/chapman_enskog_higher_order.py
index ed722b09..e44b3732 100644
--- a/lbmpy/chapman_enskog/chapman_enskog_higher_order.py
+++ b/lbmpy/chapman_enskog/chapman_enskog_higher_order.py
@@ -1,9 +1,10 @@
+from collections import OrderedDict, namedtuple
+
 import sympy as sp
+
+from lbmpy.chapman_enskog.chapman_enskog import CeMoment, Diff, expanded_symbol, take_moments
+from lbmpy.moments import moments_of_order, moments_up_to_order
 from pystencils.fd import expand_diff_full
-from lbmpy.chapman_enskog.chapman_enskog import CeMoment, Diff, take_moments
-from lbmpy.chapman_enskog.chapman_enskog import expanded_symbol
-from lbmpy.moments import moments_up_to_order, moments_of_order
-from collections import OrderedDict, namedtuple
 
 
 def poly_moments(order, dim):
diff --git a/lbmpy/chapman_enskog/chapman_enskog_steady_state.py b/lbmpy/chapman_enskog/chapman_enskog_steady_state.py
index c61a4323..fcbc8aeb 100644
--- a/lbmpy/chapman_enskog/chapman_enskog_steady_state.py
+++ b/lbmpy/chapman_enskog/chapman_enskog_steady_state.py
@@ -1,10 +1,13 @@
-import sympy as sp
 import functools
-from pystencils.fd import Diff, DiffOperator, expand_diff_linear, normalize_diff_order, \
-    collect_diffs
-from pystencils.sympyextensions import normalize_product, multidimensional_sum, kronecker_delta
-from lbmpy.chapman_enskog.chapman_enskog import LbMethodEqMoments, CeMoment, take_moments, insert_moments
-from lbmpy.chapman_enskog.chapman_enskog import expanded_symbol, chapman_enskog_ansatz, remove_higher_order_u
+
+import sympy as sp
+
+from lbmpy.chapman_enskog.chapman_enskog import (
+    CeMoment, LbMethodEqMoments, chapman_enskog_ansatz, expanded_symbol, insert_moments,
+    remove_higher_order_u, take_moments)
+from pystencils.fd import (
+    Diff, DiffOperator, collect_diffs, expand_diff_linear, normalize_diff_order)
+from pystencils.sympyextensions import kronecker_delta, multidimensional_sum, normalize_product
 
 
 class SteadyStateChapmanEnskogAnalysis:
diff --git a/lbmpy/chapman_enskog/derivative.py b/lbmpy/chapman_enskog/derivative.py
index 192bbd06..bb1e0dc5 100644
--- a/lbmpy/chapman_enskog/derivative.py
+++ b/lbmpy/chapman_enskog/derivative.py
@@ -1,4 +1,5 @@
 import sympy as sp
+
 from pystencils.fd import Diff
 
 
diff --git a/lbmpy/creationfunctions.py b/lbmpy/creationfunctions.py
index e7ef4e9c..a49ec04f 100644
--- a/lbmpy/creationfunctions.py
+++ b/lbmpy/creationfunctions.py
@@ -163,31 +163,32 @@ For example, to modify the AST one can run::
     func = create_lb_function(ast=ast, ...)
 
 """
-import sympy as sp
 from copy import copy
 
+import sympy as sp
+
+import lbmpy.forcemodels as forcemodels
+from lbmpy.fieldaccess import (
+    AAEvenTimeStepAccessor, AAOddTimeStepAccessor, CollideOnlyInplaceAccessor,
+    EsoTwistEvenTimeStepAccessor, EsoTwistOddTimeStepAccessor, PdfFieldAccessor,
+    PeriodicTwoFieldsAccessor, StreamPullTwoFieldsAccessor, StreamPushTwoFieldsAccessor)
+from lbmpy.methods import (
+    create_mrt3, create_mrt_orthogonal, create_mrt_raw, create_srt, create_trt, create_trt_kbc)
 from lbmpy.methods.creationfunctions import create_generic_mrt
 from lbmpy.methods.cumulantbased import CumulantBasedLbMethod
-from pystencils.cache import disk_cache_no_fallback
-from pystencils.data_types import collate_types
-from pystencils import AssignmentCollection
-from pystencils.field import get_layout_of_array, Field
-from pystencils import create_kernel, Assignment
-from lbmpy.turbulence_models import add_smagorinsky_model
-from lbmpy.methods import create_srt, create_trt, create_mrt_orthogonal, create_trt_kbc, \
-    create_mrt_raw, create_mrt3
-from lbmpy.methods.entropic import add_iterative_entropy_condition, add_entropy_condition
+from lbmpy.methods.entropic import add_entropy_condition, add_iterative_entropy_condition
 from lbmpy.methods.entropic_eq_srt import create_srt_entropic
 from lbmpy.relaxationrates import relaxation_rate_from_magic_number
+from lbmpy.simplificationfactory import create_simplification_strategy
 from lbmpy.stencils import get_stencil
+from lbmpy.turbulence_models import add_smagorinsky_model
+from lbmpy.updatekernels import create_lbm_kernel, create_stream_pull_with_output_kernel
+from pystencils import Assignment, AssignmentCollection, create_kernel
+from pystencils.cache import disk_cache_no_fallback
+from pystencils.data_types import collate_types
+from pystencils.field import Field, get_layout_of_array
 from pystencils.simp import add_subexpressions_for_field_reads
 from pystencils.stencil import have_same_entries
-import lbmpy.forcemodels as forcemodels
-from lbmpy.simplificationfactory import create_simplification_strategy
-from lbmpy.fieldaccess import StreamPullTwoFieldsAccessor, PeriodicTwoFieldsAccessor, CollideOnlyInplaceAccessor, \
-    EsoTwistEvenTimeStepAccessor, EsoTwistOddTimeStepAccessor, AAEvenTimeStepAccessor, AAOddTimeStepAccessor, \
-    StreamPushTwoFieldsAccessor, PdfFieldAccessor
-from lbmpy.updatekernels import create_lbm_kernel, create_stream_pull_with_output_kernel
 
 
 def create_lb_function(ast=None, optimization={}, **kwargs):
diff --git a/lbmpy/cumulants.py b/lbmpy/cumulants.py
index ef241e81..c7629adc 100644
--- a/lbmpy/cumulants.py
+++ b/lbmpy/cumulants.py
@@ -8,8 +8,7 @@ import sympy as sp
 from lbmpy.continuous_distribution_measures import multi_differentiation
 from lbmpy.moments import moments_up_to_component_order
 from pystencils.cache import memorycache
-from pystencils.sympyextensions import fast_subs
-from pystencils.sympyextensions import scalar_product
+from pystencils.sympyextensions import fast_subs, scalar_product
 
 
 def __get_indexed_symbols(passed_symbols, prefix, indices):
diff --git a/lbmpy/fieldaccess.py b/lbmpy/fieldaccess.py
index 1265dc8e..a8238496 100644
--- a/lbmpy/fieldaccess.py
+++ b/lbmpy/fieldaccess.py
@@ -1,8 +1,11 @@
-import sympy as sp
 import abc
-from pystencils.stencil import inverse_direction
-from pystencils import Field
 
+import sympy as sp
+
+from pystencils import Field
+# ------------------------------------------------ Interface -----------------------------------------------------------
+from pystencils.astnodes import LoopOverCoordinate
+from pystencils.stencil import inverse_direction
 
 __all__ = ['PdfFieldAccessor', 'CollideOnlyInplaceAccessor', 'StreamPullTwoFieldsAccessor',
            'AAEvenTimeStepAccessor', 'AAOddTimeStepAccessor',
@@ -10,10 +13,6 @@ __all__ = ['PdfFieldAccessor', 'CollideOnlyInplaceAccessor', 'StreamPullTwoField
            'visualize_pdf_field_accessor', 'visualize_field_mapping']
 
 
-# ------------------------------------------------ Interface -----------------------------------------------------------
-from pystencils.astnodes import LoopOverCoordinate
-
-
 class PdfFieldAccessor:
     """
     Defines how data is read and written in an LBM time step.
@@ -24,6 +23,7 @@ class PdfFieldAccessor:
          - esoteric twist single field update
          -
     """
+
     @abc.abstractmethod
     def read(self, field, stencil):
         """Returns sequence of field accesses for all stencil values where pdfs are read from"""
diff --git a/lbmpy/forcemodels.py b/lbmpy/forcemodels.py
index 1fe54388..7b116e46 100644
--- a/lbmpy/forcemodels.py
+++ b/lbmpy/forcemodels.py
@@ -87,6 +87,7 @@ second moment nonzero   :class:`Luo`         :class:`Guo`
 """
 
 import sympy as sp
+
 from lbmpy.relaxationrates import get_shear_relaxation_rate
 
 
diff --git a/lbmpy/geometry.py b/lbmpy/geometry.py
index 1012d22c..0cd60217 100644
--- a/lbmpy/geometry.py
+++ b/lbmpy/geometry.py
@@ -1,7 +1,8 @@
 import numpy as np
 
-from lbmpy.boundaries import NoSlip, UBB
-from pystencils.slicing import normalize_slice, shift_slice, slice_intersection, slice_from_direction
+from lbmpy.boundaries import UBB, NoSlip
+from pystencils.slicing import (
+    normalize_slice, shift_slice, slice_from_direction, slice_intersection)
 
 
 def add_box_boundary(boundary_handling, boundary=NoSlip(), replace=True):
diff --git a/lbmpy/innerloopsplit.py b/lbmpy/innerloopsplit.py
index 43276a0a..0cecb4de 100644
--- a/lbmpy/innerloopsplit.py
+++ b/lbmpy/innerloopsplit.py
@@ -1,7 +1,9 @@
-import sympy as sp
 from collections import defaultdict
-from pystencils import Field
+
+import sympy as sp
+
 from lbmpy.methods.abstractlbmethod import LbmCollisionRule
+from pystencils import Field
 
 
 def create_lbm_split_groups(cr: LbmCollisionRule, opposing_directions=True):
diff --git a/lbmpy/lbstep.py b/lbmpy/lbstep.py
index fbb50668..b21a9afe 100644
--- a/lbmpy/lbstep.py
+++ b/lbmpy/lbstep.py
@@ -1,13 +1,16 @@
 from types import MappingProxyType
+
 import numpy as np
+
 from lbmpy.boundaries.boundaryhandling import LatticeBoltzmannBoundaryHandling
-from lbmpy.creationfunctions import switch_to_symbolic_relaxation_rates_for_omega_adapting_methods, \
-    create_lb_function, update_with_default_parameters
-from lbmpy.macroscopic_value_kernels import create_advanced_velocity_setter_collision_rule, \
-    pdf_initialization_assignments
+from lbmpy.creationfunctions import (
+    create_lb_function, switch_to_symbolic_relaxation_rates_for_omega_adapting_methods,
+    update_with_default_parameters)
+from lbmpy.macroscopic_value_kernels import (
+    create_advanced_velocity_setter_collision_rule, pdf_initialization_assignments)
 from lbmpy.simplificationfactory import create_simplification_strategy
 from lbmpy.stencils import get_stencil
-from pystencils import create_kernel, make_slice, create_data_handling
+from pystencils import create_data_handling, create_kernel, make_slice
 from pystencils.slicing import SlicedGetter
 from pystencils.timeloop import TimeLoop
 
diff --git a/lbmpy/macroscopic_value_kernels.py b/lbmpy/macroscopic_value_kernels.py
index 85c31fc7..fd4ac3d2 100644
--- a/lbmpy/macroscopic_value_kernels.py
+++ b/lbmpy/macroscopic_value_kernels.py
@@ -1,7 +1,8 @@
 import functools
 from copy import deepcopy
-from pystencils.field import Field, get_layout_of_array
+
 from lbmpy.simplificationfactory import create_simplification_strategy
+from pystencils.field import Field, get_layout_of_array
 
 
 def pdf_initialization_assignments(lb_method, density, velocity, pdfs):
diff --git a/lbmpy/max_domain_size_info.py b/lbmpy/max_domain_size_info.py
index e2db3f9b..c8d7458c 100644
--- a/lbmpy/max_domain_size_info.py
+++ b/lbmpy/max_domain_size_info.py
@@ -23,9 +23,10 @@ Examples:
 
 
 """
-import numpy as np
 import warnings
 
+import numpy as np
+
 # Optional packages cpuinfo, pycuda and psutil for hardware queries
 try:
     from cpuinfo import get_cpu_info
diff --git a/lbmpy/methods/__init__.py b/lbmpy/methods/__init__.py
index 3e068b6f..2ed90edf 100644
--- a/lbmpy/methods/__init__.py
+++ b/lbmpy/methods/__init__.py
@@ -1,9 +1,11 @@
-from lbmpy.methods.momentbased import RelaxationInfo, AbstractLbMethod, AbstractConservedQuantityComputation, \
-    MomentBasedLbMethod
+from lbmpy.methods.creationfunctions import (
+    create_mrt3, create_mrt_orthogonal, create_mrt_raw, create_srt, create_trt, create_trt_kbc,
+    create_trt_with_magic_number, create_with_continuous_maxwellian_eq_moments,
+    create_with_discrete_maxwellian_eq_moments)
+from lbmpy.methods.momentbased import (
+    AbstractConservedQuantityComputation, AbstractLbMethod, MomentBasedLbMethod, RelaxationInfo)
+
 from .conservedquantitycomputation import DensityVelocityComputation
-from lbmpy.methods.creationfunctions import create_srt, create_trt, create_trt_with_magic_number, create_trt_kbc, \
-    create_mrt_orthogonal, create_mrt_raw, create_mrt3, \
-    create_with_continuous_maxwellian_eq_moments, create_with_discrete_maxwellian_eq_moments
 
 __all__ = ['RelaxationInfo', 'AbstractLbMethod',
            'AbstractConservedQuantityComputation', 'DensityVelocityComputation', 'MomentBasedLbMethod',
diff --git a/lbmpy/methods/abstractlbmethod.py b/lbmpy/methods/abstractlbmethod.py
index c97d695b..8bdd0606 100644
--- a/lbmpy/methods/abstractlbmethod.py
+++ b/lbmpy/methods/abstractlbmethod.py
@@ -1,8 +1,9 @@
 import abc
-import sympy as sp
 from collections import namedtuple
-from pystencils import AssignmentCollection
 
+import sympy as sp
+
+from pystencils import AssignmentCollection
 
 RelaxationInfo = namedtuple('RelaxationInfo', ['equilibrium_value', 'relaxation_rate'])
 
diff --git a/lbmpy/methods/conservedquantitycomputation.py b/lbmpy/methods/conservedquantitycomputation.py
index 9f5fb0b4..180a2f6b 100644
--- a/lbmpy/methods/conservedquantitycomputation.py
+++ b/lbmpy/methods/conservedquantitycomputation.py
@@ -1,7 +1,9 @@
 import abc
-import sympy as sp
 from collections import OrderedDict
-from pystencils import Field, Assignment, AssignmentCollection
+
+import sympy as sp
+
+from pystencils import Assignment, AssignmentCollection, Field
 
 
 class AbstractConservedQuantityComputation(abc.ABC):
diff --git a/lbmpy/methods/creationfunctions.py b/lbmpy/methods/creationfunctions.py
index e910fc41..41c8a919 100644
--- a/lbmpy/methods/creationfunctions.py
+++ b/lbmpy/methods/creationfunctions.py
@@ -1,24 +1,28 @@
+import itertools
+import operator
+from collections import OrderedDict
+from functools import reduce
 from warnings import warn
 
 import sympy as sp
-from collections import OrderedDict
-from functools import reduce
-import operator
-import itertools
+
+from lbmpy.maxwellian_equilibrium import (
+    compressible_to_incompressible_moment_value, get_cumulants_of_continuous_maxwellian_equilibrium,
+    get_cumulants_of_discrete_maxwellian_equilibrium,
+    get_moments_of_continuous_maxwellian_equilibrium,
+    get_moments_of_discrete_maxwellian_equilibrium)
+from lbmpy.methods.abstractlbmethod import RelaxationInfo
+from lbmpy.methods.conservedquantitycomputation import DensityVelocityComputation
 from lbmpy.methods.cumulantbased import CumulantBasedLbMethod
 from lbmpy.methods.momentbased import MomentBasedLbMethod
+from lbmpy.moments import (
+    MOMENT_SYMBOLS, discrete_moment, exponents_to_polynomial_representations,
+    get_default_moment_set_for_stencil, get_order, gram_schmidt, is_even, moments_of_order,
+    moments_up_to_component_order, sort_moments_into_groups_of_same_order)
+from lbmpy.relaxationrates import default_relaxation_rate_names, relaxation_rate_from_magic_number
 from lbmpy.stencils import get_stencil
 from pystencils.stencil import have_same_entries
-from lbmpy.moments import is_even, gram_schmidt, get_default_moment_set_for_stencil, MOMENT_SYMBOLS, \
-    exponents_to_polynomial_representations, moments_of_order, moments_up_to_component_order, \
-    sort_moments_into_groups_of_same_order, get_order, discrete_moment
 from pystencils.sympyextensions import common_denominator
-from lbmpy.methods.conservedquantitycomputation import DensityVelocityComputation
-from lbmpy.methods.abstractlbmethod import RelaxationInfo
-from lbmpy.maxwellian_equilibrium import get_moments_of_discrete_maxwellian_equilibrium, \
-    get_moments_of_continuous_maxwellian_equilibrium, get_cumulants_of_discrete_maxwellian_equilibrium, \
-    get_cumulants_of_continuous_maxwellian_equilibrium, compressible_to_incompressible_moment_value
-from lbmpy.relaxationrates import relaxation_rate_from_magic_number, default_relaxation_rate_names
 
 
 def create_with_discrete_maxwellian_eq_moments(stencil, moment_to_relaxation_rate_dict, compressible=False,
diff --git a/lbmpy/methods/cumulantbased.py b/lbmpy/methods/cumulantbased.py
index 9756f34c..415506ba 100644
--- a/lbmpy/methods/cumulantbased.py
+++ b/lbmpy/methods/cumulantbased.py
@@ -1,11 +1,14 @@
-import sympy as sp
 from collections import OrderedDict
-from pystencils import Assignment
-from pystencils.sympyextensions import fast_subs, subs_additive
+
+import sympy as sp
+
+from lbmpy.cumulants import cumulant_as_function_of_raw_moments, raw_moment_as_function_of_cumulants
 from lbmpy.methods.abstractlbmethod import AbstractLbMethod, LbmCollisionRule, RelaxationInfo
 from lbmpy.methods.conservedquantitycomputation import AbstractConservedQuantityComputation
-from lbmpy.moments import MOMENT_SYMBOLS, extract_monomials, moment_matrix, monomial_to_polynomial_transformation_matrix
-from lbmpy.cumulants import cumulant_as_function_of_raw_moments, raw_moment_as_function_of_cumulants
+from lbmpy.moments import (
+    MOMENT_SYMBOLS, extract_monomials, moment_matrix, monomial_to_polynomial_transformation_matrix)
+from pystencils import Assignment
+from pystencils.sympyextensions import fast_subs, subs_additive
 
 
 class CumulantBasedLbMethod(AbstractLbMethod):
diff --git a/lbmpy/methods/entropic.py b/lbmpy/methods/entropic.py
index 862403e6..d3f2f90f 100644
--- a/lbmpy/methods/entropic.py
+++ b/lbmpy/methods/entropic.py
@@ -1,7 +1,8 @@
 import sympy as sp
+
+from lbmpy.relaxationrates import get_shear_relaxation_rate
 from pystencils import Assignment
 from pystencils.sympyextensions import fast_subs
-from lbmpy.relaxationrates import get_shear_relaxation_rate
 
 
 def add_entropy_condition(collision_rule, omega_output_field=None):
diff --git a/lbmpy/methods/entropic_eq_srt.py b/lbmpy/methods/entropic_eq_srt.py
index 07afe648..52e5697a 100644
--- a/lbmpy/methods/entropic_eq_srt.py
+++ b/lbmpy/methods/entropic_eq_srt.py
@@ -1,8 +1,9 @@
 import sympy as sp
-from pystencils import Assignment
+
 from lbmpy.maxwellian_equilibrium import get_weights
 from lbmpy.methods.abstractlbmethod import AbstractLbMethod, LbmCollisionRule
 from lbmpy.methods.conservedquantitycomputation import DensityVelocityComputation
+from pystencils import Assignment
 
 
 class EntropicEquilibriumSRT(AbstractLbMethod):
diff --git a/lbmpy/methods/momentbased.py b/lbmpy/methods/momentbased.py
index 55c8b0f7..2c197c4f 100644
--- a/lbmpy/methods/momentbased.py
+++ b/lbmpy/methods/momentbased.py
@@ -1,10 +1,12 @@
-import sympy as sp
 from collections import OrderedDict
-from pystencils import Assignment
-from pystencils.sympyextensions import subs_additive
+
+import sympy as sp
+
 from lbmpy.methods.abstractlbmethod import AbstractLbMethod, LbmCollisionRule, RelaxationInfo
 from lbmpy.methods.conservedquantitycomputation import AbstractConservedQuantityComputation
 from lbmpy.moments import MOMENT_SYMBOLS, moment_matrix
+from pystencils import Assignment
+from pystencils.sympyextensions import subs_additive
 
 
 class MomentBasedLbMethod(AbstractLbMethod):
diff --git a/lbmpy/methods/momentbasedsimplifications.py b/lbmpy/methods/momentbasedsimplifications.py
index 1888f353..5deb47f5 100644
--- a/lbmpy/methods/momentbasedsimplifications.py
+++ b/lbmpy/methods/momentbasedsimplifications.py
@@ -7,7 +7,8 @@ import sympy as sp
 
 from lbmpy.methods.abstractlbmethod import LbmCollisionRule
 from pystencils import Assignment
-from pystencils.sympyextensions import subs_additive, replace_second_order_products, extract_most_common_factor
+from pystencils.sympyextensions import (
+    extract_most_common_factor, replace_second_order_products, subs_additive)
 
 
 def replace_second_order_velocity_products(cr: LbmCollisionRule):
diff --git a/lbmpy/moments.py b/lbmpy/moments.py
index fd0b9a23..0a5da08c 100644
--- a/lbmpy/moments.py
+++ b/lbmpy/moments.py
@@ -36,15 +36,15 @@ Functions
 """
 import itertools
 import math
-from copy import copy
 from collections import Counter, defaultdict
-from typing import Iterable, List, Sequence, Tuple, TypeVar, Optional
+from copy import copy
+from typing import Iterable, List, Optional, Sequence, Tuple, TypeVar
+
 import sympy as sp
 
 from pystencils.cache import memorycache
 from pystencils.sympyextensions import remove_higher_order_terms
 
-
 MOMENT_SYMBOLS = sp.symbols('x y z')
 T = TypeVar('T')
 
diff --git a/lbmpy/parameterization.py b/lbmpy/parameterization.py
index b6392188..e660c370 100644
--- a/lbmpy/parameterization.py
+++ b/lbmpy/parameterization.py
@@ -1,8 +1,11 @@
 from collections import namedtuple
+
 import ipywidgets.widgets as widgets
 from IPython.display import display
-from ipywidgets.widgets import FloatText, Label, VBox, HBox, Select, BoundedFloatText, Button
-from lbmpy.relaxationrates import relaxation_rate_from_lattice_viscosity, lattice_viscosity_from_relaxation_rate
+from ipywidgets.widgets import BoundedFloatText, Button, FloatText, HBox, Label, Select, VBox
+
+from lbmpy.relaxationrates import (
+    lattice_viscosity_from_relaxation_rate, relaxation_rate_from_lattice_viscosity)
 
 
 class ScalingWidget:
diff --git a/lbmpy/phasefield/analytical.py b/lbmpy/phasefield/analytical.py
index ffbb4336..dfd23718 100644
--- a/lbmpy/phasefield/analytical.py
+++ b/lbmpy/phasefield/analytical.py
@@ -1,7 +1,10 @@
-import sympy as sp
 from collections import defaultdict
-from pystencils.sympyextensions import multidimensional_sum as multi_sum, normalize_product, prod
-from pystencils.fd import functional_derivative, expand_diff_linear, Diff, expand_diff_full
+
+import sympy as sp
+
+from pystencils.fd import Diff, expand_diff_full, expand_diff_linear, functional_derivative
+from pystencils.sympyextensions import multidimensional_sum as multi_sum
+from pystencils.sympyextensions import normalize_product, prod
 
 order_parameter_symbol_name = "phi"
 surface_tension_symbol_name = "tau"
diff --git a/lbmpy/phasefield/cahn_hilliard_lbm.py b/lbmpy/phasefield/cahn_hilliard_lbm.py
index 02dd3ebc..c5e341a9 100644
--- a/lbmpy/phasefield/cahn_hilliard_lbm.py
+++ b/lbmpy/phasefield/cahn_hilliard_lbm.py
@@ -1,8 +1,9 @@
 import sympy as sp
+
+from lbmpy.maxwellian_equilibrium import get_weights
 from lbmpy.methods.creationfunctions import create_from_equilibrium
 from lbmpy.stencils import get_stencil
 from pystencils.sympyextensions import kronecker_delta, multidimensional_sum
-from lbmpy.maxwellian_equilibrium import get_weights
 
 
 def cahn_hilliard_lb_method(stencil, mu, relaxation_rate=sp.Symbol("omega"), gamma=1):
diff --git a/lbmpy/phasefield/eos.py b/lbmpy/phasefield/eos.py
index fbdbfd4b..8ace5ec6 100644
--- a/lbmpy/phasefield/eos.py
+++ b/lbmpy/phasefield/eos.py
@@ -1,7 +1,6 @@
 import sympy as sp
-from pystencils.cache import disk_cache
-
 
+from pystencils.cache import disk_cache
 # ---------------------------------- Equations of state ----------------------------------------------------------------
 from pystencils.sympyextensions import remove_small_floats
 
diff --git a/lbmpy/phasefield/experiments2D.py b/lbmpy/phasefield/experiments2D.py
index 24d6ca02..38d1e8bc 100644
--- a/lbmpy/phasefield/experiments2D.py
+++ b/lbmpy/phasefield/experiments2D.py
@@ -1,6 +1,7 @@
 import sympy as sp
-from lbmpy.phasefield.phasefieldstep import PhaseFieldStep
+
 from lbmpy.phasefield.analytical import free_energy_functional_n_phases_penalty_term
+from lbmpy.phasefield.phasefieldstep import PhaseFieldStep
 from lbmpy.phasefield.scenarios import create_three_phase_model
 from pystencils import make_slice
 
diff --git a/lbmpy/phasefield/high_density_ratio_model.py b/lbmpy/phasefield/high_density_ratio_model.py
index 819808f1..c4c22af7 100644
--- a/lbmpy/phasefield/high_density_ratio_model.py
+++ b/lbmpy/phasefield/high_density_ratio_model.py
@@ -1,6 +1,7 @@
 import sympy as sp
-from pystencils.fd import Diff
+
 from lbmpy.phasefield.eos import free_energy_from_eos
+from pystencils.fd import Diff
 from pystencils.sympyextensions import remove_small_floats
 
 
diff --git a/lbmpy/phasefield/kerneleqs.py b/lbmpy/phasefield/kerneleqs.py
index 8141b0cc..21a51cd4 100644
--- a/lbmpy/phasefield/kerneleqs.py
+++ b/lbmpy/phasefield/kerneleqs.py
@@ -1,10 +1,11 @@
 import sympy as sp
+
+from lbmpy.phasefield.analytical import (
+    chemical_potentials_from_free_energy, force_from_phi_and_mu, force_from_pressure_tensor,
+    pressure_tensor_bulk_sqrt_term, pressure_tensor_from_free_energy, substitute_laplacian_by_sum,
+    symmetric_tensor_linearization)
 from pystencils import Assignment
 from pystencils.fd import Discretization2ndOrder, discretize_spatial
-from lbmpy.phasefield.analytical import chemical_potentials_from_free_energy, substitute_laplacian_by_sum, \
-    force_from_phi_and_mu, symmetric_tensor_linearization, pressure_tensor_from_free_energy, \
-    force_from_pressure_tensor, pressure_tensor_bulk_sqrt_term
-
 
 # ---------------------------------- Kernels to compute force ----------------------------------------------------------
 
diff --git a/lbmpy/phasefield/n_phase_boyer.py b/lbmpy/phasefield/n_phase_boyer.py
index bdcac888..c4918a14 100644
--- a/lbmpy/phasefield/n_phase_boyer.py
+++ b/lbmpy/phasefield/n_phase_boyer.py
@@ -2,13 +2,14 @@
 Hierarchy of consistent n-component Cahn-Hilliard systems by Franck Boyer, Sebastian Minjeaud
 """
 
-import sympy as sp
 from itertools import combinations
 
+import sympy as sp
+
+import pystencils.fd as fd
 from lbmpy.phasefield.analytical import chemical_potentials_from_free_energy
 from pystencils.cache import memorycache
 from pystencils.fd import Diff
-import pystencils.fd as fd
 from pystencils.sympyextensions import prod
 
 
diff --git a/lbmpy/phasefield/nphase_nestler.py b/lbmpy/phasefield/nphase_nestler.py
index c33419a1..7ca7e898 100644
--- a/lbmpy/phasefield/nphase_nestler.py
+++ b/lbmpy/phasefield/nphase_nestler.py
@@ -1,16 +1,17 @@
+import pyximport
 import sympy as sp
+
 from lbmpy.creationfunctions import create_lb_update_rule
 from lbmpy.macroscopic_value_kernels import pdf_initialization_assignments
 from lbmpy.phasefield.analytical import chemical_potentials_from_free_energy, force_from_phi_and_mu
 from lbmpy.phasefield.cahn_hilliard_lbm import cahn_hilliard_lb_method
+from lbmpy.phasefield.simplex_projection import simplex_projection_2d  # NOQA
 from lbmpy.stencils import get_stencil
-from pystencils import create_data_handling, Assignment, create_kernel
-from pystencils.fd import Diff, expand_diff_full, discretize_spatial
+from pystencils import Assignment, create_data_handling, create_kernel
+from pystencils.fd import Diff, discretize_spatial, expand_diff_full
 from pystencils.fd.derivation import FiniteDifferenceStencilDerivation
 
-import pyximport
 pyximport.install(language_level=3)
-from lbmpy.phasefield.simplex_projection import simplex_projection_2d  # NOQA
 
 
 def forth_order_isotropic_discretize(field):
diff --git a/lbmpy/phasefield/phasefieldstep.py b/lbmpy/phasefield/phasefieldstep.py
index 31b070d9..46b713db 100644
--- a/lbmpy/phasefield/phasefieldstep.py
+++ b/lbmpy/phasefield/phasefieldstep.py
@@ -1,18 +1,19 @@
 from types import MappingProxyType
 
-import sympy as sp
 import numpy as np
+import sympy as sp
 
 from lbmpy.lbstep import LatticeBoltzmannStep
+from lbmpy.phasefield.analytical import (
+    chemical_potentials_from_free_energy, symmetric_tensor_linearization)
 from lbmpy.phasefield.cahn_hilliard_lbm import cahn_hilliard_lb_method
-from lbmpy.phasefield.kerneleqs import mu_kernel, CahnHilliardFDStep, pressure_tensor_kernel, \
-    force_kernel_using_pressure_tensor
-from pystencils import create_kernel, create_data_handling
-from lbmpy.phasefield.analytical import chemical_potentials_from_free_energy, symmetric_tensor_linearization
+from lbmpy.phasefield.kerneleqs import (
+    CahnHilliardFDStep, force_kernel_using_pressure_tensor, mu_kernel, pressure_tensor_kernel)
+from pystencils import create_data_handling, create_kernel
 from pystencils.boundaries.boundaryhandling import FlagInterface
 from pystencils.boundaries.inkernel import add_neumann_boundary
 from pystencils.simp import sympy_cse_on_assignment_list
-from pystencils.slicing import make_slice, SlicedGetter
+from pystencils.slicing import SlicedGetter, make_slice
 
 
 class PhaseFieldStep:
diff --git a/lbmpy/phasefield/phasefieldstep_direct.py b/lbmpy/phasefield/phasefieldstep_direct.py
index 3937e37f..bfd05153 100644
--- a/lbmpy/phasefield/phasefieldstep_direct.py
+++ b/lbmpy/phasefield/phasefieldstep_direct.py
@@ -1,11 +1,12 @@
 import numpy as np
+
 from lbmpy.creationfunctions import create_lb_function
 from lbmpy.macroscopic_value_kernels import pdf_initialization_assignments
 from lbmpy.phasefield.analytical import force_from_phi_and_mu
 from lbmpy.phasefield.cahn_hilliard_lbm import cahn_hilliard_lb_method
 from lbmpy.phasefield.kerneleqs import mu_kernel
 from lbmpy.stencils import get_stencil
-from pystencils import create_data_handling, Assignment, create_kernel
+from pystencils import Assignment, create_data_handling, create_kernel
 from pystencils.fd import discretize_spatial
 from pystencils.fd.spatial import fd_stencils_forth_order_isotropic
 from pystencils.simp import sympy_cse_on_assignment_list
diff --git a/lbmpy/phasefield/post_processing.py b/lbmpy/phasefield/post_processing.py
index c215bb55..c97112aa 100644
--- a/lbmpy/phasefield/post_processing.py
+++ b/lbmpy/phasefield/post_processing.py
@@ -1,7 +1,7 @@
-from collections import namedtuple
-import numpy as np
 import warnings
+from collections import namedtuple
 
+import numpy as np
 
 TriplePoint = namedtuple("TriplePoint", ['center', 'branch_points', 'angles'])
 
diff --git a/lbmpy/phasefield/scenarios.py b/lbmpy/phasefield/scenarios.py
index f8d9df1f..8912cd98 100644
--- a/lbmpy/phasefield/scenarios.py
+++ b/lbmpy/phasefield/scenarios.py
@@ -1,9 +1,12 @@
-import sympy as sp
-import numpy as np
 import warnings
+
+import numpy as np
+import sympy as sp
+
+from lbmpy.phasefield.analytical import (
+    free_energy_functional_3_phases, free_energy_functional_n_phases,
+    free_energy_functional_n_phases_penalty_term, symbolic_order_parameters)
 from lbmpy.phasefield.phasefieldstep import PhaseFieldStep
-from lbmpy.phasefield.analytical import free_energy_functional_3_phases, free_energy_functional_n_phases, \
-    symbolic_order_parameters, free_energy_functional_n_phases_penalty_term
 
 
 def create_three_phase_model(alpha=1, kappa=(0.015, 0.015, 0.015), include_rho=True, **kwargs):
diff --git a/lbmpy/quadratic_equilibrium_construction.py b/lbmpy/quadratic_equilibrium_construction.py
index d4159476..207534a2 100644
--- a/lbmpy/quadratic_equilibrium_construction.py
+++ b/lbmpy/quadratic_equilibrium_construction.py
@@ -3,11 +3,12 @@ Method to construct a quadratic equilibrium using a generic quadratic ansatz acc
 Wolf-Gladrow, section 5.4
 """
 
-import sympy as sp
 import numpy as np
-from pystencils.sympyextensions import scalar_product
-from lbmpy.moments import discrete_moment
+import sympy as sp
+
 from lbmpy.maxwellian_equilibrium import compressible_to_incompressible_moment_value
+from lbmpy.moments import discrete_moment
+from pystencils.sympyextensions import scalar_product
 
 
 def generic_equilibrium_ansatz(stencil, u=sp.symbols("u_:3")):
diff --git a/lbmpy/relaxationrates.py b/lbmpy/relaxationrates.py
index 15c6b40a..2e365162 100644
--- a/lbmpy/relaxationrates.py
+++ b/lbmpy/relaxationrates.py
@@ -1,5 +1,6 @@
 import sympy as sp
-from lbmpy.moments import is_shear_moment, get_order
+
+from lbmpy.moments import get_order, is_shear_moment
 
 
 def relaxation_rate_from_lattice_viscosity(nu):
diff --git a/lbmpy/scenarios.py b/lbmpy/scenarios.py
index 705da61e..6d838bbe 100644
--- a/lbmpy/scenarios.py
+++ b/lbmpy/scenarios.py
@@ -26,11 +26,12 @@ at :mod:`lbmpy.creationfunctions`. The only mandatory keyword parameter is ``rel
 that defines the viscosity of the fluid (valid values being between 0 and 2).
 """
 import numpy as np
-from lbmpy.geometry import add_pipe_walls, add_pipe_inflow_boundary
+
+from lbmpy.boundaries import UBB, FixedDensity, NoSlip
+from lbmpy.geometry import add_pipe_inflow_boundary, add_pipe_walls
 from lbmpy.lbstep import LatticeBoltzmannStep
 from pystencils.datahandling import create_data_handling
 from pystencils.slicing import slice_from_direction
-from lbmpy.boundaries import NoSlip, UBB, FixedDensity
 
 
 def create_fully_periodic_flow(initial_velocity, periodicity_in_kernel=False, lbm_kernel=None,
diff --git a/lbmpy/session.py b/lbmpy/session.py
index eca49f47..baf9cdab 100644
--- a/lbmpy/session.py
+++ b/lbmpy/session.py
@@ -1,14 +1,15 @@
-from pystencils.sympy_gmpy_bug_workaround import *
-import pystencils as ps
-import sympy as sp
 import numpy as np
-from lbmpy.scenarios import *
-from lbmpy.creationfunctions import *
-from pystencils import make_slice, show_code
+import sympy as sp
+
+import lbmpy.plot as plt
+import pystencils as ps
 from lbmpy.boundaries import *
-from lbmpy.postprocessing import *
-from lbmpy.lbstep import LatticeBoltzmannStep
+from lbmpy.creationfunctions import *
 from lbmpy.geometry import *
+from lbmpy.lbstep import LatticeBoltzmannStep
 from lbmpy.parameterization import ScalingWidget
-import lbmpy.plot as plt
+from lbmpy.postprocessing import *
+from lbmpy.scenarios import *
+from pystencils import make_slice, show_code
 from pystencils.jupyter import *
+from pystencils.sympy_gmpy_bug_workaround import *
diff --git a/lbmpy/simplificationfactory.py b/lbmpy/simplificationfactory.py
index e70895bf..bd0bec62 100644
--- a/lbmpy/simplificationfactory.py
+++ b/lbmpy/simplificationfactory.py
@@ -1,8 +1,10 @@
 import sympy as sp
+
 from lbmpy.innerloopsplit import create_lbm_split_groups
 from lbmpy.methods.cumulantbased import CumulantBasedLbMethod
-from pystencils.simp import apply_to_all_assignments, \
-    subexpression_substitution_in_main_assignments, sympy_cse, add_subexpressions_for_divisions
+from pystencils.simp import (
+    add_subexpressions_for_divisions, apply_to_all_assignments,
+    subexpression_substitution_in_main_assignments, sympy_cse)
 
 
 def create_simplification_strategy(lb_method, cse_pdfs=False, cse_global=False, split_inner_loop=False):
diff --git a/lbmpy/sparse/__init__.py b/lbmpy/sparse/__init__.py
index 21b71f21..aee57011 100644
--- a/lbmpy/sparse/__init__.py
+++ b/lbmpy/sparse/__init__.py
@@ -1,6 +1,7 @@
 from .mapping import SparseLbBoundaryMapper, SparseLbMapper
-from .update_rule_sparse import create_lb_update_rule_sparse, create_macroscopic_value_getter_sparse, \
-    create_macroscopic_value_setter_sparse, create_symbolic_list
+from .update_rule_sparse import (
+    create_lb_update_rule_sparse, create_macroscopic_value_getter_sparse,
+    create_macroscopic_value_setter_sparse, create_symbolic_list)
 
 __all__ = ['SparseLbBoundaryMapper', 'SparseLbMapper', 'create_lb_update_rule_sparse',
            'create_macroscopic_value_setter_sparse', 'create_macroscopic_value_getter_sparse',
diff --git a/lbmpy/sparse/mapping.py b/lbmpy/sparse/mapping.py
index bf903881..4c822f31 100644
--- a/lbmpy/sparse/mapping.py
+++ b/lbmpy/sparse/mapping.py
@@ -1,12 +1,13 @@
-import sympy as sp
-import numpy as np
 from typing import Tuple
 
+import numpy as np
+import sympy as sp
+
 from lbmpy.boundaries.boundaryhandling import LbmWeightInfo
-from pystencils import Field, TypedSymbol, Assignment
+from pystencils import Assignment, Field, TypedSymbol
 from pystencils.boundaries.boundaryhandling import BoundaryOffsetInfo
-from pystencils.boundaries.createindexlist import create_boundary_index_list, boundary_index_array_coordinate_names, \
-    direction_member_name
+from pystencils.boundaries.createindexlist import (
+    boundary_index_array_coordinate_names, create_boundary_index_list, direction_member_name)
 
 
 class SparseLbMapper:
diff --git a/lbmpy/sparse/update_rule_sparse.py b/lbmpy/sparse/update_rule_sparse.py
index 61c014af..00d5ecf2 100644
--- a/lbmpy/sparse/update_rule_sparse.py
+++ b/lbmpy/sparse/update_rule_sparse.py
@@ -1,7 +1,6 @@
-from pystencils import AssignmentCollection, Assignment
-from pystencils.field import Field, FieldType
+from pystencils import Assignment, AssignmentCollection
 # noinspection PyProtectedMember
-from pystencils.field import compute_strides
+from pystencils.field import Field, FieldType, compute_strides
 
 AC = AssignmentCollection
 
diff --git a/lbmpy/turbulence_models.py b/lbmpy/turbulence_models.py
index 6e742aa2..6b67fa3c 100644
--- a/lbmpy/turbulence_models.py
+++ b/lbmpy/turbulence_models.py
@@ -1,7 +1,7 @@
 import sympy as sp
 
-from pystencils import Assignment
 from lbmpy.relaxationrates import get_shear_relaxation_rate
+from pystencils import Assignment
 
 
 def second_order_moment_tensor(function_values, stencil):
diff --git a/lbmpy/updatekernels.py b/lbmpy/updatekernels.py
index 82b7f3f8..c3cfb6ac 100644
--- a/lbmpy/updatekernels.py
+++ b/lbmpy/updatekernels.py
@@ -1,13 +1,12 @@
 import numpy as np
 import sympy as sp
 
-from pystencils import Field, Assignment, AssignmentCollection
+from lbmpy.fieldaccess import StreamPullTwoFieldsAccessor
+from lbmpy.methods.abstractlbmethod import LbmCollisionRule
+from pystencils import Assignment, AssignmentCollection, Field
 from pystencils.field import create_numpy_array_with_layout, layout_string_to_tuple
 from pystencils.simp import add_subexpressions_for_field_reads
 from pystencils.sympyextensions import fast_subs
-from lbmpy.methods.abstractlbmethod import LbmCollisionRule
-from lbmpy.fieldaccess import StreamPullTwoFieldsAccessor
-
 
 # -------------------------------------------- LBM Kernel Creation -----------------------------------------------------
 
diff --git a/lbmpy_tests/benchmark/evaluation.py b/lbmpy_tests/benchmark/evaluation.py
index 305e6508..7f6009df 100644
--- a/lbmpy_tests/benchmark/evaluation.py
+++ b/lbmpy_tests/benchmark/evaluation.py
@@ -1,5 +1,5 @@
 """Function to process benchmark results in pandas."""
-from pystencils.runhelper.db import remove_constant_columns, Database
+from pystencils.runhelper.db import Database, remove_constant_columns
 
 db = None
 
diff --git a/lbmpy_tests/benchmark/test_benchmark.py b/lbmpy_tests/benchmark/test_benchmark.py
index b8192dcc..0088096f 100644
--- a/lbmpy_tests/benchmark/test_benchmark.py
+++ b/lbmpy_tests/benchmark/test_benchmark.py
@@ -1,10 +1,12 @@
-import pytest
+from statistics import median
+
 import numpy as np
+import pytest
 import sympy as sp
+
 from lbmpy.scenarios import create_lid_driven_cavity
-from pystencils.runhelper import ParameterStudy
-from statistics import median
 from pystencils.cpu.cpujit import add_or_change_compiler_flags
+from pystencils.runhelper import ParameterStudy
 
 
 def parameter_filter(parameters):
diff --git a/lbmpy_tests/full_scenarios/kida_vortex_flow/scenario_kida_vortex_flow.py b/lbmpy_tests/full_scenarios/kida_vortex_flow/scenario_kida_vortex_flow.py
index beeaa58c..c1116174 100644
--- a/lbmpy_tests/full_scenarios/kida_vortex_flow/scenario_kida_vortex_flow.py
+++ b/lbmpy_tests/full_scenarios/kida_vortex_flow/scenario_kida_vortex_flow.py
@@ -4,12 +4,13 @@ Boesch, Chikatamarla, Karlin: Entropic multirelaxation lattice Boltzmann models
 """
 import numpy as np
 import sympy as sp
+
 import pystencils as ps
 from lbmpy.lbstep import LatticeBoltzmannStep
-from lbmpy.relaxationrates import relaxation_rate_from_lattice_viscosity, relaxation_rate_from_magic_number
+from lbmpy.relaxationrates import (
+    relaxation_rate_from_lattice_viscosity, relaxation_rate_from_magic_number)
 from pystencils.runhelper import ParameterStudy
 
-
 # --------------------------------------------- Setup ------------------------------------------------------------------
 
 
@@ -288,4 +289,3 @@ def create_full_parameter_study(gpu=False):
 if __name__ == '__main__':
     parameter_study = create_full_parameter_study(gpu=True)
     parameter_study.run_from_command_line()
-
diff --git a/lbmpy_tests/full_scenarios/rod/scenario_rod.py b/lbmpy_tests/full_scenarios/rod/scenario_rod.py
index fe87bac3..996c3f54 100644
--- a/lbmpy_tests/full_scenarios/rod/scenario_rod.py
+++ b/lbmpy_tests/full_scenarios/rod/scenario_rod.py
@@ -8,8 +8,10 @@ The deficiencies of the D3Q19 model can be resolved by choosing a better equilib
 """
 import os
 import sys
+
 import numpy as np
 import sympy as sp
+
 from lbmpy.boundaries import FixedDensity, NoSlip
 from lbmpy.geometry import add_pipe_inflow_boundary, add_pipe_walls
 from lbmpy.lbstep import LatticeBoltzmannStep
diff --git a/lbmpy_tests/full_scenarios/schaefer_turek/scenario_schaefer_turek.py b/lbmpy_tests/full_scenarios/schaefer_turek/scenario_schaefer_turek.py
index f232bf9b..f84fa790 100644
--- a/lbmpy_tests/full_scenarios/schaefer_turek/scenario_schaefer_turek.py
+++ b/lbmpy_tests/full_scenarios/schaefer_turek/scenario_schaefer_turek.py
@@ -5,8 +5,10 @@ a cylinder. In Flow simulation with high-performance computers II (pp. 547-566).
 
 - boundaries are not set correctly yet (halfway-bounce back is not considered)
 """
-import numpy as np
 import warnings
+
+import numpy as np
+
 from lbmpy.boundaries.boundaryconditions import NoSlip
 from lbmpy.geometry import get_pipe_velocity_field
 from lbmpy.relaxationrates import relaxation_rate_from_lattice_viscosity
diff --git a/lbmpy_tests/full_scenarios/shear_wave/scenario_shear_wave.py b/lbmpy_tests/full_scenarios/shear_wave/scenario_shear_wave.py
index 22a8f03d..09af0c74 100644
--- a/lbmpy_tests/full_scenarios/shear_wave/scenario_shear_wave.py
+++ b/lbmpy_tests/full_scenarios/shear_wave/scenario_shear_wave.py
@@ -6,9 +6,11 @@
 """
 import numpy as np
 import sympy as sp
-from lbmpy.scenarios import create_fully_periodic_flow
-from lbmpy.relaxationrates import relaxation_rate_from_lattice_viscosity, relaxation_rate_from_magic_number
+
 from lbmpy.creationfunctions import update_with_default_parameters
+from lbmpy.relaxationrates import (
+    relaxation_rate_from_lattice_viscosity, relaxation_rate_from_magic_number)
+from lbmpy.scenarios import create_fully_periodic_flow
 
 
 def get_exponent_term(l, **kwargs):
diff --git a/lbmpy_tests/full_scenarios/square_channel/scenario_square_channel.py b/lbmpy_tests/full_scenarios/square_channel/scenario_square_channel.py
index a1082e57..2e75a272 100644
--- a/lbmpy_tests/full_scenarios/square_channel/scenario_square_channel.py
+++ b/lbmpy_tests/full_scenarios/square_channel/scenario_square_channel.py
@@ -12,10 +12,9 @@ python3 scenario_square_channel.py client --host i10staff41 -P '{ "optimization"
 import numpy as np
 import sympy as sp
 
-from pystencils import make_slice
-from lbmpy.scenarios import create_channel
 from lbmpy.methods.creationfunctions import relaxation_rate_from_magic_number
-
+from lbmpy.scenarios import create_channel
+from pystencils import make_slice
 
 defaultParameters = {
     'stencil': 'D3Q19',
diff --git a/lbmpy_tests/lattice_tensors.py b/lbmpy_tests/lattice_tensors.py
index d58fc751..94327c37 100644
--- a/lbmpy_tests/lattice_tensors.py
+++ b/lbmpy_tests/lattice_tensors.py
@@ -1,4 +1,5 @@
 import itertools
+
 from pystencils.sympyextensions import kronecker_delta as kd
 
 
diff --git a/lbmpy_tests/phasefield/test_force_computation_equivalence.py b/lbmpy_tests/phasefield/test_force_computation_equivalence.py
index 8a07e3c3..58e19c15 100644
--- a/lbmpy_tests/phasefield/test_force_computation_equivalence.py
+++ b/lbmpy_tests/phasefield/test_force_computation_equivalence.py
@@ -4,8 +4,10 @@ more stable. Mathematically they should be equivalent.
 This test ensures that the complicated pressure tensor formulation yields the same force as computed directly."""
 
 import sympy as sp
-from lbmpy.phasefield.analytical import chemical_potentials_from_free_energy, substitute_laplacian_by_sum, \
-    pressure_tensor_interface_component_new, force_from_pressure_tensor, force_from_phi_and_mu
+
+from lbmpy.phasefield.analytical import (
+    chemical_potentials_from_free_energy, force_from_phi_and_mu, force_from_pressure_tensor,
+    pressure_tensor_interface_component_new, substitute_laplacian_by_sum)
 from pystencils.fd import Diff, expand_diff_full, normalize_diff_order
 
 
@@ -34,4 +36,4 @@ def force_computation_equivalence(dim=3, num_phases=4):
 
 
 if __name__ == '__main__':
-    force_computation_equivalence()
\ No newline at end of file
+    force_computation_equivalence()
diff --git a/lbmpy_tests/phasefield/test_nestler_model.py b/lbmpy_tests/phasefield/test_nestler_model.py
index 078f1a4f..1a43d4f7 100644
--- a/lbmpy_tests/phasefield/test_nestler_model.py
+++ b/lbmpy_tests/phasefield/test_nestler_model.py
@@ -1,6 +1,8 @@
-import sympy as sp
-import numpy as np
 from collections import defaultdict
+
+import numpy as np
+import sympy as sp
+
 from lbmpy.phasefield.nphase_nestler import create_model
 
 
@@ -44,4 +46,3 @@ def test_main():
 
     res = run(100)
     assert np.isfinite(np.max(res))
-
diff --git a/lbmpy_tests/phasefield/test_nphase_1D.py b/lbmpy_tests/phasefield/test_nphase_1D.py
index f0722f64..ce265386 100644
--- a/lbmpy_tests/phasefield/test_nphase_1D.py
+++ b/lbmpy_tests/phasefield/test_nphase_1D.py
@@ -1,7 +1,10 @@
-import numpy as np
 from functools import partial
-from lbmpy.phasefield.analytical import n_phases_correction_function, analytic_interface_profile, \
-    n_phases_correction_function_sign_switch
+
+import numpy as np
+
+from lbmpy.phasefield.analytical import (
+    analytic_interface_profile, n_phases_correction_function,
+    n_phases_correction_function_sign_switch)
 from lbmpy.phasefield.experiments1D import init_sharp_interface
 from lbmpy.phasefield.scenarios import create_n_phase_model
 from pystencils import create_data_handling, make_slice
diff --git a/lbmpy_tests/phasefield/test_nphase_2D.py b/lbmpy_tests/phasefield/test_nphase_2D.py
index 018feeaf..7d4359d9 100644
--- a/lbmpy_tests/phasefield/test_nphase_2D.py
+++ b/lbmpy_tests/phasefield/test_nphase_2D.py
@@ -1,13 +1,15 @@
-import numpy as np
 from functools import partial
-from lbmpy.phasefield.analytical import n_phases_correction_function, n_phases_correction_function_sign_switch
+from time import time
+
+import numpy as np
+
+from lbmpy.phasefield.analytical import (
+    n_phases_correction_function, n_phases_correction_function_sign_switch)
 from lbmpy.phasefield.contact_angle_circle_fitting import liquid_lens_neumann_angles
 from lbmpy.phasefield.post_processing import analytic_neumann_angles
 from lbmpy.phasefield.scenarios import create_n_phase_model, create_three_phase_model
 from pystencils import create_data_handling, make_slice
 from pystencils.runhelper import ParameterStudy
-from time import time
-
 from pystencils.utils import boolean_array_bounding_box
 
 color = {'yellow': '\033[93m',
@@ -215,5 +217,3 @@ def main():
 
 if __name__ == '__main__':
     main()
-
-
diff --git a/lbmpy_tests/test_boundary_handling.py b/lbmpy_tests/test_boundary_handling.py
index 9af8e404..25589c2c 100644
--- a/lbmpy_tests/test_boundary_handling.py
+++ b/lbmpy_tests/test_boundary_handling.py
@@ -1,10 +1,11 @@
 import numpy as np
-from pystencils import make_slice, create_data_handling
-from lbmpy.creationfunctions import create_lb_function
+
+from lbmpy.boundaries import UBB, NeumannByCopy, NoSlip, StreamInConstant
 from lbmpy.boundaries.boundaryhandling import LatticeBoltzmannBoundaryHandling
-from lbmpy.boundaries import NoSlip, UBB, StreamInConstant, NeumannByCopy
-from lbmpy.lbstep import LatticeBoltzmannStep
+from lbmpy.creationfunctions import create_lb_function
 from lbmpy.geometry import add_box_boundary
+from lbmpy.lbstep import LatticeBoltzmannStep
+from pystencils import create_data_handling, make_slice
 
 
 def test_simple():
diff --git a/lbmpy_tests/test_boundary_indexlist_creation.py b/lbmpy_tests/test_boundary_indexlist_creation.py
index f0898dde..29493ca6 100644
--- a/lbmpy_tests/test_boundary_indexlist_creation.py
+++ b/lbmpy_tests/test_boundary_indexlist_creation.py
@@ -1,4 +1,5 @@
 import numpy as np
+
 import pystencils.boundaries.createindexlist as cil
 from lbmpy.stencils import get_stencil
 
diff --git a/lbmpy_tests/test_builtin_periodicity.py b/lbmpy_tests/test_builtin_periodicity.py
index cc1eca2f..35e4d307 100644
--- a/lbmpy_tests/test_builtin_periodicity.py
+++ b/lbmpy_tests/test_builtin_periodicity.py
@@ -1,4 +1,5 @@
 import numpy as np
+
 from lbmpy.geometry import get_shear_flow_velocity_field
 from lbmpy.scenarios import create_fully_periodic_flow
 
diff --git a/lbmpy_tests/test_chapman_enskog.py b/lbmpy_tests/test_chapman_enskog.py
index 8cabf4f2..66017350 100644
--- a/lbmpy_tests/test_chapman_enskog.py
+++ b/lbmpy_tests/test_chapman_enskog.py
@@ -1,16 +1,20 @@
+import functools
+
 import pytest
 import sympy as sp
-import functools
-from pystencils.fd import Diff, normalize_diff_order
-from pystencils.sympyextensions import multidimensional_sum
-from lbmpy.chapman_enskog.chapman_enskog_higher_order import determine_higher_order_moments, get_solvability_conditions
-from lbmpy.chapman_enskog.chapman_enskog_steady_state import SteadyStateChapmanEnskogAnalysisSRT, \
-    SteadyStateChapmanEnskogAnalysis
-from lbmpy.chapman_enskog.chapman_enskog import ChapmanEnskogAnalysis, LbMethodEqMoments, take_moments, \
-    get_taylor_expanded_lb_equation, chapman_enskog_ansatz
-from lbmpy.relaxationrates import lattice_viscosity_from_relaxation_rate
+
+from lbmpy.chapman_enskog.chapman_enskog import (
+    ChapmanEnskogAnalysis, LbMethodEqMoments, chapman_enskog_ansatz,
+    get_taylor_expanded_lb_equation, take_moments)
+from lbmpy.chapman_enskog.chapman_enskog_higher_order import (
+    determine_higher_order_moments, get_solvability_conditions)
+from lbmpy.chapman_enskog.chapman_enskog_steady_state import (
+    SteadyStateChapmanEnskogAnalysis, SteadyStateChapmanEnskogAnalysisSRT)
 from lbmpy.creationfunctions import create_lb_method
 from lbmpy.forcemodels import Guo
+from lbmpy.relaxationrates import lattice_viscosity_from_relaxation_rate
+from pystencils.fd import Diff, normalize_diff_order
+from pystencils.sympyextensions import multidimensional_sum
 
 
 def test_srt():
diff --git a/lbmpy_tests/test_code_hashequivalence.py b/lbmpy_tests/test_code_hashequivalence.py
index 62d2daaf..c7537c82 100644
--- a/lbmpy_tests/test_code_hashequivalence.py
+++ b/lbmpy_tests/test_code_hashequivalence.py
@@ -1,7 +1,8 @@
 from hashlib import sha256
+
+from lbmpy.creationfunctions import create_lb_ast
 from pystencils.backends.cbackend import generate_c
 from pystencils.llvm.llvmjit import generate_llvm
-from lbmpy.creationfunctions import create_lb_ast
 
 
 def test_hash_equivalence():
@@ -10,7 +11,7 @@ def test_hash_equivalence():
     exactly the same code (not only functionally equivalent code) should be produced.
     Due to undefined order in sets and dicts this may no be the case.
     """
-    ref_value = "bd20ebb3cb8ca2aa00128a0920c5c0fa5b1b15251111e5695c1759fe29849743"
+    ref_value = "2cde9763ab71a9d5caba056e6d0011e553fa01ab71668ee32024ce3f68e7d698"
     ast = create_lb_ast(stencil='D3Q19', method='srt', optimization={'openmp': False})
     code = generate_c(ast)
     hash_value = sha256(code.encode()).hexdigest()
diff --git a/lbmpy_tests/test_conserved_quantity_relaxation_invariance.py b/lbmpy_tests/test_conserved_quantity_relaxation_invariance.py
index d5b67639..fa36ab07 100644
--- a/lbmpy_tests/test_conserved_quantity_relaxation_invariance.py
+++ b/lbmpy_tests/test_conserved_quantity_relaxation_invariance.py
@@ -2,15 +2,17 @@
 The update equations should not change if a relaxation rate of a conserved quantity (density/velocity)
 changes. This test checks that for moment-based methods
 """
+from copy import copy
+
 import pytest
 import sympy as sp
-from copy import copy
-from lbmpy.methods.creationfunctions import create_srt, create_trt, create_trt_kbc, RelaxationInfo
+
+from lbmpy.methods.creationfunctions import RelaxationInfo, create_srt, create_trt, create_trt_kbc
 from lbmpy.methods.cumulantbased import CumulantBasedLbMethod
 from lbmpy.methods.momentbased import MomentBasedLbMethod
+from lbmpy.moments import MOMENT_SYMBOLS
 from lbmpy.simplificationfactory import create_simplification_strategy
 from lbmpy.stencils import get_stencil
-from lbmpy.moments import MOMENT_SYMBOLS
 
 
 def __change_relaxation_rate_of_conserved_moments(method, new_relaxation_rate=sp.Symbol("test_omega")):
diff --git a/lbmpy_tests/test_cpu_gpu_equivalence.py b/lbmpy_tests/test_cpu_gpu_equivalence.py
index f1749c9f..8efa1478 100644
--- a/lbmpy_tests/test_cpu_gpu_equivalence.py
+++ b/lbmpy_tests/test_cpu_gpu_equivalence.py
@@ -1,6 +1,8 @@
-import pytest
-import numpy as np
 from copy import deepcopy
+
+import numpy as np
+import pytest
+
 from lbmpy.scenarios import create_channel
 
 
diff --git a/lbmpy_tests/test_cumulants.py b/lbmpy_tests/test_cumulants.py
index 8fa17c1c..8dc4542e 100644
--- a/lbmpy_tests/test_cumulants.py
+++ b/lbmpy_tests/test_cumulants.py
@@ -1,8 +1,8 @@
 from lbmpy.creationfunctions import create_lb_method
-from lbmpy.moments import discrete_moment, exponents_to_polynomial_representations, \
-    exponent_to_polynomial_representation
-from lbmpy.stencils import get_stencil
 from lbmpy.cumulants import *
+from lbmpy.moments import (
+    discrete_moment, exponent_to_polynomial_representation, exponents_to_polynomial_representations)
+from lbmpy.stencils import get_stencil
 
 
 def test_cumulants_from_pdfs():
diff --git a/lbmpy_tests/test_entropic.py b/lbmpy_tests/test_entropic.py
index b08b49af..284570c1 100644
--- a/lbmpy_tests/test_entropic.py
+++ b/lbmpy_tests/test_entropic.py
@@ -1,5 +1,6 @@
 import numpy as np
 import sympy as sp
+
 from lbmpy.forcemodels import Guo
 from lbmpy.methods.entropic_eq_srt import create_srt_entropic
 from lbmpy.scenarios import create_lid_driven_cavity
diff --git a/lbmpy_tests/test_float_kernel.py b/lbmpy_tests/test_float_kernel.py
index 0099f787..ce8839c4 100644
--- a/lbmpy_tests/test_float_kernel.py
+++ b/lbmpy_tests/test_float_kernel.py
@@ -1,6 +1,6 @@
-from pystencils import show_code
-from lbmpy.scenarios import create_lid_driven_cavity
 from lbmpy.creationfunctions import create_lb_function
+from lbmpy.scenarios import create_lid_driven_cavity
+from pystencils import show_code
 
 
 def test_creation():
diff --git a/lbmpy_tests/test_force_on_boundary.py b/lbmpy_tests/test_force_on_boundary.py
index 13e9b589..11bb17ff 100644
--- a/lbmpy_tests/test_force_on_boundary.py
+++ b/lbmpy_tests/test_force_on_boundary.py
@@ -1,7 +1,8 @@
 import numpy as np
-from pystencils import make_slice
-from lbmpy.boundaries import NoSlip, UBB
+
+from lbmpy.boundaries import UBB, NoSlip
 from lbmpy.scenarios import create_channel
+from pystencils import make_slice
 
 try:
     import waLBerla as wLB
diff --git a/lbmpy_tests/test_geometry_setup_serial.py b/lbmpy_tests/test_geometry_setup_serial.py
index cafd3a1f..7c185fd8 100644
--- a/lbmpy_tests/test_geometry_setup_serial.py
+++ b/lbmpy_tests/test_geometry_setup_serial.py
@@ -1,10 +1,11 @@
-import numpy as np
 import os
 
+import numpy as np
+
+from lbmpy.boundaries import NoSlip
+from lbmpy.geometry import add_black_and_white_image, add_pipe_walls
 from lbmpy.lbstep import LatticeBoltzmannStep
 from pystencils.slicing import make_slice
-from lbmpy.geometry import add_pipe_walls, add_black_and_white_image
-from lbmpy.boundaries import NoSlip
 
 
 def test_pipe():
diff --git a/lbmpy_tests/test_html_output.py b/lbmpy_tests/test_html_output.py
index a5c481a1..d1a7f8df 100644
--- a/lbmpy_tests/test_html_output.py
+++ b/lbmpy_tests/test_html_output.py
@@ -1,6 +1,7 @@
 from lbmpy.creationfunctions import create_lb_method
 from lbmpy.methods.creationfunctions import compare_moment_based_lb_methods
-from lbmpy.moments import moment_equality_table_by_stencil, moment_equality_table, moments_up_to_component_order
+from lbmpy.moments import (
+    moment_equality_table, moment_equality_table_by_stencil, moments_up_to_component_order)
 from lbmpy.stencils import get_stencil
 
 
diff --git a/lbmpy_tests/test_lbstep.py b/lbmpy_tests/test_lbstep.py
index 447b8643..e4903446 100644
--- a/lbmpy_tests/test_lbstep.py
+++ b/lbmpy_tests/test_lbstep.py
@@ -1,6 +1,7 @@
-import pytest
 import numpy as np
-from lbmpy.scenarios import create_lid_driven_cavity, create_fully_periodic_flow
+import pytest
+
+from lbmpy.scenarios import create_fully_periodic_flow, create_lid_driven_cavity
 
 try:
     import pycuda.driver
diff --git a/lbmpy_tests/test_macroscopic_value_kernels.py b/lbmpy_tests/test_macroscopic_value_kernels.py
index c143ee6c..09a0d66d 100644
--- a/lbmpy_tests/test_macroscopic_value_kernels.py
+++ b/lbmpy_tests/test_macroscopic_value_kernels.py
@@ -1,6 +1,8 @@
 import numpy as np
+
 from lbmpy.creationfunctions import create_lb_method
-from lbmpy.macroscopic_value_kernels import compile_macroscopic_values_getter, compile_macroscopic_values_setter
+from lbmpy.macroscopic_value_kernels import (
+    compile_macroscopic_values_getter, compile_macroscopic_values_setter)
 
 
 def test_set_get_density_velocity_with_fields():
@@ -51,4 +53,3 @@ def test_set_get_constant_velocity():
                     computed_velocity = velocity_output_field[0, 0, 0, :]
 
                 np.testing.assert_almost_equal(np.array(ref_velocity[:method.dim]), computed_velocity)
-
diff --git a/lbmpy_tests/test_maxwellian_equilibrium.py b/lbmpy_tests/test_maxwellian_equilibrium.py
index 202e37a6..4410f76d 100644
--- a/lbmpy_tests/test_maxwellian_equilibrium.py
+++ b/lbmpy_tests/test_maxwellian_equilibrium.py
@@ -1,8 +1,9 @@
+from lbmpy.cumulants import raw_moment_as_function_of_cumulants
 from lbmpy.maxwellian_equilibrium import *
-from lbmpy.moments import MOMENT_SYMBOLS, moments_up_to_order, moments_up_to_component_order, moment_matrix, \
-    exponents_to_polynomial_representations
+from lbmpy.moments import (
+    MOMENT_SYMBOLS, exponents_to_polynomial_representations, moment_matrix,
+    moments_up_to_component_order, moments_up_to_order)
 from lbmpy.stencils import get_stencil
-from lbmpy.cumulants import raw_moment_as_function_of_cumulants
 from pystencils.sympyextensions import remove_higher_order_terms
 
 
diff --git a/lbmpy_tests/test_momentbased_methods_equilibrium.py b/lbmpy_tests/test_momentbased_methods_equilibrium.py
index b69f020b..843685bc 100644
--- a/lbmpy_tests/test_momentbased_methods_equilibrium.py
+++ b/lbmpy_tests/test_momentbased_methods_equilibrium.py
@@ -4,11 +4,12 @@ This test checks if the equilibrium formula obtained by this method is the same
 given discrete_maxwellian_equilibrium
 """
 import sympy as sp
-from lbmpy.methods import create_srt, create_trt, create_mrt_orthogonal
+
+from lbmpy.creationfunctions import create_lb_method
 from lbmpy.maxwellian_equilibrium import discrete_maxwellian_equilibrium
+from lbmpy.methods import create_mrt_orthogonal, create_srt, create_trt
 from lbmpy.relaxationrates import get_shear_relaxation_rate
 from lbmpy.stencils import get_stencil
-from lbmpy.creationfunctions import create_lb_method
 
 
 def check_for_matching_equilibrium(method_name, stencil, compressibility):
diff --git a/lbmpy_tests/test_moments.py b/lbmpy_tests/test_moments.py
index 8e0b1c0a..79d96ef4 100644
--- a/lbmpy_tests/test_moments.py
+++ b/lbmpy_tests/test_moments.py
@@ -1,5 +1,5 @@
-from lbmpy.stencils import get_stencil
 from lbmpy.moments import *
+from lbmpy.stencils import get_stencil
 
 
 def test_moment_permutation_multiplicity():
diff --git a/lbmpy_tests/test_phase_field_scenarios.py b/lbmpy_tests/test_phase_field_scenarios.py
index d20f2975..44e61d7c 100644
--- a/lbmpy_tests/test_phase_field_scenarios.py
+++ b/lbmpy_tests/test_phase_field_scenarios.py
@@ -1,14 +1,17 @@
 import os
 import warnings
 from tempfile import TemporaryDirectory
+
 import numpy as np
 import sympy as sp
-from lbmpy.phasefield.phasefieldstep import PhaseFieldStep
+
+from lbmpy.boundaries import NoSlip
 from lbmpy.phasefield.analytical import free_energy_functional_n_phases_penalty_term
+from lbmpy.phasefield.experiments2D import (
+    create_two_drops_between_phases, write_phase_field_picture_sequence,
+    write_phase_velocity_picture_sequence)
+from lbmpy.phasefield.phasefieldstep import PhaseFieldStep
 from pystencils import make_slice
-from lbmpy.boundaries import NoSlip
-from lbmpy.phasefield.experiments2D import create_two_drops_between_phases, write_phase_field_picture_sequence, \
-    write_phase_velocity_picture_sequence
 
 
 def create_falling_drop(domain_size=(160, 200), omega=1.9, kappas=(0.001, 0.001, 0.0005), **kwargs):
diff --git a/lbmpy_tests/test_phasefield.py b/lbmpy_tests/test_phasefield.py
index d7377abd..447c58b4 100644
--- a/lbmpy_tests/test_phasefield.py
+++ b/lbmpy_tests/test_phasefield.py
@@ -1,10 +1,11 @@
 import sympy as sp
 
+from lbmpy.phasefield.analytical import (
+    analytic_interface_profile, chemical_potentials_from_free_energy, cosh_integral,
+    force_from_phi_and_mu, force_from_pressure_tensor, free_energy_functional_n_phases,
+    pressure_tensor_from_free_energy, substitute_laplacian_by_sum, symbolic_order_parameters,
+    symmetric_symbolic_surface_tension)
 from pystencils.fd import evaluate_diffs, expand_diff_full
-from lbmpy.phasefield.analytical import free_energy_functional_n_phases, symbolic_order_parameters, \
-    analytic_interface_profile, symmetric_symbolic_surface_tension, chemical_potentials_from_free_energy, \
-    cosh_integral, pressure_tensor_from_free_energy, force_from_pressure_tensor, force_from_phi_and_mu, \
-    substitute_laplacian_by_sum
 
 
 def test_analytic_interface_solution():
diff --git a/lbmpy_tests/test_phasefield_scenarios.py b/lbmpy_tests/test_phasefield_scenarios.py
index a45d8e7e..001b535e 100644
--- a/lbmpy_tests/test_phasefield_scenarios.py
+++ b/lbmpy_tests/test_phasefield_scenarios.py
@@ -1,5 +1,5 @@
-from pystencils import make_slice
 from lbmpy.phasefield.scenarios import *
+from pystencils import make_slice
 
 
 def test_setup():
diff --git a/lbmpy_tests/test_plot.py b/lbmpy_tests/test_plot.py
index dd241af3..2c5e1386 100644
--- a/lbmpy_tests/test_plot.py
+++ b/lbmpy_tests/test_plot.py
@@ -1,8 +1,10 @@
 import os
-import numpy as np
 from tempfile import TemporaryDirectory
-from lbmpy.scenarios import create_lid_driven_cavity
+
+import numpy as np
+
 import lbmpy.plot as plt
+from lbmpy.scenarios import create_lid_driven_cavity
 
 
 def test_animation():
diff --git a/lbmpy_tests/test_postprocessing.py b/lbmpy_tests/test_postprocessing.py
index 52608237..a72cd351 100644
--- a/lbmpy_tests/test_postprocessing.py
+++ b/lbmpy_tests/test_postprocessing.py
@@ -1,4 +1,5 @@
 import numpy as np
+
 from lbmpy.postprocessing import scalar_field_interpolator, vector_field_interpolator
 
 
diff --git a/lbmpy_tests/test_relaxation_rate.py b/lbmpy_tests/test_relaxation_rate.py
index 25fbe420..1d8fb6a0 100644
--- a/lbmpy_tests/test_relaxation_rate.py
+++ b/lbmpy_tests/test_relaxation_rate.py
@@ -1,4 +1,5 @@
 import pytest
+
 from lbmpy.creationfunctions import create_lb_method
 from lbmpy.relaxationrates import get_shear_relaxation_rate
 
diff --git a/lbmpy_tests/test_scaling_widget.py b/lbmpy_tests/test_scaling_widget.py
index ee79981a..8acc2737 100644
--- a/lbmpy_tests/test_scaling_widget.py
+++ b/lbmpy_tests/test_scaling_widget.py
@@ -1,4 +1,4 @@
-from lbmpy.parameterization import ScalingWidget, Scaling
+from lbmpy.parameterization import Scaling, ScalingWidget
 
 
 def test_scaling_widget():
diff --git a/lbmpy_tests/test_serial_scenarios.py b/lbmpy_tests/test_serial_scenarios.py
index 6f2bf956..ac05a0c2 100644
--- a/lbmpy_tests/test_serial_scenarios.py
+++ b/lbmpy_tests/test_serial_scenarios.py
@@ -1,8 +1,10 @@
 import os
+from types import MappingProxyType
+
 import numpy as np
+
 from lbmpy.scenarios import create_lid_driven_cavity as run_ldc_lbmpy
 from pystencils import make_slice
-from types import MappingProxyType
 
 
 def create_force_driven_channel(force=1e-6, domain_size=None, dim=2, radius=None, length=None,
diff --git a/lbmpy_tests/test_simple_equilibrium_conservation.py b/lbmpy_tests/test_simple_equilibrium_conservation.py
index 3adb861f..5cba7a36 100644
--- a/lbmpy_tests/test_simple_equilibrium_conservation.py
+++ b/lbmpy_tests/test_simple_equilibrium_conservation.py
@@ -1,4 +1,5 @@
 import numpy as np
+
 from lbmpy.creationfunctions import create_lb_function
 
 
diff --git a/lbmpy_tests/test_split_optimization.py b/lbmpy_tests/test_split_optimization.py
index 76342617..5528cae0 100644
--- a/lbmpy_tests/test_split_optimization.py
+++ b/lbmpy_tests/test_split_optimization.py
@@ -1,8 +1,9 @@
-import pytest
 import numpy as np
-from pystencils.sympyextensions import count_operations_in_ast
+import pytest
+
 from lbmpy.creationfunctions import create_lb_ast
 from lbmpy.scenarios import create_lid_driven_cavity
+from pystencils.sympyextensions import count_operations_in_ast
 
 
 def test_split_number_of_operations():
diff --git a/lbmpy_tests/test_srt_trt_simplifications.py b/lbmpy_tests/test_srt_trt_simplifications.py
index a95247de..0ab30686 100644
--- a/lbmpy_tests/test_srt_trt_simplifications.py
+++ b/lbmpy_tests/test_srt_trt_simplifications.py
@@ -5,8 +5,8 @@ known acceptable values.
 import sympy as sp
 
 from lbmpy.forcemodels import Guo
-from lbmpy.simplificationfactory import create_simplification_strategy
 from lbmpy.methods import create_srt, create_trt, create_trt_with_magic_number
+from lbmpy.simplificationfactory import create_simplification_strategy
 from lbmpy.stencils import get_stencil
 
 
diff --git a/lbmpy_tests/test_stencils.py b/lbmpy_tests/test_stencils.py
index 4449c094..253c321b 100644
--- a/lbmpy_tests/test_stencils.py
+++ b/lbmpy_tests/test_stencils.py
@@ -1,9 +1,11 @@
-import pytest
 import itertools
 import warnings
+
+import pytest
 import sympy as sp
-import pystencils as ps
+
 import lbmpy.stencils as s
+import pystencils as ps
 from lbmpy.stencils import get_stencil
 
 
diff --git a/lbmpy_tests/test_vectorization.py b/lbmpy_tests/test_vectorization.py
index ce92f54f..6d34bb1d 100644
--- a/lbmpy_tests/test_vectorization.py
+++ b/lbmpy_tests/test_vectorization.py
@@ -1,5 +1,6 @@
-import pytest
 import numpy as np
+import pytest
+
 from lbmpy.scenarios import create_lid_driven_cavity
 
 
diff --git a/lbmpy_tests/walberla_scenario_setup.py b/lbmpy_tests/walberla_scenario_setup.py
index a9624b25..233ac449 100644
--- a/lbmpy_tests/walberla_scenario_setup.py
+++ b/lbmpy_tests/walberla_scenario_setup.py
@@ -1,5 +1,5 @@
 import waLBerla.field as field
-from waLBerla import makeSlice, createUniformBufferedScheme, createUniformBlockGrid
+from waLBerla import createUniformBlockGrid, createUniformBufferedScheme, makeSlice
 
 
 def create_walberla_lattice_model(stencil, method, relaxation_rates, compressible=False, order=2,
-- 
GitLab