From ddc9526966103a4dc28780f9cbc38dc942932445 Mon Sep 17 00:00:00 2001 From: Joffrey Dorville <54550047+JoffreyDorville@users.noreply.github.com> Date: Wed, 19 Jun 2024 10:11:58 -0500 Subject: [PATCH] Storing surface source points using a cell ID (#2888) Co-authored-by: Paul Romano --- docs/source/io_formats/settings.rst | 35 +- docs/source/usersguide/settings.rst | 49 +- include/openmc/particle.h | 4 +- include/openmc/particle_data.h | 8 +- include/openmc/settings.h | 12 + openmc/settings.py | 93 +- src/dagmc.cpp | 4 +- src/particle.cpp | 163 ++- src/settings.cpp | 32 +- src/surface.cpp | 3 +- .../filter_cellfrom/__init__.py | 0 .../filter_cellfrom/inputs_true.dat | 151 +++ .../filter_cellfrom/results_true.dat | 53 + .../regression_tests/filter_cellfrom/test.py | 315 +++++ tests/regression_tests/surface_source/test.py | 6 +- .../surface_source_write/__init__.py | 0 .../surface_source_write/_visualize.py | 66 + .../case-01/inputs_true.dat | 54 + .../case-01/results_true.dat | 2 + .../case-01/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-02/inputs_true.dat | 55 + .../case-02/results_true.dat | 2 + .../case-02/surface_source_true.h5 | Bin 0 -> 12752 bytes .../case-03/inputs_true.dat | 55 + .../case-03/results_true.dat | 2 + .../case-03/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-04/inputs_true.dat | 56 + .../case-04/results_true.dat | 2 + .../case-04/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-05/inputs_true.dat | 56 + .../case-05/results_true.dat | 2 + .../case-05/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-06/inputs_true.dat | 55 + .../case-06/results_true.dat | 2 + .../case-06/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-07/inputs_true.dat | 55 + .../case-07/results_true.dat | 2 + .../case-07/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-08/inputs_true.dat | 55 + .../case-08/results_true.dat | 2 + .../case-08/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-09/inputs_true.dat | 55 + .../case-09/results_true.dat | 2 + .../case-09/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-10/inputs_true.dat | 55 + .../case-10/results_true.dat | 2 + .../case-10/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-11/inputs_true.dat | 55 + .../case-11/results_true.dat | 2 + .../case-11/surface_source_true.h5 | Bin 0 -> 6408 bytes .../case-12/inputs_true.dat | 48 + .../case-12/results_true.dat | 2 + .../case-12/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-13/inputs_true.dat | 49 + .../case-13/results_true.dat | 2 + .../case-13/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-14/inputs_true.dat | 49 + .../case-14/results_true.dat | 2 + .../case-14/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-15/inputs_true.dat | 49 + .../case-15/results_true.dat | 2 + .../case-15/surface_source_true.h5 | Bin 0 -> 2144 bytes .../case-16/inputs_true.dat | 48 + .../case-16/results_true.dat | 2 + .../case-16/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-17/inputs_true.dat | 49 + .../case-17/results_true.dat | 2 + .../case-17/surface_source_true.h5 | Bin 0 -> 2144 bytes .../case-18/inputs_true.dat | 49 + .../case-18/results_true.dat | 2 + .../case-18/surface_source_true.h5 | Bin 0 -> 2144 bytes .../case-19/inputs_true.dat | 49 + .../case-19/results_true.dat | 2 + .../case-19/surface_source_true.h5 | Bin 0 -> 2144 bytes .../case-20/inputs_true.dat | 48 + .../case-20/results_true.dat | 2 + .../case-20/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-21/inputs_true.dat | 49 + .../case-21/results_true.dat | 2 + .../case-21/surface_source_true.h5 | Bin 0 -> 2144 bytes .../case-a01/inputs_true.dat | 56 + .../case-a01/results_true.dat | 2 + .../case-a01/surface_source_true.h5 | Bin 0 -> 6616 bytes .../case-d01/inputs_true.dat | 33 + .../case-d01/results_true.dat | 2 + .../case-d01/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-d02/inputs_true.dat | 34 + .../case-d02/results_true.dat | 2 + .../case-d02/surface_source_true.h5 | Bin 0 -> 31472 bytes .../case-d03/inputs_true.dat | 34 + .../case-d03/results_true.dat | 2 + .../case-d03/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-d04/inputs_true.dat | 35 + .../case-d04/results_true.dat | 2 + .../case-d04/surface_source_true.h5 | Bin 0 -> 31472 bytes .../case-d05/inputs_true.dat | 34 + .../case-d05/results_true.dat | 2 + .../case-d05/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-d06/inputs_true.dat | 34 + .../case-d06/results_true.dat | 2 + .../case-d06/surface_source_true.h5 | Bin 0 -> 29496 bytes .../case-d07/inputs_true.dat | 49 + .../case-d07/results_true.dat | 2 + .../case-d07/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-d08/inputs_true.dat | 49 + .../case-d08/results_true.dat | 2 + .../case-d08/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-e01/inputs_true.dat | 56 + .../case-e01/results_true.dat | 2 + .../case-e01/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-e02/inputs_true.dat | 55 + .../case-e02/results_true.dat | 2 + .../case-e02/surface_source_true.h5 | Bin 0 -> 33344 bytes .../case-e03/inputs_true.dat | 49 + .../case-e03/results_true.dat | 2 + .../case-e03/surface_source_true.h5 | Bin 0 -> 33344 bytes .../surface_source_write/test.py | 1126 +++++++++++++++++ tests/unit_tests/test_surface_source_write.py | 248 ++++ .../unit_tests/test_tally_multiply_density.py | 2 +- tests/unit_tests/weightwindows/test_ww_gen.py | 2 +- 120 files changed, 3963 insertions(+), 86 deletions(-) create mode 100644 tests/regression_tests/filter_cellfrom/__init__.py create mode 100644 tests/regression_tests/filter_cellfrom/inputs_true.dat create mode 100644 tests/regression_tests/filter_cellfrom/results_true.dat create mode 100644 tests/regression_tests/filter_cellfrom/test.py create mode 100644 tests/regression_tests/surface_source_write/__init__.py create mode 100644 tests/regression_tests/surface_source_write/_visualize.py create mode 100644 tests/regression_tests/surface_source_write/case-01/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-01/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-01/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-02/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-02/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-02/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-03/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-03/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-03/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-04/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-04/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-04/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-05/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-05/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-05/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-06/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-06/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-06/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-07/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-07/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-07/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-08/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-08/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-08/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-09/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-09/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-09/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-10/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-10/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-10/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-11/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-11/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-11/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-12/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-12/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-12/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-13/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-13/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-13/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-14/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-14/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-14/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-15/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-15/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-15/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-16/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-16/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-16/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-17/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-17/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-17/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-18/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-18/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-18/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-19/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-19/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-19/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-20/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-20/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-20/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-21/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-21/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-21/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-a01/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-a01/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-a01/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-d01/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-d01/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-d01/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-d02/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-d02/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-d02/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-d03/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-d03/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-d03/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-d04/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-d04/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-d04/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-d05/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-d05/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-d05/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-d06/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-d06/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-d06/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-d07/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-d07/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-d07/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-d08/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-d08/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-d08/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-e01/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-e01/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-e01/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-e02/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-e02/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-e02/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/case-e03/inputs_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-e03/results_true.dat create mode 100644 tests/regression_tests/surface_source_write/case-e03/surface_source_true.h5 create mode 100644 tests/regression_tests/surface_source_write/test.py create mode 100644 tests/unit_tests/test_surface_source_write.py diff --git a/docs/source/io_formats/settings.rst b/docs/source/io_formats/settings.rst index 6e9a7f2ab..915f698b6 100644 --- a/docs/source/io_formats/settings.rst +++ b/docs/source/io_formats/settings.rst @@ -902,7 +902,12 @@ attributes/sub-elements: The ```` element triggers OpenMC to bank particles crossing certain surfaces and write out the source bank in a separate file called -``surface_source.h5``. This element has the following attributes/sub-elements: +``surface_source.h5``. One or multiple surface IDs and one cell ID can be used +to select the surfaces of interest. If no surface IDs are declared, every surface +of the model is eligible to bank particles. In that case, a cell ID (using +either the ``cell``, ``cellfrom`` or ``cellto`` attributes) can be used to select +every surface of a specific cell. This element has the following +attributes/sub-elements: :surface_ids: A list of integers separated by spaces indicating the unique IDs of surfaces @@ -928,6 +933,34 @@ certain surfaces and write out the source bank in a separate file called .. _MCPL: https://mctools.github.io/mcpl/mcpl.pdf + :cell: + An integer representing the cell ID used to determine if particles crossing + identified surfaces are to be banked. Particles coming from or going to this + declared cell will be banked if they cross the identified surfaces. + + *Default*: None + + :cellfrom: + An integer representing the cell ID used to determine if particles crossing + identified surfaces are to be banked. Particles coming from this declared + cell will be banked if they cross the identified surfaces. + + *Default*: None + + :cellto: + An integer representing the cell ID used to determine if particles crossing + identified surfaces are to be banked. Particles going to this declared cell + will be banked if they cross the identified surfaces. + + *Default*: None + +.. note:: The ``cell``, ``cellfrom`` and ``cellto`` attributes cannot be + used simultaneously. + +.. note:: Surfaces with boundary conditions that are not "transmission" or "vacuum" + are not eligible to store any particles when using ``cell``, ``cellfrom`` + or ``cellto`` attributes. It is recommended to use surface IDs instead. + ------------------------------ ```` Element ------------------------------ diff --git a/docs/source/usersguide/settings.rst b/docs/source/usersguide/settings.rst index eb02f654c..d73d90cbb 100644 --- a/docs/source/usersguide/settings.rst +++ b/docs/source/usersguide/settings.rst @@ -277,6 +277,9 @@ source file can be manually generated with the :func:`openmc.write_source_file` function. This is particularly useful for coupling OpenMC with another program that generates a source to be used in OpenMC. +Surface Sources ++++++++++++++++ + A source file based on particles that cross one or more surfaces can be generated during a simulation using the :attr:`Settings.surf_source_write` attribute:: @@ -287,7 +290,51 @@ attribute:: } In this example, at most 10,000 source particles are stored when particles cross -surfaces with IDs of 1, 2, or 3. +surfaces with IDs of 1, 2, or 3. If no surface IDs are declared, particles +crossing any surface of the model will be banked:: + + settings.surf_source_write = {'max_particles': 10000} + +A cell ID can also be used to bank particles that are crossing any surface of +a cell that particles are either coming from or going to:: + + settings.surf_source_write = {'cell': 1, 'max_particles': 10000} + +In this example, particles that are crossing any surface that bounds cell 1 will +be banked excluding any surface that does not use a 'transmission' or 'vacuum' +boundary condition. + +.. note:: Surfaces with boundary conditions that are not "transmission" or "vacuum" + are not eligible to store any particles when using ``cell``, ``cellfrom`` + or ``cellto`` attributes. It is recommended to use surface IDs instead. + +Surface IDs can be used in combination with a cell ID:: + + settings.surf_source_write = { + 'cell': 1, + 'surfaces_ids': [1, 2, 3], + 'max_particles': 10000 + } + +In that case, only particles that are crossing the declared surfaces coming from +cell 1 or going to cell 1 will be banked. To account specifically for particles +leaving or entering a given cell, ``cellfrom`` and ``cellto`` are also available +to respectively account for particles coming from a cell:: + + settings.surf_source_write = { + 'cellfrom': 1, + 'max_particles': 10000 + } + +or particles going to a cell:: + + settings.surf_source_write = { + 'cellto': 1, + 'max_particles': 10000 + } + +.. note:: The ``cell``, ``cellfrom`` and ``cellto`` attributes cannot be + used simultaneously. .. _compiled_source: diff --git a/include/openmc/particle.h b/include/openmc/particle.h index e423880f8..6a2e67049 100644 --- a/include/openmc/particle.h +++ b/include/openmc/particle.h @@ -74,7 +74,7 @@ public: void pht_secondary_particles(); //! Cross a surface and handle boundary conditions - void cross_surface(); + void cross_surface(const Surface& surf); //! Cross a vacuum boundary condition. // @@ -127,6 +127,8 @@ std::string particle_type_to_str(ParticleType type); ParticleType str_to_particle_type(std::string str); +void add_surf_source_to_bank(Particle& p, const Surface& surf); + } // namespace openmc #endif // OPENMC_PARTICLE_H diff --git a/include/openmc/particle_data.h b/include/openmc/particle_data.h index 5c765e2e6..164148cce 100644 --- a/include/openmc/particle_data.h +++ b/include/openmc/particle_data.h @@ -211,9 +211,15 @@ public: // resets all coordinate levels for the particle void clear() { - for (auto& level : coord_) + for (auto& level : coord_) { level.reset(); + } n_coord_ = 1; + + for (auto& cell : cell_last_) { + cell = C_NONE; + } + n_coord_last_ = 1; } // Initialize all internal state from position and direction diff --git a/include/openmc/settings.h b/include/openmc/settings.h index df4a54a6f..a95f1ced9 100644 --- a/include/openmc/settings.h +++ b/include/openmc/settings.h @@ -16,6 +16,14 @@ namespace openmc { +// Type of surface source write +enum class SSWCellType { + None, + Both, + From, + To, +}; + //============================================================================== // Global variable declarations //============================================================================== @@ -125,6 +133,10 @@ extern int max_history_splits; //!< maximum number of particle splits for weight windows extern int64_t max_surface_particles; //!< maximum number of particles to be //!< banked on surfaces per process +extern int64_t ssw_cell_id; //!< Cell id for the surface source + //!< write setting +extern SSWCellType ssw_cell_type; //!< Type of option for the cell + //!< argument of surface source write extern TemperatureMethod temperature_method; //!< method for choosing temperatures extern double diff --git a/openmc/settings.py b/openmc/settings.py index 43f763a19..80d766ab1 100644 --- a/openmc/settings.py +++ b/openmc/settings.py @@ -201,6 +201,15 @@ class Settings: :max_particles: Maximum number of particles to be banked on surfaces per process (int) :mcpl: Output in the form of an MCPL-file (bool) + :cell: Cell ID used to determine if particles crossing identified + surfaces are to be banked. Particles coming from or going to this + declared cell will be banked (int) + :cellfrom: Cell ID used to determine if particles crossing identified + surfaces are to be banked. Particles coming from this + declared cell will be banked (int) + :cellto: Cell ID used to determine if particles crossing identified + surfaces are to be banked. Particles going to this declared + cell will be banked (int) survival_biasing : bool Indicate whether survival biasing is to be used tabular_legendre : dict @@ -693,23 +702,30 @@ class Settings: @surf_source_write.setter def surf_source_write(self, surf_source_write: dict): - cv.check_type('surface source writing options', surf_source_write, Mapping) + cv.check_type("surface source writing options", surf_source_write, Mapping) for key, value in surf_source_write.items(): - cv.check_value('surface source writing key', key, - ('surface_ids', 'max_particles', 'mcpl')) - if key == 'surface_ids': - cv.check_type('surface ids for source banking', value, - Iterable, Integral) + cv.check_value( + "surface source writing key", + key, + ("surface_ids", "max_particles", "mcpl", "cell", "cellfrom", "cellto"), + ) + if key == "surface_ids": + cv.check_type( + "surface ids for source banking", value, Iterable, Integral + ) for surf_id in value: - cv.check_greater_than('surface id for source banking', - surf_id, 0) - elif key == 'max_particles': - cv.check_type('maximum particle banks on surfaces per process', - value, Integral) - cv.check_greater_than('maximum particle banks on surfaces per process', - value, 0) - elif key == 'mcpl': - cv.check_type('write to an MCPL-format file', value, bool) + cv.check_greater_than("surface id for source banking", surf_id, 0) + elif key == "mcpl": + cv.check_type("write to an MCPL-format file", value, bool) + elif key in ("max_particles", "cell", "cellfrom", "cellto"): + name = { + "max_particles": "maximum particle banks on surfaces per process", + "cell": "Cell ID for source banking (from or to)", + "cellfrom": "Cell ID for source banking (from only)", + "cellto": "Cell ID for source banking (to only)", + }[key] + cv.check_type(name, value, Integral) + cv.check_greater_than(name, value, 0) self._surf_source_write = surf_source_write @@ -1207,16 +1223,18 @@ class Settings: def _create_surf_source_write_subelement(self, root): if self._surf_source_write: element = ET.SubElement(root, "surf_source_write") - if 'surface_ids' in self._surf_source_write: + if "surface_ids" in self._surf_source_write: subelement = ET.SubElement(element, "surface_ids") - subelement.text = ' '.join( - str(x) for x in self._surf_source_write['surface_ids']) - if 'max_particles' in self._surf_source_write: - subelement = ET.SubElement(element, "max_particles") - subelement.text = str(self._surf_source_write['max_particles']) - if 'mcpl' in self._surf_source_write: + subelement.text = " ".join( + str(x) for x in self._surf_source_write["surface_ids"] + ) + if "mcpl" in self._surf_source_write: subelement = ET.SubElement(element, "mcpl") - subelement.text = str(self._surf_source_write['mcpl']).lower() + subelement.text = str(self._surf_source_write["mcpl"]).lower() + for key in ("max_particles", "cell", "cellfrom", "cellto"): + if key in self._surf_source_write: + subelement = ET.SubElement(element, key) + subelement.text = str(self._surf_source_write[key]) def _create_confidence_intervals(self, root): if self._confidence_intervals is not None: @@ -1381,9 +1399,9 @@ class Settings: elem.text = str(self._create_fission_neutrons).lower() def _create_create_delayed_neutrons_subelement(self, root): - if self._create_delayed_neutrons is not None: - elem = ET.SubElement(root, "create_delayed_neutrons") - elem.text = str(self._create_delayed_neutrons).lower() + if self._create_delayed_neutrons is not None: + elem = ET.SubElement(root, "create_delayed_neutrons") + elem.text = str(self._create_delayed_neutrons).lower() def _create_delayed_photon_scaling_subelement(self, root): if self._delayed_photon_scaling is not None: @@ -1610,17 +1628,18 @@ class Settings: def _surf_source_write_from_xml_element(self, root): elem = root.find('surf_source_write') - if elem is not None: - for key in ('surface_ids', 'max_particles','mcpl'): - value = get_text(elem, key) - if value is not None: - if key == 'surface_ids': - value = [int(x) for x in value.split()] - elif key in ('max_particles'): - value = int(value) - elif key == 'mcpl': - value = value in ('true', '1') - self.surf_source_write[key] = value + if elem is None: + return + for key in ('surface_ids', 'max_particles', 'mcpl', 'cell', 'cellto', 'cellfrom'): + value = get_text(elem, key) + if value is not None: + if key == 'surface_ids': + value = [int(x) for x in value.split()] + elif key == 'mcpl': + value = value in ('true', '1') + elif key in ('max_particles', 'cell', 'cellfrom', 'cellto'): + value = int(value) + self.surf_source_write[key] = value def _confidence_intervals_from_xml_element(self, root): text = get_text(root, 'confidence_intervals') diff --git a/src/dagmc.cpp b/src/dagmc.cpp index 2f2502f6e..a29a2589f 100644 --- a/src/dagmc.cpp +++ b/src/dagmc.cpp @@ -271,8 +271,10 @@ void DAGUniverse::init_geometry() : dagmc_instance_->id_by_index(2, i + 1); // set surface source attribute if needed - if (contains(settings::source_write_surf_id, s->id_)) + if (contains(settings::source_write_surf_id, s->id_) || + settings::source_write_surf_id.empty()) { s->surf_source_ = true; + } // set BCs std::string bc_value = diff --git a/src/particle.cpp b/src/particle.cpp index a91113c61..0c6a33b78 100644 --- a/src/particle.cpp +++ b/src/particle.cpp @@ -168,6 +168,12 @@ void Particle::event_calculate_xs() // Set birth cell attribute if (cell_born() == C_NONE) cell_born() = lowest_coord().cell; + + // Initialize last cells from current cell + for (int j = 0; j < n_coord(); ++j) { + cell_last(j) = coord(j).cell; + } + n_coord_last() = n_coord(); } // Write particle track. @@ -264,16 +270,16 @@ void Particle::event_advance() void Particle::event_cross_surface() { - // Set surface that particle is on and adjust coordinate levels - surface() = boundary().surface_index; - n_coord() = boundary().coord_level; - // Saving previous cell data for (int j = 0; j < n_coord(); ++j) { cell_last(j) = coord(j).cell; } n_coord_last() = n_coord(); + // Set surface that particle is on and adjust coordinate levels + surface() = boundary().surface_index; + n_coord() = boundary().coord_level; + if (boundary().lattice_translation[0] != 0 || boundary().lattice_translation[1] != 0 || boundary().lattice_translation[2] != 0) { @@ -284,7 +290,17 @@ void Particle::event_cross_surface() event() = TallyEvent::LATTICE; } else { // Particle crosses surface - cross_surface(); + // TODO: off-by-one + const auto& surf {model::surfaces[std::abs(surface()) - 1].get()}; + // If BC, add particle to surface source before crossing surface + if (surf->surf_source_ && surf->bc_) { + add_surf_source_to_bank(*this, *surf); + } + cross_surface(*surf); + // If no BC, add particle to surface source after crossing surface + if (surf->surf_source_ && !surf->bc_) { + add_surf_source_to_bank(*this, *surf); + } if (settings::weight_window_checkpoint_surface) { apply_weight_windows(*this); } @@ -418,6 +434,12 @@ void Particle::event_revive_from_secondary() // Set birth cell attribute if (cell_born() == C_NONE) cell_born() = lowest_coord().cell; + + // Initialize last cells from current cell + for (int j = 0; j < n_coord(); ++j) { + cell_last(j) = coord(j).cell; + } + n_coord_last() = n_coord(); } pht_secondary_particles(); } @@ -502,40 +524,22 @@ void Particle::pht_secondary_particles() } } -void Particle::cross_surface() +void Particle::cross_surface(const Surface& surf) { - int i_surface = std::abs(surface()); - // TODO: off-by-one - const auto& surf {model::surfaces[i_surface - 1].get()}; - if (settings::verbosity >= 10 || trace()) { - write_message(1, " Crossing surface {}", surf->id_); - } - if (surf->surf_source_ && simulation::current_batch > settings::n_inactive && - !simulation::surf_source_bank.full()) { - SourceSite site; - site.r = r(); - site.u = u(); - site.E = E(); - site.time = time(); - site.wgt = wgt(); - site.delayed_group = delayed_group(); - site.surf_id = surf->id_; - site.particle = type(); - site.parent_id = id(); - site.progeny_id = n_progeny(); - int64_t idx = simulation::surf_source_bank.thread_safe_append(site); + if (settings::verbosity >= 10 || trace()) { + write_message(1, " Crossing surface {}", surf.id_); } // if we're crossing a CSG surface, make sure the DAG history is reset #ifdef DAGMC - if (surf->geom_type_ == GeometryType::CSG) + if (surf.geom_type_ == GeometryType::CSG) history().reset(); #endif // Handle any applicable boundary conditions. - if (surf->bc_ && settings::run_mode != RunMode::PLOTTING) { - surf->bc_->handle_particle(*this, *surf); + if (surf.bc_ && settings::run_mode != RunMode::PLOTTING) { + surf.bc_->handle_particle(*this, surf); return; } @@ -544,10 +548,10 @@ void Particle::cross_surface() #ifdef DAGMC // in DAGMC, we know what the next cell should be - if (surf->geom_type_ == GeometryType::DAG) { - int32_t i_cell = - next_cell(i_surface, cell_last(n_coord() - 1), lowest_coord().universe) - - 1; + if (surf.geom_type_ == GeometryType::DAG) { + int32_t i_cell = next_cell(std::abs(surface()), cell_last(n_coord() - 1), + lowest_coord().universe) - + 1; // save material and temp material_last() = material(); sqrtkT_last() = sqrtkT(); @@ -561,8 +565,9 @@ void Particle::cross_surface() #endif bool verbose = settings::verbosity >= 10 || trace(); - if (neighbor_list_find_cell(*this, verbose)) + if (neighbor_list_find_cell(*this, verbose)) { return; + } // ========================================================================== // COULDN'T FIND PARTICLE IN NEIGHBORING CELLS, SEARCH ALL CELLS @@ -586,7 +591,7 @@ void Particle::cross_surface() if (!exhaustive_find_cell(*this, verbose)) { mark_as_lost("After particle " + std::to_string(id()) + - " crossed surface " + std::to_string(surf->id_) + + " crossed surface " + std::to_string(surf.id_) + " it could not be located in any cell and it did not leak."); return; } @@ -650,7 +655,7 @@ void Particle::cross_reflective_bc(const Surface& surf, Direction new_u) u() = new_u; // Reassign particle's cell and surface - coord(0).cell = cell_last(n_coord_last() - 1); + coord(0).cell = cell_last(0); surface() = -surface(); // If a reflective surface is coincident with a lattice or universe @@ -873,4 +878,90 @@ ParticleType str_to_particle_type(std::string str) } } +void add_surf_source_to_bank(Particle& p, const Surface& surf) +{ + if (simulation::current_batch <= settings::n_inactive || + simulation::surf_source_bank.full()) { + return; + } + + // If a cell/cellfrom/cellto parameter is defined + if (settings::ssw_cell_id != C_NONE) { + + // Retrieve cell index and storage type + int cell_idx = model::cell_map[settings::ssw_cell_id]; + + if (surf.bc_) { + // Leave if cellto with vacuum boundary condition + if (surf.bc_->type() == "vacuum" && + settings::ssw_cell_type == SSWCellType::To) { + return; + } + + // Leave if other boundary condition than vacuum + if (surf.bc_->type() != "vacuum") { + return; + } + } + + // Check if the cell of interest has been exited + bool exited = false; + for (int i = 0; i < p.n_coord_last(); ++i) { + if (p.cell_last(i) == cell_idx) { + exited = true; + } + } + + // Check if the cell of interest has been entered + bool entered = false; + for (int i = 0; i < p.n_coord(); ++i) { + if (p.coord(i).cell == cell_idx) { + entered = true; + } + } + + // Vacuum boundary conditions: return if cell is not exited + if (surf.bc_) { + if (surf.bc_->type() == "vacuum" && !exited) { + return; + } + } else { + + // If we both enter and exit the cell of interest + if (entered && exited) { + return; + } + + // If we did not enter nor exit the cell of interest + if (!entered && !exited) { + return; + } + + // If cellfrom and the cell before crossing is not the cell of + // interest + if (settings::ssw_cell_type == SSWCellType::From && !exited) { + return; + } + + // If cellto and the cell after crossing is not the cell of interest + if (settings::ssw_cell_type == SSWCellType::To && !entered) { + return; + } + } + } + + SourceSite site; + site.r = p.r(); + site.u = p.u(); + site.E = p.E(); + site.time = p.time(); + site.wgt = p.wgt(); + site.delayed_group = p.delayed_group(); + site.surf_id = surf.id_; + site.particle = p.type(); + site.parent_id = p.id(); + site.progeny_id = p.n_progeny(); + int64_t idx = simulation::surf_source_bank.thread_safe_append(site); +} + } // namespace openmc diff --git a/src/settings.cpp b/src/settings.cpp index f5cd1b7e9..6c3226b04 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -119,6 +119,8 @@ std::unordered_set sourcepoint_batch; std::unordered_set statepoint_batch; std::unordered_set source_write_surf_id; int64_t max_surface_particles; +int64_t ssw_cell_id {C_NONE}; +SSWCellType ssw_cell_type {SSWCellType::None}; TemperatureMethod temperature_method {TemperatureMethod::NEAREST}; double temperature_tolerance {10.0}; double temperature_default {293.6}; @@ -747,7 +749,9 @@ void read_settings_xml(pugi::xml_node root) // Get surface source write node xml_node node_ssw = root.child("surf_source_write"); - // Determine surface ids at which crossing particles are to be banked + // Determine surface ids at which crossing particles are to be banked. + // If no surfaces are specified, all surfaces in the model will be used + // to bank source points. if (check_for_node(node_ssw, "surface_ids")) { auto temp = get_node_array(node_ssw, "surface_ids"); for (const auto& b : temp) { @@ -759,7 +763,12 @@ void read_settings_xml(pugi::xml_node root) if (check_for_node(node_ssw, "max_particles")) { max_surface_particles = std::stoll(get_node_value(node_ssw, "max_particles")); + } else { + fatal_error("A maximum number of particles needs to be specified " + "using the 'max_particles' parameter to store surface " + "source points."); } + if (check_for_node(node_ssw, "mcpl")) { surf_mcpl_write = get_node_value_bool(node_ssw, "mcpl"); @@ -769,6 +778,27 @@ void read_settings_xml(pugi::xml_node root) "surface source files."); } } + // Get cell information + if (check_for_node(node_ssw, "cell")) { + ssw_cell_id = std::stoll(get_node_value(node_ssw, "cell")); + ssw_cell_type = SSWCellType::Both; + } + if (check_for_node(node_ssw, "cellfrom")) { + if (ssw_cell_id != C_NONE) { + fatal_error( + "'cell', 'cellfrom' and 'cellto' cannot be used at the same time."); + } + ssw_cell_id = std::stoll(get_node_value(node_ssw, "cellfrom")); + ssw_cell_type = SSWCellType::From; + } + if (check_for_node(node_ssw, "cellto")) { + if (ssw_cell_id != C_NONE) { + fatal_error( + "'cell', 'cellfrom' and 'cellto' cannot be used at the same time."); + } + ssw_cell_id = std::stoll(get_node_value(node_ssw, "cellto")); + ssw_cell_type = SSWCellType::To; + } } // If source is not separate and is to be written out in the statepoint file, diff --git a/src/surface.cpp b/src/surface.cpp index 12fef070e..50ef2a128 100644 --- a/src/surface.cpp +++ b/src/surface.cpp @@ -63,7 +63,8 @@ Surface::Surface(pugi::xml_node surf_node) { if (check_for_node(surf_node, "id")) { id_ = std::stoi(get_node_value(surf_node, "id")); - if (contains(settings::source_write_surf_id, id_)) { + if (contains(settings::source_write_surf_id, id_) || + settings::source_write_surf_id.empty()) { surf_source_ = true; } } else { diff --git a/tests/regression_tests/filter_cellfrom/__init__.py b/tests/regression_tests/filter_cellfrom/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/tests/regression_tests/filter_cellfrom/inputs_true.dat b/tests/regression_tests/filter_cellfrom/inputs_true.dat new file mode 100644 index 000000000..8a37e8286 --- /dev/null +++ b/tests/regression_tests/filter_cellfrom/inputs_true.dat @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 2000 + 15 + 5 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + 1 + + + + 1 + + + 1 + + + 2 + + + 3 + + + 4 + + + 2 + + + 3 + + + 4 + + + 5 1 + total + + + 5 2 + total + + + 5 3 + total + + + 5 4 + total + + + 6 1 + total + + + 6 2 + total + + + 6 3 + total + + + 6 4 + total + + + 7 1 + total + + + 7 2 + total + + + 7 3 + total + + + 7 4 + total + + + 8 1 + total + + + 8 2 + total + + + 8 3 + total + + + 8 4 + total + + + total + + + diff --git a/tests/regression_tests/filter_cellfrom/results_true.dat b/tests/regression_tests/filter_cellfrom/results_true.dat new file mode 100644 index 000000000..5dd43e1f3 --- /dev/null +++ b/tests/regression_tests/filter_cellfrom/results_true.dat @@ -0,0 +1,53 @@ +k-combined: +9.640806E-02 2.655206E-03 +tally 1: +6.025999E+00 +3.635317E+00 +tally 2: +4.523606E-04 +2.051522E-08 +tally 3: +6.026452E+00 +3.635862E+00 +tally 4: +0.000000E+00 +0.000000E+00 +tally 5: +1.530903E+00 +2.357048E-01 +tally 6: +4.992646E-05 +2.600391E-10 +tally 7: +1.530953E+00 +2.357201E-01 +tally 8: +1.889115E+01 +3.574727E+01 +tally 9: +7.556902E+00 +5.717680E+00 +tally 10: +5.022871E-04 +2.531352E-08 +tally 11: +7.557405E+00 +5.718440E+00 +tally 12: +1.889115E+01 +3.574727E+01 +tally 13: +0.000000E+00 +0.000000E+00 +tally 14: +2.663407E-04 +7.161725E-09 +tally 15: +2.663407E-04 +7.161725E-09 +tally 16: +8.025710E+01 +6.459305E+02 +tally 17: +1.067059E+02 +1.140939E+03 diff --git a/tests/regression_tests/filter_cellfrom/test.py b/tests/regression_tests/filter_cellfrom/test.py new file mode 100644 index 000000000..8fb7509cb --- /dev/null +++ b/tests/regression_tests/filter_cellfrom/test.py @@ -0,0 +1,315 @@ +"""This test ensures that the CellFromFilter works correctly even if the level of +coordinates (number of encapsulated universes) is different in the cell from +where the particle originates compared to the cell where the particle is going. + +A matrix of reaction rates based on where the particle is coming from and +where it goes to is calculated and compared to the total reaction rate of the problem. +The components of this matrix are also compared to other components using symmetric +properties. + +TODO: + +- Test with a lattice, +- Test with mesh, +- Test with reflective boundary conditions, +- Test with periodic boundary conditions. + +""" + +from numpy.testing import assert_allclose, assert_equal +import numpy as np +import openmc +import pytest + +from tests.testing_harness import PyAPITestHarness + + +RTOL = 1.0e-7 +ATOL = 0.0 + + +@pytest.fixture +def model(): + """Cylindrical core contained in a first box which is contained in a larger box. + A lower universe is used to describe the interior of the first box which + contains the core and its surrounding space.""" + openmc.reset_auto_ids() + model = openmc.Model() + + # ============================================================================= + # Materials + # ============================================================================= + + fuel = openmc.Material() + fuel.add_nuclide("U234", 0.0004524) + fuel.add_nuclide("U235", 0.0506068) + fuel.add_nuclide("U238", 0.9487090) + fuel.add_nuclide("U236", 0.0002318) + fuel.add_nuclide("O16", 2.0) + fuel.set_density("g/cm3", 10.97) + + water = openmc.Material() + water.add_nuclide("H1", 2.0) + water.add_nuclide("O16", 1.0) + water.set_density("g/cm3", 1.0) + + air = openmc.Material() + air.add_element("O", 0.2) + air.add_element("N", 0.8) + air.set_density("g/cm3", 0.001225) + + # ============================================================================= + # Geometry + # ============================================================================= + + # ----------------------------------------------------------------------------- + # Cylindrical core + # ----------------------------------------------------------------------------- + + # Parameters + core_radius = 2.0 + core_height = 4.0 + + # Surfaces + core_cylinder = openmc.ZCylinder(r=core_radius) + core_lower_plane = openmc.ZPlane(z0=-core_height / 2.0) + core_upper_plane = openmc.ZPlane(z0=core_height / 2.0) + + # Region + core_region = -core_cylinder & +core_lower_plane & -core_upper_plane + + # Cells + core = openmc.Cell(fill=fuel, region=core_region) + outside_core_region = +core_cylinder | -core_lower_plane | +core_upper_plane + outside_core = openmc.Cell(fill=air, region=outside_core_region) + + # Universe + inside_box1_universe = openmc.Universe(cells=[core, outside_core]) + + # ----------------------------------------------------------------------------- + # Box 1 + # ----------------------------------------------------------------------------- + + # Parameters + box1_size = 4.1 + + # Surfaces + box1_rpp = openmc.model.RectangularParallelepiped( + -box1_size / 2.0, box1_size / 2.0, + -box1_size / 2.0, box1_size / 2.0, + -box1_size / 2.0, box1_size / 2.0, + ) + + # Cell + box1 = openmc.Cell(fill=inside_box1_universe, region=-box1_rpp) + + # ----------------------------------------------------------------------------- + # Box 2 + # ----------------------------------------------------------------------------- + + # Parameters + box2_size = 12 + + # Surfaces + box2_rpp = openmc.model.RectangularParallelepiped( + -box2_size / 2.0, box2_size / 2.0, + -box2_size / 2.0, box2_size / 2.0, + -box2_size / 2.0, box2_size / 2.0, + boundary_type="vacuum" + ) + + # Cell + box2 = openmc.Cell(fill=water, region=-box2_rpp & +box1_rpp) + + # Register geometry + model.geometry = openmc.Geometry([box1, box2]) + + # ============================================================================= + # Settings + # ============================================================================= + + model.settings = openmc.Settings() + model.settings.particles = 2000 + model.settings.batches = 15 + model.settings.inactive = 5 + model.settings.seed = 1 + + bounds = [ + -core_radius, + -core_radius, + -core_height / 2.0, + core_radius, + core_radius, + core_height / 2.0, + ] + distribution = openmc.stats.Box(bounds[:3], bounds[3:], only_fissionable=True) + model.settings.source = openmc.IndependentSource(space=distribution) + + # ============================================================================= + # Tallies + # ============================================================================= + + in_core_filter = openmc.CellFilter([core]) + in_outside_core_filter = openmc.CellFilter([outside_core]) + in_box1_filter = openmc.CellFilter([box1]) + in_box2_filter = openmc.CellFilter([box2]) + + from_core_filter = openmc.CellFromFilter([core]) + from_outside_core_filter = openmc.CellFromFilter([outside_core]) + from_box1_filter = openmc.CellFromFilter([box1]) + from_box2_filter = openmc.CellFromFilter([box2]) + + t1_1 = openmc.Tally(name="total from 1 in 1") + t1_1.filters = [from_core_filter, in_core_filter] + t1_1.scores = ["total"] + + t1_2 = openmc.Tally(name="total from 1 in 2") + t1_2.filters = [from_core_filter, in_outside_core_filter] + t1_2.scores = ["total"] + + t1_3 = openmc.Tally(name="total from 1 in 3") + t1_3.filters = [from_core_filter, in_box1_filter] + t1_3.scores = ["total"] + + t1_4 = openmc.Tally(name="total from 1 in 4") + t1_4.filters = [from_core_filter, in_box2_filter] + t1_4.scores = ["total"] + + t2_1 = openmc.Tally(name="total from 2 in 1") + t2_1.filters = [from_outside_core_filter, in_core_filter] + t2_1.scores = ["total"] + + t2_2 = openmc.Tally(name="total from 2 in 2") + t2_2.filters = [from_outside_core_filter, in_outside_core_filter] + t2_2.scores = ["total"] + + t2_3 = openmc.Tally(name="total from 2 in 3") + t2_3.filters = [from_outside_core_filter, in_box1_filter] + t2_3.scores = ["total"] + + t2_4 = openmc.Tally(name="total from 2 in 4") + t2_4.filters = [from_outside_core_filter, in_box2_filter] + t2_4.scores = ["total"] + + t3_1 = openmc.Tally(name="total from 3 in 1") + t3_1.filters = [from_box1_filter, in_core_filter] + t3_1.scores = ["total"] + + t3_2 = openmc.Tally(name="total from 3 in 2") + t3_2.filters = [from_box1_filter, in_outside_core_filter] + t3_2.scores = ["total"] + + t3_3 = openmc.Tally(name="total from 3 in 3") + t3_3.filters = [from_box1_filter, in_box1_filter] + t3_3.scores = ["total"] + + t3_4 = openmc.Tally(name="total from 3 in 4") + t3_4.filters = [from_box1_filter, in_box2_filter] + t3_4.scores = ["total"] + + t4_1 = openmc.Tally(name="total from 4 in 1") + t4_1.filters = [from_box2_filter, in_core_filter] + t4_1.scores = ["total"] + + t4_2 = openmc.Tally(name="total from 4 in 2") + t4_2.filters = [from_box2_filter, in_outside_core_filter] + t4_2.scores = ["total"] + + t4_3 = openmc.Tally(name="total from 4 in 3") + t4_3.filters = [from_box2_filter, in_box1_filter] + t4_3.scores = ["total"] + + t4_4 = openmc.Tally(name="total from 4 in 4") + t4_4.filters = [from_box2_filter, in_box2_filter] + t4_4.scores = ["total"] + + tglobal = openmc.Tally(name="total") + tglobal.scores = ["total"] + + model.tallies += [ + t1_1, + t1_2, + t1_3, + t1_4, + t2_1, + t2_2, + t2_3, + t2_4, + t3_1, + t3_2, + t3_3, + t3_4, + t4_1, + t4_2, + t4_3, + t4_4, + tglobal, + ] + return model + + +class CellFromFilterTest(PyAPITestHarness): + + def _compare_results(self): + """Additional unit tests on the tally results to check + consistency of CellFromFilter.""" + with openmc.StatePoint(self.statepoint_name) as sp: + + t1_1 = sp.get_tally(name="total from 1 in 1").mean + t1_2 = sp.get_tally(name="total from 1 in 2").mean + t1_3 = sp.get_tally(name="total from 1 in 3").mean + t1_4 = sp.get_tally(name="total from 1 in 4").mean + + t2_1 = sp.get_tally(name="total from 2 in 1").mean + t2_2 = sp.get_tally(name="total from 2 in 2").mean + t2_3 = sp.get_tally(name="total from 2 in 3").mean + t2_4 = sp.get_tally(name="total from 2 in 4").mean + + t3_1 = sp.get_tally(name="total from 3 in 1").mean + t3_2 = sp.get_tally(name="total from 3 in 2").mean + t3_3 = sp.get_tally(name="total from 3 in 3").mean + t3_4 = sp.get_tally(name="total from 3 in 4").mean + + t4_1 = sp.get_tally(name="total from 4 in 1").mean + t4_2 = sp.get_tally(name="total from 4 in 2").mean + t4_3 = sp.get_tally(name="total from 4 in 3").mean + t4_4 = sp.get_tally(name="total from 4 in 4").mean + + tglobal = sp.get_tally(name="total").mean + + # From 1 and 2 is equivalent to from 3 + assert_allclose(t1_1 + t2_1, t3_1, rtol=RTOL, atol=ATOL) + assert_allclose(t1_2 + t2_2, t3_2, rtol=RTOL, atol=ATOL) + assert_allclose(t1_3 + t2_3, t3_3, rtol=RTOL, atol=ATOL) + assert_allclose(t1_4 + t2_4, t3_4, rtol=RTOL, atol=ATOL) + + # In 1 and 2 equivalent to in 3 + assert_allclose(t1_1 + t1_2, t1_3, rtol=RTOL, atol=ATOL) + assert_allclose(t2_1 + t2_2, t2_3, rtol=RTOL, atol=ATOL) + assert_allclose(t3_1 + t3_2, t3_3, rtol=RTOL, atol=ATOL) + assert_allclose(t4_1 + t4_2, t4_3, rtol=RTOL, atol=ATOL) + + # Comparison to global from 3 + assert_allclose(t3_3 + t3_4 + t4_3 + t4_4, tglobal, rtol=RTOL, atol=ATOL) + + # Comparison to global from 1 and 2 + t_from_1_wo_3 = t1_1 + t1_2 + t1_4 + t_from_2_wo_3 = t2_1 + t2_2 + t2_4 + t_from_4_wo_3 = t4_1 + t4_2 + t4_4 + assert_allclose( + t_from_1_wo_3 + t_from_2_wo_3 + t_from_4_wo_3, + tglobal, + rtol=RTOL, + atol=ATOL, + ) + + # 1 cannot contribute to 4 and 4 cannot contribute to 1 by symmetry + assert_equal(t1_4, np.zeros_like(t1_4)) + assert_equal(t4_1, np.zeros_like(t4_1)) + + return super()._compare_results() + + +def test_filter_cellfrom(model): + harness = CellFromFilterTest("statepoint.15.h5", model) + harness.main() diff --git a/tests/regression_tests/surface_source/test.py b/tests/regression_tests/surface_source/test.py index a25b40064..81bba0c94 100644 --- a/tests/regression_tests/surface_source/test.py +++ b/tests/regression_tests/surface_source/test.py @@ -118,15 +118,13 @@ class SurfaceSourceTestHarness(PyAPITestHarness): @pytest.mark.surf_source_op('write') -def test_surface_source_write(model): +def test_surface_source_write(model, monkeypatch): # Test result is based on 1 MPI process - np = config['mpi_np'] - config['mpi_np'] = '1' + monkeypatch.setitem(config, "mpi_np", "1") harness = SurfaceSourceTestHarness('statepoint.10.h5', model, 'inputs_true_write.dat') harness.main() - config['mpi_np'] = np @pytest.mark.surf_source_op('read') diff --git a/tests/regression_tests/surface_source_write/__init__.py b/tests/regression_tests/surface_source_write/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/tests/regression_tests/surface_source_write/_visualize.py b/tests/regression_tests/surface_source_write/_visualize.py new file mode 100644 index 000000000..73340cae0 --- /dev/null +++ b/tests/regression_tests/surface_source_write/_visualize.py @@ -0,0 +1,66 @@ +"""Helper script to visualize the surface_source.h5 files created with this test. +""" + +import h5py +import matplotlib.pyplot as plt + + +if __name__ == "__main__": + + # Select an option + # "show": 3D visualization using matplotlib + # "savefig": 2D representation using matplotlib and storing the fig under plot_2d.png + option = "show" + # option = "savefig" + + # Select the case from its folder name + folder = "case-20" + + # Reading the surface source file + with h5py.File(f"{folder}/surface_source_true.h5", "r") as fp: + source_bank = fp["source_bank"][()] + r_xs = source_bank['r']['x'] + r_ys = source_bank['r']['y'] + r_zs = source_bank['r']['z'] + + print("Size of the source bank: ", len(source_bank)) + + # Select data range to visualize + idx_1 = 0 + idx_2 = -1 + + # Show 3D representation + if option == "show": + + fig = plt.figure(figsize=(10, 10)) + ax1 = fig.add_subplot(projection="3d", proj_type="ortho") + ax1.scatter(r_xs[idx_1:idx_2], r_ys[idx_1:idx_2], r_zs[idx_1:idx_2], marker=".") + ax1.view_init(0, 0) + ax1.xaxis.set_ticklabels([]) + ax1.set_ylabel("y-axis [cm]") + ax1.set_zlabel("z-axis [cm]") + ax1.set_aspect("equal", "box") + + plt.show() + + # Save 2D representations + elif option == "savefig": + + fig = plt.figure(figsize=(14, 5)) + ax1 = fig.add_subplot(121, projection="3d", proj_type="ortho") + ax1.scatter(r_xs[idx_1:idx_2], r_ys[idx_1:idx_2], r_zs[idx_1:idx_2], marker=".") + ax1.view_init(0, 0) + ax1.xaxis.set_ticklabels([]) + ax1.set_ylabel("y-axis [cm]") + ax1.set_zlabel("z-axis [cm]") + ax1.set_aspect("equal", "box") + + ax2 = fig.add_subplot(122, projection="3d", proj_type="ortho") + ax2.scatter(r_xs[idx_1:idx_2], r_ys[idx_1:idx_2], r_zs[idx_1:idx_2], marker=".") + ax2.view_init(90, -90) + ax2.zaxis.set_ticklabels([]) + ax2.set_xlabel("x-axis [cm]") + ax2.set_ylabel("y-axis [cm]") + ax2.set_aspect("equal", "box") + + plt.savefig("plot_2d.png") diff --git a/tests/regression_tests/surface_source_write/case-01/inputs_true.dat b/tests/regression_tests/surface_source_write/case-01/inputs_true.dat new file mode 100644 index 000000000..ecca3a9f8 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-01/inputs_true.dat @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 300 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-01/results_true.dat b/tests/regression_tests/surface_source_write/case-01/results_true.dat new file mode 100644 index 000000000..8979eb554 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-01/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +5.169123E-02 9.144814E-03 diff --git a/tests/regression_tests/surface_source_write/case-01/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-01/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..82dca4d032eec7395fe8697247c7dc4fb01f51e1 GIT binary patch literal 33344 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 8 + 300 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-02/results_true.dat b/tests/regression_tests/surface_source_write/case-02/results_true.dat new file mode 100644 index 000000000..8979eb554 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-02/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +5.169123E-02 9.144814E-03 diff --git a/tests/regression_tests/surface_source_write/case-02/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-02/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..872efa070701d0a052aa84f2f1980145fb59519b GIT binary patch literal 12752 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 fIbtUfR=hm1DWH4{y87gfrX|1|kOEHDC< literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-03/inputs_true.dat b/tests/regression_tests/surface_source_write/case-03/inputs_true.dat new file mode 100644 index 000000000..38faa2a78 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-03/inputs_true.dat @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 4 5 6 7 8 9 + 300 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-03/results_true.dat b/tests/regression_tests/surface_source_write/case-03/results_true.dat new file mode 100644 index 000000000..8979eb554 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-03/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +5.169123E-02 9.144814E-03 diff --git a/tests/regression_tests/surface_source_write/case-03/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-03/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..04a6ac9a387d5bd34e4d46fc533e90171d779238 GIT binary patch literal 33344 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 4 5 6 7 8 9 + 300 + 2 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-04/results_true.dat b/tests/regression_tests/surface_source_write/case-04/results_true.dat new file mode 100644 index 000000000..8979eb554 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-04/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +5.169123E-02 9.144814E-03 diff --git a/tests/regression_tests/surface_source_write/case-04/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-04/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..75c309eb4f43740be530493ea10863478d06a525 GIT binary patch literal 33344 zcmeIb2{=_-_{V?DLn%t8WFDIgnZw$fkcd(!N(z-m4KhWND4|J8sYIb(1-D|D=u6=KA-=@jL$i+zb z^`fUIP!pK{*v0?MF1!%8`6Kvy{B!e#9g2nRjfHJE<@^o>fr{|!GmeGh%nRl7QOzIN zwQzi|frbWQ?o7OVe7o>5frD;-j~+kp|8M_4Wr6J)=pU}KZ$UNgPuUB8h8yF;S=;j# zR)>xpK6CPqL%3fe_zC~VEz5$xlKb^?g5*N^3FJxPQh%E>&!fje z=}hV*2^g@Ik;`B6hz1MTc<_FDY%h#foE_)inE+y4--n&zDuDG>oTG0&gi)h3c!4Qf zgM>5RHVA}2(_`4Iu~V9P=nvg<%CT?_`;H_-YV3SPY5msamEd@T%Vop93h1F2vR6pD z6W-UdmK(4^(J#rx$!mD|NjSf*L%&|XIAoVg!oS5KZ!VNo4iN^2>K64};+81jdqauM z<_qT-%T>ZXwzW4#_SD1KXt17tOFP`}D^&DUb2Ivq!(*L%&(eBu8_p{v5X^VQKV6qL zzR1aNr^pJ{qQESKCDlhWI>61c!0S67RKjnDtX;QOR>6krLcPyEE1=Y8kGwdYv^0kX z2P|y=ExX}$h2vI9yljXl9$nOP-C?|WDq{@Zjm?*NJJ|x(3NbMkUTT1e&aIAGA8KLK zH#MqVWn0nm8?P-_F!L_y2MgV49P_XF0p4bD(7$Cj1{|=k{kJ&t1Et@ve~Yv1H{y@I ze~Yu6jMF*!b_QN(2F1?WU%QJZ;QYt*7}sfwHhIH*sMj{)eWbG&c&$BVMq3&JTX{6| zMCsO`oNZ6_DxYp3@i)Bgf5japGESaZASPdU)UKSs%SUeYSg4%KBw*||Ei_8w z^-%NLk%CC!cHr`yI(8_j942;f&R#8UKx(r>_j7FBNy5R~%%ABwhkW=MeY+F47ZQ6? zOhl4<2CkypZY$bS3WLfwOSRQ^!8kH}7xwp< zjl(rJ`%L2wbl^OUA>6h{u(<|EB%Pp5ipc_Z6zSa7M|8nV)9DT;!*C#xx$~#kk9HEy zU)4|Bs?b9Sh}0?lYkHcMxFJL;*(e_$U9)t@H`C_GRoy-!)H9_XTe7kqwc3b zx3fB$8kL3M*==4Li|g`eNum4N?U5oR96Uz<;;ba&!GT2H51dyy(B;&g+RqQmk#LCpfP8$jIV>pcq0nc% zUJ#utx#_3JXb?nTw~p)9W|&@8?_{IW4oz>2(zN_Y2j94D#7^omqUnA@n4|DaX4F z;B{s&edAkdZ=!NJc~GB(gZBykOb_mFD#NL(YWfEu<1v4%A&Um#2zOK5;?xGJ zX9W!lohzZnVAS>vDh)sgvTl`@+k#?6bgvaX#7H>A{>DP)Z&#lz68fSEM%zT!hP^vHrT#1l@8G` z68Nd_*#fTzYbV!SYXzI{zUkNAo(sgb^m(=AZ$X>B+UM4sCmsI~`!zXdYN^AEPLFtf$QYF|932hyz{QIYnWcax1=|@G9c1mnFt|d7C^mT6Sf5hQl zf+Jbo6&WEs3S~yTLL@|~uwK)dXH7zFAorV*-{|2MDEh4L(~aGk@LOSK>^Uz3)Z+O_ zTEVu#CGECu364NY`oVRK4Y2dx#p~v66qrq|hW^{KKEM{O6`r2<7Ai8cAJb}$gH6%5 z{BKYhpv(C^W550dhi3`SKdp!NKjQHHM;!hoI3x9gS6It_!p(*`?<3aGVEcrOwc{+y zfoy=wz08yCkTH!5_Qlpi-TkWj9$nT&bIcCEC?c`X?n;+hhGG_|_!c zEi$1df1v@avrvr>4DW9*&a$2C7pYZDvz3nK%yMH*Bj6>YN z7Ft5jKkaYA{}D&zKjMh~M;x*Lh$BwMakswv`Rg%iq|R>oVxN7~qQA+i=<4r#*#;E7 z)psd9j({ePU(IJ+THwgxl4+r9DEbD3`V=;WIY|cnY|NI^~ywT`BDO|JLxBV+_nK#TBhd7p+Oq2@wW1-f4zZ>6GI`Z zRFM}CVhBPl(cJ?$5AnVv`$<}{3*JvPO}e`y0!An6Hn=6#1OIoQMt3wbqi!i*pEQzj zi2DZ{$vD-cGWC`6b%6I7hfI6p#3Dx}P~z+iZ8aP>9Qf={-wK4sPKc^pX#|hOpU`my zbE5H~ALL8^g0qQ?(`dbBQFd!_J{IW>x<92T_8A7QpD^0SYDciW7C6}Q56=mhtI`YVZgV!DNZz3XWF zwW3#0op0(95-fy1Gl~-p_zTV!GS0+$v6ZQPGvLBF#{7|HasCAf7YQtHu`dMfyhWc@ z)@FgW7O@{2nR>yQukqkxv?$8FJ!dq9j6>XhWXL#7>ah@0Zd|OF@Qh{Cx7I!aTw8{` zhC|-NW9Rwd5v4x3)z7`{mH0Q9o@ZYs(I<#{U+iaGuSr@z#PL9uj5Gh19+7o9%4hJb z6Yyv{2Z)bUfg23AE}g!;z{)v8w2&qdi0W5`i1ihK&Z3o7b{j>|T+eS|m&x=H`rT;M|KIA8Ld;3P8PREuDN$1K4Qz(o%d`2QX^+IpKF&6t!GW z?KMKiA-3C}-(#gmLQna4H_^}_k||V{x4-5<)gsOmOr{0w{kVM#?5+i-`VKqU^cx|A zc&#KSrvUn#^N4~Zncax>D3a;8!DfBR@Bl;e1syFsBB z4l>=bu|5z6tg=)0j+Yn1RpLHRvy1@BZ93>>q$p0(k0+jY*}A~NH7;^&R>br6b%T42 zk}UccyWp|xT^7uCy)d43}sMM|lZOK;4)7 zEqVQb(L^~4X=#DiI__-dXX%4jKMN+XG5{PXrQ8cV@?d7YOv`FxfL^%S_~ZMsr8z1K z9MTOv_D^#b47!NfP7$Uywu~CNAEMiFG?NCI|9~D-FjW=5rt=+AgsbXs3)KN@==iRG zSr@!H^x>xRjUgm8^=0)C3rbQy#Bp??;V;g|jz_KOW(%JJLbnssw62WdaRKobcAiul zO98bq6Qc57UqQoLwLA6e`oK?-c2nhU5tMLjVtAVPrf2{wO_Cy{7cxr`|#ke!%C%DXMZfyZi3Llic0lt?jgI_Qz$YQhUdmDg%T> z4>1Q_D1MRi$NPW2e$*B?_~xRl`v@e|cKZCleBKno0-dsz77WgL7rg-C#61gIlUM8txs*`P>vO zkB)2dyc+?VNjSv)Dvbquk^7s0nzj?l6a$BDu&`FCO+s~@9DdeImGDPRwbk`2d7#)X zEQy1+8@~1Jyfv779^n;4Q|LpCNI1mxqe)UP_?v&;ueI=^7q%Oe1r?O^vH4F zuMHZ;{cxp6E%!O9WGIMO1O|_Gfyl>+-733lVUIVBS^9(|+Lxa%Jz7p04~XryeW83Z zyCK_lCfymC%!jeTIYL|_Q*b<1AnWUoK2WUw{1$h?CxDr-gwbmSf}Ok@-j9HNs8VlQ zOoZfe61(AL{u-BPlj*^A{L`Er{}D&$KjQp(eil8lTR*m<;L{iInzm28aq~1R$kV9V zM%@d#yT=@D*O!9*+NMI9ie6C1%<`75>OS;~)Uou9yi7~h&&~xscntry>PPQCvYY-A zoI9(jO@a3(XqtWF&Q5d~?quT1jUVg=9hE`*wPHdvwI0W|8)B?_>VYymf%#R#F;as#sK$2Nu~B?(=fB_Td{sh3kaAk zk9ka62?UI8Rit<|LAPUF_LV6pY7Vovy1m>u@3HU+e9XsfH^}(`)kE= zAerCIBvji1M>pKcGjhvDhB6(!BC{ly)U%(A6XjG(#qj+1c>cY2RPot6voNUa-fLNb zN?+y^Ion3be>#qA#Vu}ho)Kp)0z~)+7me(=0AZwHG?VEX}pas%+ zFothO1Cc3l%g}X8+U+12=c(avz30xw@fFr<-`{JjG6G*-!W1(-^TER)4)k?vFKl;h zUhP{G2+D#ZZrUbjq6(klEtcIAAmI?VQ!_Hozh$>W{}IQWjI$;}=!9!W@1kEX z@vy}fy6d24c_V^oeK<+{fH)plka7MkKd>a@*t#6pZ^*ZpcZ>K-A3xsSKL$FjruTH7 zje+C#QwKvr`+$trD~q+`7~C55sw0M01eJKQRv_^qX}$}w9@2Sh0)dgwHYu)j0B@&Q z#?}T|RnG?CtoYqllB*4_U=r;-Q`!jSITNnyYnDN2dQB;1CuwxWz=PF+@>@vkhS&M8 z@d9~X^tN)RoL$4e+v$zv*arI&TI|icGq-)Yx?n>+mhtdLAw2bDU;Ek{)zB#7ioxTT z1&BkKgQ|$h?j<=?WOhpsuym`>p9J^(;|D%5{>~pn603h&%SVC=tI+MQ(!RjJgC!M& z$9*8_dZTY*p#UnT?uvAbljg_ced%9%@G&GQjvncJTd-Exvkrcb?OwtDdIY|c=e9Fo zZ3I#QPGPAnjR2_a*Y&Y!grO^`N4V1`kdfvS`s#M1^GL+wEPNm5RJ^@xvi@m1C?U9l z)4def{Be40k3hd_@|7f@T`R-&=|nX=&%ZSmwd;lt&y0(Fy)|vVZBp_i>ILC@b^~n1Z+teN~g7 z_03dR*VU(2jrH1qMa?5g6@ywR=;FEgKy)3ru}bA>=8!a+LnHaTn~a0o=+8I{uGcY9Cvey za=9gi9#?>@mSh~l1VA=X2l=S|heAR=|>D_;MIuFmMW4_mvzj#l05 z5sq}o7WMvWHfuYqxmHlAZr2P#6?9$?Ul2k*iau232wiEn?! z2{j5=+FCOJP2Z=jiJPFq>jzoU>~d;N%ww2Tzxq|@!5+w+!12Y*tO6E#i$t8h5CF-T#>$O5T~HW&xA%S)#;a*OA}%gLS`rIXJ1&22Db%V@??b!*h<;v83J> z&?qN$QpUm!=)DbXo_3;Iu=o7+_^&v)e+7<&NH`nTLxnPeTkg|Dz(oJ>>vQf-cy65L zT?I`TWZii1InTL9;O>5KT8dp94ch+XxhC2DA3T=*(nFqyFUNE!AW3-&INmO=7qb{y z_&f$`f+7*)?ehIkj^I)2s~7S z8Y-OB$fIhP*e_3hkAE6P_}V+O=EgrsD+%f{Wst&;$LaF!R)8*RU$ZKN7Dc`6?kSP^ zHF5hP=j_b+&UMjr?*8nCHtxM%zd1g`2W@Ekg2DFnZ+xDoN{Cw@~tD*8x@cy#LT3MPc=$+G`ikr;eh~qVRp7%oe2;+<9hR;|pV7>ow zi$LoP82Z`wZPVQS`wvG)74E-#4d|D7+N)it0M`|K%~A^0QFH4LPyQ;tk>^D}Zq81v z3ZX=B-in%ZgL<_=@P+>&n-yCl*qvi}uga(sct<8-YFux@hjVL6_f?9aNfGbQ75|0Z z@Vw~xa`C_P2-??^9Uw3Tv9-G|_<8k!&-Uj7C6yb1{OgsicP4VdyL~Gvk=72FymC+t z3B8ZxCh308-9;KliQ_eSUi7sKlM=&l9Aw;l5XQ7((XWxCeeMUg^j8B>>{j9~3Vl#0 zo@V;ls~dc5`J8F|atkWmw6~j@tbT~&4tZX*{ME`*{e%hV9>c3fn@^os_oSKuo3d#MMhf2;b_Ms9k@-A7w3Qz9C=8>WA3hmdNkL_&(ft zAItv)-2*6*n$@Cl7utH@*2BWiURz3_twpwZW&{S`Wt+Apn9Z&G*t5E&fQ&=j zPC4+ZC)v^?&LNK$4@f;s_9SLwSQ6o-I&DXIoP*h-=NGDn@jm;`{2Ny4O>>RXTZSN zXUEof#sg7LLNZGMf}ZtsZB|Pq?T-@c`5$@2%hTlV4?DZ{zXR3FZ z_J`)cJ&~Ln%nr4|uRNmdC(~QtUOmt6j4z`BrTC3DKnEIbuCaeD3R_K@cmu69R)BhJ1B2O zTnD`47Ez+?@(xhCFiG)>6#i|_&MBJ1RPMtNX-BvCbqC=7fQ<=h3w|J+hP8;u)~UI1 zsUzi$oM$h)pJNeuTahScDM<)z60*HfKznV_fqvR zvPElvko+2u=pl}8d}JIQsngqn%_ScYd zi0vjsW;aa=A6u%H#dXz4R9HQm)5Z}Haksy9H%~1%OYeC}Zf;#@jUW4`uNpPr2u;n3 z%Ps3s-$xmIFm@w}-H18DWE^(&!)uM=W}yL#?Wbiqzt_)MJW;w3J=q9l-byJae~f_1 zR(F;9-**6u_^|Hn3VTsis|^v)VoB%YiTej4WSksroxRS|wAlEA&C4>s{9YGox%x?~ zGe-fOsb;OL&us$VMcNoQhqS?z%)YD-C6$PtO6YEDx9uc)h})?s8E5|O+lfn>X7(d|`uHXYhIIBxslI6eZc*t{ z`HF4ON>_e*xhjh8*?i`%l;F~Flsx}>*LkP-M8!#%P?Z(HWwsc95L#XX$4suTu-2%( z?u@4Up}Uc6K?}$m)ayU%38n^Z;@}y1JqEg?!;BTjHTl!dH(gk#o0ur=LVsv zP_}FU^7B++9bj=Bj4;Y&e7a=(9Gnh($t>W~3UB7NmAZaz1p&dYPZm^OL{f};3bS@Q zkoYyR-SGTtJchsPrBM)EPQZ36#C|fXF9!2JgC5iCv)v--oeKrqC4-%=e1$9nKfiZ4 z^unSMA#tN+;wU$rz-ccU(s^a#_JikNlggsUR;@s{2{KfGed(O;Y3nJF)q=rNz9!WW zvkED5esJ>aZ%D)86aZlsJz&Z!(0w;Hp@@$0Ow_#!MTKZsBw!mSwFWCZmi#8 zwxMYaYE)W()VfQJ#BRhK^89PuZtAXfp|=yKKuYwUO)vJRfsJd^+{{llfuLt$P}Q-EsMkZ^HAz1&)Z|P-;Dt!)CK6Ki$&f1w8*6*NE#mIkTRd@bf2- zzN6r)|y%Z06%{4C)PE>&E?Wd-AH?Kr> zG*1ZL@gdFYBQ5d@C)BDEtBHKuc@s?Mr(96fg7F{2QL60tQI03j_ zgM(sLm*H^-8RVt&*<$(?#3o10YF|qx!kXcIX=(jlN)^h0(Ma$4HdOc%f@;^ zkM;Y552-SsYR603qwd)t(a2bW(VQC{|7gAbMAXuLjpupe*M$W?z}!tE8a`p;;I!JR zM;_k!aDRM6+P;!rnC80EI)l0ZWN%Qq-HJSe!si({D7WuGuh~W4k76UeKZpPJU;egW zP~2>U=-hp!ubTSc0uKq4FgA0_YlGRQRi{IEJVCt+=W~YIUNFTje)vXpKFqz*S@Oa` z06kehbiw`*Y1|>U+k!(aa$2rTJ={65*gwE5ggyxQCk_DWs14hdWecH~as=3t*adfa z(FO2nRD#nYCnrO0NuX=$)2gh_kmeENHu|LpSs>v3czv^h_XTEypnHG1(|F@=e?WKW z1~Hbl09KC@AG^>>*zjIiIbE>{h=j=mpvO&-v+5V!zjNLo@i$_>Mi-UL?`ZMuJ7>`_ z3fEJ1uc7vt!0m?}2oC=tMw0}y&I(?1ZEt}dmLq5QSli(BO(`OF+fejC=I#&&ep0*P zG4q!mH8M`Vk06iUn_Ac#qUZQb?f3YeDNYr2^zMd{mlSmyXObYbLgHCDrfRUSsElfJ zuogOwJe8T^So(Pz>ST7~ey0`N;X#M|9CY7nr1Cp&Svy~*bCXUXFkEioK%w3Q?Cv*A zYgD%Z%5R0Q0|eKj9M_+5y?Ls>q}{fW>3MsQrw|^eMCK3EV>-dq5_wmsu=Zx{=Anou zfZ{1QX-EnY_(|Q@wc^6_o&>-V1l#g6|{Y*i$wg6ts zdbInE1RYWzNfp29Q4P3h>bqv7HUXGipw!Zn?*@ME6&0*38mPuP9?EzpQa!|RRFjO8 zbHQ9;_S4{kyVGM@g(X=`v1#D#ITNY%vneo}p`m6&Y9Dk?-?d)KIRF%tl!2UcTTv0& zY^BxNq#R;BS_>T9uS4AgDXe_*7de)0I)$w$74qR&&e5M~5GpKRO~r!sK}+9)b8!7l za7(CmLgy1BI#$J2W)MpnM~OMx$@JiMTlH>l_i$u8yvlfSM7sMY$mEI^3FU4B8HcZ= zv>$*_PkZxOt?U+1dF^fGZDw_pb<9(0ZR(|#Rbw(8mDFLTdBIH8?S(R!2*^%TCLwJ~q$=OdBlMe~SM7fT!@ zV7RWvJJ&=Q=hnBXr(QasbtV}y%W%xR+t>(hH|e0I9GzgtbJct04POuiR!#Li_q0g- znmE4ckm*?{AG@#EaQqSn4YEohTlwux0&+#*Ud~K#J(!&e6;Ib{0Aq!sLlT=?0O6hw zUu5z$@DR-klgNBW!Xb{=$vSoa2=3 zdDZPz3j(?PGMLRK0B38E#BUlVi4^SpPlC(%5tX~yFx(){eZW2ZqI zv=m(9Vk%kynTlt(DHn8uweF_0;q4{RIA?9Zw|q^sc#<(fXi#uTJ$RlsUQNn%!-z%j zBn+Y%QroKiJ0B9WkB~JxR|oA2n+0FgeE@53HG8KecY&RuwguEe8tAR7{n47wNw3?) z*M+6>yn_eaLfTHJLKWMIYzdz_@Sav|x^pg%qr8-k&MqVtUi&^4qPOlPWd3Z+;3X`H zJ{^59oXt#nT_A2hbUa7w2jqF)Z`V*UJ&&M87TOV_C~r`s z`g{=B>EG+!t=tJps)xsx1ylfr*4cY@3YDPcCaue8kR%#CUesQgPHHz|&JuavSlCk& z^-ZB8U<#Ya%KkhABUJn~UuyTjw)<9Y45`VWFnNcse_A;#;+0Jsdm)S3zGL~mv!2wi ziQ6f8o;MQ6VrG2#+@jr5Zcu4(xikUV#8sWTmOW6@pMraNM>&|?%yCh-?j5)&qanxV z>y1#Z-*slU^uZvn06aEWakJTO?)hJ9f_2~4&OKkl zLotGy&;_|`Gq>%{ON5!F3Y}SH2aq2R^><`kzC*$xwi~&gVUgIa?GwM_&N30d11>ZJ z5OLN!U7LR#>iJ|HD-rAib>BmEBR&Ajh!ML&k_3pp0|!)PjNkY zhu592;ur^C;_p0QsO*P%w+KGpZ*{?u=&Yc2PO34F1KD7qR?)4C{cKFrWa`jos&sg}kI)b}n-2~Z=fz2%>xHLe z;kBa$caTu_(YCIB()DJ<{Y3J-^_Q*kH@wcLg54hkp2@FX>?dM@&i6Knw6wvt`^8#P!*Qu_;|Y0#&OJ%+s4??~V}60))$O>J7rE36 z-|PQl`&W9Dl+vz2g9JPtVElF0AF6r~Fn#SdSAM2a=q{vJa4NnHtUt({duA?w$I?}Y zslfIQkaLZ{9Jhw{Z*xRf)>yppTZ{+TGt1Bif*n*?TA$!e=a6PVd&vL$+KcV5h&$+R zIQ3QNTkiGTI@1T-D=PhvD9!k{IiFP&tP}?Z7xfJE#u(W~P+>9rF^-`{-B4zze(ZyB zIp|@IDl5qO29&K2>uK~yfjt+_@?8k~`yX*BD z8+TdMK*!H{F6(03V9Y?>5%J@7kW=f>JJI#BsJC|V)t%9#&+jE}Klr*2%6SJPoa`)% z7e7$H@Vn@-w>sY&R-U22zANx9vzVKwxZrgC{=nS2(`mVKOS|A2815!}ME2b{Qu-*G z@uw^4eGFoMBVYG1V>a_LN1zf0T4(eqBv3B4BS(u)lTO_RP((4|u<^rl@G->Rq^WhT z->dL>7|V@Df)H6|FO?%C?T1(oIp^T5Ag43lBVdQ7(W~Ws4U4);lQ$<#dPPB3RwaA) zx%r)F@1A7=Put-c%ZkX^6`H8Q$#2R#KC&#yAzxpDx6db`j+0$%gYc`E3=c&w0ZTTm zqK(3JT=W1D~BAwObb3(Zj>|j}+pvrld&wRm6T^h6^Ft(qq=KmnSrX+kkExZOC;y3~mg2=%DDD4_joP zqzT`shv%hvH~aE+f{HB(yFw30qhWPNmE{J7N&JAgeh!h8PaqsjdOGQIFdyus?N;P8 zUmQPT@g1C6!fhGwO61Jh{FC{h{;N%Xq)ji3U=uQt?370}INH^d_AI?l!kmoL@9)KO zp{@rWiUQ$?Z|`FLu!|q^dh)3b`Wpl=vfgfk4hGx(Eu3oL<2#qU2Eb}mr}$ALhc{{e zfY@$_$vD74D@y-vHBjEK0{et%kok}4F}oBeO!R0ypkS=@bKKPduo`t4%)A7e9arPA znY$ls&`k%9U*RRO8!_hy8E2tfWY-E>4e_j5;Itk)Im0yso6Q|5lDm3ElK#4!G($x|27`&q;sOES*0RKwS6ooNuB$q}o9 zlHd8nqt>lr*^w1s`xdsk&~bmj#2MRgdS?%?-S(9&LtGKv=`YnINA~)5PDHVApVD?!4h8ys}IeZ)GU60TcO%>h+cppSJY z-F_Y?op&MbkK)$@Tvp%D(#>n;o=3F6!H$n*k3GYF!gt<|pO!JTz=2abl=jqf&w+gT zF+P+b26Wmp?NXDcMemK4-|mA;Ul&OGy97cf&vyZyw#Dc6V($EJM+43f5T5fcsOQid zAYIh&>e}B2=?^Bz4XFo#ADeucIrhk-%^!JgpXesNzfFAo!P_jZ2e;QY34@)brIWx> zM|jHsp#?bB3Vt|NTm}3Ml9*1hcL2WxYJPs>YWO+b_hxE=0xF&&y7KrP()+>0et_@e zoOKVveP+xH!DKa|s$Zf6k8eoZ_K2U_v_GJ~(53Tn92j{2^JR5pb}s;LE4{d`EJHaM zFQ>-nDUh@uVn4vO;T&8~K}mX9N(})U5*UJO#i{>X+$YF6(_UM81^e2ebUR~=xz-4Xt8L$e%{{-y z=9H_4I#nRl<=z&?s!;_SZJ!stx{07uUComn^rY7xVh$b~$T_>>&fn?FOoIw&uTth* zJiW>t-}m}Z1(4|p)Q`;R1k;==Fg~_&FvuvjdfB6HqB+ zZQ#c(r3VM>=hpvZyCkq(-;VxVSFwuFFi66|>;4x9U-yA?RIsAs$M-GXFF{PNmssu6 zrovoZkEIH7rol=|C#Ni@au8U+s(Nix4_w|AvEJH45B1TXmhG)ynzM}50SKdVd0%2P zO8%?Z+DLcp1~53N&5`Cewra z*e^Zg>k8c8(_EwE{RVKmQ5u<>RMPi?$mT<><8$+e%`Z1iya{dxSI3w~4nD{SAps+f z6r6IX-}1(F^?#vmA!3qcV(BfpJgH)LNOXyGWKgBZG8E3F>< zzjK`WgA&*r+JS~v?Qp~7B(OXl?VWP(2XK2>8oDw*6{HUy54`cN7fRhSD}8J(gBTxN z?k_+7_c=)!?YUzICLn6Wc`zt_ab6i4_;L5NVpTnOQTs(+n=K!@P;82An(TnfIiEMG z(n}ygo1eHIDI6k+2gL1XiTXjxU0*Jvy3hse4bMJyXYK}9<0}I%8PBZ`G>QDec{>`G zy*{Vs_b3}mbM0C!X3vQJxML-Dxsg;4aU3OICxN${yo3Gb)LRKicZIOR7KSm{>DOmL zC)WtGMyP9kNM{1$ockOeA3NZqPvPa6FCHU4H9t4ZcK&@%qLW4R5F-VG^Bx>DO>z^=k^X3|D%K0N8tZ_dRSCE%zTfC>u{$tGed!;{&x)?f2(8^p)_#aN z}{C-h!Uwc_SIcEkPD1%x4+Iw z?uH!G{TCX`%7AJ3=+0UX5%ge#_<6{%Rch! z4}Puw72nA9?BFc9nFAKvCvy6=J$%L01TxKSA8&(m>rFfBCMbEjz#7AoJn~A}uq9!6 z9FNEfRMMZ&(nF?)*bmms8)|XgGxJsfZmHsN(5*(eC@8p?cZ-ejqWNp57 z*|BEQc!2lafBC^u>t#5WS16%sZGhXP*Z7)MIbe*c+J1zm5BiF0Ci<-X3d98InU=4^ zpy{Mr=F_!8XlJQyIVYLjh}+NqSTFO35PGC!pWu^EQ`7Ly#)Qh5w=cl+_(3|xfpn1O z)w?Y8T@Q3t;D4lcwgkSZcXDx7KZLAr)_(nyjr6)e9IwgO%Y4t-eK63v2wph!^=LLT zC9+^Y@ zi5VyKAqo_F%sgZq;`-s4FPQ8vJ$5dg`y^pk4`AV@TxV2Q1usS3>}T`N2UqOWddkPH z!l-D&$9x^Vu&dCN#>UtciQB__RHu#9-~J9~Z~1u5U_m8NK{+j`{Hd^S-3NRoUNphl z?=i1?`kG<$H9>nx-D=nnTNHBdDL{0su10&TB=v*8!|}HBX`+)HfX|zm@3zpHSufb;BvrbmNDfW$HWa~lKxJ||(DLDC+hJn(thqtV-Q zc{_N0<$Sz*u_m?@ST_fJICr!j3P}~O(4w7N&t$yKb=G0-xu@*HsKfB=lKma>`e{_z zKIzY&3;OG#U(FgXUcWKtb8I()JbK~7dR?~-YhQrdD}UCtuoi(W;#=Jh@;wA+US7+Q zW}pD`zia-!46(nFbL36=*cDghEykT~&nJd^$0@N`*(tg&)P?XWgZ8wGnF+6)T z_Z&?QLywBKp%=iS+hz5tV$${7#Bqn5gWGBQtEw&g=l;I|m&FC``7X!7A-y9sLj_%M zr$tynOiVdAWhCq;pH>9Ts>|t1o0QRK7c>vP_gi|s4DWowi+_)>7z=o|&n)Wk6F8W7 z;Y0(FY`b;&0mVC*rIn^nQ9qX_w0T4JldMQk8Ce&`lDk@tuQAV1ieu(w(EfR=# z=n;ukH8S4|rXXje$PWK^)Y!-UkA9|H>;}okZd{RNRdBP>g_kt!U!e099*M~toyY;l zMy9Guhe|6~f9P zp>oLlBPh#yv;$^l=1kr8tA=ADdL24e+fX%Ev()?`Qo9jz1c{4Z+^0v9JfEDtyu25> zv91sF-8}$$tKyHjKIj2n+o$qMKV*UP{hUg=1|_ia?di=2f@siW{x>`?K9b(wCbpZ< zLfJTbra$H|{m=jin`Kv{{6>S!e>_)T+p6x5M1BG0Plgk^``dvnNkw=3ar>59CJ(>u8_I{vB z6={c(`E_Z}J~u-r{&7q6FoMQPL^qk-Cta^e>~A7u9K3w0YaX9Ug(pE5@A)Cm8VYP` zV`TQ*kv7<2Tvf05vL2j8k>o9Um2g$a&*$<-wb7ZGf{{lKr1?9zjehkHM3>-1TJoK< zOK*k8pPgGX7#{^wp=7{k6%H6<( zacuq7q;6=mKC6JyM;*1gQ=-aFAk{-0NAYz=R13Vlwe+lY(ZBC6aRy1RZ3`KN%jDQK zS;UKhx$Pd=DTi*j%=db9)w&Y!#V$3Skfx1p@7U^=+ey0KjMxvz*BQ;@=&{%C>JOc} zsjw2}t=U20eSq@GdgGnZ-SFIlN>2OfZDKEvm5*+d=Dtg?cj&h#beLy*kH1CPH ze#qAuEpQONFtmj)gC{Oi6;0Ye4QcP!Dx^)YTx4Z><*j-!_MB$+w)f+Bg8@y_oGflROU zPf?e8*x9UdGr_YSyxc2Ev8SO02yoteli7M2Imo_`*=g8@#IK3a8u{VdTvNDwXl@2QTkl&vSj?{uk>Io3eB$;m5Met#ltUOxr4Om+t`yhuE*l GIsXqD9JFl! literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-05/inputs_true.dat b/tests/regression_tests/surface_source_write/case-05/inputs_true.dat new file mode 100644 index 000000000..49eedb7cf --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-05/inputs_true.dat @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 4 5 6 7 8 9 + 300 + 3 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-05/results_true.dat b/tests/regression_tests/surface_source_write/case-05/results_true.dat new file mode 100644 index 000000000..8979eb554 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-05/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +5.169123E-02 9.144814E-03 diff --git a/tests/regression_tests/surface_source_write/case-05/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-05/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..1a2f54d765811bd10a2758e20a11b7ea1f242ae5 GIT binary patch literal 33344 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 F{{Rq!v~K_a literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-06/inputs_true.dat b/tests/regression_tests/surface_source_write/case-06/inputs_true.dat new file mode 100644 index 000000000..cdb9726d6 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-06/inputs_true.dat @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 300 + 2 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-06/results_true.dat b/tests/regression_tests/surface_source_write/case-06/results_true.dat new file mode 100644 index 000000000..8979eb554 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-06/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +5.169123E-02 9.144814E-03 diff --git a/tests/regression_tests/surface_source_write/case-06/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-06/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..bef135e5ace081b17fa1400cddb095fda62df652 GIT binary patch literal 33344 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 YCj~A4wCW)cI{o0XzX)Z2bf$d!KQh5CSO5S3 literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-07/inputs_true.dat b/tests/regression_tests/surface_source_write/case-07/inputs_true.dat new file mode 100644 index 000000000..ff73358ca --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-07/inputs_true.dat @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 300 + 3 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-07/results_true.dat b/tests/regression_tests/surface_source_write/case-07/results_true.dat new file mode 100644 index 000000000..8979eb554 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-07/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +5.169123E-02 9.144814E-03 diff --git a/tests/regression_tests/surface_source_write/case-07/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-07/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..f84a5c4c5b6d8cb4ad3f720e40580f6309998d57 GIT binary patch literal 33344 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 300 + 2 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-08/results_true.dat b/tests/regression_tests/surface_source_write/case-08/results_true.dat new file mode 100644 index 000000000..8979eb554 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-08/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +5.169123E-02 9.144814E-03 diff --git a/tests/regression_tests/surface_source_write/case-08/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-08/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..1fd302a7cd429beaee0a203ec8e5f1da09cb09d9 GIT binary patch literal 33344 zcmeIa2UHZx7WX^kpdc!eL~>S1l0~W;1Vj`R1r-ocK*bzD34(|yCJ+?^Mg$cV5JdzL zq#B8mbIv(O2@)S3rg5h4!SBAc&be#7^}caQ&-8TnZ~nV>?FzlCuWnec$HvOXO8WI; zW+u^-IR1Kz|CuJg5YO2?_-FikYw{Z!^7aaO`}R+!P9JwXWn;Hz z-`-<~|JsH7C4wLD|8l#S?5{+>UPzKBU!R4e;RVlprM&PauxXmd`m}?r~9>wYsT>p&TLQ3{QqxWTr=1IWh1Bm=HQuQ z77KwH6~A5xNofH|X?o^-=f6JBgaz_;zRlmA>q0)5I-30F75?sANAh8K8UN>5vwQx( ztZ^pT{q>slBJzj7+5DY-9PE$&h{THG6y?__f8$V)Fd&xH|hiiPSu*+&&pO0(xo95uNf* zGKYkzDIVo1%9AkQsHBp&>;VH7uxj_6Y7sW3V6sF?*YKMNkesOSZvwKLSe~Uw`F0_@-p(cB3=k%Q6m&+G= zON&kCiD&Lmses!YYpx7!tAo=KKt^~?8{Fk9R`^6u7Jb2Ud4+2C{CaR3;(DyNL_b-P zG&;vg@uEo!(x<^}#N~B{Q`*7R(#MxJ->rZdrktJE7gfUgOJY4wzpA11$M-!y8aF?O z0SAz`|CZhGvchpon4wQbw{w>ae--y57 z{ac)c1Ww0z*c3e71d7}YzIPRk!P&2wF}|ZVt*WMZ(5Q9j#=edoaBcYkE5?#w*dm~p zBgwQ3ura}D|A16A=smr&Ms-;kRO4aPzjD4B#FDNY z+)@0Ait|^8WyW5A$BDgrcNDum3~9cs7UAUn-Oh0=7Kya*XoNsEUSyG644haYbmM|j zJCHI?8A~~H2ke?;clCEEq~iQZ&z-D-zHX~gxa?}LMU-XxoFA~fcI*~yss?g#hZy7D zrvX28CQq5rPMB&j+3srk8px$?{wbB)M#cG)AG9t>Y`8q~1NQ?g*;DgTKrjiTPrFa^ zMXCj)At%mm60e7~9L<}yb=JT&AM8bMx2#3Y_85L;au%ZE;IZ?U-Pj5KM)qSwMDZ=7 z>X{Dsl+oVw6ayVH%;$PSXvd5{2kno2cP9aQ9yip}ttbFbZwfNlTvA1g3%r(Z2$!JZ z;BCP#&LRRQQz5~+Xd^!+vFS%5!q_!v9<{&SJt_nSl0$E zt_(9Y=O%*;{u5G%H?gAPAzD}8Sgohx;IZ?U9wLWqH|!zZ(+QVb_25lv5OYHqJ+j>< zgw0`DCtRf@t8!c;7lwyxV9}du;3#dxWx=Q+#C|oM`{CWjR2;mm{sRYD_akvhb>9GF zJ#Y`JPh&uMUVEyqacu=v)1syYZWT~>;N6Cm>*|3RhmZIWNmd|2B z`RGNezM0U?2aHO|hWE8P$aW(kN79W23?5WMdsMJ@(TYZJ+aRy0E4Ud-^p8cK%@jjF zRd`rOxlqS9ypQus&k`~R-*@4Wv)hdW%@AAnWi)x?_+0rYjk3#4{;Y+m%5Z3)xDvb< zb{=XPZ3UWbTIrin5!72^OIx?KGL;_6@*#4_<@1mG^{@Gh|9mn3;~dWagv{*u=Q+#f z<2c;rSX|f%Rnv4(j~*H%Pc8O!lVLAV%<(?dUj7}*?GbXh6Yv)7&Aj~HZA=-}JVE~$QZH5F;^+KL*G%N6v3E1P6l4%zeX#||-g?_- zupt{rt?9kinzsfmRCVyO%T<`y--w)9>_1;VyaYWsr!QUmtEdqzHojZW+NHM_SOryR zoGYmZ-csi@mTxbFior1@8n6wLTH6zacTFJi@L}bX&+1fqDB}U&Je+^JU0D7<;_%PI zk+13u4;3GVN<-IzcyBY5eA@fv%GOkvQIHyW@|p>1^K2+7 zfBnF`c3UwIMKxn$^jo4}W5o4) zSLjU8g~HyE-~Yf7n1}OE>k<4PafJRy9N~F5Lv;h^IZJ;+S<}pqq01Psonku-qHN26 za)A5o)WdC%HHi=QM%KYiyR>#bIJXJSwA$@c{)h4rnTKMgW zVoY20bUj#MqZR%5bqBP&b)&-v#(>v@JeLZ+O;BMgQRZ8F~Zq7|s$ z(AlE#Fcg}*e7Bx*Z-zsAizme{qUc)?oI{MGl>R0|;E1qJv&*qeN@uEuen*RMo17HE6(=u*dPysrG}kFF$e-qR>+ zl;=c)_aw3Ah^~H|huk=${6$f{6W&R*h`Y5h6h_2vs`rem1NT0B8Q$2$fqEugwLtJGk5XI1*c@lwW4Yr~j8$;dwEycp<`y76a!7LB`3CS%`VkXf z5HA}2>XT~mA2_QCoCf=4tMW2M*U=1GyBz&jJ_QeWX?nK83%Ptt&M0WF8< zx?Zs8&5=W$A0^QThEmxvf8fXxIAenbpSgnD=X8AbqkF;5J_28CS$-~}VTSMb@?wo! zGobs}EU~Dd9KNZJ@~ETbMHO3)rd1F)l;b%$G6x^)&wgY^j{I1kZFG17WJ)a#(b66S zx0K$l{^ZjDCYD&%n2wYK_w;j*1s}HnlVfZ4pLijOR^+oDzDVFu_IKn7de*Fd8Fqig zAiSNm(duAZIV69LtbZ?H_&8!_T)Ie@rc1LGB<>4*cKJmiED&_zfN@^P!uPBEj5bpH z8$QNr3|_xpt7L08Za>U?ryXG7ZwD*Ei?C)<3~s(@&?9=J5pLXO z>t<518nL7IdYsou&7rJ6L=J8@{yWBEA_zTl5M$k2u0o4ttXO+^Cu0-fS)CxzmeHrgL**S z`B)>VO$C6vbAR;3!k17-XyO49B!)gUi;@iZ17{6^GbSUoD6w}6oF2tEJ~PbCiy*Hh z9+x#c6#y^6!Y_+z(m-poRPHLa9&qe?H254LiE?bn98Mr`DC?;bfy1T~2{FxvxpH}( zvS9N1@&|x#&ET~k!5`s)Q^IhcMlW3J@74NJIs+!>IF-uvilR3h`dDT3sLO{k?kE#D zxZRZ9_Y0Xk?EnILZUNFmmEa1CqkD&M53qAfkt|?{1(L>T;0Q9lWU$v7N5uEFA`BSx6dp@X>tYK2ktOu)1U)V}7Xa{D^ zKgax!N}{$h^w)+697?yf$i7Dc{lfW zKoy=R*(=q0-~gN7346;BV3(e_eYC6yE|KSj{!xAeWB)XVY|uH(2AUAhb|xb7Iea^gP*QyUKvCZ6JJyfE=H-!hcb?mEB@R(>FB#nRv zcw9hkh`Wtzk0gK^r7=m>Yu`bAn6_WtieB(jqRm3HO9CYw7~2&kLOuURS%1hscqZ$G z{9-p679HpWdUZ=#v|i9)vwNA5s%0hjzw{J<*Ooqqj?k6C>8-c!ALj1@VUCl^>7N&% z8g1>%Doqe7J(L`jeEB)fU!VW^^3f)9@XZ?|OXS1PabS6UVSM0{UMNeF^k=KA1I!hl zwWla=IZ1!trME$&Yk=JAeJjTMJ&=kyo?{-FFTYBUj2B+TBKJ1=#oUvnReDguPt0Y!G=vxmCnj>g1sKx zyqmE}r*bJ8cSBWH`KTflhcX_lC+nf!Fk`vgN+nvJ^q6}g`{1R-G*||%xg0&y4vSSz z(KN>ugZkI|^4%BK!5=cyhOe2z5ogx!!p)0!{@0v$K5Hzej?T4n$bi$iNh6P;rJAOg`NnweJJy5V}vR?swePa2*^@#DEn`^WFbU3j|-IvWzlBiIGQd^@fW#GgV0MbQN2U^6NXrQP(X z4MzU-&-=ALfwNLmR9(?B3C`|jMh^OZuh-qt2Nzwg;Xg?i4@D81$3erLApBu$*Sf7W zu=@ssRq~iT+MAcBI9x^@4=C-nfy^P;4OzcA&TnWu4@L%Mit$NIz|lyNwC}mSph)N0 zb^iP>05e}4!mR%oY!+PkaR}^0HF}cXhsrOcvKxNQU-id;pa<9SPjfc@k2r?^BhKIF zXE7sNjU&tRzkCC47<;7~WG7*Mj&AjO`X12LHR9qZQv!AwScvJVUxS8Lw%0dl?L@yR z97tXz$Tn~JY$of$W6{4=K1Tl|yBW{J@mor70d9PO7U@^~Hlsh_W;VX;=z%WKUJlvWC+bQ*atuA@d*HPvuEfb|5~h}B6d5NpgMjI>_YWB>fQZ@k@`P)R(DOj2Q>vmC>TIi~&&9$q zuU~JUhx1R{&6L17$+x zI^d(mwMzQVc2tAQq1*HvCzT$`@thff<82(TwM(K0Jbn32<8==MGW#_%)|Zpvt|Olb zwmRpoNbhU~9t`~fk42l{P|C@j9(w z?_6u>Sf2eJ&wsq}uIRYmGz=`g{YF`&0+VfYvlbuzH{HP3%?)?krsr69ihY&gcmLFIU^!!^KO9JN#GxwU_OVM-voh`QtYA@ZR z#nja{YHPh|hfOt%i{HGj0coqnZ(hwQ0nL!%GVALN=woC;+V<6odCO-vf%C-lN1gZP zx$za&#L6W>(5>?2e;+ndkS8rTCL#TLZw`8lpdM=ni*TWdg+V7 zs3OR-%Y-E~r~;&(9lNAv}LIBGkhSx6WN1Y~i2fykCO8PHtmXBg^?Yo!l z?-?afxkt-IV((MuyHM)E$HX{}Rmd?es-z#Ur&!9`dSxx|df=v>0vL3yVT$tTOfi;>3AURqtyBF zcwhRL9()W*jblbS!t$4kd)LCO$S!v7H$(7)D*ss%&IX_m;2M(H+yH>~u1!8C8sMu% z^h5l~W5`g`A!D7h)bmJ`<1G9=&M6N&XD;)k4HT0+z|kHWY<530woRl@EB<^OFsM=D z`*NrXo)TUgiJt9(_m7QAWbkZ94Sp(kLo@2}Hf8?+FDq(Y%m`m|8E49+8kptRuAq=Y zhpd{obhPtpH#qZtJ<_3<3eKOVtj0mZb|Oof6xH;9&~!W%~}^VR9Th# zr~81oHr#G!L1}?^zyx0Yn6Z|5piC1T)_LK{g&jt%z^3|v{5q2wDC+JlYZ*}st}I#i zBy~^`&18^&)oYuE-??8`Ko6=xPFn&8*YHaZo_|dp7nqTwj^WnR zk4J%G>l$-^1rqk{^T|Gmm>zI9e(0&yOunCKCF{Uh|Bo;!%B3|@eFAx%yyWE#0*6u$ zG5^}VYn$w%!y|b4ASOXfa_*rtNK|uu-Q)3ccrEPk`L%)dfTuj|UAt*3IMETu^j)9? zBnUqlX4e>^iU+ul{nA6^&fIAvkvO#0gunyn6`&YqwT{F#Ec1c!(-7O*kj|Ne}>1D+gZ_)yLe0y$UhekO3T0eE@so>btLMguoIdZtIXUxL^D zzvHN|?Fop}oB%F2%j%?T@P02dWo!RN>B6O6qO%!9ZGy z@`mVc$hXvODHNhbjqmU(>Jscm>DNRKZny9L!@O6~yfyyTq zXH+W&!jt*|R-6*WQ0RoISodNCmB9E@i5yD15%Z#*n7LJFa^4}ChjiZ>V^epcLAJ?V zdbH$7EwpsaJhbI#8&DC^vOZK(0UpP+w_K4DLqjXxwDb}5Q2I47FIwKvX>~E<@AiP^ zG`ob>@j*a0sW04grxE&lwcQHRZHHek9)CGl_6mGFcX_!o!y44@D5&Ho_yJ{nn8k>g*!9>gG{&GnI?3YewJz|v`D^Nq7i&<(#_e77gz}+`JH-56)e99R#xY~iD_UcG zQB@;3?l2>jBB;eXra~BaS7O8MbtSMh7~M?k*af84l^nWoW)Klt`u^RPKX8b7x7%;p zv>H2;Fmm}|$2VV?5_BXXyXc=?DyeLMCfL%K!d-2UCiGQy+PO^dcGdLW*EyTe8)?45 z-w5SH>2LGo!(u|8t~^)dsRwnWH^yE8v`F<*$*9w<-Ei$*akp!0ilL)Tx^-$O20x@* zw8U7=tSi{Iv^k%^p{%Doc+pdBnGv_(hYxH*eu5ipa)P;|^vDC}_~iP8dI0wG3=IZ$ zfW@69A2!nL0bb$jBX1Wop&WU%0!$%VRP7I?AIy_?i+S`v^bxFX146?*-0QInsC53s znY`n@uz%aiHA}ct;N!@r2bOt914(aE{Nj8BJ?`z%q@76JucFjL%)9NjW1c>_briUj#hFYv2f_>a8Xg~?7old(BJP$M_sOnMB!6-mK2UCwZU_p2 z8y8q*^DG&LpS8dH2j1=ii_{z#bdOhoy$n(sAs-_FlB#^$ARq;ipCqjgO);U;Luof6 z=h%--w~_OsQ0~@Bj`F)dKw5`GuA=iK_^hL4lKrF??BKp@7pMxsx85m-$7?^s%T?be zI+IT#+a`9WR5v>R*BrV9-!)S949~Sc?^o0>653h`_I%y>wA(lj+-#ZDu`8$t!Qv9# z&kft*{*3wra4!=`2b!Ljx|~kMp)4Pwo{ln7%*WLo(4l&w;%SPw?HSYs}V-OxqGM2zW{EqySn)~(hAM^x++ay7XWt! zH2QP&7b?3^as;U24T*GRpLpHQ3rxuDZe~O!%Fo%ta}+G*TclFm*$%FyOY$w|sRqZJ zM#~hUN`X^oCj7otAH8?kP-9Y)dOSy2K7s_!rlVXkD}8A(G6!>L;*4Nf-VN^7i!X;Y z6|gJt+AF>2Hn(9eXw$F;6^BxfFoA>X z5NNy1%S;-Co9#`$SG#qCcO-!;?`>M3loDTo|GOrb>0|GE->ndwB?2?op6INjPM-DgY<@Hvtq)lK>?Tj z4*4>D^oSuN3#vPRzKbZCgU?scbN_t7tns_OKA4! z!{M*`_sm;hm65l$xu^=-vcA}&ubP@eX*V%~9z7Z#N4n;@_0Gt!~DxGy8F7o`u6+V_3Qeln?IPrn@a4Xf9&bGBRq1JI8N0K1^wV67kj> z_n4=`#3Da-jT;Oo|HF6p*J)7uHKo5v5jd-~J{|satQ+ztE^rh|>zk`bFWLP9-J@>6 zb6cuo>08U;1z)B%MeS~&X;|TWkIfj(U+(38o{4(>9Hrf)2^{wyRk<-Y%VFQbTa$ip#Tn)jX;Z6mux6Q!wU9v)+dMmWsq&m4!3q`ld9=oL=I)5A`=3j3)pj;ckL&3z&9_^0k4=1(|P3(DmpOhisWOs?;1x zJu3-%rtDTOw#*uwv)2gMp=L=dS_I>oJU{j=7B;+iNE;>H3QEtk%B7SxgGV17f*>V_?tC7`s!R?Eq|k{6%kdFSy&4 zxYhh}D*P$if!5Q1gHv~J-8{X(7isU=)~&Q}Bb8rMwx@XhH6FvSkQxh=OZ%a)KsnY9 z=En61t4hk3GdrGvqmN&3h`6`FtJ$q39$#BPK+v1R`4tXGf?0P#+E(g*2xa*YIUjl$ z)I=AOu&rv5U##ki@OXe3^*XK*y^#$?+vI~>&wq!D`+sJ&JNLlCAu(yQ1=1)#lgQC) z4Ak?=l=T$P^QJZ*Gq!{sT`$T~4t6HcR`5`5Desha+9! z*~zQ-mU=6pw+^{<7MUnf*^RQE67#%gdCbVh;|Uv;H5m}nEt8!*SSXBQTUcVhwtJ?1 zFj`o}R0i^Q##eMNNCsh(k$ls(3TSDi=3wksbt(?!c!8LIT{V!s(`&2;E^=>a_Fg_W z|BoePH#nbF%?5%ZbQyMjg&=!dV6VM@H;iBMT$Dx66dh3#5z%y}j@OiSBj#UsI8~=; zEg1t90TQMznsfa{%zdw{RbG5MIHlwUPR2w--Rqq3#@P*URoxn^m5s|#vy!^~_MO^P zdMG)>{A=89Iv!_V-He?82@%^?Ki`!ERxMBRv_9Mj8Z(tO8$0Si4t8FzYO(={3Y@Uy z%IHV<>q(Uf&eZXM(r(23YcdB5RM2b4bIStj&3jZ?89U&{3)AuOwQVq*n?Ji{TLU09bxL9^kb13zw%wCxAml;{m@>9zq>@!?9 z88_PStQ~4^E)|=e@i)y2i%+aQ6AgN-^&Cit%0bnJBNKwMi%>(oL!y2@)Onqh96Zk( z--qjYVPGp2SW*d5^PHI#ICWs}XjL|ATnC_w-t*+8;zy{>ef#F2qxC>&k!>N(J%Bnh zGTPqorM`cPU-Q?v5zq6+>lDt}?K+mdI?(M{Crohjoek;7%hwlkvR_q;WW%USPH*J+?Bas*0^T+4f z(*)XU_9J`g5x&q(f)@K)q1GZ#@t-?tfL9#z$G~H?fH^&;#+g+ceH&PuEf1;nP;xZM z0HPmc^S>0rB7d%dg1>#mz>F$lh7`-%@=JONxH;>Kr zcQ6~VPh$6C`vLvCl^Zmb3*a@)P_QPp6K=W26d9uK}Qhc2s2ss>chT zuB!!~uXF6~)IN#Ge3R2YkZVQdZ@^ipzyV<(mdDsSdN*${W3xMfD8)q7wMsW5{{iJSHE1=CN zcoQHhgYsN@%J=pOb$&dh-PRNIgzXk6fCp)j+1<>TVGzAs&Urelt;wKiF!T|idBWSp znbQQfXq<`Jxv34B>{8Ym-mw`HMnZwyKJZ?2AH3w)i+Y@0{&j*<(!LkQQZ{+w9&5AdMMikJpw25w6)sw zmjQCMV#f3fiqqI4lR(%>a|M~{1enfJU%fK17rG^Hkx_690QtqGAoJu}R6;pjV`(}y zhf<&U z_=Oc6spKj(iKLF#l$;F&J-FSLeAwRgBfJe>V09Q$?D`2(`647<@wbAMz2_6!EFm;9 zkUg%S-V7=(hE?3;&_OvzycLEXQup5|?PfsW_#3lJlCG41oqLx(MKTwC>eNAGX_nI-wz;The{w@-5 z&F=#14#johE%9;Q9RYZ<} zL{*X8ZW4yuufgx41nbQDW1Yk^miouyA%_yr)Q43K;AW#CTEf!-Ha^q3T~_}MQRCFp z*>+o>D(+CmYeRzFHU?Vs+tZ(rxn=fVKNPj9*j_MoPE6?7CJ1 z9`pI9a9E82-j+a@o1HQLHODf|D)Z+z8J;c2AE!=So_p6)c;#$+wESCrquh-1)0?WND7+<#)!yTE+12XdT(4ukHP_Y5gdG+9V>$v$eYkwd%LE|uxVNiRm z!SDP|%qdja>SQf+DrgdYUi%3wzut5sDZUeIe&v`?FQ$uLzt9(<_l&xKKpEeRZ~)bo z842q53~oJ|2-i7|rOWx$f{%<+lN~d8DP<*0OlN~5;l-?xV51c;AjelnmTThj=#$~Q zKhim<+Xc${L(E%`kGUviA=o%)x9wN&ukQ6J0+}!GkrsR_g3Crlb%tivoxTpFUHrW) z9!M%&`DA1(jUH;Na}a5mf1Zz+x89SYG_@lweU3BsZApQeJOgHW{n`{h8!UpZ#O zt9)=R0HRBJsO z0B4PF_iWYd0L4{5MivB=1D2NQ+h^4(K=V~b_u)W!G-9-{tst4&Zj_vP^477CC+0e< zUk!l?Y%DGP>mUqWcTewyK{sr@W9P||7!L~KH~QX7DuacB%1I;7l~KnJi?cS@QTsJz z|BaZpjyzs$wd35$IlCoXq0{AaZv>37OFA~$c0;{;H2e$O%fPfOkHe3IeK6-b$tUZ2Cmf3C`o6^KJNU7F@9L)MYIyvn#wV^HLa38*5(B*ib$^sn4>3R9 zChUA*+ny2NXV<`H!Ba&pClYqmsJ0FIuGnA%861u z*#nO#!;Aa#{g7AO!>yft)a&Oc`-w!3a!{w~F%Y#(S zI!)+~8tA#=Neee)D_D7Cy76pG9q>OAm9~>6hsqBq`v*i$mxIBAsem$obGB)cSm?b; zSn|`$gOe9};l5b&l)X`jaMdAIla6h1aQ_aDl?VJEgO@j>nxALWlh2#Yd-@Yca#6L- zTmOE%{$NjSU)>dLr^AwZMX$OAHvz^y_p+8dw829Dz+12BFF@b2YtQUceZcL)l25UU ztp7FV8>w?;UgYooJH6FL*6pk4Fg8U8?SU(~kX}x)BOs{U&oWXO@ zWy$lxa&*Ce&B>WQ9gx2y9o%^)+#cjhH&;%V>U39av8jeGUvu17M7F~B{k8j~57t6n z{XHKfWt7ny2Jsg*M^HcSmeLRKbrQG_9_}cOmbS$6#F()#!>sy6$7rxDHNgcoGvn>k zu9xog&#cp&R4KDP8&nNndn)f!{xFJ^JcwZZ=|O#efwFx5W1WPDt!wtTpJ1tzomATR z09@q+<2IiggQ2(0ZEQ+9pt#A+w#^1rAnC^Q?gLguaMj+SZJytI!R@tm17G%pQu!O@ zc#g=~eLc|i*o`5uQP1q-_{Gi%cJ(Rw5dSK z+KX37ARcTQuPn12T8f%Yt*zq-p>F3W;|_711kPc&{sdKJtAqZ=tY=qTV!|R^9!@7t z^+4o`ri{u0KPY_ldROnaTo}JF<=OMy0A0Df`{Id(^Uohx&R%%#uYV}d(seX6$b-8+ zn?D;g&()(7aMP?$^@0=C>PhorKWf z@QU)deo)L<+2g{BKc|ry3si50>ib)Ol#Q-a+12}CL+N;lU1#7rYs+;IVF^Dm@)gvb7Oiztzc6tWALT37+e){-&x%w4>l`5N)o?P2Tv&q%K8d* zfbumlTV7czq9L{WHB|=0sr-PleD+XYe&+q|xF_R2yYs+i#x8YU>$!0Q7TwOPFW#C0 z&xcPP&pVt4>b{@I3qR2VL%GDvL$dyVk*8aRy}eYi8_hf-5GuzYfr_R`|PYX$M%fjuK{F46P1o3!Ip_PixY}1P-1T zq_P_&XCHw>zAmzbol#dhZ5p`BV27vp24R!63r&1yH&Ap!AEZ7g1n)#$vyvN9LA&sV zgt3kCXx4`xpUcgu%ZIYxYcmhWjr)3Fgc=hs)`*x!A2xsDPJRD}l4DEYJWVuxv)qjV5f~q`%P;<&PdsejB9$Iq z4mPaes(m$j53un@)*s#64II~h=Sq=QM>pS7=vE;-*N}3&fX6x<7g~6A&uA4LGW(es zVZZpn$4jOJ(rbH+OzWnD;D=jcUUXxM|$;=RxXmJ!QWN zZx3)z@6Qt1Wi!w3A#<>UBk3bgv7hk64VNzq*qUMg5kp!h`kCi5zW5ydise1%aAMn{ zt;&er9xl7t3+HbasQYasQinj6h(PPyb8ay&;jrO=VN-n6HLPCrBxR&u28_Azp4gdFQ9Ky<`13_oczO>2VHMZ-&M!cDSkEQCH&UajKa_re zYr{GCb@PjpOB1R|*r3QDTrN$I*!Uj6#zvaK$Z{R;XJO5dzs&ja@vc1ZT+MKA2#pH5 z_tVh?M+R!U;TnF;C*nRq$(<9p31{K>_-&^YsfvB3c)!5AQUQQhGxU56>7;fTU zAHu0y2^$=r6~4TRpc9=<?sFI z-H(mKGdsW}FFPj0RR#uFrIs#u(1olReV*mI?w_}Oh@8(y{TI9& zp~diWVvE1sdC<24XzpEC@?*FGuJQ3<%MWP*Ixuk`=3rt5Fm$#f0LEnLf^FahXc-jBbLtIzj^^xHstzZVg?M7>6ZC=6L1Hzm3 zw2aQo8#TRHJ@z)J4O|%E7}|X|4+IAcxzO;cp#BRRR@D7L4>1p)K_gsg-6KW}=e*iu zz(KRA8>&9_FSDl4fGdZQ8_P7?fk6B&`t7$Hpk9``M#;${gd`ulK&^3pyRpw+aPF_b z@$(;4ol55PV4swkBIWymxK!A*dO|61tL0aczS<6azAlyav#SBNTwmWO+DoBn>neae z!ETg(K+MA@>%i!0l8jyM7r;BOXs@{)od6mReLmp-;}kuyY0-7l6@4N%+dPn@`vw(JqhF^HP+?hZ_zn}5Ulb8j70pLq_? z^O|p}23&d2oo01p<9It<$os58i&+i{lzrr}uV9d>o>KbTJbI8aj~5H*PIm$))8h}l zIJ&@v=!(Z@cFe2`GY|j9dou!-zBy^+{~#SI@@-iv<;05S`q@dHYoOLc8Fz^53SwPt zA_iG$5OO&ocXwL}L@s2&J_=3Mhp9Ayq0My1Z9de1(VJ^sBitI{R=*JK?RpoHT85ua z??$LOlzu?uMD7~MXz!%KaL&3Vm15QLjWAR3v$d8~57cj{1)_Gv;DYonvs*=8z$Ed- zy;s7V=#rFIHERieK*=GlUkDoNq7hX59d~R)ogbMB(jj%xpALEL&4B6s)qK@j^}xY8 zII2jb1K0?BsrJ6J3Ef$+x}@w6^^~}Nfvf{dI-M*OKF|bpJRp1cLK@_NsxSN)*$5{! zE%sW_H^bWvQ8^}cm7q_T$8GCHEp+=Smr_B39!h^Bu3xwv)b8W1~YsZJ{;mrEKj@mI=fljc@^ss=cMmlVcSr{cC!H&w`BQ1h)`avdP^O6rg6agK1UAp73)3BxuOG}vA%dQ z!c+(Sdc%TUoWP;1KU`!EzImB67?|Wii**gZ7fDU{-7i(p;2IfDt%Dz;znHuW$_CbE zJ{?Tz9l+z2arF8sNz|CXrdFT8p|l$}4j^wIrazX8aVttl>2U4QUYztRl&|=&(^~rKEw4=na zjF(_HO1~zq$GCMF33SP7fZLg?ID+p@0mi0M+q$wk5V_>ow^)@YJ4y{UI z7JpO+Wetw;^UDdNhjY%{{6erBJ{I|e=ipiN026C}GDy1Cv*6W-Zs?{a{6PD7F??I+>h7kq2a#zqc=MBsx?P}* z*F-&8nOk>1wl9RI_k7=<&OwXd+_xJwu6;TC0jM1^PF6Tn0KUp?!k*vi0ZVsCI=f`A zL{FFrO%dB|O1~zqUx+_>cb#KxKNLM7rtm&%uKr-c`2yj2pL5{FlB}Vn=0!j()0s1Q zS2s)@Q*lZOMo??VDT`$UKcMt$;<^Iz@5k7h!3uaaXy#24Ri3pT^tcGxOF{ zKU7LT7s3NBqvH#e{J~1&15!I;dJ#1mBMt!qhtl5!W-m%UK_f5 zbXZ20rO(*&Mp%>e{!Mpp6KuLD>LkCZ3f4y!2H$=HkWF?MA}%kYE}uVfV%D3)Z8OUO zUl%+WzB!W*fa}Zre9NIavIN*S1$;WWzYdBi6tU|w&a5xlvEF0adFJ_$+~TP7kLh{) z2Sh!p7DC+WOLFGo!TM)oKYB)Ku}I|!rf>8G@B)j$q}*r=M4qxdeK7NUJ|5G{<*kFy zflZhD(j`UI>vk#Q0g;3M{tYiH*X){kzWO<7Q755uQE<>`AH!gNC){iklK=jF88~7l z?ys6u2(7Bhm`fTp(Wj^Nc7ODzzP~_eH$g(l>|4A;#Jg>3PLIFH?%30Z>VbUg^>cS= zKEO2nBx9PonY;kmmFbVt!a+q)?J~NjYfy!E>3XqBid1%^)FVXTEatdBTJvTYzV)}i@_i##Cb8;;_y6lJ2$bD8+_dtu*Wl`#N zQ7=R(g5 zSYG+HZ{w{&#HsxH=__kCQ0e&-$Me9#=d$G~5ZZ~HU}?hVl}Xso$Cys_{%*j|xH@jt zR36+?XmE1jhXSB{sQugOj2$B z5A@jQT@QXHICO#d9iDvQrIk?D?DPu;?r+fTynx*Jl@7$xrGc&T%w8%EWqg~5gM~$Z zW4S9l1P(dn*YfNhhd*)x7SUPO!>T<#8N1mFK$x9}w1`PNv~Qg3=`hto4TQ3f@6uAB z;!ygV2%&t)da$^VmN=!?bl8R^>6YeVLva5((xO4JGRTn|m}WoR4pUPzCvN&z!4V0g zc0;@MsJ4eyVqPG%zfp2T|DJ=yc|SUOZeb7f(KGAV`?VMk>x0~yeG;kN?MKU3dtq_mqDnS-;Z`rhwl9_$Ap)7;v$84L(nA0oHD z^3G8BH(>qfM@&~=8*pSDd9e0;BM|e^Z}_=S2MrN(%a7YfJ)cO~E{GHKe5{Psd3%+F zk*|+so@ibpm&1S^q^DUsIUEapwtu2alxTzUd9_JTzcxWv;Za+3FM>wOMKqe? z19WOCf9QcTb)ExmqhEe4IS(h?R_Nr}B(gS(eDA0#x!zFwFiDIu+ zikH2O&j%Sdt2}y2q)>4#vqua2<>vJ_DFR1U+}7}|B;s;%nUnyk94IWEc$|9vjk13&P2k*BOXii`GV{FalRRfT zKj7<{NSIiO#i`3lJmF%_YsNw8V3nHvjj1r>Csxg%E^ps$UtK1_U0z0Qa-9uU{D zc*MV!Q_uAQkp}83%wFOgX6*hhJ@LD%s^B`=(ARYpTY)+2h|Gn!E@&o`me1;=gWCBO zYjKmP?MB%@z&UheUE6DzIcp<+-;d!9R9xN~JPa48aO*9WE&|q$+mt7qyWj%fOA(bT ziov(DiOHlS19U_CTF>kbYCV+xMqDp5i(|&#c!QPoIo75JzU~FIk7Raij_86X z{a&(7)F#6LZP%Ox>k6>Pr?Bv0qYlb@WUHlS2z4F`rN0r^%aA#UP>84B8;NPaNw>}a z@>nB$^m>IU)9xw|e0TKH>hLbGIBSB{_56J(?6&5^XD1=lYVX3Z&+DnzV^GEe;(8gJ zqY_?`Tyeb)j67pl_^tH^TvwhslKQ$8$hRH47dta<{d&>voU}|bIB53>tL(xMiDBlQ zGzaIOx5U@6kc)>Tur1cEW^``cgLw1gU0nLJ& zIFtcR**a-1WoC5!viHEVy$oJYZ(c~QUA?;xa;Vdpe!P#5>q(faQ^acD ud%f^f literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-09/inputs_true.dat b/tests/regression_tests/surface_source_write/case-09/inputs_true.dat new file mode 100644 index 000000000..4e893fffa --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-09/inputs_true.dat @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 300 + 2 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-09/results_true.dat b/tests/regression_tests/surface_source_write/case-09/results_true.dat new file mode 100644 index 000000000..8979eb554 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-09/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +5.169123E-02 9.144814E-03 diff --git a/tests/regression_tests/surface_source_write/case-09/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-09/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..af832f060cbfbfd6f25fd6cd2049a5bfef55e307 GIT binary patch literal 33344 zcmeIbc{o+=8~AH1N*O94Wu7HuCeL0XLfL+&UY+mxqps^*=j^UpYp?0E@8Oy6dv#q)eb<^*9IGgPeCX&XXegNe z*+u^$EPZg7e;z@3luIRplJe)3;!8K6TWShP>K}(#iH?7ixOFD}{a-$;#OMFek?a3*G4UE^Za|dc z#|K9tvzkJNK)m1WpYOzKVQIVE=D+TBU%HsQHu*oF@L%_yTe=Lj@&9?(&m;eDmXTQ5 z{qyKDoO8B2>|jHoOM1b7?33Q(WaWI;!P@axnKJl~>q!rh z-b+jL+8^bHii+x=5=FOE&ZsFZm)yA-b?<*3!LsD#KQ1=8cht^EPhXvq_ypAVotDZg zDewQ^|G(Ej%VTl%xZZ4F8E|ViXA=SXyul4gZf%CnHI>cE47K2Bi|56CLp9J>@tHBd zbT16ibdVcyLXiBccU*4zuU7p@7zRJK{}__EUA*+~{?GFi6d%tIzO`1Q!l`HVKYSxO z4Syb|!?zPYthNt-44feQZO-^^SThv(&Be4GoEDhlxN0hbG-od?T+fgqv?UG&{=T?HNLIoij8`N~^Xy3m3107CIC7N2<~sJt*S-SC)cF{# zRUF)feekb-c@gHBG<$?kYAUELqvEk3XVBR{})ia_Tysy@j5VoU6(hS$K;mVZB>QU6k ze$=B_&S_lYO#F>rv^~Hj92XXpX=014SbEOLKsesvr$)}FF zq~VTpoB9?vn38eOGV@;?PkIyOu>5Hl^;BLxU3nZDRFv&s$eD$ou6Q>`?Rx{u-nEQo zEet@D&Mm>lixr?uvBhS>pAYAIAWopkHkyn>+RkC+v3}03Z+>GO?$DC(w1^t~)&3lR z9(pA6Wgi?{-H0e8mxG&?3F4a_YhWC8yCE*A3P^~zUdMkeAmgBI!GFoKCe_1i-+_7f z;7PK@V*CJ{lw4J8c8>s&)I`^zO#?7XqeX#1yAWO%$$J&MtrDJ_v-C@H3$MnvGiNlWq7Rw}B5QQ|vTk&sdc#d}TyWwx9R&VQ?NZ)^e1?}#>Fm;| zEd!5laM4;{l}8Gh#J>k1++^~gZQBpMG5#eEb{r+~A~N$XfBG-K*11%ebz+JZhvVI= zD>TT_O;eRj9#X%?a;hy2N>8q(!hfkX zTGM*G8~hZP4rgrrV$InNeNbFRLhh7OF^r2-!YAoA!fC2_U#<@mIB~6QUxf;GlX1{G z`iI`IoIhnBW{iDC*2W&LZJPmGUJAF!9&B0C9|ex5=&+M>VkcZ>SL6YlJAt$wk8@G~ zTc988@oo1dIb@>?og2mM@_xXw#6f+-i?hV2rsyzaV|D6%PcgcrHwv80^xAC;GfgmC z7EX*-)Pc7=ZWHa(T|lKe`#J5~pFpJEMQC173Zqoz`%r6G+^8 zHLR^w2!yu}`FE9UN80jS3mcrt$3JLa_lLh>Ie*GN>==3e6o=z4aW?%W4kw1=x}_lZ zY1ITUz1@p*6vm_V4t~&l@o^h}7bwg(37xd+fI^RlKKbpe;p1;K5#c-rIrmdV8UIYe~+GU>B9ng!@I3zf95$+Y7 zRg*u{0ybN#CWXiJLfcz`y+JS;#Eh|BEx%@n5N@c+e!%z}X+M!~iGz-Z|CC?zW90c$ z9D%>Y5&TOWp})it{!1K@zr+#!OB^u_=dx1PWnRZF;2+LWk$Ls!d@Au0++bwLyrOVA z3>Td>F?y5(+{&n!_;w5d#+Q!A`rZp6;UCV^cxsTh3#9!~aSTWMM3jT)P!C`^?fxZQ zaRhCDaMJdvCPlu{Q1JqdV~_tg;C)!u_@2lR5YeAGpF!j>d3cEbjhB>vT zCXA(U(fovG__}mpeRpk6XyhP>sM2^9bDtf#)0Y0gW!Lh4Acf(`uwJ*CzOxA1)awZ) zC9TlQ??Bg3SP<};o;uI?t_>>tQ3qZY&w}h-npW*e-SCE;4d?wJADn`#ij$oMIS19z zkNzl@L!Gsl^|5>ol&W-R)ZHHfji-BR=06f({$}Ol`&YCBwymGHwEJ`eK~?%g&hcO1 zgF~N>?tagYAD3`fy6q`Zk{7UXQiyEs+c=7%YYA8`6tH49MIJvTr9q35S+|Q0w3drkcvwN&6hD8(sC+;;oLaCS>A}Q1GJ=T zY7i6_p=-#TimzP>;MhLqKmP1Jw0Gu#N0f%3a;Q(&bCG!jw=4h`xm8;di1U2aHQyE(Gd=-7`g5MW!Gplo*#y!;!~ul6S3~+fdmJqreGyx@y!9Nq-BU;X{r#$;9NVKpF@-@my5^>n!@(E8HaEj~y81h05ea&fV*(IS z!OzW6CVXV$1yVmyUgDr*$;Tt_+W1B0VRy;r!`ilk;I>A#7TfIxXrF6f&Ezr&lU6WB zTpE7@-$>bf-gmYf=1Q?gej{>l4};DR-Cv%gg5kV6MhH&!pM$C&P2RQa9tL(|+WB#B ztKgNMn-V@*d*GX;_Z}gc<$cy32bukzUo%r0M@)XZjr#*53LGT_VW}fBab&f zezI0qoXkF?<2m#}=sc;%!PJwyH8TKq3EVeo7zJn3PKTNj%TJ(y$DG>KXV54!D_xjC`VFg*$wR8Qol6{a{@*`3FsDyv5gc{C%A@3Dl9Il0u6* zAkDMw`h-FkO#c+&a{{!0W0J|+o;FS5iryI=i95dQf9Cuty{TjL_VX(p-d;i9eOzu7 z-kUQEV2^1BHTxnT+tjpyrzyc(8g08FozjZ$7eaGj+>j*`{th$Jwewrl#|{-TdC)cB zAN>O?C(>f)A%mb#posA))9g3_c$By9n?0NgDGJ&uN9F23Yx$kiRqg#?GVLp;)L=X` zo+wCfi7SxH1!|55NM4&G(;riIa4 z&Dd$HEvE?J?53^X&remsg`;zGT@UBsbOLWqUhxq4zB3|#v-A_dn=!wj(+mfDxWwL1 zfc;3sojf7?X3Awb+8BBM6leEe;^_P(4mLjPVs-SUw0r`{JUM-Qk3b=OCHuixb#fk- z7HKr7(+qG@{dwGdT4?6ro;4hWNu&Lsr#A9{R%$*-Q7GELol^xC zceb&6uiB5$+Z3Ksm04bI1{ltt(%as@#4-F!9HYO)G5$-OeHaeEx8KLaFRcKlMmtt;5RR%^*mDRa_**7-0&eY0@ZOwQM;x z!EhQcN$+<%&<0L&iPmt}Pov#P{BTje=T6B2u-C14b8cT3@S+{LAI{efC%&HE@5P~u zoXx)Rj5eM;o{zLYYWkNr`~MQ>0ETnTJ?(gNbT@GCG8E{%wg4FJybC(kxd0=pZoib} ztpz5Nw!>)~2Y}4MMaTm$i=>h7-8%UD&km;*wqHaEEsd z&YBuh;Tz9sDqL19hgZ&jdH9An-ck!q!|jldgR5*eDjmG5hCIyG`#QOcpNvBq7l7sb zDL*jB$n&Q-2mcbs0>dfOU@g)M9|0TFlzm#0XJJuK>u0O_2^e)Aub6$U1l)~eLtb_c z!fvnjb-@kcpz3Mt^>fL)kdhV5UmLeCKh8RY;ruDR9sWxkOAKc&{p7p1A38u{to1ox zHq^f<@WrF|E#m|V0qq<8H7`v2LDt4t!~5+ukcDyMfx~RN2*v5!8S74xmmku4$7+d# zt~329y&b{G^QSo0e~Dv*;p7h57Z=jaf~QDRo#De#z?Qzc!KGym^x7^M^`3eQr(NeQ zo<$D<8O`U`o2Kzl`OWj5w<`pZ-s4viqwa4dt9MApS?E5Bv!t}xzb-5tOrKi$PJfgD zZ&%9no_{k6JQTm3ljP`vYu5<%o~&$z^6bf1^>&*Yi~4k96`;oPeQ`p3Bi#4|SuI!7 z1CJJqrgnPrA+)bFuJdeIe*A;ZS)iQb%Cg1M?Xw`_wCG4t64w96(#t%2o!KLGPBi>=vv`eW#yHSSY)3JK!%%hxuxb(xjC#MDT*^H5p zmg7fDw8Y5dL2dFw9<+R-a_wQBd;9U+EO_%-4dLE)O;#5(uZ%wXhu+YA zl=E8Src-=90pPUmIK+L<0ebN^Tg%ohLUX&rp;Ehv<87uKy%xu0xW@6*+6=B-U~)N; z?-{cYqQ;kkK$Y4^yLe0JOiYV#VZ41Oc;4c{Q!->M$4|s6Pqu(Rf{0aJN5lV<`&?i(60jY z2~c+5=&mOnJwR1FBILrmR>1s3qw;%1JZNQ&EdEf)fG~}7=Xd-@9&G$I^$@+F)ZskT zE;wDC$w)iblmXv0ZeUP_q^9)0CFa?eK~Zf29^a1 z#-2EHA5=4^#P?lZAS*wpP5z71BqrA1STO-wC-y3b=>6;0MGwuGRgD@!fRIg;|MOlz z6;}0-#-t4H3EQ{QDG`T=`}6!ZP6!)MuFp%5ejrAGdd1JjbSCQIn~x#Fw71*g8oIlA z5uCm7^fc|e8rm0dy|_ihmeZ}k$H!tpYNH4;LAPy`fbj#==0D`Ya_;rtD4qL00ZQzR z%BIx+mB)pr{a{8Le17742aBv8LP$*w|6Msn=U-93-al)m62knOckUI-E!gL-cEq5?%u%iYz2b&yWCd7 z$b**6AM#*1J3owWVHsb5RuLx7YF9f!l8#M=)zvvDaNIli+_pg|>%^SjARP%$Yu-P! zUa$gkJMH5iV8$T>m9M^XVmPFFL+ATZdAM(0rBdIU3O*hx?=&XPkG{%y^m)(bSzxs7 z>O&UCCV22d!7+mq-9V04)$&+lEeKEU>GTukN7k{P2#ov<2OAg7DlJgj89D-2Naud~ zk~Rws1NA?}DUSl`1x=pzkTw|V(|zlyMh{HCa_ae5bu@T?(RY(9?RLc5u(h-FHymsn zaaG5ibx$78gOD_<^9oP;K_5lE)$@y!U~Fb6f9u`>kZ3ol5c2LNpj&;-Rqad-xT+9* z=yTal#PL}3SL@$!uyMpsZKWRN4vhnbzDGXV+o!?AJB7Ni*Tdio&s|nq)>g2$z~*+H zNiPVDOU0{kyatJjeJItD|_2w!nM7W(mAab>PzTG}h^M2}Izi(~*$haIo>cLBlcQSDp<6 zvjhjNM0(V(DR6c}J_olC*8?GZK#BpSJ}48(G*9>M2Om4qvrVJ6BYGUO+2t4xX+H!T z-^-;GS2x%^2o1T}o(aZxER`P$+_;@HBST*wJorrz zDdxA0P5liA8+WU2>M7^UHUg#9rxXbcbI>au(p)C$?Ep>0)yle7Xoz3;oTtAVQpQFX z=3FcQufz#fF-5wFtMN(SyBH2>`N77+9zaZvSul3P-m#V3qbrAg$rH&y&whxp4?dM* z8ehfv4(w=o-ljR)4AKpaB76okk$_ZdV>b+kRBzbaXFJuR#n)bA;3n&YL-NJqUmSy( zQ6WJF;<`6igu9YmK0G8d=~B9;9jK`udH!Tr3sKNaKJFN>jjUZD2;550uV9 z(Tn1*WuFcK@7oIR4m|u0WiC0LFF7>?M~uX_vuykd!xJ9cZ@88OgsxGfF_+?ys9gp; zO^26XKgGt~Rx34b*J+%E%-@W@U9=*`2}wQ)mf7b5P96WswTZ73uFz4bOjgeWt2b!r z9^E`oOcb zGS4VeTOjY3&OHI1z2Ne*{rF+AB$(WCf8bdL4dS_C>&`Gg4Kls`j&mi({F8_O0!$qG zvhMVQZm_w;S^6u>cW4yHE_Uc}7tGrt)O|dw0~+gH`?e}7p4hG`>zIkHLHaq_0=DfD zT9$*2?_KH-;M<2T1_Tky{f)`@h^^HW{HT@}8hN`PFe;p-)i_lTtZ0RmUc65LxNO4)I>(-l*@?UV4CAC)$>K*-`<#D$C_B?1|60QI|5@KqTz~;;< z&D$>sK$OO)O(1Fj+Kg)0QWEnpSj=QcSADJ`u75`HmKGhyxz!oIE{VAEKXbGzIW(`+ zjl(7V;V7Cjul3-S;GGbKZ zG7f3~4Xd}9D7)d}GvknYh#_|zHlyVfKgF-jmq>8}HsS=8=l$xTJC$F->Xt5Xw$cuBfu*v`4PwZ`{DO2t3#m&bAa!V zleVqxAQb<0sm4pS1Tt_Jp0!9-MHt%B%}-2W-GES z0Dh-}kh5~c{xk=pTtiw^tJpUe~UBYi{{+%7x(+ zN7ML+UmAy!XFUz>+@6LbK?xQoUXOyH<_>et{vOz0pJMomIBskb@!UA)T@B~Fvz!wy z3nDxEcdmW_$@3RT<>AI~c2ZAPePS7c6;b9CuV&`JYYUG98LnTTpw^leX0IA(ZNuAo zS$_c3m^phR)-iCwHLvbo-CD%`U8Gc6^78A!JQ&X54WbF_@dP;E0t+j9i(v_f*~a>= z5xk+;;`i3N6AH_4l!d-&hXp|n!FN5%feY(*A&~}6MC@RQ1+$s}nZJ?B!;9hQw1t1m znIOOi(f4dAZ>7Mlb-R(Qi_Ji%x=KuZZ6DO)f$^6|OCXJo%eUmX22jT8U@BRyiRhb! z-`T~sJcn0N&?FA5J%F2eG$? zJNIsB1gGe(otG2n1`VMbKjmpOfFraGYcF<)BE1*SSF)rp&k?|IRz6{`m24Y>Z~R$x z)W&+za*DHlsB|WNt`*9>mQqRk7z@*EZz&DG?*Z0HFZ#6;`4a(C{HHn6`!(J61 zl>j{{WXCQ4)?JpeWE@gI5W;X4{RIp0A7`N`*Flek2O}U`RNu;OrWQ~Oou$^Q9)kI| z71cIAd-=KP6nFuo-b3b@;u^^G0;f_Kf%a=&X!~T)U zR%m0}k+A;eBA5>IsENJ301p+%EF9em!I;i|Db-gU;PRU+sS?F5Xsau~z@UmCvy`qq zNTSHHdc($Fe;qn|uj%U~RDCY!%5`B9UeB0kec8DPR&W`*XLIDiMw9NLM;qJWtFo2* z`8c{k-Rgpum54fW(M&009X0uU6{&r&@z;z46{pvA4MQf7-8v>V2X+MRW#nTU0eIGh zOS4~6U~AL^st+Pvpz3_rwy#wk;9;O(KEr)AB>0+1H|_zs-bgvv`0GE#*^04G(QVm} z8Ub@qv*)?Vi1sj;_+WQA!M+1jDcImswkN@I;GwS)+y&HZ++K2B=l}+X);J602p~QQ zTOwjC$=f+ndC>T4bpB1Xc&&(m(-71@NxjOwX%0Mlxl3|Eb`YE{%l%f0e*(1&s|UT4 zn}LOJ$yNWIePGna>1F(^4$gbd3dF8XZmxV7PLOV>kXaT z&KFn+`MM>aUbvJ8nMY>6^|%ef@(F$slhq=~{&TzxTvZZe9MX0hjq^s;H=aJJl{~Wm z+iqp_@!EHSxAN9!3hL9~I=-h;!DjUkZ~LsuogG56^Xs$EI`$Lig|COLyC#F&v}4XZ zO|!heVdK0FeWgpRANK=;o_%U25%WM*iP|~tb}js{hN03yd4SkH=rPohx0A_3Y9DO;^%3(CueVNPkg9jz{kf7~d9L`+g{^Kb@`Zql zmpb3}W;rM{iX3tX9e`;pPx$C}?L!QE*LJ;rL|#rw^@feVKBD2hXdYJr()##>TS~{! zdI#@mC2^=Etp_;Ec!1N%Nl+tTeVTq@D->_uen_ls17atCezu2d2bnyi9BlmcDk<$0 z6~1|J!k3<(@4_H(-7s!smt`+(T;_k|okHX#FgtWA#ZWyBIU!!wNjGI3-J}R37SC0mFz(+%1y>#y#=DR5% z_XV4CO3QN4IB#^FVPrp|9TrUhp;|H_BK2jE)9Gfm(m@D&XN?`s;Q9cM+s=;$V_DGY zRN#>IF{w0ao*^d$d5^fN78s6Tz|9v)T7J+aP>xf!CTW( z@R~a^S{Yg9IoLSwYla)ALQEFG+I+>k#H9?he#4D&tqj_3o(Dg4e9`!xnG5f%yr38d2Z`ec z5oNZbtw<)c2`Kemew_)+k&>vtS2i;M+NpIsTQ%mvQR{gwhnL-8;v{W}%hVvKtB&b! zN=*j3J7NQeD2j-A?=C3}RO^v$)`dH449kxf(0Fpx?OZ?YOqB`Cfk)i$#0fPJz&tGh z-^DNuIAV3V%#U>u05F&rEtrxsMx*IEkLNA zQoAid6M1*trr@)g8X1RFo}C!`JnfR7s4*n~yE}1v*A~{mwyEQOGB^8yLf5#hadrcE zpznK2kG2SKhww=28}xye&5zP8+szS6^+L%-L4=G$+Wx3x=Rg?qk-Xc zRkc`jQxSl~j>?>Ex0~QF&lVM<@jlQTN1eoSuK`>)58g1*m<-I$P-*JP_k&QMnws^@ z8c4LH#r)2F%X4;NI6ecxRoWjXK(Ih1e(ur~N&o9}9WVw~qZ-^o9?~v*Zjax_E zE-G63MgGlEcv0h$hil>}Sp4a50Ph+rd+2l%bS-P=d(xB$HU+c?W~TLlJ<;b%Y50lt zfoKQ)tR8uPhqNBW#;tz|m6>uQ#^INAcq{ECj;mg|P$GwP>wuAM7GEMwGuWtg(AL1D z7oNPSx6Nj2DQIOLd&9~mg?OyN&9@FOKW~YRTc3k`mv{T* zfr95@6sx~{ha0B(c1{rUPGcgenDeUBfRL15qMnTiQn@~0{Rf}r`ytr4_0XX#R>O&I zxa!rA-%*zZfOGcdIW$`XPv+VW(#SV~BZT?W^mv z9K2z@E9*KcF)8H5CHs9h9eBw6n$!=laqBUz_HT0wXP~X}15njJ3TV%MsH8}4hp{`t zc139qz^)M6%k&v(pe${7a9CzFEa#HVoO&XQoVe6=foGE34@f!Kxb@H#@1YuH7Puta zv1+W70JMvmtmikBLDN$^U-KBe1R2kSBtG&Dg2)+}2?>n~D0`oYY0aV(;gUkmB;AA5*r|tr%jnMi!J?gTIzMbM*sBQ^o_RIp+}I5Ik!=4# z-($GcJn*r%{0y1iNY_iS9FEX?&U<=?q5Y6b{)osNV9kkCNs#DX>8`WCGtNsMEcx;b8hs$UL%6i0#$#*gyQkoT)dIoSAk zM6vkBwntN7Tbad<@#B?fKM~L1x!A}RTmW3%3LJ2(jex~7n`X+o4_dLBZMf!Ki|d|t z){o30_XE=Q2OA%M<(zP4wcHdatZ>@ZxB6GyAfAOuC;h~937{A7W1Hsdg#scZbhiaSHn%$DS zps8Q+({_ed5bNtHK=rm0M2__z=wYn`7cZA;Fd+B9!gN?NwCo_`pku24;wUL)UV(t^J3Ni%%SjKt;8@l0%#>4y_X&tSmIIOuQqFl8(23$_w*vq%?Vxb?MTxR zk)utJUGwleAyHX`MtWypWa9Gq7-*gZ>Kl4O%-*+@$3W!4Td4*iGjPXK+pBrq#C41V zpC|6?RKki=LeHP%_d{^|bG2i63ACUQ6VF^lg|wd1G`}~reEWmVlUO{o7*)Vq3&S10 z4k#p3{qhHQ>t3^7-4;+zIqN2#7y&*$b2V%0>;=0O(#P?I@wiBwER+9^BV>L+>Tg(% zmDwBqb@`LPi|hRAkHq(0{In|tzA{ZBbSNvx;sXa(-+$B%PukSP5!UWP zh9!CgtnDetIH-<(_!~A)Lia+MnoUejIfd+L92;@uw*G8P9R z&QC>DZuL#bb3LGc=u0t7WB3~J!~!6?(fAE2XO`z2Tv80W`TpVk>!zw{a9#G=hM0wh zUmWpu`_6eBYyzx^U#8WyuaH9ZHbv8+J}5F7b=YamPDF-jtIy3r!~0Q zq>~BecRbG&@!yZU>^*$B0-E!jO5&UbVJs`ZnPjg#a?elHDlu#Ma%zd;bk8`5-rY$Y_in1y-W=Bc zi?dPWu>ZqPO)$*x{;Ksix}ck(R+#mL2KeCSdH)fx4tcnXuT4Xge14QvZ&nzN#5P~! zFoSxa#t~pPGBNdw(;YZ7qGy!`d#PDA^t|i@<`rqhH}pH9P5`OG2X}IjDKOA;NIZT0G;FtYr%dY`0Mf3=z3hAC;0@n}Z&|I` zpod56^XzU(#P4C-df~hcWE@iaSpOxC4Thr@qvGOSJO)bY?Sk!jX5iZZHr9@d<#5uW zQ#d!S254<(ZHk@_18dk5T2Aa40O!>6Sig!WB8nq#ZaU17zZaBL9&{hYF~oLF?QSN< zYbdR)v>)gM&D(49(iYmm4yL47kued}N)8!(E^Yz+x0|%QRo5Yh?%L~e z)Zv!Z8)_?*GkC%%gz0!0Xv&{>311OlaLP5w$jx)`U7-7?)oVK7h@%dbD-H2ILs1`- zqUqm)Ue`4SYVs?P9UBRgQZ>uVgZA4{&gOH;Yi7jeL3XLXMSlY}eQjVA7V^tdnuFRfeN@|5m$8qv+FFfR_D1`VEr5Y@bo!~)1Xy)qB4ltc&a5b%Z z1G4GrqFu`;a=oFt`qBQNeG-(T9pv`@qU|hDJ@%ebwDRBgJy{3a<7cNjz|^Ll*CJkb zK+bA6-&6f1;E95c)eA~F#3eq${BtGw`~fKk?bD+i?z0nAo8K=0*=Wm8Z_2yiW;>0X z&dvq!p|N`_eyATfIePi-qz;F=oa!&uYt+Hka}njwuj3FgJL`z}x69iHZNpJcfrRK~ z`p*l1O}#vIFuV)Cc%yM|YGe^iUa4c>WZecn+nTuhG&KU+PrDaiskVbz$y6^YO;Mz5 zecmO9@a4y+XskTBKhWWt(pgq&C*^}R8AtRl#Lt1R@3$s)>o>!b%foz~ zY;p_U{p>d!Z2rRK`a8SM4$r}1U$)j#!A7uTH~gy)PDj%3RY3WBa6f%O9n|(hsE_6M z!qALr6SnODIn}K+xT1wz9<;9cArCg*UsCV$=Dm{b(D3x_#59XVKzS?Be~oA>h-*LG zIsLK~v`1~7ef6{(cuz4+SllTA&+bpSQ?kn;;fB*AQNNJ~8;3s}Jo(*z%K#i-x#s-5 z=REL#EH5*;ry6kI8NbT1&<#JQBzqg{$ASxYwmaSGZG-p30zWmS@*|X9iHotn;b7zN zeGK-#4DZZ>^jlKDMYj`xnU>S}818z|vVn7^eODV8Ur2nSA>0B!ef82B=xYU2kv!kH z*u@dr^W{q2zu{ox@HN%qYZ5LKpt`Gip~jv{xI1><8sQiOsT(pQBZzqst>@m0H>Nj3 znvURwz;CU9ELx7>-P4b?XKi znvLTvb92DvXnf%3+r{AW-O6ajqzsTXdNkbc-5`_-I8^z-QU+&g!4M`t{l9aLFt(#q?|*iJtMdqan;SIV`*oC%tSV(DyPS`fnK`>_Y! z`xH~1{p0~Is9{Eo&`T~4X}yExbWB9aY(mY4P=$-!ku}8l z32vMzBs76F(5^000XQI?uKk*?&Dr2WZnIN1CJU&^;) zIU5O3tEl;GzFH&rQimM;b8L@P`{=S9QPSx8G%vX1NUX!qrx?t2J1486ateQ-7gD>?}ubt7(UZlRRzpr zCigV@3L+LQBF>5!KOpsMEN6>2bC>*L1883@F+H$}03J%b&djW92bw1$A5p^&pnCCH zkAhYg5MI<=X~y&soPX(jWwSgp!YLEeavZ}UEvFlnDrA&B6?3~_g7`j?t7kWzxlGJo zSvrlM;x0*1>}&=RO7_?8G8MsK{-NXRH}}HxmRGLC@7swq7gMDzV)RB@Ut{wz1~baK z3Ax1jKD9!5HF5o%vFdB1%C=4*rNlZlncWQEC4Dk{^Ry6HngsQ(RO|&_(fUd1^+HIh z*4FTs7!IjC*nEtew`N^}(|X~B9b#79EDJ!+-r^9wU|CSA@zsc`e?5mt8+kb;l?R)TLHV$)_4V}$$Qu#- zA@$W1*!5iRmJ)jt$Yvc?b{*)4(zmlqtGMf6^^i}}mKU$#su8W5GBVqcGv{3Iz~9J& z&ByrK$^Utib~j8gyQr-DZ~^odu$1;@6XTE6PYLvmmcofI3Cf#~bc11Q0hZ3VR&er7 zmW$yU0VJO=bK-aHDK;OYDK(RsE@cqB?Ynx-nq?l$KJl$u`?(e-u$=soBG(7j`m7MT z!<_^t#J|!BJS5IrYMjB|BYW`Is3CK4qTWe02};6S@!${_&}F|BXjcz zlqe>AE;-WywprbmSo^pR9F5gn95NuTLzc>=?w@{#Q``Qop`>eh`(QZ%PcA#Q%vC|& zjB4j9eF9p3aIbbN`G0bG2NaI!XGt9^1L@mz@lS3If_0`sZtjI*2*b`V=VvkYA?;sd z^9ml7Cl)rycR)6geA9TzMKF9Q@^qPLJ}B}ZeJQms7uelr4Y}1)0os){*KRvA08`$( zRA0HSjw}@1@QT53Nc|0)SMb_!E|w-?29969O5?^d2G|&PMi4j)p;D>D;q3GdsI9f_ zTiTs^Xcm>%NB5)^>K_Z^Njsx~WEz&6X8neBH;_{wXKvK zff4OYw>nm?#J@0SANd^F3j%nvWST|4!<~!U0>oq+fb&K^bGyh1u+5(5wD|oovVQ#U zIITOh=E8Ui!EjUjbAl-){->ODc#qSpev!V!d8B6D%VL|JfE$c6O&#mY!FCa49}Dig z;AGU50%>~6CBOMu|Dt1_|B^=umlqsEjQ3|`o4PxaoB}QzWVlnsmVz<8BeY|seQ=NU zi_*7mtAV45K&X6XIXqNfO;_2bf_%}|6WnuX`FMXWa>Gz~+8&@4ikXLuiFiGl3;oc{ za;uE~Xf2TJ3b=TO@*T|4%+#lB9)dO!V!01<;y~@wrVZ4Ow8a;gI~P!hr_J&dX;P-%|}Ps9m>z$I}a* z<=Up}?WzOnIYDXD)~k?(x|tVisdke20crWca!l@XNs2a9!i}$sxh{$SJO8#R!emgO zy9{)>U#3vYuY#Mz4Bx*J>4!z{Kd=iajNtV5bQ~L{KmW5*HuvWbwv6qP~(k?+10wcR;DVvMVEYmBV4nv-LVjgE;)Ofe1Ux!T*`_Fh(nR z@3#fWws%0;&A1D6U;NIohv5|*FS^f2P5l3J>JJCyTdXYuuWh|Vcny1?L)*e&?><#T zlgi`0r3!g`FR9*mG4|<5p53RCM1YfquNTh|^Z#UqUzFwMq(i$M6pUm1)sU$;GRI-E z2WDp%%-;yDhf{)jJvz4Pi1!HY^_KbN*XQ^!93iP!ACvYH-)pL+^5W60G3ZgSaI3{* z1`O6E*?Zj?0RCF@MU{y;z@h*2oo)3Mj1SR;RRgSk>fqPythvlo?h^|;! zFt5V$^E(0%2ZAknk~8IJ;JkQT z?rUN>?J=!uR*Y%}rx0A)cD-82@@ytT-cB1SgnON5XqJ!L5W;XC51(mQ9A1Q8hS3#5 z2bv*k);htt_r(yGvvTUB{2+W^cCa@-EgQc3TCw3(S}DlCQSUWaDU5^_1)fR}S-##8 z#&Ar0j`eQy8-=ps!>&%Ovta&`nf<2M1h}=P=t*I56Dv%UZXZ&;iC{QP@j8uecw(GE3gu)e_ZaF2c>LqYBgR{+K_SC|z2`=V z{Si0YJ+Hgl;5%?dH6uzN*}d)I{AxAw`6|--0Gr2>by5F#v`{lRw<*KPBJ$t&1m8Wd zOW=-pJ=`G?8`E677nrS@67^2)hbE#qrK^H=BI6Prekrl!<>$XRXy2q=l2NSIwhn-8 zDUp0?1o)OGqJGLrDNZQHJ^yePS z&+}pPWxBa8CY20LLCuFN9~G!fz{pIt-6Id)0->YoXQsAyK<@7bb?<`Opn$1Bn%u`a z;FBKyR9JX7(zl(#f*v8)8>xM;`7&>&xs+y&2%z__wqno5TF}by;gSO}uc_MYh*0PE zK@hmf>og&w1l;T!)a!fp8kD_Z?YPw~jePqc;eKgyd4I#^%g9LX15thiaH7O39rv{Y zXp~OHw4{&11S82KU#xnF@dknF$@UH4;&A<&gwPt$J!>+F+p-x6c3sD#LQVeOV^Vq0 zJQi}dqr-iqQF&X~QwIf$sFFP1l>wPShZ!NyX4u=l<9hP7W)Nj8Nomy50eIPOzsl}B zfwS1SpXtK56IuO6I)8xW_y^o|Wr>;rMp|maBP)pGo}VAw(1(Uu!o^&0PkiNLldU;W zJT%22ju=ne>LhcM>!W#M}6x@e+Qc{bL0M$uh?Kakl1I&x#xQ$%E3#1 zDjZ|iYk`7Ny8MaN4e&#BtaqVZC-l2Ua4x7&L_WvseUW-Wp2tG!*VufS=*;)S9t;G) z$^JN!ZnhDaP^G0wyv&4jyPm!eOzi_NUaq~?Ih+F?zqFUrc+dcnb=C&GUEGbt?9Kdi z?*;ihIjMcH`7(6;V#Ylihk-m3oOv8G2Ml*}oT)q81Kqu^TgdQz1S?cBj>o9hf>D)w z5tmjDz$EuA_0IHKNF0x|rpgc2G!;52NoOF&$dC8&HFs#+R*=BlLF6Daz8Ea saTlyIxHeXw<^$^azh4v#>wuPuXZ#-qQz4ZtxW{Qb$k%^J^@ipAUp6G~T>t<8 literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-10/inputs_true.dat b/tests/regression_tests/surface_source_write/case-10/inputs_true.dat new file mode 100644 index 000000000..2d8f1ce64 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-10/inputs_true.dat @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 300 + 3 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-10/results_true.dat b/tests/regression_tests/surface_source_write/case-10/results_true.dat new file mode 100644 index 000000000..8979eb554 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-10/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +5.169123E-02 9.144814E-03 diff --git a/tests/regression_tests/surface_source_write/case-10/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-10/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..1512d869298f2a8a0c86d1218646be2abe1ac77b GIT binary patch literal 33344 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 300 + 3 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-11/results_true.dat b/tests/regression_tests/surface_source_write/case-11/results_true.dat new file mode 100644 index 000000000..8979eb554 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-11/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +5.169123E-02 9.144814E-03 diff --git a/tests/regression_tests/surface_source_write/case-11/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-11/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..0edb06c88e9a4ba368a72bb0a16b698553dee244 GIT binary patch literal 6408 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 literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-12/inputs_true.dat b/tests/regression_tests/surface_source_write/case-12/inputs_true.dat new file mode 100644 index 000000000..087024695 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-12/inputs_true.dat @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 4 5 6 7 8 9 + 300 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-12/results_true.dat b/tests/regression_tests/surface_source_write/case-12/results_true.dat new file mode 100644 index 000000000..d793a7e42 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-12/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +4.752377E-02 6.773395E-03 diff --git a/tests/regression_tests/surface_source_write/case-12/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-12/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..ea81a8250956ba2f3da07bde3332e13963cd26d7 GIT binary patch literal 33344 zcmeIb2{cu0{P%52CzT8(W0?x6h(f}(HyH~Js3=2(2BlJ@NhL*zR8morBuR>d=-QRJ z$UM*UJWnBBZuV*K^S{0C^R89*TF-i(bFb`c@3YVKIltfayXNmcx4YJ6jfE_{EOb*Z z3Wbh|j_sc${%2z5go6jWZXO7orj-d?G33@t4x~ccLXRfo&U5KL;`!spnYZb<=T4_6_=W#_{6ESATI%ROp|X3%YCN9OX5tKY#>r!+PFNl= z+i!97@IROExJ2+9{(m0XXX2GMt{2cr&*VRkjxzb5^}!DEt7e*Vlq=abFC%yG8EzkSwu=4Nth@;`I?c2?^)H_zUSgXJ9HxIR2-2NAb;8>0pcUO#;tl_jCVs}=;)KIN%Olh} zwe4T-Ctf0ccFttfPSqO*28MrX6lJEKG18mQgmX0>-v4C5F%#ueH=Fp`TJO};-%LN5 z10MVKGxe3o`@iY`Zx3|NJ+}Pgtsx-jb+W=bV-!w*f`Y|-Hgs1%mIoT{i*$0aG=MpL zVevg|jj%Fv+_O1b3RO71?ST3^F_r22yTQ~EFN?8@zuVR6_vz>i>(zB-*!uptZ}Lto zRNblNqahP^qNK2T(}Gf9TXW%@VOI%s+xW~tRHhZ)(L5;EV~?U=67mz4EEghirrPbP z*A$1Qd--b|+VEm1JM(IXSryfu)BI97f?*8UMD~hryW~pY&Qq1w2XX;UgUpO z_g*Q?FkIYrV^JBbxhmTEI8gy*I=26*-N)HEbABWKN&T(z!OIHAaYzN%yviS>+H>{H zaQ#^F5WM{^dwuw51K<-~$d-G$2F9Ilbk=-d3F|Uc8MhT}LW{4zv|?pjK5HDz3_o$q zUyB1g#&OW!^4mNdFmwD{oau?hZ`j}B%>Rw}C-t{D3urj4qv7N5WIf0~ubtkWKLV%U zreM5wmQC`8*-)=(;O73;PT;|3W6E6k3^p#)$P$~o1m$T8&?^m)B*hzE_EYW7LK;pJ z$LCtNp?+#yCtX&0^xzpC#*})WK3=>Lq$2i?TUXS;Dz=8LJKHLu?AwDPK8>4DBeN}u zbI%BpIC!0z;;_}Z0k_02t3Pxe21D4v?*hlOV?AC4Ig-k$!g@|l{i5MO_b zvzQ2>rYVT9Oc=BL=~nod`Jmy6IgH34?^%1nU6b`D$T}|K&L?>J*cJ`-(p>P^Yxx|@ ztMX_;t}CC`>y;$G;Xay*>m}5@iHS*$gAW^fUK^B8RYP4m>5*)OxX}77T|g%5+M$+` zbSPye=zQlv7_j)}7I}VT1FB@t(694mb`BRYdusa6+q0CKH!<<&IXuMdsc8z*ou-;7 zqQ`)Z?$a=L?&<=jL8Xf43TwbM@pFoN26<5C*@r?!*bM2KT0RTy8AB4_!?J+bjkA^y zFEwvs;?LW|N6em@{_`AuYTm@epXUe=v!|vhh^$w-AiqN=up57U*Dj6`d6zL>=fYP5 z_C#_PNy)T=_zkN^St~NYI8S4;8J!&ZZmrv`1vcdVhgg4>QS&Ay{=7ZQiP=-rf1V>q z&6}9`^Bf^!_S7^53CXtJl9WB)!V$EjWWkU z%s!Y=YPk%0;ta}Kvzk2rA(oFYHE&{qg0N?q3jgTOg(_qI`OkLKBV1SR-HF=U30_|Q zw0x;XF1WUJ<#rv-&!AT{h5nX{JQ^PUD;$Q;-oA;%C6OZP4IG|-vbVVA?mp2VHBOT{G41MeD%Y} z&gDrUd`(^04xLWu&*yw=ozo_iYnXFW^L;5&zd#)KO3-koPbo<68)yAj>xO_#w)rc! zSY||BDK+5I&PJdhu&!_GQViUzXP^tc-3W@$jdYn6D4_Qbe zBo1Czrp6(Xvv7_EMV24i+X`;)SNwkWaWm9E*Rm&;xdyhuz-^KtO|V#7fFb30DGZ98 zcd=>fN_2(&EnSwYvvXF@!g)~j$+vzy}SnC^koWS{z6SaJgxz1o>-?c z9MlA#G5xx&SXT>%6eidz3iF|$i@RLbR)8-4${&4m;R=#H_*{Ofe57VLzWKNUBxowQr>G{q0O5} z9AdoT>%90i+>V>A!tty9YCxqL9g59yJy%C=lwNy}e#HV-G&RKY_g1#J`RS!Fd9k-}dSSOhDJ&ZdpD%a>3qU9?Q7+ zA^?=ksvfGhL*G`LqTsLMD7IQ;!P01Qyb=8-GsD3T0TtVw4()29mJhp_Sk!KxVsK+& zlIfbHuR!Xqq(0k@PN0rn3vp=80nRH5zgYJxq7Gr)D%J|Kb7XM<=}5sOJ+t%&!+XJ< z#?3r$6B^*fiZU6^!w5ul_aM-N3uj#}J@n*d6|dN#Z09v3|N+>e{k;$a3Jlo!EkXt1ZPN^grai#U+q1?j?`j7=wbJbR4sFmTZJQ;VV<(JZUi9Q*|5F&T&gzq)Lmo_9 z#}oK{lJm~pJV6qjoul;c9AvZZNAH2rZ1^tdn<($fF*y8AI5qu87syw8a)Uo79$?1o zFDRP+KzF%h)BxCxDt3O2d?mer6bJZspK3>y|J`qYoHO$UXlRr_&H*%p>C?$^h&XTS z>L*1|UcPlqHMtMY@mr-l=G6&QRO;S;@(Km=b}GqkA98_=-5Qr)%Dd537salg8~E+F zsk%e-8#2Se+iRS2VNd7v(`gNG#JR>LS7`)>1Y@gThIN6#bqe2)7bQT2q8!!Uo*1AT z_p$2a!riF(x^I$VCcimT`4Bni42Qg@`se+oI>R9!{yayG4465iAlulwm1Vztf)}6f z+LXTUC;XU4ubwTC51Ne%@0s@30lSrTS#eE`z`6hwFS@!G_4GXFaWsi-*0|n03+GSQ zAN5%{!2t_z9y-+xenh*>6>g`)wD{hyUY=YF%)K-3#I-bmIL_rgdSiJ|To+OIu;4(4 z;=8*Q%*f*%VjO79!uiwoX#PhWt^bIl{U333{v*zo|A_PN`~4Jz^-S?o`SKDF;D7XP zXUhaMD5Vc9V{HctYjrmW{Hg#;?n5QVfRE5rWA3@2O}o*s7uwHmXt2&&PjzSPA@4W+ z`F2O|Kk}RYEF5o6CKGTo9-5?G_tr)Gq3%N7%$VMG&{7(>N9$t-h*QW~BA8kP#?|V0 zF0t%JU+)+ZlDxWbR=?3|Dz51#sO(wU2_8R>Pz>#ygG_%73f7&KaY0S`8`ys4hd^3e z6L6W+^T1!E9u6cQ-|fP?6_tBl)E+IyP2v#8quXihdBUX-+$qF>&E$`y#8B>wj4@zO zyMq}`v$LT_R9xhH;dT(d{qW(2qa~p7S6_5yQ#s{M~;`%bsIkqMDXPg$QVYD31E()fju&s|R$cXFz&0xAsH(hdf%TQl z>@OoLLF$?nUhY|ipaITtV+qwl{gE*Vs}O-%{kD&W6JXe1eNFfGx@f0UcjqqU0T_H5 z+n91K8{7}%Mqf5|!e*Cx&RZ4!peX2-`>78as6u><<$Ryn_k&GoIDe~r%>E;eISpsY zE73zPEuDD1K}sJ9v=?$QVLy5wn7>|;3FbuTFMP499V9J%wc|m33FKI`bdMSLR&=q2 z6-!9#>~U=|!@<`n4*RZiHB@N=z6;j>Sc)>*;Q>gp}eBX3XM@7-dCP zJ~+(m?Z?O434Y{oHV%}31mD-7jLcDfVD=99li!3a=L41PU9YYhK~O`%mUMgZp&XX&K_|DaBiTdr8_t~0pN{T! z=KNp6u}sM0!|vzIzW-iN479%ZeI=z9UP^zM@}au{Xv`b4y>OudO0Ut^vNb3}l2Sy1 zqLs8s9AaGKOq}yU*y?h1_9*c2jp>PJX{ENONL=~PgYvII$$=29=U=}-|9u4|bPv10 z$E&rs;&O#iaWxmDWthCLiLZT3l@DG&aSrY`jdpXhaXm&18|T(eH7N##b|bcNi)(>l zSi#$O#x;;mco*ZRhB_#vdhpx92m#c7!k=eZ_j-~&xD8VrywAfq9X%$>k0W#7>yWG~ z?55Ox25hu1^DO0D4cstb_~|}f9k{%3|GK@6wa{g+?4gBz0NwAy7FwS_`+gSgL%f{K zC-?>*%nbmzT}fi+-(2t-2g|Mm@0s_Z60*IJVy_-<1J!MEhLA4`(D%td-Nj9hh6FiH z$okDb?!|qG$DMXvcB7RSBZ716LR%fQJ}@FLA}h6)N;UyW=@MjgX$eqRl3K(gQ485_ zD;#|OOcZ@xS9a^*F=QUnULP~w$iB!;!<%_!^&Wk>`jN;*60o#?^ zRykJWzzRc#?F=2QK-?`ND_KJpRUNbaZkkBm$G~lv;*j@argNQYKmC=BzXeF=gZ1;2 z&DshW5Xvf}72(SDAngF1#L>;+(EY)ygO#z(;DYq>q$AIQkX2WY?f>~rmt+qy4ruj! z^44$GNE){QC*ieo>5tXn_F%k%akseAzd`}`P)TL96kfYtu2%M?9k%Lx?i1$TfQo8) zx4IrBufyVHKV=WCo^QranBeU_>eq5dVZGN=c<<2!bib0OEO@^GM(i!&f48?9o_fEp z?KY(b2DX=H513e>7kpzbqmRhCTRgU=IJA1cewh!MhH7*O&RaOaaUk{QIAAFBdDclq433|@*&0> zt)5R`QBubDYbQ989LFbngW7K+MU6?CdYqr(>9|*i>e8x#_wh647n)mv!*`}z7VLNAm3PMyuz;?HF!d_`zjmFTCDcHWK4p3VLJv<*b?7!QG>84$`3|(D?Bhw~nG5 z&{kZZ>SQX7=E*DS(2dOA&*6GLyuXv_ojbVb7ImJ0gytw8Y|86~dJ*zhk+s#}@wRxo zeE|)CIWtf;xWd|Gp#r4)#V^gp(dY=uW(k7x3ZbD&1Bxa!bnMN;_?2`p4bhz_pt%LYU>dfLFTQy#B`v z&}4&mhh-kgk~qY6hgQ!QqVw_O{jNEf%Fg*uuW*#%9IWGV)Qd%9jnFUI^Ln&hBGj&S zUSmGc0OMIb$6{0r(9;rj5vm^K`a|>^t)4Gz-n`RHYdWAF@3%+pJ}p#^m;1eqMo28M znXkI_Q+O>5w^$|FnAHLkoT@n{=BT6ZWBsn(($qC+R?s&C1B{%Pgt(U zd8#*;8Ci-P^%AqI0k?{}Y*n7rLh<991;6gB1BLg_yLyM1q5O?vSe+etUP5d~X?24} z9PW=YjhT?cd9lK=o2bt*AVFc(o%Z)Cz)y`;x?vt)q5IthI^X-+K)f1dkyY^~bip?L z(-TGHxF(j*Y`Vcc%ReqSwq^o&#dho57wiN%OZj-e=^NtDe+1Y%3`ai1yIx2IZWrvW3^vA#LltF1r)-F1&S2dah|HU^|^o3R`vt z$o1mSKb+JFBbay2U$$lon&|nKV8h-Xio#0$y z&QG%+xgf?RA5&i10kuqfSiKu^L3jMwI{_C((e~H z{bAInwt(D@63a(~hBINPw~*av2!w3Ayrr>cgv#?Z4c)NzX$Qa-CWfmm#b8*}GZv3; zg+L}m-e-=D8rmtU&#b>{_VN*(;ovsnb_A`t8DyQ?3MZsh7F7FmgV16hy}5Di;A-Yh zKG*f-&{-zC`{Y_TcwTQsmV|*|Ht9Pmp!Q#5fSA;RwDJ(5aS)f%O(u=SP$15!{|f{X^dUyp3Q-#M+e^ z*-=p5K+IB+z6pqy3h8U=NT6kEhKFA4AkTw|_DIlhDjdYVRn;(Ic>Z}W#+LpFuL22N z)%}g~jc{%k_ksC*jbM(u3bG?F9n@Pqxsj5ugq}K=zk$_$c6(@bgR2?OB?jH1L(1po zKTOK40XVN)bDL8stOrSaxhy*vKf*eTU!|J_o53p|1()~S>ZoSucY4_;~tUz^V2S9 zc^mXu`=NPvnHs8PsV&WTiR?EbhgLUeT!iUijXBi(WwJge4nJZ|xg6jrxw!MerFU{)TJB zjHEx5T$*#G1}2=6bzmOO0tTZiHf(&>0>YOZJF}!f9xZf6JEcC8?IFfBuII!1h09&( z*$-F#-v1eo5DfSf%YgjQ_d9c0sSYsT3Qh6yrLNh4stKujAg*}7wu1HAM1iWJ0)c~mL^00caLqBT#Er>*XR=1a}e~{HJ5tT z&$H{_X44Hy2E>2#_ZkAxBRqmR+v$-aX^FO@{_XIxy66e!7GF@sE3H!ySPtx2;}X2u zL{P24qi*B3$#G5e8?A28e3^Ub-e1)9J*2pu*Sp`K7dFy4>)D-Z0WVk%&D%(+1!soU z^=%&_ewbK)KDJCznmp_?Z+5s8+w!9 zy{H8|)bbV|viSyjw14%nM$`h~;g$NMf-0zk;e*rH49IanEFXm#0B&RN2>p3A#R)il znS$(Hy(mFgKLI@T3|-w#*EacN5tGA*u4?dWiTs;=J~8mU^*W|5D}aWblF|M0W$mo? z;JQJaW2$%#18oB^b5+IL^D7xJoaa|ITJW+t5M0`4NcUW`1n!HAd^%#@0i1cZI`j1i zpxF^E?9VQepJyVr*R;Apr*|z!?OxMU^IxB;5%wf!1Q<3jhzebr9ES`SMJnf)fE3G4 zHEoyyxPN|UDUcWe)#^qQcjg7oY7ed(oc`YUUka8feueetP&HH>eU)_m)Bt$Xv?bzv zdlS4a{ly^oZY5kk`c6dnY6Xx^3*`A&rirr9X>@*iLY`;gKALI|aNQt&ZTDg)wmS>r z;m4i#BAFIc;^l;GuaOfNNbQ6_3nceEJeLCQ_k39@_ag&p)~uelLyiHxBhMaTFG!v@ z;%)O3hgLVZ*HCsWen~I5JMUnhvKV!L6LWzcwk#f}0P6UO`|_?{OY%#nf^pLi5@WKv({6kKpRbqNFJXYbl|TDS?wRDSSr zI$IB#FGTPyf1V8@K6UxzW*}%kX2$3%N#187#xgUG##qeR1vsExRf*#P!4pzQKejc4@4?@GS%s1I(Xj%r` z=^3iRZ&Jqx$is}3>Oy~Pa$neD+xF{8@R{{GlNkLjV7W=Y(E?*fe*~j1L>b8a0x_;p z8V=n9-Qvv)zQcW-#@B!Bpw6?f6W%6z1F20gUVe4o_MRyCyegMZU~(LMC0<;knpG3k z)u7)s=N$X2<)cc&Y2Qs>5ZXNk`*V86vPos#E)7Q80-6gMCIchYVnS7D%XA|Xze|AB!ln3j_R@XwzKT>%uQ!C)V z%qhr!G!q_XV*4z*tOoE8B&X!GFTB!Ah z!DRv4))%Ru;-gpb+L2tiK!>?IcC-VEXNDYP4PAk%-^e|dKX3N^Ms*sF=Gy4S0l#w4 ztlP~LI7-#yW9ll{{2h@^P+4(T+)EJ*P@{ORw~6tl zLBnxcDDicmn+Z9ZnfSPNqMvHdff0Gkc5<9kd8AV#wy^{z$%ft(FQ|b|stK`cScOqU zGVr9}5s_KTM{|aQkE`}L%%{|4O@NbkU#^ckUPk4NImWEA>8=HPjb*jh=R5!o2XrjD zQ(It7Y~0=J>qO9#H3o&&g?zJev}o*^KBXYu9xzHKjsc4~9b(LBIu4@;eb3ZKG=ib3 zoO=syHp1)H)yHmT1;YNtvW-~DcGUf~)8MXor^sjq=DMmv&H>@pG{4Wh&70R6G*lTM8an8eM*lUPBb3ZiT$Ov2Rum zt!_~8;^(z?=LP^>yWG~u~Tkp*SL;ZQn^7}gAC%WZt()Cf4 zWzYFX^fqKYA2Hr&b%S}FF`e_1sn78vQm;kQ-&!+Zf$_DEMr3aTeVq$#dn3BQ`tsTf zK@Fc_Yn_&yLWCOn-SL{jhXQgtN*wRtxCd_GUWy{BY1p=en{=z?$idwZ+K^;cgn!KfzQV0i`#&o(jeRU2U$P{UHD}=pE-J3 z;2K4_cnK*Eh<>Bh4Sv&BAhF9ZX`1W^L=4 z9H%r26?4{ZM0rGvcUp?^k~qXTpw$hoacbpv7^IF15YxC#(QWqmu>YX%>dXywFbqDc zDrIQ`BDGRl8R~`L?1j#T2;+W4_~iBCOQq!fV4^*=y1^NLVX-$BoD}QofI=#U$vyf# z;84J!x9cX$>GQ`5y8A}4P>0=6P{?F5E>>$>y^hmFj*r+`fis*%8Cl}_y?WeqN8p>BAfsCrwVKG`HzY)uaRyTO}6*s3cJw4)g&r>&6 zyMY?lt2qr%o!?spxX|lgEv_X)Iu#$fD$_P7F&J!SzfcXm2ljiG^AwFV$o1@M`e!{dSYVyZo_PHlPi^m{z;Rxfn5U~7l-@`54}#!5JH-BdPO zc>>9{3Q-wbOrFmX>nW|CZ{Np&QO|wZK$p3FBaiv---WzIs15rR?pY%>%o4qssoxufKcRCC)J*%5@sHc;;W$V zjt4A@y_(>e9a_GYXDi@C@6#SVfD_%4?^nxxlRV!h+C!`7!8BL-kw29@=s6lj4oYF`W)%>RxYrA~#!feap{IGay}|Ja(fUyJ4x`^og*iUSK8&h#k-v(Fy_(&42bH`Cnz&h2sNX0GbO zeX0T;GVM=x^lb)TT{5|tPM5>4+kw{2xN=1Fo6W1LRpfPlqCNX*I5Gl*j;BO&LAKiCuK-F#5ky|SY!1snj_O;p4=yyTuv*R7){VbwA zc9~78wLd_ZP2KJ&?3jaW9!+N+ zI~D|6AB4>LAlwCV2b7)(N@s#Ho5Kf>lmqlc^ijoocgT86Vn2u5hI208eSXIMa1&s7 zMlajm9EtY}$f_+PdiOSz!geih>F4&*KrSuUpnh=&@b;6s{U}QSee~s*)`8c*Di*RSr@JCzl?*IP1&y_oV&o$ zRSwM$AAf--KL}gbOvD4D&!)p!igQs@YtAzk_h;8r;5s|pMw}DOG+%nX4g;3zG=3!W z@Ej!T!18VVM(u!3D)Q&fu2S$~zQ)9Sk#w-ewBwPaKp(QDYN!3-RPs739?MgHqt)3R z4^W7E+%*SjEa&a<^rJ&?uFLAv1seye!JJ>o=W2`_fX>>Z^WP>`0}0Lyd)3zp=uPX; zy<;Qfc*DznibJcj3taJWK;tpBej;8I76)@{=3tAxSmsrqtp+>qhsZ~I)_}$JyKZmb zY=Hh7w|bs8kwGu9ge}OkB9D8CagFQjroT5GovZGHXoKwx*o+<6&m97O5f|!#tY!X% zJ6BqvYxSkeSauEM7I3lrVjlrsPE^Z9=(3^TGMOb6Aen=g#gsj?I=fOd>Jv-w?{z9` zg_SRuJ$r!sLRRh38#%D0-X`$n>lWyB2(`{0sD}NLnFc%`(-6Ooy^CFhW}lbP>g33Z{rPx~GiC*lRn^+mV?opocbT>E3#HiAB zZaI0~l4uXEvm>{s6wLN>sKDo64PXdUO?TVcZVxugeu^O^t$-l!==C{-QoB#o)##0^fJeIVj#i-IDGir zPm(xz8$A_ov^qPwI_`0v0zYaTh#y`d@GKU>y$agPVq%LRU$A3VfNmqSdD0PD8(aqq zS00#`YF)Z z3oPx5oR{0v0P2JCR=Nrn!MunaA6(??Va~9^zRdZXQ6=98n?4*Q&wq&R=qx%r>{6e< zUb+?oCZ(YFII6E0zVbdZr*d;Aypd7>YWP#Y+0Iz+eRpzT;*htk+|U4mJU-bXFswo< zAG}UZ#R09(ZpI$$dEdj6f(M4cS-~(Q|4k>fTAiuNw!R5|zq?ZS#^k=);nlx>)tA=5 zj-57~ty-JVcFoegz9(kaJ>fb#JO+^t_LMEReu9L{epTPtsd`If^VRg7tijcwT&C8p z<5>=YxA4q0^k*FytE8?xVs^^{g;ry6sh^O{>Z5Padd-L2&!9^c5s z+zoO3>1~ilrABXqL^j;x6ZstMECW|moJ#x`)*{{FMea`<$Z<{NETgsr!~_M|6Ju1l zq@xdhR}GCl@wpa6h33%hv1|gil67n7q9KS3xwJ{wxdDnQJN-QC%YX{$q%I3hBDV*` zI1nUePfb&h+!vTecEC7XV!HCRVKozG=)T5z&$@Pih@1L5HI&0Hx00jGoRjO$D>ky{ zakL_119VyjxfY~2AaaDLc@q;9?Bv*ay22+tAXy#Nh)67%)B|1Q91LlM%RlOT34h%H zik0GyW4`HN!F7=@uVYrCx0ZwRyH1h&ZDPC$6SJqLDOls4YG_&+1B#Vp**D4!?mcZeJjYTna{L(xIz{P6ca zNiu)!*+Q`aQ0w0CFg!g4jGy+petc5@D_nPfI4PnCFofTC=jYsx=G zL}@rpK4TGD>2tA$&oF#jZv5AeD&RZmyYa83`03EeC$g(n1+)#Y{H;_WC_EL4$8u~=iud!=y;26;(a{~mh?@eo-PW9_ty9iJ@M-TtP^uC74>|9 zSJgJUNlvJs*`qF8Yo3woDRJB@Nn?)_ee`z4Zwwf-K#|+>iOKcWe_j;in|J|>p?WRU zP&{IvBM=V@q`wyHvbTbK$+ecrXLZm9#g^f;5^_BywxhWI4ae0OjJ&;gg&t!aA1XfQ zJxJv^?}-miyp;}5wiF-kU)lz@dI)akxLpN$S0}!RmS2V1#X}VsOkQ^(a%lB$o)$@R zA&VF>X@>G65u+7UPI6L=%4^kHcy(o$%F5If*nhG(%I-xAD81r;-)d4<^K-)%B$9_5 zZ$u8Rf5Yvu4*cG`ZE+32{q?NoPVd1YW^7D1PUho}BG_OO(b&A85G>*R9v^O8NRMSkjRKoF zVq2<|C!e7b&NQ=R?Sx4~!}-h03xHSXn8rLIVU!~FQGP?s?DK_Lbau$v(67FdiyA=^ zUCde8Gt5|(BmbeSbCddsnvZ)DjNSrgkF1M@yvbm}{Ru1Eg)a~+|KyJmtE02_bGXh9 zuTwMSf;p>4A2SX~g(Zs|5*W*vv9jfk8Ai;NkVR@vZ04M2@W2L!yW&di@L^0I-GcWj z=vf8k?8GDFaR{F0RC|r~p={^YV^)1v-nU@134ksLRP3(XU_9FWkCigq`ot^uki(xZ*LE%!;X0zGX zcW|8@&Y6h=#KWCcx~DM(I6nWeeY5j-&=C=HhgY!!h|)(GO}M5*ht=HJytqOrS+FNd z%K@Nen^@FGZ;$dRCp?0Iue+V}ruJc{e=aLz63_^*ww9qG<*>o@V%J(5}&x?Z5?OU;BlR`CUR}s1X z-t7mtAJ_26@K`If+wM^&gQ}xW%?(3u6v*uX(Qh*uQ90d)pN@%Ej6ny?BHrT)BZhO< ztg3tTs4p8{)0Nt)p;rNmjyN3|6l;Setbe`2wYBWM#QQNIA|?UYPQ-yc6L*v%|>8c)Al}3>NBZ) zh~r*#hJ&xmOQwfd1%8>F|Nir$Ao)HY6fmXkN999^0a5(!KEK@#mWVKi)e4Om#ga~XvH9W+` zqdt+>$%%2GKEq*{Irg(&FH`>(OD!MP;PWp}JJx}OhAk6MZ?r+yPu~`aMHc|^=my)i z$#rKe>G92N>sFu{UIqcxj%2?P%SVI8p7^SZ_mho>V8{rUQ~=-a^{Ud(noqx8tAzJH z9Nv;6RRI-)+#=qwG{Yn}_G+vfqgIXw7i&GMhf7V4`s)$zd<5pr|`5 zQfWFDOO`a^Tl zrF!dy{gWC&P~UgK71r+n#**+>&a@HgDZXh8{;&;wx9P_tCu4HIP4pYC7sK1|8GDc` zW_7i@Hgp25!;8!K*qJczoszxopIQN3q;!c|n>-W<5*uIVQv-L+lecquvK=kfJ`iAj zi_F3EobuZ&dNJgs7?3Od@C%fArBseoCP5_g*3LDHx zrNP)5ZS?)kh(NQn**Ua&G3Fqi6^pH@{~sGHeVJq!rB|kiQ}FR%$)i z9$m8x6O9F*tXIC`$kjq!@9f!G!$;nyCDv0~y%?X^u<@sTjS%|)G~2YgnfxF&LF^yWI%Ac24L(3&B@;lx#wENM|b547&Bu(GzYc-PO+DB$7}i! z-yqxjL-yo)O62UE&WH~0=iIXby17w$ET!aTfLR(dHp9UVHgH)6rZhtllQnLtYir@V zBj;2u7w5p2Ra#G#pQ7k(%`;vLp3Odvr`2(-4RjCQ!!rzzbtN%!o%%gKNX_0RCd$?T znU_7;R}O37+?E^V$=cP>Dyp2H_Y8uz-|kx2RxC*J8?pY->bSIq4X#`&%Lg56B*s=H z|K88oFTeQgbK4U5&OCAV8LmcncI|uSCnj}p;-rtwYHw9^RbNF+{4TQYmdK&iab*sT z-8*!!5it7pW`>MX_hm3G?S%(ZCBDGu+g=;r*uDh;4@{5rKInpvzjzJ)lG}i8WuL!~ z?HF0-P2}vJDIfBIf;`cRynf8B1*{4?_X7rGLcyY!HXh$vfzlZv1G_gB;C-3kViVU~ zz%~3abgW$ry=O7`)Hsg>$#2B=fL1RyQ|?G>Ls2Bk(F6L_C0wpXjzI1%MepRqcEDd2 ztj%~S2zVOWc?`3Z1ASxGwN)4BC#4qKy+Td(XXVi9#puKW_N)lE0N$;GqUm`z@cN2r zZ7N+j+Ef9q=YP0l=u-%;JEad>PPX5!QsO@Z&iW$d?8mLU$H*L_-)Qw>A98GYbGA{( zJIK7=9-((#V<3UiLA*^lAExO?Ro#+r2XO($$uU-iz_U1rqasBNJrH?Wn)TxB>lCzl zG2Cw~Ek2b$-~0sUKL4^^>pKK}oz!C&sMZ6`^c5lJEt`Sk5_A5t-JikOj-dA|Th^m# zooF-Y6Pnd;w0f}T{}x;mbKi56Ji6qHr?xj zr#^QJ`3)(d_Dt?<8Y?+S9HQS$$$>`q=su>|o-qL!j;3jfTq>b*e#9)xEiEerpA5W) zIyUA4jsuEq8zBsxHAeK)ZU)AYqSHTvs7}L8H=EWz2D-ya>zOq zVmoRRSm4qOrqkH{57f$6s? zh>=_Uyhm}9&u5&yxVE}02XGyl|IF-Q8+cXzP_HRw6MDwKaof>S^8A!oKKQtejH4h! z&juHd>==NTyUxdjEUAH)YA#*5Xx{;%O%4|9r+)sVL1iR@jxYiwNMVM zyVqme6$ns~W+anand~>>cogriaZZN1Pp|9UUtq7W|JlnU^vLve3Z}hioyOi3#h^w1 z0gK~>JXm&icfi%LHfXO>U{I0afV67|X|HoSG;4c+GjR^eyLDaq_QVVeSA;$m5=F{vjnv$U8vDH)E)U2lu_ ztS~0ogXcXp?#1V-xIM=lmV93#&V)GmL`oE2qVAs|?3K=!6ue6S+bWHHB^$ip9kk~KB^U=Lo65$UE9;& z0+ggmlVU$i{$5tGZFNzs9ay#`VZ)VVD@6L1=eheA&dzEN?k{qDQ?PVH$M$)?10YST z`}_0BeQh~Ug+oO#&G09~T$NP|3!&n|C3gxrYe2N*mzyDZQmA9~&#f&5v+twhw&A|q zcqFDLScMr04+c8M`oH5X)6bm$q-X)S!~P-R&eBQUlWb%2p~sWILp#TMLREPU+DJLI S)+dnMzTq}Zl@F~h?f(H)kZg?r literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-13/inputs_true.dat b/tests/regression_tests/surface_source_write/case-13/inputs_true.dat new file mode 100644 index 000000000..a3421298b --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-13/inputs_true.dat @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 4 5 6 7 8 9 + 300 + 3 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-13/results_true.dat b/tests/regression_tests/surface_source_write/case-13/results_true.dat new file mode 100644 index 000000000..d793a7e42 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-13/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +4.752377E-02 6.773395E-03 diff --git a/tests/regression_tests/surface_source_write/case-13/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-13/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..08bd809852152200e5449745616feef691f46778 GIT binary patch literal 33344 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 Q0?F+gZo^dh(CX6uAE<_K5&!@I literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-14/inputs_true.dat b/tests/regression_tests/surface_source_write/case-14/inputs_true.dat new file mode 100644 index 000000000..b4c141b5d --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-14/inputs_true.dat @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 4 5 6 7 8 9 + 300 + 3 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-14/results_true.dat b/tests/regression_tests/surface_source_write/case-14/results_true.dat new file mode 100644 index 000000000..d793a7e42 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-14/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +4.752377E-02 6.773395E-03 diff --git a/tests/regression_tests/surface_source_write/case-14/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-14/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..50cddcc70cd27df73f37a288d86a906d7e7694fe GIT binary patch literal 33344 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 TdaX|&xqZWJm?|GyUE2QxR|Ib8 literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-15/inputs_true.dat b/tests/regression_tests/surface_source_write/case-15/inputs_true.dat new file mode 100644 index 000000000..9244d839d --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-15/inputs_true.dat @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 4 5 6 7 8 9 + 300 + 3 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-15/results_true.dat b/tests/regression_tests/surface_source_write/case-15/results_true.dat new file mode 100644 index 000000000..d793a7e42 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-15/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +4.752377E-02 6.773395E-03 diff --git a/tests/regression_tests/surface_source_write/case-15/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-15/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..3e15017a16626a9a66d903daf1721a97dc3c4058 GIT binary patch literal 2144 zcmeHI!A`kb>e1ZM}pWvtXS2(*n zV-{FqJQ`U7GyCSvv^#xM-kbG{!`w*@nD9$mAib{Y`T#0ae-AwT^utk*OrwCyAEUE_U%tM+FS*YuY)<+YG#NrL zlPhTJLdBJlA_{+qHeL>I+!e9D?9uB+#&V!gKEqSURfFn2R2P^(C5pyrV==be8S$3i zChN(z+>~hijMuX?@|VwuFFUogifCgow*DmHlhWC#g>OQ(+?PS3C^eI4@ol-iVAPog zJ%137(+G2#mOK;6qi`|`D8nR;`+nGiOOs&n&77zcCt-K=JyR_U--OKEEUH<~jpI0K nusoVGSFHZC=n6-qeo6M{!~X5nbzNWu)_z3uYF=;a|J;Euu@!3E literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-16/inputs_true.dat b/tests/regression_tests/surface_source_write/case-16/inputs_true.dat new file mode 100644 index 000000000..b3139928a --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-16/inputs_true.dat @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 4 5 6 7 8 9 + 300 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-16/results_true.dat b/tests/regression_tests/surface_source_write/case-16/results_true.dat new file mode 100644 index 000000000..a97be70ca --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-16/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +1.496403E+00 3.891283E-02 diff --git a/tests/regression_tests/surface_source_write/case-16/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-16/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..49f67e8205608e848f0130ed65b472ff98eee046 GIT binary patch literal 33344 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 NWw4>&FGk7_{y#M + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 4 5 6 7 8 9 + 300 + 3 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-17/results_true.dat b/tests/regression_tests/surface_source_write/case-17/results_true.dat new file mode 100644 index 000000000..a97be70ca --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-17/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +1.496403E+00 3.891283E-02 diff --git a/tests/regression_tests/surface_source_write/case-17/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-17/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..35878eecae7d7fcf08cbd53e5db8b2d63e3177d3 GIT binary patch literal 2144 zcmeHI%}&BV5T0#8D{2Co5aNkP;K0F~n1JcQC{YjI_$|FTVm3ulb>*LW9kI~t|FJE8Zm)vI+HYfcHnhYVB z$rZG9q2kI&5rscO8!v}9?uuAn_UL6JV>wVLpW!LwszG%hste4Y5k=#)u^3zKEAf`! zChN(z+>~hijMuX?@|VwuFFUogifCgow*DmHqte-_g>OQ(+~;AUC^eI4@ol;NVBDDn z{njv^q!H%$mOK;6qi`|`D8n?32d%IVmnOmDn>kS@PQu>!d#0Kez6qJRSyZ!}8^>|f oV0koWu2}tN(G`wJ{gT|Bj|R6_*L8svSo;ypt9iYx|8obv0JQmP-v9sr literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-18/inputs_true.dat b/tests/regression_tests/surface_source_write/case-18/inputs_true.dat new file mode 100644 index 000000000..80d6253a1 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-18/inputs_true.dat @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 4 5 6 7 8 9 + 300 + 3 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-18/results_true.dat b/tests/regression_tests/surface_source_write/case-18/results_true.dat new file mode 100644 index 000000000..a97be70ca --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-18/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +1.496403E+00 3.891283E-02 diff --git a/tests/regression_tests/surface_source_write/case-18/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-18/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..36da9e7a7f7307e5af5221f380b58750742fcc41 GIT binary patch literal 2144 zcmeHI!A`kb>e1ZM}pWvtXS2(*n zV-{FqJQ`U7GyCSvv^#xM-kbG{!`w*@4&2rnMMJZKSpN + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 4 5 6 7 8 9 + 300 + 3 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-19/results_true.dat b/tests/regression_tests/surface_source_write/case-19/results_true.dat new file mode 100644 index 000000000..a97be70ca --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-19/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +1.496403E+00 3.891283E-02 diff --git a/tests/regression_tests/surface_source_write/case-19/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-19/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..f4261451dd4832b3ebf2e4f014543c850f8f35de GIT binary patch literal 2144 zcmeHI!A`kb>e1ZM}pWvtXS2(*n zV-{FqJQ`U7GyCSvv^#xM-kbG{!`w*@I+!e9D?9uB+#&V!gKEqSURfFn2R2P^(C5pyrV==be8S$3i zChN(z+>~hijMuX?@|VwuFFUogifCgow*DmHlhWC#g>OQ(+?PS3C^eI4@ol+%f7G4& z{q`UprxE5fEqNxCN8w}?P=-kw2ko#AmnOmDn>kT8PQu>kd!||zz6qJRSyZ!}8^>|f nV0koWu2}tN(G`wJ{gNEahr#XDbzNWu)_z3uYF=;a|J;Eux+!Yo literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-20/inputs_true.dat b/tests/regression_tests/surface_source_write/case-20/inputs_true.dat new file mode 100644 index 000000000..44f0d72c7 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-20/inputs_true.dat @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 4 + 300 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-20/results_true.dat b/tests/regression_tests/surface_source_write/case-20/results_true.dat new file mode 100644 index 000000000..7ccce7cc3 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-20/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +1.149925E+00 2.542255E-01 diff --git a/tests/regression_tests/surface_source_write/case-20/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-20/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..fa8a4e628728deb4c4d75b03cd31f0aefe6d132c GIT binary patch literal 33344 zcmeFac|28L8~=UGL_+3FktvZOGQ`>^6(VFxg^VGT45i4_pc18!se~w{jD^TLL}Z@F z%=0`eGCb}t&bfc*zR&me{p0!Lc|E_=tFyK}z4zx@*IIk6Yp=D>1Jz?EcJ5%`f%?~n zk`hIVqWf!c>uYWEgZOT&+4_5HyXocv(PnyoGkr_Eu|R|(LH%nR>*jj8&GYk+Y^>1U zT(75d{5WcT&#m)srJI{ktP~qdlv^wQZ~Ff$3#cAP|K%!%o2s|`sbtg7wv6F?#ns8e z>Vmo1WxKytZTTg#wZlJ5={Nlq->+#<;+yBELQ$^&yJ%}~<#NN(YU}j7*B8jw|8Ma( zuIpcall`?WY}5aVHcJK((Z-$!HV@cJNl@Y>|60Yo?)WzAsnh!Z?R=Qm&;KtQxov0X z^?m4hz`BZmeGt?kYSf{%_2X~+_4j(Uu$dA{{@bxPH+TL&Ym@&x!+$&0b#u3^JpRw4 zHrD)qS>t+T_t$5`i#GrGFUfzikBhCtUw$V0U-tj^RsZeS>((xR?SlOKj{jx(za497 zWp8%F%JPD>(-l|8^FgK~Ctx_H6X5~cC)JN%dBe?P|2%*n;p z!X8_uwExTg|Gw(qk0o38+JBWBVq)UIN)+X0IU^x5-E`-!E%*NG6bzeQ{;!>_!)z|< zYHA%LT0g^lam*MH~z-{t>p0Xc^SldkkR80Fa;yLyKL**Jm{!y+rP(4yTBX^G}I z0COiizq6t$5+;)vYTy;2htwA5DT8 z(MqZMGrhQZ93|$`Ab*bk?SA+(*;VVgL2dq}W)mJ3t6&^hBkYud+38Oet!M&8e4cQnE;-ucx1ZxX<=ry_#dZ4w$15Trj6NCh{DY4OWu;YMvB!_pbzruB*x%crM6kxhiaH#kvkB1v;~&4 z<@UT8j00X*jwtm(1@FgPvlhxHJh>$87dEG30>T2S}^K8xL)pbJnpZrX+(LS+zr#m21{u^(09L zh<-Ebh77U(RCRj2@K|1s*X0jAaG<}+X5Rc6_*L*?;LA&yZF6L1m0k&bS^)d1>#ZIh zB*&os`cPtAS{l0)Xj;LgZch*W$rf;5E>3Ts}a6d2|)nK0ef&y>AR|af}y^Jc_&B3mzwW{MdCS3L4)F(7A6o4B45O>FmyB zgPl?rPW`lGB&Y|Uvy^$s??BT$$UY?Sv6_7n%elO3)Zojn4*0!iWT(opRB(iY>s0ON zC?x)L{pc)v2)Nh#fZx%IdD|RuKgn2|S6N_X<#_vEhdb8$bi6}*>O0JDf7{x zdjwsMoEIm%*9bYpbNsK~JAw4EH7*@L6+_T&TXo%reNd=qe^wG(^a!+m`?#Oh1?O)o zZ-RIR{2;cVXO@739-4iKtBLs((Bu@tOJlXhbhrA?gMa1yiRkad1c$2 zLu`ee$k&YT>8%*`pc z9y0ZV{9`C>`Te!fA^L3T$3$iHRpf|TMHmr5JzMRMEl}R%^!Q-zC|C?oV-r~<#cbt| zf{1K-`2JqFclRwrd!kw(r{l%)b7c^6Xm)ykqzObsgvE#-(8LkcL$w9iOaiw%RoV-J)JR8lKX+p}OU>sDSi>42eEVy;uD1&+^3xb!%Nl~Q*13;ebA`~< z9dzfVCB+EZjT(peYiZzCAA7p>GQ3q0xO+MUXE*D%K6#_!La6fS_M&oDGiXwXF3_PJ zhZ33Y5p6c&P`Gg!l$ffEQcXL}s^QZcpOoC+ zegGd+Wg}<1CZKe_vw#s19okoST+JlXkf7aY@bp-CE7pJKB*ma71){Qa*RXbTGZi3d zimZUYy8^g0vW7uQvWonphuu(p?CZ(ayetrZWbLTtA zF}+kTR>%Z!e(=Ub%}wy!Ae3o8P;xug51c3-@!!|g4^tJ-p8Xja3#huj&)$`m*fwWJ zoS4(kMbIn9Sh`4h-{09mJ% zE*0z0Ey9I{t z9-+}F0CzR(-&&AVKn0CvM)Ud!$j2xb#Pg*C5jrfEjRERj%= zd7WIv>NzuRl_yLz4kY+B!vJL)ct$gka%Ry3o-)%5X>qGUzE%-mWIaTf!-B_&Z=71% zM?{L)qQz59)p7j=%y_Jys6#(c9Z!n5E!hd4-XPrZh-iU)w@gZ(@rhM(c> zj#i3zjR9DHWa|2YUpf$Ed%!`xOtNjevFn828?USZQlVn#Q=~-5hFK{wH+AJ#JQPQu z<6cj{u>EhL^BURyZ%7a9H;B!sVX{CPLLM;qWDu@L+41tn+(b|W@)9BBCvvVUbK(5$ zwpN5unPoXp$rk>I$oBy=#k>=|1%vR~nbxbC8K=;Tk#R1Q?+J7E;Bh1}qVJwKyatL4 z3d!ush>?xWl$g${rxM;j>L6=)-L-QJ31CdQTt4RF1bjFom^%3gL4VC(DyK@?J_j@S z66i7XLI3az-tP~fupHqVaTZq#+hP0oF6*w?Zb%^;sl+8R0FA02na~ExppSbR{1E;J zoXe-#`6l<1VazX|!d!Z^47c>m9RGy+UGNp?pW3hTeRUX)8;vVoQR{*9->+*-ls^I9 zheJa*0msIP{)$EYYq9G?oZu^S5+oB)&d*5T?h8kXJ2m*Ezr)qvUb76*rZD2! zQBin%627xKTE`Yghe%syljp^d{ZGzTKj`)Iu$jkdzX(5fAd9frqzF4{g8LZkin8R;^aZlBX+h>2ki?}kYs zRL(aiP?!xqC8jt47}M7c0<~{q0rIg~;QSoZ$OvCQxZP=Z-jlNK0CsW{KncX(83`7;*SyN{$%HDk6k@L&XLt*I{t)D(`ffy zBfg3hh)6w96x+U@A(1m@*mWyF2FLt8T|Qj9xAf@uOGiI`0$zm?iKx6v7(1IV)jvG} zi%Pg1HLpXk+PLds*B8R^H+;KsJumQmKZZgygO+|?r^op<6*(CJY;94!)kp+CMu;50D_9ht-!>qB61h^Zerz zCwrX>&?KL1z))obu$4}fJv!P0t?ruz-B5c2;vS-}%IqZ^f5YeO>4E-_Y>Ezk8-}zkmGO~#5cKC@F_yg-cnNZN z@XAkCi{=y7 z68^#!gxkIN9NF;6A`nV}gh@-$jLhKlINh!~OHMKZrb>_SO(WGHZrrG5vZxE*wi&rZ zZLWm&Cuw-M?{D<%#nU6_ec%7O7z*>rLH3u6#T+(&97M@>_@<13gsE)KZz_c_8oeiG z-;GxI&PkIYKc^P4w@{!<_y?RB`66oX3!M#5qq3FzOh1@dzTP|j zvIjbIThj8EwnO$6m9WT5ml5v6X(RIHg!2bq5A*T(+0(a)kkRznV`Sz!{hKj zdRW<4Pl{P;rV}@csogw|5<_$Uu+^AtEesV{a})b82onb1+`aGG3u!LsIf95A%|k$9kraDN-0qqLjbkc|X|;k2?@m9(43a=f!F?$-yGfqPxO4fZPIfck(` zQguTEWd9nXpyiqhVrjiT#c30cljCz_1SvFghF0PAGPzFbP+T1LQ2n_TZQl{N{4lMY z9McAxbetZ>r8dI1W!Zd+N*_T=$e^v(*!DS%sFY`-Z^}Pf z?KYEamJ+Cw4T`*dT3$Sv1YSqg_S`JTz=BdfYnMSjbn$!Vnbodhf_^QC$EkUbE~coP z0+z~mrEO2)+KF90bQG_$3gMz>(~Y=CZ@|v>j-NvQldvNHmY^xD>=R1AF1<-JoPI%Z`+)qd#m@C{{bhSRN+B%4>=-! z>Q~U7Hx*b;_=X-hv#AG-r^m-U(urZ`|F+wfp5?Bk=)QMLAX4qVtq2P_WPIwaN!B^4eo1Pbe+UrwCvmHY>spgii!yEP}_8`dUCeIOn1(PRA0@LYuWcBt}LQSUrzEe%yca>NqGH{koejr4DBA zWhDuqtb%i*Hmfy;;^=sf4$Iho!08*N55Dm<9rU?ATqAZK+VoROOf-GGnEsU}=-TaY zk}IPX>}NcnQTk#8J}T`(-NFc?KZ?G*BtpCW{ITpG;s2hC!eo4oW^M1n^|yaK^^wh{ ztb%XnFgEFj}DY{VxB1z>y489J|f30>cthETwM_Vf}5B z0|;?^B8N>!{sE_>lR7Q!!vwsS=|)y^ZWYV`1oPb93GpB$M>aN4VqRWaoA+;Q z1L0KStijHOaP0bcwZ-`{_}0Kn{8l0fTCCY_ceT@Pg7upSmawtVY4@6iWIf(>iSe54qF1DX4v;Cs{^*wu*a)_BKWrgnGR9JcyIIlAEv z@IC9Ca>-H;)^1Cyysti<=>f7n?4IM0U0BAvEgOa`)-O}iga_Ca-rF9JTDL$KU7F!1I~Ht?$s ztdM4H4AW#W)$4dojS%aC}&*nQ$BypW{$N{^4cr4E!`i zY$79p;}~=IJMMD+2^eN?gx}uX0kn@`V^`{&Q$c{5D#*xS0 z5zHSMJiBQ(Q&+4^^}~tY1gcWc6)b03hxg&=ms)V#D_@F2co6y}Cbykg>xKJwU6`8a zBu6U`?C!I^OZa*4VLZ-dJ9mA3{VAaTB8Ua5saWWw*4ZWrqN*a~7)r zQ#Z8eJ#Zv6su6^UIPdh*Un8gopJPd+usWnR4eTUYY6^wOFdLUaiHSCh{s6FIJXtktO10${-|EtJB zw_~jp+)s9(D>V5IJ&1>o(zuPm^e3dzmrNlbd+%{S@(s(jITNeWfzv2rFuJ7;P-$R?WcuY^SSZM5qqw4vHl*$kd8s~4&~9>g`ID+%b@V~x zETql8)c2DGS6}}Ol5r1-ZUQV~hll*AGr^3dh}Gxtaky+5!xNeI2S|^ry-^F_KBsq| zbb11yz;yl@n3J@?`P+_M`S@6p9$+>8{zEipIe4U&utV5u7#>Q$c%0>>A z73{`94VIC7t&$>m?WPUM+iy|eiQ^NU1doMnb8J7YOvhC&!a}#<{pQIyKhWU4bHPpV zCtMz5)u{cv-oKCU;NGV{2BU$~fa=#*V9^%1C3zEmUV^X3`WdVL+f$1`Qr>!p=R;gO zQ7_E)yAn|jyuLTu>rGJshzb+vm$@+s51qK5twX|zHeMNz&y%3z+Mb+ulJ_4`0)C3ZRcfq;LU#RMZOUNjhh0vk$?Q;rG zwspboE+Fx?`R&&ib=dr&-DBjl9!iA0`>2s%;}&?+Q*=PdsTV3x8t^V=gaJiW%T_%t z!gj;g^I?^@zvChi=DIY+OwwgsJCRzchJAKZZ$Gf~z|RM{=qKOY zMWV9Dby?B$1nZqmgJP|>>v?>y{JC*BJs5Dho()&OVGabr6YtMKZ|zmZ@ndfAT5q;Z z^V%dNr%LTi|DuAf5NxgT51JsDKbseT<$NC!y}56N9Fu>Ms}pG^#%ye$#PrZfOkN4A zfz^!$HBZNq!Ts=-(%ke3_^J1dUy(c|;xdviU1mhMeXzyZ>d(pcaph$M&O`bpQ!R5z zT>On~dd{F$vje{8m+>yh?t*)s2+Lkb9)QnOL&^%>>5-f1{R0}jGz9I2V3lkvXs4=@ z`2`bU4nBn86hCG*kE6uwEa)?eIuQ@b94r=ZGi3sWqfS5WHcdipd(!^MySboXHT1=# zaw|c*9mC_anKU{tw-IAX#=Zo8yWfuGJV2nqFQO1Ic{ZkHN_7;bc8_<|W^_Sft@E

l11eivG9^A2FF@o(kK8lbM?n}(nd+t7C#e>`?H zC6C)gdGK=|xNVf6k)K$De&^fTD6DwFa;qE2&u7ybxseT<>-PJ~OtzUXh^T>XbIBxI74S-f2E^v>Q+dKd( z-#@rNdTB^j%8i$t=S}3$pUa_fFekOBW2V6=uy}!eJX0wPR=U(7 z-GrqAvaX#KlQAn0?px1zPh6=DK8ntz%zLklo>gGUN;pEc1HA7~%7f?O-XZe%u0Ozo*!suD$6BDRzI&-Os)jl?)epW= zAajWQhgQ*4brXM0B%Lphy-S|1Um@@I;ti|1A@|)`%!c%ldU<||3O|?Dx6d>(8*WqOWqHTV=3xy;CZ86jVurT+b7$HKF`5_`Nw|s zCnLDt5RY-ogE`f+u!SD1bE?i(0mBEu@)5VH!NR)jch+;&L*ETsZ=K&Ijb366otJAp zb3et;mrOSht=${GHkjXWR}q0>(fFnYN|~IQ2FaS-E9c_x}14*rw?z z_1rEB$ff2O)h%oXo<3{uJkAtEAAkAf(63CM{}BBFeofv_r(&0SeRb0`8L_nrx=$i| zi{LBIGqWl-cfcFT`Jh@L8Jz8i@!WGa8zu~T9*`UCN028cn+1oINp?V#ho7u4+8q@u zi7rN4EcyV0Yowc!Tou%aKSXt(h}%aSBCI7>rGYt>#|0UmPt5=8Uwkt9)`+BzTOMvS zA?J@0IrzU%f$Ob9HMHmZi3T90J;=TA(nS8|KQAgGAE_vFtM3g+IWAM#ZJ7#&+HWVu z?d$}WT8|d08uTK_je-4dT1`mu;JTW$H~f4FSu83N+s@z9HnINcka^L@?#mc>*_ib@ z+^G{BU1{I+=*bs&@`H#?^>`dG`D`|nsW=-ov*9{p`C#V!H$3kNkAXg9AK=U0HogCY z%<1VCe%Cn);+gElTQ}vwRK3W`+wyH7*3UF4+PVPTDhl8%PZmS>MO>C*yGV}Th~v+0 zvLF;@CU5F&CPqwkyPK#R7b7zDHWlfIF&8u@^8D|+RPs}BorJmj|~wGUAq`g5W9?{BFuj6gZNL9d#G^VNu9$kVCl znUv551WJRnm@Wl?TgJBTL#$;$&y;OVjVw?lj4xaTEwQ7Pa-G};$tU1xtWt+FkYLL%o5&bC6 z#O<1|`jN3jei4lPaNm*7@b@}}&%47F(Zc0$SZZC|ouLxom1ckZ7;iHaI(nINEWsaP z1)N^|ZYN24BXa1^N#J^06Y|wtazO(~q(q;UIm3cgItU!fJU4NUp!(y^c$2rl$vyL8 z0bdfB_h8)m!2A~omUr^Uu=P8|47r?AMd+3C+7vGp5-?N7n!YiZCu5S8N01^ z+PSU`AmV1ej`d}*)3x|03)e(`-0}?^xtuM?Xg@{MD2F`$5IMp$4qiCizU8~mb2@&* zGPjn#mv}!4mWfFK_7kxncbA*=tNv_Q&A_^X9}xQw-u}2ec)f#x0}F=@`r+ly^RdB;s^O*TOII%1wS%Z#2lMwb zyn+L_zDu7dErLud9+YH7uR)U^-@i5cEqR@fs5g8)jE;jjGOoN3S;>Ow$aZcOIMNMI z^hc*3C}@MthxXQnX6HkPeH8*#!r8F)e)oY+e}FD)LNa(Zk>}fZn@{Qu*B8!NaOwJm zScB>F=-5|?2DNql1krQ#mKR@3g=pAuYpPl&%*ruecKOr?sM+yqVPmcw>Ma%akohoq z9hTTW!~b=-c=JgcN z!aP`ZTCW_J2gCZp`^%LaL03V$$jjm{V8y9JjBdf5P;p}8r2m2(TDrw5?4<~KzCh%N z;{aNDCZaV0p;&S}6o$Tpo@z5LHUfGpNxulVi;;Mmynf?c2iyzKWiRID;V zZ&Me~MeG57{;! edE5?HrP?A#ixAW#=z`r^N%DD3qCE8bS^o!D&vB6e literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/test.py b/tests/regression_tests/surface_source_write/test.py new file mode 100644 index 000000000..f949d8085 --- /dev/null +++ b/tests/regression_tests/surface_source_write/test.py @@ -0,0 +1,1126 @@ +"""Test the 'surface_source_write' setting. + +Results +------- + +All results are generated using only 1 MPI process. + +All results are generated using 1 thread except for "test_consistency_low_realization_number". +This specific test verifies that when the number of realization (i.e., point being candidate +to be stored) is lower than the capacity, results are reproducible even with multiple +threads (i.e., there is no potential thread competition that would produce different +results in that case). + +All results are generated using the history-based mode except for cases e01 to e03. + +All results are visually verified using the '_visualize.py' script in the regression test folder. + +OpenMC models +------------- + +Four OpenMC models with CSG-only geometries are used to cover the transmission, vacuum, +reflective and periodic Boundary Conditions (BC): + +- model_1: cylindrical core in 2 boxes (vacuum and transmission BC), +- model_2: cylindrical core in 1 box (vacuum BC), +- model_3: cylindrical core in 1 box (reflective BC), +- model_4: cylindrical core in 1 box (periodic BC). + +Two models including DAGMC geometries are also used, based on the mesh file 'dagmc.h5m' +available from tests/regression_tests/dagmc/legacy: + +- model_dagmc_1: model adapted from tests/regression_tests/dagmc/legacy, +- model_dagmc_2: model_dagmc_1 contained in two CSG boxes to introduce multiple level of coordinates. + +Test cases +---------- + +Test cases using CSG-only geometries: + +======== ======= ========= ========================= ===== =================================== +Folder Model Surface Cell BC* Expected particles +======== ======= ========= ========================= ===== =================================== +case-01 model_1 No No T+V Particles crossing any surface in + the model +case-02 model_1 1 No T Particles crossing this surface + only +case-03 model_1 Multiple No T Particles crossing the declared + surfaces +case-04 model_1 Multiple cell (lower universe) T Particles crossing the declared + surfaces that come from or are + coming to the cell +case-05 model_1 Multiple cell (root universe) T Particles crossing the declared + surfaces that come from or are + coming to the cell +case-06 model_1 No cell (lower universe) T Particles crossing any surface that + come from or are coming to the cell +case-07 model_1 No cell (root universe) T Particles crossing any surface that + come from or are coming to the cell +case-08 model_1 No cellfrom (lower universe) T Particles crossing any surface that + come from the cell +case-09 model_1 No cellto (lower universe) T Particles crossing any surface that + are coming to the cell +case-10 model_1 No cellfrom (root universe) T Particles crossing any surface that + come from the cell +case-11 model_1 No cellto (root universe) T Particles crossing any surface that + are coming to the cell +case-12 model_2 Multiple No V Particles crossing the declared + surfaces +case-13 model_2 Multiple cell (root universe) V Particles crossing any surface that + come from or are coming to the cell +case-14 model_2 Multiple cellfrom (root universe) V Particles crossing any surface that + are coming to the cell +case-15 model_2 Multiple cellto (root universe) V None +case-16 model_3 Multiple No R Particles crossing the declared + surfaces +case-17 model_3 Multiple cell (root universe) R None +case-18 model_3 Multiple cellfrom (root universe) R None +case-19 model_3 Multiple cellto (root universe) R None +case-20 model_4 1 No P+R Particles crossing the declared + periodic surface +case-21 model_4 1 cell (root universe) P+R None +======== ======= ========= ========================= ===== =================================== + +*: BC stands for Boundary Conditions, T for Transmission, R for Reflective, and V for Vacuum. + +An additional case, called 'case-a01', is used to check that the results are comparable when +the number of threads is set to 2 if the number of realization is lower than the capacity. + +Cases e01 to e03 are the event-based cases corresponding to the history-based cases 04, 07 and 13, +respectively. + +Test cases using DAGMC geometries: + +======== ============= ========= ===================== ===== =================================== +Folder Model Surface Cell BC* Expected particles +======== ============= ========= ===================== ===== =================================== +case-d01 model_dagmc_1 No No T+V Particles crossing any surface in + the model +case-d02 model_dagmc_1 1 No T Particles crossing this surface + only +case-d03 model_dagmc_1 No cell T Particles crossing any surface that + come from or are coming to the cell +case-d04 model_dagmc_1 1 cell T Particles crossing the declared + surface that come from or are + coming to the cell +case-d05 model_dagmc_1 No cellfrom T Particles crossing any surface that + come from the cell +case-d06 model_dagmc_1 No cellto T Particles crossing any surface that + are coming to the cell +case-d07 model_dagmc_2 Multiple cell (lower universe) T Particles crossing the declared + surfaces that come from or are + coming to the cell +case-d08 model_dagmc_2 Multiple cell (root universe) T Particles crossing the declared + surfaces that come from or are + coming to the cell +======== ============= ========= ===================== ===== =================================== + +*: BC stands for Boundary Conditions, T for Transmission, and V for Vacuum. + +Notes: + +- The test cases list is non-exhaustive compared to the number of possible combinations. + Test cases have been selected based on use and internal code logic. +- Cases 08 to 11 are testing that the feature still works even if the level of coordinates + before and after crossing a surface is different, +- Tests on boundary conditions are not performed on DAGMC models as the logic is shared + with CSG-only models, +- Cases that should return an error are tested in the 'test_exceptions' unit test + from 'unit_tests/surface_source_write/test.py'. + +TODO: + +- Test with a lattice. + +""" + +import os +import shutil +from pathlib import Path + +import h5py +import numpy as np +import openmc +import openmc.lib +import pytest + +from tests.testing_harness import PyAPITestHarness +from tests.regression_tests import config + + +@pytest.fixture(scope="function") +def single_thread(monkeypatch): + """Set the number of OMP threads to 1 for the test.""" + monkeypatch.setenv("OMP_NUM_THREADS", "1") + + +@pytest.fixture(scope="function") +def two_threads(monkeypatch): + """Set the number of OMP threads to 2 for the test.""" + monkeypatch.setenv("OMP_NUM_THREADS", "2") + + +@pytest.fixture(scope="function") +def single_process(monkeypatch): + """Set the number of MPI process to 1 for the test.""" + monkeypatch.setitem(config, "mpi_np", "1") + + +@pytest.fixture(scope="module") +def model_1(): + """Cylindrical core contained in a first box which is contained in a larger box. + A lower universe is used to describe the interior of the first box which + contains the core and its surrounding space. + + """ + openmc.reset_auto_ids() + model = openmc.Model() + + # ============================================================================= + # Materials + # ============================================================================= + + fuel = openmc.Material() + fuel.add_nuclide("U234", 0.0004524) + fuel.add_nuclide("U235", 0.0506068) + fuel.add_nuclide("U238", 0.9487090) + fuel.add_nuclide("U236", 0.0002318) + fuel.add_nuclide("O16", 2.0) + fuel.set_density("g/cm3", 11.0) + + water = openmc.Material() + water.add_nuclide("H1", 2.0) + water.add_nuclide("O16", 1.0) + water.set_density("g/cm3", 1.0) + + # ============================================================================= + # Geometry + # ============================================================================= + + # ----------------------------------------------------------------------------- + # Cylindrical core + # ----------------------------------------------------------------------------- + + # Parameters + core_radius = 2.0 + core_height = 4.0 + + # Surfaces + core_cylinder = openmc.ZCylinder(r=core_radius) + core_lower_plane = openmc.ZPlane(-core_height / 2.0) + core_upper_plane = openmc.ZPlane(core_height / 2.0) + + # Region + core_region = -core_cylinder & +core_lower_plane & -core_upper_plane + + # Cells + core = openmc.Cell(fill=fuel, region=core_region) + outside_core_region = +core_cylinder | -core_lower_plane | +core_upper_plane + outside_core = openmc.Cell(fill=water, region=outside_core_region) + + # Universe + inside_box1_universe = openmc.Universe(cells=[core, outside_core]) + + # ----------------------------------------------------------------------------- + # Box 1 + # ----------------------------------------------------------------------------- + + # Parameters + box1_size = 6.0 + + # Surfaces + box1_rpp = openmc.model.RectangularParallelepiped( + -box1_size / 2.0, box1_size / 2.0, + -box1_size / 2.0, box1_size / 2.0, + -box1_size / 2.0, box1_size / 2.0, + ) + + # Cell + box1 = openmc.Cell(fill=inside_box1_universe, region=-box1_rpp) + + # ----------------------------------------------------------------------------- + # Box 2 + # ----------------------------------------------------------------------------- + + # Parameters + box2_size = 8 + + # Surfaces + box2_rpp = openmc.model.RectangularParallelepiped( + -box2_size / 2.0, box2_size / 2.0, + -box2_size / 2.0, box2_size / 2.0, + -box2_size / 2.0, box2_size / 2.0, + boundary_type="vacuum" + ) + + # Cell + box2 = openmc.Cell(fill=water, region=-box2_rpp & +box1_rpp) + + # Register geometry + model.geometry = openmc.Geometry([box1, box2]) + + # ============================================================================= + # Settings + # ============================================================================= + + model.settings = openmc.Settings() + model.settings.particles = 100 + model.settings.batches = 5 + model.settings.inactive = 1 + model.settings.seed = 1 + + bounds = [ + -core_radius, + -core_radius, + -core_height / 2.0, + core_radius, + core_radius, + core_height / 2.0, + ] + distribution = openmc.stats.Box(bounds[:3], bounds[3:], only_fissionable=True) + model.settings.source = openmc.IndependentSource(space=distribution) + + return model + + +@pytest.fixture +def model_2(): + """Cylindrical core contained in a box. + A lower universe is used to describe the interior of the box which + contains the core and its surrounding space. + + The box is defined with vacuum boundary conditions. + + """ + openmc.reset_auto_ids() + model = openmc.Model() + + # ============================================================================= + # Materials + # ============================================================================= + + fuel = openmc.Material() + fuel.add_nuclide("U234", 0.0004524) + fuel.add_nuclide("U235", 0.0506068) + fuel.add_nuclide("U238", 0.9487090) + fuel.add_nuclide("U236", 0.0002318) + fuel.add_nuclide("O16", 2.0) + fuel.set_density("g/cm3", 11.0) + + water = openmc.Material() + water.add_nuclide("H1", 2.0) + water.add_nuclide("O16", 1.0) + water.set_density("g/cm3", 1.0) + + # ============================================================================= + # Geometry + # ============================================================================= + + # ----------------------------------------------------------------------------- + # Cylindrical core + # ----------------------------------------------------------------------------- + + # Parameters + core_radius = 2.0 + core_height = 4.0 + + # Surfaces + core_cylinder = openmc.ZCylinder(r=core_radius) + core_lower_plane = openmc.ZPlane(-core_height / 2.0) + core_upper_plane = openmc.ZPlane(core_height / 2.0) + + # Region + core_region = -core_cylinder & +core_lower_plane & -core_upper_plane + + # Cells + core = openmc.Cell(fill=fuel, region=core_region) + outside_core_region = +core_cylinder | -core_lower_plane | +core_upper_plane + outside_core = openmc.Cell(fill=water, region=outside_core_region) + + # Universe + inside_box1_universe = openmc.Universe(cells=[core, outside_core]) + + # ----------------------------------------------------------------------------- + # Box 1 + # ----------------------------------------------------------------------------- + + # Parameters + box1_size = 6.0 + + # Surfaces + box1_rpp = openmc.model.RectangularParallelepiped( + -box1_size / 2.0, box1_size / 2.0, + -box1_size / 2.0, box1_size / 2.0, + -box1_size / 2.0, box1_size / 2.0, + boundary_type="vacuum" + ) + + # Cell + box1 = openmc.Cell(fill=inside_box1_universe, region=-box1_rpp) + + # Register geometry + model.geometry = openmc.Geometry([box1]) + + # ============================================================================= + # Settings + # ============================================================================= + + model.settings = openmc.Settings() + model.settings.particles = 100 + model.settings.batches = 5 + model.settings.inactive = 1 + model.settings.seed = 1 + + bounds = [ + -core_radius, + -core_radius, + -core_height / 2.0, + core_radius, + core_radius, + core_height / 2.0, + ] + distribution = openmc.stats.Box(bounds[:3], bounds[3:], only_fissionable=True) + model.settings.source = openmc.IndependentSource(space=distribution) + + return model + + +@pytest.fixture +def model_3(): + """Cylindrical core contained in a box. + A lower universe is used to describe the interior of the box which + contains the core and its surrounding space. + + The box is defined with reflective boundary conditions. + + """ + openmc.reset_auto_ids() + model = openmc.Model() + + # ============================================================================= + # Materials + # ============================================================================= + + fuel = openmc.Material() + fuel.add_nuclide("U234", 0.0004524) + fuel.add_nuclide("U235", 0.0506068) + fuel.add_nuclide("U238", 0.9487090) + fuel.add_nuclide("U236", 0.0002318) + fuel.add_nuclide("O16", 2.0) + fuel.set_density("g/cm3", 11.0) + + water = openmc.Material() + water.add_nuclide("H1", 2.0) + water.add_nuclide("O16", 1.0) + water.set_density("g/cm3", 1.0) + + # ============================================================================= + # Geometry + # ============================================================================= + + # ----------------------------------------------------------------------------- + # Cylindrical core + # ----------------------------------------------------------------------------- + + # Parameters + core_radius = 2.0 + core_height = 4.0 + + # Surfaces + core_cylinder = openmc.ZCylinder(r=core_radius) + core_lower_plane = openmc.ZPlane(-core_height / 2.0) + core_upper_plane = openmc.ZPlane(core_height / 2.0) + + # Region + core_region = -core_cylinder & +core_lower_plane & -core_upper_plane + + # Cells + core = openmc.Cell(fill=fuel, region=core_region) + outside_core_region = +core_cylinder | -core_lower_plane | +core_upper_plane + outside_core = openmc.Cell(fill=water, region=outside_core_region) + + # Universe + inside_box1_universe = openmc.Universe(cells=[core, outside_core]) + + # ----------------------------------------------------------------------------- + # Box 1 + # ----------------------------------------------------------------------------- + + # Parameters + box1_size = 6.0 + + # Surfaces + box1_rpp = openmc.model.RectangularParallelepiped( + -box1_size / 2.0, box1_size / 2.0, + -box1_size / 2.0, box1_size / 2.0, + -box1_size / 2.0, box1_size / 2.0, + boundary_type="reflective" + ) + + # Cell + box1 = openmc.Cell(fill=inside_box1_universe, region=-box1_rpp) + + # Register geometry + model.geometry = openmc.Geometry([box1]) + + # ============================================================================= + # Settings + # ============================================================================= + + model.settings = openmc.Settings() + model.settings.particles = 100 + model.settings.batches = 5 + model.settings.inactive = 1 + model.settings.seed = 1 + + bounds = [ + -core_radius, + -core_radius, + -core_height / 2.0, + core_radius, + core_radius, + core_height / 2.0, + ] + distribution = openmc.stats.Box(bounds[:3], bounds[3:], only_fissionable=True) + model.settings.source = openmc.IndependentSource(space=distribution) + + return model + + +@pytest.fixture +def model_4(): + """Cylindrical core contained in a box. + A lower universe is used to describe the interior of the box which + contains the core and its surrounding space. + + The box is defined with a pair of periodic boundary with reflective + boundaries. + + """ + openmc.reset_auto_ids() + model = openmc.Model() + + # ============================================================================= + # Materials + # ============================================================================= + + fuel = openmc.Material() + fuel.add_nuclide("U234", 0.0004524) + fuel.add_nuclide("U235", 0.0506068) + fuel.add_nuclide("U238", 0.9487090) + fuel.add_nuclide("U236", 0.0002318) + fuel.add_nuclide("O16", 2.0) + fuel.set_density("g/cm3", 11.0) + + water = openmc.Material() + water.add_nuclide("H1", 2.0) + water.add_nuclide("O16", 1.0) + water.set_density("g/cm3", 1.0) + + # ============================================================================= + # Geometry + # ============================================================================= + + # ----------------------------------------------------------------------------- + # Cylindrical core + # ----------------------------------------------------------------------------- + + # Parameters + core_radius = 2.0 + core_height = 4.0 + + # Surfaces + core_cylinder = openmc.ZCylinder(r=core_radius) + core_lower_plane = openmc.ZPlane(-core_height / 2.0) + core_upper_plane = openmc.ZPlane(core_height / 2.0) + + # Region + core_region = -core_cylinder & +core_lower_plane & -core_upper_plane + + # Cells + core = openmc.Cell(fill=fuel, region=core_region) + outside_core_region = +core_cylinder | -core_lower_plane | +core_upper_plane + outside_core = openmc.Cell(fill=water, region=outside_core_region) + + # Universe + inside_box1_universe = openmc.Universe(cells=[core, outside_core]) + + # ----------------------------------------------------------------------------- + # Box 1 + # ----------------------------------------------------------------------------- + + # Parameters + box1_size = 6.0 + + # Surfaces + box1_lower_plane = openmc.ZPlane(-box1_size / 2.0, boundary_type="periodic") + box1_upper_plane = openmc.ZPlane(box1_size / 2.0, boundary_type="periodic") + box1_left_plane = openmc.XPlane(-box1_size / 2.0, boundary_type="reflective") + box1_right_plane = openmc.XPlane(box1_size / 2.0, boundary_type="reflective") + box1_rear_plane = openmc.YPlane(-box1_size / 2.0, boundary_type="reflective") + box1_front_plane = openmc.YPlane(box1_size / 2.0, boundary_type="reflective") + + # Region + box1_region = ( + +box1_lower_plane + & -box1_upper_plane + & +box1_left_plane + & -box1_right_plane + & +box1_rear_plane + & -box1_front_plane + ) + + # Cell + box1 = openmc.Cell(fill=inside_box1_universe, region=box1_region) + + # Register geometry + model.geometry = openmc.Geometry([box1]) + + # ============================================================================= + # Settings + # ============================================================================= + + model.settings = openmc.Settings() + model.settings.particles = 100 + model.settings.batches = 5 + model.settings.inactive = 1 + model.settings.seed = 1 + + bounds = [ + -core_radius, + -core_radius, + -core_height / 2.0, + core_radius, + core_radius, + core_height / 2.0, + ] + distribution = openmc.stats.Box(bounds[:3], bounds[3:], only_fissionable=True) + model.settings.source = openmc.IndependentSource(space=distribution) + + return model + + +def return_surface_source_data(filepath): + """Read a surface source file and return a sorted array composed + of flatten arrays of source data for each surface source point. + + TODO: + + - use read_source_file from source.py instead. Or a dedicated function + to produce sorted list of source points for a given file. + + Parameters + ---------- + filepath : str + Path to the surface source file + + Returns + ------- + data : np.array + Sorted array composed of flatten arrays of source data for + each surface source point + + """ + data = [] + keys = [] + + # Read source file + with h5py.File(filepath, "r") as f: + for point in f["source_bank"]: + r = point["r"] + u = point["u"] + e = point["E"] + time = point["time"] + wgt = point["wgt"] + delayed_group = point["delayed_group"] + surf_id = point["surf_id"] + particle = point["particle"] + + key = ( + f"{r[0]:.10e} {r[1]:.10e} {r[2]:.10e} {u[0]:.10e} {u[1]:.10e} {u[2]:.10e}" + f"{e:.10e} {time:.10e} {wgt:.10e} {delayed_group} {surf_id} {particle}" + ) + + keys.append(key) + + values = [*r, *u, e, time, wgt, delayed_group, surf_id, particle] + assert len(values) == 12 + data.append(values) + + data = np.array(data) + keys = np.array(keys) + sorted_idx = np.argsort(keys) + + return data[sorted_idx] + + +class SurfaceSourceWriteTestHarness(PyAPITestHarness): + def __init__(self, statepoint_name, model=None, inputs_true=None, workdir=None): + super().__init__(statepoint_name, model, inputs_true) + self.workdir = workdir + + def _test_output_created(self): + """Make sure surface_source.h5 has also been created.""" + super()._test_output_created() + if self._model.settings.surf_source_write: + assert os.path.exists( + "surface_source.h5" + ), "Surface source file has not been created." + + def _compare_output(self): + """Compare surface_source.h5 files.""" + if self._model.settings.surf_source_write: + source_true = return_surface_source_data("surface_source_true.h5") + source_test = return_surface_source_data("surface_source.h5") + np.testing.assert_allclose(source_true, source_test, rtol=1e-07) + + def main(self): + """Accept commandline arguments and either run or update tests.""" + if config["build_inputs"]: + self.build_inputs() + elif config["update"]: + self.update_results() + else: + self.execute_test() + + def build_inputs(self): + """Build inputs.""" + base_dir = os.getcwd() + try: + os.chdir(self.workdir) + self._build_inputs() + finally: + os.chdir(base_dir) + + def execute_test(self): + """Build inputs, run OpenMC, and verify correct results.""" + base_dir = os.getcwd() + try: + os.chdir(self.workdir) + self._build_inputs() + inputs = self._get_inputs() + self._write_inputs(inputs) + self._compare_inputs() + self._run_openmc() + self._test_output_created() + self._compare_output() + results = self._get_results() + self._write_results(results) + self._compare_results() + finally: + self._cleanup() + os.chdir(base_dir) + + def update_results(self): + """Update results_true.dat and inputs_true.dat""" + base_dir = os.getcwd() + try: + os.chdir(self.workdir) + self._build_inputs() + inputs = self._get_inputs() + self._write_inputs(inputs) + self._overwrite_inputs() + self._run_openmc() + self._test_output_created() + results = self._get_results() + self._write_results(results) + self._overwrite_results() + finally: + self._cleanup() + os.chdir(base_dir) + + def _overwrite_results(self): + """Also add the 'surface_source.h5' file during overwriting.""" + super()._overwrite_results() + if os.path.exists("surface_source.h5"): + shutil.copyfile("surface_source.h5", "surface_source_true.h5") + + def _cleanup(self): + """Also remove the 'surface_source.h5' file while cleaning.""" + super()._cleanup() + fs = "surface_source.h5" + if os.path.exists(fs): + os.remove(fs) + + +@pytest.mark.skipif(config["event"] is True, reason="Results from history-based mode.") +@pytest.mark.parametrize( + "folder, model_name, parameter", + [ + ("case-01", "model_1", {"max_particles": 300}), + ("case-02", "model_1", {"max_particles": 300, "surface_ids": [8]}), + ( + "case-03", + "model_1", + {"max_particles": 300, "surface_ids": [4, 5, 6, 7, 8, 9]}, + ), + ( + "case-04", + "model_1", + {"max_particles": 300, "surface_ids": [4, 5, 6, 7, 8, 9], "cell": 2}, + ), + ( + "case-05", + "model_1", + {"max_particles": 300, "surface_ids": [4, 5, 6, 7, 8, 9], "cell": 3}, + ), + ("case-06", "model_1", {"max_particles": 300, "cell": 2}), + ("case-07", "model_1", {"max_particles": 300, "cell": 3}), + ("case-08", "model_1", {"max_particles": 300, "cellfrom": 2}), + ("case-09", "model_1", {"max_particles": 300, "cellto": 2}), + ("case-10", "model_1", {"max_particles": 300, "cellfrom": 3}), + ("case-11", "model_1", {"max_particles": 300, "cellto": 3}), + ( + "case-12", + "model_2", + {"max_particles": 300, "surface_ids": [4, 5, 6, 7, 8, 9]}, + ), + ( + "case-13", + "model_2", + {"max_particles": 300, "surface_ids": [4, 5, 6, 7, 8, 9], "cell": 3}, + ), + ( + "case-14", + "model_2", + {"max_particles": 300, "surface_ids": [4, 5, 6, 7, 8, 9], "cellfrom": 3}, + ), + ( + "case-15", + "model_2", + {"max_particles": 300, "surface_ids": [4, 5, 6, 7, 8, 9], "cellto": 3}, + ), + ( + "case-16", + "model_3", + {"max_particles": 300, "surface_ids": [4, 5, 6, 7, 8, 9]}, + ), + ( + "case-17", + "model_3", + {"max_particles": 300, "surface_ids": [4, 5, 6, 7, 8, 9], "cell": 3}, + ), + ( + "case-18", + "model_3", + {"max_particles": 300, "surface_ids": [4, 5, 6, 7, 8, 9], "cellfrom": 3}, + ), + ( + "case-19", + "model_3", + {"max_particles": 300, "surface_ids": [4, 5, 6, 7, 8, 9], "cellto": 3}, + ), + ( + "case-20", + "model_4", + {"max_particles": 300, "surface_ids": [4]}, + ), + ( + "case-21", + "model_4", + {"max_particles": 300, "surface_ids": [4], "cell": 3}, + ), + ], +) +def test_surface_source_cell_history_based( + folder, model_name, parameter, single_thread, single_process, request +): + """Test on history-based results for CSG-only geometries.""" + assert os.environ["OMP_NUM_THREADS"] == "1" + assert config["mpi_np"] == "1" + model = request.getfixturevalue(model_name) + model.settings.surf_source_write = parameter + harness = SurfaceSourceWriteTestHarness( + "statepoint.5.h5", model=model, workdir=folder + ) + harness.main() + + +@pytest.mark.skipif(config["event"] is True, reason="Results from history-based mode.") +def test_consistency_low_realization_number(model_1, two_threads, single_process): + """The objective is to test that the results produced, in a case where + the number of potential realization (particle storage) is low + compared to the capacity of storage, are still consistent. + + This configuration ensures that the competition between threads does not + occur and that the content of the source file created can be compared. + + """ + assert os.environ["OMP_NUM_THREADS"] == "2" + assert config["mpi_np"] == "1" + model_1.settings.surf_source_write = { + "max_particles": 200, + "surface_ids": [1, 2, 3], + "cellfrom": 2, + } + harness = SurfaceSourceWriteTestHarness( + "statepoint.5.h5", model=model_1, workdir="case-a01" + ) + harness.main() + + +@pytest.mark.skipif(config["event"] is False, reason="Results from event-based mode.") +@pytest.mark.parametrize( + "folder, model_name, parameter", + [ + ( + "case-e01", + "model_1", + {"max_particles": 300, "surface_ids": [4, 5, 6, 7, 8, 9], "cell": 2}, + ), + ("case-e02", "model_1", {"max_particles": 300, "cell": 3}), + ( + "case-e03", + "model_2", + {"max_particles": 300, "surface_ids": [4, 5, 6, 7, 8, 9], "cell": 3}, + ), + ], +) +def test_surface_source_cell_event_based( + folder, model_name, parameter, single_thread, single_process, request +): + """Test on event-based results for CSG-only geometries.""" + assert os.environ["OMP_NUM_THREADS"] == "1" + assert config["mpi_np"] == "1" + model = request.getfixturevalue(model_name) + model.settings.surf_source_write = parameter + harness = SurfaceSourceWriteTestHarness( + "statepoint.5.h5", model=model, workdir=folder + ) + harness.main() + + +@pytest.fixture(scope="module") +def model_dagmc_1(): + """Model based on the mesh file 'dagmc.h5m' available from + tests/regression_tests/dagmc/legacy. + + """ + openmc.reset_auto_ids() + model = openmc.Model() + + # ============================================================================= + # Materials + # ============================================================================= + + u235 = openmc.Material(name="no-void fuel") + u235.add_nuclide("U235", 1.0, "ao") + u235.set_density("g/cc", 11) + u235.id = 40 + + water = openmc.Material(name="water") + water.add_nuclide("H1", 2.0, "ao") + water.add_nuclide("O16", 1.0, "ao") + water.set_density("g/cc", 1.0) + water.add_s_alpha_beta("c_H_in_H2O") + water.id = 41 + + materials = openmc.Materials([u235, water]) + model.materials = materials + + # ============================================================================= + # Geometry + # ============================================================================= + + dagmc_univ = openmc.DAGMCUniverse(Path("../../dagmc/legacy/dagmc.h5m")) + model.geometry = openmc.Geometry(dagmc_univ) + + # ============================================================================= + # Settings + # ============================================================================= + + model.settings = openmc.Settings() + model.settings.particles = 100 + model.settings.batches = 5 + model.settings.inactive = 1 + model.settings.seed = 1 + + source_box = openmc.stats.Box([-4, -4, -20], [4, 4, 20], only_fissionable=True) + model.settings.source = openmc.IndependentSource(space=source_box) + + return model + + +@pytest.fixture(scope="module") +def model_dagmc_2(): + """Model based on the mesh file 'dagmc.h5m' available from + tests/regression_tests/dagmc/legacy. + + This model corresponds to the model_dagmc_1 contained in two boxes to introduce + multiple level of coordinates from CSG geometry. + + """ + openmc.reset_auto_ids() + model = openmc.Model() + + # ============================================================================= + # Materials + # ============================================================================= + + u235 = openmc.Material(name="no-void fuel") + u235.add_nuclide("U235", 1.0, "ao") + u235.set_density("g/cc", 11) + u235.id = 40 + + water = openmc.Material(name="water") + water.add_nuclide("H1", 2.0, "ao") + water.add_nuclide("O16", 1.0, "ao") + water.set_density("g/cc", 1.0) + water.add_s_alpha_beta("c_H_in_H2O") + water.id = 41 + + materials = openmc.Materials([u235, water]) + model.materials = materials + + # ============================================================================= + # Geometry + # ============================================================================= + + dagmc_univ = openmc.DAGMCUniverse(Path("../../dagmc/legacy/dagmc.h5m")) + + # ----------------------------------------------------------------------------- + # Box 1 + # ----------------------------------------------------------------------------- + + # Parameters + box1_size = 44 + + # Surfaces + box1_lower_plane = openmc.ZPlane(-box1_size / 2.0, surface_id=101) + box1_upper_plane = openmc.ZPlane(box1_size / 2.0, surface_id=102) + box1_left_plane = openmc.XPlane(-box1_size / 2.0, surface_id=103) + box1_right_plane = openmc.XPlane(box1_size / 2.0, surface_id=104) + box1_rear_plane = openmc.YPlane(-box1_size / 2.0, surface_id=105) + box1_front_plane = openmc.YPlane(box1_size / 2.0, surface_id=106) + + # Region + box1_region = ( + +box1_lower_plane + & -box1_upper_plane + & +box1_left_plane + & -box1_right_plane + & +box1_rear_plane + & -box1_front_plane + ) + + # Cell + box1 = openmc.Cell(fill=dagmc_univ, region=box1_region, cell_id=8) + + # ----------------------------------------------------------------------------- + # Box 2 + # ----------------------------------------------------------------------------- + + # Parameters + box2_size = 48 + + # Surfaces + box2_lower_plane = openmc.ZPlane( + -box2_size / 2.0, boundary_type="vacuum", surface_id=107 + ) + box2_upper_plane = openmc.ZPlane( + box2_size / 2.0, boundary_type="vacuum", surface_id=108 + ) + box2_left_plane = openmc.XPlane( + -box2_size / 2.0, boundary_type="vacuum", surface_id=109 + ) + box2_right_plane = openmc.XPlane( + box2_size / 2.0, boundary_type="vacuum", surface_id=110 + ) + box2_rear_plane = openmc.YPlane( + -box2_size / 2.0, boundary_type="vacuum", surface_id=111 + ) + box2_front_plane = openmc.YPlane( + box2_size / 2.0, boundary_type="vacuum", surface_id=112 + ) + + # Region + inside_box2 = ( + +box2_lower_plane + & -box2_upper_plane + & +box2_left_plane + & -box2_right_plane + & +box2_rear_plane + & -box2_front_plane + ) + outside_box1 = ( + -box1_lower_plane + | +box1_upper_plane + | -box1_left_plane + | +box1_right_plane + | -box1_rear_plane + | +box1_front_plane + ) + + box2_region = inside_box2 & outside_box1 + + # Cell + box2 = openmc.Cell(fill=water, region=box2_region, cell_id=9) + + # Register geometry + model.geometry = openmc.Geometry([box1, box2]) + + # ============================================================================= + # Settings + # ============================================================================= + + model.settings = openmc.Settings() + model.settings.particles = 100 + model.settings.batches = 5 + model.settings.inactive = 1 + model.settings.seed = 1 + + source_box = openmc.stats.Box([-4, -4, -20], [4, 4, 20], only_fissionable=True) + model.settings.source = openmc.IndependentSource(space=source_box) + + return model + + +@pytest.mark.skipif( + not openmc.lib._dagmc_enabled(), reason="DAGMC CAD geometry is not enabled." +) +@pytest.mark.skipif(config["event"] is True, reason="Results from history-based mode.") +@pytest.mark.parametrize( + "folder, model_name, parameter", + [ + ("case-d01", "model_dagmc_1", {"max_particles": 300}), + ("case-d02", "model_dagmc_1", {"max_particles": 300, "surface_ids": [1]}), + ("case-d03", "model_dagmc_1", {"max_particles": 300, "cell": 2}), + ( + "case-d04", + "model_dagmc_1", + {"max_particles": 300, "surface_ids": [1], "cell": 2}, + ), + ("case-d05", "model_dagmc_1", {"max_particles": 300, "cellfrom": 2}), + ("case-d06", "model_dagmc_1", {"max_particles": 300, "cellto": 2}), + ( + "case-d07", + "model_dagmc_2", + { + "max_particles": 300, + "surface_ids": [101, 102, 103, 104, 105, 106], + "cell": 7, + }, + ), + ( + "case-d08", + "model_dagmc_2", + { + "max_particles": 300, + "surface_ids": [101, 102, 103, 104, 105, 106], + "cell": 8, + }, + ), + ], +) +def test_surface_source_cell_dagmc( + folder, model_name, parameter, single_thread, single_process, request +): + """Test on models with DAGMC geometries.""" + assert os.environ["OMP_NUM_THREADS"] == "1" + assert config["mpi_np"] == "1" + model = request.getfixturevalue(model_name) + model.settings.surf_source_write = parameter + harness = SurfaceSourceWriteTestHarness( + "statepoint.5.h5", model=model, workdir=folder + ) + harness.main() diff --git a/tests/unit_tests/test_surface_source_write.py b/tests/unit_tests/test_surface_source_write.py new file mode 100644 index 000000000..472363073 --- /dev/null +++ b/tests/unit_tests/test_surface_source_write.py @@ -0,0 +1,248 @@ +"""Test the 'surf_source_write' setting used to store particles that cross +surfaces in a file for a given simulation.""" + +from pathlib import Path + +import openmc +import openmc.lib +import pytest +import h5py +import numpy as np + + +@pytest.fixture(scope="module") +def geometry(): + """Simple hydrogen sphere geometry""" + openmc.reset_auto_ids() + material = openmc.Material(name="H1") + material.add_element("H", 1.0) + sphere = openmc.Sphere(r=1.0, boundary_type="vacuum") + cell = openmc.Cell(region=-sphere, fill=material) + return openmc.Geometry([cell]) + + +@pytest.mark.parametrize( + "parameter", + [ + {"max_particles": 200}, + {"max_particles": 200, "cell": 1}, + {"max_particles": 200, "cellto": 1}, + {"max_particles": 200, "cellfrom": 1}, + {"max_particles": 200, "surface_ids": [2]}, + {"max_particles": 200, "surface_ids": [2], "cell": 1}, + {"max_particles": 200, "surface_ids": [2], "cellto": 1}, + {"max_particles": 200, "surface_ids": [2], "cellfrom": 1}, + ], +) +def test_xml_serialization(parameter, run_in_tmpdir): + """Check that the different use cases can be written and read in XML.""" + settings = openmc.Settings() + settings.surf_source_write = parameter + settings.export_to_xml() + + read_settings = openmc.Settings.from_xml() + assert read_settings.surf_source_write == parameter + + +ERROR_MSG_1 = ( + "A maximum number of particles needs to be specified " + "using the 'max_particles' parameter to store surface " + "source points." +) +ERROR_MSG_2 = "'cell', 'cellfrom' and 'cellto' cannot be used at the same time." + + +@pytest.mark.parametrize( + "parameter, error", + [ + ({"cell": 1}, ERROR_MSG_1), + ({"max_particles": 200, "cell": 1, "cellto": 1}, ERROR_MSG_2), + ({"max_particles": 200, "cell": 1, "cellfrom": 1}, ERROR_MSG_2), + ({"max_particles": 200, "cellto": 1, "cellfrom": 1}, ERROR_MSG_2), + ({"max_particles": 200, "cell": 1, "cellto": 1, "cellfrom": 1}, ERROR_MSG_2), + ], +) +def test_exceptions(parameter, error, run_in_tmpdir, geometry): + """Test parameters configuration that should return an error.""" + settings = openmc.Settings(run_mode="fixed source", batches=5, particles=100) + settings.surf_source_write = parameter + model = openmc.Model(geometry=geometry, settings=settings) + with pytest.raises(RuntimeError, match=error): + model.run() + + +@pytest.fixture(scope="module") +def model(): + """Simple hydrogen sphere divided in two hemispheres + by a z-plane to form 2 cells.""" + openmc.reset_auto_ids() + model = openmc.Model() + + # Material + material = openmc.Material(name="H1") + material.add_element("H", 1.0) + + # Geometry + radius = 1.0 + sphere = openmc.Sphere(r=radius, boundary_type="reflective") + plane = openmc.ZPlane(0.0) + cell_1 = openmc.Cell(region=-sphere & -plane, fill=material) + cell_2 = openmc.Cell(region=-sphere & +plane, fill=material) + root = openmc.Universe(cells=[cell_1, cell_2]) + model.geometry = openmc.Geometry(root) + + # Settings + model.settings = openmc.Settings() + model.settings.run_mode = "fixed source" + model.settings.particles = 100 + model.settings.batches = 3 + model.settings.seed = 1 + + bounds = [-radius, -radius, -radius, radius, radius, radius] + distribution = openmc.stats.Box(bounds[:3], bounds[3:]) + model.settings.source = openmc.IndependentSource(space=distribution) + + return model + + +@pytest.mark.parametrize( + "parameter", + [ + {"max_particles": 200, "cellto": 2, "surface_ids": [2]}, + {"max_particles": 200, "cellfrom": 2, "surface_ids": [2]}, + ], +) +def test_particle_direction(parameter, run_in_tmpdir, model): + """Test the direction of particles with the 'cellfrom' and 'cellto' parameters + on a simple model with only one surface of interest. + + Cell 2 is the upper hemisphere and surface 2 is the plane dividing the sphere + into two hemispheres. + + """ + model.settings.surf_source_write = parameter + model.run() + with h5py.File("surface_source.h5", "r") as f: + source = f["source_bank"] + + assert len(source) == 200 + + # We want to verify that the dot product of the surface's normal vector + # and the direction of the particle is either positive or negative + # depending on cellfrom or cellto. In this case, it is equivalent + # to just compare the z component of the direction of the particle. + for point in source: + if "cellto" in parameter.keys(): + assert point["u"]["z"] > 0.0 + elif "cellfrom" in parameter.keys(): + assert point["u"]["z"] < 0.0 + else: + assert False + + +@pytest.fixture +def model_dagmc(request): + """Model based on the mesh file 'dagmc.h5m' available from + tests/regression_tests/dagmc/legacy. + + """ + openmc.reset_auto_ids() + model = openmc.Model() + + # ============================================================================= + # Materials + # ============================================================================= + + u235 = openmc.Material(name="no-void fuel") + u235.add_nuclide("U235", 1.0, "ao") + u235.set_density("g/cc", 11) + u235.id = 40 + + water = openmc.Material(name="water") + water.add_nuclide("H1", 2.0, "ao") + water.add_nuclide("O16", 1.0, "ao") + water.set_density("g/cc", 1.0) + water.add_s_alpha_beta("c_H_in_H2O") + water.id = 41 + + model.materials = openmc.Materials([u235, water]) + + # ============================================================================= + # Geometry + # ============================================================================= + dagmc_path = Path(request.fspath).parent / "../regression_tests/dagmc/legacy/dagmc.h5m" + dagmc_univ = openmc.DAGMCUniverse(dagmc_path) + model.geometry = openmc.Geometry(dagmc_univ) + + # ============================================================================= + # Settings + # ============================================================================= + + model.settings = openmc.Settings() + model.settings.particles = 300 + model.settings.batches = 5 + model.settings.inactive = 1 + model.settings.seed = 1 + + source_box = openmc.stats.Box([-4, -4, -20], [4, 4, 20]) + model.settings.source = openmc.IndependentSource(space=source_box) + + return model + + +@pytest.mark.skipif( + not openmc.lib._dagmc_enabled(), reason="DAGMC CAD geometry is not enabled." +) +@pytest.mark.parametrize( + "parameter", + [ + {"max_particles": 200, "cellto": 1}, + {"max_particles": 200, "cellfrom": 1}, + ], +) +def test_particle_direction_dagmc(parameter, run_in_tmpdir, model_dagmc): + """Test the direction of particles with the 'cellfrom' and 'cellto' parameters + on a DAGMC model.""" + model_dagmc.settings.surf_source_write = parameter + model_dagmc.run() + + r = 7.0 + h = 20.0 + + with h5py.File("surface_source.h5", "r") as f: + source = f["source_bank"] + + assert len(source) == 200 + + for point in source: + + x, y, z = point["r"] + ux, uy, uz = point["u"] + + # If the point is on the upper or lower circle + if np.allclose(abs(z), h): + # If the point is also on the cylindrical surface + if np.allclose(np.sqrt(x**2 + y**2), r): + if "cellfrom" in parameter.keys(): + assert (uz * z > 0) or (ux * x + uy * y > 0) + elif "cellto" in parameter.keys(): + assert (uz * z < 0) or (ux * x + uy * y < 0) + else: + assert False + # If the point is not on the cylindrical surface + else: + if "cellfrom" in parameter.keys(): + assert uz * z > 0 + elif "cellto" in parameter.keys(): + assert uz * z < 0 + else: + assert False + # If the point is not on the upper or lower circle, + # meaning it is on the cylindrical surface + else: + if "cellfrom" in parameter.keys(): + assert ux * x + uy * y > 0 + elif "cellto" in parameter.keys(): + assert ux * x + uy * y < 0 + else: + assert False diff --git a/tests/unit_tests/test_tally_multiply_density.py b/tests/unit_tests/test_tally_multiply_density.py index 66ef41e0d..552d76bd5 100644 --- a/tests/unit_tests/test_tally_multiply_density.py +++ b/tests/unit_tests/test_tally_multiply_density.py @@ -3,7 +3,7 @@ import openmc import pytest -def test_micro_macro_compare(): +def test_micro_macro_compare(run_in_tmpdir): # Create simple sphere model with H1 and H2 mat = openmc.Material() mat.add_components({'H1': 1.0, 'H2': 1.0}) diff --git a/tests/unit_tests/weightwindows/test_ww_gen.py b/tests/unit_tests/weightwindows/test_ww_gen.py index 6fc3747b1..555421461 100644 --- a/tests/unit_tests/weightwindows/test_ww_gen.py +++ b/tests/unit_tests/weightwindows/test_ww_gen.py @@ -101,7 +101,7 @@ def labels(params): @pytest.mark.parametrize("filters", test_cases, ids=labels) -def test_ww_gen(filters, model): +def test_ww_gen(filters, run_in_tmpdir, model): tally = openmc.Tally() tally.filters = list(filters)

`BTVz zMB)c?1qpIG95ua!pEsVu;}p{9 z#_cYhfCb4xjcWC{`%mhpT$(D17i8z$d9tvt z8ho#&DRBQf2v1mhowJjS1A2ZLM4YaK$B*K3!aP^_q71u$(dVFjXKR|VesD>?+PAf% z31+Vb-Lp{`fxm*C`D?4&;Jz=rJ1-C=BPy>w)FW>35X>JfJiGa6O1{sx0+X7B2&*Z&Y!Xj1B^Cvgz~u>-!zsX$VxDOPUCSdE-qe@ zbpH-nsY^$`kKo#)9C9Xh_XNI!jva&i?O!Xw!|870mM0UiM&^)mm&65Gd zqpH*%i4*Pz<8x9vn=ZvX?}EJz!6oTzIL<`|p-1jP-@xMdYFPE*Y(OWje%1W?Bovbu zd}tF$gl3Yu^~oxJgrFW>JUy~(k@1Z#*%gGzd!&naQ z!J)vTqe(zW;iH)MXcPEz-u|rIt8qABlQnD2n+&+Y@b7yLKHAbQwpWHAB#U@ z!o?|w((+m+*Sew2@2LhckqlTo=UH!PFaj4$?VbchBj}OH??P+-!36W?44&Qio6guC zmHY-A{oV8r99)1Kn<+7}m0yi-8a2a%6_&Yz`Q@ZX<#u%&w5_A;z< zs7n9bL+uzF2cgBs&ZNJ}1W}K8 zTs#LG;MChF{*Eqyro9$n&lAf=(67(qaRjxgkN%(~au=#UOP41)ld?O%H zepJX+(hc8xlxs?&hTy^(i97J*1>~`9WU&AH?Q=*R4v71kEkNcntGRD#xcliPgR{dv>#X^Z{Wo?q!m}HRSP$u4 zK!RE2_Btw1hKp0sJ)hUO(>(yVK(dTjm}$y{=-3GRh#8kE#L>+M4)k?G6tF89Fdl5(FvmjjSg?^nDedmR0KxKc8tgDj3 z=5WWwyDzmE0l8-fw(m1zw6o8JgrbY#v96$++ossY$LK%6)5i@Mf$Z zRtrj>9uw+;^YsQ_=8yLwdx7iAzA<@%9P=%}X8QIj#q+DGBXCvp@VTddaDE+fO&k4j zp%}!$y1=NS=Wx<%I(W!_655}?ImmFX1OY33(}CmL=cISa7>`&kg6Jw&rj96Fzw!8! z#~jgOeQ;-@jzV-MGM0p{8lbn$IYOK?5L}r8 zPoC*fSGl}C-tMmtCFan1W9?DjX1Mp+vbfuWPT=k(^sX2+3=Oq9B`=(0MssEaAL@-f zOpvn`H`vOi1fsT&7ktK{O(MId&o$gQI}gV{^sniAf%5ycqW+{BsP<}#)@bh#+-;Gi zwWpyT@kCQRXgW){9^LZ2EzXJVrtY-aDUcjdvuJ68Yll2{a6M(3+YfGxaYzYTm&2KN zONQ0v15kWCb5t|_IZ(eYB^KGpPEZd%hxR#Z#`za-q2STsfk>%2xMep#sw!)-6A@7F zt4Gf1@8#fX&+}&iB9m}r%;`z|t3&ANW7CCUf`sEpWLrWu)7`vfjQek|&zEj@E+1)_ z#^%ql#;OZvgbIMF;=X&r5~DEZtBA8T=z@=8BH83`WB@38&C=C>`y7{_wl&Cb3-JAD z#$D(^j@iIdV#IIdc*G7(K#kSI!WpWGaHWJaSpQfx^evz@+c&_B2poUgU8g~qL%ykF zD+#F2DcyO004}h3)E`bG$84-$pYQBO%{!%$1rJaj&stUa32Pfh1n;cR7pJ>iGd|!G z380S{Gl9sJ*N?x%QNjN5Y7cYb7%&KznMRW&smO9;ufkP!PrLzTTcZ} zVEsDA%rP@lu^Ce6$ZNgoD}!9O#*Vp_jKPX8t9kks=^*2VUH5)p!sC1KIl02M;hcOZ z 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 I=Y?4Z0NP<`Z~y=R literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-21/inputs_true.dat b/tests/regression_tests/surface_source_write/case-21/inputs_true.dat new file mode 100644 index 000000000..893b8b5b9 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-21/inputs_true.dat @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 4 + 300 + 3 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-21/results_true.dat b/tests/regression_tests/surface_source_write/case-21/results_true.dat new file mode 100644 index 000000000..7ccce7cc3 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-21/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +1.149925E+00 2.542255E-01 diff --git a/tests/regression_tests/surface_source_write/case-21/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-21/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..ed87ce849f788a346f99843aa263565fd326040c GIT binary patch literal 2144 zcmeHI!A`KklY} zzdej5Nr*X3OP&ekQ8*a|lwq1ggLcq|OOs&n&780s#X)cUJyR_U--OKEEUH<~jpI0K nusoVGSFHZC=n6-qen}4IqrvUfbzNWu)_zFyYF=;a|J;Euz71;T literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-a01/inputs_true.dat b/tests/regression_tests/surface_source_write/case-a01/inputs_true.dat new file mode 100644 index 000000000..a65c9f770 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-a01/inputs_true.dat @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 1 2 3 + 200 + 2 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-a01/results_true.dat b/tests/regression_tests/surface_source_write/case-a01/results_true.dat new file mode 100644 index 000000000..8979eb554 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-a01/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +5.169123E-02 9.144814E-03 diff --git a/tests/regression_tests/surface_source_write/case-a01/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-a01/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..4a86235679085a07458904653a5b63f162059dea GIT binary patch literal 6616 zcmeHMc|4Wd8s4Tzh)Ss_BuS)FqRg^FM03nw$gJ<)#vZ?NIf7mttFCmU=e4iddj1kVfN^NVv#CJgZWZbL0C z5^W?gKN0b6k_h)?i-$=3KmJcCuvLpZVHFdcHQ}fCxX%bNoKBo_w6d`{XlZXZks^GF z5d;3iD1`f!)z^F^C4BywBp%w2?U7?P&aMtN#PoA%jTy9G0)O&-(eJq?a$>+3=mg z#x^-}6+QtGIY>$z^q%=N;~%C)N4)>?&mt*PY4xsn z-(()YnI=qEdlnzZe46}w@pQGP@L|Ln|9jPB=D(RE?Xa7;CS8QzOcSQl$N9+d37@T> zW;|nRy4o{`oF|50j02}>PgiSgbIj7!#@gbLd)v>8PWiZWn#uQ^M7tPJ|eZ$VqKC!WQ@O{R?b^y1tix6Y& z9Nhi%!BM{-w%w(tugON6f$+WqzF!$@{@?z41saD`TF2rBp_|uSi5ED5}GdpWts?!D^1`t|CQ<9mP}iKBkZ{m*k1pN}+0 zCvF@X1`!fZ&OFTx{elV-hY@o*oyt7L2TqOcWo-@4dRWU8Ut$>hsA z;c~QIWX2X>_i9Kc`5rd@_<{*%!kDyq>3mpml0!mIa*@}s1R80I=59L;n(a#*oJbexJjtQI#K3l?s!>Ai8j&|I-$D>+BFhe5 zgwC|LgdKaYzeFdj5*;Bg?Vc@G4?#MG4IPnn=X($Yh~@8RsaS* z+_{@q4q{4+H$GB5slkLp=q5?~pwPf^2wrRD@5h9SeM3R{y892eR1iMEG@mco7XGXr zw#}Ac>)6-~?+!-X_P$qwikF@hM6WJle9z?q^>isrIK+FW^I47K5TQyeU(dU~9kMGV zjn}dD6S}1a`uGA=I@9nu_ajh2og$+%r)`*g2MYKXa+?AMci1nfK zF(m--SRTHuS=4$QR^KStnLo1uE{k^82Q`cUWhwWSwPraep)pOXH2pma;XbGK1a*OT z_sR_-ALPlci%Z@p>|V@-!>HR&EI0;*&c@sL8^OHIU7B}&%@m*8()Zj7cC@186t|67 zQ7zhN#hZV4OCelH+Qq&5$x3qTK$w)i7PD>yAG&UQEI45ow{0$!p@K+(x@)6UHQIjv z>7yv2ukiEo=XXcS>QELO*)IHh14^j=UUF;GS4i>`G;iO05|d3++l ztm-xI)}6=9>qF>9=d+jvCsMFsCkUq$6b1qopItED^>V|*(-VMeJLTn<|AxP^UcMji>guJVAM%yz^V!KAo zGpp-e|1nNmIVmw-z70873#so}I|dE|&3j$0*THy1M~u{PAv0okt&4KO?7ixkWiSPgO&xZHL+jb zg?`qNhzyV^f}44-_4jZ4h|PQY{TL-nmWdDJ`WUn5_Vj}Fxj)i|VXljfO!jvQl5;_? zcDRk8=pa)ot50ocxnV%d4xK7U|MgDiq5Y*u&a!`(XHGW+ZK$E7SVS}75Pax9*vo>W z5VI$HDe6V5o>Qa>B1XU>AkoIrvlU=Rc#5`sH-vP&+iB{Zg@zT{$hDklXguURl(Jmu^|a&|YmZVrsV4AUhg(t{o7 zQB9uf3eFrbv$o4yEmMw)PD`a4a#q4ntX6;e<>VjoVLf-gEwQeb;28zGC!0Rne(3`L zpmp&v+}}Z$GXE-}l-m)Rv*3p~8zyN? zy|Sn34mT%^0FS*Fw^q0G9byawXt*rz3{wu8XM87o4> zU!s1wOrGVx)gT2Odr?tE39{XX(*Y?pKlU~2xl?^bt+cI(3elye%7J2eC~I+U(6HAx zbmfrc+fz@w(1SOnM%F5^=(OFwq+?M<=)A|?q=cxKSg`Qc68WZojw2)(I`rl70E+T7 z<24N(fIja>7vEMVgZ-)Fomr{vaKJw{!B-;^`P*fdH)ecA$A$Zp2Sa(uT8Em{y_cyl z>Bi_ciK&&DY}9Remfb>m2Yi9$v&-74@Wc>k0D&O?zUj2r-RQNghuHE{NaXb(4-BGB>M94J3(NE{42Tf zLS#^)bCNH%7*vk7rpf1aVTp;0*b-kFG2swCpzj}6KBiu8cooF@p|x*?W74c4bf4EM zOgE$t8GE@sj8twx7DDY?^-4b>cNc#HZNFNi-J$l5v$_>i66TQL-JZdOL+D075B9L= z7P3BLp@Kmr_?{Fw(;ho8#YgIsnWOhe0~*q_R~0{=jvBQa7o9*Ui$Gu5bKmRs`|qYe~g z)}T%mdye3hZ->e9huF{(FGD4VAM@GAg5&a$myLf#54h{iHOjsH9emH;G6=rkhU8*A zFE$EhBA>k>m9`5zk@(S*&sCkvVWUFL%K0ihWKCh)Udgg$OneC4=Z;Jq zOgN0XvEp3icBtmOHG=jRKPb{m?}glb_TpB)O{lcUwxBY-3-%VRMq+k_uu##wtiUlD zjW@k=2>;_ACSsjaCa!44g!5N?)FOo5+nuMvLII5vhUuT6OToLNL-#va4vz`!5o$x{ ztG_;3V_F5(O)AU$`peLa^h=&RnhP<-aD9gep{!|f=zb&Chj_mJd9k)@_O1~ma~jjX zt3*Lo%}yIV4n734pCaEp!@6N)l$5Jm5f0!U{Mkn%52ftVZ~F8(6;fNx96Z;4`ytK& ze0_*>RO6#lnaGQ5NbxBP{SerT@b1()1D&_2l3j?}jg8m}eLy=UZm3-<_yA4OZy$5Y zts}>o<~Ajd3Nzsl>qF=ij07nR$0BJE#b| zoNan0brii`GB_BgI(}njp@(@*!4Hg%%l`8%aM`C11DF4ouK5X5z!>1J=)l z=vf{DTNblpsF9t5^{ypvqtj% LC5*DhS910bE;gYLeTFMBG>ducP#FN z=pYOE7`c2{G2H!|uFoDUCF$kQq)p5?jO)XSGp})T98XL?c!rhn86EsKg(L1=yM3JY zeP_GMnMfU%4B*zk$kp4L4+Xa?ReVw<$cCMt6MYPrbt7=-=fQHE5B_fjlJoV;q_h`# zpqW*-<4XY*ZHix-FR^+6jc%#SlxizMD!NZ)QjgTY++TO5iQa65`8&L0uMN*3vzc7< z8slQ-Luf?TjrIGSNj-1ue)CeKY0MM#FqDdf#geWmZTSX4Ek<2YFI&MSEZCSku@<72 g7E`WJ^I(JNZ + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -4 -4 -20 4 4 20 + + + + 300 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-d01/results_true.dat b/tests/regression_tests/surface_source_write/case-d01/results_true.dat new file mode 100644 index 000000000..7fb415cb1 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-d01/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +9.263843E-01 3.193920E-02 diff --git a/tests/regression_tests/surface_source_write/case-d01/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-d01/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..8f8cd604dc7d685af08c32e69922749b6ad01654 GIT binary patch literal 33344 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 literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-d02/inputs_true.dat b/tests/regression_tests/surface_source_write/case-d02/inputs_true.dat new file mode 100644 index 000000000..6877634f1 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-d02/inputs_true.dat @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -4 -4 -20 4 4 20 + + + + 1 + 300 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-d02/results_true.dat b/tests/regression_tests/surface_source_write/case-d02/results_true.dat new file mode 100644 index 000000000..7fb415cb1 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-d02/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +9.263843E-01 3.193920E-02 diff --git a/tests/regression_tests/surface_source_write/case-d02/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-d02/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..3abc471e043152b09e736a5f09012f5f0a95191b GIT binary patch literal 31472 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 + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -4 -4 -20 4 4 20 + + + + 300 + 2 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-d03/results_true.dat b/tests/regression_tests/surface_source_write/case-d03/results_true.dat new file mode 100644 index 000000000..7fb415cb1 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-d03/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +9.263843E-01 3.193920E-02 diff --git a/tests/regression_tests/surface_source_write/case-d03/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-d03/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..8435e8f17f4284ea1916ca71e048265aea650f19 GIT binary patch literal 33344 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 TcuCG7%T29+iWS#a5jp + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -4 -4 -20 4 4 20 + + + + 1 + 300 + 2 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-d04/results_true.dat b/tests/regression_tests/surface_source_write/case-d04/results_true.dat new file mode 100644 index 000000000..7fb415cb1 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-d04/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +9.263843E-01 3.193920E-02 diff --git a/tests/regression_tests/surface_source_write/case-d04/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-d04/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..6c45d92e6117a936f05040f5ce367471f98b32fa GIT binary patch literal 31472 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 literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-d05/inputs_true.dat b/tests/regression_tests/surface_source_write/case-d05/inputs_true.dat new file mode 100644 index 000000000..865633fbb --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-d05/inputs_true.dat @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -4 -4 -20 4 4 20 + + + + 300 + 2 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-d05/results_true.dat b/tests/regression_tests/surface_source_write/case-d05/results_true.dat new file mode 100644 index 000000000..7fb415cb1 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-d05/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +9.263843E-01 3.193920E-02 diff --git a/tests/regression_tests/surface_source_write/case-d05/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-d05/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..24b04a862e42c6038d6b0e65184b43715c8145d3 GIT binary patch literal 33344 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�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 + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -4 -4 -20 4 4 20 + + + + 300 + 2 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-d06/results_true.dat b/tests/regression_tests/surface_source_write/case-d06/results_true.dat new file mode 100644 index 000000000..7fb415cb1 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-d06/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +9.263843E-01 3.193920E-02 diff --git a/tests/regression_tests/surface_source_write/case-d06/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-d06/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..3eb95bef96a07b77a50c9ef9df25e0a849075c08 GIT binary patch literal 29496 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 literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-d07/inputs_true.dat b/tests/regression_tests/surface_source_write/case-d07/inputs_true.dat new file mode 100644 index 000000000..77498b64d --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-d07/inputs_true.dat @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -4 -4 -20 4 4 20 + + + + 101 102 103 104 105 106 + 300 + 7 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-d07/results_true.dat b/tests/regression_tests/surface_source_write/case-d07/results_true.dat new file mode 100644 index 000000000..63ea1a64d --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-d07/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +9.756086E-01 4.639209E-02 diff --git a/tests/regression_tests/surface_source_write/case-d07/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-d07/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..0332f2dcfb100123fe3a4ee3a47f690be2af1bab GIT binary patch literal 33344 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 literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-d08/inputs_true.dat b/tests/regression_tests/surface_source_write/case-d08/inputs_true.dat new file mode 100644 index 000000000..561a38337 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-d08/inputs_true.dat @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -4 -4 -20 4 4 20 + + + + 101 102 103 104 105 106 + 300 + 8 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-d08/results_true.dat b/tests/regression_tests/surface_source_write/case-d08/results_true.dat new file mode 100644 index 000000000..63ea1a64d --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-d08/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +9.756086E-01 4.639209E-02 diff --git a/tests/regression_tests/surface_source_write/case-d08/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-d08/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..2525592045ca7912138b0559d72d9d4eaeda6118 GIT binary patch literal 33344 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 literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-e01/inputs_true.dat b/tests/regression_tests/surface_source_write/case-e01/inputs_true.dat new file mode 100644 index 000000000..99a5a2899 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-e01/inputs_true.dat @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 4 5 6 7 8 9 + 300 + 2 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-e01/results_true.dat b/tests/regression_tests/surface_source_write/case-e01/results_true.dat new file mode 100644 index 000000000..8979eb554 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-e01/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +5.169123E-02 9.144814E-03 diff --git a/tests/regression_tests/surface_source_write/case-e01/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-e01/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..3047519e8c52b140a4756266192c9d81c7d204fb GIT binary patch literal 33344 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 300 + 3 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-e02/results_true.dat b/tests/regression_tests/surface_source_write/case-e02/results_true.dat new file mode 100644 index 000000000..8979eb554 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-e02/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +5.169123E-02 9.144814E-03 diff --git a/tests/regression_tests/surface_source_write/case-e02/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-e02/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..80615285332359f6d38365cce0cffbbfba1ba116 GIT binary patch literal 33344 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 literal 0 HcmV?d00001 diff --git a/tests/regression_tests/surface_source_write/case-e03/inputs_true.dat b/tests/regression_tests/surface_source_write/case-e03/inputs_true.dat new file mode 100644 index 000000000..a3421298b --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-e03/inputs_true.dat @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + eigenvalue + 100 + 5 + 1 + + + -2.0 -2.0 -2.0 2.0 2.0 2.0 + + + + 4 5 6 7 8 9 + 300 + 3 + + 1 + + diff --git a/tests/regression_tests/surface_source_write/case-e03/results_true.dat b/tests/regression_tests/surface_source_write/case-e03/results_true.dat new file mode 100644 index 000000000..d793a7e42 --- /dev/null +++ b/tests/regression_tests/surface_source_write/case-e03/results_true.dat @@ -0,0 +1,2 @@ +k-combined: +4.752377E-02 6.773395E-03 diff --git a/tests/regression_tests/surface_source_write/case-e03/surface_source_true.h5 b/tests/regression_tests/surface_source_write/case-e03/surface_source_true.h5 new file mode 100644 index 0000000000000000000000000000000000000000..becc9254a3f1c326d78c58a23e0be68087b3b5d2 GIT binary patch literal 33344 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