diff --git a/CHANGELOG.md b/CHANGELOG.md index a17abf386..b965be20a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -239,6 +239,17 @@ Format: [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); versioning ### Changed +- **`include/adc` deep re-nest, phase 2: core / physics / amr split into sub-families** (ADC-393, + follow-up of ADC-392): `core/` now groups `foundation/` (types, cold, allocator, kokkos_env), + `state/` (state, variables, aux_names) and `model/` (physical_model, equation_block, + coupled_system); `physics/` groups `bricks/` (bricks, hyperbolic, elliptic, source), + `composition/` (composite) and `fluids/` (euler); `amr/` groups `hierarchy/`, `tagging/` and + `regridding/`. Every internal `#include ` and the DSL emit (`physics/bricks.hpp`, + `core/variables.hpp`) are repointed. Public include-path break (pre-1.0). Also retires the + deprecated physics compat forwarders + `physics/{advection_diffusion,langmuir,two_fluid_isothermal}.hpp` (the bricks live at + `validation/physics/` under `adc::validation` since ADC-329; only the dedicated + `test_physics_validation_compat` used the old `adc::` aliases, removed with them). - **`quality.yml` pins clang-format to 19.1.7** (ADC-381): the now-blocking `format` job installed whatever clang-format the `ubuntu-latest` runner shipped (~v14-18) via `apt-get`, so Google-style output drift between major versions could fail the gate on an otherwise-clean tree. It now installs diff --git a/bench/common.hpp b/bench/common.hpp index a67804ef4..29780c918 100644 --- a/bench/common.hpp +++ b/bench/common.hpp @@ -26,7 +26,7 @@ /// dette CONNUE, a resorber aux prochaines passes en pointant vers les briques d'ici. Aucun /// changement de comportement attendu a chaque migration (meme sortie chronometree, meme JSON). -#include // device_fence (seam backend : no-op serie/OpenMP, fence sous Cuda) +#include // device_fence (seam backend : no-op serie/OpenMP, fence sous Cuda) #include #include diff --git a/bench/frontend_cpp.cpp b/bench/frontend_cpp.cpp index a14b3bfbf..88d819165 100644 --- a/bench/frontend_cpp.cpp +++ b/bench/frontend_cpp.cpp @@ -28,8 +28,8 @@ #include #include #include -#include // CompositeModel, NoSource, ChargeDensity, kAuxBaseComps -#include // Euler (brique hyperbolique compressible 4 var) +#include // CompositeModel, NoSource, ChargeDensity, kAuxBaseComps +#include // Euler (brique hyperbolique compressible 4 var) #include "common.hpp" // adc::bench::{timed, PhaseTimers, percentile, eat} (briques de mesure partagees) diff --git a/bench/profile_step.cpp b/bench/profile_step.cpp index b29b93467..006eee127 100644 --- a/bench/profile_step.cpp +++ b/bench/profile_step.cpp @@ -36,7 +36,7 @@ #include #include #include -#include // CompositeModel, ExBVelocity, NoSource, ChargeDensity +#include // CompositeModel, ExBVelocity, NoSource, ChargeDensity #include "common.hpp" // adc::bench::{timed, PhaseTimers, eat} (briques de mesure partagees) diff --git a/bench/profile_transport_mbox.cpp b/bench/profile_transport_mbox.cpp index db0380c68..7630d9d69 100644 --- a/bench/profile_transport_mbox.cpp +++ b/bench/profile_transport_mbox.cpp @@ -22,8 +22,8 @@ #include #include #include -#include -#include +#include +#include #include #include diff --git a/bench/scaling_amr.cpp b/bench/scaling_amr.cpp index d9a24946a..a2c92aff4 100644 --- a/bench/scaling_amr.cpp +++ b/bench/scaling_amr.cpp @@ -13,8 +13,8 @@ // Lance via bench/run_scaling.sh (kokkos-omp / kokkos-cuda / mpi-cuda) en srun -n 1/2/4. #include -#include -#include +#include +#include #include #include diff --git a/bench/scaling_step.cpp b/bench/scaling_step.cpp index 6cbf80603..9a38f5bae 100644 --- a/bench/scaling_step.cpp +++ b/bench/scaling_step.cpp @@ -25,8 +25,8 @@ #include #include #include -#include -#include +#include +#include #include #include diff --git a/docs/validation/diocotron_amr_gpu.cpp b/docs/validation/diocotron_amr_gpu.cpp index 538548964..4530f44ce 100644 --- a/docs/validation/diocotron_amr_gpu.cpp +++ b/docs/validation/diocotron_amr_gpu.cpp @@ -44,7 +44,7 @@ // global reconstruit), donc aucun deadlock. #include -#include +#include #include // add_compiled_model(AmrSystem&, ...) #include diff --git a/docs/validation/diocotron_gpu.cpp b/docs/validation/diocotron_gpu.cpp index faa07d885..d0f1d280c 100644 --- a/docs/validation/diocotron_gpu.cpp +++ b/docs/validation/diocotron_gpu.cpp @@ -23,7 +23,7 @@ // local_size()==0 -> contribuent 0 a l'all-reduce), identique a la topologie CPU de run_mpi.py. #include -#include +#include #include #include diff --git a/fuzz/fuzz_cluster.cpp b/fuzz/fuzz_cluster.cpp index cf5df57dc..ca830f377 100644 --- a/fuzz/fuzz_cluster.cpp +++ b/fuzz/fuzz_cluster.cpp @@ -8,8 +8,8 @@ /// chop final) est exactement la classe de code geometrique ou les bords degeneres mordent /// (boites 1x1, lignes vides, domaines plats 1xN). -#include -#include +#include +#include #include #include diff --git a/include/adc/amr/amr_hierarchy.hpp b/include/adc/amr/hierarchy/amr_hierarchy.hpp similarity index 99% rename from include/adc/amr/amr_hierarchy.hpp rename to include/adc/amr/hierarchy/amr_hierarchy.hpp index d5c5a61a2..4c6388225 100644 --- a/include/adc/amr/amr_hierarchy.hpp +++ b/include/adc/amr/hierarchy/amr_hierarchy.hpp @@ -15,7 +15,7 @@ #pragma once -#include +#include #include #include #include diff --git a/include/adc/amr/refinement_ratio.hpp b/include/adc/amr/hierarchy/refinement_ratio.hpp similarity index 100% rename from include/adc/amr/refinement_ratio.hpp rename to include/adc/amr/hierarchy/refinement_ratio.hpp diff --git a/include/adc/amr/regrid.hpp b/include/adc/amr/regridding/regrid.hpp similarity index 97% rename from include/adc/amr/regrid.hpp rename to include/adc/amr/regridding/regrid.hpp index 55f2251a8..eb4869b46 100644 --- a/include/adc/amr/regrid.hpp +++ b/include/adc/amr/regridding/regrid.hpp @@ -15,9 +15,9 @@ #pragma once -#include -#include -#include +#include +#include +#include #include #include #include diff --git a/include/adc/amr/cluster.hpp b/include/adc/amr/tagging/cluster.hpp similarity index 99% rename from include/adc/amr/cluster.hpp rename to include/adc/amr/tagging/cluster.hpp index e02e5a689..827e990e0 100644 --- a/include/adc/amr/cluster.hpp +++ b/include/adc/amr/tagging/cluster.hpp @@ -16,7 +16,7 @@ #pragma once -#include +#include #include #include diff --git a/include/adc/amr/tag_box.hpp b/include/adc/amr/tagging/tag_box.hpp similarity index 100% rename from include/adc/amr/tag_box.hpp rename to include/adc/amr/tagging/tag_box.hpp diff --git a/include/adc/core/allocator.hpp b/include/adc/core/foundation/allocator.hpp similarity index 99% rename from include/adc/core/allocator.hpp rename to include/adc/core/foundation/allocator.hpp index 1de8b527d..fa31b50f2 100644 --- a/include/adc/core/allocator.hpp +++ b/include/adc/core/foundation/allocator.hpp @@ -32,7 +32,7 @@ struct ArenaStats { } // namespace adc #if defined(ADC_HAS_KOKKOS) -#include // detail::ensure_kokkos_initialized: Kokkos init BEFORE kokkos_malloc +#include // detail::ensure_kokkos_initialized: Kokkos init BEFORE kokkos_malloc #include #include diff --git a/include/adc/core/cold.hpp b/include/adc/core/foundation/cold.hpp similarity index 100% rename from include/adc/core/cold.hpp rename to include/adc/core/foundation/cold.hpp diff --git a/include/adc/core/kokkos_env.hpp b/include/adc/core/foundation/kokkos_env.hpp similarity index 100% rename from include/adc/core/kokkos_env.hpp rename to include/adc/core/foundation/kokkos_env.hpp diff --git a/include/adc/core/types.hpp b/include/adc/core/foundation/types.hpp similarity index 100% rename from include/adc/core/types.hpp rename to include/adc/core/foundation/types.hpp diff --git a/include/adc/core/coupled_system.hpp b/include/adc/core/model/coupled_system.hpp similarity index 98% rename from include/adc/core/coupled_system.hpp rename to include/adc/core/model/coupled_system.hpp index 600974744..1304962e9 100644 --- a/include/adc/core/coupled_system.hpp +++ b/include/adc/core/model/coupled_system.hpp @@ -15,7 +15,7 @@ #pragma once -#include +#include #include #include diff --git a/include/adc/core/equation_block.hpp b/include/adc/core/model/equation_block.hpp similarity index 98% rename from include/adc/core/equation_block.hpp rename to include/adc/core/model/equation_block.hpp index ca3f7f506..88ad3bc78 100644 --- a/include/adc/core/equation_block.hpp +++ b/include/adc/core/model/equation_block.hpp @@ -15,7 +15,7 @@ #pragma once -#include +#include #include #include #include diff --git a/include/adc/core/physical_model.hpp b/include/adc/core/model/physical_model.hpp similarity index 97% rename from include/adc/core/physical_model.hpp rename to include/adc/core/model/physical_model.hpp index 87b7d802c..d467b68e6 100644 --- a/include/adc/core/physical_model.hpp +++ b/include/adc/core/model/physical_model.hpp @@ -17,9 +17,9 @@ #pragma once -#include // Aux: the contract fixes the auxiliary to adc::Aux -#include -#include // Variables: mandatory contract of the hyperbolic model +#include // Aux: the contract fixes the auxiliary to adc::Aux +#include +#include // Variables: mandatory contract of the hyperbolic model #include diff --git a/include/adc/core/aux_names.hpp b/include/adc/core/state/aux_names.hpp similarity index 98% rename from include/adc/core/aux_names.hpp rename to include/adc/core/state/aux_names.hpp index 6961cc483..25e3c8c3c 100644 --- a/include/adc/core/aux_names.hpp +++ b/include/adc/core/state/aux_names.hpp @@ -14,7 +14,7 @@ #include #include -#include +#include namespace adc { diff --git a/include/adc/core/state.hpp b/include/adc/core/state/state.hpp similarity index 99% rename from include/adc/core/state.hpp rename to include/adc/core/state/state.hpp index ffd571082..1645555f1 100644 --- a/include/adc/core/state.hpp +++ b/include/adc/core/state/state.hpp @@ -6,7 +6,7 @@ #pragma once -#include +#include // State and Aux: the two pointwise types handled by the physics layer. // diff --git a/include/adc/core/variables.hpp b/include/adc/core/state/variables.hpp similarity index 100% rename from include/adc/core/variables.hpp rename to include/adc/core/state/variables.hpp diff --git a/include/adc/coupling/amr/amr_coupler_mp.hpp b/include/adc/coupling/amr/amr_coupler_mp.hpp index 7ffc4e7bf..3a7dfe401 100644 --- a/include/adc/coupling/amr/amr_coupler_mp.hpp +++ b/include/adc/coupling/amr/amr_coupler_mp.hpp @@ -1,7 +1,7 @@ #pragma once -#include -#include +#include +#include #include // amr_mass, amr_max_drift_speed #include // AmrLevelStack #include // amr_regrid_finest (Berger-Rigoutsos) diff --git a/include/adc/coupling/amr/amr_diagnostics.hpp b/include/adc/coupling/amr/amr_diagnostics.hpp index 85de2ae2c..6f8d5ce71 100644 --- a/include/adc/coupling/amr/amr_diagnostics.hpp +++ b/include/adc/coupling/amr/amr_diagnostics.hpp @@ -11,7 +11,7 @@ #pragma once -#include +#include #include #include // device_fence #include diff --git a/include/adc/coupling/amr/amr_level_storage.hpp b/include/adc/coupling/amr/amr_level_storage.hpp index 50b1a9403..5bd2abb00 100644 --- a/include/adc/coupling/amr/amr_level_storage.hpp +++ b/include/adc/coupling/amr/amr_level_storage.hpp @@ -11,8 +11,8 @@ #pragma once -#include // kAuxBaseComps: default aux width (base phi/grad channel) -#include +#include // kAuxBaseComps: default aux width (base phi/grad channel) +#include #include #include diff --git a/include/adc/coupling/amr/amr_regrid_coupler.hpp b/include/adc/coupling/amr/amr_regrid_coupler.hpp index 53a4b63d2..7de89a533 100644 --- a/include/adc/coupling/amr/amr_regrid_coupler.hpp +++ b/include/adc/coupling/amr/amr_regrid_coupler.hpp @@ -1,10 +1,10 @@ #pragma once -#include // berger_rigoutsos, ClusterParams -#include -#include // tag_cells, grow_tags -#include // TagBox -#include +#include // berger_rigoutsos, ClusterParams +#include +#include // tag_cells, grow_tags +#include // TagBox +#include #include // AmrLevelMP, mf_find_box #include #include diff --git a/include/adc/coupling/base/aux_fill.hpp b/include/adc/coupling/base/aux_fill.hpp index d33fbcb1e..537f16a5a 100644 --- a/include/adc/coupling/base/aux_fill.hpp +++ b/include/adc/coupling/base/aux_fill.hpp @@ -1,6 +1,6 @@ #pragma once -#include // kAuxBaseComps +#include // kAuxBaseComps #include // Box2D #include // Fab2D #include // Geometry (x_cell / y_cell) diff --git a/include/adc/coupling/base/elliptic_rhs.hpp b/include/adc/coupling/base/elliptic_rhs.hpp index 35d255529..07051917a 100644 --- a/include/adc/coupling/base/elliptic_rhs.hpp +++ b/include/adc/coupling/base/elliptic_rhs.hpp @@ -1,7 +1,7 @@ #pragma once -#include -#include +#include +#include #include #include #include // load_state diff --git a/include/adc/coupling/schur/amr_condensed_schur_source_stepper.hpp b/include/adc/coupling/schur/amr_condensed_schur_source_stepper.hpp index 84e676257..4705b7901 100644 --- a/include/adc/coupling/schur/amr_condensed_schur_source_stepper.hpp +++ b/include/adc/coupling/schur/amr_condensed_schur_source_stepper.hpp @@ -1,7 +1,7 @@ #pragma once #include // CondensedSchurSourceStepper (#126) + detail kernels -#include +#include #include // ElectrostaticLorentzCondensation (assemble per level) #include // CompositeFacPoisson (composite FAC elliptic solve) #include // mf_average_down_mb (fine -> coarse cascade) diff --git a/include/adc/coupling/schur/condensed_schur_source_stepper.hpp b/include/adc/coupling/schur/condensed_schur_source_stepper.hpp index 130943eaa..a8fb8273c 100644 --- a/include/adc/coupling/schur/condensed_schur_source_stepper.hpp +++ b/include/adc/coupling/schur/condensed_schur_source_stepper.hpp @@ -1,7 +1,7 @@ #pragma once -#include -#include +#include +#include #include // ElectrostaticLorentzCondensation (builder #124) #include // shared geometry-free kernels + validate_krylov_params (#263) #include diff --git a/include/adc/coupling/schur/polar_condensed_schur_source_stepper.hpp b/include/adc/coupling/schur/polar_condensed_schur_source_stepper.hpp index a55fced71..7774d58f9 100644 --- a/include/adc/coupling/schur/polar_condensed_schur_source_stepper.hpp +++ b/include/adc/coupling/schur/polar_condensed_schur_source_stepper.hpp @@ -1,7 +1,7 @@ #pragma once -#include -#include +#include +#include #include // shared geometry-free kernels + validate_krylov_params (#263) #include #include // PolarGeometry diff --git a/include/adc/coupling/schur/schur_condensation.hpp b/include/adc/coupling/schur/schur_condensation.hpp index 8658767c2..33c6c87a5 100644 --- a/include/adc/coupling/schur/schur_condensation.hpp +++ b/include/adc/coupling/schur/schur_condensation.hpp @@ -1,7 +1,7 @@ #pragma once -#include -#include +#include +#include #include #include #include diff --git a/include/adc/coupling/schur/schur_source_kernels.hpp b/include/adc/coupling/schur/schur_source_kernels.hpp index 569c13c91..b743532e9 100644 --- a/include/adc/coupling/schur/schur_source_kernels.hpp +++ b/include/adc/coupling/schur/schur_source_kernels.hpp @@ -1,6 +1,6 @@ #pragma once -#include // Real, ADC_HD +#include // Real, ADC_HD #include // Array4, ConstArray4 #include diff --git a/include/adc/coupling/single/coupler.hpp b/include/adc/coupling/single/coupler.hpp index 7d5a698f6..884dc970a 100644 --- a/include/adc/coupling/single/coupler.hpp +++ b/include/adc/coupling/single/coupler.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include #include // detail::derive_aux_bc + detail::fill_bz_box (shared) #include #include diff --git a/include/adc/coupling/source/coupled_source.hpp b/include/adc/coupling/source/coupled_source.hpp index 6f1ed2f05..61ecf2782 100644 --- a/include/adc/coupling/source/coupled_source.hpp +++ b/include/adc/coupling/source/coupled_source.hpp @@ -11,8 +11,8 @@ #pragma once -#include -#include +#include +#include #include namespace adc { diff --git a/include/adc/coupling/source/coupled_source_program.hpp b/include/adc/coupling/source/coupled_source_program.hpp index 6bb38d834..79d539baf 100644 --- a/include/adc/coupling/source/coupled_source_program.hpp +++ b/include/adc/coupling/source/coupled_source_program.hpp @@ -13,7 +13,7 @@ #pragma once -#include +#include #include // Array4 (POD device-copyable) #include diff --git a/include/adc/coupling/static_system/amr_system_coupler.hpp b/include/adc/coupling/static_system/amr_system_coupler.hpp index 35cb45a96..6b193bc20 100644 --- a/include/adc/coupling/static_system/amr_system_coupler.hpp +++ b/include/adc/coupling/static_system/amr_system_coupler.hpp @@ -1,8 +1,8 @@ #pragma once -#include -#include -#include +#include +#include +#include #include // detail::coupler_inject_aux_mb #include // detail::derive_aux_bc + detail::fill_bz_box (shared) #include // CoupledSourceFor diff --git a/include/adc/coupling/static_system/system_coupler.hpp b/include/adc/coupling/static_system/system_coupler.hpp index 6b70c8d55..9349d8325 100644 --- a/include/adc/coupling/static_system/system_coupler.hpp +++ b/include/adc/coupling/static_system/system_coupler.hpp @@ -1,7 +1,7 @@ #pragma once -#include -#include +#include +#include #include // detail::derive_aux_bc + detail::fill_bz_box (shared) #include #include diff --git a/include/adc/mesh/box2d.hpp b/include/adc/mesh/box2d.hpp index a7f796d0b..7945f4151 100644 --- a/include/adc/mesh/box2d.hpp +++ b/include/adc/mesh/box2d.hpp @@ -12,7 +12,7 @@ #pragma once -#include // ADC_HD: nx/ny/length called from Geometry::dx() inside a device kernel +#include // ADC_HD: nx/ny/length called from Geometry::dx() inside a device kernel #include #include diff --git a/include/adc/mesh/fab2d.hpp b/include/adc/mesh/fab2d.hpp index 7d0bcf832..7649f791d 100644 --- a/include/adc/mesh/fab2d.hpp +++ b/include/adc/mesh/fab2d.hpp @@ -13,8 +13,8 @@ #pragma once -#include -#include +#include +#include #include #include diff --git a/include/adc/mesh/for_each.hpp b/include/adc/mesh/for_each.hpp index 2c2277c68..47363f341 100644 --- a/include/adc/mesh/for_each.hpp +++ b/include/adc/mesh/for_each.hpp @@ -18,8 +18,8 @@ #pragma once -#include // detail::ensure_kokkos_initialized + device_fence (life cycle) -#include +#include // detail::ensure_kokkos_initialized + device_fence (life cycle) +#include #include #include // std::int64_t: cell counts (LLP64 portability, no-op on LP64) diff --git a/include/adc/mesh/geometry.hpp b/include/adc/mesh/geometry.hpp index dcc48dcc6..ec692c76f 100644 --- a/include/adc/mesh/geometry.hpp +++ b/include/adc/mesh/geometry.hpp @@ -10,7 +10,7 @@ #pragma once -#include +#include #include namespace adc { diff --git a/include/adc/mesh/mf_arith.hpp b/include/adc/mesh/mf_arith.hpp index b1d1b4b7f..d4999077e 100644 --- a/include/adc/mesh/mf_arith.hpp +++ b/include/adc/mesh/mf_arith.hpp @@ -11,7 +11,7 @@ #pragma once -#include +#include #include #include #include diff --git a/include/adc/mesh/multifab.hpp b/include/adc/mesh/multifab.hpp index 47f860088..66228e4f7 100644 --- a/include/adc/mesh/multifab.hpp +++ b/include/adc/mesh/multifab.hpp @@ -12,7 +12,7 @@ #pragma once -#include +#include #include #include #include diff --git a/include/adc/mesh/physical_bc.hpp b/include/adc/mesh/physical_bc.hpp index 284118cd4..28459cece 100644 --- a/include/adc/mesh/physical_bc.hpp +++ b/include/adc/mesh/physical_bc.hpp @@ -12,7 +12,7 @@ #pragma once -#include +#include #include #include #include diff --git a/include/adc/mesh/refinement.hpp b/include/adc/mesh/refinement.hpp index 4c96b042a..0abe0101f 100644 --- a/include/adc/mesh/refinement.hpp +++ b/include/adc/mesh/refinement.hpp @@ -16,7 +16,7 @@ #include #include -#include +#include #include #include #include diff --git a/include/adc/numerics/dense_eig.hpp b/include/adc/numerics/dense_eig.hpp index c7a0f862a..40b75b581 100644 --- a/include/adc/numerics/dense_eig.hpp +++ b/include/adc/numerics/dense_eig.hpp @@ -43,7 +43,7 @@ #include #include -#include +#include namespace adc { diff --git a/include/adc/numerics/elliptic/eb/cut_fraction.hpp b/include/adc/numerics/elliptic/eb/cut_fraction.hpp index a13f273fe..25ca35664 100644 --- a/include/adc/numerics/elliptic/eb/cut_fraction.hpp +++ b/include/adc/numerics/elliptic/eb/cut_fraction.hpp @@ -1,6 +1,6 @@ #pragma once -#include // Real, ADC_HD +#include // Real, ADC_HD /// @file /// @brief SHARED cut-fraction primitive (cut-cell / embedded boundary). diff --git a/include/adc/numerics/elliptic/interface/elliptic_interface.hpp b/include/adc/numerics/elliptic/interface/elliptic_interface.hpp index f1116f9a5..70e876626 100644 --- a/include/adc/numerics/elliptic/interface/elliptic_interface.hpp +++ b/include/adc/numerics/elliptic/interface/elliptic_interface.hpp @@ -21,7 +21,7 @@ /// notion of iterative tolerance), and that is correct; /// - none of the elliptic classes is modified to satisfy a concept (deliberate refusal). -#include +#include #include #include #include diff --git a/include/adc/numerics/elliptic/interface/elliptic_problem.hpp b/include/adc/numerics/elliptic/interface/elliptic_problem.hpp index 4dd0695fa..44ab5e088 100644 --- a/include/adc/numerics/elliptic/interface/elliptic_problem.hpp +++ b/include/adc/numerics/elliptic/interface/elliptic_problem.hpp @@ -22,7 +22,7 @@ /// - FieldPostprocessKernel is a NAMED functor (and not an ADC_HD lambda) because it is first instantiated /// from an external TU: an extended lambda would break the device kernel emission under nvcc. -#include +#include #include // homogeneous(const BCRec&) #include #include diff --git a/include/adc/numerics/elliptic/interface/elliptic_solver.hpp b/include/adc/numerics/elliptic/interface/elliptic_solver.hpp index bd4a5b49b..fe7a1a5cc 100644 --- a/include/adc/numerics/elliptic/interface/elliptic_solver.hpp +++ b/include/adc/numerics/elliptic/interface/elliptic_solver.hpp @@ -18,7 +18,7 @@ /// directly; PoissonFFTSolver/DistributedFFTSolver are what wrap it; /// - phi() is kept between calls (warm start): do NOT assume an implicit reset to zero. -#include +#include #include #include diff --git a/include/adc/numerics/elliptic/linear/krylov_solver.hpp b/include/adc/numerics/elliptic/linear/krylov_solver.hpp index 19248a8fb..5960d127b 100644 --- a/include/adc/numerics/elliptic/linear/krylov_solver.hpp +++ b/include/adc/numerics/elliptic/linear/krylov_solver.hpp @@ -23,7 +23,7 @@ /// (all_reduce_sum) and called on ALL ranks, including a rank WITHOUT a box (no deadlock); /// - ADDITIVE: no existing path (GeometricMG / Poisson) goes through this header (opt-in). -#include +#include #include #include #include diff --git a/include/adc/numerics/elliptic/mg/composite_fac_poisson.hpp b/include/adc/numerics/elliptic/mg/composite_fac_poisson.hpp index ba5c719ac..8df6d7e42 100644 --- a/include/adc/numerics/elliptic/mg/composite_fac_poisson.hpp +++ b/include/adc/numerics/elliptic/mg/composite_fac_poisson.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include #include #include #include diff --git a/include/adc/numerics/elliptic/mg/geometric_mg.hpp b/include/adc/numerics/elliptic/mg/geometric_mg.hpp index 9c984842c..080a10971 100644 --- a/include/adc/numerics/elliptic/mg/geometric_mg.hpp +++ b/include/adc/numerics/elliptic/mg/geometric_mg.hpp @@ -28,7 +28,7 @@ /// bit-identical to the historical stencil; /// - device kernels are NAMED FUNCTORS (recipe #93/#64): extended lambda forbidden cross-TU under nvcc. -#include +#include #include #include #include diff --git a/include/adc/numerics/elliptic/poisson/poisson_operator.hpp b/include/adc/numerics/elliptic/poisson/poisson_operator.hpp index b9ab2a671..62d9f5420 100644 --- a/include/adc/numerics/elliptic/poisson/poisson_operator.hpp +++ b/include/adc/numerics/elliptic/poisson/poisson_operator.hpp @@ -26,7 +26,7 @@ /// external TU: an extended lambda would break the device kernel emission under nvcc; /// - the red-black sweep is parallelizable (a red cell depends only on black cells). -#include +#include #include #include #include diff --git a/include/adc/numerics/elliptic/polar/polar_poisson_solver.hpp b/include/adc/numerics/elliptic/polar/polar_poisson_solver.hpp index 97c271611..6cef3afaa 100644 --- a/include/adc/numerics/elliptic/polar/polar_poisson_solver.hpp +++ b/include/adc/numerics/elliptic/polar/polar_poisson_solver.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include #include #include #include diff --git a/include/adc/numerics/elliptic/polar/polar_tensor_operator.hpp b/include/adc/numerics/elliptic/polar/polar_tensor_operator.hpp index 65e69a4fe..b0d523989 100644 --- a/include/adc/numerics/elliptic/polar/polar_tensor_operator.hpp +++ b/include/adc/numerics/elliptic/polar/polar_tensor_operator.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include #include #include #include diff --git a/include/adc/numerics/embedded_boundary.hpp b/include/adc/numerics/embedded_boundary.hpp index 0b3dc0e7a..00d1382b0 100644 --- a/include/adc/numerics/embedded_boundary.hpp +++ b/include/adc/numerics/embedded_boundary.hpp @@ -1,6 +1,6 @@ #pragma once -#include // Real, ADC_HD +#include // Real, ADC_HD #include // std::hypot #include // std::convertible_to (diagnostics only) diff --git a/include/adc/numerics/lorentz_eliminator.hpp b/include/adc/numerics/lorentz_eliminator.hpp index 3287c4491..a124db057 100644 --- a/include/adc/numerics/lorentz_eliminator.hpp +++ b/include/adc/numerics/lorentz_eliminator.hpp @@ -9,7 +9,7 @@ #pragma once -#include +#include namespace adc { diff --git a/include/adc/numerics/numerical_flux.hpp b/include/adc/numerics/numerical_flux.hpp index edac0d218..9ceeb2008 100644 --- a/include/adc/numerics/numerical_flux.hpp +++ b/include/adc/numerics/numerical_flux.hpp @@ -38,8 +38,8 @@ #pragma once -#include -#include +#include +#include #include // std::sqrt (RoeFlux: Roe average); libstdc++ does not pull it transitively #include // Riemann capabilities (HasHLLCStructure / HasRoeDissipation) diff --git a/include/adc/numerics/reconstruction.hpp b/include/adc/numerics/reconstruction.hpp index 0ee7c4cdd..81a53e89d 100644 --- a/include/adc/numerics/reconstruction.hpp +++ b/include/adc/numerics/reconstruction.hpp @@ -12,7 +12,7 @@ #pragma once -#include +#include #include diff --git a/include/adc/numerics/spatial/face_flux.hpp b/include/adc/numerics/spatial/face_flux.hpp index ca28d28f8..6751d4584 100644 --- a/include/adc/numerics/spatial/face_flux.hpp +++ b/include/adc/numerics/spatial/face_flux.hpp @@ -15,7 +15,7 @@ #pragma once -#include // HasPrimitiveVars: optional primitive reconstruction +#include // HasPrimitiveVars: optional primitive reconstruction #include #include #include diff --git a/include/adc/numerics/spatial/positivity.hpp b/include/adc/numerics/spatial/positivity.hpp index 111aa43b7..d4de385a3 100644 --- a/include/adc/numerics/spatial/positivity.hpp +++ b/include/adc/numerics/spatial/positivity.hpp @@ -11,9 +11,9 @@ #pragma once -#include -#include -#include // VariableRole, VariableSet: Density-role resolution +#include +#include +#include // VariableRole, VariableSet: Density-role resolution #include // ConstArray4: face-state source cell read #include // positivity_comp: model without Density role -> clear error diff --git a/include/adc/numerics/spatial/state_access.hpp b/include/adc/numerics/spatial/state_access.hpp index f156ba8d3..8270db9ed 100644 --- a/include/adc/numerics/spatial/state_access.hpp +++ b/include/adc/numerics/spatial/state_access.hpp @@ -14,10 +14,10 @@ #pragma once -#include // aux_comps, HasPrimitiveVars: optional primitive reconstruction -#include -#include -#include // VariableSet: SourceFreeModel::conservative_vars forwarding +#include // aux_comps, HasPrimitiveVars: optional primitive reconstruction +#include +#include +#include // VariableSet: SourceFreeModel::conservative_vars forwarding #include // ConstArray4: load_state / load_aux read path #include diff --git a/include/adc/numerics/spatial/wave_speed.hpp b/include/adc/numerics/spatial/wave_speed.hpp index 9890d4752..278abf720 100644 --- a/include/adc/numerics/spatial/wave_speed.hpp +++ b/include/adc/numerics/spatial/wave_speed.hpp @@ -15,8 +15,8 @@ #pragma once -#include -#include +#include +#include #include #include // reduce_max_cell, reduce_min_cell #include diff --git a/include/adc/numerics/spatial_operator_eb.hpp b/include/adc/numerics/spatial_operator_eb.hpp index ed70399f0..b11f9493e 100644 --- a/include/adc/numerics/spatial_operator_eb.hpp +++ b/include/adc/numerics/spatial_operator_eb.hpp @@ -1,7 +1,7 @@ #pragma once -#include -#include +#include +#include #include #include #include diff --git a/include/adc/numerics/spatial_operator_polar.hpp b/include/adc/numerics/spatial_operator_polar.hpp index 84ec6135d..a9c8fa84d 100644 --- a/include/adc/numerics/spatial_operator_polar.hpp +++ b/include/adc/numerics/spatial_operator_polar.hpp @@ -1,7 +1,7 @@ #pragma once -#include -#include +#include +#include #include #include #include diff --git a/include/adc/numerics/time/amr_flux_helpers.hpp b/include/adc/numerics/time/amr_flux_helpers.hpp index 33141a3e5..985c22e91 100644 --- a/include/adc/numerics/time/amr_flux_helpers.hpp +++ b/include/adc/numerics/time/amr_flux_helpers.hpp @@ -1,7 +1,7 @@ #pragma once #include -#include +#include #include #include #include diff --git a/include/adc/numerics/time/amr_patch_range.hpp b/include/adc/numerics/time/amr_patch_range.hpp index de92d948a..079f5e98e 100644 --- a/include/adc/numerics/time/amr_patch_range.hpp +++ b/include/adc/numerics/time/amr_patch_range.hpp @@ -1,7 +1,7 @@ #pragma once #include -#include +#include #include // all_reduce_sum_inplace (distributed multi-patch reflux) #include diff --git a/include/adc/numerics/time/amr_subcycling.hpp b/include/adc/numerics/time/amr_subcycling.hpp index 10072f667..b6f151925 100644 --- a/include/adc/numerics/time/amr_subcycling.hpp +++ b/include/adc/numerics/time/amr_subcycling.hpp @@ -1,6 +1,6 @@ #pragma once #include // saxpy, lincomb (SSPRK3 stages, named device-clean functors) -#include +#include #include // coarsen, parallel_copy #include #include diff --git a/include/adc/numerics/time/deprecated/amr_multilevel.hpp b/include/adc/numerics/time/deprecated/amr_multilevel.hpp index 06a1cc40d..c8e172fbc 100644 --- a/include/adc/numerics/time/deprecated/amr_multilevel.hpp +++ b/include/adc/numerics/time/deprecated/amr_multilevel.hpp @@ -1,7 +1,7 @@ #pragma once #include -#include +#include #include #include diff --git a/include/adc/numerics/time/imex.hpp b/include/adc/numerics/time/imex.hpp index bfb45501f..75b5fc200 100644 --- a/include/adc/numerics/time/imex.hpp +++ b/include/adc/numerics/time/imex.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include #include /// @file diff --git a/include/adc/numerics/time/implicit_stepper.hpp b/include/adc/numerics/time/implicit_stepper.hpp index 6b783214d..341551176 100644 --- a/include/adc/numerics/time/implicit_stepper.hpp +++ b/include/adc/numerics/time/implicit_stepper.hpp @@ -1,7 +1,7 @@ #pragma once -#include -#include +#include +#include #include #include #include // load_state, load_aux diff --git a/include/adc/numerics/time/reference/amr_level.hpp b/include/adc/numerics/time/reference/amr_level.hpp index f129e16c2..b21b834eb 100644 --- a/include/adc/numerics/time/reference/amr_level.hpp +++ b/include/adc/numerics/time/reference/amr_level.hpp @@ -1,6 +1,6 @@ #pragma once #include -#include +#include /// @file /// @brief Single-box MultiFab AMR stack: struct detail::AmrLevelMF and the recursive diff --git a/include/adc/numerics/time/reference/amr_reflux.hpp b/include/adc/numerics/time/reference/amr_reflux.hpp index 13cd2cf82..9732dae79 100644 --- a/include/adc/numerics/time/reference/amr_reflux.hpp +++ b/include/adc/numerics/time/reference/amr_reflux.hpp @@ -1,8 +1,8 @@ #pragma once -#include -#include -#include +#include +#include +#include #include #include #include diff --git a/include/adc/numerics/time/scheduler.hpp b/include/adc/numerics/time/scheduler.hpp index f987ed969..aac864417 100644 --- a/include/adc/numerics/time/scheduler.hpp +++ b/include/adc/numerics/time/scheduler.hpp @@ -1,7 +1,7 @@ #pragma once -#include -#include +#include +#include #include #include diff --git a/include/adc/numerics/time/splitting.hpp b/include/adc/numerics/time/splitting.hpp index 8dc2bd89d..a8784ce13 100644 --- a/include/adc/numerics/time/splitting.hpp +++ b/include/adc/numerics/time/splitting.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include #include /// @file diff --git a/include/adc/numerics/time/ssprk.hpp b/include/adc/numerics/time/ssprk.hpp index c2b9a65f9..c219e7d66 100644 --- a/include/adc/numerics/time/ssprk.hpp +++ b/include/adc/numerics/time/ssprk.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include #include #include #include diff --git a/include/adc/numerics/time/time_steppers.hpp b/include/adc/numerics/time/time_steppers.hpp index a8bb5fc28..cbcd8a2ed 100644 --- a/include/adc/numerics/time/time_steppers.hpp +++ b/include/adc/numerics/time/time_steppers.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include #include // saxpy, lincomb #include diff --git a/include/adc/physics/advection_diffusion.hpp b/include/adc/physics/advection_diffusion.hpp deleted file mode 100644 index c7e9e1f6f..000000000 --- a/include/adc/physics/advection_diffusion.hpp +++ /dev/null @@ -1,17 +0,0 @@ -#pragma once - -/// @file -/// @brief Compat forwarder (DEPRECATED location). The AdvectionDiffusion validation/reference brick -/// moved to adc/validation/physics/advection_diffusion.hpp under namespace adc::validation -/// (ADC-329); it is no longer part of the production brick surface. -/// -/// Prefer including and naming the type -/// adc::validation::AdvectionDiffusion. This header keeps the old include path and the -/// adc::AdvectionDiffusion name working for existing/external callers; it may be removed later. - -#include - -namespace adc { -using validation:: - AdvectionDiffusion; ///< deprecated alias; prefer adc::validation::AdvectionDiffusion -} // namespace adc diff --git a/include/adc/physics/bricks.hpp b/include/adc/physics/bricks/bricks.hpp similarity index 87% rename from include/adc/physics/bricks.hpp rename to include/adc/physics/bricks/bricks.hpp index 55f060d13..aefdca6bb 100644 --- a/include/adc/physics/bricks.hpp +++ b/include/adc/physics/bricks/bricks.hpp @@ -18,7 +18,7 @@ /// The old adc/physics/{advection_diffusion,langmuir,two_fluid_isothermal}.hpp paths remain as /// deprecated compat forwarders and are intentionally not aggregated here. -#include -#include -#include -#include +#include +#include +#include +#include diff --git a/include/adc/physics/elliptic.hpp b/include/adc/physics/bricks/elliptic.hpp similarity index 97% rename from include/adc/physics/elliptic.hpp rename to include/adc/physics/bricks/elliptic.hpp index 441c1cc8c..637d624e9 100644 --- a/include/adc/physics/elliptic.hpp +++ b/include/adc/physics/bricks/elliptic.hpp @@ -1,7 +1,7 @@ #pragma once -#include -#include +#include +#include /// @file /// @brief Elliptic RIGHT-HAND-SIDE bricks f(U): a block's contribution to the right-hand side diff --git a/include/adc/physics/hyperbolic.hpp b/include/adc/physics/bricks/hyperbolic.hpp similarity index 98% rename from include/adc/physics/hyperbolic.hpp rename to include/adc/physics/bricks/hyperbolic.hpp index 81f80e642..cb06baf4a 100644 --- a/include/adc/physics/hyperbolic.hpp +++ b/include/adc/physics/bricks/hyperbolic.hpp @@ -1,9 +1,9 @@ #pragma once -#include -#include -#include -#include // Euler: reused as the CompressibleFlux hyperbolic brick +#include +#include +#include +#include // Euler: reused as the CompressibleFlux hyperbolic brick #include diff --git a/include/adc/physics/source.hpp b/include/adc/physics/bricks/source.hpp similarity index 97% rename from include/adc/physics/source.hpp rename to include/adc/physics/bricks/source.hpp index f053c7b78..e968891f1 100644 --- a/include/adc/physics/source.hpp +++ b/include/adc/physics/bricks/source.hpp @@ -1,8 +1,8 @@ #pragma once -#include // aux_comps<>: propagates the aux channel of a composite source -#include -#include +#include // aux_comps<>: propagates the aux channel of a composite source +#include +#include /// @file /// @brief SOURCE bricks S(U, aux): local term, generic over state size (acts on diff --git a/include/adc/physics/composite.hpp b/include/adc/physics/composition/composite.hpp similarity index 97% rename from include/adc/physics/composite.hpp rename to include/adc/physics/composition/composite.hpp index 15ecae331..363259390 100644 --- a/include/adc/physics/composite.hpp +++ b/include/adc/physics/composition/composite.hpp @@ -1,9 +1,9 @@ #pragma once -#include // HyperbolicPhysicalModel: contract of the hyperbolic brick -#include -#include -#include +#include // HyperbolicPhysicalModel: contract of the hyperbolic brick +#include +#include +#include /// @file /// @brief CompositeModel: assembles (hyperbolic, source, elliptic) into one compiled PhysicalModel. diff --git a/include/adc/physics/euler.hpp b/include/adc/physics/fluids/euler.hpp similarity index 97% rename from include/adc/physics/euler.hpp rename to include/adc/physics/fluids/euler.hpp index 3156a50c4..5dd7b2b5e 100644 --- a/include/adc/physics/euler.hpp +++ b/include/adc/physics/fluids/euler.hpp @@ -6,9 +6,9 @@ /// separate bricks (physics/source.hpp, physics/elliptic.hpp); this file contains only /// Vars + flux + wave speeds + cons<->prim conversions. -#include -#include -#include +#include +#include +#include #include diff --git a/include/adc/physics/langmuir.hpp b/include/adc/physics/langmuir.hpp deleted file mode 100644 index 6cefc3f73..000000000 --- a/include/adc/physics/langmuir.hpp +++ /dev/null @@ -1,16 +0,0 @@ -#pragma once - -/// @file -/// @brief Compat forwarder (DEPRECATED location). The LangmuirMode validation/reference brick moved -/// to adc/validation/physics/langmuir.hpp under namespace adc::validation (ADC-329); it is no -/// longer part of the production brick surface. -/// -/// Prefer including and naming the type -/// adc::validation::LangmuirMode. This header keeps the old include path and the adc::LangmuirMode -/// name working for existing/external callers; it may be removed later. - -#include - -namespace adc { -using validation::LangmuirMode; ///< deprecated alias; prefer adc::validation::LangmuirMode -} // namespace adc diff --git a/include/adc/physics/two_fluid_isothermal.hpp b/include/adc/physics/two_fluid_isothermal.hpp deleted file mode 100644 index 37a80aac7..000000000 --- a/include/adc/physics/two_fluid_isothermal.hpp +++ /dev/null @@ -1,16 +0,0 @@ -#pragma once - -/// @file -/// @brief Compat forwarder (DEPRECATED location). The TwoFluidLinear validation/reference brick -/// moved to adc/validation/physics/two_fluid_isothermal.hpp under namespace adc::validation -/// (ADC-329); it is no longer part of the production brick surface. -/// -/// Prefer including and naming the type -/// adc::validation::TwoFluidLinear. This header keeps the old include path and the -/// adc::TwoFluidLinear name working for existing/external callers; it may be removed later. - -#include - -namespace adc { -using validation::TwoFluidLinear; ///< deprecated alias; prefer adc::validation::TwoFluidLinear -} // namespace adc diff --git a/include/adc/runtime/amr/amr_runtime.hpp b/include/adc/runtime/amr/amr_runtime.hpp index 914fa9f52..70f6b2013 100644 --- a/include/adc/runtime/amr/amr_runtime.hpp +++ b/include/adc/runtime/amr/amr_runtime.hpp @@ -1,9 +1,9 @@ #pragma once -#include // tag_cells, grow_tags (per-block tags + phi for the union regrid) -#include // TagBox, tag_union (cell-by-cell OR of the tags of all blocks) -#include // kAuxBaseComps -#include // VariableSet, VariableRole, role_from_name (role -> component of coupled sources) +#include // tag_cells, grow_tags (per-block tags + phi for the union regrid) +#include // TagBox, tag_union (cell-by-cell OR of the tags of all blocks) +#include // kAuxBaseComps +#include // VariableSet, VariableRole, role_from_name (role -> component of coupled sources) #include // detail::coupler_inject_aux_mb (aux injection coarse->fine) #include // regrid_compute_fine_layout + regrid_field_on_layout (split bricks) #include // detail::same_layout_or_throw (shared-layout guard) diff --git a/include/adc/runtime/builders/amr_block_seam.hpp b/include/adc/runtime/builders/amr_block_seam.hpp index 0ace5cbfa..250a7b108 100644 --- a/include/adc/runtime/builders/amr_block_seam.hpp +++ b/include/adc/runtime/builders/amr_block_seam.hpp @@ -1,6 +1,6 @@ #pragma once -#include // VariableSet/VariableRole/role_from_name (resolve mask) +#include // VariableSet/VariableRole/role_from_name (resolve mask) #include // dispatch_amr_block / dispatch_amr_compiled + AmrBuildParams #include // AmrRuntimeBlock + AmrTimeMethod #include // dispatch_model_for + compiled bricks + ModelSpec diff --git a/include/adc/runtime/builders/block_builder.hpp b/include/adc/runtime/builders/block_builder.hpp index 5ea130219..e7a9456e1 100644 --- a/include/adc/runtime/builders/block_builder.hpp +++ b/include/adc/runtime/builders/block_builder.hpp @@ -1,7 +1,7 @@ #pragma once -#include // ADC_COLD_FN: COLD block-builder no-optimize attribute (ADC-337) -#include +#include // ADC_COLD_FN: COLD block-builder no-optimize attribute (ADC-337) +#include #include #include // for_each_cell (projection ponctuelle post-pas, ADC-177) #include diff --git a/include/adc/runtime/builders/block_builder_polar.hpp b/include/adc/runtime/builders/block_builder_polar.hpp index e3c58f729..5478064ad 100644 --- a/include/adc/runtime/builders/block_builder_polar.hpp +++ b/include/adc/runtime/builders/block_builder_polar.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include #include #include // PolarGeometry #include @@ -10,7 +10,7 @@ #include // assemble_rhs_polar (REUSED verbatim) #include // SSPRK2Step / SSPRK3Step (core RK math) #include // all_reduce_max (MPI-safe collective reduction) -#include // ExBVelocityPolar, CompositeModel, source/elliptic bricks +#include // ExBVelocityPolar, CompositeModel, source/elliptic bricks #include // UNIQUE registry of tags (validate_limiter/riemann) #include // BlockClosures (light header) #include // detail::dispatch_source / dispatch_elliptic (REUSED) diff --git a/include/adc/runtime/builders/block_seam.hpp b/include/adc/runtime/builders/block_seam.hpp index 7ce622708..1c8d3a0fd 100644 --- a/include/adc/runtime/builders/block_seam.hpp +++ b/include/adc/runtime/builders/block_seam.hpp @@ -1,6 +1,6 @@ #pragma once -#include // VariableSet (block descriptor carried in BuiltBlock) +#include // VariableSet (block descriptor carried in BuiltBlock) #include // make_block + makers + BlockClosures + NewtonOptions/Report #include // make_block_polar + polar makers + PolarGridContext #include // dispatch_model_for + resolve_implicit_components + ModelSpec diff --git a/include/adc/runtime/builders/compiled_block_abi.hpp b/include/adc/runtime/builders/compiled_block_abi.hpp index 363ba6d38..b967e84f4 100644 --- a/include/adc/runtime/builders/compiled_block_abi.hpp +++ b/include/adc/runtime/builders/compiled_block_abi.hpp @@ -10,7 +10,7 @@ #include #include -#include // aux_comps: aux channel width of the generated model +#include // aux_comps: aux channel width of the generated model #include // RuntimeParams: RUNTIME params (P7-b) carried by the ABI #include diff --git a/include/adc/runtime/builders/dsl_block.hpp b/include/adc/runtime/builders/dsl_block.hpp index 004ab3b45..efbe72f8c 100644 --- a/include/adc/runtime/builders/dsl_block.hpp +++ b/include/adc/runtime/builders/dsl_block.hpp @@ -1,6 +1,6 @@ #pragma once -#include // aux_comps: aux width requested by the model +#include // aux_comps: aux width requested by the model #include #include diff --git a/include/adc/runtime/builders/model_factory.hpp b/include/adc/runtime/builders/model_factory.hpp index 0148980c3..2a5ba7150 100644 --- a/include/adc/runtime/builders/model_factory.hpp +++ b/include/adc/runtime/builders/model_factory.hpp @@ -1,8 +1,8 @@ #pragma once -#include // ADC_COLD_FN: COLD-factory no-optimize attribute (ADC-337) -#include // VariableSet/VariableRole/role_from_name/roles_csv (resolve_implicit_components) -#include +#include // ADC_COLD_FN: COLD-factory no-optimize attribute (ADC-337) +#include // VariableSet/VariableRole/role_from_name/roles_csv (resolve_implicit_components) +#include #include // kTransports/kSources/kElliptics: builtin-brick tag registry (ADC-331) #include diff --git a/include/adc/runtime/builders/native_loader.hpp b/include/adc/runtime/builders/native_loader.hpp index 4094d33ae..d430dda88 100644 --- a/include/adc/runtime/builders/native_loader.hpp +++ b/include/adc/runtime/builders/native_loader.hpp @@ -1,8 +1,8 @@ #pragma once -#include // StateVec, Aux, ADC_AUX_FIELDS, kAuxBaseComps -#include // ADC_HD, Real -#include // VariableSet + VariableKind + VariableRole + role_from_name +#include // StateVec, Aux, ADC_AUX_FIELDS, kAuxBaseComps +#include // ADC_HD, Real +#include // VariableSet + VariableKind + VariableRole + role_from_name #include #include #include diff --git a/include/adc/runtime/detail/dynamic_model.hpp b/include/adc/runtime/detail/dynamic_model.hpp index fcc002299..8801d21e0 100644 --- a/include/adc/runtime/detail/dynamic_model.hpp +++ b/include/adc/runtime/detail/dynamic_model.hpp @@ -1,8 +1,8 @@ #pragma once -#include // aux_comps: aux width of the wrapped model -#include -#include +#include // aux_comps: aux width of the wrapped model +#include +#include #include diff --git a/include/adc/runtime/detail/grid_context.hpp b/include/adc/runtime/detail/grid_context.hpp index a2cc0663e..88002d1e1 100644 --- a/include/adc/runtime/detail/grid_context.hpp +++ b/include/adc/runtime/detail/grid_context.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include #include #include #include diff --git a/include/adc/runtime/detail/runtime_params.hpp b/include/adc/runtime/detail/runtime_params.hpp index 01a0d0786..9a29a3648 100644 --- a/include/adc/runtime/detail/runtime_params.hpp +++ b/include/adc/runtime/detail/runtime_params.hpp @@ -1,6 +1,6 @@ #pragma once -#include // Real, ADC_HD (device-callable) +#include // Real, ADC_HD (device-callable) #include diff --git a/include/adc/runtime/detail/wall_predicate.hpp b/include/adc/runtime/detail/wall_predicate.hpp index 5e1500953..45a1b2508 100644 --- a/include/adc/runtime/detail/wall_predicate.hpp +++ b/include/adc/runtime/detail/wall_predicate.hpp @@ -1,6 +1,6 @@ #pragma once -#include // Real +#include // Real #include // detail::DiscDomain (the level-set domain it lives in since ADC-327) #include // std::hypot diff --git a/include/adc/runtime/system.hpp b/include/adc/runtime/system.hpp index 640cdf41d..a1fc00542 100644 --- a/include/adc/runtime/system.hpp +++ b/include/adc/runtime/system.hpp @@ -1,6 +1,6 @@ #pragma once -#include // VariableSet (role-bearing descriptor carried by each block) +#include // VariableSet (role-bearing descriptor carried by each block) #include // NewtonOptions (options of the IMEX source Newton) #include // ADC_EXPORT (methods resolved by the native loader through dlopen) #include // SourceStageOptions / CoupledSourceProgram (facade PODs, ADC-214) diff --git a/include/adc/runtime/system/system_block_store.hpp b/include/adc/runtime/system/system_block_store.hpp index d36a59153..94affe859 100644 --- a/include/adc/runtime/system/system_block_store.hpp +++ b/include/adc/runtime/system/system_block_store.hpp @@ -1,8 +1,8 @@ #pragma once -#include // kAuxBaseComps (default aux channel of the Schur stage: B_z) -#include // Real -#include // VariableSet (role descriptor carried by each block) +#include // kAuxBaseComps (default aux channel of the Schur stage: B_z) +#include // Real +#include // VariableSet (role descriptor carried by each block) #include // Box2D #include // device_fence (marshaling synchronizes the device before reading the host) #include // MultiFab, Array4, ConstArray4 diff --git a/include/adc/runtime/system/system_field_solver.hpp b/include/adc/runtime/system/system_field_solver.hpp index c92fb3357..4871afd94 100644 --- a/include/adc/runtime/system/system_field_solver.hpp +++ b/include/adc/runtime/system/system_field_solver.hpp @@ -1,7 +1,7 @@ #pragma once -#include // kAuxBaseComps (base component of the aux channel) -#include // Real +#include // kAuxBaseComps (base component of the aux channel) +#include // Real #include // MultiFab, Array4, ConstArray4 #include // Box2D #include // device_fence diff --git a/include/adc/runtime/system/system_stepper.hpp b/include/adc/runtime/system/system_stepper.hpp index 378e3dbfa..8f3b544c6 100644 --- a/include/adc/runtime/system/system_stepper.hpp +++ b/include/adc/runtime/system/system_stepper.hpp @@ -1,7 +1,7 @@ #pragma once -#include // kAuxBaseComps (B_z channel read by the condensed source stage) -#include // Real +#include // kAuxBaseComps (B_z channel read by the condensed source stage) +#include // Real #include // CoupledFreqKernel (per-cell coupled frequency) #include // reduce_max_cell (max mu over the cells, device-clean functor) #include // all_reduce_min/max (global bounds: identical dt on all ranks) diff --git a/include/adc/validation/physics/advection_diffusion.hpp b/include/adc/validation/physics/advection_diffusion.hpp index 45d8e44ad..71b9a8c24 100644 --- a/include/adc/validation/physics/advection_diffusion.hpp +++ b/include/adc/validation/physics/advection_diffusion.hpp @@ -14,8 +14,8 @@ /// The legacy include path still works through a compat /// forwarder that aliases adc::validation::AdvectionDiffusion back into adc:: (deprecated). -#include -#include +#include +#include #include diff --git a/include/adc/validation/physics/langmuir.hpp b/include/adc/validation/physics/langmuir.hpp index 91a077474..221f1843c 100644 --- a/include/adc/validation/physics/langmuir.hpp +++ b/include/adc/validation/physics/langmuir.hpp @@ -9,7 +9,7 @@ /// A-stable), while the acoustic correction c_s^2 k^2 stays explicit. Not used by adc_cases as of /// 2026-06-06. The legacy path still works through a compat forwarder. -#include +#include #include diff --git a/include/adc/validation/physics/two_fluid_isothermal.hpp b/include/adc/validation/physics/two_fluid_isothermal.hpp index 468ea5e6f..65fde9dd4 100644 --- a/include/adc/validation/physics/two_fluid_isothermal.hpp +++ b/include/adc/validation/physics/two_fluid_isothermal.hpp @@ -10,7 +10,7 @@ /// as of 2026-06-06. The legacy path still works through a /// compat forwarder. -#include +#include #include diff --git a/python/adc/dsl.py b/python/adc/dsl.py index 477424331..e558d267d 100644 --- a/python/adc/dsl.py +++ b/python/adc/dsl.py @@ -3281,8 +3281,8 @@ def emit_cpp_so_source(self, name=None, hoist_reciprocals=False): "backend='aot' ou 'production'") nv, bricks, composite = self._emit_bricks(name, hoist_reciprocals=hoist_reciprocals) return ('#include \n' - '#include \n' # CompositeModel + NoSource + bricks - '#include \n' + '#include \n' # CompositeModel + NoSource + bricks + '#include \n' + bricks + '\nnamespace adc_generated { using JitModel = %s; }\n' % composite # comma-free alias (metadata macro) + 'extern "C" int adc_model_nvars() { return %d; }\n' % nv @@ -3326,8 +3326,8 @@ def emit_cpp_aot_source(self, name=None, hoist_reciprocals=False): identical to a native add_block block. As opposed to the "jit" backend (IModel, virtual dispatch).""" nv, bricks, composite = self._emit_bricks(name, hoist_reciprocals=hoist_reciprocals) return ('#include \n' - '#include \n' # CompositeModel + NoSource + bricks - '#include \n' + '#include \n' # CompositeModel + NoSource + bricks + '#include \n' + bricks + '\nnamespace adc_generated { using AotModel = %s; }\n' % composite + 'ADC_DEFINE_COMPILED_BLOCK(adc_generated::AotModel)\n' @@ -3428,8 +3428,8 @@ def emit_cpp_native_loader(self, name=None, target="system", hoist_reciprocals=F '#include \n' '#include \n' '#include \n' # ADC_ABI_KEY_LITERAL (key frozen at compile) - '#include \n' # CompositeModel + NoSource + bricks - '#include \n') + '#include \n' # CompositeModel + NoSource + bricks + '#include \n') # Header template of the target: dsl_block.hpp (System) or amr_dsl_block.hpp (AmrSystem). Included # selectively so as not to pull the AMR machinery into a System loader (and vice versa). head += ('#include \n' if target == "system" @@ -4739,8 +4739,8 @@ def _emit_aot_source(self): structs) are stitched together, then assembled into adc::CompositeModel<...>.""" hyp, src, ell = self._slots parts = ['#include \n', - '#include \n', # CompositeModel + native bricks - '#include \n'] # ADC_EXPORT_BLOCK_METADATA / _GAMMA + '#include \n', # CompositeModel + native bricks + '#include \n'] # ADC_EXPORT_BLOCK_METADATA / _GAMMA for slot in self._slots: if slot["struct_text"]: parts.append(slot["struct_text"]) @@ -4785,8 +4785,8 @@ def _emit_jit_source(self): counterpart of emit_cpp_so_source.""" bricks, composite = self._bricks_and_composite() return ('#include \n' - '#include \n' - '#include \n' + '#include \n' + '#include \n' + bricks + '\nnamespace adc_generated { using JitModel = %s; }\n' % composite + 'extern "C" int adc_model_nvars() { return %d; }\n' % self.n_vars @@ -4812,8 +4812,8 @@ def _emit_native_source(self, target="system"): raise ValueError("_emit_native_source: target 'system' | 'amr_system' (got %r)" % (target,)) bricks, composite = self._bricks_and_composite() head = ('#include \n' # ADC_ABI_KEY_LITERAL (key frozen at compile time) - '#include \n' # CompositeModel + native bricks - '#include \n' + '#include \n' # CompositeModel + native bricks + '#include \n' '#include \n') # Header template of the target (selective: do not pull the AMR machinery into a System loader). head += ('#include \n' if target == "system" diff --git a/python/bindings_detail.hpp b/python/bindings_detail.hpp index f20ce20b0..797eff6cd 100644 --- a/python/bindings_detail.hpp +++ b/python/bindings_detail.hpp @@ -10,7 +10,7 @@ #include #include -#include // Kokkos_Core under ADC_HAS_KOKKOS (kokkos_is_initialized) +#include // Kokkos_Core under ADC_HAS_KOKKOS (kokkos_is_initialized) #include // adc::my_rank / n_ranks: rank-0 guard of the multi-rank IO facade #include // adc::abi_key: ABI key exposed to the DSL ("production" path) #include diff --git a/python/init_core.cpp b/python/init_core.cpp index 8d5675cb1..078696e18 100644 --- a/python/init_core.cpp +++ b/python/init_core.cpp @@ -1,6 +1,6 @@ #include "bindings_detail.hpp" -#include // ADC-291: canonical aux name<->component table + bounds +#include // ADC-291: canonical aux name<->component table + bounds // ADC-365: module attributes/globals + SystemConfig + ModelSpec (registered first so System/ // AmrSystem signatures resolve them). diff --git a/python/system.cpp b/python/system.cpp index 5db9dd5b1..fa3475bf5 100644 --- a/python/system.cpp +++ b/python/system.cpp @@ -1,6 +1,6 @@ #include -#include // VariableSet + VariableRole: role descriptor carried by each block +#include // VariableSet + VariableRole: role descriptor carried by each block #include // adc::abi_key + detail::abi_key_string (ABI boundary of the native loader) #include // GridContext + make_block/make_max_speed (compiled closures) #include // ADC-335: per-transport build seam (build_block_exb/.../polar) diff --git a/python/tests/gpu/amrmpi_integrated.cpp b/python/tests/gpu/amrmpi_integrated.cpp index 3db6749fd..d6706a5db 100644 --- a/python/tests/gpu/amrmpi_integrated.cpp +++ b/python/tests/gpu/amrmpi_integrated.cpp @@ -16,8 +16,8 @@ // Lance par amrmpi_romeo_build.sh en srun -n 1/2/4 --gpus-per-task=1 (un GH200 par rang). Sous Cuda, // for_each_cell est async ; density()/mass() de l'AmrSystem fencent en interne avant la lecture hote, // et on encadre la mesure de temps par Kokkos::fence() pour ne pas sous-estimer le cout device. -#include -#include +#include +#include #include #include #include diff --git a/python/tests/gpu/gen_cuda_harness.py b/python/tests/gpu/gen_cuda_harness.py index 810c63f51..e2a5cd3bd 100644 --- a/python/tests/gpu/gen_cuda_harness.py +++ b/python/tests/gpu/gen_cuda_harness.py @@ -8,7 +8,7 @@ brick = build_euler_brick().emit_cpp_brick(name="EulerGen") # CSE active par defaut HARNESS = r"""// harnais CUDA : brique generee sur GPU (H100) vs adc::Euler sur hote. -#include +#include __BRICK__ #include #include diff --git a/python/tests/gpu/gen_kokkos_harness.py b/python/tests/gpu/gen_kokkos_harness.py index 6c38d8062..31f4e0a4a 100644 --- a/python/tests/gpu/gen_kokkos_harness.py +++ b/python/tests/gpu/gen_kokkos_harness.py @@ -8,7 +8,7 @@ HARNESS = r"""// harnais Kokkos : brique generee via Kokkos::parallel_for (CUDA/GH200) vs adc::Euler hote. #include -#include +#include __BRICK__ #include #include diff --git a/python/tests/gpu/gen_kokkos_sim.py b/python/tests/gpu/gen_kokkos_sim.py index 7f13e0825..9acf05dd2 100644 --- a/python/tests/gpu/gen_kokkos_sim.py +++ b/python/tests/gpu/gen_kokkos_sim.py @@ -12,7 +12,7 @@ #define ADC_HAS_KOKKOS 1 #include #include -#include +#include __BRICK__ #include #include diff --git a/python/tests/gpu/gpu_amr_bz_mpi_validate.cpp b/python/tests/gpu/gpu_amr_bz_mpi_validate.cpp index 102be2dea..c1dfbde28 100644 --- a/python/tests/gpu/gpu_amr_bz_mpi_validate.cpp +++ b/python/tests/gpu/gpu_amr_bz_mpi_validate.cpp @@ -11,8 +11,8 @@ // Sortie : reduits GLOBAUX mass/csum/csumsq/cmax (all_reduce sur les boites locales) du bloc B_z apres // un pas AMR, + un compteur de cellules ou B_z relu != bz(centre du niveau) (all_reduce, doit etre 0). -#include -#include +#include +#include #include #include #include diff --git a/python/tests/gpu/gpu_amr_bz_validate.cpp b/python/tests/gpu/gpu_amr_bz_validate.cpp index 607fab104..d12366257 100644 --- a/python/tests/gpu/gpu_amr_bz_validate.cpp +++ b/python/tests/gpu/gpu_amr_bz_validate.cpp @@ -14,8 +14,8 @@ // fin -> u(t+dt) depend de B_z LU AU BON NIVEAU. Imprime exec=, B_z relu par niveau, et les valeurs // finales ; dump binaire de U(grossier+fin) -> diff_bin Cuda vs Serial (dmax sur chaque cellule). -#include -#include +#include +#include #include #include #include diff --git a/python/tests/gpu/gpu_amrsys_facade_validate.cpp b/python/tests/gpu/gpu_amrsys_facade_validate.cpp index 30c6c11d2..40c536002 100644 --- a/python/tests/gpu/gpu_amrsys_facade_validate.cpp +++ b/python/tests/gpu/gpu_amrsys_facade_validate.cpp @@ -12,10 +12,10 @@ // Imprime exec=, masses par bloc, checksums grossier+fin par bloc (%.17g) ; --dump= ecrit // U(grossier+fin, par bloc) pour un diff binaire Cuda vs Serial (dmax par cellule). -#include -#include -#include -#include // ADC_HD +#include +#include +#include +#include // ADC_HD #include #include // ChargeDensityRhs #include diff --git a/python/tests/gpu/gpu_aux_validate.cpp b/python/tests/gpu/gpu_aux_validate.cpp index 97e8c24f0..68ffe1482 100644 --- a/python/tests/gpu/gpu_aux_validate.cpp +++ b/python/tests/gpu/gpu_aux_validate.cpp @@ -15,8 +15,8 @@ // profil NON CONSTANT T_e(x,y) = 1 + x + 2 y pour que la source depende vraiment de la cellule. // Imprime exec=, max|R - T_e*u|, et dump binaire de R -> diff_bin Cuda vs Serial (dmax par cellule). -#include -#include +#include +#include #include #include #include diff --git a/python/tests/gpu/gpu_dsl_production_validate.cpp b/python/tests/gpu/gpu_dsl_production_validate.cpp index a99352406..b011870e2 100644 --- a/python/tests/gpu/gpu_dsl_production_validate.cpp +++ b/python/tests/gpu/gpu_dsl_production_validate.cpp @@ -33,7 +33,7 @@ // MPI (la seam MPI fill_boundary + collectifs Poisson tourne ; le multi-GPU par decoupage de domaine // est le chemin AMR, couvert ailleurs). -#include // CompositeModel + Euler + PotentialForce + ChargeDensity +#include // CompositeModel + Euler + PotentialForce + ChargeDensity #include // add_compiled_model (gabarit natif du chemin production) #include diff --git a/python/tests/gpu/phase1_transport.cpp b/python/tests/gpu/phase1_transport.cpp index 2c35fa8af..e24977c58 100644 --- a/python/tests/gpu/phase1_transport.cpp +++ b/python/tests/gpu/phase1_transport.cpp @@ -13,7 +13,7 @@ #include #include #include -#include // Euler + CompositeModel + NoSource + ChargeDensity +#include // Euler + CompositeModel + NoSource + ChargeDensity #include #include diff --git a/python/tests/gpu/phase2_transport.cpp b/python/tests/gpu/phase2_transport.cpp index 414439df2..a108273f5 100644 --- a/python/tests/gpu/phase2_transport.cpp +++ b/python/tests/gpu/phase2_transport.cpp @@ -14,7 +14,7 @@ #include #include #include -#include // Euler + CompositeModel + NoSource + ChargeDensity +#include // Euler + CompositeModel + NoSource + ChargeDensity #include #include diff --git a/python/tests/test_codegen_dead_prims.py b/python/tests/test_codegen_dead_prims.py index c94c17d78..9c1328b04 100644 --- a/python/tests/test_codegen_dead_prims.py +++ b/python/tests/test_codegen_dead_prims.py @@ -77,9 +77,9 @@ def realizable_states(nstates, seed): HARNESS = r""" -#include -#include -#include +#include +#include +#include __DEFAULT__ __HOIST__ #include diff --git a/python/tests/test_dsl_abi_metadata.py b/python/tests/test_dsl_abi_metadata.py index 912a6c8e0..c00a5e228 100644 --- a/python/tests/test_dsl_abi_metadata.py +++ b/python/tests/test_dsl_abi_metadata.py @@ -81,8 +81,8 @@ def legacy_aot_so(so_path): e = build_legacy_scalar() nv, bricks, composite = e._emit_bricks() src = ('#include \n' - '#include \n' - '#include \n' + '#include \n' + '#include \n' + bricks + '\nnamespace adc_generated { using AotModel = %s; }\n' % composite + 'ADC_DEFINE_COMPILED_BLOCK(adc_generated::AotModel)\n') # PAS de ADC_EXPORT_BLOCK_METADATA @@ -94,8 +94,8 @@ def legacy_jit_so(so_path): e = build_legacy_scalar() nv, bricks, composite = e._emit_bricks() src = ('#include \n' - '#include \n' - '#include \n' + '#include \n' + '#include \n' + bricks + '\nnamespace adc_generated { using JitModel = %s; }\n' % composite + 'extern "C" int adc_model_nvars() { return %d; }\n' % nv diff --git a/python/tests/test_dsl_aux_naux.py b/python/tests/test_dsl_aux_naux.py index 1ddacb3e3..27a654b51 100644 --- a/python/tests/test_dsl_aux_naux.py +++ b/python/tests/test_dsl_aux_naux.py @@ -60,8 +60,8 @@ def main(): return harness = ( - "#include \n" - "#include \n" + "#include \n" + "#include \n" + src + "#include \n" "static_assert(adc_generated::GenBzSrc::n_aux == 4, \"n_aux propage\");\n" diff --git a/python/tests/test_dsl_brick.py b/python/tests/test_dsl_brick.py index d2ab09e6d..7081481bc 100644 --- a/python/tests/test_dsl_brick.py +++ b/python/tests/test_dsl_brick.py @@ -37,8 +37,8 @@ def build_euler_brick(): HARNESS = r""" -#include -#include +#include +#include %s #include #include @@ -88,8 +88,8 @@ def build_exb_brick(): EXB_HARNESS = r""" -#include -#include +#include +#include %s #include #include diff --git a/python/tests/test_dsl_compose.py b/python/tests/test_dsl_compose.py index eda3aff36..e29bb1250 100644 --- a/python/tests/test_dsl_compose.py +++ b/python/tests/test_dsl_compose.py @@ -40,9 +40,9 @@ def build_euler_brick(): HARNESS = r""" -#include -#include -#include +#include +#include +#include %s #include #include diff --git a/python/tests/test_dsl_dynamic.py b/python/tests/test_dsl_dynamic.py index 336bdde26..5a29b11fb 100644 --- a/python/tests/test_dsl_dynamic.py +++ b/python/tests/test_dsl_dynamic.py @@ -18,14 +18,14 @@ LIB = r""" #include -#include +#include %s extern "C" adc::IModel<4>* adc_make_model() { return new adc::ModelAdapter(); } extern "C" void adc_destroy_model(adc::IModel<4>* p) { delete p; } """ MAIN = r""" -#include +#include #include #include #include diff --git a/python/tests/test_dsl_elliptic.py b/python/tests/test_dsl_elliptic.py index f8236627d..f3b443505 100644 --- a/python/tests/test_dsl_elliptic.py +++ b/python/tests/test_dsl_elliptic.py @@ -22,7 +22,7 @@ def build_charge(): HARNESS = r""" -#include +#include %s #include #include diff --git a/python/tests/test_dsl_jit.py b/python/tests/test_dsl_jit.py index af1e15e07..9f0e330c6 100644 --- a/python/tests/test_dsl_jit.py +++ b/python/tests/test_dsl_jit.py @@ -49,9 +49,9 @@ def build_euler_brick(): # E = p/(gamma-1) (vitesse nulle, pas de terme cinetique). Une passe de residu Rusanov pour Gen et # Ref ; on compare le residu cellule par cellule, composante par composante. DRIVER = r""" -#include -#include -#include +#include +#include +#include %s #include #include diff --git a/python/tests/test_dsl_roles.py b/python/tests/test_dsl_roles.py index 2b8231caf..bc3d20c90 100644 --- a/python/tests/test_dsl_roles.py +++ b/python/tests/test_dsl_roles.py @@ -81,8 +81,8 @@ def build_scalar_brick(): HARNESS = r""" -#include -#include +#include +#include %s #include diff --git a/python/tests/test_dsl_source.py b/python/tests/test_dsl_source.py index a95a88085..5486a446c 100644 --- a/python/tests/test_dsl_source.py +++ b/python/tests/test_dsl_source.py @@ -42,7 +42,7 @@ def build_force_model(): HARNESS = r""" -#include +#include %s #include #include diff --git a/python/tests/test_projection_eig.py b/python/tests/test_projection_eig.py index 0706c8def..2e273723f 100644 --- a/python/tests/test_projection_eig.py +++ b/python/tests/test_projection_eig.py @@ -136,9 +136,9 @@ def test_cpp_brick_vs_numpy(cxx, tmp): with open(main, "w") as f: f.write( "#include \n" - "#include \n" - "#include \n" - "#include \n" + "#include \n" + "#include \n" + "#include \n" '#include "eig_brick.hpp"\n' "int main(int argc, char** argv) {\n" " adc_generated::ToyEigCpp m;\n" diff --git a/python/tests/test_projection_eig_predicate.py b/python/tests/test_projection_eig_predicate.py index 1de75802d..8b3ec9dd5 100644 --- a/python/tests/test_projection_eig_predicate.py +++ b/python/tests/test_projection_eig_predicate.py @@ -240,9 +240,9 @@ def test_cpp_brick_vs_numpy(cxx, tmp): with open(main, "w") as f: f.write( "#include \n" - "#include \n" - "#include \n" - "#include \n" + "#include \n" + "#include \n" + "#include \n" '#include "pred_brick.hpp"\n' "int main(int argc, char** argv) {\n" " adc_generated::ToyPredCpp m;\n" diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 22d1e6bb4..2efbd576e 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -423,7 +423,6 @@ adc_add_test(test_positivity_floor) # vivent sous adc/validation/physics/ (namespace adc::validation), hors de la surface production. # Ce test prouve que les NOUVEAUX chemins canoniques ET les forwarders de compat (adc/physics/...) # compilent, et que les alias adc:: deprecies nomment les memes types. --- -adc_add_test(test_physics_validation_compat) # --- cache des vitesses d'onde HLL (opt-in) : PREUVE D'ENGAGEMENT par comptage de model.wave_speeds. # make_block(none, hll) OFF vs ON sur N pas SSPRK2 : bit-exact (0 ulp) + calls_on < calls_off diff --git a/tests/test_adaptive_multirate.cpp b/tests/test_adaptive_multirate.cpp index 167ecd0fc..537610485 100644 --- a/tests/test_adaptive_multirate.cpp +++ b/tests/test_adaptive_multirate.cpp @@ -7,8 +7,8 @@ // Champ uniforme : l'advection ne change rien, seule la source fait grandir n -> on lit // directement le pas effectif de chaque espece. -#include -#include +#include +#include #include #include #include diff --git a/tests/test_amr_aux_bz.cpp b/tests/test_amr_aux_bz.cpp index 376c3701e..02e3aa0dc 100644 --- a/tests/test_amr_aux_bz.cpp +++ b/tests/test_amr_aux_bz.cpp @@ -14,9 +14,9 @@ // canal aux PARTAGE a la largeur MAX (4) a chaque niveau ; B_z peuple a c ; le bloc qui // lit B_z croit (source = B_z u), le bloc de base sur le meme aux elargi reste inerte. -#include -#include -#include +#include +#include +#include #include #include #include diff --git a/tests/test_amr_compiled_model.cpp b/tests/test_amr_compiled_model.cpp index 707efeb39..fdf709e9a 100644 --- a/tests/test_amr_compiled_model.cpp +++ b/tests/test_amr_compiled_model.cpp @@ -7,8 +7,8 @@ // // dispatch_model construit CompositeModel ; on passe // au chemin compile le MEME type (CompressibleFlux == Euler, cf. hyperbolic.hpp) -> parite exacte. -#include // CompositeModel, GravityForce, GravityCoupling -#include // Euler (= CompressibleFlux) +#include // CompositeModel, GravityForce, GravityCoupling +#include // Euler (= CompressibleFlux) #include #include #include diff --git a/tests/test_amr_composite_poisson.cpp b/tests/test_amr_composite_poisson.cpp index 411fc302b..1f80ad752 100644 --- a/tests/test_amr_composite_poisson.cpp +++ b/tests/test_amr_composite_poisson.cpp @@ -15,7 +15,7 @@ #include -#include +#include #include #include #include diff --git a/tests/test_amr_composite_source_conservation.cpp b/tests/test_amr_composite_source_conservation.cpp index 2d2cec92f..e312d48bc 100644 --- a/tests/test_amr_composite_source_conservation.cpp +++ b/tests/test_amr_composite_source_conservation.cpp @@ -19,8 +19,8 @@ // (n0 + n1 seul ne discrimine PAS : conservatif par cellule, donc invariant meme sur une // cellule couverte incoherente ; il faut mesurer une espece a la fois.) -#include -#include +#include +#include #include #include // AmrLevelMP #include diff --git a/tests/test_amr_diffusion.cpp b/tests/test_amr_diffusion.cpp index 13cb690fb..75916165d 100644 --- a/tests/test_amr_diffusion.cpp +++ b/tests/test_amr_diffusion.cpp @@ -5,7 +5,7 @@ // masse totale (grossier average-down) est conservee a travers un pas AMR diffusif, // (2) la diffusion AGIT (le champ se lisse, le pic baisse). -#include +#include #include // AmrLevelMP, advance_amr, mf_average_down_mb #include #include diff --git a/tests/test_amr_hierarchy.cpp b/tests/test_amr_hierarchy.cpp index d833e34fa..882986c3c 100644 --- a/tests/test_amr_hierarchy.cpp +++ b/tests/test_amr_hierarchy.cpp @@ -1,7 +1,7 @@ // AmrHierarchy : construction du niveau grossier, ajout d'un niveau fin imbrique, // et interpolation grossier->fin sur la region raffinee. -#include +#include #include #include #include diff --git a/tests/test_amr_imex_native.cpp b/tests/test_amr_imex_native.cpp index 7cec43c74..790b1133a 100644 --- a/tests/test_amr_imex_native.cpp +++ b/tests/test_amr_imex_native.cpp @@ -36,7 +36,7 @@ // // CMake injecte ADC_TEST_CXX, ADC_TEST_INCLUDE, ADC_TEST_CXX_STD, ADC_TEST_TMPDIR (meme pattern que // test_amr_riemann_native). -#include // CompositeModel, Euler, PotentialForce, ChargeDensity, BackgroundDensity +#include // CompositeModel, Euler, PotentialForce, ChargeDensity, BackgroundDensity #include #include #include @@ -148,7 +148,7 @@ std::string loader_source() { return R"CPP( #include #include -#include +#include #include #include #include diff --git a/tests/test_amr_layout_guard.cpp b/tests/test_amr_layout_guard.cpp index d4a3c8a01..085f4b715 100644 --- a/tests/test_amr_layout_guard.cpp +++ b/tests/test_amr_layout_guard.cpp @@ -15,8 +15,8 @@ // Partie D : AmrHierarchyLayout::from_levels extrait bien la grille (boites, dmap, dx/dy) qui // sert au garde-fou. -#include -#include +#include +#include #include #include // AmrLevelMP #include diff --git a/tests/test_amr_multiblock_compiled.cpp b/tests/test_amr_multiblock_compiled.cpp index 425e0e2da..701f67fe1 100644 --- a/tests/test_amr_multiblock_compiled.cpp +++ b/tests/test_amr_multiblock_compiled.cpp @@ -30,10 +30,10 @@ // (CPU + Kokkos Serial/OpenMP/Cuda), comme test_amr_coupled_source_role_strict et add_compiled_model #16/#18. #include // CsOp (opcodes du bytecode P5) -#include // CompositeModel -#include // ChargeDensity -#include // ExBVelocity -#include // NoSource +#include // CompositeModel +#include // ChargeDensity +#include // ExBVelocity +#include // NoSource #include // add_compiled_model(AmrSystem&, ...) #include // facade AmrSystem #include // ModelSpec (bloc natif, melange compile + natif) diff --git a/tests/test_amr_multiblock_imex.cpp b/tests/test_amr_multiblock_imex.cpp index 4745d7605..e78e9ed59 100644 --- a/tests/test_amr_multiblock_imex.cpp +++ b/tests/test_amr_multiblock_imex.cpp @@ -31,7 +31,7 @@ // AmrRuntime + build_amr_block, EXACTEMENT comme test_amr_multiblock_substeps (acces niveaux/masses). // La FACADE (4)(5) passe par AmrSystem (modeles ModelSpec : exb, potential). -#include // CompositeModel, Euler, BackgroundDensity, ChargeDensity, PotentialForce +#include // CompositeModel, Euler, BackgroundDensity, ChargeDensity, PotentialForce #include // detail::make_shared_amr_layout / build_amr_block / dispatch_amr_block #include // AmrRuntime, AmrRuntimeBlock #include // facade AmrSystem diff --git a/tests/test_amr_native_loader.cpp b/tests/test_amr_native_loader.cpp index 979730a7a..6bd849e36 100644 --- a/tests/test_amr_native_loader.cpp +++ b/tests/test_amr_native_loader.cpp @@ -16,7 +16,7 @@ // // CMake injecte ADC_TEST_CXX (compilateur), ADC_TEST_INCLUDE (dossier des en-tetes adc) et // ADC_TEST_CXX_STD (norme C++ du build, pour que la cle d'ABI du loader concorde avec celle du test). -#include // CompositeModel, Euler, NoSource, BackgroundDensity +#include // CompositeModel, Euler, NoSource, BackgroundDensity #include #include @@ -58,7 +58,7 @@ std::string loader_source() { return R"CPP( #include #include -#include +#include #include namespace adc_generated { using ProdModel = adc::CompositeModel; diff --git a/tests/test_amr_positivity_floor.cpp b/tests/test_amr_positivity_floor.cpp index d2ee1b6e4..687d83126 100644 --- a/tests/test_amr_positivity_floor.cpp +++ b/tests/test_amr_positivity_floor.cpp @@ -18,7 +18,7 @@ // (4) REJECT: a model without a Density role (AdvectionDiffusion) + positivity_floor > 0 -> // runtime_error mentioning positivity_floor (positivity_comp resolved on the AMR path). #include -#include +#include #include // RusanovFlux #include // Weno5, Minmod diff --git a/tests/test_amr_regrid_variable.cpp b/tests/test_amr_regrid_variable.cpp index be78877ea..7c6dd876b 100644 --- a/tests/test_amr_regrid_variable.cpp +++ b/tests/test_amr_regrid_variable.cpp @@ -11,8 +11,8 @@ // (2) la facade multi-blocs : refiner sur l'energie (composante 3 de l'Euler compressible) deplace le // patch fin vers la bosse d'energie, la ou le selecteur par defaut (densite uniforme) garde le // seed central -> les deux layouts DIFFERENT, preuve que la composante lue a change. -#include // Euler::conservative_vars (rho, rho_u, rho_v, E) -#include // VariableSet, VariableRole, VariableKind +#include // Euler::conservative_vars (rho, rho_u, rho_v, E) +#include // VariableSet, VariableRole, VariableKind #include // PatchBox (signature index-espace des patchs fins) #include // AmrSystem, AmrSystemConfig #include // detail::resolve_selected_component (ADC-296) diff --git a/tests/test_amr_riemann_native.cpp b/tests/test_amr_riemann_native.cpp index a56105ea0..e4a09d1ac 100644 --- a/tests/test_amr_riemann_native.cpp +++ b/tests/test_amr_riemann_native.cpp @@ -18,7 +18,7 @@ // // CMake injecte ADC_TEST_CXX, ADC_TEST_INCLUDE, ADC_TEST_CXX_STD, ADC_TEST_TMPDIR (meme pattern // que test_amr_weno5_native). -#include // CompositeModel, Euler, NoSource, BackgroundDensity +#include // CompositeModel, Euler, NoSource, BackgroundDensity #include #include #include @@ -116,7 +116,7 @@ std::string loader_source() { return R"CPP( #include #include -#include +#include #include namespace adc_generated { using ProdModel = adc::CompositeModel; diff --git a/tests/test_amr_seed_no_refine.cpp b/tests/test_amr_seed_no_refine.cpp index f4003f700..f881078eb 100644 --- a/tests/test_amr_seed_no_refine.cpp +++ b/tests/test_amr_seed_no_refine.cpp @@ -10,8 +10,8 @@ // Quand le raffinement EST configure (set_refinement(seuil fini)), le seed est alloue et le regrid de // build chope + distribue exactement comme avant : n_patches()>=1, chemin raffine INCHANGE (la parite // bit-a-bit du chemin raffine est verrouillee par test_amr_compiled_model / test_amr_riemann_native). -#include // CompositeModel, GravityForce, GravityCoupling -#include // Euler (= CompressibleFlux) +#include // CompositeModel, GravityForce, GravityCoupling +#include // Euler (= CompressibleFlux) #include #include #include diff --git a/tests/test_amr_source_covered_cells.cpp b/tests/test_amr_source_covered_cells.cpp index fb1f08fc7..8bc951835 100644 --- a/tests/test_amr_source_covered_cells.cpp +++ b/tests/test_amr_source_covered_cells.cpp @@ -14,8 +14,8 @@ // On verifie l'invariant sur les DEUX chemins : la source de couplage explicite // (coupled_source_step) et la source implicite par defaut (AmrImplicitSourceStepper). -#include -#include +#include +#include #include #include // AmrLevelMP #include diff --git a/tests/test_amr_spatial_parity.cpp b/tests/test_amr_spatial_parity.cpp index 328099a54..b14fd1b17 100644 --- a/tests/test_amr_spatial_parity.cpp +++ b/tests/test_amr_spatial_parity.cpp @@ -13,7 +13,7 @@ // compute_face_fluxes (primitif != conservatif apres un pas), reste fini et // conserve la masse sur un etat lisse periodique. -#include // CompositeModel, CompressibleFlux, NoSource, ChargeDensity +#include // CompositeModel, CompressibleFlux, NoSource, ChargeDensity #include // HLLCFlux, RoeFlux #include // Minmod #include // assemble_rhs, compute_face_fluxes, load_state diff --git a/tests/test_amr_stride_cadence.cpp b/tests/test_amr_stride_cadence.cpp index bcfa154fe..cc3597a0f 100644 --- a/tests/test_amr_stride_cadence.cpp +++ b/tests/test_amr_stride_cadence.cpp @@ -19,8 +19,8 @@ // exactement la meme trajectoire qu'un stride=1 au premier macro-pas (avance // a mac=0), et produit la meme valeur apres N pas qu'un calcul de reference. -#include -#include +#include +#include #include #include // AmrLevelMP #include diff --git a/tests/test_amr_system_bz_multibox.cpp b/tests/test_amr_system_bz_multibox.cpp index 8de3012c5..3e05d8687 100644 --- a/tests/test_amr_system_bz_multibox.cpp +++ b/tests/test_amr_system_bz_multibox.cpp @@ -24,9 +24,9 @@ // mono-box replique n'exerce pas. Charges nulles -> phi=0, Poisson trivialement correct : le test // isole le peuplement de B_z. -#include -#include -#include +#include +#include +#include #include #include // ChargeDensityRhs #include diff --git a/tests/test_amr_system_bz_pop.cpp b/tests/test_amr_system_bz_pop.cpp index ffd5f9865..3215f015b 100644 --- a/tests/test_amr_system_bz_pop.cpp +++ b/tests/test_amr_system_bz_pop.cpp @@ -21,9 +21,9 @@ // (D) SETTER set_bz : poser B_z apres construction donne le meme resultat que par le ctor. // (E) GARDE / BIT-IDENTITE : sans bz fourni, la composante B_z reste 0 (comportement historique). -#include -#include -#include +#include +#include +#include #include #include // ChargeDensityRhs #include diff --git a/tests/test_amr_system_coupler.cpp b/tests/test_amr_system_coupler.cpp index b8ddc9014..35cba96ea 100644 --- a/tests/test_amr_system_coupler.cpp +++ b/tests/test_amr_system_coupler.cpp @@ -9,8 +9,8 @@ // Le defaut AmrImplicitSourceStepper resout backward-Euler sur CHAQUE niveau : // grossier ET fin relaxent, bornes, stables a grand dt. -#include -#include +#include +#include #include #include // AmrLevelMP #include diff --git a/tests/test_amr_weno5_native.cpp b/tests/test_amr_weno5_native.cpp index f121650ee..107ca2394 100644 --- a/tests/test_amr_weno5_native.cpp +++ b/tests/test_amr_weno5_native.cpp @@ -21,7 +21,7 @@ // // CMake injecte ADC_TEST_CXX (compilateur), ADC_TEST_INCLUDE (en-tetes adc), ADC_TEST_CXX_STD (norme // C++ du build : la cle d'ABI du loader concorde avec celle du test) et ADC_TEST_TMPDIR. -#include // CompositeModel, Euler, NoSource, BackgroundDensity +#include // CompositeModel, Euler, NoSource, BackgroundDensity #include #include #include @@ -120,7 +120,7 @@ std::string loader_source() { return R"CPP( #include #include -#include +#include #include namespace adc_generated { using ProdModel = adc::CompositeModel; diff --git a/tests/test_assembler_driver.cpp b/tests/test_assembler_driver.cpp index 59f0ee54b..5203d10ef 100644 --- a/tests/test_assembler_driver.cpp +++ b/tests/test_assembler_driver.cpp @@ -2,8 +2,8 @@ // champs (Poisson de systeme + aux + residu de bloc) SANS avancer ; un SystemDriver AVANCE // (et possede un assembleur). "advance un coupleur" devient "advance un driver". -#include -#include +#include +#include #include // SystemAssembler, SystemDriver, SystemCoupler #include #include diff --git a/tests/test_aux_composite.cpp b/tests/test_aux_composite.cpp index dbf3d61bd..528b4fef4 100644 --- a/tests/test_aux_composite.cpp +++ b/tests/test_aux_composite.cpp @@ -8,12 +8,12 @@ // (B) le modele compose lit bien B_z dans assemble_rhs (grad nul -> flux nul -> R = B_z u) ; // (C) un compose SANS brique a champ extra reste a n_aux == 3 (bit-identique). -#include -#include -#include -#include -#include // ExBVelocity (brique hyperbolique 1 var) -#include // NoSource +#include +#include +#include +#include +#include // ExBVelocity (brique hyperbolique 1 var) +#include // NoSource #include #include #include diff --git a/tests/test_aux_coupler_bz.cpp b/tests/test_aux_coupler_bz.cpp index 9473a3341..e443c839b 100644 --- a/tests/test_aux_coupler_bz.cpp +++ b/tests/test_aux_coupler_bz.cpp @@ -5,9 +5,9 @@ // modele jouet n_aux=4, flux nul, elliptic_rhs nul (phi = 0), source S = B_z * u. // -> du/dt = B_z u ; B_z constant c -> u(t) = u0 * A^N avec A l'amplification SSPRK2. -#include -#include -#include +#include +#include +#include #include #include #include diff --git a/tests/test_aux_extra.cpp b/tests/test_aux_extra.cpp index 1929119b3..4f952ece8 100644 --- a/tests/test_aux_extra.cpp +++ b/tests/test_aux_extra.cpp @@ -7,9 +7,9 @@ // composante 3 du canal aux -- changer sa valeur ne change rien au residu. // Le coeur ne connait aucune physique : les deux modeles sont des jouets inline. -#include -#include -#include +#include +#include +#include #include #include #include diff --git a/tests/test_aux_halo.cpp b/tests/test_aux_halo.cpp index 1f3116009..1d8d08d5b 100644 --- a/tests/test_aux_halo.cpp +++ b/tests/test_aux_halo.cpp @@ -4,7 +4,7 @@ // strictly bit-identical. This is the mechanism the System / polar / AMR aux-ghost paths reuse to // honor a per-field halo declared via adc.AuxHalo (Refs ADC-291). -#include +#include #include #include #include diff --git a/tests/test_aux_names.cpp b/tests/test_aux_names.cpp index 81aa2b536..211f921ec 100644 --- a/tests/test_aux_names.cpp +++ b/tests/test_aux_names.cpp @@ -4,8 +4,8 @@ // canonical aux field by name WITHOUT the Python facade. This test pins the C++ side; the // C++<->Python coherence is pinned by python/tests/test_capabilities.py. -#include -#include +#include +#include #include #include diff --git a/tests/test_aux_runtime_bz.cpp b/tests/test_aux_runtime_bz.cpp index 4dfc7a748..fb0f2c68d 100644 --- a/tests/test_aux_runtime_bz.cpp +++ b/tests/test_aux_runtime_bz.cpp @@ -6,8 +6,8 @@ // modele MagModel = CompositeModel, flux ExB (grad=0 -> nul), // source S = B_z u, elliptic_rhs nul (phi=0) -> eval_rhs = B_z u = c (densite 1, B_z constant c). -#include -#include // ExBVelocity +#include +#include // ExBVelocity #include // add_compiled_model #include diff --git a/tests/test_aux_single_source.cpp b/tests/test_aux_single_source.cpp index ee357028d..cbc2dfb2f 100644 --- a/tests/test_aux_single_source.cpp +++ b/tests/test_aux_single_source.cpp @@ -16,8 +16,8 @@ // Aucun parallelisme ici : on appelle load_aux sur un Fab2D mono-box, c'est le coeur de la // lecture device, mais le test reste pur hote (CPU). -#include -#include +#include +#include #include #include #include diff --git a/tests/test_aux_system_bz.cpp b/tests/test_aux_system_bz.cpp index d88e6065c..9e295c490 100644 --- a/tests/test_aux_system_bz.cpp +++ b/tests/test_aux_system_bz.cpp @@ -6,9 +6,9 @@ // (B) le bloc qui lit B_z voit la source S = B_z u (residu = c) ; // (C) le bloc de base, sur le meme aux elargi, reste a residu nul (comp 3 ignoree). -#include -#include -#include +#include +#include +#include #include #include #include diff --git a/tests/test_aux_te.cpp b/tests/test_aux_te.cpp index a3dc507af..7572900cb 100644 --- a/tests/test_aux_te.cpp +++ b/tests/test_aux_te.cpp @@ -4,10 +4,10 @@ // champ (composante 4) et la population derivee cote System (set_electron_temperature_from + apply_te // recalcule a chaque solve_fields). Chemin de production : add_compiled_model + eval_rhs. -#include -#include // Euler (bloc fluide source de T_e) -#include // ExBVelocity -#include // NoSource +#include +#include // Euler (bloc fluide source de T_e) +#include // ExBVelocity +#include // NoSource #include // add_compiled_model #include diff --git a/tests/test_block_builder.cpp b/tests/test_block_builder.cpp index 3ceb5eb33..192ad1eb3 100644 --- a/tests/test_block_builder.cpp +++ b/tests/test_block_builder.cpp @@ -7,8 +7,8 @@ // main (sans System), puis on verifie que make_block / make_max_speed / make_poisson_rhs produisent // exactement le residu / la vitesse d'onde / le second membre de Poisson du chemin direct, et que // l'avance SSPRK2 conserve la masse. Si ca compile et passe, un .so genere peut faire de meme. -#include // CompositeModel, NoSource, GravityForce, GravityCoupling -#include // Euler (brique hyperbolique compressible) +#include // CompositeModel, NoSource, GravityForce, GravityCoupling +#include // Euler (brique hyperbolique compressible) #include #include diff --git a/tests/test_cfl_dt.cpp b/tests/test_cfl_dt.cpp index 554040e14..43923b656 100644 --- a/tests/test_cfl_dt.cpp +++ b/tests/test_cfl_dt.cpp @@ -3,8 +3,8 @@ // especes -> l'espece la plus rapide contraint le pas. Combine au Stride d'une espece lente, // cela donne le multirate pratique. -#include -#include +#include +#include #include #include #include diff --git a/tests/test_cluster.cpp b/tests/test_cluster.cpp index 72eedaa43..8b4de02fe 100644 --- a/tests/test_cluster.cpp +++ b/tests/test_cluster.cpp @@ -1,8 +1,8 @@ // Berger-Rigoutsos : bloc plein -> une box, deux blocs separes -> deux boxes, // gros bloc -> chop par max_box_size, et couverture complete d'une forme en L. -#include -#include +#include +#include #include #include diff --git a/tests/test_compiled_model_parity.cpp b/tests/test_compiled_model_parity.cpp index 6a609bc08..ce512d327 100644 --- a/tests/test_compiled_model_parity.cpp +++ b/tests/test_compiled_model_parity.cpp @@ -4,8 +4,8 @@ // les vrais MultiFab du System, sans marshaling) : on exige un residu eval_rhs ET un potentiel // BIT-IDENTIQUES au bloc natif. C'est ce qui donne au modele genere par le DSL la parite Kokkos + MPI // du bloc natif (les deux passent par le meme make_block / install_block / fill_boundary). -#include // CompositeModel, GravityForce, GravityCoupling -#include // Euler (= CompressibleFlux) +#include // CompositeModel, GravityForce, GravityCoupling +#include // Euler (= CompressibleFlux) #include #include #include diff --git a/tests/test_coupled_source.cpp b/tests/test_coupled_source.cpp index 258733999..ebf05ac32 100644 --- a/tests/test_coupled_source.cpp +++ b/tests/test_coupled_source.cpp @@ -6,8 +6,8 @@ // construction (ce que les sources locales ne pourraient pas garantir : elles ne // voient pas l'autre espece). Applique par SystemCoupler::coupled_source_step. -#include -#include +#include +#include #include #include #include diff --git a/tests/test_diffusion.cpp b/tests/test_diffusion.cpp index 457e24423..d7ec67c05 100644 --- a/tests/test_diffusion.cpp +++ b/tests/test_diffusion.cpp @@ -3,9 +3,9 @@ // chaleur pure (flux nul) : un mode cos(kx) decroit a exp(-lambda t) avec lambda le // taux du laplacien DISCRET. Modele jouet inline (le coeur ne connait aucune physique). -#include -#include -#include +#include +#include +#include #include #include #include diff --git a/tests/test_disc_domain_mask.cpp b/tests/test_disc_domain_mask.cpp index b0e021bab..a4effe222 100644 --- a/tests/test_disc_domain_mask.cpp +++ b/tests/test_disc_domain_mask.cpp @@ -18,9 +18,9 @@ // Modele jouet INLINE (le coeur ne connait aucune physique) : scalaire advecte a vitesse (vx, vy) // constante, flux F = (vx u, vy u), vitesse d'onde max |v|. Aucune source, aucun elliptique. -#include -#include -#include +#include +#include +#include #include #include #include diff --git a/tests/test_dynamic_model.cpp b/tests/test_dynamic_model.cpp index 020313a50..d8e4483d3 100644 --- a/tests/test_dynamic_model.cpp +++ b/tests/test_dynamic_model.cpp @@ -2,7 +2,7 @@ // (Euler) enrobe dans IModel<4> et dispatche par vtable doit donner exactement le meme flux et la // meme vitesse d'onde que l'appel direct. C'est le mecanisme qui permet d'utiliser, a l'execution, // une brique generee/JIT dont le type n'est pas connu a la compilation (cf. dynamic_model.hpp). -#include +#include #include #include diff --git a/tests/test_eb_transport.cpp b/tests/test_eb_transport.cpp index 4630fc032..ece8df10f 100644 --- a/tests/test_eb_transport.cpp +++ b/tests/test_eb_transport.cpp @@ -27,9 +27,9 @@ // // Modele jouet INLINE : advection scalaire a vitesse (vx, vy) constante. Aucune source, aucun elliptique. -#include -#include -#include +#include +#include +#include #include #include #include diff --git a/tests/test_elliptic_composite_rhs.cpp b/tests/test_elliptic_composite_rhs.cpp index 9b04b2b0e..cc42c923b 100644 --- a/tests/test_elliptic_composite_rhs.cpp +++ b/tests/test_elliptic_composite_rhs.cpp @@ -12,8 +12,8 @@ // // Aucune tolerance : operator!= strict (le test echoue au moindre ecart de dernier bit). -#include -#include +#include +#include #include // make_poisson_rhs #include diff --git a/tests/test_embedded_boundary_generic.cpp b/tests/test_embedded_boundary_generic.cpp index a68cfe262..0ed2134d1 100644 --- a/tests/test_embedded_boundary_generic.cpp +++ b/tests/test_embedded_boundary_generic.cpp @@ -33,9 +33,9 @@ // // Modele jouet INLINE : advection scalaire a vitesse constante (vx, vy), div v = 0. -#include -#include -#include +#include +#include +#include #include #include #include diff --git a/tests/test_imex_partial.cpp b/tests/test_imex_partial.cpp index 6577f7954..879f9ae06 100644 --- a/tests/test_imex_partial.cpp +++ b/tests/test_imex_partial.cpp @@ -7,8 +7,8 @@ // var 0 et forward-Euler a la var 1, en comparant a un modele SANS trait (tout // implicite) : la var 0 coincide, la var 1 differe (3.5 explicite vs 4.0 implicite). -#include -#include +#include +#include #include #include #include diff --git a/tests/test_imex_transport.cpp b/tests/test_imex_transport.cpp index f96db4a49..2b53654df 100644 --- a/tests/test_imex_transport.cpp +++ b/tests/test_imex_transport.cpp @@ -6,8 +6,8 @@ // Ici : deux blocs d'advection identiques, l'un IMEX, l'autre explicite. Apres un pas // (avec ImplicitSourceStepper, source nulle = no-op), les DEUX ont advecte (champ change). -#include -#include +#include +#include #include #include #include diff --git a/tests/test_isothermal_vacuum_floor.cpp b/tests/test_isothermal_vacuum_floor.cpp index 3fbac58cd..48ce8e829 100644 --- a/tests/test_isothermal_vacuum_floor.cpp +++ b/tests/test_isothermal_vacuum_floor.cpp @@ -10,7 +10,7 @@ // (3) vacuum_floor > 0 with rho >= floor is inactive (identical to OFF); // (4) the polar geometric source is floored too (finite at vacuum, identical above the floor). -#include +#include #include #include diff --git a/tests/test_mpi_amr_compiled_parity.cpp b/tests/test_mpi_amr_compiled_parity.cpp index 6edd97d77..1d6eb4870 100644 --- a/tests/test_mpi_amr_compiled_parity.cpp +++ b/tests/test_mpi_amr_compiled_parity.cpp @@ -24,8 +24,8 @@ // multi-GPU). Sous Cuda, for_each_cell ne fence pas (async) : density()/mass() de l'AmrSystem font // deja un device_fence() interne avant la lecture hote (read_coarse / amr_read_coarse), donc la // lecture hote ici est sure. On insere malgre tout un Kokkos::fence() de ceinture avant les diffs. -#include // CompositeModel, GravityForce, GravityCoupling -#include // Euler (transport compressible) +#include // CompositeModel, GravityForce, GravityCoupling +#include // Euler (transport compressible) #include // add_compiled_model(AmrSystem, ...) #include #include // comm_init, my_rank, n_ranks, all_reduce_* diff --git a/tests/test_mpi_amr_distributed_coarse.cpp b/tests/test_mpi_amr_distributed_coarse.cpp index 23cddb094..87adc57f4 100644 --- a/tests/test_mpi_amr_distributed_coarse.cpp +++ b/tests/test_mpi_amr_distributed_coarse.cpp @@ -23,8 +23,8 @@ // // Independant du backend : Kokkos Serial (CI, CPU) et Cuda (GH200). Le script ROMEO relance le MEME // binaire en np=1/2/4 et diff cmax (bit-identique attendu). -#include // CompositeModel, GravityForce, GravityCoupling -#include // Euler +#include // CompositeModel, GravityForce, GravityCoupling +#include // Euler #include // add_compiled_model(AmrSystem, ...) #include #include diff --git a/tests/test_mpi_coupled_source.cpp b/tests/test_mpi_coupled_source.cpp index efab659ca..74019409d 100644 --- a/tests/test_mpi_coupled_source.cpp +++ b/tests/test_mpi_coupled_source.cpp @@ -14,9 +14,9 @@ // Densites UNIFORMES -> transport nul -> seule la source agit ; on compare aux invariants physiques // (n_i+n_g conserve, n_e-n_i conserve, e/i croissent, g decroit) et a la valeur attendue, INVARIANTE en np. -#include -#include // ExBVelocity (scalaire 1 var, role Density) -#include // NoSource +#include +#include // ExBVelocity (scalaire 1 var, role Density) +#include // NoSource #include // add_compiled_model #include diff --git a/tests/test_mpi_hybrid_mbox_parity.cpp b/tests/test_mpi_hybrid_mbox_parity.cpp index 4b9d289a8..0a9bb583a 100644 --- a/tests/test_mpi_hybrid_mbox_parity.cpp +++ b/tests/test_mpi_hybrid_mbox_parity.cpp @@ -15,8 +15,8 @@ #include #include #include -#include // CompositeModel, GravityCoupling -#include // Euler (transport compressible natif) +#include // CompositeModel, GravityCoupling +#include // Euler (transport compressible natif) #include diff --git a/tests/test_mpi_mbox_parity.cpp b/tests/test_mpi_mbox_parity.cpp index cf0d40571..d6e3a36de 100644 --- a/tests/test_mpi_mbox_parity.cpp +++ b/tests/test_mpi_mbox_parity.cpp @@ -15,8 +15,8 @@ #include #include #include -#include // CompositeModel, GravityForce, GravityCoupling -#include // Euler (transport compressible) +#include // CompositeModel, GravityForce, GravityCoupling +#include // Euler (transport compressible) #include #include diff --git a/tests/test_mpi_system_fft.cpp b/tests/test_mpi_system_fft.cpp index 776210d6b..7a9958d05 100644 --- a/tests/test_mpi_system_fft.cpp +++ b/tests/test_mpi_system_fft.cpp @@ -23,9 +23,9 @@ #include // RemappedFFTSolver, BoxArray (direct residual check) #include // Geometry, Box2D -#include -#include // ExBVelocity -#include // NoSource +#include +#include // ExBVelocity +#include // NoSource #include // add_compiled_model #include diff --git a/tests/test_mpi_system_gather_scatter.cpp b/tests/test_mpi_system_gather_scatter.cpp index a75635dc2..943879e51 100644 --- a/tests/test_mpi_system_gather_scatter.cpp +++ b/tests/test_mpi_system_gather_scatter.cpp @@ -23,9 +23,9 @@ // AVANT le fix : segfault / UB a np=2/4 sur les rangs sans box locale (rhs_into / advance / // max_speed dereferencaient fab(0) inexistant). APRES : np=1/2/4 verts, resultats identiques. -#include -#include // ExBVelocity (scalaire 1 var) -#include // NoSource +#include +#include // ExBVelocity (scalaire 1 var) +#include // NoSource #include // add_compiled_model #include diff --git a/tests/test_mpi_system_io_gather.cpp b/tests/test_mpi_system_io_gather.cpp index 1d2ee8fb7..d58c6066b 100644 --- a/tests/test_mpi_system_io_gather.cpp +++ b/tests/test_mpi_system_io_gather.cpp @@ -41,9 +41,9 @@ // write_state est en fait no-op sur un rang vide, mais on garde la garde owns). set_potential et // set_clock sont MPI-safe (no-op sur les rangs vides). step() / step_cfl() sont collectifs. -#include -#include // Euler (bloc fluide a 4 composantes, etat conservatif riche) -#include // NoSource +#include +#include // Euler (bloc fluide a 4 composantes, etat conservatif riche) +#include // NoSource #include // add_compiled_model #include diff --git a/tests/test_mpi_system_solve_fields.cpp b/tests/test_mpi_system_solve_fields.cpp index 1823ee622..caf94d5b5 100644 --- a/tests/test_mpi_system_solve_fields.cpp +++ b/tests/test_mpi_system_solve_fields.cpp @@ -13,10 +13,10 @@ // AVANT le fix : segfault a np=2/4 sur le(s) rang(s) sans box locale. APRES : np=1/2/4 verts, et le // resultat (potentiel, masse) est invariant au nombre de rangs (la box unique vit toujours sur rang 0). -#include -#include // Euler (bloc fluide source de T_e) -#include // ExBVelocity -#include // NoSource +#include +#include // Euler (bloc fluide source de T_e) +#include // ExBVelocity +#include // NoSource #include // add_compiled_model #include diff --git a/tests/test_multirate_stride.cpp b/tests/test_multirate_stride.cpp index 60020d847..ebb42d8e2 100644 --- a/tests/test_multirate_stride.cpp +++ b/tests/test_multirate_stride.cpp @@ -6,8 +6,8 @@ // Ici : bloc rapide (stride 1) + bloc lent (stride 3), production constante. Apres 1 pas le // lent a deja fait son pas de 3*dt (!= rapide) ; apres 3 pas les deux sont synchronises. -#include -#include +#include +#include #include #include #include diff --git a/tests/test_native_aux_named.cpp b/tests/test_native_aux_named.cpp index 69c0d49e8..53be4bd22 100644 --- a/tests/test_native_aux_named.cpp +++ b/tests/test_native_aux_named.cpp @@ -4,7 +4,7 @@ // per-cell aux marshaling looped ONLY over ADC_AUX_FIELDS, so a model reading aux.extra_field(0) on // the host path read 0 SILENTLY (#51-class gap, but for named fields). This pins the marshaling. -#include +#include #include #include diff --git a/tests/test_newton_robustness.cpp b/tests/test_newton_robustness.cpp index e79a4d018..9a88b0e2a 100644 --- a/tests/test_newton_robustness.cpp +++ b/tests/test_newton_robustness.cpp @@ -7,7 +7,7 @@ // (3) PATHOLOGIE PROPRE : une source qui produit NaN sur UNE cellule -> fail_policy=throw leve // une erreur claire, le rapport identifie LA cellule fautive (i, j) et la composante. // (4) OBSERVATEUR PUR : avec defauts + diagnostics, W est BIT-IDENTIQUE au chemin historique. -#include +#include #include #include #include diff --git a/tests/test_physics_validation_compat.cpp b/tests/test_physics_validation_compat.cpp deleted file mode 100644 index a67649ae4..000000000 --- a/tests/test_physics_validation_compat.cpp +++ /dev/null @@ -1,58 +0,0 @@ -/// @file -/// @brief ADC-329 compat check for the validation/reference bricks. -/// -/// Proves that the validation bricks (AdvectionDiffusion, LangmuirMode, TwoFluidLinear) compile via -/// BOTH the new canonical include paths (adc/validation/physics/...) and the deprecated forwarders -/// (adc/physics/...), and that the deprecated adc:: aliases name the SAME types as the canonical -/// adc::validation:: ones. Pure compile-time / identity check: no numerics, no behavior assertion. - -// New canonical location: namespace adc::validation. -#include -#include -#include - -// Deprecated forwarders: old include paths must still compile and alias adc::. -#include -#include -#include - -#include - -// The deprecated adc:: name and the canonical adc::validation:: name must be the same type. -static_assert(std::is_same_v, - "adc::AdvectionDiffusion must alias adc::validation::AdvectionDiffusion (ADC-329)"); -static_assert(std::is_same_v, - "adc::LangmuirMode must alias adc::validation::LangmuirMode (ADC-329)"); -static_assert(std::is_same_v, - "adc::TwoFluidLinear must alias adc::validation::TwoFluidLinear (ADC-329)"); - -int main() { - // Odr-use each brick as a complete type so header rot is caught at build time. - adc::validation::AdvectionDiffusion ad{}; - (void)ad.diffusivity(); - - adc::validation::LangmuirMode lm{}; - (void)lm.omega(); - - adc::validation::TwoFluidLinear tf{}; - adc::Real w_fast = 0, w_slow = 0; - tf.dispersion(w_fast, w_slow); - (void)w_fast; - (void)w_slow; - - // Odr-use the DEPRECATED adc:: spellings (reached via the old forwarder paths) as complete - // objects, not merely type-compared, so the legacy include path is exercised end to end. - adc::AdvectionDiffusion ad_legacy{}; - (void)ad_legacy.diffusivity(); - - adc::LangmuirMode lm_legacy{}; - (void)lm_legacy.omega(); - - adc::TwoFluidLinear tf_legacy{}; - adc::Real wf_legacy = 0, ws_legacy = 0; - tf_legacy.dispersion(wf_legacy, ws_legacy); - (void)wf_legacy; - (void)ws_legacy; - - return 0; -} diff --git a/tests/test_polar_fluid_transport.cpp b/tests/test_polar_fluid_transport.cpp index f5c82b7d0..390f09cf1 100644 --- a/tests/test_polar_fluid_transport.cpp +++ b/tests/test_polar_fluid_transport.cpp @@ -29,7 +29,7 @@ // // Host / Serial-safe (UNE box, n_ranks()==1 : non enregistre MPI, comme les autres tests polaires). -#include +#include #include #include #include @@ -42,7 +42,7 @@ #include #include #include -#include +#include #include #include diff --git a/tests/test_polar_lorentz_source.cpp b/tests/test_polar_lorentz_source.cpp index 6c88ecf87..1f94a98ca 100644 --- a/tests/test_polar_lorentz_source.cpp +++ b/tests/test_polar_lorentz_source.cpp @@ -31,7 +31,7 @@ // // Host / Serial-safe (UNE box, n_ranks()==1 : non enregistre MPI, comme les autres tests polaires). -#include +#include #include #include #include @@ -43,7 +43,7 @@ #include #include #include -#include // CompositeModel + briques source/hyperbolique/elliptique +#include // CompositeModel + briques source/hyperbolique/elliptique #include #include diff --git a/tests/test_polar_mms_vr.cpp b/tests/test_polar_mms_vr.cpp index 8a0dee8a4..0373dab66 100644 --- a/tests/test_polar_mms_vr.cpp +++ b/tests/test_polar_mms_vr.cpp @@ -52,7 +52,7 @@ // Host / Serial-safe (UNE box, n_ranks()==1 dans les 3 jobs CI : non enregistre MPI, comme les autres // tests polaires mono-box). -#include +#include #include #include #include diff --git a/tests/test_polar_system_step.cpp b/tests/test_polar_system_step.cpp index 3ff6f11dd..0189c376f 100644 --- a/tests/test_polar_system_step.cpp +++ b/tests/test_polar_system_step.cpp @@ -21,7 +21,7 @@ // Host / Serial-safe : UNE box couvrant l'anneau, n_ranks()==1 dans les 3 jobs CI (PolarPoissonSolver // leve proprement sous MPI ; ce test n'est pas enregistre MPI, comme test_polar_poisson_mms). -#include +#include #include #include #include @@ -35,7 +35,7 @@ #include #include #include -#include // ExBVelocityPolar, CompositeModel, NoSource, ChargeDensity +#include // ExBVelocityPolar, CompositeModel, NoSource, ChargeDensity #include // derive_aux_polar : MEME derivation aux que System::solve_fields_polar #include diff --git a/tests/test_polar_transport_mms.cpp b/tests/test_polar_transport_mms.cpp index 2941a48c6..1ef132233 100644 --- a/tests/test_polar_transport_mms.cpp +++ b/tests/test_polar_transport_mms.cpp @@ -26,7 +26,7 @@ // // Host / Serial-safe (UNE box, n_ranks()==1 dans les 3 jobs CI : le test n'est pas enregistre MPI). -#include +#include #include #include #include @@ -39,7 +39,7 @@ #include #include #include -#include +#include #include #include diff --git a/tests/test_positivity_floor.cpp b/tests/test_positivity_floor.cpp index 7fcee0c5b..2efe0420d 100644 --- a/tests/test_positivity_floor.cpp +++ b/tests/test_positivity_floor.cpp @@ -17,7 +17,7 @@ // (4) REJET CLAIR : un modele sans role Density (AdvectionDiffusion scalaire) + pos_floor > 0 -> // runtime_error explicite (jamais un scaling muet d'une composante arbitraire). #include -#include +#include #include #include diff --git a/tests/test_primitive_recon.cpp b/tests/test_primitive_recon.cpp index f54341746..fa79a4b3e 100644 --- a/tests/test_primitive_recon.cpp +++ b/tests/test_primitive_recon.cpp @@ -4,9 +4,9 @@ // conversions ; on verifie ici leur exactitude (round-trip) et la centralisation du calcul // des variables primitives. Imprime "OK test_primitive_recon" en cas de succes. -#include -#include -#include +#include +#include +#include #include #include diff --git a/tests/test_ref_ratio.cpp b/tests/test_ref_ratio.cpp index 2ff8aad02..71b4c4806 100644 --- a/tests/test_ref_ratio.cpp +++ b/tests/test_ref_ratio.cpp @@ -10,8 +10,8 @@ // AmrHierarchy ctor refuses a non-2 ratio at construction (the single entry point) // rather than silently mis-coarsening. -#include -#include +#include +#include #include #include diff --git a/tests/test_regrid.cpp b/tests/test_regrid.cpp index 2624bdff4..9f31651a0 100644 --- a/tests/test_regrid.cpp +++ b/tests/test_regrid.cpp @@ -2,9 +2,9 @@ // sont interpolees depuis le grossier, le buffer dilate la region, un re-regrid // preserve l'ancien fin, et un tagging vide supprime le niveau fin. -#include -#include -#include +#include +#include +#include #include #include #include diff --git a/tests/test_riemann_capabilities.cpp b/tests/test_riemann_capabilities.cpp index ae1c2233a..8ac01e1d5 100644 --- a/tests/test_riemann_capabilities.cpp +++ b/tests/test_riemann_capabilities.cpp @@ -16,7 +16,7 @@ // EXACTEMENT (flux tangentiel nul) la ou HLL le diffuse. C'est exactement ce qu'apporte la // resolution de l'onde intermediaire, prouvee hors Euler. #include -#include +#include #include #include diff --git a/tests/test_roe_flux.cpp b/tests/test_roe_flux.cpp index 608dbe411..9066e0d26 100644 --- a/tests/test_roe_flux.cpp +++ b/tests/test_roe_flux.cpp @@ -3,7 +3,7 @@ // (2) propriete de Roe via l'amont SUPERSONIQUE : si toutes les valeurs propres sont de meme signe // (ecoulement supersonique), F* doit valoir EXACTEMENT le flux amont. C'est equivalent a // F_R - F_L = A_roe (U_R - U_L) : ca ne passe que si la decomposition en ondes est correcte. -#include +#include #include #include diff --git a/tests/test_system_abstraction.cpp b/tests/test_system_abstraction.cpp index f1b11de3d..a16ca3064 100644 --- a/tests/test_system_abstraction.cpp +++ b/tests/test_system_abstraction.cpp @@ -1,8 +1,8 @@ // Squelette architecture multi-blocs : PhysicalModel local, EquationBlock, // CoupledSystem, scheduler par sous-pas, RHS elliptique multi-champs. -#include -#include +#include +#include #include #include #include diff --git a/tests/test_system_coupler.cpp b/tests/test_system_coupler.cpp index 2b495bd87..742a8883b 100644 --- a/tests/test_system_coupler.cpp +++ b/tests/test_system_coupler.cpp @@ -1,8 +1,8 @@ // Execution mono-niveau d'un CoupledSystem : RHS elliptique global, bloc // implicite delegue, bloc explicite avance par le coeur. -#include -#include +#include +#include #include #include #include diff --git a/tests/test_system_hardening.cpp b/tests/test_system_hardening.cpp index b3a20b146..4dd6fbe0d 100644 --- a/tests/test_system_hardening.cpp +++ b/tests/test_system_hardening.cpp @@ -3,8 +3,8 @@ // exige une entree par bloc (sinon throw). // 9.3 AmrSystemCoupler : refuse une hierarchie mal formee (throw au ctor). -#include -#include +#include +#include #include #include #include // AmrLevelMP diff --git a/tests/test_system_two_explicit.cpp b/tests/test_system_two_explicit.cpp index 5f3ec4820..e51b3c88e 100644 --- a/tests/test_system_two_explicit.cpp +++ b/tests/test_system_two_explicit.cpp @@ -7,8 +7,8 @@ // divergent apres un pas -> le coeur remplit les halos avec block.bc, pas une BC // globale unique. -#include -#include +#include +#include #include #include #include diff --git a/tests/test_two_species_minimal.cpp b/tests/test_two_species_minimal.cpp index 4c3895c2c..00c8a70b2 100644 --- a/tests/test_two_species_minimal.cpp +++ b/tests/test_two_species_minimal.cpp @@ -10,8 +10,8 @@ // Couvre aussi : RHS Poisson non nul a N blocs (jalon 2.1.1 / 2.5.1) et le defaut // implicite inconditionnellement stable sur source raide (jalon 2.2.1 / 2.5.3). -#include -#include +#include +#include #include #include #include diff --git a/tests/test_user_time_integrator.cpp b/tests/test_user_time_integrator.cpp index 4cd98f12d..5fcff4454 100644 --- a/tests/test_user_time_integrator.cpp +++ b/tests/test_user_time_integrator.cpp @@ -3,8 +3,8 @@ // passer comme Method d'un bloc explicite, le coupleur l'instancie et l'appelle, sans // rien changer au coeur. La physique (rhs_eval = flux + source) reste compilee. -#include -#include +#include +#include #include #include #include diff --git a/tests/test_variable_role.cpp b/tests/test_variable_role.cpp index 2be808e14..ff921c214 100644 --- a/tests/test_variable_role.cpp +++ b/tests/test_variable_role.cpp @@ -1,7 +1,7 @@ // Test des roles de variables : adresser une composante par son SENS (index_of(role)) plutot que // par un indice magique. Verifie Euler / isotherme / ExB. -#include -#include +#include +#include #include diff --git a/tests/test_variable_user_role.cpp b/tests/test_variable_user_role.cpp index 6a0d32875..3d4b7ddbf 100644 --- a/tests/test_variable_user_role.cpp +++ b/tests/test_variable_user_role.cpp @@ -12,7 +12,7 @@ // mais sans le role requis -> LEVE en nommant le bloc et le role (plus aucun repli silencieux). // // Test PUR (n'inclut que core/variables.hpp) : aucune dependance runtime, lie adc::adc seul. -#include +#include #include #include diff --git a/tests/test_weno5_compiled_model.cpp b/tests/test_weno5_compiled_model.cpp index 0343ed1b6..270db5b8f 100644 --- a/tests/test_weno5_compiled_model.cpp +++ b/tests/test_weno5_compiled_model.cpp @@ -10,8 +10,8 @@ // (2) NO-DEFAULT-CHANGE : pour none et minmod (<= 2 ghosts), add_compiled_model reste BIT-IDENTIQUE // a add_block -- la reallocation set_block_ghosts est un NO-OP (U a deja 2 ghosts), donc // l'allocation et le resultat sont inchanges vs avant ce chantier. -#include // CompositeModel, GravityForce, GravityCoupling -#include // Euler (= CompressibleFlux) +#include // CompositeModel, GravityForce, GravityCoupling +#include // Euler (= CompressibleFlux) #include #include #include