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