From 094eb958c1c110f77e7cc96c9d9136d88a5bdf7f Mon Sep 17 00:00:00 2001 From: zoeprieto <101403129+zoeprieto@users.noreply.github.com> Date: Wed, 22 Mar 2023 12:44:56 -0300 Subject: [PATCH 001/959] Add support for ncrystal materials --- openmc/plotter.py | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/openmc/plotter.py b/openmc/plotter.py index e2d18d085..9a939edc9 100644 --- a/openmc/plotter.py +++ b/openmc/plotter.py @@ -227,7 +227,7 @@ def plot_xs(this, types, divisor_types=None, temperature=294., data_type=None, def calculate_cexs(this, data_type, types, temperature=294., sab_name=None, - cross_sections=None, enrichment=None): + cross_sections=None, enrichment=None, ncrystal_cfg=None): """Calculates continuous-energy cross sections of a requested type. Parameters @@ -274,7 +274,8 @@ def calculate_cexs(this, data_type, types, temperature=294., sab_name=None, else: nuc = this energy_grid, xs = _calculate_cexs_nuclide(nuc, types, temperature, - sab_name, cross_sections) + sab_name, cross_sections, + ncrystal_cfg) # Convert xs (Iterable of Callable) to a grid of cross section values # calculated on the points in energy_grid for consistency with the # element and material functions. @@ -300,7 +301,7 @@ def calculate_cexs(this, data_type, types, temperature=294., sab_name=None, def _calculate_cexs_nuclide(this, types, temperature=294., sab_name=None, - cross_sections=None): + cross_sections=None, ncrystal_cfg=None): """Calculates continuous-energy cross sections of a requested type. Parameters @@ -438,6 +439,19 @@ def _calculate_cexs_nuclide(this, types, temperature=294., sab_name=None, [sab_sum, nuc[mt].xs[nucT]], [sab_Emax]) funcs.append(pw_funcs) + elif ncrystal_cfg: + import NCrystal + nc_scatter = NCrystal.createScatter(ncrystal_cfg) + nc_func = nc_scatter.crossSectionNonOriented + nc_emax = 5 # eV # this should be obtained from NCRYSTAL_MAX_ENERGY + energy_grid = np.union1d(np.geomspace(min(energy_grid), + 1.1*nc_emax, + 1000),energy_grid) # NCrystal does not have + # an intrinsic energy grid + pw_funcs = openmc.data.Regions1D( + [nc_func, nuc[mt].xs[nucT]], + [nc_emax]) + funcs.append(pw_funcs) else: funcs.append(nuc[mt].xs[nucT]) elif mt in nuc: @@ -540,6 +554,7 @@ def _calculate_cexs_elem_mat(this, types, temperature=294., # Load the library library = openmc.data.DataLibrary.from_xml(cross_sections) + ncrystal_cfg = None if isinstance(this, openmc.Material): # Expand elements in to nuclides with atomic densities nuc_fractions = this.get_nuclide_atom_densities() @@ -547,6 +562,8 @@ def _calculate_cexs_elem_mat(this, types, temperature=294., # with a common nuclides format between openmc.Material and # openmc.Element objects nuclides = {nuclide: nuclide for nuclide in nuc_fractions} + # Add NCrystal cfg string if it exists + ncrystal_cfg = this.ncrystal_cfg else: # Expand elements in to nuclides with atomic densities nuclides = this.expand(1., 'ao', enrichment=enrichment, @@ -584,7 +601,7 @@ def _calculate_cexs_elem_mat(this, types, temperature=294., nuc = nuclide[1] sab_tab = sabs[name] temp_E, temp_xs = calculate_cexs(nuc, 'nuclide', types, T, sab_tab, - cross_sections) + cross_sections, ncrystal_cfg=ncrystal_cfg) E.append(temp_E) # Since the energy grids are different, store the cross sections as # a tabulated function so they can be calculated on any grid needed. From e41ae3604ea6a7448219be7ae764337ac0043edc Mon Sep 17 00:00:00 2001 From: aprilnovak Date: Mon, 27 Mar 2023 18:36:49 -0500 Subject: [PATCH 002/959] Clone material. Refs #2442 --- include/openmc/material.h | 3 +++ src/material.cpp | 31 +++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) diff --git a/include/openmc/material.h b/include/openmc/material.h index 8db9bb628..36a6acf93 100644 --- a/include/openmc/material.h +++ b/include/openmc/material.h @@ -90,6 +90,9 @@ public: void set_densities( const vector& name, const vector& density); + //! Clone the material by deep-copying all members + void clone(); + //---------------------------------------------------------------------------- // Accessors diff --git a/src/material.cpp b/src/material.cpp index 74a8d7e35..ec82a7eea 100644 --- a/src/material.cpp +++ b/src/material.cpp @@ -353,6 +353,37 @@ Material::~Material() model::material_map.erase(id_); } +void Material::clone() +{ + std::unique_ptr mat = std::make_unique(); + mat->index_ = model::materials.size(); + mat->set_id(C_NONE); + + // set all other parameters to whatever the calling Material has + mat->name_ = name_; + mat->nuclide_ = nuclide_; + mat->element_ = element_; + mat->ncrystal_mat_ = ncrystal_mat_; + mat->atom_density_ = atom_density_; + mat->density_ = density_; + mat->density_gpcc_ = density_gpcc_; + mat->volume_ = volume_; + mat->fissionable_ = fissionable_; + mat->depletable_ = depletable_; + mat->p0_ = p0_; + mat->mat_nuclide_index_ = mat_nuclide_index_; + mat->thermal_tables_ = thermal_tables_; + mat->temperature_ = temperature_; + + if (ttb_) + { + std::unique_ptr ptr2{new Bremsstrahlung{*ttb_}}; + mat->ttb_ = std::move(ptr2); + } + + model::materials.push_back(std::move(mat)); +} + void Material::finalize() { // Set fissionable if any nuclide is fissionable From a44c1f89de907292863b47ecdc62b10cb6685d40 Mon Sep 17 00:00:00 2001 From: aprilnovak Date: Mon, 27 Mar 2023 19:21:30 -0500 Subject: [PATCH 003/959] Address review comments. Refs #2442 --- src/material.cpp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/material.cpp b/src/material.cpp index ec82a7eea..165a5c2e7 100644 --- a/src/material.cpp +++ b/src/material.cpp @@ -353,7 +353,7 @@ Material::~Material() model::material_map.erase(id_); } -void Material::clone() +Material & Material::clone() { std::unique_ptr mat = std::make_unique(); mat->index_ = model::materials.size(); @@ -376,12 +376,10 @@ void Material::clone() mat->temperature_ = temperature_; if (ttb_) - { - std::unique_ptr ptr2{new Bremsstrahlung{*ttb_}}; - mat->ttb_ = std::move(ptr2); - } + mat->ttb_ = std::make_unique(*ttb_); model::materials.push_back(std::move(mat)); + return *mat; } void Material::finalize() From fa222a4b314dac399d471fd2016e839a9c98549a Mon Sep 17 00:00:00 2001 From: aprilnovak Date: Mon, 27 Mar 2023 19:23:04 -0500 Subject: [PATCH 004/959] Address review comments. --- include/openmc/material.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/openmc/material.h b/include/openmc/material.h index 36a6acf93..36d7c34c6 100644 --- a/include/openmc/material.h +++ b/include/openmc/material.h @@ -91,7 +91,7 @@ public: const vector& name, const vector& density); //! Clone the material by deep-copying all members - void clone(); + Material & clone(); //---------------------------------------------------------------------------- // Accessors From b84a021c58623e8198cf315c6993e64e3b051613 Mon Sep 17 00:00:00 2001 From: aprilnovak Date: Tue, 28 Mar 2023 13:50:02 -0500 Subject: [PATCH 005/959] Improve documentation. Refs #2442 --- include/openmc/material.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/include/openmc/material.h b/include/openmc/material.h index 36d7c34c6..deaee2469 100644 --- a/include/openmc/material.h +++ b/include/openmc/material.h @@ -90,7 +90,10 @@ public: void set_densities( const vector& name, const vector& density); - //! Clone the material by deep-copying all members + //! Clone the material by deep-copying all members, except for the ID, + // which will get auto-assigned to the next available ID. After creating + // the new material, it is added to openmc::model::materials. + //! \return reference to the cloned material Material & clone(); //---------------------------------------------------------------------------- From ca061bc7e5ecad80ca074070438ebeab9b791b0b Mon Sep 17 00:00:00 2001 From: aprilnovak Date: Tue, 28 Mar 2023 19:20:49 -0500 Subject: [PATCH 006/959] Return non-null. --- src/material.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/material.cpp b/src/material.cpp index 165a5c2e7..092055aa1 100644 --- a/src/material.cpp +++ b/src/material.cpp @@ -379,7 +379,7 @@ Material & Material::clone() mat->ttb_ = std::make_unique(*ttb_); model::materials.push_back(std::move(mat)); - return *mat; + return *model::materials.back(); } void Material::finalize() From c3fdf4edd2ee6dc7d9ea2a9e5c48c3d0efb670f4 Mon Sep 17 00:00:00 2001 From: aprilnovak Date: Wed, 29 Mar 2023 14:40:37 -0500 Subject: [PATCH 007/959] Group openmc::model lines together. Refs #2442 --- src/material.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/material.cpp b/src/material.cpp index 092055aa1..82dd0d4d9 100644 --- a/src/material.cpp +++ b/src/material.cpp @@ -356,8 +356,6 @@ Material::~Material() Material & Material::clone() { std::unique_ptr mat = std::make_unique(); - mat->index_ = model::materials.size(); - mat->set_id(C_NONE); // set all other parameters to whatever the calling Material has mat->name_ = name_; @@ -378,6 +376,8 @@ Material & Material::clone() if (ttb_) mat->ttb_ = std::make_unique(*ttb_); + mat->index_ = model::materials.size(); + mat->set_id(C_NONE); model::materials.push_back(std::move(mat)); return *model::materials.back(); } From 5fcb7208dfe9316407a9598e7aff5c498f218cd6 Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Wed, 29 Mar 2023 14:41:03 -0500 Subject: [PATCH 008/959] Change version number to 0.13.4-dev --- CMakeLists.txt | 2 +- docs/source/conf.py | 2 +- include/openmc/version.h.in | 2 +- openmc/__init__.py | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0dcaa6fb3..866050a98 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,7 +4,7 @@ project(openmc C CXX) # Set version numbers set(OPENMC_VERSION_MAJOR 0) set(OPENMC_VERSION_MINOR 13) -set(OPENMC_VERSION_RELEASE 3) +set(OPENMC_VERSION_RELEASE 4) set(OPENMC_VERSION ${OPENMC_VERSION_MAJOR}.${OPENMC_VERSION_MINOR}.${OPENMC_VERSION_RELEASE}) configure_file(include/openmc/version.h.in "${CMAKE_BINARY_DIR}/include/openmc/version.h" @ONLY) diff --git a/docs/source/conf.py b/docs/source/conf.py index 988e626cf..8dbbfc6d4 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -71,7 +71,7 @@ copyright = '2011-2023, Massachusetts Institute of Technology, UChicago Argonne # The short X.Y version. version = "0.13" # The full version, including alpha/beta/rc tags. -release = "0.13.3" +release = "0.13.4" # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/include/openmc/version.h.in b/include/openmc/version.h.in index a518e0d63..e1c2b0541 100644 --- a/include/openmc/version.h.in +++ b/include/openmc/version.h.in @@ -10,7 +10,7 @@ namespace openmc { constexpr int VERSION_MAJOR {@OPENMC_VERSION_MAJOR@}; constexpr int VERSION_MINOR {@OPENMC_VERSION_MINOR@}; constexpr int VERSION_RELEASE {@OPENMC_VERSION_RELEASE@}; -constexpr bool VERSION_DEV {false}; +constexpr bool VERSION_DEV {true}; constexpr std::array VERSION {VERSION_MAJOR, VERSION_MINOR, VERSION_RELEASE}; // clang-format on diff --git a/openmc/__init__.py b/openmc/__init__.py index f94cd038f..ac9e02e16 100644 --- a/openmc/__init__.py +++ b/openmc/__init__.py @@ -38,4 +38,4 @@ from .config import * from openmc.model import rectangular_prism, hexagonal_prism, Model -__version__ = '0.13.3' +__version__ = '0.13.4-dev' From 9ebacff23a1d0d1a38878c40ebe8ab819c7b1b4c Mon Sep 17 00:00:00 2001 From: zoeprieto <101403129+zoeprieto@users.noreply.github.com> Date: Wed, 29 Mar 2023 16:56:12 -0300 Subject: [PATCH 009/959] Update docstrings Added description of ncrystal_cfg --- openmc/plotter.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/openmc/plotter.py b/openmc/plotter.py index 13cd69b40..0362a8d17 100644 --- a/openmc/plotter.py +++ b/openmc/plotter.py @@ -240,6 +240,8 @@ def calculate_cexs(this, types, temperature=294., sab_name=None, Enrichment for U235 in weight percent. For example, input 4.95 for 4.95 weight percent enriched U. Default is None (natural composition). + ncrystal_cfg : str, optional + Configuration string for NCrystal material. Returns ------- @@ -304,6 +306,8 @@ def _calculate_cexs_nuclide(this, types, temperature=294., sab_name=None, Name of S(a,b) library to apply to MT=2 data when applicable. cross_sections : str, optional Location of cross_sections.xml file. Default is None. + ncrystal_cfg : str, optional + Configuration string for NCrystal material. Returns ------- From 2172907bcfa8ac7463b67c000ac3056b1ca92ec6 Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Fri, 31 Mar 2023 13:46:42 -0400 Subject: [PATCH 010/959] refactor particle source import/export --- include/openmc/file_utils.h | 26 +++++ include/openmc/mcpl_interface.h | 18 +++- include/openmc/message_passing.h | 16 +++ include/openmc/shared_array.h | 6 ++ include/openmc/state_point.h | 27 ++++- src/mcpl_interface.cpp | 55 ++++------ src/message_passing.cpp | 23 ++++ src/output.cpp | 10 ++ src/simulation.cpp | 34 ++++-- src/source.cpp | 2 +- src/state_point.cpp | 128 ++++++++++------------- tests/cpp_unit_tests/CMakeLists.txt | 1 + tests/cpp_unit_tests/test_file_utils.cpp | 28 +++++ 13 files changed, 248 insertions(+), 126 deletions(-) create mode 100644 tests/cpp_unit_tests/test_file_utils.cpp diff --git a/include/openmc/file_utils.h b/include/openmc/file_utils.h index 9612896be..5604e3230 100644 --- a/include/openmc/file_utils.h +++ b/include/openmc/file_utils.h @@ -1,6 +1,8 @@ #ifndef OPENMC_FILE_UTILS_H #define OPENMC_FILE_UTILS_H +#include // any_of +#include // for isalpha #include // for ifstream #include #include @@ -33,6 +35,30 @@ inline bool file_exists(const std::string& filename) return s.good(); } +// Gets the file extension of whatever string is passed in. This is defined as +// a sequence of strictly alphanumeric characters which follow the last period, +// i.e. at least one alphabet character is present, and zero or more numbers. +// If such a sequence of characters is not found, an empty string is returned. +inline std::string get_file_extension(const std::string& filename) +{ + // check that at least one letter is present + const std::string::size_type last_period_pos = filename.find_last_of('.'); + + // no file extension + if (last_period_pos == std::string::npos) + return ""; + + const std::string ending = filename.substr(last_period_pos + 1); + + // check that at least one character is present. + const bool has_alpha = std::any_of(ending.begin(), ending.end(), + [](char x) { return static_cast(std::isalpha(x)); }); + if (has_alpha) + return ending; + else + return ""; +} + } // namespace openmc #endif // OPENMC_FILE_UTILS_H diff --git a/include/openmc/mcpl_interface.h b/include/openmc/mcpl_interface.h index 64f15c13a..ec2c7ac35 100644 --- a/include/openmc/mcpl_interface.h +++ b/include/openmc/mcpl_interface.h @@ -4,6 +4,8 @@ #include "openmc/particle_data.h" #include "openmc/vector.h" +#include + #include namespace openmc { @@ -26,11 +28,17 @@ vector mcpl_source_sites(std::string path); //! Write an MCPL source file // -//! \param[in] filename Path to MCPL file -//! \param[in] surf_source_bank Whether to use the surface source bank -void write_mcpl_source_point( - const char* filename, bool surf_source_bank = false); - +//! \param[in] filename Path to MCPL file +//! \param[in] source_bank Vector of SourceSites to write to file for this +//! MPI rank +//! \param[in] bank_indx Pointer to vector of site index ranges over all +//! MPI ranks, allowed to leave this argument alone +//! or pass a nullptr if not running in MPI mode. +//! The option of passing a nullptr has been left +//! for developers to experiment with serial code +//! before writing the fully MPI-parallel version. +void write_mcpl_source_point(const char* filename, + gsl::span source_bank, vector const& bank_index); } // namespace openmc #endif // OPENMC_MCPL_INTERFACE_H diff --git a/include/openmc/message_passing.h b/include/openmc/message_passing.h index b02d2938f..abd6f68b0 100644 --- a/include/openmc/message_passing.h +++ b/include/openmc/message_passing.h @@ -1,10 +1,14 @@ #ifndef OPENMC_MESSAGE_PASSING_H #define OPENMC_MESSAGE_PASSING_H +#include + #ifdef OPENMC_MPI #include #endif +#include "openmc/vector.h" + namespace openmc { namespace mpi { @@ -17,6 +21,18 @@ extern MPI_Datatype source_site; extern MPI_Comm intracomm; #endif +// Calculates global indices of the bank particles +// across all ranks using a parallel scan. This is used to write +// the surface source file in parallel runs. It will probably +// be used in the future for other types of bank like particles +// in flight used to kick off transient simulations. +// +// More abstractly, this just takes a number from each MPI rank, +// and returns a vector which is the exclusive parallel scan across +// all of those numbers, having a length of the number of MPI ranks +// plus one. +vector calculate_parallel_index_vector(const int64_t size); + } // namespace mpi } // namespace openmc diff --git a/include/openmc/shared_array.h b/include/openmc/shared_array.h index 6fee29b82..676481296 100644 --- a/include/openmc/shared_array.h +++ b/include/openmc/shared_array.h @@ -115,6 +115,12 @@ public: T* data() { return data_.get(); } const T* data() const { return data_.get(); } + //! Classic iterators + T* begin() { return data_.get(); } + const T* cbegin() const { return data_.get(); } + T* end() { return data_.get() + size_; } + const T* cend() const { return data_.get() + size_; } + private: //========================================================================== // Data members diff --git a/include/openmc/state_point.h b/include/openmc/state_point.h index 5ada2bf88..ca4b293eb 100644 --- a/include/openmc/state_point.h +++ b/include/openmc/state_point.h @@ -3,18 +3,39 @@ #include +#include + #include "hdf5.h" #include "openmc/capi.h" #include "openmc/particle.h" +#include "openmc/shared_array.h" #include "openmc/vector.h" namespace openmc { void load_state_point(); -vector calculate_surf_source_size(); -void write_source_point(const char* filename, bool surf_source_bank = false); -void write_source_bank(hid_t group_id, bool surf_source_bank); + +// By passing in a filename, source bank, and list of source indices +// on each MPI rank, this writes an HDF5 file which contains that +// information which can later be read in by read_source_bank +// (defined below). If you're writing code to write out a new kind +// of particle bank, this function is the one you want to use! +// +// For example, this is used to write both the surface source sites +// or fission source sites for eigenvalue continuation runs. +// +// This function ends up calling write_source_bank, and is responsible +// for opening the file to be written to and controlling whether the +// write is done in parallel (if compiled with parallel HDF5). +void write_source_point(const char* filename, gsl::span source_bank, + vector const& bank_index); + +// This appends a source bank specification to an HDF5 file +// that's already open. It is used internally by write_source_point. +void write_source_bank(hid_t group_id, gsl::span source_bank, + vector const& bank_index); + void read_source_bank( hid_t group_id, vector& sites, bool distribute); void write_tally_results_nr(hid_t file_id); diff --git a/src/mcpl_interface.cpp b/src/mcpl_interface.cpp index a38891478..b64531eed 100644 --- a/src/mcpl_interface.cpp +++ b/src/mcpl_interface.cpp @@ -2,6 +2,7 @@ #include "openmc/bank.h" #include "openmc/error.h" +#include "openmc/file_utils.h" #include "openmc/message_passing.h" #include "openmc/settings.h" #include "openmc/simulation.h" @@ -110,37 +111,18 @@ vector mcpl_source_sites(std::string path) //============================================================================== #ifdef OPENMC_MCPL -void write_mcpl_source_bank(mcpl_outfile_t file_id, bool surf_source_bank) +void write_mcpl_source_bank(mcpl_outfile_t file_id, + gsl::span source_bank, vector const& bank_index) { int64_t dims_size = settings::n_particles; int64_t count_size = simulation::work_per_rank; - // Set vectors for source bank and starting bank index of each process - vector* bank_index = &simulation::work_index; - vector* source_bank = &simulation::source_bank; - vector surf_source_index_vector; - vector surf_source_bank_vector; - - if (surf_source_bank) { - surf_source_index_vector = calculate_surf_source_size(); - dims_size = surf_source_index_vector[mpi::n_procs]; - count_size = simulation::surf_source_bank.size(); - - bank_index = &surf_source_index_vector; - - // Copy data in a SharedArray into a vector. - surf_source_bank_vector.resize(count_size); - surf_source_bank_vector.assign(simulation::surf_source_bank.data(), - simulation::surf_source_bank.data() + count_size); - source_bank = &surf_source_bank_vector; - } - if (mpi::master) { // Particles are writeen to disk from the master node only // Save source bank sites since the array is overwritten below #ifdef OPENMC_MPI - vector temp_source {source_bank->begin(), source_bank->end()}; + vector temp_source {source_bank.begin(), source_bank.end()}; #endif // loop over the other nodes and receive data - then write those. @@ -151,11 +133,11 @@ void write_mcpl_source_bank(mcpl_outfile_t file_id, bool surf_source_bank) #ifdef OPENMC_MPI if (i > 0) - MPI_Recv(source_bank->data(), count[0], mpi::source_site, i, i, + MPI_Recv(source_bank.data(), count[0], mpi::source_site, i, i, mpi::intracomm, MPI_STATUS_IGNORE); #endif // now write the source_bank data again. - for (const auto& site : *source_bank) { + for (const auto& site : source_bank) { // particle is now at the iterator // write it to the mcpl-file mcpl_particle_t p; @@ -194,11 +176,11 @@ void write_mcpl_source_bank(mcpl_outfile_t file_id, bool surf_source_bank) } #ifdef OPENMC_MPI // Restore state of source bank - std::copy(temp_source.begin(), temp_source.end(), source_bank->begin()); + std::copy(temp_source.begin(), temp_source.end(), source_bank.begin()); #endif } else { #ifdef OPENMC_MPI - MPI_Send(source_bank->data(), count_size, mpi::source_site, 0, mpi::rank, + MPI_Send(source_bank.data(), count_size, mpi::source_site, 0, mpi::rank, mpi::intracomm); #endif } @@ -207,17 +189,16 @@ void write_mcpl_source_bank(mcpl_outfile_t file_id, bool surf_source_bank) //============================================================================== -void write_mcpl_source_point(const char* filename, bool surf_source_bank) +void write_mcpl_source_point(const char* filename, + gsl::span source_bank, vector const& bank_index) { - std::string filename_; - if (filename) { - filename_ = filename; - } else { - // Determine width for zero padding - int w = std::to_string(settings::n_max_batches).size(); - - filename_ = fmt::format("{0}source.{1:0{2}}.mcpl", settings::path_output, - simulation::current_batch, w); + std::string filename_(filename); + const auto extension = get_file_extension(filename_); + if (extension == "") { + filename_.append(".mcpl"); + } else if (extension != "mcpl") { + fatal_error("write_mcpl_source_point was passed an incorrect file " + "extension. Must either pass nothing or .mcpl"); } #ifdef OPENMC_MCPL @@ -236,7 +217,7 @@ void write_mcpl_source_point(const char* filename, bool surf_source_bank) mcpl_hdr_set_srcname(file_id, line.c_str()); } - write_mcpl_source_bank(file_id, surf_source_bank); + write_mcpl_source_bank(file_id, source_bank, bank_index); if (mpi::master) { mcpl_close_outfile(file_id); diff --git a/src/message_passing.cpp b/src/message_passing.cpp index f87782083..fa9036c71 100644 --- a/src/message_passing.cpp +++ b/src/message_passing.cpp @@ -17,6 +17,29 @@ extern "C" bool openmc_master() return mpi::master; } +vector calculate_parallel_index_vector(const int64_t size) +{ + vector result; + result.reserve(n_procs + 1); + +#ifdef OPENMC_MPI + result.resize(n_procs); + vector bank_size(n_procs); + + // Populate the result with cumulative sum of the number of + // surface source banks per process + MPI_Scan(&size, bank_size.data(), 1, MPI_INT64_T, MPI_SUM, intracomm); + MPI_Allgather( + bank_size.data(), 1, MPI_INT64_T, result.data(), 1, MPI_INT64_T, intracomm); + result.insert(result.begin(), 0); +#else + result.push_back(0); + result.push_back(size); +#endif + + return result; +} + } // namespace mpi } // namespace openmc diff --git a/src/output.cpp b/src/output.cpp index ae0907d02..53f5b647f 100644 --- a/src/output.cpp +++ b/src/output.cpp @@ -360,6 +360,8 @@ void print_build_info() std::string png(n); std::string profiling(n); std::string coverage(n); + std::string mcpl(n); + std::string ncrystal(n); #ifdef PHDF5 phdf5 = y; @@ -382,6 +384,12 @@ void print_build_info() #ifdef COVERAGEBUILD coverage = y; #endif +#ifdef NCRYSTAL + ncrystal = y; +#endif +#ifdef OPENMC_MCPL + mcpl = y; +#endif // Wraps macro variables in quotes #define STRINGIFY(x) STRINGIFY2(x) @@ -396,6 +404,8 @@ void print_build_info() fmt::print("PNG support: {}\n", png); fmt::print("DAGMC support: {}\n", dagmc); fmt::print("libMesh support: {}\n", libmesh); + fmt::print("NCrystal support: {}\n", profiling); + fmt::print("MCPL support: {}\n", profiling); fmt::print("Coverage testing: {}\n", coverage); fmt::print("Profiling flags: {}\n", profiling); } diff --git a/src/simulation.cpp b/src/simulation.cpp index 7740c81d8..d46787c28 100644 --- a/src/simulation.cpp +++ b/src/simulation.cpp @@ -392,21 +392,32 @@ void finalize_batch() // Write out a separate source point if it's been specified for this batch if (contains(settings::sourcepoint_batch, simulation::current_batch) && settings::source_write && settings::source_separate) { + + // Determine width for zero padding + int w = std::to_string(settings::n_max_batches).size(); + std::string source_point_filename = fmt::format("{0}source.{1:0{2}}", + settings::path_output, simulation::current_batch, w); + gsl::span bankspan(simulation::source_bank); if (settings::source_mcpl_write) { - write_mcpl_source_point(nullptr); + write_mcpl_source_point( + source_point_filename.c_str(), bankspan, simulation::work_index); } else { - write_source_point(nullptr); + write_source_point( + source_point_filename.c_str(), bankspan, simulation::work_index); } } // Write a continously-overwritten source point if requested. if (settings::source_latest) { + + // note: correct file extension appended automatically + auto filename = settings::path_output + "source"; + gsl::span bankspan(simulation::source_bank); if (settings::source_mcpl_write) { - auto filename = settings::path_output + "source.mcpl"; - write_mcpl_source_point(filename.c_str()); + write_mcpl_source_point( + filename.c_str(), bankspan, simulation::work_index); } else { - auto filename = settings::path_output + "source.h5"; - write_source_point(filename.c_str()); + write_source_point(filename.c_str(), bankspan, simulation::work_index); } } } @@ -414,12 +425,15 @@ void finalize_batch() // Write out surface source if requested. if (settings::surf_source_write && simulation::current_batch == settings::n_batches) { + auto filename = settings::path_output + "surface_source"; + auto surf_work_index = + mpi::calculate_parallel_index_vector(simulation::surf_source_bank.size()); + gsl::span surfbankspan(simulation::surf_source_bank.begin(), + simulation::surf_source_bank.size()); if (settings::surf_mcpl_write) { - auto filename = settings::path_output + "surface_source.mcpl"; - write_mcpl_source_point(filename.c_str(), true); + write_mcpl_source_point(filename.c_str(), surfbankspan, surf_work_index); } else { - auto filename = settings::path_output + "surface_source.h5"; - write_source_point(filename.c_str(), true); + write_source_point(filename.c_str(), surfbankspan, surf_work_index); } } } diff --git a/src/source.cpp b/src/source.cpp index 5862a41e2..163c85676 100644 --- a/src/source.cpp +++ b/src/source.cpp @@ -403,7 +403,7 @@ void initialize_source() write_message("Writing out initial source...", 5); std::string filename = settings::path_output + "initial_source.h5"; hid_t file_id = file_open(filename, 'w', true); - write_source_bank(file_id, false); + write_source_bank(file_id, simulation::source_bank, simulation::work_index); file_close(file_id); } } diff --git a/src/state_point.cpp b/src/state_point.cpp index dfd3d381b..10bcd9365 100644 --- a/src/state_point.cpp +++ b/src/state_point.cpp @@ -13,6 +13,7 @@ #include "openmc/constants.h" #include "openmc/eigenvalue.h" #include "openmc/error.h" +#include "openmc/file_utils.h" #include "openmc/hdf5_interface.h" #include "openmc/mesh.h" #include "openmc/message_passing.h" @@ -34,7 +35,8 @@ extern "C" int openmc_statepoint_write(const char* filename, bool* write_source) { simulation::time_statepoint.start(); - // Set the filename + // If a nullptr is passed in, we assume that the user + // wants a default name for this, of the form like output/statepoint.20.h5 std::string filename_; if (filename) { filename_ = filename; @@ -47,6 +49,15 @@ extern "C" int openmc_statepoint_write(const char* filename, bool* write_source) simulation::current_batch, w); } + // If a file name was specified, ensure it has .h5 file extension + const auto extension = get_file_extension(filename_); + if (extension == "") { + filename_.append(".h5"); + } else if (extension != "h5") { + fatal_error("openmc_statepoint_write was passed an incorrect file " + "extension. Must either have no file extension or .h5"); + } + // Determine whether or not to write the source bank bool write_source_ = write_source ? *write_source : true; @@ -316,7 +327,7 @@ extern "C" int openmc_statepoint_write(const char* filename, bool* write_source) if (write_source_) { if (mpi::master || parallel) file_id = file_open(filename_, 'a', true); - write_source_bank(file_id, false); + write_source_bank(file_id, simulation::source_bank, simulation::work_index); if (mpi::master || parallel) file_close(file_id); } @@ -541,31 +552,8 @@ hid_t h5banktype() return banktype; } -vector calculate_surf_source_size() -{ - vector surf_source_index; - surf_source_index.reserve(mpi::n_procs + 1); - -#ifdef OPENMC_MPI - surf_source_index.resize(mpi::n_procs); - vector bank_size(mpi::n_procs); - - // Populate the surf_source_index with cumulative sum of the number of - // surface source banks per process - int64_t size = simulation::surf_source_bank.size(); - MPI_Scan(&size, bank_size.data(), 1, MPI_INT64_T, MPI_SUM, mpi::intracomm); - MPI_Allgather(bank_size.data(), 1, MPI_INT64_T, surf_source_index.data(), 1, - MPI_INT64_T, mpi::intracomm); - surf_source_index.insert(surf_source_index.begin(), 0); -#else - surf_source_index.push_back(0); - surf_source_index.push_back(simulation::surf_source_bank.size()); -#endif - - return surf_source_index; -} - -void write_source_point(const char* filename, bool surf_source_bank) +void write_source_point(const char* filename, gsl::span source_bank, + vector const& bank_index) { // When using parallel HDF5, the file is written to collectively by all // processes. With MPI-only, the file is opened and written by the master @@ -577,58 +565,59 @@ void write_source_point(const char* filename, bool surf_source_bank) bool parallel = false; #endif - std::string filename_; - if (filename) { - filename_ = filename; - } else { - // Determine width for zero padding - int w = std::to_string(settings::n_max_batches).size(); + if (!filename) + fatal_error("write_source_point filename needs a nonempty name."); - filename_ = fmt::format("{0}source.{1:0{2}}.h5", settings::path_output, - simulation::current_batch, w); + std::string filename_(filename); + const auto extension = get_file_extension(filename_); + if (extension == "") { + filename_.append(".h5"); + } else if (extension != "h5") { + fatal_error("openmc_source_point was passed an incorrect file " + "extension. Must either have no file extension or .h5"); } hid_t file_id; if (mpi::master || parallel) { - file_id = file_open(filename_, 'w', true); + file_id = file_open(filename_.c_str(), 'w', true); write_attribute(file_id, "filetype", "source"); } // Get pointer to source bank and write to file - write_source_bank(file_id, surf_source_bank); + write_source_bank(file_id, source_bank, bank_index); if (mpi::master || parallel) file_close(file_id); } -void write_source_bank(hid_t group_id, bool surf_source_bank) +void write_source_bank(hid_t group_id, gsl::span source_bank, + vector const& bank_index) { hid_t banktype = h5banktype(); // Set total and individual process dataspace sizes for source bank - int64_t dims_size = settings::n_particles; - int64_t count_size = simulation::work_per_rank; + // TODO: are these correct? + // the old code was + // + // int64_t dims_size = settings::n_particles; + // int64_t count_size = simulation::work_per_rank; + // + // but that doesn't make sense! The count on a rank is not + // necessarily equal to work_per_rank. For the case of the + // fission source bank, that's true, but for surface source + // creation, there may be a different number of particles + // on each rank. + // + // Hence, I have changed count_size to be the number + // on this rank rather than work_per_rank. Similarly, + // dims_size used to be n_particles, but for surface sources, + // we are not guaranteed to create n_particles at the surface. + // As a result, I've changed this to be the total size of + // the bank across all ranks, which maintains the correct + // behavior for fission bank outputs. - // Set vectors for source bank and starting bank index of each process - vector* bank_index = &simulation::work_index; - vector* source_bank = &simulation::source_bank; - vector surf_source_index_vector; - vector surf_source_bank_vector; - - // Reset dataspace sizes and vectors for surface source bank - if (surf_source_bank) { - surf_source_index_vector = calculate_surf_source_size(); - dims_size = surf_source_index_vector[mpi::n_procs]; - count_size = simulation::surf_source_bank.size(); - - bank_index = &surf_source_index_vector; - - // Copy data in a SharedArray into a vector. - surf_source_bank_vector.resize(count_size); - surf_source_bank_vector.assign(simulation::surf_source_bank.data(), - simulation::surf_source_bank.data() + count_size); - source_bank = &surf_source_bank_vector; - } + int64_t dims_size = bank_index.back(); + int64_t count_size = bank_index[mpi::rank + 1] - bank_index[mpi::rank]; #ifdef PHDF5 // Set size of total dataspace for all procs and rank @@ -642,7 +631,7 @@ void write_source_bank(hid_t group_id, bool surf_source_bank) hid_t memspace = H5Screate_simple(1, count, nullptr); // Select hyperslab for this dataspace - hsize_t start[] {static_cast((*bank_index)[mpi::rank])}; + hsize_t start[] {static_cast(bank_index[mpi::rank])}; H5Sselect_hyperslab(dspace, H5S_SELECT_SET, start, nullptr, count, nullptr); // Set up the property list for parallel writing @@ -650,7 +639,7 @@ void write_source_bank(hid_t group_id, bool surf_source_bank) H5Pset_dxpl_mpio(plist, H5FD_MPIO_COLLECTIVE); // Write data to file in parallel - H5Dwrite(dset, banktype, memspace, dspace, plist, source_bank->data()); + H5Dwrite(dset, banktype, memspace, dspace, plist, source_bank.data()); // Free resources H5Sclose(dspace); @@ -669,31 +658,30 @@ void write_source_bank(hid_t group_id, bool surf_source_bank) // Save source bank sites since the array is overwritten below #ifdef OPENMC_MPI - vector temp_source {source_bank->begin(), source_bank->end()}; + vector temp_source {source_bank.begin(), source_bank.end()}; #endif for (int i = 0; i < mpi::n_procs; ++i) { // Create memory space - hsize_t count[] { - static_cast((*bank_index)[i + 1] - (*bank_index)[i])}; + hsize_t count[] {static_cast(bank_index[i + 1] - bank_index[i])}; hid_t memspace = H5Screate_simple(1, count, nullptr); #ifdef OPENMC_MPI // Receive source sites from other processes if (i > 0) - MPI_Recv(source_bank->data(), count[0], mpi::source_site, i, i, + MPI_Recv(source_bank.data(), count[0], mpi::source_site, i, i, mpi::intracomm, MPI_STATUS_IGNORE); #endif // Select hyperslab for this dataspace dspace = H5Dget_space(dset); - hsize_t start[] {static_cast((*bank_index)[i])}; + hsize_t start[] {static_cast(bank_index[i])}; H5Sselect_hyperslab( dspace, H5S_SELECT_SET, start, nullptr, count, nullptr); // Write data to hyperslab H5Dwrite( - dset, banktype, memspace, dspace, H5P_DEFAULT, (*source_bank).data()); + dset, banktype, memspace, dspace, H5P_DEFAULT, source_bank.data()); H5Sclose(memspace); H5Sclose(dspace); @@ -704,11 +692,11 @@ void write_source_bank(hid_t group_id, bool surf_source_bank) #ifdef OPENMC_MPI // Restore state of source bank - std::copy(temp_source.begin(), temp_source.end(), source_bank->begin()); + std::copy(temp_source.begin(), temp_source.end(), source_bank.begin()); #endif } else { #ifdef OPENMC_MPI - MPI_Send(source_bank->data(), count_size, mpi::source_site, 0, mpi::rank, + MPI_Send(source_bank.data(), count_size, mpi::source_site, 0, mpi::rank, mpi::intracomm); #endif } diff --git a/tests/cpp_unit_tests/CMakeLists.txt b/tests/cpp_unit_tests/CMakeLists.txt index 3d48545b4..e017b8700 100644 --- a/tests/cpp_unit_tests/CMakeLists.txt +++ b/tests/cpp_unit_tests/CMakeLists.txt @@ -1,5 +1,6 @@ set(TEST_NAMES test_distribution + test_file_utils # Add additional unit test files here ) diff --git a/tests/cpp_unit_tests/test_file_utils.cpp b/tests/cpp_unit_tests/test_file_utils.cpp new file mode 100644 index 000000000..23222f639 --- /dev/null +++ b/tests/cpp_unit_tests/test_file_utils.cpp @@ -0,0 +1,28 @@ +#include "openmc/file_utils.h" +#include + +using namespace openmc; + +TEST_CASE("Test get_file_extension") +{ + REQUIRE(get_file_extension("rememberthealamo.png") == "png"); + REQUIRE(get_file_extension("statepoint.20.h5") == "h5"); + REQUIRE(get_file_extension("wEiRDNaa_ame.h4") == "h4"); + REQUIRE(get_file_extension("has_directory/asdf.20.h5") == "h5"); + REQUIRE(get_file_extension("wasssssup_lol") == ""); + REQUIRE(get_file_extension("has_directory/secret_file") == ""); +} + +TEST_CASE("Test dir_exists") +{ + // not sure how to test this when running on windows? + REQUIRE(dir_exists("/")); + + // if this exists on your system... you deserve for this test to fail + REQUIRE(!dir_exists("/asdfa/asdfasdf/asdgasodgosuihasjkgh/")); +} + +TEST_CASE("Test file_exists") +{ + // TODO make a file test it exists, delete it +} From 30ed6020092768b2dd208e5343c399c2eac13d64 Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Fri, 31 Mar 2023 23:59:04 -0400 Subject: [PATCH 011/959] update documentation --- include/openmc/mcpl_interface.h | 8 +++----- include/openmc/state_point.h | 5 +++++ 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/include/openmc/mcpl_interface.h b/include/openmc/mcpl_interface.h index ec2c7ac35..1f0c94d6d 100644 --- a/include/openmc/mcpl_interface.h +++ b/include/openmc/mcpl_interface.h @@ -32,11 +32,9 @@ vector mcpl_source_sites(std::string path); //! \param[in] source_bank Vector of SourceSites to write to file for this //! MPI rank //! \param[in] bank_indx Pointer to vector of site index ranges over all -//! MPI ranks, allowed to leave this argument alone -//! or pass a nullptr if not running in MPI mode. -//! The option of passing a nullptr has been left -//! for developers to experiment with serial code -//! before writing the fully MPI-parallel version. +//! MPI ranks. This can be computed by calling +//! calculate_parallel_index_vector on +//! source_bank.size(). void write_mcpl_source_point(const char* filename, gsl::span source_bank, vector const& bank_index); } // namespace openmc diff --git a/include/openmc/state_point.h b/include/openmc/state_point.h index ca4b293eb..db1ac2edb 100644 --- a/include/openmc/state_point.h +++ b/include/openmc/state_point.h @@ -28,6 +28,11 @@ void load_state_point(); // This function ends up calling write_source_bank, and is responsible // for opening the file to be written to and controlling whether the // write is done in parallel (if compiled with parallel HDF5). +// +// bank_index is an exclusive parallel scan of the source_bank.size() +// values on each rank, used to create global indexing. This vector +// can be created by calling calculate_parallel_index_vector on +// source_bank.size() if such a vector is not already available. void write_source_point(const char* filename, gsl::span source_bank, vector const& bank_index); From 5a8e1cc988b7d6e7204aa45675ca31316e94988e Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Sat, 1 Apr 2023 00:22:50 -0400 Subject: [PATCH 012/959] fix typo --- src/mcpl_interface.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/mcpl_interface.cpp b/src/mcpl_interface.cpp index b64531eed..64d6046e3 100644 --- a/src/mcpl_interface.cpp +++ b/src/mcpl_interface.cpp @@ -128,8 +128,7 @@ void write_mcpl_source_bank(mcpl_outfile_t file_id, // loop over the other nodes and receive data - then write those. for (int i = 0; i < mpi::n_procs; ++i) { // number of particles for node node i - size_t count[] { - static_cast((*bank_index)[i + 1] - (*bank_index)[i])}; + size_t count[] {static_cast(bank_index[i + 1] - bank_index[i])}; #ifdef OPENMC_MPI if (i > 0) From 95e3f94630f017decf7d5ebc9cd4bcdfd6fb5875 Mon Sep 17 00:00:00 2001 From: Paul Romano Date: Tue, 4 Apr 2023 22:49:11 +0200 Subject: [PATCH 013/959] Implement CruciformPrism composite surface --- docs/source/pythonapi/model.rst | 3 +- openmc/model/surface_composite.py | 74 +++++++++++++++++++++- tests/unit_tests/test_surface_composite.py | 62 ++++++++++++++++++ 3 files changed, 137 insertions(+), 2 deletions(-) diff --git a/docs/source/pythonapi/model.rst b/docs/source/pythonapi/model.rst index cdabee396..c9c6e117a 100644 --- a/docs/source/pythonapi/model.rst +++ b/docs/source/pythonapi/model.rst @@ -24,14 +24,15 @@ Composite Surfaces :nosignatures: :template: myclass.rst + openmc.model.CruciformPrism openmc.model.CylinderSector openmc.model.IsogonalOctagon + openmc.model.Polygon openmc.model.RectangularParallelepiped openmc.model.RightCircularCylinder openmc.model.XConeOneSided openmc.model.YConeOneSided openmc.model.ZConeOneSided - openmc.model.Polygon TRISO Fuel Modeling ------------------- diff --git a/openmc/model/surface_composite.py b/openmc/model/surface_composite.py index 25826723c..6acfdde4a 100644 --- a/openmc/model/surface_composite.py +++ b/openmc/model/surface_composite.py @@ -630,7 +630,7 @@ class ZConeOneSided(CompositeSurface): class Polygon(CompositeSurface): - """Create a polygon composite surface from a path of closed points. + """Polygon formed from a path of closed points. .. versionadded:: 0.13.3 @@ -1079,3 +1079,75 @@ class Polygon(CompositeSurface): disp_vec = distance / costheta * unit_nvec return type(self)(self.points + disp_vec, basis=self.basis) + + +class CruciformPrism(CompositeSurface): + """Generalized cruciform prism + + This surface represents a prism parallel to an axis formed by planes at + multiple distances from the center. Equivalent to the 'gcross' derived + surface in Serpent. + + .. versionadded:: 0.13.4 + + Parameters + ---------- + distances : iterable of float + A monotonically increasing (or decreasing) iterable of distances in [cm] + that form the planes of the generalized cruciform. + center : iterable of float + The center of the prism in the two non-parallel axes (e.g., (x, y) when + axis is 'z') in [cm] + axis : {'x', 'y', 'z'} + Axis to which the prism is parallel + **kwargs + Keyword arguments passed to underlying plane classes + + """ + + def __init__(self, distances, center=(0., 0.), axis='z', **kwargs): + x0, y0 = center + self.distances = distances + + if axis == 'x': + cls_horizontal = openmc.YPlane + cls_vertical = openmc.ZPlane + elif axis == 'y': + cls_horizontal = openmc.XPlane + cls_vertical = openmc.ZPlane + elif axis == 'z': + cls_horizontal = openmc.XPlane + cls_vertical = openmc.YPlane + else: + raise ValueError("axis must be 'x', 'y', or 'z'") + + # Create each planar surface + surfnames = [] + for i, d in enumerate(distances): + setattr(self, f'hmin{i}', cls_horizontal(x0 - d, **kwargs)) + setattr(self, f'hmax{i}', cls_horizontal(x0 + d, **kwargs)) + setattr(self, f'vmin{i}', cls_vertical(y0 - d, **kwargs)) + setattr(self, f'vmax{i}', cls_vertical(y0 + d, **kwargs)) + surfnames.extend([f'hmin{i}', f'hmax{i}', f'vmin{i}', f'vmax{i}']) + + # Set _surfnames to satisfy CompositeSurface protocol + self._surfnames = tuple(surfnames) + + @property + def _surface_names(self): + return self._surfnames + + def __neg__(self): + n = len(self.distances) + regions = [] + for i in range(n): + regions.append( + +getattr(self, f'hmin{i}') & + -getattr(self, f'hmax{i}') & + +getattr(self, f'vmin{n-1-i}') & + -getattr(self, f'vmax{n-1-i}') + ) + return openmc.Union(regions) + + def __pos__(self): + return ~(-self) diff --git a/tests/unit_tests/test_surface_composite.py b/tests/unit_tests/test_surface_composite.py index 3f94893ed..066dd3307 100644 --- a/tests/unit_tests/test_surface_composite.py +++ b/tests/unit_tests/test_surface_composite.py @@ -315,6 +315,7 @@ def test_isogonal_octagon(axis, plane_tb, plane_lr, axis_idx): # Make sure repr works repr(s) + def test_polygon(): # define a 5 pointed star centered on 1, 1 star = np.array([[1. , 2. ], @@ -393,3 +394,64 @@ def test_polygon(): [6.88, 3.02]]) with pytest.raises(ValueError): openmc.model.Polygon(rz_points) + + +@pytest.mark.parametrize("axis", ["x", "y", "z"]) +def test_cruciform_prism(axis): + center = x0, y0 = (3., 4.) + distances = [2., 3., 5.] + s = openmc.model.CruciformPrism(distances, center, axis=axis) + + if axis == 'x': + i1, i2 = 1, 2 + elif axis == 'y': + i1, i2 = 0, 2 + elif axis == 'z': + i1, i2 = 0, 1 + plane_cls = (openmc.XPlane, openmc.YPlane, openmc.ZPlane) + + # Check type of surfaces + for i in range(3): + assert isinstance(getattr(s, f'hmin{i}'), plane_cls[i1]) + assert isinstance(getattr(s, f'hmax{i}'), plane_cls[i1]) + assert isinstance(getattr(s, f'vmin{i}'), plane_cls[i2]) + assert isinstance(getattr(s, f'vmax{i}'), plane_cls[i2]) + + # Make sure boundary condition propagates + s.boundary_type = 'reflective' + for i in range(3): + assert getattr(s, f'hmin{i}').boundary_type == 'reflective' + assert getattr(s, f'hmax{i}').boundary_type == 'reflective' + assert getattr(s, f'vmin{i}').boundary_type == 'reflective' + assert getattr(s, f'vmax{i}').boundary_type == 'reflective' + + # Check bounding box + ll, ur = (+s).bounding_box + assert np.all(np.isinf(ll)) + assert np.all(np.isinf(ur)) + ll, ur = (-s).bounding_box + assert ur[i1] == pytest.approx(x0 + distances[-1]) + assert ur[i2] == pytest.approx(y0 + distances[-1]) + assert ll[i1] == pytest.approx(x0 - distances[-1]) + assert ll[i2] == pytest.approx(y0 - distances[-1]) + + # __contains__ on associated half-spaces + point_pos, point_neg = np.zeros(3), np.zeros(3) + point_pos[i1] = x0 + 3.1 + point_pos[i2] = y0 + 2.05 + point_neg[i1] = x0 + 3.5 + point_neg[i2] = y0 + 1.99 + assert point_pos in +s + assert point_pos not in -s + assert point_neg in -s + assert point_neg not in +s + + # translate method + t = uniform(-5.0, 5.0) + s_t = s.translate((t, t, t)) + ll_t, ur_t = (-s_t).bounding_box + assert ur_t == pytest.approx(ur + t) + assert ll_t == pytest.approx(ll + t) + + # Make sure repr works + repr(s) From e3e659ca834411bd56bb288223f64e7f978575b1 Mon Sep 17 00:00:00 2001 From: stchaker Date: Tue, 4 Apr 2023 16:58:28 -0400 Subject: [PATCH 014/959] avoid python C API segfault on intel mac --- include/openmc/settings.h | 7 ++++++- src/initialize.cpp | 1 + src/settings.cpp | 2 ++ 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/include/openmc/settings.h b/include/openmc/settings.h index 806288efe..9cd2f7c2d 100644 --- a/include/openmc/settings.h +++ b/include/openmc/settings.h @@ -68,7 +68,12 @@ extern std::string path_input; //!< directory where main .xml files resides extern std::string path_output; //!< directory where output files are written extern std::string path_particle_restart; //!< path to a particle restart file extern std::string path_sourcepoint; //!< path to a source file -extern "C" std::string path_statepoint; //!< path to a statepoint file +extern std::string path_statepoint; //!< path to a statepoint file + +// This is required because the c_str() may not be the first thing in +// std::string. Sometimes it is, but it seems libc++ may not be like that +// on some computers, like the intel Mac. +extern "C" char const* path_statepoint_c; //!< C pointer to statepoint file name extern "C" int32_t n_inactive; //!< number of inactive batches extern "C" int32_t max_lost_particles; //!< maximum number of lost particles diff --git a/src/initialize.cpp b/src/initialize.cpp index 6383af64e..da35d4ff6 100644 --- a/src/initialize.cpp +++ b/src/initialize.cpp @@ -193,6 +193,7 @@ int parse_command_line(int argc, char* argv[]) // Set path and flag for type of run if (filetype == "statepoint") { settings::path_statepoint = argv[i]; + settings::path_statepoint_c = settings::path_statepoint.c_str(); settings::restart_run = true; } else if (filetype == "particle restart") { settings::path_particle_restart = argv[i]; diff --git a/src/settings.cpp b/src/settings.cpp index 2f8fbd1d0..cf678d404 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -82,6 +82,8 @@ std::string path_output; std::string path_particle_restart; std::string path_sourcepoint; std::string path_statepoint; +std::string empty_string = ""; +char const* path_statepoint_c {empty_string.c_str()}; int32_t n_inactive {0}; int32_t max_lost_particles {10}; From e2dedf546118684019fe70f191541d260c0e4b8f Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Mon, 13 Dec 2021 14:37:08 -0500 Subject: [PATCH 015/959] move common with projection plot to base class --- include/openmc/plot.h | 54 ++++++++++++++++++++------------- src/plot.cpp | 69 ++++++++++++++++++------------------------- 2 files changed, 61 insertions(+), 62 deletions(-) diff --git a/include/openmc/plot.h b/include/openmc/plot.h index a415b1747..1c2d9e48d 100644 --- a/include/openmc/plot.h +++ b/include/openmc/plot.h @@ -102,7 +102,7 @@ enum class PlotColorBy { cells = 0, mats = 1 }; //=============================================================================== // Plot class //=============================================================================== -class PlotBase { +class SlicePlotBase { public: template T get_map() const; @@ -113,12 +113,13 @@ public: Position width_; //!< Plot width in geometry PlotBasis basis_; //!< Plot basis (XY/XZ/YZ) array pixels_; //!< Plot size in pixels - bool color_overlaps_; //!< Show overlapping cells? - int level_; //!< Plot universe level + bool slice_color_overlaps_; //!< Show overlapping cells? + int slice_level_ {-1}; //!< Plot universe level +private: }; template -T PlotBase::get_map() const +T SlicePlotBase::get_map() const { size_t width = pixels_[0]; @@ -164,7 +165,7 @@ T PlotBase::get_map() const p.r() = xyz; p.u() = dir; p.coord(0).universe = model::root_universe; - int level = level_; + int level = slice_level_; int j {}; #pragma omp for @@ -182,7 +183,7 @@ T PlotBase::get_map() const if (found_cell) { data.set_value(y, x, p, j); } - if (color_overlaps_ && check_cell_overlap(p, false)) { + if (slice_color_overlaps_ && check_cell_overlap(p, false)) { data.set_overlap(y, x); } } // inner for @@ -192,7 +193,31 @@ T PlotBase::get_map() const return data; } -class Plot : public PlotBase { +// Common data and methods between ProjectionPlot and Plot types +class PlotBase { +protected: + void set_id(pugi::xml_node plot_node); + void set_bg_color(pugi::xml_node plot_node); + void set_universe(pugi::xml_node plot_node); + void set_default_colors(pugi::xml_node plot_node); + void set_user_colors(pugi::xml_node plot_node); + void set_overlap_color(pugi::xml_node plot_node); + void set_mask(pugi::xml_node plot_node); + +public: + PlotBase(pugi::xml_node plot_node); + int id_; // Plot ID + int level_; // Universe level to plot + bool color_overlaps_; //!< Show overlapping cells? + PlotColorBy color_by_; // Plot coloring (cell/material) + RGBColor not_found_ {WHITE}; // Plot background color + RGBColor overlap_color_ {RED}; // Plot overlap color + vector colors_; // Plot colors + std::string path_plot_; // Plot output filename +}; + +// Represents either a voxel or pixel plot +class Plot : public SlicePlotBase, public PlotBase { public: // Constructor @@ -200,32 +225,19 @@ public: // Methods private: - void set_id(pugi::xml_node plot_node); - void set_type(pugi::xml_node plot_node); void set_output_path(pugi::xml_node plot_node); - void set_bg_color(pugi::xml_node plot_node); + void set_type(pugi::xml_node plot_node); void set_basis(pugi::xml_node plot_node); void set_origin(pugi::xml_node plot_node); void set_width(pugi::xml_node plot_node); - void set_universe(pugi::xml_node plot_node); - void set_default_colors(pugi::xml_node plot_node); - void set_user_colors(pugi::xml_node plot_node); void set_meshlines(pugi::xml_node plot_node); - void set_mask(pugi::xml_node plot_node); - void set_overlap_color(pugi::xml_node plot_node); // Members public: - int id_; //!< Plot ID PlotType type_; //!< Plot type (Slice/Voxel) - PlotColorBy color_by_; //!< Plot coloring (cell/material) int meshlines_width_; //!< Width of lines added to the plot int index_meshlines_mesh_ {-1}; //!< Index of the mesh to draw on the plot RGBColor meshlines_color_; //!< Color of meshlines on the plot - RGBColor not_found_ {WHITE}; //!< Plot background color - RGBColor overlap_color_ {RED}; //!< Plot overlap color - vector colors_; //!< Plot colors - std::string path_plot_; //!< Plot output filename }; //=============================================================================== diff --git a/src/plot.cpp b/src/plot.cpp index fac13a1f4..d3486d553 100644 --- a/src/plot.cpp +++ b/src/plot.cpp @@ -213,7 +213,7 @@ void create_image(Plot const& pl) #endif } -void Plot::set_id(pugi::xml_node plot_node) +void PlotBase::set_id(pugi::xml_node plot_node) { // Copy data into plots if (check_for_node(plot_node, "id")) { @@ -298,16 +298,11 @@ void Plot::set_output_path(pugi::xml_node plot_node) } } -void Plot::set_bg_color(pugi::xml_node plot_node) +void PlotBase::set_bg_color(pugi::xml_node plot_node) { // Copy plot background color if (check_for_node(plot_node, "background")) { vector bg_rgb = get_node_array(plot_node, "background"); - if (PlotType::voxel == type_) { - if (mpi::master) { - warning(fmt::format("Background color ignored in voxel plot {}", id_)); - } - } if (bg_rgb.size() == 3) { not_found_ = bg_rgb; } else { @@ -371,7 +366,7 @@ void Plot::set_width(pugi::xml_node plot_node) } } -void Plot::set_universe(pugi::xml_node plot_node) +void PlotBase::set_universe(pugi::xml_node plot_node) { // Copy plot universe level if (check_for_node(plot_node, "level")) { @@ -384,7 +379,7 @@ void Plot::set_universe(pugi::xml_node plot_node) } } -void Plot::set_default_colors(pugi::xml_node plot_node) +void PlotBase::set_default_colors(pugi::xml_node plot_node) { // Copy plot color type and initialize all colors randomly std::string pl_color_by = "cell"; @@ -411,15 +406,8 @@ void Plot::set_default_colors(pugi::xml_node plot_node) } } -void Plot::set_user_colors(pugi::xml_node plot_node) +void PlotBase::set_user_colors(pugi::xml_node plot_node) { - if (!plot_node.select_nodes("color").empty() && PlotType::voxel == type_) { - if (mpi::master) { - warning( - fmt::format("Color specifications ignored in voxel plot {}", id_)); - } - } - for (auto cn : plot_node.children("color")) { // Make sure 3 values are specified for RGB vector user_rgb = get_node_array(cn, "rgb"); @@ -562,18 +550,12 @@ void Plot::set_meshlines(pugi::xml_node plot_node) } } -void Plot::set_mask(pugi::xml_node plot_node) +void PlotBase::set_mask(pugi::xml_node plot_node) { // Deal with masks pugi::xpath_node_set mask_nodes = plot_node.select_nodes("mask"); if (!mask_nodes.empty()) { - if (PlotType::voxel == type_) { - if (mpi::master) { - warning(fmt::format("Mask ignored in voxel plot {}", id_)); - } - } - if (mask_nodes.size() == 1) { // Get pointer to mask pugi::xml_node mask_node = mask_nodes[0].node(); @@ -625,7 +607,7 @@ void Plot::set_mask(pugi::xml_node plot_node) } } -void Plot::set_overlap_color(pugi::xml_node plot_node) +void PlotBase::set_overlap_color(pugi::xml_node plot_node) { color_overlaps_ = false; if (check_for_node(plot_node, "show_overlaps")) { @@ -654,23 +636,29 @@ void Plot::set_overlap_color(pugi::xml_node plot_node) } } -Plot::Plot(pugi::xml_node plot_node) - : index_meshlines_mesh_ {-1}, overlap_color_ {RED} +PlotBase::PlotBase(pugi::xml_node plot_node) { set_id(plot_node); - set_type(plot_node); - set_output_path(plot_node); set_bg_color(plot_node); - set_basis(plot_node); - set_origin(plot_node); - set_width(plot_node); set_universe(plot_node); set_default_colors(plot_node); set_user_colors(plot_node); - set_meshlines(plot_node); set_mask(plot_node); set_overlap_color(plot_node); -} // End Plot constructor +} + +Plot::Plot(pugi::xml_node plot_node) + : PlotBase(plot_node), index_meshlines_mesh_ {-1} +{ + set_type(plot_node); + set_output_path(plot_node); + set_basis(plot_node); + set_origin(plot_node); + set_width(plot_node); + set_meshlines(plot_node); + slice_level_ = level_; // Copy level employed in SlicePlotBase::get_map + slice_color_overlaps_ = color_overlaps_; +} //============================================================================== // OUTPUT_PPM writes out a previously generated image to a PPM file @@ -914,13 +902,12 @@ void create_voxel(Plot const& pl) hid_t dspace, dset, memspace; voxel_init(file_id, &(dims[0]), &dspace, &dset, &memspace); - PlotBase pltbase; + SlicePlotBase pltbase; pltbase.width_ = pl.width_; pltbase.origin_ = pl.origin_; pltbase.basis_ = PlotBasis::xy; pltbase.pixels_ = pl.pixels_; - pltbase.level_ = -1; // all universes for voxel files - pltbase.color_overlaps_ = pl.color_overlaps_; + pltbase.slice_color_overlaps_ = pl.color_overlaps_; ProgressBar pb; for (int z = 0; z < pl.pixels_[2]; z++) { @@ -989,13 +976,13 @@ RGBColor random_color(void) extern "C" int openmc_id_map(const void* plot, int32_t* data_out) { - auto plt = reinterpret_cast(plot); + auto plt = reinterpret_cast(plot); if (!plt) { set_errmsg("Invalid slice pointer passed to openmc_id_map"); return OPENMC_E_INVALID_ARGUMENT; } - if (plt->color_overlaps_ && model::overlap_check_count.size() == 0) { + if (plt->slice_color_overlaps_ && model::overlap_check_count.size() == 0) { model::overlap_check_count.resize(model::cells.size()); } @@ -1010,13 +997,13 @@ extern "C" int openmc_id_map(const void* plot, int32_t* data_out) extern "C" int openmc_property_map(const void* plot, double* data_out) { - auto plt = reinterpret_cast(plot); + auto plt = reinterpret_cast(plot); if (!plt) { set_errmsg("Invalid slice pointer passed to openmc_id_map"); return OPENMC_E_INVALID_ARGUMENT; } - if (plt->color_overlaps_ && model::overlap_check_count.size() == 0) { + if (plt->slice_color_overlaps_ && model::overlap_check_count.size() == 0) { model::overlap_check_count.resize(model::cells.size()); } From 5105a8423db4247870cea160e2c073dc59a6c30c Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Mon, 13 Dec 2021 16:05:41 -0500 Subject: [PATCH 016/959] further refactor of plots, start ProjectionPlot --- include/openmc/plot.h | 145 ++++++++++------ src/output.cpp | 55 +----- src/plot.cpp | 383 ++++++++++++++++++++++++------------------ 3 files changed, 319 insertions(+), 264 deletions(-) diff --git a/include/openmc/plot.h b/include/openmc/plot.h index 1c2d9e48d..edd118bc3 100644 --- a/include/openmc/plot.h +++ b/include/openmc/plot.h @@ -23,12 +23,13 @@ namespace openmc { // Global variables //=============================================================================== -class Plot; +class PlottableInterface; namespace model { extern std::unordered_map plot_map; //!< map of plot ids to index -extern vector plots; //!< Plot instance container +extern std::vector> + plots; //!< Plot instance container extern uint64_t plotter_seed; // Stream index used by the plotter @@ -67,6 +68,49 @@ struct RGBColor { const RGBColor WHITE {255, 255, 255}; const RGBColor RED {255, 0, 0}; +/* + * PlottableInterface classes just have to have a unique ID in the plots.xml + * file, and guarantee being able to create output in some way. + */ +class PlottableInterface { +private: + void set_id(pugi::xml_node plot_node); + int id_; // unique plot ID + + void set_bg_color(pugi::xml_node plot_node); + void set_universe(pugi::xml_node plot_node); + void set_default_colors(pugi::xml_node plot_node); + void set_user_colors(pugi::xml_node plot_node); + void set_overlap_color(pugi::xml_node plot_node); + void set_mask(pugi::xml_node plot_node); + +protected: + // Plot output filename, derived classes have logic to set it + std::string path_plot_; + +public: + enum class PlotColorBy { cells = 0, mats = 1 }; + + // Creates the output image named path_plot_ + virtual void create_output() const = 0; + + // Print useful info to the terminal + virtual void print_info() const = 0; + + const std::string& path_plot() const { return path_plot_; } + const int id() const { return id_; } + const int level() const { return level_; } + + // Public color-related data + PlottableInterface(pugi::xml_node plot_node); + int level_; // Universe level to plot + bool color_overlaps_; // Show overlapping cells? + PlotColorBy color_by_; // Plot coloring (cell/material) + RGBColor not_found_ {WHITE}; // Plot background color + RGBColor overlap_color_ {RED}; // Plot overlap color + vector colors_; // Plot colors +}; + typedef xt::xtensor ImageData; struct IdData { @@ -93,20 +137,17 @@ struct PropertyData { xt::xtensor data_; //!< 2D array of temperature & density data }; -enum class PlotType { slice = 1, voxel = 2 }; - -enum class PlotBasis { xy = 1, xz = 2, yz = 3 }; - -enum class PlotColorBy { cells = 0, mats = 1 }; - //=============================================================================== // Plot class //=============================================================================== + class SlicePlotBase { public: template T get_map() const; + enum class PlotBasis { xy = 1, xz = 2, yz = 3 }; + // Members public: Position origin_; //!< Plot origin in geometry @@ -193,72 +234,78 @@ T SlicePlotBase::get_map() const return data; } -// Common data and methods between ProjectionPlot and Plot types -class PlotBase { +// Provides methods and data for controlling plot colors +class PlotColorMixin { protected: - void set_id(pugi::xml_node plot_node); - void set_bg_color(pugi::xml_node plot_node); - void set_universe(pugi::xml_node plot_node); - void set_default_colors(pugi::xml_node plot_node); - void set_user_colors(pugi::xml_node plot_node); - void set_overlap_color(pugi::xml_node plot_node); - void set_mask(pugi::xml_node plot_node); public: - PlotBase(pugi::xml_node plot_node); - int id_; // Plot ID - int level_; // Universe level to plot - bool color_overlaps_; //!< Show overlapping cells? - PlotColorBy color_by_; // Plot coloring (cell/material) - RGBColor not_found_ {WHITE}; // Plot background color - RGBColor overlap_color_ {RED}; // Plot overlap color - vector colors_; // Plot colors - std::string path_plot_; // Plot output filename }; // Represents either a voxel or pixel plot -class Plot : public SlicePlotBase, public PlotBase { +class Plot : public PlottableInterface, public SlicePlotBase { public: - // Constructor - Plot(pugi::xml_node plot); + enum class PlotType { slice = 1, voxel = 2 }; + + Plot(pugi::xml_node plot, PlotType type); - // Methods private: void set_output_path(pugi::xml_node plot_node); - void set_type(pugi::xml_node plot_node); void set_basis(pugi::xml_node plot_node); void set_origin(pugi::xml_node plot_node); void set_width(pugi::xml_node plot_node); void set_meshlines(pugi::xml_node plot_node); - // Members public: + // Add mesh lines to ImageData + void draw_mesh_lines(ImageData& data) const; + void create_image() const; + void create_voxel() const; + + virtual void create_output() const; + virtual void print_info() const; + PlotType type_; //!< Plot type (Slice/Voxel) int meshlines_width_; //!< Width of lines added to the plot int index_meshlines_mesh_ {-1}; //!< Index of the mesh to draw on the plot RGBColor meshlines_color_; //!< Color of meshlines on the plot }; +class ProjectionPlot : public PlottableInterface { +public: + ProjectionPlot(pugi::xml_node plot); + + virtual void create_output() const; + virtual void print_info() const; + +private: + void set_look_at(pugi::xml_node plot); + void set_camera_position(pugi::xml_node plot); + void set_field_of_view(pugi::xml_node plot); + + std::array pixels_; // pixel dimension of resulting image + double horizontal_field_of_view_; // horiz. f.o.v. in degrees + double vertical_field_of_view_; // vert. f.o.v. in degrees + Position camera_position_; // where camera is + Position look_at_; // point camera is centered looking at +}; + //=============================================================================== // Non-member functions //=============================================================================== -//! Add mesh lines to image data of a plot object -//! \param[in] plot object -//! \param[out] image data associated with the plot object -void draw_mesh_lines(Plot const& pl, ImageData& data); - -//! Write a PPM image using a plot object's image data -//! \param[in] plot object -//! \param[out] image data associated with the plot object -void output_ppm(Plot const& pl, const ImageData& data); +/* Write a PPM image + * filename - name of output file + * data - image data to write + */ +void output_ppm(const std::string& filename, const ImageData& data); #ifdef USE_LIBPNG -//! Write a PNG image using a plot object's image data -//! \param[in] plot object -//! \param[out] image data associated with the plot object -void output_png(Plot const& pl, const ImageData& data); +/* Write a PNG image + * filename - name of output file + * data - image data to write + */ +void output_png(const std::string& filename, const ImageData& data); #endif //! Initialize a voxel file @@ -298,14 +345,6 @@ void read_plots_xml(pugi::xml_node root); //! Clear memory void free_memory_plot(); -//! Create an image for a plot object -//! \param[in] plot object -void create_image(Plot const& pl); - -//! Create an hdf5 voxel file for a plot object -//! \param[in] plot object -void create_voxel(Plot const& pl); - //! Create a randomly generated RGB color //! \return RGBColor with random value RGBColor random_color(); diff --git a/src/output.cpp b/src/output.cpp index 04e15b82d..666ae15b3 100644 --- a/src/output.cpp +++ b/src/output.cpp @@ -221,56 +221,11 @@ void print_plot() if (settings::verbosity < 5) return; - for (auto pl : model::plots) { - // Plot id - fmt::print("Plot ID: {}\n", pl.id_); - // Plot filename - fmt::print("Plot file: {}\n", pl.path_plot_); - // Plot level - fmt::print("Universe depth: {}\n", pl.level_); - - // Plot type - if (PlotType::slice == pl.type_) { - fmt::print("Plot Type: Slice\n"); - } else if (PlotType::voxel == pl.type_) { - fmt::print("Plot Type: Voxel\n"); - } - - // Plot parameters - fmt::print( - "Origin: {} {} {}\n", pl.origin_[0], pl.origin_[1], pl.origin_[2]); - - if (PlotType::slice == pl.type_) { - fmt::print("Width: {:4} {:4}\n", pl.width_[0], pl.width_[1]); - } else if (PlotType::voxel == pl.type_) { - fmt::print( - "Width: {:4} {:4} {:4}\n", pl.width_[0], pl.width_[1], pl.width_[2]); - } - - if (PlotColorBy::cells == pl.color_by_) { - fmt::print("Coloring: Cells\n"); - } else if (PlotColorBy::mats == pl.color_by_) { - fmt::print("Coloring: Materials\n"); - } - - if (PlotType::slice == pl.type_) { - switch (pl.basis_) { - case PlotBasis::xy: - fmt::print("Basis: XY\n"); - break; - case PlotBasis::xz: - fmt::print("Basis: XZ\n"); - break; - case PlotBasis::yz: - fmt::print("Basis: YZ\n"); - break; - } - fmt::print("Pixels: {} {}\n", pl.pixels_[0], pl.pixels_[1]); - } else if (PlotType::voxel == pl.type_) { - fmt::print( - "Voxels: {} {} {}\n", pl.pixels_[0], pl.pixels_[1], pl.pixels_[2]); - } - + for (const auto& pl : model::plots) { + fmt::print("Plot ID: {}\n", pl->id()); + fmt::print("Plot file: {}\n", pl->path_plot()); + fmt::print("Universe depth: {}\n", pl->level()); + pl->print_info(); // prints type-specific plot info fmt::print("\n"); } } diff --git a/src/plot.cpp b/src/plot.cpp index d3486d553..fdba1370d 100644 --- a/src/plot.cpp +++ b/src/plot.cpp @@ -97,7 +97,7 @@ void PropertyData::set_overlap(size_t y, size_t x) namespace model { std::unordered_map plot_map; -vector plots; +std::vector> plots; uint64_t plotter_seed = 1; } // namespace model @@ -110,20 +110,66 @@ extern "C" int openmc_plot_geometry() { for (auto& pl : model::plots) { - write_message(5, "Processing plot {}: {}...", pl.id_, pl.path_plot_); - - if (PlotType::slice == pl.type_) { - // create 2D image - create_image(pl); - } else if (PlotType::voxel == pl.type_) { - // create voxel file for 3D viewing - create_voxel(pl); - } + write_message(5, "Processing plot {}: {}...", pl->id(), pl->path_plot()); + pl->create_output(); } return 0; } +void Plot::create_output() const +{ + if (PlotType::slice == type_) { + // create 2D image + create_image(); + } else if (PlotType::voxel == type_) { + // create voxel file for 3D viewing + create_voxel(); + } +} + +void Plot::print_info() const +{ + // Plot type + if (PlotType::slice == type_) { + fmt::print("Plot Type: Slice\n"); + } else if (PlotType::voxel == type_) { + fmt::print("Plot Type: Voxel\n"); + } + + // Plot parameters + fmt::print("Origin: {} {} {}\n", origin_[0], origin_[1], origin_[2]); + + if (PlotType::slice == type_) { + fmt::print("Width: {:4} {:4}\n", width_[0], width_[1]); + } else if (PlotType::voxel == type_) { + fmt::print("Width: {:4} {:4} {:4}\n", width_[0], width_[1], width_[2]); + } + + if (PlotColorBy::cells == color_by_) { + fmt::print("Coloring: Cells\n"); + } else if (PlotColorBy::mats == color_by_) { + fmt::print("Coloring: Materials\n"); + } + + if (PlotType::slice == type_) { + switch (basis_) { + case PlotBasis::xy: + fmt::print("Basis: XY\n"); + break; + case PlotBasis::xz: + fmt::print("Basis: XZ\n"); + break; + case PlotBasis::yz: + fmt::print("Basis: YZ\n"); + break; + } + fmt::print("Pixels: {} {}\n", pixels_[0], pixels_[1]); + } else if (PlotType::voxel == type_) { + fmt::print("Voxels: {} {} {}\n", pixels_[0], pixels_[1], pixels_[2]); + } +} + void read_plots_xml() { // Check if plots.xml exists; this is only necessary when the plot runmode is @@ -148,8 +194,26 @@ void read_plots_xml() void read_plots_xml(pugi::xml_node root) { for (auto node : root.children("plot")) { - model::plots.emplace_back(node); - model::plot_map[model::plots.back().id_] = model::plots.size() - 1; + std::string id_string = get_node_value(node, "id", true); + int id = std::stoi(id_string); + if (check_for_node(node, "type")) { + std::string type_str = get_node_value(node, "type", true); + if (type_str == "slice") + model::plots.emplace_back( + std::make_unique(node, Plot::PlotType::slice)); + else if (type_str == "voxel") + model::plots.emplace_back( + std::make_unique(node, Plot::PlotType::voxel)); + else if (type_str == "projection") + model::plots.emplace_back(std::make_unique(node)); + else + fatal_error( + fmt::format("Unsupported plot type '{}' in plot {}", type_str, id)); + + model::plot_map[model::plots.back()->id()] = model::plots.size() - 1; + } else { + fatal_error(fmt::format("Must specify plot type in plot {}", id)); + } } } @@ -159,61 +223,58 @@ void free_memory_plot() model::plot_map.clear(); } -//============================================================================== -// CREATE_IMAGE creates an image based on user input from a plots.xml +// creates an image based on user input from a plots.xml // specification in the PNG/PPM format -//============================================================================== - -void create_image(Plot const& pl) +void Plot::create_image() const { - size_t width = pl.pixels_[0]; - size_t height = pl.pixels_[1]; + size_t width = pixels_[0]; + size_t height = pixels_[1]; - ImageData data({width, height}, pl.not_found_); + ImageData data({width, height}, not_found_); // generate ids for the plot - auto ids = pl.get_map(); + auto ids = get_map(); // assign colors for (size_t y = 0; y < height; y++) { for (size_t x = 0; x < width; x++) { - int idx = pl.color_by_ == PlotColorBy::cells ? 0 : 2; + int idx = color_by_ == PlotColorBy::cells ? 0 : 2; auto id = ids.data_(y, x, idx); // no setting needed if not found if (id == NOT_FOUND) { continue; } if (id == OVERLAP) { - data(x, y) = pl.overlap_color_; + data(x, y) = overlap_color_; continue; } - if (PlotColorBy::cells == pl.color_by_) { - data(x, y) = pl.colors_[model::cell_map[id]]; - } else if (PlotColorBy::mats == pl.color_by_) { + if (PlotColorBy::cells == color_by_) { + data(x, y) = colors_[model::cell_map[id]]; + } else if (PlotColorBy::mats == color_by_) { if (id == MATERIAL_VOID) { data(x, y) = WHITE; continue; } - data(x, y) = pl.colors_[model::material_map[id]]; + data(x, y) = colors_[model::material_map[id]]; } // color_by if-else } // x for loop } // y for loop // draw mesh lines if present - if (pl.index_meshlines_mesh_ >= 0) { - draw_mesh_lines(pl, data); + if (index_meshlines_mesh_ >= 0) { + draw_mesh_lines(data); } // create image file #ifdef USE_LIBPNG - output_png(pl, data); + output_png(path_plot(), data); #else - output_ppm(pl, data); + output_ppm(path_plot(), data); #endif } -void PlotBase::set_id(pugi::xml_node plot_node) +void PlottableInterface::set_id(pugi::xml_node plot_node) { // Copy data into plots if (check_for_node(plot_node, "id")) { @@ -229,27 +290,6 @@ void PlotBase::set_id(pugi::xml_node plot_node) } } -void Plot::set_type(pugi::xml_node plot_node) -{ - // Copy plot type - // Default is slice - type_ = PlotType::slice; - // check type specified on plot node - if (check_for_node(plot_node, "type")) { - std::string type_str = get_node_value(plot_node, "type", true); - // set type using node value - if (type_str == "slice") { - type_ = PlotType::slice; - } else if (type_str == "voxel") { - type_ = PlotType::voxel; - } else { - // if we're here, something is wrong - fatal_error( - fmt::format("Unsupported plot type '{}' in plot {}", type_str, id_)); - } - } -} - void Plot::set_output_path(pugi::xml_node plot_node) { // Set output file path @@ -258,7 +298,7 @@ void Plot::set_output_path(pugi::xml_node plot_node) if (check_for_node(plot_node, "filename")) { filename = get_node_value(plot_node, "filename"); } else { - filename = fmt::format("plot_{}", id_); + filename = fmt::format("plot_{}", id()); } // add appropriate file extension to name switch (type_) { @@ -284,7 +324,7 @@ void Plot::set_output_path(pugi::xml_node plot_node) pixels_[1] = pxls[1]; } else { fatal_error( - fmt::format(" must be length 2 in slice plot {}", id_)); + fmt::format(" must be length 2 in slice plot {}", id())); } } else if (PlotType::voxel == type_) { if (pxls.size() == 3) { @@ -293,12 +333,12 @@ void Plot::set_output_path(pugi::xml_node plot_node) pixels_[2] = pxls[2]; } else { fatal_error( - fmt::format(" must be length 3 in voxel plot {}", id_)); + fmt::format(" must be length 3 in voxel plot {}", id())); } } } -void PlotBase::set_bg_color(pugi::xml_node plot_node) +void PlottableInterface::set_bg_color(pugi::xml_node plot_node) { // Copy plot background color if (check_for_node(plot_node, "background")) { @@ -306,7 +346,7 @@ void PlotBase::set_bg_color(pugi::xml_node plot_node) if (bg_rgb.size() == 3) { not_found_ = bg_rgb; } else { - fatal_error(fmt::format("Bad background RGB in plot {}", id_)); + fatal_error(fmt::format("Bad background RGB in plot {}", id())); } } } @@ -327,7 +367,7 @@ void Plot::set_basis(pugi::xml_node plot_node) basis_ = PlotBasis::yz; } else { fatal_error( - fmt::format("Unsupported plot basis '{}' in plot {}", pl_basis, id_)); + fmt::format("Unsupported plot basis '{}' in plot {}", pl_basis, id())); } } } @@ -339,7 +379,7 @@ void Plot::set_origin(pugi::xml_node plot_node) if (pl_origin.size() == 3) { origin_ = pl_origin; } else { - fatal_error(fmt::format("Origin must be length 3 in plot {}", id_)); + fatal_error(fmt::format("Origin must be length 3 in plot {}", id())); } } @@ -353,7 +393,7 @@ void Plot::set_width(pugi::xml_node plot_node) width_.y = pl_width[1]; } else { fatal_error( - fmt::format(" must be length 2 in slice plot {}", id_)); + fmt::format(" must be length 2 in slice plot {}", id())); } } else if (PlotType::voxel == type_) { if (pl_width.size() == 3) { @@ -361,25 +401,25 @@ void Plot::set_width(pugi::xml_node plot_node) width_ = pl_width; } else { fatal_error( - fmt::format(" must be length 3 in voxel plot {}", id_)); + fmt::format(" must be length 3 in voxel plot {}", id())); } } } -void PlotBase::set_universe(pugi::xml_node plot_node) +void PlottableInterface::set_universe(pugi::xml_node plot_node) { // Copy plot universe level if (check_for_node(plot_node, "level")) { level_ = std::stoi(get_node_value(plot_node, "level")); if (level_ < 0) { - fatal_error(fmt::format("Bad universe level in plot {}", id_)); + fatal_error(fmt::format("Bad universe level in plot {}", id())); } } else { level_ = PLOT_LEVEL_LOWEST; } } -void PlotBase::set_default_colors(pugi::xml_node plot_node) +void PlottableInterface::set_default_colors(pugi::xml_node plot_node) { // Copy plot color type and initialize all colors randomly std::string pl_color_by = "cell"; @@ -394,7 +434,7 @@ void PlotBase::set_default_colors(pugi::xml_node plot_node) colors_.resize(model::materials.size()); } else { fatal_error(fmt::format( - "Unsupported plot color type '{}' in plot {}", pl_color_by, id_)); + "Unsupported plot color type '{}' in plot {}", pl_color_by, id())); } for (auto& c : colors_) { @@ -406,21 +446,21 @@ void PlotBase::set_default_colors(pugi::xml_node plot_node) } } -void PlotBase::set_user_colors(pugi::xml_node plot_node) +void PlottableInterface::set_user_colors(pugi::xml_node plot_node) { for (auto cn : plot_node.children("color")) { // Make sure 3 values are specified for RGB vector user_rgb = get_node_array(cn, "rgb"); if (user_rgb.size() != 3) { - fatal_error(fmt::format("Bad RGB in plot {}", id_)); + fatal_error(fmt::format("Bad RGB in plot {}", id())); } // Ensure that there is an id for this color specification int col_id; if (check_for_node(cn, "id")) { col_id = std::stoi(get_node_value(cn, "id")); } else { - fatal_error( - fmt::format("Must specify id for color specification in plot {}", id_)); + fatal_error(fmt::format( + "Must specify id for color specification in plot {}", id())); } // Add RGB if (PlotColorBy::cells == color_by_) { @@ -429,7 +469,7 @@ void PlotBase::set_user_colors(pugi::xml_node plot_node) colors_[col_id] = user_rgb; } else { warning(fmt::format( - "Could not find cell {} specified in plot {}", col_id, id_)); + "Could not find cell {} specified in plot {}", col_id, id())); } } else if (PlotColorBy::mats == color_by_) { if (model::material_map.find(col_id) != model::material_map.end()) { @@ -437,7 +477,7 @@ void PlotBase::set_user_colors(pugi::xml_node plot_node) colors_[col_id] = user_rgb; } else { warning(fmt::format( - "Could not find material {} specified in plot {}", col_id, id_)); + "Could not find material {} specified in plot {}", col_id, id())); } } } // color node loop @@ -450,7 +490,7 @@ void Plot::set_meshlines(pugi::xml_node plot_node) if (!mesh_line_nodes.empty()) { if (PlotType::voxel == type_) { - warning(fmt::format("Meshlines ignored in voxel plot {}", id_)); + warning(fmt::format("Meshlines ignored in voxel plot {}", id())); } if (mesh_line_nodes.size() == 1) { @@ -464,7 +504,7 @@ void Plot::set_meshlines(pugi::xml_node plot_node) } else { fatal_error(fmt::format( "Must specify a meshtype for meshlines specification in plot {}", - id_)); + id())); } // Ensure that there is a linewidth for this meshlines specification @@ -475,7 +515,7 @@ void Plot::set_meshlines(pugi::xml_node plot_node) } else { fatal_error(fmt::format( "Must specify a linewidth for meshlines specification in plot {}", - id_)); + id())); } // Check for color @@ -484,7 +524,7 @@ void Plot::set_meshlines(pugi::xml_node plot_node) vector ml_rgb = get_node_array(meshlines_node, "color"); if (ml_rgb.size() != 3) { fatal_error( - fmt::format("Bad RGB for meshlines color in plot {}", id_)); + fmt::format("Bad RGB for meshlines color in plot {}", id())); } meshlines_color_ = ml_rgb; } @@ -492,7 +532,8 @@ void Plot::set_meshlines(pugi::xml_node plot_node) // Set mesh based on type if ("ufs" == meshtype) { if (!simulation::ufs_mesh) { - fatal_error(fmt::format("No UFS mesh for meshlines on plot {}", id_)); + fatal_error( + fmt::format("No UFS mesh for meshlines on plot {}", id())); } else { for (int i = 0; i < model::meshes.size(); ++i) { if (const auto* m = @@ -508,7 +549,7 @@ void Plot::set_meshlines(pugi::xml_node plot_node) } else if ("entropy" == meshtype) { if (!simulation::entropy_mesh) { fatal_error( - fmt::format("No entropy mesh for meshlines on plot {}", id_)); + fmt::format("No entropy mesh for meshlines on plot {}", id())); } else { for (int i = 0; i < model::meshes.size(); ++i) { if (const auto* m = @@ -530,7 +571,7 @@ void Plot::set_meshlines(pugi::xml_node plot_node) std::stringstream err_msg; fatal_error(fmt::format("Must specify a mesh id for meshlines tally " "mesh specification in plot {}", - id_)); + id())); } // find the tally index int idx; @@ -538,19 +579,19 @@ void Plot::set_meshlines(pugi::xml_node plot_node) if (err != 0) { fatal_error(fmt::format("Could not find mesh {} specified in " "meshlines for plot {}", - tally_mesh_id, id_)); + tally_mesh_id, id())); } index_meshlines_mesh_ = idx; } else { - fatal_error(fmt::format("Invalid type for meshlines on plot {}", id_)); + fatal_error(fmt::format("Invalid type for meshlines on plot {}", id())); } } else { - fatal_error(fmt::format("Mutliple meshlines specified in plot {}", id_)); + fatal_error(fmt::format("Mutliple meshlines specified in plot {}", id())); } } } -void PlotBase::set_mask(pugi::xml_node plot_node) +void PlottableInterface::set_mask(pugi::xml_node plot_node) { // Deal with masks pugi::xpath_node_set mask_nodes = plot_node.select_nodes("mask"); @@ -564,7 +605,7 @@ void PlotBase::set_mask(pugi::xml_node plot_node) vector iarray = get_node_array(mask_node, "components"); if (iarray.size() == 0) { fatal_error( - fmt::format("Missing in mask of plot {}", id_)); + fmt::format("Missing in mask of plot {}", id())); } // First we need to change the user-specified identifiers to indices @@ -576,7 +617,7 @@ void PlotBase::set_mask(pugi::xml_node plot_node) } else { fatal_error(fmt::format("Could not find cell {} specified in the " "mask in plot {}", - col_id, id_)); + col_id, id())); } } else if (PlotColorBy::mats == color_by_) { if (model::material_map.find(col_id) != model::material_map.end()) { @@ -584,7 +625,7 @@ void PlotBase::set_mask(pugi::xml_node plot_node) } else { fatal_error(fmt::format("Could not find material {} specified in " "the mask in plot {}", - col_id, id_)); + col_id, id())); } } } @@ -602,12 +643,12 @@ void PlotBase::set_mask(pugi::xml_node plot_node) } } else { - fatal_error(fmt::format("Mutliple masks specified in plot {}", id_)); + fatal_error(fmt::format("Mutliple masks specified in plot {}", id())); } } } -void PlotBase::set_overlap_color(pugi::xml_node plot_node) +void PlottableInterface::set_overlap_color(pugi::xml_node plot_node) { color_overlaps_ = false; if (check_for_node(plot_node, "show_overlaps")) { @@ -617,13 +658,13 @@ void PlotBase::set_overlap_color(pugi::xml_node plot_node) if (!color_overlaps_) { warning(fmt::format( "Overlap color specified in plot {} but overlaps won't be shown.", - id_)); + id())); } vector olap_clr = get_node_array(plot_node, "overlap_color"); if (olap_clr.size() == 3) { overlap_color_ = olap_clr; } else { - fatal_error(fmt::format("Bad overlap RGB in plot {}", id_)); + fatal_error(fmt::format("Bad overlap RGB in plot {}", id())); } } } @@ -636,7 +677,7 @@ void PlotBase::set_overlap_color(pugi::xml_node plot_node) } } -PlotBase::PlotBase(pugi::xml_node plot_node) +PlottableInterface::PlottableInterface(pugi::xml_node plot_node) { set_id(plot_node); set_bg_color(plot_node); @@ -647,10 +688,9 @@ PlotBase::PlotBase(pugi::xml_node plot_node) set_overlap_color(plot_node); } -Plot::Plot(pugi::xml_node plot_node) - : PlotBase(plot_node), index_meshlines_mesh_ {-1} +Plot::Plot(pugi::xml_node plot_node, PlotType type) + : PlottableInterface(plot_node), index_meshlines_mesh_ {-1}, type_(type) { - set_type(plot_node); set_output_path(plot_node); set_basis(plot_node); set_origin(plot_node); @@ -664,10 +704,10 @@ Plot::Plot(pugi::xml_node plot_node) // OUTPUT_PPM writes out a previously generated image to a PPM file //============================================================================== -void output_ppm(Plot const& pl, const ImageData& data) +void output_ppm(const std::string& filename, const ImageData& data) { // Open PPM file for writing - std::string fname = pl.path_plot_; + std::string fname = filename; fname = strtrim(fname); std::ofstream of; @@ -675,14 +715,14 @@ void output_ppm(Plot const& pl, const ImageData& data) // Write header of << "P6\n"; - of << pl.pixels_[0] << " " << pl.pixels_[1] << "\n"; + of << data.shape()[0] << " " << data.shape()[1] << "\n"; of << "255\n"; of.close(); of.open(fname, std::ios::binary | std::ios::app); // Write color for each pixel - for (int y = 0; y < pl.pixels_[1]; y++) { - for (int x = 0; x < pl.pixels_[0]; x++) { + for (int y = 0; y < data.shape()[1]; y++) { + for (int x = 0; x < data.shape()[0]; x++) { RGBColor rgb = data(x, y); of << rgb.red << rgb.green << rgb.blue; } @@ -695,10 +735,10 @@ void output_ppm(Plot const& pl, const ImageData& data) //============================================================================== #ifdef USE_LIBPNG -void output_png(Plot const& pl, const ImageData& data) +void output_png(const std::string& filename, const ImageData& data) { // Open PNG file for writing - std::string fname = pl.path_plot_; + std::string fname = filename; fname = strtrim(fname); auto fp = std::fopen(fname.c_str(), "wb"); @@ -714,8 +754,8 @@ void output_png(Plot const& pl, const ImageData& data) png_init_io(png_ptr, fp); // Write header (8 bit colour depth) - int width = pl.pixels_[0]; - int height = pl.pixels_[1]; + int width = data.shape()[0]; + int height = data.shape()[1]; png_set_IHDR(png_ptr, info_ptr, width, height, 8, PNG_COLOR_TYPE_RGB, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_BASE, PNG_FILTER_TYPE_BASE); png_write_info(png_ptr, info_ptr); @@ -748,13 +788,13 @@ void output_png(Plot const& pl, const ImageData& data) // DRAW_MESH_LINES draws mesh line boundaries on an image //============================================================================== -void draw_mesh_lines(Plot const& pl, ImageData& data) +void Plot::draw_mesh_lines(ImageData& data) const { RGBColor rgb; - rgb = pl.meshlines_color_; + rgb = meshlines_color_; int ax1, ax2; - switch (pl.basis_) { + switch (basis_) { case PlotBasis::xy: ax1 = 0; ax2 = 1; @@ -771,45 +811,45 @@ void draw_mesh_lines(Plot const& pl, ImageData& data) UNREACHABLE(); } - Position ll_plot {pl.origin_}; - Position ur_plot {pl.origin_}; + Position ll_plot {origin_}; + Position ur_plot {origin_}; - ll_plot[ax1] -= pl.width_[0] / 2.; - ll_plot[ax2] -= pl.width_[1] / 2.; - ur_plot[ax1] += pl.width_[0] / 2.; - ur_plot[ax2] += pl.width_[1] / 2.; + ll_plot[ax1] -= width_[0] / 2.; + ll_plot[ax2] -= width_[1] / 2.; + ur_plot[ax1] += width_[0] / 2.; + ur_plot[ax2] += width_[1] / 2.; Position width = ur_plot - ll_plot; // Find the (axis-aligned) lines of the mesh that intersect this plot. auto axis_lines = - model::meshes[pl.index_meshlines_mesh_]->plot(ll_plot, ur_plot); + model::meshes[index_meshlines_mesh_]->plot(ll_plot, ur_plot); // Find the bounds along the second axis (accounting for low-D meshes). int ax2_min, ax2_max; if (axis_lines.second.size() > 0) { double frac = (axis_lines.second.back() - ll_plot[ax2]) / width[ax2]; - ax2_min = (1.0 - frac) * pl.pixels_[1]; + ax2_min = (1.0 - frac) * pixels_[1]; if (ax2_min < 0) ax2_min = 0; frac = (axis_lines.second.front() - ll_plot[ax2]) / width[ax2]; - ax2_max = (1.0 - frac) * pl.pixels_[1]; - if (ax2_max > pl.pixels_[1]) - ax2_max = pl.pixels_[1]; + ax2_max = (1.0 - frac) * pixels_[1]; + if (ax2_max > pixels_[1]) + ax2_max = pixels_[1]; } else { ax2_min = 0; - ax2_max = pl.pixels_[1]; + ax2_max = pixels_[1]; } // Iterate across the first axis and draw lines. for (auto ax1_val : axis_lines.first) { double frac = (ax1_val - ll_plot[ax1]) / width[ax1]; - int ax1_ind = frac * pl.pixels_[0]; + int ax1_ind = frac * pixels_[0]; for (int ax2_ind = ax2_min; ax2_ind < ax2_max; ++ax2_ind) { - for (int plus = 0; plus <= pl.meshlines_width_; plus++) { - if (ax1_ind + plus >= 0 && ax1_ind + plus < pl.pixels_[0]) + for (int plus = 0; plus <= meshlines_width_; plus++) { + if (ax1_ind + plus >= 0 && ax1_ind + plus < pixels_[0]) data(ax1_ind + plus, ax2_ind) = rgb; - if (ax1_ind - plus >= 0 && ax1_ind - plus < pl.pixels_[0]) + if (ax1_ind - plus >= 0 && ax1_ind - plus < pixels_[0]) data(ax1_ind - plus, ax2_ind) = rgb; } } @@ -819,60 +859,57 @@ void draw_mesh_lines(Plot const& pl, ImageData& data) int ax1_min, ax1_max; if (axis_lines.first.size() > 0) { double frac = (axis_lines.first.front() - ll_plot[ax1]) / width[ax1]; - ax1_min = frac * pl.pixels_[0]; + ax1_min = frac * pixels_[0]; if (ax1_min < 0) ax1_min = 0; frac = (axis_lines.first.back() - ll_plot[ax1]) / width[ax1]; - ax1_max = frac * pl.pixels_[0]; - if (ax1_max > pl.pixels_[0]) - ax1_max = pl.pixels_[0]; + ax1_max = frac * pixels_[0]; + if (ax1_max > pixels_[0]) + ax1_max = pixels_[0]; } else { ax1_min = 0; - ax1_max = pl.pixels_[0]; + ax1_max = pixels_[0]; } // Iterate across the second axis and draw lines. for (auto ax2_val : axis_lines.second) { double frac = (ax2_val - ll_plot[ax2]) / width[ax2]; - int ax2_ind = (1.0 - frac) * pl.pixels_[1]; + int ax2_ind = (1.0 - frac) * pixels_[1]; for (int ax1_ind = ax1_min; ax1_ind < ax1_max; ++ax1_ind) { - for (int plus = 0; plus <= pl.meshlines_width_; plus++) { - if (ax2_ind + plus >= 0 && ax2_ind + plus < pl.pixels_[1]) + for (int plus = 0; plus <= meshlines_width_; plus++) { + if (ax2_ind + plus >= 0 && ax2_ind + plus < pixels_[1]) data(ax1_ind, ax2_ind + plus) = rgb; - if (ax2_ind - plus >= 0 && ax2_ind - plus < pl.pixels_[1]) + if (ax2_ind - plus >= 0 && ax2_ind - plus < pixels_[1]) data(ax1_ind, ax2_ind - plus) = rgb; } } } } -//============================================================================== -// CREATE_VOXEL outputs a binary file that can be input into silomesh for 3D -// geometry visualization. It works the same way as create_image by dragging a -// particle across the geometry for the specified number of voxels. The first 3 -// int's in the binary are the number of x, y, and z voxels. The next 3 -// double's are the widths of the voxels in the x, y, and z directions. The -// next 3 double's are the x, y, and z coordinates of the lower left -// point. Finally the binary is filled with entries of four int's each. Each -// 'row' in the binary contains four int's: 3 for x,y,z position and 1 for -// cell or material id. For 1 million voxels this produces a file of -// approximately 15MB. -// ============================================================================= - -void create_voxel(Plot const& pl) +/* outputs a binary file that can be input into silomesh for 3D geometry + * visualization. It works the same way as create_image by dragging a particle + * across the geometry for the specified number of voxels. The first 3 int's in + * the binary are the number of x, y, and z voxels. The next 3 double's are + * the widths of the voxels in the x, y, and z directions. The next 3 double's + * are the x, y, and z coordinates of the lower left point. Finally the binary + * is filled with entries of four int's each. Each 'row' in the binary contains + * four int's: 3 for x,y,z position and 1 for cell or material id. For 1 + * million voxels this produces a file of approximately 15MB. + */ +void Plot::create_voxel() const { // compute voxel widths in each direction array vox; - vox[0] = pl.width_[0] / (double)pl.pixels_[0]; - vox[1] = pl.width_[1] / (double)pl.pixels_[1]; - vox[2] = pl.width_[2] / (double)pl.pixels_[2]; + vox[0] = width_[0] / static_cast(pixels_[0]); + vox[1] = width_[1] / static_cast(pixels_[1]); + vox[2] = width_[2] / static_cast(pixels_[2]); // initial particle position - Position ll = pl.origin_ - pl.width_ / 2.; + Position ll = origin_ - width_ / 2.; // Open binary plot file for writing std::ofstream of; - std::string fname = std::string(pl.path_plot_); + std::string fname = std::string(path_plot_); fname = strtrim(fname); hid_t file_id = file_open(fname, 'w'); @@ -888,7 +925,7 @@ void create_voxel(Plot const& pl) // Write current date and time write_attribute(file_id, "date_and_time", time_stamp().c_str()); array pixels; - std::copy(pl.pixels_.begin(), pl.pixels_.end(), pixels.begin()); + std::copy(pixels_.begin(), pixels_.end(), pixels.begin()); write_attribute(file_id, "num_voxels", pixels); write_attribute(file_id, "voxel_width", vox); write_attribute(file_id, "lower_left", ll); @@ -896,23 +933,24 @@ void create_voxel(Plot const& pl) // Create dataset for voxel data -- note that the dimensions are reversed // since we want the order in the file to be z, y, x hsize_t dims[3]; - dims[0] = pl.pixels_[2]; - dims[1] = pl.pixels_[1]; - dims[2] = pl.pixels_[0]; + dims[0] = pixels_[2]; + dims[1] = pixels_[1]; + dims[2] = pixels_[0]; hid_t dspace, dset, memspace; voxel_init(file_id, &(dims[0]), &dspace, &dset, &memspace); SlicePlotBase pltbase; - pltbase.width_ = pl.width_; - pltbase.origin_ = pl.origin_; + pltbase.width_ = width_; + pltbase.origin_ = origin_; pltbase.basis_ = PlotBasis::xy; - pltbase.pixels_ = pl.pixels_; - pltbase.slice_color_overlaps_ = pl.color_overlaps_; + pltbase.pixels_ = pixels_; + pltbase.slice_color_overlaps_ = color_overlaps_; ProgressBar pb; - for (int z = 0; z < pl.pixels_[2]; z++) { + for (int z = 0; z < pixels_[2]; z++) { // update progress bar - pb.set_value(100. * (double)z / (double)(pl.pixels_[2] - 1)); + pb.set_value( + 100. * static_cast(z) / static_cast((pixels_[2] - 1))); // update z coordinate pltbase.origin_.z = ll.z + z * vox[2]; @@ -921,7 +959,7 @@ void create_voxel(Plot const& pl) IdData ids = pltbase.get_map(); // select only cell/material ID data and flip the y-axis - int idx = pl.color_by_ == PlotColorBy::cells ? 0 : 2; + int idx = color_by_ == PlotColorBy::cells ? 0 : 2; xt::xtensor data_slice = xt::view(ids.data_, xt::all(), xt::all(), idx); xt::xtensor data_flipped = xt::flip(data_slice, 0); @@ -973,6 +1011,29 @@ RGBColor random_color(void) int(prn(&model::plotter_seed) * 255), int(prn(&model::plotter_seed) * 255)}; } +ProjectionPlot::ProjectionPlot(pugi::xml_node node) : PlottableInterface(node) +{ + set_look_at(node); + set_camera_position(node); + set_field_of_view(node); +} + +void ProjectionPlot::create_output() const +{ + // TODO +} + +void ProjectionPlot::print_info() const +{ + // TODO +} + +void ProjectionPlot::set_camera_position(pugi::xml_node node) {} + +void ProjectionPlot::set_look_at(pugi::xml_node node) {} + +void ProjectionPlot::set_field_of_view(pugi::xml_node node) {} + extern "C" int openmc_id_map(const void* plot, int32_t* data_out) { From d5aafc91cb65003399ec8f9dd7db048ea02979a0 Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Tue, 14 Dec 2021 15:37:40 -0500 Subject: [PATCH 017/959] projection plots nominally working --- include/openmc/plot.h | 27 +- src/plot.cpp | 246 +++++++++++++++++- .../plot_projections/__init__.py | 0 .../plot_projections/geometry.xml | 15 ++ .../plot_projections/materials.xml | 19 ++ .../plot_projections/plots.xml | 30 +++ .../plot_projections/results_true.dat | 1 + .../plot_projections/settings.xml | 13 + .../plot_projections/tallies.xml | 20 ++ .../regression_tests/plot_projections/test.py | 60 +++++ 10 files changed, 421 insertions(+), 10 deletions(-) create mode 100644 tests/regression_tests/plot_projections/__init__.py create mode 100644 tests/regression_tests/plot_projections/geometry.xml create mode 100644 tests/regression_tests/plot_projections/materials.xml create mode 100644 tests/regression_tests/plot_projections/plots.xml create mode 100644 tests/regression_tests/plot_projections/results_true.dat create mode 100644 tests/regression_tests/plot_projections/settings.xml create mode 100644 tests/regression_tests/plot_projections/tallies.xml create mode 100644 tests/regression_tests/plot_projections/test.py diff --git a/include/openmc/plot.h b/include/openmc/plot.h index edd118bc3..af65fb7c3 100644 --- a/include/openmc/plot.h +++ b/include/openmc/plot.h @@ -67,6 +67,7 @@ struct RGBColor { // some default colors const RGBColor WHITE {255, 255, 255}; const RGBColor RED {255, 0, 0}; +const RGBColor BLACK {0, 0, 0}; /* * PlottableInterface classes just have to have a unique ID in the plots.xml @@ -272,6 +273,10 @@ public: }; class ProjectionPlot : public PlottableInterface { + + // TODO add optional choice between perspective or orthographic + // TODO add optionl to turn off wireframe + public: ProjectionPlot(pugi::xml_node plot); @@ -279,15 +284,27 @@ public: virtual void print_info() const; private: - void set_look_at(pugi::xml_node plot); - void set_camera_position(pugi::xml_node plot); - void set_field_of_view(pugi::xml_node plot); + void set_look_at(pugi::xml_node node); + void set_camera_position(pugi::xml_node node); + void set_field_of_view(pugi::xml_node node); + void set_pixels(pugi::xml_node node); + void set_opacities(pugi::xml_node node); std::array pixels_; // pixel dimension of resulting image - double horizontal_field_of_view_; // horiz. f.o.v. in degrees - double vertical_field_of_view_; // vert. f.o.v. in degrees + double horizontal_field_of_view_ {70.0}; // horiz. f.o.v. in degrees Position camera_position_; // where camera is Position look_at_; // point camera is centered looking at + Direction up_ {0.0, 0.0, 1.0}; // which way is up + bool wireframe_; // draw wireframe around ID boundaries (material or cell + // based on color_by) + RGBColor wireframe_color_ {BLACK}; // wireframe color + std::vector + xs_; // macro cross section values for cell volume rendering + + // If starting the particle from outside the geometry, we have to + // find a distance to the boundary in a non-standard surface intersection + // check. It's an exhaustive search over surfaces in the top-level universe. + static bool advance_to_boundary_from_void(Particle& p); }; //=============================================================================== diff --git a/src/plot.cpp b/src/plot.cpp index fdba1370d..bb643af53 100644 --- a/src/plot.cpp +++ b/src/plot.cpp @@ -1016,23 +1016,259 @@ ProjectionPlot::ProjectionPlot(pugi::xml_node node) : PlottableInterface(node) set_look_at(node); set_camera_position(node); set_field_of_view(node); + set_pixels(node); + set_opacities(node); + + // TODO naming stuff... + std::string name = "projection" + std::to_string(id()) + ".png"; + path_plot_ = name; +} + +// Advances to the next boundary from outside the geometry +bool ProjectionPlot::advance_to_boundary_from_void(Particle& p) +{ + constexpr double scoot = 1e-5; + double min_dist = {INFINITY}; + auto coord = p.coord(0); + Universe* uni = model::universes[model::root_universe].get(); + for (auto c_i : uni->cells_) { + auto dist = model::cells.at(c_i)->distance(coord.r, coord.u, 0, &p); + if (dist.first < min_dist) + min_dist = dist.first; + } + if (min_dist > 1e300) + return false; + else { // advance the particle + for (int j = 0; j < p.n_coord(); ++j) + p.coord(j).r += (min_dist + scoot) * p.coord(j).u; + return true; + } } void ProjectionPlot::create_output() const { - // TODO + // Get centerline vector for camera-to-model. We create vectors around this + // that form a pixel array, and then trace rays along that. + Direction looking_direction = look_at_ - camera_position_; + looking_direction /= looking_direction.norm(); + + // Now we convert to the polar coordinate system with the polar angle + // measuring the angle from the vector up_. Phi is the rotation about up_. For + // now, up_ is hard-coded to be +z. + constexpr double DEGREE_TO_RADIAN = M_PI / 180.0; + double phi0 = std::atan2(looking_direction.y, looking_direction.x); + double mu0 = std::acos(looking_direction.z); + double horiz_fov_radians = horizontal_field_of_view_ * DEGREE_TO_RADIAN; + double p0 = static_cast(pixels_[0]); + double p1 = static_cast(pixels_[1]); + double vert_fov_radians = horiz_fov_radians * p1 / p0; + double dphi = horiz_fov_radians / p0; + double dmu = vert_fov_radians / p1; + + size_t width = pixels_[0]; + size_t height = pixels_[1]; + ImageData data({width, height}, not_found_); + + // Loop over horizontal lines (vert field of view) + SourceSite s; // Where particle starts from (camera) + s.E = 1; + s.wgt = 1; + s.delayed_group = 0; + s.particle = ParticleType::photon; // just has to be something reasonable + s.parent_id = 1; + s.progeny_id = 2; + s.r = camera_position_; + + Particle p; + s.u.x = 1.0; + s.u.y = 0.0; + s.u.z = 0.0; + p.from_source(&s); + + // Do preliminary loop to advance to get within the geometry + struct TrackSegment { + int id; // material or cell ID (which is being colored) + double length; // length of this track intersection + TrackSegment(int id_a, double length_a) : id(id_a), length(length_a) {} + }; + std::vector segments; + std::vector old_segments; + + for (int vert = 0; vert < pixels_[1]; ++vert) { + for (int horiz = 0; horiz < pixels_[0]; ++horiz) { + double this_phi = phi0 - horiz_fov_radians / 2.0 + dphi * horiz; + double this_mu = mu0 - vert_fov_radians / 2.0 + dmu * vert; + s.u.x = std::cos(this_phi) * std::sin(this_mu); + s.u.y = std::sin(this_phi) * std::sin(this_mu); + s.u.z = std::cos(this_mu); + p.from_source(&s); // put particle at camera + bool hitsomething = false; + bool intersection_found = true; + int loop_counter = 0; + const int max_intersections = 1000000; + + old_segments = segments; + segments.clear(); + while (intersection_found) { + bool inside_cell = exhaustive_find_cell(p); + if (inside_cell) { + hitsomething = true; + intersection_found = true; + auto dist = distance_to_boundary(p); + segments.emplace_back(color_by_ == PlotColorBy::mats + ? p.material() + : p.coord(p.n_coord() - 1).cell, + dist.distance); + + // Advance particle + for (int lev = 0; lev < p.n_coord(); ++lev) { + p.coord(lev).r += dist.distance * p.coord(lev).u; + } + p.surface() = dist.surface_index; + p.n_coord_last() = p.n_coord(); + p.n_coord() = dist.coord_level; + if (dist.lattice_translation[0] != 0 || + dist.lattice_translation[1] != 0 || + dist.lattice_translation[2] != 0) { + cross_lattice(p, dist); + } + + } else { + intersection_found = advance_to_boundary_from_void(p); + } + loop_counter++; + if (loop_counter > max_intersections) + fatal_error("Infinite loop in projection plot"); + } + + // Now color the pixel based on what we have intersected... + // Loops backwards over intersections. + Position current_color(not_found_.red, not_found_.green, not_found_.blue); + for (unsigned i = segments.size(); i-- > 0;) { + int colormap_idx = segments[i].id; + RGBColor seg_color = colors_[colormap_idx]; + Position seg_color_vec(seg_color.red, seg_color.green, seg_color.blue); + double mixing = std::exp(-xs_[colormap_idx] * segments[i].length); + current_color = current_color * mixing + (1.0 - mixing) * seg_color_vec; + RGBColor result; + result.red = static_cast(current_color.x); + result.green = static_cast(current_color.y); + result.blue = static_cast(current_color.z); + data(horiz, vert) = result; + } + + // Check to draw wireframe + bool draw_wireframe = false; + if (segments.size() == old_segments.size()) { + for (int i = 0; i < segments.size(); ++i) { + if (segments[i].id != old_segments[i].id) { + draw_wireframe = true; + break; + } + } + } else { + draw_wireframe = true; + } + if (draw_wireframe) { + data(horiz, vert) = wireframe_color_; + } + } + } +#ifdef USE_LIBPNG + output_png(path_plot(), data); +#else + output_ppm(path_plot(), data); +#endif } void ProjectionPlot::print_info() const { - // TODO + fmt::print("Plot Type: Projection\n"); + fmt::print("Camera position: {} {} {}\n", camera_position_.x, + camera_position_.y, camera_position_.z); + fmt::print("Look at: {} {} {}\n", look_at_.x, look_at_.y, look_at_.z); + fmt::print( + "Horizontal field of view: {} degrees\n", horizontal_field_of_view_); + fmt::print("Pixels: {} {}\n", pixels_[0], pixels_[1]); } -void ProjectionPlot::set_camera_position(pugi::xml_node node) {} +void ProjectionPlot::set_opacities(pugi::xml_node node) +{ -void ProjectionPlot::set_look_at(pugi::xml_node node) {} + xs_.resize(colors_.size(), 1e6); // set to large value for opaque by default -void ProjectionPlot::set_field_of_view(pugi::xml_node node) {} + for (auto cn : node.children("color")) { + // Make sure 3 values are specified for RGB + double user_xs = std::stod(get_node_value(cn, "xs")); + int col_id = std::stoi(get_node_value(cn, "id")); + + // Add RGB + if (PlotColorBy::cells == color_by_) { + if (model::cell_map.find(col_id) != model::cell_map.end()) { + col_id = model::cell_map[col_id]; + xs_[col_id] = user_xs; + } else { + warning(fmt::format( + "Could not find cell {} specified in plot {}", col_id, id())); + } + } else if (PlotColorBy::mats == color_by_) { + if (model::material_map.find(col_id) != model::material_map.end()) { + col_id = model::material_map[col_id]; + xs_[col_id] = user_xs; + } else { + warning(fmt::format( + "Could not find material {} specified in plot {}", col_id, id())); + } + } + } +} + +void ProjectionPlot::set_pixels(pugi::xml_node node) +{ + vector pxls = get_node_array(node, "pixels"); + if (pxls.size() != 2) + fatal_error( + fmt::format(" must be length 2 in projection plot {}", id())); + pixels_[0] = pxls[0]; + pixels_[1] = pxls[1]; +} + +void ProjectionPlot::set_camera_position(pugi::xml_node node) +{ + vector camera_pos = get_node_array(node, "camera_position"); + if (camera_pos.size() != 3) { + fatal_error( + fmt::format("look_at element must have three floating point values")); + } + camera_position_.x = camera_pos[0]; + camera_position_.y = camera_pos[1]; + camera_position_.z = camera_pos[2]; +} + +void ProjectionPlot::set_look_at(pugi::xml_node node) +{ + vector look_at = get_node_array(node, "look_at"); + if (look_at.size() != 3) { + fatal_error("look_at element must have three floating point values"); + } + look_at_.x = look_at[0]; + look_at_.y = look_at[1]; + look_at_.z = look_at[2]; +} + +void ProjectionPlot::set_field_of_view(pugi::xml_node node) +{ + // Defaults to 70 degree horizontal field of view (see .h file) + if (check_for_node(node, "field_of_view")) { + double fov = std::stod(get_node_value(node, "field_of_view", true)); + if (fov < 180.0 && fov > 0.0) { + horizontal_field_of_view_ = fov; + } else { + fatal_error(fmt::format( + "Field of view for plot {} out-of-range. Must be in (0, 180).", id())); + } + } +} extern "C" int openmc_id_map(const void* plot, int32_t* data_out) { diff --git a/tests/regression_tests/plot_projections/__init__.py b/tests/regression_tests/plot_projections/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/tests/regression_tests/plot_projections/geometry.xml b/tests/regression_tests/plot_projections/geometry.xml new file mode 100644 index 000000000..982187644 --- /dev/null +++ b/tests/regression_tests/plot_projections/geometry.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/tests/regression_tests/plot_projections/materials.xml b/tests/regression_tests/plot_projections/materials.xml new file mode 100644 index 000000000..35f0de312 --- /dev/null +++ b/tests/regression_tests/plot_projections/materials.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/tests/regression_tests/plot_projections/plots.xml b/tests/regression_tests/plot_projections/plots.xml new file mode 100644 index 000000000..2d22c8865 --- /dev/null +++ b/tests/regression_tests/plot_projections/plots.xml @@ -0,0 +1,30 @@ + + + + + 0. 0. 0. + 20. 20. 20. + 200 200 + + + + 70 + + + + 0. 0. 0. + 20. 20. 20. + 25 25 + 200 200 + + 90 + + + + 0. 0. 0. + 20. 20. 20. + 200 200 + 240 240 240 + + + diff --git a/tests/regression_tests/plot_projections/results_true.dat b/tests/regression_tests/plot_projections/results_true.dat new file mode 100644 index 000000000..45e097f62 --- /dev/null +++ b/tests/regression_tests/plot_projections/results_true.dat @@ -0,0 +1 @@ +8231bc2d60bee9df464fbf3c5b2ea611dcd0f10232f6a9b04f58fc5226716acb31580578f74d194f8ab2df1848ea1556621bf997e1d1562d5eb8471def2a5f24 \ No newline at end of file diff --git a/tests/regression_tests/plot_projections/settings.xml b/tests/regression_tests/plot_projections/settings.xml new file mode 100644 index 000000000..adf256d2d --- /dev/null +++ b/tests/regression_tests/plot_projections/settings.xml @@ -0,0 +1,13 @@ + + + + plot + + + 5 4 3 + -10 -10 -10 + 10 10 10 + + 1 + + diff --git a/tests/regression_tests/plot_projections/tallies.xml b/tests/regression_tests/plot_projections/tallies.xml new file mode 100644 index 000000000..b7e678ca0 --- /dev/null +++ b/tests/regression_tests/plot_projections/tallies.xml @@ -0,0 +1,20 @@ + + + + + -10 10 + -10 10 + -10 0 5 7.5 8.75 10 + + + + mesh + 2 + + + + 1 + total + + + diff --git a/tests/regression_tests/plot_projections/test.py b/tests/regression_tests/plot_projections/test.py new file mode 100644 index 000000000..2e1f4cd8d --- /dev/null +++ b/tests/regression_tests/plot_projections/test.py @@ -0,0 +1,60 @@ +import glob +import hashlib +import os + +import h5py +import openmc + +from tests.testing_harness import TestHarness +from tests.regression_tests import config + + +class PlotTestHarness(TestHarness): + """Specialized TestHarness for running OpenMC plotting tests.""" + def __init__(self, plot_names): + super().__init__(None) + self._plot_names = plot_names + + def _run_openmc(self): + openmc.plot_geometry(openmc_exec=config['exe']) + + def _test_output_created(self): + """Make sure *.png has been created.""" + for fname in self._plot_names: + assert os.path.exists(fname), 'Plot output file does not exist.' + + def _cleanup(self): + super()._cleanup() + for fname in self._plot_names: + if os.path.exists(fname): + os.remove(fname) + + def _get_results(self): + """Return a string hash of the plot files.""" + outstr = bytes() + + for fname in self._plot_names: + if fname.endswith('.png'): + # Add PNG output to results + with open(fname, 'rb') as fh: + outstr += fh.read() + elif fname.endswith('.h5'): + # Add voxel data to results + with h5py.File(fname, 'r') as fh: + outstr += fh.attrs['filetype'] + outstr += fh.attrs['num_voxels'].tobytes() + outstr += fh.attrs['lower_left'].tobytes() + outstr += fh.attrs['voxel_width'].tobytes() + outstr += fh['data'][()].tobytes() + + # Hash the information and return. + sha512 = hashlib.sha512() + sha512.update(outstr) + outstr = sha512.hexdigest() + + return outstr + + +def test_plot(): + harness = PlotTestHarness(('projection1.png', 'projection2.png', 'projection3.png')) + harness.main() From bad79975b04f30f6025310cbe8982d54b3d7c458 Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Thu, 16 Dec 2021 14:10:19 -0500 Subject: [PATCH 018/959] make wireframes not spotty --- src/plot.cpp | 59 +++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 42 insertions(+), 17 deletions(-) diff --git a/src/plot.cpp b/src/plot.cpp index bb643af53..2d5d039cb 100644 --- a/src/plot.cpp +++ b/src/plot.cpp @@ -1085,16 +1085,28 @@ void ProjectionPlot::create_output() const s.u.z = 0.0; p.from_source(&s); - // Do preliminary loop to advance to get within the geometry struct TrackSegment { int id; // material or cell ID (which is being colored) double length; // length of this track intersection TrackSegment(int id_a, double length_a) : id(id_a), length(length_a) {} }; - std::vector segments; - std::vector old_segments; + + /* Holds all of the track segments for the current rendered line of pixels. + * old_segments holds a copy of this_line_segments from the previous line. + * By holding both we can check if the cell/material intersection stack + * differs from the left or upper neighbor. This allows a robustly drawn + * wireframe. If only checking the left pixel (which requires substantially + * less memory), the wireframe tends to be spotty and be disconnected for + * surface edges oriented horizontally in the rendering. + * + * Note that a vector of vectors is required rather than a 2-tensor, + * since the stack size varies within each column. + */ + std::vector> this_line_segments(pixels_[0]); + std::vector> old_segments(pixels_[0]); for (int vert = 0; vert < pixels_[1]; ++vert) { + old_segments = this_line_segments; for (int horiz = 0; horiz < pixels_[0]; ++horiz) { double this_phi = phi0 - horiz_fov_radians / 2.0 + dphi * horiz; double this_mu = mu0 - vert_fov_radians / 2.0 + dmu * vert; @@ -1107,17 +1119,16 @@ void ProjectionPlot::create_output() const int loop_counter = 0; const int max_intersections = 1000000; - old_segments = segments; - segments.clear(); + this_line_segments[horiz].clear(); while (intersection_found) { bool inside_cell = exhaustive_find_cell(p); if (inside_cell) { hitsomething = true; intersection_found = true; auto dist = distance_to_boundary(p); - segments.emplace_back(color_by_ == PlotColorBy::mats - ? p.material() - : p.coord(p.n_coord() - 1).cell, + this_line_segments[horiz].emplace_back( + color_by_ == PlotColorBy::mats ? p.material() + : p.coord(p.n_coord() - 1).cell, dist.distance); // Advance particle @@ -1144,6 +1155,7 @@ void ProjectionPlot::create_output() const // Now color the pixel based on what we have intersected... // Loops backwards over intersections. Position current_color(not_found_.red, not_found_.green, not_found_.blue); + const auto& segments = this_line_segments[horiz]; for (unsigned i = segments.size(); i-- > 0;) { int colormap_idx = segments[i].id; RGBColor seg_color = colors_[colormap_idx]; @@ -1157,17 +1169,30 @@ void ProjectionPlot::create_output() const data(horiz, vert) = result; } - // Check to draw wireframe - bool draw_wireframe = false; - if (segments.size() == old_segments.size()) { - for (int i = 0; i < segments.size(); ++i) { - if (segments[i].id != old_segments[i].id) { - draw_wireframe = true; - break; + auto trackstack_equivalent = + [](const std::vector& track1, + const std::vector& track2) -> bool { + if (track1.size() != track2.size()) + return false; + for (int i = 0; i < track1.size(); ++i) { + if (track1[i].id != track2[i].id) { + return false; } } - } else { - draw_wireframe = true; + return true; + }; + + // Check to draw wireframe + bool draw_wireframe = false; + if (horiz > 0) { + draw_wireframe = + draw_wireframe || !trackstack_equivalent(this_line_segments[horiz], + this_line_segments[horiz - 1]); + } + if (vert > 0) { + draw_wireframe = + draw_wireframe || !trackstack_equivalent( + this_line_segments[horiz], old_segments[horiz]); } if (draw_wireframe) { data(horiz, vert) = wireframe_color_; From 071b6fa7967c75e91ae861097b01f6a9adc97a16 Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Thu, 16 Dec 2021 14:41:03 -0500 Subject: [PATCH 019/959] pick up on cell edges, not just boundaries --- include/openmc/plot.h | 34 +++++++++++++++++++++--- src/plot.cpp | 62 ++++++++++++++++++++++++++----------------- 2 files changed, 67 insertions(+), 29 deletions(-) diff --git a/include/openmc/plot.h b/include/openmc/plot.h index af65fb7c3..d9bea700d 100644 --- a/include/openmc/plot.h +++ b/include/openmc/plot.h @@ -290,6 +290,24 @@ private: void set_pixels(pugi::xml_node node); void set_opacities(pugi::xml_node node); + /* Used for drawing wireframe and colors. We record the list of + * surface/cell/material intersections and the corresponding lengths as a ray + * traverses the geometry, then color by iterating in reverse. + */ + struct TrackSegment { + int id; // material or cell ID (which is being colored) + double length; // length of this track intersection + + /* Recording this allows us to draw edges on the wireframe. For instance + * if two surfaces bound a single cell, it allows drawing that sharp edge + * where the surfaces intersect. + */ + int surface; // last surface ID intersected in this segment + TrackSegment(int id_a, double length_a, int surface_a) + : id(id_a), length(length_a), surface(surface_a) + {} + }; + std::array pixels_; // pixel dimension of resulting image double horizontal_field_of_view_ {70.0}; // horiz. f.o.v. in degrees Position camera_position_; // where camera is @@ -301,10 +319,18 @@ private: std::vector xs_; // macro cross section values for cell volume rendering - // If starting the particle from outside the geometry, we have to - // find a distance to the boundary in a non-standard surface intersection - // check. It's an exhaustive search over surfaces in the top-level universe. - static bool advance_to_boundary_from_void(Particle& p); + /* If starting the particle from outside the geometry, we have to + * find a distance to the boundary in a non-standard surface intersection + * check. It's an exhaustive search over surfaces in the top-level universe. + */ + static int advance_to_boundary_from_void(Particle& p); + + /* Checks if a vector of two TrackSegments is equivalent. We define this + * to mean not having matching intersection lengths, but rather having + * a matching sequence of surface/cell/material intersections. + */ + static bool trackstack_equivalent(const std::vector& track1, + const std::vector& track2); }; //=============================================================================== diff --git a/src/plot.cpp b/src/plot.cpp index 2d5d039cb..372c5a25b 100644 --- a/src/plot.cpp +++ b/src/plot.cpp @@ -1025,26 +1025,46 @@ ProjectionPlot::ProjectionPlot(pugi::xml_node node) : PlottableInterface(node) } // Advances to the next boundary from outside the geometry -bool ProjectionPlot::advance_to_boundary_from_void(Particle& p) +// Returns -1 if no intersection found, and the surface index +// if an intersection was found. +int ProjectionPlot::advance_to_boundary_from_void(Particle& p) { constexpr double scoot = 1e-5; double min_dist = {INFINITY}; auto coord = p.coord(0); Universe* uni = model::universes[model::root_universe].get(); + int intersected_surface = -1; for (auto c_i : uni->cells_) { auto dist = model::cells.at(c_i)->distance(coord.r, coord.u, 0, &p); - if (dist.first < min_dist) + if (dist.first < min_dist) { min_dist = dist.first; + intersected_surface = dist.second; + } } if (min_dist > 1e300) - return false; + return -1; else { // advance the particle for (int j = 0; j < p.n_coord(); ++j) p.coord(j).r += (min_dist + scoot) * p.coord(j).u; - return true; + return intersected_surface; } } +bool ProjectionPlot::trackstack_equivalent( + const std::vector& track1, + const std::vector& track2) +{ + if (track1.size() != track2.size()) + return false; + for (int i = 0; i < track1.size(); ++i) { + if (track1[i].id != track2[i].id || + track1[i].surface != track2[i].surface) { + return false; + } + } + return true; +} + void ProjectionPlot::create_output() const { // Get centerline vector for camera-to-model. We create vectors around this @@ -1085,12 +1105,6 @@ void ProjectionPlot::create_output() const s.u.z = 0.0; p.from_source(&s); - struct TrackSegment { - int id; // material or cell ID (which is being colored) - double length; // length of this track intersection - TrackSegment(int id_a, double length_a) : id(id_a), length(length_a) {} - }; - /* Holds all of the track segments for the current rendered line of pixels. * old_segments holds a copy of this_line_segments from the previous line. * By holding both we can check if the cell/material intersection stack @@ -1120,16 +1134,26 @@ void ProjectionPlot::create_output() const const int max_intersections = 1000000; this_line_segments[horiz].clear(); + int first_surface = -1; // surface first passed when entering the model + bool first_inside_model = true; // false after entering the model while (intersection_found) { bool inside_cell = exhaustive_find_cell(p); if (inside_cell) { + + // This allows drawing wireframes with surface intersection + // edges on the model boundary for the same cell. + if (first_inside_model) { + this_line_segments[horiz].emplace_back(0, 0.0, first_surface); + first_inside_model = false; + } + hitsomething = true; intersection_found = true; auto dist = distance_to_boundary(p); this_line_segments[horiz].emplace_back( color_by_ == PlotColorBy::mats ? p.material() : p.coord(p.n_coord() - 1).cell, - dist.distance); + dist.distance, dist.surface_index); // Advance particle for (int lev = 0; lev < p.n_coord(); ++lev) { @@ -1145,7 +1169,8 @@ void ProjectionPlot::create_output() const } } else { - intersection_found = advance_to_boundary_from_void(p); + first_surface = advance_to_boundary_from_void(p); + intersection_found = first_surface != -1; // -1 if no surface found } loop_counter++; if (loop_counter > max_intersections) @@ -1169,19 +1194,6 @@ void ProjectionPlot::create_output() const data(horiz, vert) = result; } - auto trackstack_equivalent = - [](const std::vector& track1, - const std::vector& track2) -> bool { - if (track1.size() != track2.size()) - return false; - for (int i = 0; i < track1.size(); ++i) { - if (track1[i].id != track2[i].id) { - return false; - } - } - return true; - }; - // Check to draw wireframe bool draw_wireframe = false; if (horiz > 0) { From d51fd873ab3d4b6fdac00111f6b573ae713bfa4d Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Thu, 16 Dec 2021 15:10:16 -0500 Subject: [PATCH 020/959] read user-provided plot names, also more sophisticated file extension checking --- include/openmc/plot.h | 1 + src/plot.cpp | 44 +++++++++++++++++++++++++++++++++++++------ 2 files changed, 39 insertions(+), 6 deletions(-) diff --git a/include/openmc/plot.h b/include/openmc/plot.h index d9bea700d..d35259dba 100644 --- a/include/openmc/plot.h +++ b/include/openmc/plot.h @@ -284,6 +284,7 @@ public: virtual void print_info() const; private: + void set_output_path(pugi::xml_node plot_node); void set_look_at(pugi::xml_node node); void set_camera_position(pugi::xml_node node); void set_field_of_view(pugi::xml_node node); diff --git a/src/plot.cpp b/src/plot.cpp index 372c5a25b..a63a16e0e 100644 --- a/src/plot.cpp +++ b/src/plot.cpp @@ -290,6 +290,17 @@ void PlottableInterface::set_id(pugi::xml_node plot_node) } } +// Checks if png or ppm is already present +bool file_extension_present( + const std::string& filename, const std::string& extension) +{ + std::string file_extension_if_present = + filename.substr(filename.find_last_of(".") + 1); + if (file_extension_if_present == extension) + return true; + return false; +} + void Plot::set_output_path(pugi::xml_node plot_node) { // Set output file path @@ -304,13 +315,16 @@ void Plot::set_output_path(pugi::xml_node plot_node) switch (type_) { case PlotType::slice: #ifdef USE_LIBPNG - filename.append(".png"); + if (!file_extension_present(filename, "png")) + filename.append(".png"); #else - filename.append(".ppm"); + if (!file_extension_present(filename, "ppm")) + filename.append(".ppm"); #endif break; case PlotType::voxel: - filename.append(".h5"); + if (!file_extension_present(filename, "h5")) + filename.append(".h5"); break; } @@ -1013,15 +1027,33 @@ RGBColor random_color(void) ProjectionPlot::ProjectionPlot(pugi::xml_node node) : PlottableInterface(node) { + set_output_path(node); set_look_at(node); set_camera_position(node); set_field_of_view(node); set_pixels(node); set_opacities(node); +} - // TODO naming stuff... - std::string name = "projection" + std::to_string(id()) + ".png"; - path_plot_ = name; +void ProjectionPlot::set_output_path(pugi::xml_node node) +{ + // Set output file path + std::string filename; + + if (check_for_node(node, "filename")) { + filename = get_node_value(node, "filename"); + } else { + filename = fmt::format("plot_{}", id()); + } + +#ifdef USE_LIBPNG + if (!file_extension_present(filename, "png")) + filename.append(".png"); +#else + if (!file_extension_present(filename, "ppm")) + filename.append(".ppm"); +#endif + path_plot_ = filename; } // Advances to the next boundary from outside the geometry From 76cc722090f4cd856131cb48affc69eebed88cbd Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Thu, 16 Dec 2021 17:24:32 -0500 Subject: [PATCH 021/959] add option to do orthographic projection --- include/openmc/plot.h | 13 +++++++-- include/openmc/position.h | 5 ++++ src/plot.cpp | 59 +++++++++++++++++++++++++++++++++------ 3 files changed, 65 insertions(+), 12 deletions(-) diff --git a/include/openmc/plot.h b/include/openmc/plot.h index d35259dba..c4476af41 100644 --- a/include/openmc/plot.h +++ b/include/openmc/plot.h @@ -274,9 +274,6 @@ public: class ProjectionPlot : public PlottableInterface { - // TODO add optional choice between perspective or orthographic - // TODO add optionl to turn off wireframe - public: ProjectionPlot(pugi::xml_node plot); @@ -290,6 +287,7 @@ private: void set_field_of_view(pugi::xml_node node); void set_pixels(pugi::xml_node node); void set_opacities(pugi::xml_node node); + void set_orthographic_width(pugi::xml_node node); /* Used for drawing wireframe and colors. We record the list of * surface/cell/material intersections and the corresponding lengths as a ray @@ -316,6 +314,12 @@ private: Direction up_ {0.0, 0.0, 1.0}; // which way is up bool wireframe_; // draw wireframe around ID boundaries (material or cell // based on color_by) + + /* The horizontal thickness, if using an orthographic projection. + * If set to zero, we assume using a perspective projection. + */ + double orthographic_width_ {0.0}; + RGBColor wireframe_color_ {BLACK}; // wireframe color std::vector xs_; // macro cross section values for cell volume rendering @@ -332,6 +336,9 @@ private: */ static bool trackstack_equivalent(const std::vector& track1, const std::vector& track2); + + // Closed form 3x3 matrix inversion + static std::vector invert_matrix(const std::vector& input); }; //=============================================================================== diff --git a/include/openmc/position.h b/include/openmc/position.h index 4fde420cc..0200cda3b 100644 --- a/include/openmc/position.h +++ b/include/openmc/position.h @@ -83,6 +83,11 @@ struct Position { return x * other.x + y * other.y + z * other.z; } inline double norm() const { return std::sqrt(x * x + y * y + z * z); } + inline Position cross(Position other) const + { + return {y * other.z - z * other.y, z * other.x - x * other.z, + x * other.y - y * other.x}; + } //! Reflect a direction across a normal vector //! \param[in] other Vector to reflect across diff --git a/src/plot.cpp b/src/plot.cpp index a63a16e0e..67e36c448 100644 --- a/src/plot.cpp +++ b/src/plot.cpp @@ -1033,6 +1033,12 @@ ProjectionPlot::ProjectionPlot(pugi::xml_node node) : PlottableInterface(node) set_field_of_view(node); set_pixels(node); set_opacities(node); + set_orthographic_width(node); + + if (check_for_node(node, "orthographic_width") && + check_for_node(node, "field_of_view")) + fatal_error("orthographic_width and field_of_view are mutually exclusive " + "parameters."); } void ProjectionPlot::set_output_path(pugi::xml_node node) @@ -1101,15 +1107,26 @@ void ProjectionPlot::create_output() const { // Get centerline vector for camera-to-model. We create vectors around this // that form a pixel array, and then trace rays along that. + auto up = up_ / up_.norm(); Direction looking_direction = look_at_ - camera_position_; looking_direction /= looking_direction.norm(); + if (std::abs(std::abs(looking_direction.dot(up)) - 1.0) < 1e-9) + fatal_error("Up vector cannot align with vector between camera position " + "and look_at!"); + Direction cam_yaxis = looking_direction.cross(up); + cam_yaxis /= cam_yaxis.norm(); + Direction cam_zaxis = cam_yaxis.cross(looking_direction); + cam_zaxis /= cam_zaxis.norm(); + + // Transformation matrix for directions + std::vector camera_to_model = {looking_direction.x, cam_yaxis.x, + cam_zaxis.x, looking_direction.y, cam_yaxis.y, cam_zaxis.y, + looking_direction.z, cam_yaxis.z, cam_zaxis.z}; // Now we convert to the polar coordinate system with the polar angle // measuring the angle from the vector up_. Phi is the rotation about up_. For // now, up_ is hard-coded to be +z. constexpr double DEGREE_TO_RADIAN = M_PI / 180.0; - double phi0 = std::atan2(looking_direction.y, looking_direction.x); - double mu0 = std::acos(looking_direction.z); double horiz_fov_radians = horizontal_field_of_view_ * DEGREE_TO_RADIAN; double p0 = static_cast(pixels_[0]); double p1 = static_cast(pixels_[1]); @@ -1154,11 +1171,25 @@ void ProjectionPlot::create_output() const for (int vert = 0; vert < pixels_[1]; ++vert) { old_segments = this_line_segments; for (int horiz = 0; horiz < pixels_[0]; ++horiz) { - double this_phi = phi0 - horiz_fov_radians / 2.0 + dphi * horiz; - double this_mu = mu0 - vert_fov_radians / 2.0 + dmu * vert; - s.u.x = std::cos(this_phi) * std::sin(this_mu); - s.u.y = std::sin(this_phi) * std::sin(this_mu); - s.u.z = std::cos(this_mu); + + // Generate the starting position/direction of the ray + if (orthographic_width_ == 0.0) { // perspective projection + double this_phi = -horiz_fov_radians / 2.0 + dphi * horiz; + double this_mu = -vert_fov_radians / 2.0 + dmu * vert + M_PI / 2.0; + Direction camera_local_vec; + camera_local_vec.x = std::cos(this_phi) * std::sin(this_mu); + camera_local_vec.y = std::sin(this_phi) * std::sin(this_mu); + camera_local_vec.z = std::cos(this_mu); + s.u = camera_local_vec.rotate(camera_to_model); + } else { // orthographic projection + s.u = looking_direction; + + double x_pix_coord = (static_cast(horiz) - p0 / 2.0) / p0; + double y_pix_coord = (static_cast(vert) - p1 / 2.0) / p0; + s.r = camera_position_ + cam_yaxis * x_pix_coord * orthographic_width_ + + cam_zaxis * y_pix_coord * orthographic_width_; + } + p.from_source(&s); // put particle at camera bool hitsomething = false; bool intersection_found = true; @@ -1238,7 +1269,7 @@ void ProjectionPlot::create_output() const draw_wireframe || !trackstack_equivalent( this_line_segments[horiz], old_segments[horiz]); } - if (draw_wireframe) { + if (draw_wireframe && wireframe_) { data(horiz, vert) = wireframe_color_; } } @@ -1263,7 +1294,6 @@ void ProjectionPlot::print_info() const void ProjectionPlot::set_opacities(pugi::xml_node node) { - xs_.resize(colors_.size(), 1e6); // set to large value for opaque by default for (auto cn : node.children("color")) { @@ -1292,6 +1322,17 @@ void ProjectionPlot::set_opacities(pugi::xml_node node) } } +void ProjectionPlot::set_orthographic_width(pugi::xml_node node) +{ + if (check_for_node(node, "orthographic_width")) { + double orthographic_width = + std::stod(get_node_value(node, "orthographic_width", true)); + if (orthographic_width < 0.0) + fatal_error("Requires positive orthographic_width"); + orthographic_width_ = orthographic_width; + } +} + void ProjectionPlot::set_pixels(pugi::xml_node node) { vector pxls = get_node_array(node, "pixels"); From a030aaa59dd736d4a7304f622f223fcc81deff2d Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Thu, 16 Dec 2021 18:02:14 -0500 Subject: [PATCH 022/959] fix projection plot tests --- include/openmc/plot.h | 4 ++-- .../plot_projections/geometry.xml | 2 +- .../plot_projections/plots.xml | 24 ++++++++++++++++++- .../plot_projections/results_true.dat | 2 +- .../regression_tests/plot_projections/test.py | 2 +- 5 files changed, 28 insertions(+), 6 deletions(-) diff --git a/include/openmc/plot.h b/include/openmc/plot.h index c4476af41..7e85996de 100644 --- a/include/openmc/plot.h +++ b/include/openmc/plot.h @@ -312,8 +312,8 @@ private: Position camera_position_; // where camera is Position look_at_; // point camera is centered looking at Direction up_ {0.0, 0.0, 1.0}; // which way is up - bool wireframe_; // draw wireframe around ID boundaries (material or cell - // based on color_by) + bool wireframe_ {true}; // draw wireframe around ID boundaries (material or + // cell based on color_by) /* The horizontal thickness, if using an orthographic projection. * If set to zero, we assume using a perspective projection. diff --git a/tests/regression_tests/plot_projections/geometry.xml b/tests/regression_tests/plot_projections/geometry.xml index 982187644..a648dfe92 100644 --- a/tests/regression_tests/plot_projections/geometry.xml +++ b/tests/regression_tests/plot_projections/geometry.xml @@ -4,7 +4,7 @@ - + diff --git a/tests/regression_tests/plot_projections/plots.xml b/tests/regression_tests/plot_projections/plots.xml index 2d22c8865..b25f177b0 100644 --- a/tests/regression_tests/plot_projections/plots.xml +++ b/tests/regression_tests/plot_projections/plots.xml @@ -13,11 +13,12 @@ 0. 0. 0. - 20. 20. 20. + 10. 10. 0. 25 25 200 200 90 + example1 @@ -25,6 +26,27 @@ 20. 20. 20. 200 200 240 240 240 + example2.png + + + + 0. 0. 0. + 0. 10.0 20. + 200 200 + 110 240 240 + example3.png + + + + 0. 0. 0. + 10. 10. 10. + 25 25 + 200 200 + 25.0 + orthographic_example1 + + + diff --git a/tests/regression_tests/plot_projections/results_true.dat b/tests/regression_tests/plot_projections/results_true.dat index 45e097f62..004b752eb 100644 --- a/tests/regression_tests/plot_projections/results_true.dat +++ b/tests/regression_tests/plot_projections/results_true.dat @@ -1 +1 @@ -8231bc2d60bee9df464fbf3c5b2ea611dcd0f10232f6a9b04f58fc5226716acb31580578f74d194f8ab2df1848ea1556621bf997e1d1562d5eb8471def2a5f24 \ No newline at end of file +5fdff140078cd45efe7a507feeb06c00fa735820157a9a5a066905468b1052640c3b81065f968f6280c05eef7e9e4305a631e0e0aa2e467c9bd9d4f1a097ab09 \ No newline at end of file diff --git a/tests/regression_tests/plot_projections/test.py b/tests/regression_tests/plot_projections/test.py index 2e1f4cd8d..972e0e0d7 100644 --- a/tests/regression_tests/plot_projections/test.py +++ b/tests/regression_tests/plot_projections/test.py @@ -56,5 +56,5 @@ class PlotTestHarness(TestHarness): def test_plot(): - harness = PlotTestHarness(('projection1.png', 'projection2.png', 'projection3.png')) + harness = PlotTestHarness(('plot_1.png', 'example1.png', 'example3.png', 'orthographic_example1.png')) harness.main() From a832fc8b9408056830dd5f17d51b08003a21ac1d Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Fri, 17 Dec 2021 17:11:49 -0500 Subject: [PATCH 023/959] adjustable wireframe thickness --- include/openmc/plot.h | 6 ++++-- src/plot.cpp | 41 +++++++++++++++++++++++++++++++++++++++-- 2 files changed, 43 insertions(+), 4 deletions(-) diff --git a/include/openmc/plot.h b/include/openmc/plot.h index 7e85996de..a58480c6b 100644 --- a/include/openmc/plot.h +++ b/include/openmc/plot.h @@ -288,6 +288,7 @@ private: void set_pixels(pugi::xml_node node); void set_opacities(pugi::xml_node node); void set_orthographic_width(pugi::xml_node node); + void set_wireframe_thickness(pugi::xml_node node); /* Used for drawing wireframe and colors. We record the list of * surface/cell/material intersections and the corresponding lengths as a ray @@ -312,14 +313,15 @@ private: Position camera_position_; // where camera is Position look_at_; // point camera is centered looking at Direction up_ {0.0, 0.0, 1.0}; // which way is up - bool wireframe_ {true}; // draw wireframe around ID boundaries (material or - // cell based on color_by) /* The horizontal thickness, if using an orthographic projection. * If set to zero, we assume using a perspective projection. */ double orthographic_width_ {0.0}; + // Thickness of the wireframe lines. Can set to zero for no wireframe. + int wireframe_thickness_ {1}; + RGBColor wireframe_color_ {BLACK}; // wireframe color std::vector xs_; // macro cross section values for cell volume rendering diff --git a/src/plot.cpp b/src/plot.cpp index 67e36c448..8e2816005 100644 --- a/src/plot.cpp +++ b/src/plot.cpp @@ -1034,6 +1034,7 @@ ProjectionPlot::ProjectionPlot(pugi::xml_node node) : PlottableInterface(node) set_pixels(node); set_opacities(node); set_orthographic_width(node); + set_wireframe_thickness(node); if (check_for_node(node, "orthographic_width") && check_for_node(node, "field_of_view")) @@ -1138,6 +1139,11 @@ void ProjectionPlot::create_output() const size_t height = pixels_[1]; ImageData data({width, height}, not_found_); + // This array marks where the initial wireframe was drawn. + // We convolve it with a filter that gets adjusted with the + // wireframe thickness in order to thicken the lines. + xt::xtensor wireframe_initial({width, height}, 0); + // Loop over horizontal lines (vert field of view) SourceSite s; // Where particle starts from (camera) s.E = 1; @@ -1269,11 +1275,31 @@ void ProjectionPlot::create_output() const draw_wireframe || !trackstack_equivalent( this_line_segments[horiz], old_segments[horiz]); } - if (draw_wireframe && wireframe_) { - data(horiz, vert) = wireframe_color_; + if (draw_wireframe) { + wireframe_initial(horiz, vert) = 1; } } } + + // Now thicken the wireframe lines and apply them to our image + for (int vert = 0; vert < pixels_[1]; ++vert) { + for (int horiz = 0; horiz < pixels_[0]; ++horiz) { + if (wireframe_initial(horiz, vert)) { + if (wireframe_thickness_ == 1) + data(horiz, vert) = wireframe_color_; + for (int i = -wireframe_thickness_ / 2; i < wireframe_thickness_ / 2; + ++i) + for (int j = -wireframe_thickness_ / 2; j < wireframe_thickness_ / 2; + ++j) + if (i * i + j * j < wireframe_thickness_ * wireframe_thickness_) { + if (horiz + i >= 0 && horiz + i < pixels_[0] && vert + j >= 0 && + vert + j < pixels_[1]) + data(horiz + i, vert + j) = wireframe_color_; + } + } + } + } + #ifdef USE_LIBPNG output_png(path_plot(), data); #else @@ -1333,6 +1359,17 @@ void ProjectionPlot::set_orthographic_width(pugi::xml_node node) } } +void ProjectionPlot::set_wireframe_thickness(pugi::xml_node node) +{ + if (check_for_node(node, "wireframe_thickness")) { + int wireframe_thickness = + std::stoi(get_node_value(node, "wireframe_thickness", true)); + if (wireframe_thickness < 0) + fatal_error("Requires non-negative wireframe thickness"); + wireframe_thickness_ = wireframe_thickness; + } +} + void ProjectionPlot::set_pixels(pugi::xml_node node) { vector pxls = get_node_array(node, "pixels"); From c9e296d2a98c93bb6fdf169be8e25e52ed60e586 Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Fri, 17 Dec 2021 17:12:55 -0500 Subject: [PATCH 024/959] update tests --- tests/regression_tests/plot_projections/plots.xml | 2 ++ tests/regression_tests/plot_projections/results_true.dat | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/regression_tests/plot_projections/plots.xml b/tests/regression_tests/plot_projections/plots.xml index b25f177b0..11fa27211 100644 --- a/tests/regression_tests/plot_projections/plots.xml +++ b/tests/regression_tests/plot_projections/plots.xml @@ -18,6 +18,7 @@ 200 200 90 + 4 example1 @@ -43,6 +44,7 @@ 25 25 200 200 25.0 + 2 orthographic_example1 diff --git a/tests/regression_tests/plot_projections/results_true.dat b/tests/regression_tests/plot_projections/results_true.dat index 004b752eb..638981dc7 100644 --- a/tests/regression_tests/plot_projections/results_true.dat +++ b/tests/regression_tests/plot_projections/results_true.dat @@ -1 +1 @@ -5fdff140078cd45efe7a507feeb06c00fa735820157a9a5a066905468b1052640c3b81065f968f6280c05eef7e9e4305a631e0e0aa2e467c9bd9d4f1a097ab09 \ No newline at end of file +96690b9e545d24b4e922aa30bffdd09863315e4a10301a5402c1b9f196a5ad67a1c8ac00231a1eeadb5d9c4f87cccd13bd86105765b002572acc4a33a32b070f \ No newline at end of file From 030c3af9e43cba25587510558f538738dde1757b Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Sun, 19 Dec 2021 01:10:51 -0500 Subject: [PATCH 025/959] parallelization of projection plots almost works except edge case --- include/openmc/plot.h | 7 -- src/plot.cpp | 279 +++++++++++++++++++++++++----------------- 2 files changed, 170 insertions(+), 116 deletions(-) diff --git a/include/openmc/plot.h b/include/openmc/plot.h index a58480c6b..b076c0870 100644 --- a/include/openmc/plot.h +++ b/include/openmc/plot.h @@ -235,13 +235,6 @@ T SlicePlotBase::get_map() const return data; } -// Provides methods and data for controlling plot colors -class PlotColorMixin { -protected: - -public: -}; - // Represents either a voxel or pixel plot class Plot : public PlottableInterface, public SlicePlotBase { diff --git a/src/plot.cpp b/src/plot.cpp index 8e2816005..c2911f872 100644 --- a/src/plot.cpp +++ b/src/plot.cpp @@ -1144,22 +1144,6 @@ void ProjectionPlot::create_output() const // wireframe thickness in order to thicken the lines. xt::xtensor wireframe_initial({width, height}, 0); - // Loop over horizontal lines (vert field of view) - SourceSite s; // Where particle starts from (camera) - s.E = 1; - s.wgt = 1; - s.delayed_group = 0; - s.particle = ParticleType::photon; // just has to be something reasonable - s.parent_id = 1; - s.progeny_id = 2; - s.r = camera_position_; - - Particle p; - s.u.x = 1.0; - s.u.y = 0.0; - s.u.z = 0.0; - p.from_source(&s); - /* Holds all of the track segments for the current rendered line of pixels. * old_segments holds a copy of this_line_segments from the previous line. * By holding both we can check if the cell/material intersection stack @@ -1171,115 +1155,192 @@ void ProjectionPlot::create_output() const * Note that a vector of vectors is required rather than a 2-tensor, * since the stack size varies within each column. */ - std::vector> this_line_segments(pixels_[0]); +#ifdef _OPENMP + const int n_threads = omp_get_max_threads(); +#else + const int n_threads = 1; +#endif + std::vector>> this_line_segments( + omp_get_max_threads()); + for (int t = 0; t < omp_get_max_threads(); ++t) { + this_line_segments[t].resize(pixels_[0]); + } + + // The last thread writes to this, and the first thread reads from it. std::vector> old_segments(pixels_[0]); - for (int vert = 0; vert < pixels_[1]; ++vert) { - old_segments = this_line_segments; - for (int horiz = 0; horiz < pixels_[0]; ++horiz) { +#pragma omp parallel + { - // Generate the starting position/direction of the ray - if (orthographic_width_ == 0.0) { // perspective projection - double this_phi = -horiz_fov_radians / 2.0 + dphi * horiz; - double this_mu = -vert_fov_radians / 2.0 + dmu * vert + M_PI / 2.0; - Direction camera_local_vec; - camera_local_vec.x = std::cos(this_phi) * std::sin(this_mu); - camera_local_vec.y = std::sin(this_phi) * std::sin(this_mu); - camera_local_vec.z = std::cos(this_mu); - s.u = camera_local_vec.rotate(camera_to_model); - } else { // orthographic projection - s.u = looking_direction; +#ifdef _OPENMP + const int n_threads = omp_get_max_threads(); + const int tid = omp_get_thread_num(); +#else + int n_threads = 1; + int tid = 0; +#endif - double x_pix_coord = (static_cast(horiz) - p0 / 2.0) / p0; - double y_pix_coord = (static_cast(vert) - p1 / 2.0) / p0; - s.r = camera_position_ + cam_yaxis * x_pix_coord * orthographic_width_ + - cam_zaxis * y_pix_coord * orthographic_width_; - } + SourceSite s; // Where particle starts from (camera) + s.E = 1; + s.wgt = 1; + s.delayed_group = 0; + s.particle = ParticleType::photon; // just has to be something reasonable + s.parent_id = 1; + s.progeny_id = 2; + s.r = camera_position_; - p.from_source(&s); // put particle at camera - bool hitsomething = false; - bool intersection_found = true; - int loop_counter = 0; - const int max_intersections = 1000000; + Particle p; + s.u.x = 1.0; + s.u.y = 0.0; + s.u.z = 0.0; + p.from_source(&s); - this_line_segments[horiz].clear(); - int first_surface = -1; // surface first passed when entering the model - bool first_inside_model = true; // false after entering the model - while (intersection_found) { - bool inside_cell = exhaustive_find_cell(p); - if (inside_cell) { + int vert = omp_get_thread_num(); + for (int iter = 0; iter <= pixels_[1] / n_threads; iter++) { + if (vert < pixels_[1]) { - // This allows drawing wireframes with surface intersection - // edges on the model boundary for the same cell. - if (first_inside_model) { - this_line_segments[horiz].emplace_back(0, 0.0, first_surface); - first_inside_model = false; + // Save bottom line of current work chunk to compare against later + if (tid == n_threads - 1) + old_segments = this_line_segments[n_threads - 1]; + + for (int horiz = 0; horiz < pixels_[0]; ++horiz) { + + // Generate the starting position/direction of the ray + if (orthographic_width_ == 0.0) { // perspective projection + double this_phi = -horiz_fov_radians / 2.0 + dphi * horiz; + double this_mu = -vert_fov_radians / 2.0 + dmu * vert + M_PI / 2.0; + Direction camera_local_vec; + camera_local_vec.x = std::cos(this_phi) * std::sin(this_mu); + camera_local_vec.y = std::sin(this_phi) * std::sin(this_mu); + camera_local_vec.z = std::cos(this_mu); + s.u = camera_local_vec.rotate(camera_to_model); + } else { // orthographic projection + s.u = looking_direction; + + double x_pix_coord = (static_cast(horiz) - p0 / 2.0) / p0; + double y_pix_coord = (static_cast(vert) - p1 / 2.0) / p0; + s.r = camera_position_ + + cam_yaxis * x_pix_coord * orthographic_width_ + + cam_zaxis * y_pix_coord * orthographic_width_; } - hitsomething = true; - intersection_found = true; - auto dist = distance_to_boundary(p); - this_line_segments[horiz].emplace_back( - color_by_ == PlotColorBy::mats ? p.material() - : p.coord(p.n_coord() - 1).cell, - dist.distance, dist.surface_index); + p.from_source(&s); // put particle at camera + bool hitsomething = false; + bool intersection_found = true; + int loop_counter = 0; + const int max_intersections = 1000000; - // Advance particle - for (int lev = 0; lev < p.n_coord(); ++lev) { - p.coord(lev).r += dist.distance * p.coord(lev).u; - } - p.surface() = dist.surface_index; - p.n_coord_last() = p.n_coord(); - p.n_coord() = dist.coord_level; - if (dist.lattice_translation[0] != 0 || - dist.lattice_translation[1] != 0 || - dist.lattice_translation[2] != 0) { - cross_lattice(p, dist); + this_line_segments[tid][horiz].clear(); + + int first_surface = + -1; // surface first passed when entering the model + bool first_inside_model = true; // false after entering the model + while (intersection_found) { + bool inside_cell = exhaustive_find_cell(p); + if (inside_cell) { + + // This allows drawing wireframes with surface intersection + // edges on the model boundary for the same cell. + if (first_inside_model) { + this_line_segments[tid][horiz].emplace_back( + 0, 0.0, first_surface); + first_inside_model = false; + } + + hitsomething = true; + intersection_found = true; + auto dist = distance_to_boundary(p); + this_line_segments[tid][horiz].emplace_back( + color_by_ == PlotColorBy::mats ? p.material() + : p.coord(p.n_coord() - 1).cell, + dist.distance, dist.surface_index); + + // Advance particle + for (int lev = 0; lev < p.n_coord(); ++lev) { + p.coord(lev).r += dist.distance * p.coord(lev).u; + } + p.surface() = dist.surface_index; + p.n_coord_last() = p.n_coord(); + p.n_coord() = dist.coord_level; + if (dist.lattice_translation[0] != 0 || + dist.lattice_translation[1] != 0 || + dist.lattice_translation[2] != 0) { + cross_lattice(p, dist); + } + + } else { + first_surface = advance_to_boundary_from_void(p); + intersection_found = + first_surface != -1; // -1 if no surface found + } + loop_counter++; + if (loop_counter > max_intersections) + fatal_error("Infinite loop in projection plot"); } - } else { - first_surface = advance_to_boundary_from_void(p); - intersection_found = first_surface != -1; // -1 if no surface found + // Now color the pixel based on what we have intersected... + // Loops backwards over intersections. + Position current_color( + not_found_.red, not_found_.green, not_found_.blue); + const auto& segments = this_line_segments[tid][horiz]; + for (unsigned i = segments.size(); i-- > 0;) { + int colormap_idx = segments[i].id; + RGBColor seg_color = colors_[colormap_idx]; + Position seg_color_vec( + seg_color.red, seg_color.green, seg_color.blue); + double mixing = std::exp(-xs_[colormap_idx] * segments[i].length); + current_color = + current_color * mixing + (1.0 - mixing) * seg_color_vec; + RGBColor result; + result.red = static_cast(current_color.x); + result.green = static_cast(current_color.y); + result.blue = static_cast(current_color.z); + data(horiz, vert) = result; + } + + // Check to draw wireframe in horizontal direction. No inter-thread + // comm. + if (horiz > 0) { + if (!trackstack_equivalent(this_line_segments[tid][horiz], + this_line_segments[tid][horiz - 1])) { + wireframe_initial(horiz, vert) = 1; + } + } + } + } // end "if" vert in correct range + + // We require a barrier before comparing vertical neighbors' intersection + // stacks. i.e. all threads must be done with their line. +#pragma omp barrier + + // Now that the horizontal line has finished rendering, we can fill in + // wireframe entries that require comparison among all the threads. Hence + // the omp barrier being used. It has to be OUTSIDE any if blocks! + if (vert < pixels_[1]) { + // Loop over horizontal pixels, checking intersection stack of upper + // neighbor + + const std::vector>* top_cmp = nullptr; + if (tid == 0) + top_cmp = &old_segments; + else + top_cmp = &this_line_segments[tid - 1]; + + for (int horiz = 0; horiz < pixels_[0]; ++horiz) { + if (!trackstack_equivalent( + this_line_segments[tid][horiz], (*top_cmp)[horiz])) { + wireframe_initial(horiz, vert) = 1; + } } - loop_counter++; - if (loop_counter > max_intersections) - fatal_error("Infinite loop in projection plot"); } - // Now color the pixel based on what we have intersected... - // Loops backwards over intersections. - Position current_color(not_found_.red, not_found_.green, not_found_.blue); - const auto& segments = this_line_segments[horiz]; - for (unsigned i = segments.size(); i-- > 0;) { - int colormap_idx = segments[i].id; - RGBColor seg_color = colors_[colormap_idx]; - Position seg_color_vec(seg_color.red, seg_color.green, seg_color.blue); - double mixing = std::exp(-xs_[colormap_idx] * segments[i].length); - current_color = current_color * mixing + (1.0 - mixing) * seg_color_vec; - RGBColor result; - result.red = static_cast(current_color.x); - result.green = static_cast(current_color.y); - result.blue = static_cast(current_color.z); - data(horiz, vert) = result; - } - - // Check to draw wireframe - bool draw_wireframe = false; - if (horiz > 0) { - draw_wireframe = - draw_wireframe || !trackstack_equivalent(this_line_segments[horiz], - this_line_segments[horiz - 1]); - } - if (vert > 0) { - draw_wireframe = - draw_wireframe || !trackstack_equivalent( - this_line_segments[horiz], old_segments[horiz]); - } - if (draw_wireframe) { - wireframe_initial(horiz, vert) = 1; - } + // We need another barrier to ensure threads don't proceed to modify their + // intersection stacks on that horizontal line while others are + // potentially still working on the above. +#pragma omp barrier + vert += n_threads; } - } + } // end omp parallel // Now thicken the wireframe lines and apply them to our image for (int vert = 0; vert < pixels_[1]; ++vert) { From a0401906cd5c94d6668c902ec8a8447528f478cc Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Sun, 19 Dec 2021 01:21:01 -0500 Subject: [PATCH 026/959] parallel projection plotting now matches single thread results --- src/plot.cpp | 12 ++++++++---- .../plot_projections/results_true.dat | 2 +- tests/regression_tests/plot_projections/test.py | 2 +- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/plot.cpp b/src/plot.cpp index c2911f872..f7d1224f2 100644 --- a/src/plot.cpp +++ b/src/plot.cpp @@ -1197,11 +1197,15 @@ void ProjectionPlot::create_output() const int vert = omp_get_thread_num(); for (int iter = 0; iter <= pixels_[1] / n_threads; iter++) { - if (vert < pixels_[1]) { - // Save bottom line of current work chunk to compare against later - if (tid == n_threads - 1) - old_segments = this_line_segments[n_threads - 1]; + // Save bottom line of current work chunk to compare against later + // I used to have this inside the below if block, but it causes a + // spurious line to be drawn at the bottom of the image. Not sure + // why, but moving it here fixes things. + if (tid == n_threads - 1) + old_segments = this_line_segments[n_threads - 1]; + + if (vert < pixels_[1]) { for (int horiz = 0; horiz < pixels_[0]; ++horiz) { diff --git a/tests/regression_tests/plot_projections/results_true.dat b/tests/regression_tests/plot_projections/results_true.dat index 638981dc7..7f41f6a40 100644 --- a/tests/regression_tests/plot_projections/results_true.dat +++ b/tests/regression_tests/plot_projections/results_true.dat @@ -1 +1 @@ -96690b9e545d24b4e922aa30bffdd09863315e4a10301a5402c1b9f196a5ad67a1c8ac00231a1eeadb5d9c4f87cccd13bd86105765b002572acc4a33a32b070f \ No newline at end of file +186d646c4959755bf809d35c9f33a931fbd5195145131ae6764955bf276d44acf24970dfff76001106b93a7ce239d67d569440136b13073082c8ee23419d721e \ No newline at end of file diff --git a/tests/regression_tests/plot_projections/test.py b/tests/regression_tests/plot_projections/test.py index 972e0e0d7..c390a06ab 100644 --- a/tests/regression_tests/plot_projections/test.py +++ b/tests/regression_tests/plot_projections/test.py @@ -56,5 +56,5 @@ class PlotTestHarness(TestHarness): def test_plot(): - harness = PlotTestHarness(('plot_1.png', 'example1.png', 'example3.png', 'orthographic_example1.png')) + harness = PlotTestHarness(('plot_1.png', 'example1.png', 'example2.png', 'example3.png', 'orthographic_example1.png')) harness.main() From 31174736e97d110f628d9e8c982ef85b657672a3 Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Sun, 19 Dec 2021 01:27:29 -0500 Subject: [PATCH 027/959] fix for non-OMP compile --- src/plot.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/plot.cpp b/src/plot.cpp index f7d1224f2..2e849c907 100644 --- a/src/plot.cpp +++ b/src/plot.cpp @@ -1161,8 +1161,8 @@ void ProjectionPlot::create_output() const const int n_threads = 1; #endif std::vector>> this_line_segments( - omp_get_max_threads()); - for (int t = 0; t < omp_get_max_threads(); ++t) { + n_threads); + for (int t = 0; t < n_threads; ++t) { this_line_segments[t].resize(pixels_[0]); } @@ -1195,7 +1195,7 @@ void ProjectionPlot::create_output() const s.u.z = 0.0; p.from_source(&s); - int vert = omp_get_thread_num(); + int vert = tid; for (int iter = 0; iter <= pixels_[1] / n_threads; iter++) { // Save bottom line of current work chunk to compare against later From 6726cc378f3025a9cd1c7dfe4245e245188204fd Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Sun, 9 Jan 2022 01:54:38 -0500 Subject: [PATCH 028/959] add unit test, select wireframing by id --- include/openmc/plot.h | 8 +- openmc/plots.py | 513 +++++++++++++++++++++++++-------- src/plot.cpp | 89 +++++- tests/unit_tests/test_plots.py | 52 +++- 4 files changed, 530 insertions(+), 132 deletions(-) diff --git a/include/openmc/plot.h b/include/openmc/plot.h index b076c0870..b09727835 100644 --- a/include/openmc/plot.h +++ b/include/openmc/plot.h @@ -282,6 +282,8 @@ private: void set_opacities(pugi::xml_node node); void set_orthographic_width(pugi::xml_node node); void set_wireframe_thickness(pugi::xml_node node); + void set_wireframe_ids(pugi::xml_node node); + void set_wireframe_color(pugi::xml_node node); /* Used for drawing wireframe and colors. We record the list of * surface/cell/material intersections and the corresponding lengths as a ray @@ -306,6 +308,8 @@ private: Position camera_position_; // where camera is Position look_at_; // point camera is centered looking at Direction up_ {0.0, 0.0, 1.0}; // which way is up + std::vector + wireframe_ids_; // which color IDs should be wireframed. If empty, all /* The horizontal thickness, if using an orthographic projection. * If set to zero, we assume using a perspective projection. @@ -329,8 +333,8 @@ private: * to mean not having matching intersection lengths, but rather having * a matching sequence of surface/cell/material intersections. */ - static bool trackstack_equivalent(const std::vector& track1, - const std::vector& track2); + bool trackstack_equivalent(const std::vector& track1, + const std::vector& track2) const; // Closed form 3x3 matrix inversion static std::vector invert_matrix(const std::vector& input); diff --git a/openmc/plots.py b/openmc/plots.py index 4b7d58e3b..7b67fee2c 100644 --- a/openmc/plots.py +++ b/openmc/plots.py @@ -178,14 +178,8 @@ def _get_plot_image(plot, cwd): return Image(str(png_file)) -class Plot(IDManagerMixin): - """Definition of a finite region of space to be plotted. - - OpenMC is capable of generating two-dimensional slice plots and - three-dimensional voxel plots. Colors that are used in plots can be given as - RGB tuples, e.g. (255, 255, 255) would be white, or by a string indicating a - valid `SVG color `_. - +class PlotBase(IDManagerMixin): + """ Parameters ---------- plot_id : int @@ -199,20 +193,12 @@ class Plot(IDManagerMixin): Unique identifier name : str Name of the plot - width : Iterable of float - Width of the plot in each basis direction pixels : Iterable of int Number of pixels to use in each basis direction - origin : tuple or list of ndarray - Origin (center) of the plot filename : Path to write the plot to color_by : {'cell', 'material'} Indicate whether the plot should be colored by cell or by material - type : {'slice', 'voxel'} - The type of the plot - basis : {'xy', 'xz', 'yz'} - The basis directions for the plot background : Iterable of int or str Color of the background mask_components : Iterable of openmc.Cell or openmc.Material or int @@ -230,10 +216,6 @@ class Plot(IDManagerMixin): cell/material). level : int Universe depth to plot at - meshlines : dict - Dictionary defining type, id, linewidth and color of a mesh to be - plotted on top of a plot - """ next_id = 1 @@ -243,13 +225,9 @@ class Plot(IDManagerMixin): # Initialize Plot class attributes self.id = plot_id self.name = name - self._width = [4.0, 4.0] self._pixels = [400, 400] - self._origin = [0., 0., 0.] self._filename = None self._color_by = 'cell' - self._type = 'slice' - self._basis = 'xy' self._background = None self._mask_components = None self._mask_background = None @@ -257,24 +235,15 @@ class Plot(IDManagerMixin): self._overlap_color = None self._colors = {} self._level = None - self._meshlines = None @property def name(self): return self._name - @property - def width(self): - return self._width - @property def pixels(self): return self._pixels - @property - def origin(self): - return self._origin - @property def filename(self): return self._filename @@ -283,14 +252,6 @@ class Plot(IDManagerMixin): def color_by(self): return self._color_by - @property - def type(self): - return self._type - - @property - def basis(self): - return self._basis - @property def background(self): return self._background @@ -319,27 +280,11 @@ class Plot(IDManagerMixin): def level(self): return self._level - @property - def meshlines(self): - return self._meshlines - @name.setter def name(self, name): cv.check_type('plot name', name, str) self._name = name - @width.setter - def width(self, width): - cv.check_type('plot width', width, Iterable, Real) - cv.check_length('plot width', width, 2, 3) - self._width = width - - @origin.setter - def origin(self, origin): - cv.check_type('plot origin', origin, Iterable, Real) - cv.check_length('plot origin', origin, 3) - self._origin = origin - @pixels.setter def pixels(self, pixels): cv.check_type('plot pixels', pixels, Iterable, Integral) @@ -358,16 +303,6 @@ class Plot(IDManagerMixin): cv.check_value('plot color_by', color_by, ['cell', 'material']) self._color_by = color_by - @type.setter - def type(self, plottype): - cv.check_value('plot type', plottype, ['slice', 'voxel']) - self._type = plottype - - @basis.setter - def basis(self, basis): - cv.check_value('plot basis', basis, _BASES) - self._basis = basis - @background.setter def background(self, background): self._check_color('plot background', background) @@ -410,6 +345,132 @@ class Plot(IDManagerMixin): cv.check_greater_than('plot level', plot_level, 0, equality=True) self._level = plot_level + @staticmethod + def _check_color(err_string, color): + cv.check_type(err_string, color, Iterable) + if isinstance(color, str): + if color.lower() not in _SVG_COLORS: + raise ValueError(f"'{color}' is not a valid color.") + else: + cv.check_length(err_string, color, 3) + for rgb in color: + cv.check_type(err_string, rgb, Real) + cv.check_greater_than('RGB component', rgb, 0, True) + cv.check_less_than('RGB component', rgb, 256) + + def colorize(self, geometry, seed=1): + """Generate a color scheme for each domain in the plot. + + This routine may be used to generate random, reproducible color schemes. + The colors generated are based upon cell/material IDs in the geometry. + + Parameters + ---------- + geometry : openmc.Geometry + The geometry for which the plot is defined + seed : Integral + The random number seed used to generate the color scheme + + """ + + cv.check_type('geometry', geometry, openmc.Geometry) + cv.check_type('seed', seed, Integral) + cv.check_greater_than('seed', seed, 1, equality=True) + + # Get collections of the domains which will be plotted + if self.color_by == 'material': + domains = geometry.get_all_materials().values() + else: + domains = geometry.get_all_cells().values() + + # Set the seed for the random number generator + np.random.seed(seed) + + # Generate random colors for each feature + for domain in domains: + self.colors[domain] = np.random.randint(0, 256, (3,)) + +class Plot(PlotBase): + '''Definition of a finite region of space to be plotted. + + OpenMC is capable of generating two-dimensional slice plots, or + three-dimensional voxel or projection plots. Colors that are used in plots can be given as + RGB tuples, e.g. (255, 255, 255) would be white, or by a string indicating a + valid `SVG color `_. + + Parameters + ---------- + plot_id : int + Unique identifier for the plot + name : str + Name of the plot + + Attributes + ---------- + width : Iterable of float + Width of the plot in each basis direction + origin : tuple or list of ndarray + Origin (center) of the plot + type : {'slice', 'voxel'} + The type of the plot + basis : {'xy', 'xz', 'yz'} + The basis directions for the plot + meshlines : dict + Dictionary defining type, id, linewidth and color of a mesh to be + plotted on top of a plot + + ''' + def __init__(self, plot_id=None, name=''): + super().__init__(plot_id, name) + self._width = [4.0, 4.0] + self._origin = [0., 0., 0.] + self._type = 'slice' + self._basis = 'xy' + self._meshlines = None + + @property + def width(self): + return self._width + + @property + def origin(self): + return self._origin + + @property + def type(self): + return self._type + + @property + def basis(self): + return self._basis + + @property + def meshlines(self): + return self._meshlines + + @width.setter + def width(self, width): + cv.check_type('plot width', width, Iterable, Real) + cv.check_length('plot width', width, 2, 3) + self._width = width + + @origin.setter + def origin(self, origin): + cv.check_type('plot origin', origin, Iterable, Real) + cv.check_length('plot origin', origin, 3) + self._origin = origin + + @type.setter + def type(self, plottype): + cv.check_value('plot type', plottype, ['slice', 'voxel']) + self._type = plottype + + @basis.setter + def basis(self, basis): + cv.check_value('plot basis', basis, _BASES) + self._basis = basis + + @meshlines.setter def meshlines(self, meshlines): cv.check_type('plot meshlines', meshlines, dict) @@ -438,19 +499,6 @@ class Plot(IDManagerMixin): self._meshlines = meshlines - @staticmethod - def _check_color(err_string, color): - cv.check_type(err_string, color, Iterable) - if isinstance(color, str): - if color.lower() not in _SVG_COLORS: - raise ValueError(f"'{color}' is not a valid color.") - else: - cv.check_length(err_string, color, 3) - for rgb in color: - cv.check_type(err_string, rgb, Real) - cv.check_greater_than('RGB component', rgb, 0, True) - cv.check_less_than('RGB component', rgb, 256) - def __repr__(self): string = 'Plot\n' string += '{: <16}=\t{}\n'.format('\tID', self._id) @@ -474,6 +522,7 @@ class Plot(IDManagerMixin): string += '{: <16}=\t{}\n'.format('\tMeshlines', self._meshlines) return string + @classmethod def from_geometry(cls, geometry, basis='xy', slice_coord=0.): """Return plot that encompasses a geometry. @@ -520,38 +569,6 @@ class Plot(IDManagerMixin): plot.basis = basis return plot - def colorize(self, geometry, seed=1): - """Generate a color scheme for each domain in the plot. - - This routine may be used to generate random, reproducible color schemes. - The colors generated are based upon cell/material IDs in the geometry. - - Parameters - ---------- - geometry : openmc.Geometry - The geometry for which the plot is defined - seed : Integral - The random number seed used to generate the color scheme - - """ - - cv.check_type('geometry', geometry, openmc.Geometry) - cv.check_type('seed', seed, Integral) - cv.check_greater_than('seed', seed, 1, equality=True) - - # Get collections of the domains which will be plotted - if self.color_by == 'material': - domains = geometry.get_all_materials().values() - else: - domains = geometry.get_all_cells().values() - - # Set the seed for the random number generator - np.random.seed(seed) - - # Generate random colors for each feature - for domain in domains: - self.colors[domain] = np.random.randint(0, 256, (3,)) - def highlight_domains(self, geometry, domains, seed=1, alpha=0.5, background='gray'): """Use alpha compositing to highlight one or more domains in the plot. @@ -604,7 +621,7 @@ class Plot(IDManagerMixin): self._colors[domain] = (r, g, b) def to_xml_element(self): - """Return XML representation of the plot + """Return XML representation of the slice/voxel plot Returns ------- @@ -802,13 +819,271 @@ class Plot(IDManagerMixin): # Return produced image return _get_plot_image(self, cwd) +class ProjectionPlot(PlotBase): + """Definition of a camera's view of OpenMC geometry + + Colors are defined in the same manner as the Plot class, but with the addition + of a coloring parameter resembling a macroscopic cross section in units of inverse + centimeters. The volume rendering technique is used to color regions of the model. + An infinite cross section denotes a fully opaque region, and zero represents a + transparent region which will expose the color of the regions behind it. + + The camera projection may either by orthographic or perspective. Perspective + projections are more similar to a pinhole camera, and orthographic projections + preserve parallel lines and distances. + + Parameters + ---------- + plot_id : int + Unique identifier for the plot + name : str + Name of the plot + + Attributes + ---------- + horizontal_field_of_view : float + Field of view horizontally, in units of degrees. + camera_position : tuple or list of ndarray + Position of the camera in 3D space + look_at : tuple or list of ndarray + The center of the camera's image points to this place in 3D space + up : tuple or list of ndarray + Which way is up for the camera. Must not be parallel to the + line between look_at and camera_position + orthographic_width : float + If set to a nonzero value, an orthographic projection is used. + All rays traced from the orthographic pixel array travel in the + same direction. The width of the starting array must be specified, + unlike with the default perspective projection. The height of the + array is deduced from the ratio of pixel dimensions for the image. + + wireframe_thickness : int + Line thickness employed for drawing wireframes around cells or + material regions. Can be set to zero for no wireframes + wireframe_color : tuple of ints + RGB color of the wireframe lines + wireframe_regions : iterable of either Material or Cells + If provided, the wireframe is only drawn around these. + If color_by is by material, it must be a list of materials, else cells. + + xs : dict + A mapping from cell/material IDs to floats. The floating point values + are macroscopic cross sections influencing the volume rendering opacity + of each geometric region. Zero corresponds to perfect transparency, and + infinity equivalent to opaque. + """ + + def __init__(self, plot_id=None, name=''): + # Initialize Plot class attributes + super().__init__(plot_id, name) + self._horizontal_field_of_view = 70.0 + self._camera_position = (1.0, 0.0, 0.0) + self._look_at = (0.0, 0.0, 0.0) + self._up = (0.0, 0.0, 1.0) + self._orthographic_width = 0.0 + self._wireframe_thickness = 1 + self._wireframe_color = _SVG_COLORS['black'] + self._wireframe_regions = [] + self._xs = {} + + @property + def horizontal_field_of_view(self): + return self._horizontal_field_of_view + + @property + def camera_position(self): + return self._camera_position + + @property + def look_at(self): + return self._look_at + + @property + def up(self): + return self._up + + @property + def orthographic_width(self): + return self._orthographic_width + + @property + def wireframe_thickness(self): + return self._wireframe_thickness + + @property + def wireframe_color(self): + return self._wireframe_color + + @property + def wireframe_regions(self): + return self._wireframe_regions + + @property + def xs(self): + return self._xs + + @horizontal_field_of_view.setter + def horizontal_field_of_view(self, horizontal_field_of_view): + cv.check_type('plot horizontal field of view', horizontal_field_of_view, + Real) + assert horizontal_field_of_view > 0.0 + assert horizontal_field_of_view < 180.0 + self._horizontal_field_of_view = horizontal_field_of_view + + @camera_position.setter + def camera_position(self, camera_position): + cv.check_type('plot camera position', camera_position, Iterable, Real) + cv.check_length('plot camera position', camera_position, 3) + self._camera_position = camera_position + + @look_at.setter + def look_at(self, look_at): + cv.check_type('plot look at', look_at, Iterable, Real) + cv.check_length('plot look at', look_at, 3) + self._look_at = look_at + + @up.setter + def up(self, up): + cv.check_type('plot up', up, Iterable, Real) + cv.check_length('plot up', up, 3) + self._up = up + + @orthographic_width.setter + def orthographic_width(self, orthographic_width): + cv.check_type('plot orthographic width', orthographic_width, Real) + self._orthographic_width = orthographic_width + + @wireframe_thickness.setter + def wireframe_thickness(self, wireframe_thickness): + cv.check_type('plot orthographic width', wireframe_thickness, Integral) + assert wireframe_thickness >= 0 + self._wireframe_thickness = wireframe_thickness + + @wireframe_color.setter + def wireframe_color(self, wireframe_color): + self._check_color('plot wireframe color', wireframe_color) + self._wireframe_color = wireframe_color + + @wireframe_regions.setter + def wireframe_regions(self, wireframe_regions): + for region in wireframe_regions: + if self._color_by == 'material': + if not isinstance(region, openmc.Material): + raise Exception('Must provide a list of materials for \ + wireframe_region if color_by=Material') + else: + if not isinstance(region, openmc.Cell): + raise Exception('Must provide a list of cells for \ + wireframe_region if color_by=cell') + self._wireframe_regions = wireframe_regions + + @xs.setter + def xs(self, xs): + cv.check_type('plot xs', xs, Mapping) + for key, value in xs.items(): + cv.check_type('plot xs key', key, (openmc.Cell, openmc.Material)) + cv.check_type('plot xs value', value, Real) + assert value >= 0.0 + self._xs = xs + + def set_transparent(self, geometry): + """Sets all volume rendering XS to zero for the model + + Parameters + ---------- + geometry : openmc.Geometry + The geometry for which the plot is defined + """ + + cv.check_type('geometry', geometry, openmc.Geometry) + + # Get collections of the domains which will be plotted + if self.color_by == 'material': + domains = geometry.get_all_materials().values() + else: + domains = geometry.get_all_cells().values() + + # Generate random colors for each feature + for domain in domains: + self.xs[domain] = 0.0 + + def to_xml_element(self): + """Return XML representation of the projection plot + + Returns + ------- + element : xml.etree.ElementTree.Element + XML element containing plot data + + """ + + element = ET.Element("plot") + element.set("id", str(self._id)) + if self._filename is not None: + element.set("filename", self._filename) + element.set("color_by", self._color_by) + element.set("type", "projection") + + subelement = ET.SubElement(element, "pixels") + subelement.text = ' '.join(map(str, self._pixels)) + + subelement = ET.SubElement(element, "camera_position") + subelement.text = ' '.join(map(str, self._camera_position)) + + subelement = ET.SubElement(element, "look_at") + subelement.text = ' '.join(map(str, self._look_at)) + + subelement = ET.SubElement(element, "wireframe_thickness") + subelement.text = str(self._wireframe_thickness) + + subelement = ET.SubElement(element, "wireframe_color") + color = self._wireframe_color + if isinstance(color, str): + color = _SVG_COLORS[color.lower()] + subelement.text = ' '.join(str(x) for x in color) + + if self._wireframe_regions: + id_list = [x.id for x in self._wireframe_regions] + subelement = ET.SubElement(element, "wireframe_ids") + subelement.text = ' '.join([str(x) for x in id_list]) + + if self._background is not None: + subelement = ET.SubElement(element, "background") + color = self._background + if isinstance(color, str): + color = _SVG_COLORS[color.lower()] + subelement.text = ' '.join(str(x) for x in color) + + if self._mask_components is not None: + subelement = ET.SubElement(element, "mask") + subelement.set("components", ' '.join( + str(d.id) for d in self._mask_components)) + color = self._mask_background + if color is not None: + if isinstance(color, str): + color = _SVG_COLORS[color.lower()] + subelement.set("background", ' '.join( + str(x) for x in color)) + + if self._colors: + for domain, color in sorted(self._colors.items(), + key=lambda x: x[0].id): + subelement = ET.SubElement(element, "color") + subelement.set("id", str(domain.id)) + if isinstance(color, str): + color = _SVG_COLORS[color.lower()] + subelement.set("rgb", ' '.join(str(x) for x in color)) + subelement.set("xs", str(self._xs[domain])) + + return element class Plots(cv.CheckedList): """Collection of Plots used for an OpenMC simulation. This class corresponds directly to the plots.xml input file. It can be - thought of as a normal Python list where each member is a :class:`Plot`. It - behaves like a list as the following example demonstrates: + thought of as a normal Python list where each member is inherits from + :class:`PlotBase`. It behaves like a list as the following example + demonstrates: >>> xz_plot = openmc.Plot() >>> big_plot = openmc.Plot() @@ -819,13 +1094,13 @@ class Plots(cv.CheckedList): Parameters ---------- - plots : Iterable of openmc.Plot - Plots to add to the collection + plots : Iterable of openmc.Plot or openmc.ProjectionPlot + plots to add to the collection """ def __init__(self, plots=None): - super().__init__(Plot, 'plots collection') + super().__init__((Plot, ProjectionPlot), 'plots collection') self._plots_file = ET.Element("plots") if plots is not None: self += plots @@ -835,7 +1110,7 @@ class Plots(cv.CheckedList): Parameters ---------- - plot : openmc.Plot + plot : openmc.Plot or openmc.ProjectionPlot Plot to append """ diff --git a/src/plot.cpp b/src/plot.cpp index 2e849c907..285f7f5a7 100644 --- a/src/plot.cpp +++ b/src/plot.cpp @@ -1035,6 +1035,8 @@ ProjectionPlot::ProjectionPlot(pugi::xml_node node) : PlottableInterface(node) set_opacities(node); set_orthographic_width(node); set_wireframe_thickness(node); + set_wireframe_ids(node); + set_wireframe_color(node); if (check_for_node(node, "orthographic_width") && check_for_node(node, "field_of_view")) @@ -1042,6 +1044,19 @@ ProjectionPlot::ProjectionPlot(pugi::xml_node node) : PlottableInterface(node) "parameters."); } +void ProjectionPlot::set_wireframe_color(pugi::xml_node plot_node) +{ + // Copy plot background color + if (check_for_node(plot_node, "wireframe_color")) { + vector w_rgb = get_node_array(plot_node, "wireframe_color"); + if (w_rgb.size() == 3) { + wireframe_color_ = w_rgb; + } else { + fatal_error(fmt::format("Bad wireframe RGB in plot {}", id())); + } + } +} + void ProjectionPlot::set_output_path(pugi::xml_node node) { // Set output file path @@ -1091,17 +1106,55 @@ int ProjectionPlot::advance_to_boundary_from_void(Particle& p) bool ProjectionPlot::trackstack_equivalent( const std::vector& track1, - const std::vector& track2) + const std::vector& track2) const { - if (track1.size() != track2.size()) - return false; - for (int i = 0; i < track1.size(); ++i) { - if (track1[i].id != track2[i].id || - track1[i].surface != track2[i].surface) { - return false; + if (wireframe_ids_.empty()) { + // TODO old version + return true; + } else { + // This runs in O(nm) where n is the intersection stack size + // and m is the number of IDs we are wireframing. A simpler + // algorithm can likely be found. + for (const int id : wireframe_ids_) { + int t1_i = 0; + int t2_i = 0; + + // Advance to first instance of the ID + while (t1_i < track1.size() && t2_i < track2.size()) { + while (t1_i < track1.size() && track1[t1_i].id != id) + t1_i++; + while (t2_i < track2.size() && track2[t2_i].id != id) + t2_i++; + + // This one is really important! + if ((t1_i == track1.size() && t2_i != track2.size()) || + (t1_i != track1.size() && t2_i == track2.size())) + return false; + if (t1_i == track1.size() && t2_i == track2.size()) + break; + // Check if surface different + if (track1[t1_i].surface != track2[t2_i].surface) + return false; + + // Pretty sure this should not be used: + // if (t2_i != track2.size() - 1 && + // t1_i != track1.size() - 1 && + // track1[t1_i+1].id != track2[t2_i+1].id) return false; + if (t2_i != 0 && t1_i != 0 && + track1[t1_i - 1].surface != track2[t2_i - 1].surface) + return false; + + // Check if neighboring cells are different + // if (track1[t1_i ? t1_i - 1 : 0].id != track2[t2_i ? t2_i - 1 : 0].id) + // return false; if (track1[t1_i < track1.size() - 1 ? t1_i + 1 : t1_i + // ].id != + // track2[t2_i < track2.size() - 1 ? t2_i + 1 : t2_i].id) return + // false; + t1_i++, t2_i++; + } } + return true; } - return true; } void ProjectionPlot::create_output() const @@ -1247,7 +1300,10 @@ void ProjectionPlot::create_output() const // edges on the model boundary for the same cell. if (first_inside_model) { this_line_segments[tid][horiz].emplace_back( - 0, 0.0, first_surface); + color_by_ == PlotColorBy::mats + ? p.material() + : p.coord(p.n_coord() - 1).cell, + 0.0, first_surface); first_inside_model = false; } @@ -1435,6 +1491,21 @@ void ProjectionPlot::set_wireframe_thickness(pugi::xml_node node) } } +void ProjectionPlot::set_wireframe_ids(pugi::xml_node node) +{ + if (check_for_node(node, "wireframe_ids")) { + wireframe_ids_ = get_node_array(node, "wireframe_ids"); + // It is read in as actual ID values, but we have to convert to indices in + // mat/cell array + for (auto& x : wireframe_ids_) + x = color_by_ == PlotColorBy::mats ? model::material_map[x] + : model::cell_map[x]; + } + // We make sure the list is sorted in order to later use + // std::binary_search. + std::sort(wireframe_ids_.begin(), wireframe_ids_.end()); +} + void ProjectionPlot::set_pixels(pugi::xml_node node) { vector pxls = get_node_array(node, "pixels"); diff --git a/tests/unit_tests/test_plots.py b/tests/unit_tests/test_plots.py index 2db396cd5..183341c26 100644 --- a/tests/unit_tests/test_plots.py +++ b/tests/unit_tests/test_plots.py @@ -37,15 +37,47 @@ def myplot(): } return plot +@pytest.fixture(scope='module') +def myprojectionplot(): + plot = openmc.ProjectionPlot(name='myprojectionplot') + plot.look_at = (0.0, 0.0, 0.0) + plot.camera_position = (4.0, 3.0, 0.0) + plot.pixels = (500, 500) + plot.filename = 'myprojectionplot' + plot.background = (0, 0, 0) + plot.background = 'black' + + plot.color_by = 'material' + m1, m2 = openmc.Material(), openmc.Material() + plot.colors = {m1: (0, 255, 0), m2: (0, 0, 255)} + plot.colors = {m1: 'green', m2: 'blue'} + plot.xs = {m1: 1.0, m2: 0.01} + + plot.mask_components = [openmc.Material()] + plot.mask_background = (255, 255, 255) + plot.mask_background = 'white' + + plot.overlap_color = (255, 211, 0) + plot.overlap_color = 'yellow' + + plot.wireframe_thickness = 2 + + plot.level = 1 + return plot def test_attributes(myplot): assert myplot.name == 'myplot' +def test_attributes_proj(myprojectionplot): + assert myprojectionplot.name == 'myprojectionplot' def test_repr(myplot): r = repr(myplot) assert isinstance(r, str) +def test_repr_proj(myprojectionplot): + r = repr(myprojectionplot) + assert isinstance(r, str) def test_from_geometry(): width = 25. @@ -89,6 +121,18 @@ def test_xml_element(myplot): assert getattr(newplot, attr) == getattr(myplot, attr), attr +def test_to_xml_element_proj(myprojectionplot): + elem = myprojectionplot.to_xml_element() + assert 'id' in elem.attrib + assert 'color_by' in elem.attrib + assert 'type' in elem.attrib + assert elem.find('camera_position') is not None + assert elem.find('wireframe_thickness') is not None + assert elem.find('look_at') is not None + assert elem.find('pixels') is not None + assert elem.find('background').text == '0 0 0' + + def test_plots(run_in_tmpdir): p1 = openmc.Plot(name='plot1') p1.origin = (5., 5., 5.) @@ -99,10 +143,14 @@ def test_plots(run_in_tmpdir): plots = openmc.Plots([p1, p2]) assert len(plots) == 2 - p3 = openmc.Plot(name='plot3') - plots.append(p3) + p3 = openmc.ProjectionPlot(name='plot3') + plots = openmc.Plots([p1, p2, p3]) assert len(plots) == 3 + p4 = openmc.Plot(name='plot4') + plots.append(p4) + assert len(plots) == 4 + plots.export_to_xml() # from_xml From ed5837202b7c0a69f051e7c4b35375093e21a421 Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Sun, 9 Jan 2022 17:08:34 -0500 Subject: [PATCH 029/959] add old wireframing behavior if not listing ids --- src/plot.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/plot.cpp b/src/plot.cpp index 285f7f5a7..73dd43533 100644 --- a/src/plot.cpp +++ b/src/plot.cpp @@ -1109,7 +1109,15 @@ bool ProjectionPlot::trackstack_equivalent( const std::vector& track2) const { if (wireframe_ids_.empty()) { - // TODO old version + // Draw wireframe for all surfaces/cells/materials + if (track1.size() != track2.size()) + return false; + for (int i = 0; i < track1.size(); ++i) { + if (track1[i].id != track2[i].id || + track1[i].surface != track2[i].surface) { + return false; + } + } return true; } else { // This runs in O(nm) where n is the intersection stack size From f1b92603c80937104ed8e0f2948cb9237838cc46 Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Sun, 9 Jan 2022 17:56:23 -0500 Subject: [PATCH 030/959] update projection plot regr test --- src/plot.cpp | 4 ++-- tests/regression_tests/plot_projections/plots.xml | 1 + tests/regression_tests/plot_projections/results_true.dat | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/plot.cpp b/src/plot.cpp index 73dd43533..f3262185e 100644 --- a/src/plot.cpp +++ b/src/plot.cpp @@ -1100,7 +1100,7 @@ int ProjectionPlot::advance_to_boundary_from_void(Particle& p) else { // advance the particle for (int j = 0; j < p.n_coord(); ++j) p.coord(j).r += (min_dist + scoot) * p.coord(j).u; - return intersected_surface; + return std::abs(intersected_surface); } } @@ -1321,7 +1321,7 @@ void ProjectionPlot::create_output() const this_line_segments[tid][horiz].emplace_back( color_by_ == PlotColorBy::mats ? p.material() : p.coord(p.n_coord() - 1).cell, - dist.distance, dist.surface_index); + dist.distance, std::abs(dist.surface_index)); // Advance particle for (int lev = 0; lev < p.n_coord(); ++lev) { diff --git a/tests/regression_tests/plot_projections/plots.xml b/tests/regression_tests/plot_projections/plots.xml index 11fa27211..85689da14 100644 --- a/tests/regression_tests/plot_projections/plots.xml +++ b/tests/regression_tests/plot_projections/plots.xml @@ -28,6 +28,7 @@ 200 200 240 240 240 example2.png + 2 diff --git a/tests/regression_tests/plot_projections/results_true.dat b/tests/regression_tests/plot_projections/results_true.dat index 7f41f6a40..f1f3d9276 100644 --- a/tests/regression_tests/plot_projections/results_true.dat +++ b/tests/regression_tests/plot_projections/results_true.dat @@ -1 +1 @@ -186d646c4959755bf809d35c9f33a931fbd5195145131ae6764955bf276d44acf24970dfff76001106b93a7ce239d67d569440136b13073082c8ee23419d721e \ No newline at end of file +18b85140df16cec9268e76d41430971be7f835b4ef84efdc0065012b2b341a6f369c14ad435a728d9224800882e4a923308859c5849cede0bc4b8ea4f3234f6f \ No newline at end of file From bd2de0372f95e663264fab670e44e2c9df639639 Mon Sep 17 00:00:00 2001 From: Gavin Ridley Date: Sun, 9 Jan 2022 18:33:53 -0500 Subject: [PATCH 031/959] projection plot docs --- docs/source/_images/hexlat_anim.gif | Bin 0 -> 1233034 bytes docs/source/usersguide/plots.rst | 76 ++++++++++++++++++++++++++++ 2 files changed, 76 insertions(+) create mode 100644 docs/source/_images/hexlat_anim.gif diff --git a/docs/source/_images/hexlat_anim.gif b/docs/source/_images/hexlat_anim.gif new file mode 100644 index 0000000000000000000000000000000000000000..fceedc01047222c69613c2aefcaeb4e20f027baa GIT binary patch literal 1233034 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

