From 46111122da128efd71bf6a14280dc23117701621 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Robert?= Date: Thu, 2 Apr 2026 15:27:19 +0200 Subject: [PATCH 1/4] MNT: move ruff config to ruff.toml --- .pre-commit-config.yaml | 17 +++-------------- ruff.toml | 14 ++++++++++++++ 2 files changed, 17 insertions(+), 14 deletions(-) create mode 100644 ruff.toml diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 534106d8..9df5af9d 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -28,21 +28,10 @@ repos: - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.6.9 + rev: v0.15.8 hooks: - - id: ruff - args: - - --quiet - - --fix - - --select - - F # pyflakes - - B # flake8-bugbear - - I # isort - - NPY # numpy-specific rules - - --ignore - - F405 - - --ignore - - F403 # ignore import * + - id: ruff-check + args: [--quiet, --fix, --show-fixes] - repo: https://github.com/la-niche/inifix-pre-commit rev: v1.0.0 diff --git a/ruff.toml b/ruff.toml new file mode 100644 index 00000000..9309cada --- /dev/null +++ b/ruff.toml @@ -0,0 +1,14 @@ +target-version = "py310" + +[lint] +select = [ + "F", # pyflakes + "B", # flake8-bugbear + "I", # isort + "NPY", # numpy-specific rules +] +ignore = [ + # allow `import *` + "F403", # undefined-local-with-import-star + "F405", # undefined-local-with-import-star-usage +] \ No newline at end of file From 6e5059f72b3ea3667a99fd32ba4b866af9537474 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Robert?= Date: Thu, 2 Apr 2026 15:29:50 +0200 Subject: [PATCH 2/4] STY: apply ruff autofixes --- doc/source/plot_idefix_bench.py | 4 +++- pytools/idfx_io.py | 1 - pytools/idfx_test.py | 7 ++++--- pytools/idfx_test_gen.py | 1 + pytools/idfx_test_run.py | 13 ++++++++----- pytools/sod.py | 2 +- pytools/tests/test_idfx_test_gen.py | 4 +++- pytools/tests/test_idfx_test_run.py | 7 +++++-- pytools/vtk_io.py | 5 +++-- ruff.toml | 2 +- test.py | 1 + test/Dust/DustEnergy/python/testidefix.py | 5 +++-- test/Dust/DustEnergy/testme.py | 1 + test/Dust/DustyShock/python/testidefix.py | 7 +++++-- test/Dust/DustyShock/testme.py | 1 + test/Dust/DustyWave/python/testidefix.py | 5 +++-- test/Dust/DustyWave/testme.py | 1 + test/HD/FargoPlanet/testme.py | 2 ++ test/HD/MachReflection/testme.py | 2 ++ test/HD/SedovBlastWave/python/testidefix.py | 7 +++++-- test/HD/SedovBlastWave/testme.py | 1 + test/HD/ShearingBox/python/testidefix.py | 6 ++++-- test/HD/ShearingBox/testme.py | 2 ++ test/HD/ViscousDisk/python/testidefix.py | 7 +++++-- test/HD/ViscousDisk/testme.py | 2 ++ test/HD/ViscousFlowPastCylinder/testme.py | 2 ++ test/HD/sod-iso/python/testidefix.py | 9 ++++++--- test/HD/sod-iso/testme.py | 1 + test/HD/sod/pydefix_example.py | 5 +++-- test/HD/sod/python/testidefix.py | 9 ++++++--- test/HD/sod/testme.py | 1 + test/HD/thermalDiffusion/python/testidefix.py | 5 +++-- test/HD/thermalDiffusion/testme.py | 2 ++ test/IO/dump/testme.py | 1 + test/IO/pydefix/pydefix_example.py | 5 +++-- test/IO/pydefix/testme.py | 2 ++ test/IO/xdmf/testme.py | 1 + test/MHD/AmbipolarCshock/python/testidefix.py | 11 +++++++---- test/MHD/AmbipolarCshock/testme.py | 2 ++ test/MHD/AmbipolarCshock3D/python/testidefix.py | 11 +++++++---- test/MHD/AmbipolarCshock3D/testme.py | 2 ++ test/MHD/AmbipolarShearingBox/python/testidefix.py | 6 ++++-- test/MHD/AxisFluxTube/python/checkAxisBounds.py | 4 +++- test/MHD/AxisFluxTube/testme.py | 1 + test/MHD/Coarsening/python/testidefix.py | 9 ++++++--- test/MHD/Coarsening/testme.py | 1 + test/MHD/FargoMHDSpherical/testme.py | 1 + test/MHD/HallWhistler/python/testidefix.py | 5 +++-- test/MHD/HallWhistler/testme.py | 1 + test/MHD/LinearWaveTest/python/testidefix.py | 12 ++++++++---- test/MHD/LinearWaveTest/testme.py | 2 ++ test/MHD/MTI/python/testidefix.py | 3 ++- test/MHD/MTI/testme.py | 1 + test/MHD/OrszagTang/testme.py | 2 ++ test/MHD/OrszagTang3D/testme.py | 1 + test/MHD/ResistiveAlfvenWave/python/testidefix.py | 5 +++-- test/MHD/ResistiveAlfvenWave/testme.py | 2 ++ test/MHD/ShearingBox/python/testidefix.py | 6 ++++-- test/MHD/ShearingBox/testme.py | 2 ++ test/MHD/clessTDiffusion/python/testidefix.py | 6 ++++-- test/MHD/clessTDiffusion/testme.py | 1 + test/MHD/sod-iso/testme.py | 1 + test/MHD/sod/testme.py | 1 + test/MHD/sphBragTDiffusion/python/testidefix.py | 6 ++++-- test/MHD/sphBragTDiffusion/testme.py | 1 + test/MHD/sphBragViscosity/python/testidefix.py | 6 ++++-- test/MHD/sphBragViscosity/testme.py | 1 + test/Planet/Planet3Body/python/testidefix.py | 2 ++ test/Planet/Planet3Body/testme.py | 1 + test/Planet/PlanetMigration2D/python/testidefix.py | 2 ++ test/Planet/PlanetMigration2D/testme.py | 1 + test/Planet/PlanetPlanetRK42D/python/testidefix.py | 4 +++- test/Planet/PlanetPlanetRK42D/testme.py | 1 + test/Planet/PlanetSpiral2D/python/testidefix.py | 9 +++++---- test/Planet/PlanetSpiral2D/testme.py | 1 + test/Planet/PlanetTorque3D/python/testidefix.py | 2 ++ test/Planet/PlanetTorque3D/testme.py | 1 + .../PlanetsIsActiveRK52D/python/testidefix.py | 2 ++ test/Planet/PlanetsIsActiveRK52D/testme.py | 1 + test/Pluto/HD/sod/python/idefixTools.py | 2 ++ test/Pluto/HD/sod/python/sod.py | 2 +- test/Pluto/HD/sod/python/testidefix.py | 9 +++++---- test/SelfGravity/DustyCollapse/python/testidefix.py | 3 ++- test/SelfGravity/DustyCollapse/testme.py | 1 + .../JeansInstability/python/testidefix.py | 4 +++- test/SelfGravity/JeansInstability/testme.py | 1 + test/SelfGravity/RandomSphere/python/testidefix.py | 5 +++-- test/SelfGravity/RandomSphere/testme.py | 2 ++ .../RandomSphereCartesian/python/testidefix.py | 5 +++-- test/SelfGravity/RandomSphereCartesian/testme.py | 2 ++ .../UniformCollapse/python/testidefix.py | 4 +++- test/SelfGravity/UniformCollapse/testme.py | 1 + test/utils/columnDensity/testme.py | 1 + test/utils/dumpImage/testme.py | 1 + test/utils/lookupTable/testme.py | 3 +++ 95 files changed, 236 insertions(+), 89 deletions(-) diff --git a/doc/source/plot_idefix_bench.py b/doc/source/plot_idefix_bench.py index 43482eb0..baa74ac8 100644 --- a/doc/source/plot_idefix_bench.py +++ b/doc/source/plot_idefix_bench.py @@ -1,6 +1,8 @@ -import matplotlib.pyplot as plt import json +import matplotlib.pyplot as plt + + def do_plot(title, bench_file, gpumodels): with open(bench_file, 'r') as f: benches = json.load(f) diff --git a/pytools/idfx_io.py b/pytools/idfx_io.py index 17dc6272..007f6b7a 100644 --- a/pytools/idfx_io.py +++ b/pytools/idfx_io.py @@ -2,7 +2,6 @@ import numpy as np - __all__ = ["readIdfxFile"] # Read .idfx files which are created # for debug purposes by DataBlock.DumpToFile(std::string&) diff --git a/pytools/idfx_test.py b/pytools/idfx_test.py index be35e78e..41e38c6f 100644 --- a/pytools/idfx_test.py +++ b/pytools/idfx_test.py @@ -1,16 +1,17 @@ import argparse +import json import os +import re import shutil import subprocess import sys -import re -import json -import numpy as np import matplotlib.pyplot as plt +import numpy as np from .dump_io import readDump + class bcolors: HEADER = '\033[95m' OKBLUE = '\033[94m' diff --git a/pytools/idfx_test_gen.py b/pytools/idfx_test_gen.py index e45f927d..73a8b71d 100644 --- a/pytools/idfx_test_gen.py +++ b/pytools/idfx_test_gen.py @@ -6,6 +6,7 @@ ##################################################################################### import copy + import pytest DO_NOT_LOOP_ON = ['restart_no_overwrite', "dec", "multirun", "check_file_produced"] diff --git a/pytools/idfx_test_run.py b/pytools/idfx_test_run.py index a4ad268d..362a0ff2 100644 --- a/pytools/idfx_test_run.py +++ b/pytools/idfx_test_run.py @@ -5,16 +5,19 @@ # Licensed under CeCILL 2.1 License, see COPYING for more information ##################################################################################### +import copy +import glob +import json import os import sys -import json -import glob -import copy +from contextlib import contextmanager + import pytest + # idefix test class import pytools.idfx_test as tst -from pytools.idfx_test_gen import IdefixDirTestGenerator -from contextlib import contextmanager +from pytools.idfx_test_gen import IdefixDirTestGenerator + @contextmanager def moveInDir(path): diff --git a/pytools/sod.py b/pytools/sod.py index 07a60d2c..ba0e1631 100644 --- a/pytools/sod.py +++ b/pytools/sod.py @@ -264,7 +264,7 @@ def solve(left_state, right_state, geometry, t, gamma=1.4, npts=500, pos_description = ('Head of Rarefaction', 'Foot of Rarefaction', 'Contact Discontinuity', 'Shock') - positions = dict(zip(pos_description, x_positions)) + positions = dict(zip(pos_description, x_positions, strict=True)) # create arrays x, p, rho, u = create_arrays(pl, pr, xl, xr, x_positions, diff --git a/pytools/tests/test_idfx_test_gen.py b/pytools/tests/test_idfx_test_gen.py index fc4f6261..d92a7d48 100644 --- a/pytools/tests/test_idfx_test_gen.py +++ b/pytools/tests/test_idfx_test_gen.py @@ -5,9 +5,11 @@ # Licensed under CeCILL 2.1 License, see COPYING for more information ##################################################################################### -from ..idfx_test_gen import IdefixDirTestGenerator import pytest +from ..idfx_test_gen import IdefixDirTestGenerator + + def test_extractNamingParameters(): # build generator gen = IdefixDirTestGenerator(__file__, "unit-test") diff --git a/pytools/tests/test_idfx_test_run.py b/pytools/tests/test_idfx_test_run.py index 8843705e..58dc31eb 100644 --- a/pytools/tests/test_idfx_test_run.py +++ b/pytools/tests/test_idfx_test_run.py @@ -5,10 +5,13 @@ # Licensed under CeCILL 2.1 License, see COPYING for more information ##################################################################################### -from ..idfx_test_run import IdexPytestRunner -import pytest import os +import pytest + +from ..idfx_test_run import IdexPytestRunner + + def test_genTests(): # build runner runner = IdexPytestRunner(__file__) diff --git a/pytools/vtk_io.py b/pytools/vtk_io.py index eb5cf412..3a08836d 100644 --- a/pytools/vtk_io.py +++ b/pytools/vtk_io.py @@ -4,10 +4,11 @@ @author: glesur """ -import warnings -import numpy as np import os import re +import warnings + +import numpy as np # restrict what's included with `import *` to public API __all__ = [ diff --git a/ruff.toml b/ruff.toml index 9309cada..9b6b6c62 100644 --- a/ruff.toml +++ b/ruff.toml @@ -11,4 +11,4 @@ ignore = [ # allow `import *` "F403", # undefined-local-with-import-star "F405", # undefined-local-with-import-star-usage -] \ No newline at end of file +] diff --git a/test.py b/test.py index 6ded87fa..081d3166 100755 --- a/test.py +++ b/test.py @@ -2,6 +2,7 @@ import os import sys + import pytest # set IDEFIX_DIR diff --git a/test/Dust/DustEnergy/python/testidefix.py b/test/Dust/DustEnergy/python/testidefix.py index d7d766a1..14b64e00 100755 --- a/test/Dust/DustEnergy/python/testidefix.py +++ b/test/Dust/DustEnergy/python/testidefix.py @@ -5,10 +5,11 @@ @author: lesurg """ -import sys -import numpy as np import argparse +import sys + import matplotlib.pyplot as plt +import numpy as np parser = argparse.ArgumentParser() parser.add_argument("-noplot", diff --git a/test/Dust/DustEnergy/testme.py b/test/Dust/DustEnergy/testme.py index 12d476b6..1d997a4b 100755 --- a/test/Dust/DustEnergy/testme.py +++ b/test/Dust/DustEnergy/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/Dust/DustyShock/python/testidefix.py b/test/Dust/DustyShock/python/testidefix.py index 8fca15a3..df575bfe 100755 --- a/test/Dust/DustyShock/python/testidefix.py +++ b/test/Dust/DustyShock/python/testidefix.py @@ -8,13 +8,16 @@ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) -from pytools.vtk_io import readVTK import argparse -import numpy as np + import matplotlib.pyplot as plt +import numpy as np from scipy.integrate import solve_ivp +from pytools.vtk_io import readVTK + parser = argparse.ArgumentParser() parser.add_argument("-noplot", default=False, diff --git a/test/Dust/DustyShock/testme.py b/test/Dust/DustyShock/testme.py index 622f3477..b3cfab71 100755 --- a/test/Dust/DustyShock/testme.py +++ b/test/Dust/DustyShock/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/Dust/DustyWave/python/testidefix.py b/test/Dust/DustyWave/python/testidefix.py index ad52d330..1c386e6b 100755 --- a/test/Dust/DustyWave/python/testidefix.py +++ b/test/Dust/DustyWave/python/testidefix.py @@ -5,10 +5,11 @@ @author: lesurg """ -import sys -import numpy as np import argparse +import sys + import matplotlib.pyplot as plt +import numpy as np parser = argparse.ArgumentParser() parser.add_argument("-noplot", diff --git a/test/Dust/DustyWave/testme.py b/test/Dust/DustyWave/testme.py index 622f3477..b3cfab71 100755 --- a/test/Dust/DustyWave/testme.py +++ b/test/Dust/DustyWave/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/HD/FargoPlanet/testme.py b/test/HD/FargoPlanet/testme.py index b25a74bb..5a036444 100755 --- a/test/HD/FargoPlanet/testme.py +++ b/test/HD/FargoPlanet/testme.py @@ -6,9 +6,11 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst + tolerance=1e-13 def testMe(test): test.configure() diff --git a/test/HD/MachReflection/testme.py b/test/HD/MachReflection/testme.py index 7e612181..cc8cf72e 100755 --- a/test/HD/MachReflection/testme.py +++ b/test/HD/MachReflection/testme.py @@ -6,10 +6,12 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst + def testMe(test): test.configure() test.compile() diff --git a/test/HD/SedovBlastWave/python/testidefix.py b/test/HD/SedovBlastWave/python/testidefix.py index a78bc88e..40d39a79 100755 --- a/test/HD/SedovBlastWave/python/testidefix.py +++ b/test/HD/SedovBlastWave/python/testidefix.py @@ -8,13 +8,16 @@ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) -from pytools.vtk_io import readVTK import argparse -import numpy as np + import matplotlib.pyplot as plt +import numpy as np from scipy.interpolate import interp1d +from pytools.vtk_io import readVTK + parser = argparse.ArgumentParser() parser.add_argument("-noplot", default=False, diff --git a/test/HD/SedovBlastWave/testme.py b/test/HD/SedovBlastWave/testme.py index c3ef7025..b75c7c6e 100755 --- a/test/HD/SedovBlastWave/testme.py +++ b/test/HD/SedovBlastWave/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/HD/ShearingBox/python/testidefix.py b/test/HD/ShearingBox/python/testidefix.py index 1a0c2509..d7656187 100755 --- a/test/HD/ShearingBox/python/testidefix.py +++ b/test/HD/ShearingBox/python/testidefix.py @@ -5,11 +5,13 @@ @author: lesurg """ +import argparse import sys -import numpy as np + import matplotlib.pyplot as plt +import numpy as np from scipy.integrate import solve_ivp -import argparse + #compute theoretical solution (from Balbus & Hawley 2006, using notations from Lesur 2021) def rhs(t, y, Omega, q, k0x, k0y, k0z): diff --git a/test/HD/ShearingBox/testme.py b/test/HD/ShearingBox/testme.py index 18c79265..c69954af 100755 --- a/test/HD/ShearingBox/testme.py +++ b/test/HD/ShearingBox/testme.py @@ -6,9 +6,11 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst + tolerance=1e-15 def testMe(test): test.configure() diff --git a/test/HD/ViscousDisk/python/testidefix.py b/test/HD/ViscousDisk/python/testidefix.py index 39e3666e..8ee0d349 100755 --- a/test/HD/ViscousDisk/python/testidefix.py +++ b/test/HD/ViscousDisk/python/testidefix.py @@ -8,11 +8,14 @@ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) -from pytools.vtk_io import readVTK -import numpy as np import argparse + import matplotlib.pyplot as plt +import numpy as np + +from pytools.vtk_io import readVTK parser = argparse.ArgumentParser() parser.add_argument("-noplot", diff --git a/test/HD/ViscousDisk/testme.py b/test/HD/ViscousDisk/testme.py index 34628fd8..0c74c78e 100755 --- a/test/HD/ViscousDisk/testme.py +++ b/test/HD/ViscousDisk/testme.py @@ -6,9 +6,11 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst + tolerance=3e-15 def testMe(test): test.configure() diff --git a/test/HD/ViscousFlowPastCylinder/testme.py b/test/HD/ViscousFlowPastCylinder/testme.py index 832a80e5..7033ae82 100755 --- a/test/HD/ViscousFlowPastCylinder/testme.py +++ b/test/HD/ViscousFlowPastCylinder/testme.py @@ -6,9 +6,11 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst + tolerance=3e-14 def testMe(test): test.configure() diff --git a/test/HD/sod-iso/python/testidefix.py b/test/HD/sod-iso/python/testidefix.py index ec91c63e..94b06c0f 100755 --- a/test/HD/sod-iso/python/testidefix.py +++ b/test/HD/sod-iso/python/testidefix.py @@ -8,14 +8,17 @@ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) -from pytools.vtk_io import readVTK -from pytools import sod import argparse -import numpy as np + import matplotlib.pyplot as plt +import numpy as np from scipy.interpolate import interp1d +from pytools import sod +from pytools.vtk_io import readVTK + parser = argparse.ArgumentParser() parser.add_argument("-noplot", default=False, diff --git a/test/HD/sod-iso/testme.py b/test/HD/sod-iso/testme.py index 109109ba..2a0257ca 100755 --- a/test/HD/sod-iso/testme.py +++ b/test/HD/sod-iso/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/HD/sod/pydefix_example.py b/test/HD/sod/pydefix_example.py index 58d73642..937159f8 100644 --- a/test/HD/sod/pydefix_example.py +++ b/test/HD/sod/pydefix_example.py @@ -1,6 +1,7 @@ -import pydefix as pdfx -import numpy as np import matplotlib.pyplot as plt +import numpy as np +import pydefix as pdfx + def output(data): diff --git a/test/HD/sod/python/testidefix.py b/test/HD/sod/python/testidefix.py index 899218b1..3ba7a000 100755 --- a/test/HD/sod/python/testidefix.py +++ b/test/HD/sod/python/testidefix.py @@ -8,14 +8,17 @@ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) -from pytools.vtk_io import readVTK -from pytools import sod import argparse -import numpy as np + import matplotlib.pyplot as plt +import numpy as np from scipy.interpolate import interp1d +from pytools import sod +from pytools.vtk_io import readVTK + parser = argparse.ArgumentParser() parser.add_argument("-noplot", default=False, diff --git a/test/HD/sod/testme.py b/test/HD/sod/testme.py index 109109ba..2a0257ca 100755 --- a/test/HD/sod/testme.py +++ b/test/HD/sod/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/HD/thermalDiffusion/python/testidefix.py b/test/HD/thermalDiffusion/python/testidefix.py index 126c0be0..e032a532 100755 --- a/test/HD/thermalDiffusion/python/testidefix.py +++ b/test/HD/thermalDiffusion/python/testidefix.py @@ -1,10 +1,11 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- -import sys -import numpy as np import argparse +import sys + import matplotlib.pyplot as plt +import numpy as np parser = argparse.ArgumentParser() parser.add_argument("-noplot", diff --git a/test/HD/thermalDiffusion/testme.py b/test/HD/thermalDiffusion/testme.py index 1d1a181b..ead248b0 100755 --- a/test/HD/thermalDiffusion/testme.py +++ b/test/HD/thermalDiffusion/testme.py @@ -6,10 +6,12 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst + def testMe(test): test.configure() test.compile() diff --git a/test/IO/dump/testme.py b/test/IO/dump/testme.py index 25e84433..41b0f277 100755 --- a/test/IO/dump/testme.py +++ b/test/IO/dump/testme.py @@ -5,6 +5,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/IO/pydefix/pydefix_example.py b/test/IO/pydefix/pydefix_example.py index a08e8646..788518b2 100644 --- a/test/IO/pydefix/pydefix_example.py +++ b/test/IO/pydefix/pydefix_example.py @@ -1,6 +1,7 @@ -from pydefix import * -import numpy as np import matplotlib.pyplot as plt +import numpy as np +from pydefix import * + # The output function # the only argument is dataBlockHost python object, wrapping a dataBlockHost Idefix object diff --git a/test/IO/pydefix/testme.py b/test/IO/pydefix/testme.py index 2940e56d..1e280af5 100755 --- a/test/IO/pydefix/testme.py +++ b/test/IO/pydefix/testme.py @@ -6,9 +6,11 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst + tolerance=1e-12 def testMe(test): test.configure() diff --git a/test/IO/xdmf/testme.py b/test/IO/xdmf/testme.py index 6273bbe0..757b758f 100755 --- a/test/IO/xdmf/testme.py +++ b/test/IO/xdmf/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/MHD/AmbipolarCshock/python/testidefix.py b/test/MHD/AmbipolarCshock/python/testidefix.py index 8c95dbb1..fe780c81 100755 --- a/test/MHD/AmbipolarCshock/python/testidefix.py +++ b/test/MHD/AmbipolarCshock/python/testidefix.py @@ -5,15 +5,18 @@ @author: lesurg """ -import numpy as np -from scipy.integrate import ode -import matplotlib.pyplot as plt import os import sys + +import matplotlib.pyplot as plt +import numpy as np +from scipy.integrate import ode + sys.path.append(os.getenv("IDEFIX_DIR")) -from pytools.vtk_io import readVTK import argparse +from pytools.vtk_io import readVTK + parser = argparse.ArgumentParser() parser.add_argument("-noplot", default=False, diff --git a/test/MHD/AmbipolarCshock/testme.py b/test/MHD/AmbipolarCshock/testme.py index 0e2f0815..b8bd6945 100755 --- a/test/MHD/AmbipolarCshock/testme.py +++ b/test/MHD/AmbipolarCshock/testme.py @@ -6,9 +6,11 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst + tolerance=0 def testMe(test): diff --git a/test/MHD/AmbipolarCshock3D/python/testidefix.py b/test/MHD/AmbipolarCshock3D/python/testidefix.py index a7354fba..c151dd78 100755 --- a/test/MHD/AmbipolarCshock3D/python/testidefix.py +++ b/test/MHD/AmbipolarCshock3D/python/testidefix.py @@ -5,15 +5,18 @@ @author: lesurg """ -import numpy as np -from scipy.integrate import ode -import matplotlib.pyplot as plt import os import sys + +import matplotlib.pyplot as plt +import numpy as np +from scipy.integrate import ode + sys.path.append(os.getenv("IDEFIX_DIR")) -from pytools.vtk_io import readVTK import argparse +from pytools.vtk_io import readVTK + parser = argparse.ArgumentParser() parser.add_argument("-noplot", default=False, diff --git a/test/MHD/AmbipolarCshock3D/testme.py b/test/MHD/AmbipolarCshock3D/testme.py index 94a8b0f4..981fbff3 100755 --- a/test/MHD/AmbipolarCshock3D/testme.py +++ b/test/MHD/AmbipolarCshock3D/testme.py @@ -6,9 +6,11 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst + tolerance=3e-14 def testMe(test): test.configure() diff --git a/test/MHD/AmbipolarShearingBox/python/testidefix.py b/test/MHD/AmbipolarShearingBox/python/testidefix.py index 1d1ccb28..6aec86a6 100755 --- a/test/MHD/AmbipolarShearingBox/python/testidefix.py +++ b/test/MHD/AmbipolarShearingBox/python/testidefix.py @@ -5,10 +5,12 @@ @author: lesurg """ -import numpy as np -import matplotlib.pyplot as plt import os import sys + +import matplotlib.pyplot as plt +import numpy as np + sys.path.append(os.getenv("IDEFIX_DIR")) from pytools.vtk_io import readVTK diff --git a/test/MHD/AxisFluxTube/python/checkAxisBounds.py b/test/MHD/AxisFluxTube/python/checkAxisBounds.py index 44eec58e..77406988 100755 --- a/test/MHD/AxisFluxTube/python/checkAxisBounds.py +++ b/test/MHD/AxisFluxTube/python/checkAxisBounds.py @@ -7,10 +7,12 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) -from pytools.idfx_io import readIdfxFile import matplotlib.pyplot as plt +from pytools.idfx_io import readIdfxFile + rep="../" idfx=readIdfxFile(rep+"analysis.99.0.idfx") diff --git a/test/MHD/AxisFluxTube/testme.py b/test/MHD/AxisFluxTube/testme.py index 5abb4656..c5db6cfa 100755 --- a/test/MHD/AxisFluxTube/testme.py +++ b/test/MHD/AxisFluxTube/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/MHD/Coarsening/python/testidefix.py b/test/MHD/Coarsening/python/testidefix.py index e3ea0cd0..206c0160 100755 --- a/test/MHD/Coarsening/python/testidefix.py +++ b/test/MHD/Coarsening/python/testidefix.py @@ -8,12 +8,15 @@ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) -from pytools.vtk_io import readVTK import argparse -import numpy as np -import matplotlib.pyplot as plt + import inifix +import matplotlib.pyplot as plt +import numpy as np + +from pytools.vtk_io import readVTK parser = argparse.ArgumentParser() parser.add_argument("-noplot", diff --git a/test/MHD/Coarsening/testme.py b/test/MHD/Coarsening/testme.py index 50d13c92..e82277ee 100755 --- a/test/MHD/Coarsening/testme.py +++ b/test/MHD/Coarsening/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/MHD/FargoMHDSpherical/testme.py b/test/MHD/FargoMHDSpherical/testme.py index 1a3b28ad..ee74c24d 100755 --- a/test/MHD/FargoMHDSpherical/testme.py +++ b/test/MHD/FargoMHDSpherical/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/MHD/HallWhistler/python/testidefix.py b/test/MHD/HallWhistler/python/testidefix.py index 3d3eab2d..2ca5d6bf 100755 --- a/test/MHD/HallWhistler/python/testidefix.py +++ b/test/MHD/HallWhistler/python/testidefix.py @@ -12,10 +12,11 @@ @author: lesurg """ -import sys -import numpy as np import argparse +import sys + import matplotlib.pyplot as plt +import numpy as np from scipy.signal import argrelextrema parser = argparse.ArgumentParser() diff --git a/test/MHD/HallWhistler/testme.py b/test/MHD/HallWhistler/testme.py index f8ba0a25..ce50a7ae 100755 --- a/test/MHD/HallWhistler/testme.py +++ b/test/MHD/HallWhistler/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/MHD/LinearWaveTest/python/testidefix.py b/test/MHD/LinearWaveTest/python/testidefix.py index be82269a..8603ee8e 100755 --- a/test/MHD/LinearWaveTest/python/testidefix.py +++ b/test/MHD/LinearWaveTest/python/testidefix.py @@ -1,15 +1,19 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- -import numpy as np +import math import os import sys -import math + +import numpy as np + sys.path.append(os.getenv("IDEFIX_DIR")) -from pytools.dump_io import readDump -import matplotlib.pyplot as plt import argparse +import matplotlib.pyplot as plt + +from pytools.dump_io import readDump + parser = argparse.ArgumentParser() parser.add_argument("-noplot", default=False, diff --git a/test/MHD/LinearWaveTest/testme.py b/test/MHD/LinearWaveTest/testme.py index eeaaab0f..5b4aed87 100755 --- a/test/MHD/LinearWaveTest/testme.py +++ b/test/MHD/LinearWaveTest/testme.py @@ -6,9 +6,11 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst + tolerance=2e-13 def testMe(test): test.configure() diff --git a/test/MHD/MTI/python/testidefix.py b/test/MHD/MTI/python/testidefix.py index 4b60cc8b..18481692 100644 --- a/test/MHD/MTI/python/testidefix.py +++ b/test/MHD/MTI/python/testidefix.py @@ -9,9 +9,10 @@ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) -import numpy as np import inifix +import numpy as np n = 1 # fondamental mode diff --git a/test/MHD/MTI/testme.py b/test/MHD/MTI/testme.py index 0e2c9e31..baaed630 100755 --- a/test/MHD/MTI/testme.py +++ b/test/MHD/MTI/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/MHD/OrszagTang/testme.py b/test/MHD/OrszagTang/testme.py index 41f33aba..7f9688eb 100755 --- a/test/MHD/OrszagTang/testme.py +++ b/test/MHD/OrszagTang/testme.py @@ -6,9 +6,11 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst + tolerance=1e-12 def testMe(test): test.configure() diff --git a/test/MHD/OrszagTang3D/testme.py b/test/MHD/OrszagTang3D/testme.py index 7a66150c..662ba406 100755 --- a/test/MHD/OrszagTang3D/testme.py +++ b/test/MHD/OrszagTang3D/testme.py @@ -5,6 +5,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/MHD/ResistiveAlfvenWave/python/testidefix.py b/test/MHD/ResistiveAlfvenWave/python/testidefix.py index 89b0f136..52b11c8c 100644 --- a/test/MHD/ResistiveAlfvenWave/python/testidefix.py +++ b/test/MHD/ResistiveAlfvenWave/python/testidefix.py @@ -1,7 +1,8 @@ -import sys -import numpy as np import argparse +import sys + import matplotlib.pyplot as plt +import numpy as np parser = argparse.ArgumentParser() parser.add_argument("-noplot", diff --git a/test/MHD/ResistiveAlfvenWave/testme.py b/test/MHD/ResistiveAlfvenWave/testme.py index ebc29ab5..72014c7c 100755 --- a/test/MHD/ResistiveAlfvenWave/testme.py +++ b/test/MHD/ResistiveAlfvenWave/testme.py @@ -6,9 +6,11 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst + tolerance=1e-14 def testMe(test): diff --git a/test/MHD/ShearingBox/python/testidefix.py b/test/MHD/ShearingBox/python/testidefix.py index e1a88222..1ab5b293 100755 --- a/test/MHD/ShearingBox/python/testidefix.py +++ b/test/MHD/ShearingBox/python/testidefix.py @@ -5,11 +5,13 @@ @author: lesurg """ +import argparse import sys -import numpy as np + import matplotlib.pyplot as plt +import numpy as np from scipy.integrate import solve_ivp -import argparse + #compute theoretical solution (from Balbus & Hawley 2006, using notations from Lesur 2021) def rhs(t, y, Omega, q, B0y, B0z, k0x, k0y, k0z): diff --git a/test/MHD/ShearingBox/testme.py b/test/MHD/ShearingBox/testme.py index ccee1a69..1e30e174 100755 --- a/test/MHD/ShearingBox/testme.py +++ b/test/MHD/ShearingBox/testme.py @@ -6,9 +6,11 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst + tolerance=1e-14 def testMe(test): diff --git a/test/MHD/clessTDiffusion/python/testidefix.py b/test/MHD/clessTDiffusion/python/testidefix.py index 9427aca8..f37cf503 100644 --- a/test/MHD/clessTDiffusion/python/testidefix.py +++ b/test/MHD/clessTDiffusion/python/testidefix.py @@ -1,9 +1,11 @@ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) -from pytools.vtk_io import readVTK -import numpy as np import inifix +import numpy as np + +from pytools.vtk_io import readVTK conf = inifix.load("../idefix.ini") gamma = conf["Hydro"]["gamma"] diff --git a/test/MHD/clessTDiffusion/testme.py b/test/MHD/clessTDiffusion/testme.py index 41193e14..98e3def9 100755 --- a/test/MHD/clessTDiffusion/testme.py +++ b/test/MHD/clessTDiffusion/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/MHD/sod-iso/testme.py b/test/MHD/sod-iso/testme.py index c85cc4ce..70c7daaa 100755 --- a/test/MHD/sod-iso/testme.py +++ b/test/MHD/sod-iso/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/MHD/sod/testme.py b/test/MHD/sod/testme.py index c85cc4ce..70c7daaa 100755 --- a/test/MHD/sod/testme.py +++ b/test/MHD/sod/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/MHD/sphBragTDiffusion/python/testidefix.py b/test/MHD/sphBragTDiffusion/python/testidefix.py index 8bf639cb..d42c8bc9 100644 --- a/test/MHD/sphBragTDiffusion/python/testidefix.py +++ b/test/MHD/sphBragTDiffusion/python/testidefix.py @@ -1,9 +1,11 @@ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) -from pytools.vtk_io import readVTK -import numpy as np import inifix +import numpy as np + +from pytools.vtk_io import readVTK conf = inifix.load("../idefix.ini") amplitude = conf["Setup"]["amplitude"] diff --git a/test/MHD/sphBragTDiffusion/testme.py b/test/MHD/sphBragTDiffusion/testme.py index 41193e14..98e3def9 100755 --- a/test/MHD/sphBragTDiffusion/testme.py +++ b/test/MHD/sphBragTDiffusion/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/MHD/sphBragViscosity/python/testidefix.py b/test/MHD/sphBragViscosity/python/testidefix.py index c016242d..7369f636 100644 --- a/test/MHD/sphBragViscosity/python/testidefix.py +++ b/test/MHD/sphBragViscosity/python/testidefix.py @@ -1,11 +1,13 @@ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) -from pytools.vtk_io import readVTK -import numpy as np import inifix +import numpy as np from scipy.special import jn +from pytools.vtk_io import readVTK + conf = inifix.load("../idefix.ini") amplitude = conf["Setup"]["amplitude"] time_step = conf["Output"]["vtk"] diff --git a/test/MHD/sphBragViscosity/testme.py b/test/MHD/sphBragViscosity/testme.py index b6c3467e..0ad8ef25 100755 --- a/test/MHD/sphBragViscosity/testme.py +++ b/test/MHD/sphBragViscosity/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/Planet/Planet3Body/python/testidefix.py b/test/Planet/Planet3Body/python/testidefix.py index a3b7f64d..91a680d6 100755 --- a/test/Planet/Planet3Body/python/testidefix.py +++ b/test/Planet/Planet3Body/python/testidefix.py @@ -8,9 +8,11 @@ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import numpy as np + def separation(resonance): a = int(resonance[-1]) b = int(resonance[0]) diff --git a/test/Planet/Planet3Body/testme.py b/test/Planet/Planet3Body/testme.py index 6edac53e..bdb0e193 100755 --- a/test/Planet/Planet3Body/testme.py +++ b/test/Planet/Planet3Body/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/Planet/PlanetMigration2D/python/testidefix.py b/test/Planet/PlanetMigration2D/python/testidefix.py index 897d7b53..0a47d24f 100755 --- a/test/Planet/PlanetMigration2D/python/testidefix.py +++ b/test/Planet/PlanetMigration2D/python/testidefix.py @@ -8,9 +8,11 @@ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import numpy as np + def datafile(filename): return np.loadtxt(filename, dtype="float64").T diff --git a/test/Planet/PlanetMigration2D/testme.py b/test/Planet/PlanetMigration2D/testme.py index 6c435cbd..7aff376d 100755 --- a/test/Planet/PlanetMigration2D/testme.py +++ b/test/Planet/PlanetMigration2D/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/Planet/PlanetPlanetRK42D/python/testidefix.py b/test/Planet/PlanetPlanetRK42D/python/testidefix.py index c3d4aa9b..656e55c2 100755 --- a/test/Planet/PlanetPlanetRK42D/python/testidefix.py +++ b/test/Planet/PlanetPlanetRK42D/python/testidefix.py @@ -7,11 +7,13 @@ """ import os -import sys import re +import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import numpy as np + def filter_index(t): # get read of data previously generated (when the code was restarted) tref=t[-1] diff --git a/test/Planet/PlanetPlanetRK42D/testme.py b/test/Planet/PlanetPlanetRK42D/testme.py index 9521aaba..96dc0897 100755 --- a/test/Planet/PlanetPlanetRK42D/testme.py +++ b/test/Planet/PlanetPlanetRK42D/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/Planet/PlanetSpiral2D/python/testidefix.py b/test/Planet/PlanetSpiral2D/python/testidefix.py index ee9f5acc..0b7fafe5 100755 --- a/test/Planet/PlanetSpiral2D/python/testidefix.py +++ b/test/Planet/PlanetSpiral2D/python/testidefix.py @@ -1,13 +1,14 @@ #!/usr/bin/env python # coding: utf-8 -import sys import os -sys.path.append(os.getenv("IDEFIX_DIR")) -from pytools.vtk_io import readVTK +import sys -import numpy as np +sys.path.append(os.getenv("IDEFIX_DIR")) import matplotlib.pyplot as plt +import numpy as np + +from pytools.vtk_io import readVTK on = 3 ds = readVTK(f"../data.{on:04d}.vtk", geometry="polar") diff --git a/test/Planet/PlanetSpiral2D/testme.py b/test/Planet/PlanetSpiral2D/testme.py index 6c435cbd..7aff376d 100755 --- a/test/Planet/PlanetSpiral2D/testme.py +++ b/test/Planet/PlanetSpiral2D/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/Planet/PlanetTorque3D/python/testidefix.py b/test/Planet/PlanetTorque3D/python/testidefix.py index 47477f64..f51b4974 100755 --- a/test/Planet/PlanetTorque3D/python/testidefix.py +++ b/test/Planet/PlanetTorque3D/python/testidefix.py @@ -8,9 +8,11 @@ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import numpy as np + def datafile(filename): return np.loadtxt(filename, dtype="float64").T diff --git a/test/Planet/PlanetTorque3D/testme.py b/test/Planet/PlanetTorque3D/testme.py index 4393636e..d68987df 100755 --- a/test/Planet/PlanetTorque3D/testme.py +++ b/test/Planet/PlanetTorque3D/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/Planet/PlanetsIsActiveRK52D/python/testidefix.py b/test/Planet/PlanetsIsActiveRK52D/python/testidefix.py index 0a5f9149..c39f5178 100755 --- a/test/Planet/PlanetsIsActiveRK52D/python/testidefix.py +++ b/test/Planet/PlanetsIsActiveRK52D/python/testidefix.py @@ -8,9 +8,11 @@ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import numpy as np + def find_nearest(array, value): array = np.asarray(array) idx = (np.abs(array - value)).argmin() diff --git a/test/Planet/PlanetsIsActiveRK52D/testme.py b/test/Planet/PlanetsIsActiveRK52D/testme.py index aca39ae5..562334d5 100755 --- a/test/Planet/PlanetsIsActiveRK52D/testme.py +++ b/test/Planet/PlanetsIsActiveRK52D/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/Pluto/HD/sod/python/idefixTools.py b/test/Pluto/HD/sod/python/idefixTools.py index a8d2dc86..06e63afa 100644 --- a/test/Pluto/HD/sod/python/idefixTools.py +++ b/test/Pluto/HD/sod/python/idefixTools.py @@ -7,6 +7,8 @@ import numpy as np + + class DataStructure: pass diff --git a/test/Pluto/HD/sod/python/sod.py b/test/Pluto/HD/sod/python/sod.py index 717c27ca..90ad62fe 100755 --- a/test/Pluto/HD/sod/python/sod.py +++ b/test/Pluto/HD/sod/python/sod.py @@ -266,7 +266,7 @@ def solve(left_state, right_state, geometry, t, gamma=1.4, npts=500, pos_description = ('Head of Rarefaction', 'Foot of Rarefaction', 'Contact Discontinuity', 'Shock') - positions = dict(zip(pos_description, x_positions)) + positions = dict(zip(pos_description, x_positions, strict=True)) # create arrays x, p, rho, u = create_arrays(pl, pr, xl, xr, x_positions, diff --git a/test/Pluto/HD/sod/python/testidefix.py b/test/Pluto/HD/sod/python/testidefix.py index d01db7bc..239bb1c8 100755 --- a/test/Pluto/HD/sod/python/testidefix.py +++ b/test/Pluto/HD/sod/python/testidefix.py @@ -6,12 +6,13 @@ @author: glesur """ -import idefixTools as idfx -import sod -import sys import argparse -import numpy as np +import sys + +import idefixTools as idfx import matplotlib.pyplot as plt +import numpy as np +import sod from scipy.interpolate import interp1d parser = argparse.ArgumentParser() diff --git a/test/SelfGravity/DustyCollapse/python/testidefix.py b/test/SelfGravity/DustyCollapse/python/testidefix.py index 370d89e7..83ec380a 100644 --- a/test/SelfGravity/DustyCollapse/python/testidefix.py +++ b/test/SelfGravity/DustyCollapse/python/testidefix.py @@ -1,7 +1,8 @@ -import numpy as np import os import sys +import numpy as np + sys.path.append(os.getenv("IDEFIX_DIR")) from pytools.vtk_io import readVTK diff --git a/test/SelfGravity/DustyCollapse/testme.py b/test/SelfGravity/DustyCollapse/testme.py index 2df3893a..bc9842e7 100755 --- a/test/SelfGravity/DustyCollapse/testme.py +++ b/test/SelfGravity/DustyCollapse/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/SelfGravity/JeansInstability/python/testidefix.py b/test/SelfGravity/JeansInstability/python/testidefix.py index 80d6ee62..34c52975 100755 --- a/test/SelfGravity/JeansInstability/python/testidefix.py +++ b/test/SelfGravity/JeansInstability/python/testidefix.py @@ -8,11 +8,13 @@ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) -from pytools.vtk_io import readVTK import numpy as np from scipy.fftpack import fft, fftfreq +from pytools.vtk_io import readVTK + # Arguments gravCst = np.pi # grav cst G=pi gamma = 5/3 diff --git a/test/SelfGravity/JeansInstability/testme.py b/test/SelfGravity/JeansInstability/testme.py index 833feb26..0bb1d518 100755 --- a/test/SelfGravity/JeansInstability/testme.py +++ b/test/SelfGravity/JeansInstability/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/SelfGravity/RandomSphere/python/testidefix.py b/test/SelfGravity/RandomSphere/python/testidefix.py index 444c3034..65f3b804 100755 --- a/test/SelfGravity/RandomSphere/python/testidefix.py +++ b/test/SelfGravity/RandomSphere/python/testidefix.py @@ -6,11 +6,12 @@ @author: glesur """ +import argparse import os import sys -import numpy as np + import matplotlib.pyplot as plt -import argparse +import numpy as np sys.path.append(os.getenv("IDEFIX_DIR")) diff --git a/test/SelfGravity/RandomSphere/testme.py b/test/SelfGravity/RandomSphere/testme.py index 65123498..320cf5c5 100755 --- a/test/SelfGravity/RandomSphere/testme.py +++ b/test/SelfGravity/RandomSphere/testme.py @@ -6,10 +6,12 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst + def testMe(test): test.configure() test.compile() diff --git a/test/SelfGravity/RandomSphereCartesian/python/testidefix.py b/test/SelfGravity/RandomSphereCartesian/python/testidefix.py index 7367b3d9..3f898384 100755 --- a/test/SelfGravity/RandomSphereCartesian/python/testidefix.py +++ b/test/SelfGravity/RandomSphereCartesian/python/testidefix.py @@ -6,12 +6,13 @@ @author: glesur """ +import argparse import os import sys -import numpy as np + import matplotlib.pyplot as plt +import numpy as np import numpy.fft as fft -import argparse sys.path.append(os.getenv("IDEFIX_DIR")) diff --git a/test/SelfGravity/RandomSphereCartesian/testme.py b/test/SelfGravity/RandomSphereCartesian/testme.py index 598aa3f2..50767466 100755 --- a/test/SelfGravity/RandomSphereCartesian/testme.py +++ b/test/SelfGravity/RandomSphereCartesian/testme.py @@ -6,10 +6,12 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst + def testMe(test): test.configure() test.compile() diff --git a/test/SelfGravity/UniformCollapse/python/testidefix.py b/test/SelfGravity/UniformCollapse/python/testidefix.py index e89a296a..90dfacda 100755 --- a/test/SelfGravity/UniformCollapse/python/testidefix.py +++ b/test/SelfGravity/UniformCollapse/python/testidefix.py @@ -8,10 +8,12 @@ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) -from pytools.vtk_io import readVTK import numpy as np +from pytools.vtk_io import readVTK + # Arguments gravCst = 1./(4.*np.pi) # grav cst 4piG rho0 = 1e-3 # initial density diff --git a/test/SelfGravity/UniformCollapse/testme.py b/test/SelfGravity/UniformCollapse/testme.py index 69918896..f011cd21 100755 --- a/test/SelfGravity/UniformCollapse/testme.py +++ b/test/SelfGravity/UniformCollapse/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/utils/columnDensity/testme.py b/test/utils/columnDensity/testme.py index cd94eb4e..4197a936 100755 --- a/test/utils/columnDensity/testme.py +++ b/test/utils/columnDensity/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/utils/dumpImage/testme.py b/test/utils/dumpImage/testme.py index cd94eb4e..4197a936 100755 --- a/test/utils/dumpImage/testme.py +++ b/test/utils/dumpImage/testme.py @@ -6,6 +6,7 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import pytools.idfx_test as tst diff --git a/test/utils/lookupTable/testme.py b/test/utils/lookupTable/testme.py index 53f6607f..1bc69a8f 100755 --- a/test/utils/lookupTable/testme.py +++ b/test/utils/lookupTable/testme.py @@ -6,11 +6,14 @@ """ import os import sys + sys.path.append(os.getenv("IDEFIX_DIR")) import numpy as np + #from scipy.interpolate import RegularGridInterpolator import pytools.idfx_test as tst + def MakeNumpyFile(): x=np.arange(1,10,1.0) y=np.arange(5,10,1.0) From f2116c980e658b461289e6acc94780bb711426d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Robert?= Date: Thu, 2 Apr 2026 15:31:25 +0200 Subject: [PATCH 3/4] STY: semi-manual fixes for Python lints: - add missing stacklevel in a Python warning - use conventional naming for unused loop variables in Python - Fix violations to rules, B011, B006 and B904 --- pytools/dump_io.py | 2 +- pytools/idfx_io.py | 2 +- pytools/idfx_test.py | 8 ++++++-- pytools/idfx_test_gen.py | 10 ++++++++-- pytools/idfx_test_run.py | 4 ++-- pytools/vtk_io.py | 2 +- test/IO/xdmf/testme.py | 8 +++----- 7 files changed, 22 insertions(+), 14 deletions(-) diff --git a/pytools/dump_io.py b/pytools/dump_io.py index 4b258336..7d0ec580 100644 --- a/pytools/dump_io.py +++ b/pytools/dump_io.py @@ -59,7 +59,7 @@ def __init__(self, fh, byteorder="little"): self.ndims = int.from_bytes(fh.read(INT_SIZE), byteorder) dims = [] ntot = 1 - for dim in range(self.ndims): + for _ in range(self.ndims): dims.append(int.from_bytes(fh.read(INT_SIZE), byteorder)) ntot = ntot * dims[-1] raw = struct.unpack(str(ntot) + stringchar, fh.read(mysize * ntot)) diff --git a/pytools/idfx_io.py b/pytools/idfx_io.py index 007f6b7a..0e53a39a 100644 --- a/pytools/idfx_io.py +++ b/pytools/idfx_io.py @@ -26,7 +26,7 @@ def __init__(self, fh, byteorder="little"): return self.ndims = int.from_bytes(fh.read(INT_SIZE), byteorder) dims = [] - for dim in range(self.ndims): + for _ in range(self.ndims): dims.append(int.from_bytes(fh.read(INT_SIZE), byteorder)) ntot = int(np.prod(dims)) raw = struct.unpack(str(ntot) + "d", fh.read(DOUBLE_SIZE * ntot)) diff --git a/pytools/idfx_test.py b/pytools/idfx_test.py index 41e38c6f..2c8023db 100644 --- a/pytools/idfx_test.py +++ b/pytools/idfx_test.py @@ -167,8 +167,10 @@ def addLog(self, entry): with open(os.path.join(self.problemDir,"testsuite.log.json"), "w+") as fp: json.dump(self.log, fp, indent='\t') - def applyConfig(self, config: dict={}): + def applyConfig(self, config: dict | None = None): # check args + if config is None: + config = {} for key, value in config.items(): if key not in ['ini', 'testfile', 'testname', 'dumpname', 'check_file_produced']: assert key in self.cmdArgs, f"The given configuration overriding try to set an invalid paramater : {key}={value}" @@ -254,7 +256,9 @@ def _genCmakeCommand(self,definitionFile=""): return comm - def configure(self,definitionFile="", reuse_last_same_build=True, override: dict={}): + def configure(self,definitionFile="", reuse_last_same_build=True, override: dict | None = None): + if override is None: + override = {} # log self.addLog({"call": "configure", "args":{ 'definitionFile': definitionFile, diff --git a/pytools/idfx_test_gen.py b/pytools/idfx_test_gen.py index 73a8b71d..ada8b962 100644 --- a/pytools/idfx_test_gen.py +++ b/pytools/idfx_test_gen.py @@ -33,7 +33,7 @@ def __init__(self, currentTestFile: str, name: str = ""): self.currentTestName = name # generate the list of configs to run - def genTestConfigs(self, names:str, params, whenClauses = {}, defaultConfig: dict = {}) -> list: + def genTestConfigs(self, names:str, params, whenClauses = None, defaultConfig: dict | None = None) -> list: ''' Generate the the list of configurations as pytest parameters. It will unpack the configuration set by looping on all combinations defined @@ -55,6 +55,10 @@ def genTestConfigs(self, names:str, params, whenClauses = {}, defaultConfig: dic Returns: A list of pytest.param() ready to be fiven to parametrized pytest functions. ''' + if defaultConfig is None: + defaultConfig = {} + if whenClauses is None: + whenClauses = {} # get name ordering list nameList = names.split(',') if '' in nameList: @@ -160,7 +164,7 @@ def _genNextLevelCombinations(self, input: list, paramName: str, paramValues: li result.append(v) return result - def _genOneConfigSeries(self, names: str, config: dict, defaultConfig: dict={}) -> list: + def _genOneConfigSeries(self, names: str, config: dict, defaultConfig: dict | None = None) -> list: ''' Generate the the list of configurations as pytest parameters. It will unpack the configuration set by looping on all combinations defined @@ -178,6 +182,8 @@ def _genOneConfigSeries(self, names: str, config: dict, defaultConfig: dict={}) Returns: A list of pytest.param() ready to be fiven to parametrized pytest functions. ''' + if defaultConfig is None: + defaultConfig = {} # get name ordering list nameList = names.split(',') diff --git a/pytools/idfx_test_run.py b/pytools/idfx_test_run.py index 362a0ff2..b96ce840 100644 --- a/pytools/idfx_test_run.py +++ b/pytools/idfx_test_run.py @@ -110,7 +110,7 @@ def genTests(self) -> list: # gen result += idefixTestGenerator.genTestConfigs(namings, variants, whenClauses=whenClauses, defaultConfig=defaultConfig) except Exception as e: - raise Exception(f"Fail to generate tests from {testfileRelPath} : {e}") + raise Exception(f"Fail to generate tests from {testfileRelPath}") from e # ok return result @@ -259,7 +259,7 @@ def main(self, all: bool = False): if idefixTest.all: pytest.main(['-v', '--no-header', '--junit-xml=idefix-tests.junit.xml', '--tb=short'] + idefixTest.remainingArgs + [self.parentScritFile]) else: - assert False, "Not yet supported !" + raise NotImplementedError("Not yet supported !") #elif self.check: # idefixTest.checkOnly(filename=dumpname, tolerance=tolerance) #else: diff --git a/pytools/vtk_io.py b/pytools/vtk_io.py index 3a08836d..ac4551b2 100644 --- a/pytools/vtk_io.py +++ b/pytools/vtk_io.py @@ -99,7 +99,7 @@ def _load_header(self, fh, geometry=None): native_name, _ncomp, native_dim, _dtype = d.split() self.native_coordinates[native_name] = np.fromfile(fh, dtype=dt, count=int(native_dim)) else: - warnings.warn("Found unknown field %s" % d) + warnings.warn("Found unknown field %s" % d, stacklevel=3) fh.readline() # skip extra linefeed (empty line) if self.geometry is None: diff --git a/test/IO/xdmf/testme.py b/test/IO/xdmf/testme.py index 757b758f..4f6b458f 100755 --- a/test/IO/xdmf/testme.py +++ b/test/IO/xdmf/testme.py @@ -31,10 +31,7 @@ def check_xdmf_exists(): if not test.dec: test.dec=['2','2','2'] -if test.check: - check_xdmf_exists() - -else: +if not test.check: test.vectPot=False test.single=False test.reconstruction=2 @@ -43,4 +40,5 @@ def check_xdmf_exists(): test.configure(definitionFile="definitions.hpp") test.compile() test.run(inputFile="idefix.ini") - check_xdmf_exists + +check_xdmf_exists() From 3b8259f6da1a739c4e52f164f9c2fd2c985f8fd3 Mon Sep 17 00:00:00 2001 From: Geoffroy Lesur Date: Tue, 14 Jul 2026 11:07:35 +0200 Subject: [PATCH 4/4] fix indentation Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- pytools/idfx_test.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pytools/idfx_test.py b/pytools/idfx_test.py index 2c8023db..ee3fbee3 100644 --- a/pytools/idfx_test.py +++ b/pytools/idfx_test.py @@ -170,7 +170,7 @@ def addLog(self, entry): def applyConfig(self, config: dict | None = None): # check args if config is None: - config = {} + config = {} for key, value in config.items(): if key not in ['ini', 'testfile', 'testname', 'dumpname', 'check_file_produced']: assert key in self.cmdArgs, f"The given configuration overriding try to set an invalid paramater : {key}={value}"