qeDAI6D>OgGbi}SmE3`A3IAag*v5=|UDqmE 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

fdv)AF zVeWcv#co~J@|*6SLE-;TF8s&t`re1(|2^3K|NXrr z1ibtIfDfL8fKTLW+Qm|{?x*P%>u~7p_0)c@FL|1Y|J)O`Q0F{XQK*~dvLNaDp_TKy zFUvx0vwvl+@Pe?(Y?^U%fS~cTalP9*&GWUyz0?{9QUX1&r{r+GZ=%d*O>Zo%rY|8) z*m!!#^OpViEw9hVtedm#c3+H0!^6~Cr`ftn-sC;;YMVaH6%LJG2JSXPSt^2k!t7Nm zJz1((xPlB1htiG9OLiCygcU`-8HP)rKpw(bS+6fv+P>!ec?tkSG563d*JtE zH}Tx~TciFJ&l&st*xPdk6vN_!{NENu$7}gG#YUaA$0R@3>JPoRe5#}-dbGqhrn6$* zNh8MY+n0&zLtvxO0;Wvr;=6BWK8C~VPOgSs&zSuXb%VU`s(47k#bHs750-6PNffbM}@{byt>yQ1bZrdT2M? zVaV!L!kyt;h1*AZ=D~{08@HE`=hZZ^zX}WZ)9aOu3~l-rS8elBM^?9qH89md;SO3q z2W}k0su1^3kEal+%qO0T?TymAWZU4fMw?K2^}CUwU)IIEP|iQ$g_V8xrA#U-5!5c+ z)%-uNh#pX#WdzoA9qzsx85guJ*v~BBCcJ-|AL%n-nr++w4yG`+ihgb6nB_`7XWKHw z(jg#xcKG?rJM!C9$X2+Q)FB)TTNN7|n?AD$4$0f%E`YO#s)-NSTx0E8oI6UfUKOya zDevYwGfx|iy&Td1CrZupE$>=dVTJ66s;WT|dh)#*>FM;1ab9Zs%i<@s>~yBlD!fKj zj5h|hg?PmUj;e8&?`|%Q_MB@)q{Ym4RMv314oeIL+@`Y3QSoH^lqfBxjVxYw$40r) z$u*P*Ig<+t&0#2h)y8@}9Gy0Y;|P=RcAwLg{$@mC z&8lweXRxZln}PSiTd|2PM1?0FWJy|ejI=gmkFBh#7Tzt_3dl7Kp)hcHAZhZ!!`+AU zQX#}GGk;kS*GM3QCb{=KJwYH~W!Q>sNH>@#iMB6(K&SBiknw6&ysNC0-UD*eZ|O5_ z58*L^l0)2}H$6PYLzWD;yDaFQK�iU(F>$;0)BtRj9Ci!g!TJ^bPM^2&bLJv?#r! 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 z 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

WG{!UWuM!@wD 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%0D0S|Cs5dEr^DSjECiFfcK41VQvBoZ; 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

-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�@A|wFJwjjDru&kDvNjRTa-kE1736g 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

2tj6MTO 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 hn~p@mMwh4qw|^; z=hq_Co`?BiXU4&HKv-h2-eB{jB5fc$)oTkq0Q(R?MlI5WT*gL~(0FrU9av7H3MtbR zG7n4rsZ39-d#W6SF?LcUFcJwvqG7S$A3jicH0nz8APr3$WS%&zGxe3B&QV6Bjh9B7 z%IM_gWPGG4KNVUulqw^VLarZji#;v3WZr|v1xw^OS9vn|~5=>OpDPD+7a5SQZB%RR~Y{e#Cj&q)%_A#ZaCDMDuxpk+} z=UPhlZ^zMxpp7trH<~T4lJJcO*6E{W5ikJn7PCkL6ul2zeICVy0VmymOh`k$f9IGG z;=zOT_?F|6ydQHW6eoE`ZG#9dA?X&3(ejkEB+oEp&s0Ts{qnZ7Xw8SJy>Bt zJ}d=YdB2FHJK0WG55OnVQa)#Jbuyve@6qj@LD?wPkCVsZrWyOOcDobSo;1MmL~1mp zVT8!!;|IY_Grt{xT*>U-n8#FmBZ6*ulyOkDT5m`t%m0-+1rXx%N#Nc85`+6X$C(GxC{Uy0N|y|4IF<$lkUz<|jUQCh#e zcn}`CX<*uLs?0Q$jX$k90e1_C3Hw2dug#;_t3gwE+N$6N37%+9-?0_lNl^Rj2I@JC zcPFoU@nDkQQ57UIgRfx<#A!0MnhP2Z3%-iww%X)MZ22c@(Q(%lULk<~SuK1K4o+VI zOPUq|{3(^VoY zF%6bPs!RufC*j#_V4$pvzBIwD&p)mfP4kKd;9K+JpF+JCD-a-nKNysYPn9d2lz-!_ z;3R>hFofOEik@0fmQp#FuJ>UcN@XQNlJM~Od8J7Y>|b()WH4Lf1F#GeWORBx;a