Recent Releases of dagmc

dagmc - v3.2.4

What's Changed

Bug Fixes

  • Ensure implicit complement handle is placed at the back of DAGMC volume indices (#935) @pshriwise
  • Fixed the name of the Graveyard and the Vaccuum to mat:Graveyard and mat:Vacuum (and lower case) (#971) @bam241

Documentation

  • Inline documentation improvements (#945) @pshriwise
  • Update README regarding OpenMC (#938) @gridley
  • Update dependency installation instructions (#963) @gonuke

Dependencies

  • Update hdf5 to v1.14.3 from v1.10.4 (#931 #933) @ahnaf-tahmid-chowdhury
  • Update MOAB to 5.5.1 from 5.3.0 (#939 #940) @ahnaf-tahmid-chowdhury
  • Allow Double Down v1.1.0 Installation in Dockerfile (#929 #944 #949) @ahnaf-tahmid-chowdhury
  • Streamline dependencies of docker CI images (#951 #952) @ahnaf-tahmid-chowdhury

Maintenance

  • Simplify Housekeeping Process for DAGMC (#943) @ahnaf-tahmid-chowdhury
  • Update github actions to newer versions as necessary (#958) @gonuke
  • CMake error message update (#960) @gonuke
  • Adding info messages to CMake output for double down (#962) @pshriwise
  • Localize invocation of git submodule for PyNE (#968)

New Contributors

  • @gridley made their first contribution in https://github.com/svalinn/DAGMC/pull/938

Full Changelog: https://github.com/svalinn/DAGMC/compare/v3.2.3...v3.2.4

What's Changed

  • Update hdf5 to v1.14.3 by @ahnaf-tahmid-chowdhury in https://github.com/svalinn/DAGMC/pull/931
  • hdf5 1.14.3 by @ahnaf-tahmid-chowdhury in https://github.com/svalinn/DAGMC/pull/933
  • Ensure implicit complement is placed at the back of the DAGMC index space by @pshriwise in https://github.com/svalinn/DAGMC/pull/935
  • Update MOAB to latest by @ahnaf-tahmid-chowdhury in https://github.com/svalinn/DAGMC/pull/939
  • Update MOAB to 5.5.1 Part 2 by @ahnaf-tahmid-chowdhury in https://github.com/svalinn/DAGMC/pull/940
  • Add OpenMC to supported list in README by @gridley in https://github.com/svalinn/DAGMC/pull/938
  • Simplify Housekeeping Process for DAGMC by @ahnaf-tahmid-chowdhury in https://github.com/svalinn/DAGMC/pull/943
  • Allow Double Down v1.1.0 Installation in Dockerfile by @ahnaf-tahmid-chowdhury in https://github.com/svalinn/DAGMC/pull/929
  • Add inline documentation for the DagMC and dagmcmetadata classes. by @pshriwise in https://github.com/svalinn/DAGMC/pull/945
  • Allow Double Down v1.1.0 Installation in Dockerfile by @ahnaf-tahmid-chowdhury in https://github.com/svalinn/DAGMC/pull/944
  • Update Linux build test to use updated docker images by @ahnaf-tahmid-chowdhury in https://github.com/svalinn/DAGMC/pull/949
  • Streamline dependencies of docker CI images by @ahnaf-tahmid-chowdhury in https://github.com/svalinn/DAGMC/pull/951
  • Streamline dependencies of docker CI images Part 2 by @ahnaf-tahmid-chowdhury in https://github.com/svalinn/DAGMC/pull/952
  • Update action versions by @gonuke in https://github.com/svalinn/DAGMC/pull/958
  • add more info to Cmake error msg by @gonuke in https://github.com/svalinn/DAGMC/pull/960
  • Adding additional output during CMake configuration when double down … by @pshriwise in https://github.com/svalinn/DAGMC/pull/962
  • Update build instructions for DAGMC dependencies by @gonuke in https://github.com/svalinn/DAGMC/pull/963
  • localize git submodule stuff to only when BUILD_UWUW by @gonuke in https://github.com/svalinn/DAGMC/pull/968
  • Fix vaccum name in materials by @bam241 in https://github.com/svalinn/DAGMC/pull/971

New Contributors

  • @gridley made their first contribution in https://github.com/svalinn/DAGMC/pull/938

Full Changelog: https://github.com/svalinn/DAGMC/compare/v3.2.3...v3.2.4

- C++
Published by gonuke about 1 year ago

dagmc - Release v3.2.3

While there are some changes to the behavior of DAGMC in general, most of this release is focused on improving the build process and robustness to support ongoing improvements.

Changed

  • Improvements/corrections to graveyard capabilities (#855)
  • Fixing order of attribute initialization in the metadata class (#903)
  • Adding const identifier to cross-reference methods (#906)

Update * Patch to compile with Geant4 11.x (#803 #907 #927)

Maintenance * Using multi stage Dockerfile to reduce the number of Dockerfile (#813, #894) * Adding safe folder to allow CI to compile DAGMC (#814) * Correction to CMake variable name in OpenMC install instructions (#817) * Updating documentation publishing URL (#823) * Update Pyne submodule (#845, #848) * Minor typo fixes in documentation (#851) * Moved scripts to Dockerfile and parallel CI (#863) * Removed unused Circle CI yml (#859) * Added configuration options to CMake configuration file (#867) * Introduced logger to better manage console output (#876) * Streamline CI to take advantage of better docker image management (#880, #896, #915) * Move more CI from scripts to actions (#895) * Develop advisory tests on merge for MOAB, double-down and Geant4, hdf5 (#870, #898, #899, #904, #925) * Adding flags to CI to ensure compatibility with MOOSE apps (#902) * Patched cmake-search paths for double-down and MOAB (#878) * Patch to compile with gcc-13 (#882) * Tweak conda environment for Windows build to avoid conflicting gtest headers (#888) * Restrict cython version for MOAB (#893) * Various documentation updates (#869) * Fix for HDF5 library linking issue (#926)

- C++
Published by gonuke about 2 years ago

dagmc - Release v3.2.2

Changed:

  • Placing installed CMake configuration files in project directory (#802)
  • Removing build of static libs as a default option (#802)
  • Adding PYTHONPATH to linux CI images and creating pymoab installation directories (#802)

- C++
Published by gonuke almost 4 years ago

dagmc - Release v3.2.1

Added:

  • adding BUILD_EXE option (default ON) allowing to build only the dagmc libs without the executable (for static and/or shared libs) (#717)
  • Including installation of a CMake version file for use with find_package in client codes. (#722)
  • CMake option to checkout PyNE submodule automatically (#734, #787)
  • GitHub Action to build and upload Docker images. (#746, #748, #754, #757, #758, #759, #765, #767)
  • Enforcing usage of Python3 for PyNE amalgamation. (#773,#792)
  • Adding workflowdispatch option to dockerpublish workflow (#776)
  • DagMC methods for creation and removal of the graveyard volume (#714)
  • CI build and test now support MacOS (shared build, no pymoab, no Double Down) (#780)
  • Added GitHub style citation file (CITATION.cff) (#790)

Changed:

  • RayTracer type alias and double-down includes. (#786)
  • reformat all files using clang-format (#679)
  • change housekeeping to test format against clang-format (#679)
  • now install dagmc header when building and installing static libs (#717)
  • now adds pyne as a submodule, and amalgamate at compilation (#731)
  • converted from news files to CHANGELOG (#769)
  • updated location & checksum of GEANT4 tarball (#735)
  • updated all documentation to refer to Coreform Cubit instead of Trelis (#736)
  • Added a job to CI for running tests with the DOUBLE_DOWN option enabled. (#738)
  • Threadsafe fix for the overlap check test. (#743)
  • website now points to github for plugin download (#744)
  • Location of double-down header files. (#745)
  • Location of Dockerimages from Dockerhub to GHCR. (#746)
  • update MOAB version (#740, #760, #768, #771)
  • Installing clang-format in the docker container instead of in the housekeeping script (#726)
  • updated PyNE to version 0.7.5 (#770)
  • improve path pattern to trigger docker build workflow (#772)
  • limit the extend of housekeeping workflows to pull_request (#774)
  • upgrade g-test to 1.8.0 (#778)
  • updated CI badges (#784)

Deprecated:

  • retiring python2 in CI (#747)

Removed:

  • Removed the data member defaultFacetingTolerance from the class DagMC. (#711)
  • Circle CI status badge in the README (#777)

Fixed:

  • adding special build flag to enable old hdf5 interface for PyNE when compiling against hdf5@1.12+ (#728)
  • Renamed jobs variable CI build system to avoid undocumented conflict with git submodule (#735)
  • Windows compatibility fix
  • remove_unsupported.py script is now compatible with python2...
  • Return correct bounding boxes when configured with Double-Down. (#779)

Maintenance:

  • move CI to github actions (#752, #753, #761, #763, #766)
  • move CI docker build of MOAB to CMake (#771)

- C++
Published by pshriwise about 4 years ago

dagmc - Release 3.2.0

DAGMC v3.2.0

Fixes and improvements can be found in the changelog.

Highlights:

  • The integration of the C++ PyNE MaterialLibrary into the UWUW preprocessor
  • Addition of an overlap checking tool for faceted DAGMC models
  • Experimental support for Intel’s Embree ray tracer via the double down project.

Complete Changelog:

Added:

  • DagMC::git_sha method (PR#707)
  • Added libeigen3-dev package to be installed by apt (PR#683)
  • Tool for checking DagMC models for overlaps. (PR#641)
  • turn off fortran support in MOAB build (PR#684)
  • use '&&' to join successive build steps to fail build on first failure (PR#684)
  • remove specification of unused FORTRAN compiler for HDF5 & MOAB builds (PR#684)
  • Note on adding DagMC libraries to LDLIBRARYPATH for OpenMC usage. (PR#625)
  • Link to installation instructions for OpenMC with DagMC. (PR#625)
  • Documentation section on material assignment by name for OpenMC model prep. (PR#616)
  • MCNP6 version of pyne mesh source.F90. (PR#604)
  • Documentation on model prep for OpenMC simulations with a DAGMC geometry. (PR#599)
  • Added a script which updates amalgamated pyne. (PR#595)
  • OpenMC material writing capability for UWUW workflow via updates to the amalgamated PyNE source. (PR#594)
  • Community best practices including issue templates, pull request templates, contributing guidelines, and code of conduct. (PR#589)
  • Added PyNE mesh source routine functionality. This can be enabled by setting the BUILD_MCNP_PYNE_SOURCE compiler definition to ON. (PR#585)
  • Added ability for users to disable building static or shared libraries (PR#572)
  • Patch file for DAG-MCNP6.2 (PR#569)
  • Default to a Release build. This results in optimization flags being used everywhere as appropriate. (PR#555)

    • Note that MCNP is still configured to use no more than -O1
  • Add macros to cmake/DAGMC_macros.cmake. This results in much less duplicated cmake elsewhere. The following macros were added: (PR#555)

    • dagmc_setup_build: Sets core variables used throughout the rest of the project.
    • dagmc_setup_options: Defines cmake build options.
    • dagmc_setup_flags: Defines compiler flags.
    • dagmc_get_link_libs: Used by the dagmc_install_X macros to determine the names of the libraries that need to be linked.
    • dagmc_make_configure_file: Setup the DAGMCConfig.cmake file.
    • dagmc_install_library: Install a library.
    • dagmc_install_exe: Install an executable.
    • dagmc_install_test: Install a unit test.
    • dagmc_install_test_file: Install a file needed for unit testing.
  • Add a FindFluka.cmake file to find the Fluka library. (PR#555)

  • Add RPATH functionality so that all executables and libraries automatically know where their dependencies are located. This removes the need for users to add anything to their LD_LIBRARY_PATH. This can be turned off by setting -DBUILD_RPATH=OFF. (PR#555)

  • Add ability to build with position-independent code (PIC). This can be turned on by setting -DBUILD_PIC=ON. (PR#555)

  • Add options to enable/disable building all optional functionality. The following options were added: (PR#555)

    • BUILD_BUILD_OBB
    • BUILD_MAKE_WATERTIGHT
    • BUILD_TESTS
  • Documentation explaining the new requirement that all PRs must include a file explaining what the PR does. (PR#545)

  • Template for the news directory. (PR#545)

  • Additional boundary condition options in the dagmcMetaData class (PR#690)

Changed:

  • replaced calls for overlap tolerance and numerical precision in DagMC constructor (PR#708)
  • Packages now use direct path to include one-another, instead of relative ones (PR#703)
  • No longer require Fortran compiler unless building MCNP5/6 (PR#701)
  • Update amalgamated PyNE version to v0.7.3 (PR#700)
  • revamped Material management to leverage the PyNE::MaterialLibrary in place of the map (PR#700)
  • Add DAGMC guard around (PR#695):

    • changed if statement in historyneutralhigh.F90
    • check for goto statement in chargedparticlehistory.F90
  • Adding optional double-down dependency to enable ray tracing with Embree. (PR#693)

  • Replacing Travis in favor of CircleCI (PR#692, PR#698)

  • Splitting up the docker container building process into multiple files (PR#692, PR#697)

  • dagmcMetaData (PR#688, PR#689, PR#690):

    • Behavior to ignore missing density assignments for more flexible integration with certain codes. (PR#688)
    • Updates to the coding style. (PR#689)
    • Allows boundary condition values, graveyard material assignments, and vacuum material assignments to be lowercase
  • removed LAPACK dependency; replaced with Eigen3 for DAGMC (PR#686) and MOAB (PR#683)

  • Enabling testing for the shared object build of DAGMC (PR#674)

  • Adding RPATH value for our build of Geant4 on CI (PR#674)

  • Including additional test output on failure in CI (PR#674)

  • PullRequest-Agent suggestionsmcnp (PR#665)

    • using std::err for errors
    • update to C++11 standards for converting ints to strings
    • removed unnecessary comments
    • moved Graveyard and Vacuum strings to variables
  • PullRequest-Agent suggestions MakeWaterTight (PR#666):

    • remove commented code blocks that are either outdated or are debug statements
    • improvements to some logic for clarity
    • use of standard library containers to avoid potential memory leaks in Arc.cpp/Gen.cpp
    • improvements to struct/variable names
    • declared variables for "magic numbers"
    • passing by const reference where possible to avoid unnecessary memory allocation
    • removed an unused function (Arc::createloopsfromorientededges_fast)
  • PullRequest-Agent suggestions DagMC (PR#671, PR#676):

    • updated pointer management to RAII ("Resource Allocation Is Initialization") technique, MBI is now a sharedptr unless passed as a raw pointer in the DagMC constructor (can be returned as a sharedptr if not provided as a raw pointer), GTT is now a sharedptr, and can only be returned as such, GQT is now a uniqptr, (and can't be return - not change there)
    • tests: DagMC instance is now a sharedptr, when used, MBI instance is now a sharedptr
  • PullRequest-Agent suggestions uwuw, tally, overlapcheck, buildobb, misc/tests (PR#680)

  • PullRequest-Agent suggestions Geat4 (PR#691)

  • Updates to variable names in make_watertight files (PR#672)

  • Changed name of overlap_check executable directory from "build" to "app". (PR#653)

  • all directories named build are changed to app for clarity. (PR#645)

  • dagmc/src/make_watertight: now accepting output_filename. (PR#636)

  • dagmc/src/check_watertight: now accepting output_filename. (PR#636)

  • Have the update_pyne script copy over the source.F90 files in pyne for MCNP5 and MCNP6. (PR#626)

  • Update amalgamated pyne. (PR#626)

  • Updated amalgamated pyne. (PR#617)

  • The ASTYLE_ONLY Travis variable has been replaced with a HOUSEKEEPING_ONLY variable. If this variable is on, DAGMC will not be built and it will instead only perform 3 housekeeping checks: (PR#610)

    • News file: the CI will fail if a news file with the correct filename is not included.
    • Astyle: the version of astyle we use on the CI has been upgraded to 3.1. This is the version that is default on Ubuntu 18.04.
    • Documentation: the CI will now attempt to build the DAGMC documentation and will fail if it finds any errors or warnings.
  • The dockerfile has been modified so that it can be built with both Ubuntu 16.04 and 18.04. (PR#610)

  • The docker images have been moved from the cnerg dockerhub organization to the svalinn organization. (PR#610)

  • The new build matrix for the non-housekeeping run is 2x2x2: (PR#610)

    • Ubuntu 16.04 vs. 18.04
    • gcc vs. clang
    • gcc-5.3 on 16.04; gcc-7.3 on 18.04
    • clang-3.8 on 16.04; clang-6.0 on 18.04
    • MOAB 5.1.0 vs. master vs. develop
  • The builds that use MOAB master and develop are allowed to fail without the entire CI failing. The CI will show as having passed once the housekeeping build and the four MOAB 5.1.0 builds have passed. (PR#610)

  • The CI will only build against MOAB master and develop during non-pull request builds; i.e. only during push builds and nightlies. (PR#610)

  • MOAB 5.1.0 is now included in the docker image so it does not need to be built every time the CI is run. (PR#610)

    • This is to save time, since we expect that previous versions of MOAB will not change. If it does change, we can update the Docker images.
    • MOAB master is still built every time it is needed.
  • MOAB is now built with pymoab support. This is for future-proofing in case DAGMC ever needs access to this functionality. (PR#610)

  • MOAB is now built against both custom-built HDF5 (1.10.4, up from 1.8.13) and against system HDF5. (PR#610)

    • The MOAB built against system HDF5 is currently unused, however, as there is currently a bug that makes it so DAGMC cannot build static executables if using system HDF5. If/when this bug is fixed, then building DAGMC with system HDF5 can be added to the build matrix.
  • Geant4 has been upgraded to version 10.5. (PR#610)

  • Building the documentation will throw an error if it encounters any warnings or errors. The previous warnings and errors that were occurring have been fixed. (PR#610)

  • Throw a fatal error if trying to build static executables but not static libraries, or shared executables but not shared libraries. (PR#605)

  • Added measure and source_sampling to amalgamated pyne and removed the standalone files we used to use. (PR#604)

  • Move keyword type to FC card in the document doc/userguide/tally.rst. (PR#600)

  • A small change to a single line of the dag-mcnp model prep file. (PR#599)

  • CMakeLists.txt (PR#597)

  • src/mcnp/meshtal_funcs.cpp (PR#597)

  • src/tally/KDEMeshTally.cpp (PR#597)

  • src/tally/MeshTally.cpp (PR#597)

  • src/tally/MeshTally.hpp (PR#597)

  • src/tally/MeshTally.hpp (PR#597)

  • src/tally/TallyData.cpp (PR#597)

  • src/tally/TrackLengthMeshTally.cpp (PR#597)

  • CMake commands for linking all DAGMC libraries s.t. they are added to the exported targets. (PR#662)

  • Updated amalgamated pyne to match the main pyne repo. (PR#595)

  • Travis CI no longer attempts to build DAGMC against moab master. (PR#584)

  • When configuring MPI-enabled DAG-MCNP6, do not rely on MPI_Fortran_INCLUDE_PATH being set because this variable is not set when using CMake 3.10 or newer. Instead, use MPI_Fortran_COMPILER. (PR#579)

  • Use the values of MOAB_INCLUDE_DIRS and MOAB_LIBRARY_DIRS from MOABConfig.cmake instead of trying to determine them ourselves. Note that this change makes DAGMC incompatible with MOAB 5.0. (PR#578)

  • Use MOAB 5.1.0 on CI instead of 5.0. (PR#578)

  • CMakeFile for DAG-MCNP6 to accomodate MCNP6.2. (PR#569)

  • Use bind(c) in fmesh_mod.F90 to avoid the need for name mangling on the C++ side. (PR#556)

  • Rename MCNP patch files to mcnpXXX.patch, where XXX is the version turned into a 3-digit number. (PR#556)

  • Change pretty much every CMakeLists.txt file in the entire repo to use the new macros. Almost all the cmake files got much shorter because of this change. (PR#555)

  • Change how we find HDF5. Previously, HDF5 was required to be in users' $PATH. Now, the location of HDF5 is determined automatically by reading variables from MOABConfig.cmake. (PR#555)

  • Change how we find MOAB. Previously, MOAB was required to be in users' $LD_LIBRARY_PATH. Now, users must specify -DMOAB_DIR when running cmake. (PR#555)

    • Note that the MOABConfig.cmake file is no longer used to find any MOAB files.
  • Since users no longer need to change their $PATH or $LD_LIBRARY_PATH, remove the changes to those variables in the CI scripts. (PR#555)

  • Rename the cmake commands used to build DAG-MCNP5/6 with plotting and MPI support. The new commands are BUILD_MCNP_PLOT and BUILD_MCNP_MPI. (PR#555)

  • Rename the cmake command used to build static executables from BUILD_STATIC to BUILD_STATIC_EXE. The old name was confusing because the option only controls the linking of executables, while libraries are always built both static and dynamic. (PR#555)

  • Rename the test folders in src/dagmc and src/mcnp to tests to conform with other unit test directories. (PR#555)

  • Move the source files for the makewatertight and uwuwpreproc executables into a new build directory, keeping the source files for the library where they are. This conforms with other DAGMC features that have both a library and an executable. (PR#555)

  • Replace the mcnpfuncs internal library with an object library. (PR#555)

  • For the pyne_dagmc library, only use -O0 optimzation when building with Intel C++. (PR#555)

  • Update documentation to reflect all changes. (PR#555)

  • Moved all source code into the src directory. (PR#552)

  • Fix download link to astyle 3.0.1 .deb file. (PR#549)

  • Direct Travis to grab the docker image from the cnerg dockerhub account instead of Lucas's account. (PR#546)

Deprecated:

  • DagMC: Deprecated constructor using a raw pointer for the MBI instance, prefered way uses shared_ptr for MBI instance. (PR#671)
  • DagMC::interface_revision method (PR#707)

Removed:

  • Remove the FindHDF5.cmake file as it is no longer needed. (PR#555)
  • gtest/README and gtest/configure.sh: no longer used; last commit in March 2014. (PR#544)
  • tools/build/*: no longer used; last commit in June 2014. (PR#544)
  • cmake/FindPyne.cmake: no longer used; last commit in June 2014. (PR#544)
  • tools/finish_dagmc_geom*: out of date; last commit in June 2014. (PR#544)
  • tools/txcorp_bld/*: no idea what this is; last commit in June 2014. (PR#544)
  • tools/dagmc_tag_eg/*: out of date; last commit in October 2014. (PR#544)
  • tally/tools/boundary_correction/*: broken; last commit in June 2016. (PR#544)

Fixed:

  • pyne::MaterialLibrary calls in fluka_funcs.
  • Tally::particlename to Tally::particlenames update in fluka_funcs as well.
  • eigen3:

    • remove bad flag in MOAB build (PR#684)
    • fixed use include directories (PR#694)
  • Regenerate the DAGMC_LIBRARIES variable upon re-running cmake. (PR#643)

  • Fix error in documentation where cmake was not pointing to the DAGMC source dir as it should. (PR#632)

  • Updated links to OpenMC documentation. (PR#630)

  • Make the MWREGTESTMODELSURL variable available to the docker image. (PR#621)

  • The make_watertight_regression_tests should now be run if the CI is not doing a PR build. (PR#610)

    • I believe this was broken for an undetermined amount of time; I do not believe they were ever getting run regardless of whether the CI was doing a PR build or not. This is because intrinsic Travis variables like $TRAVIS_PULL_REQUEST are only available to .travis.yml; if they are needed in other scripts, they need to be passed manually, and this was not happening before.
  • Fixes issue with unstructured mesh tallies. (PR#597)

  • Now produces a vector tag of size numgroups instead of numgroups+2 scalar tags. (PR#597)

  • Also produces a total tally tag. (PR#597)

Security: None

- C++
Published by bam241 about 5 years ago

dagmc - Release candidate for 3.2

This is a pre-release to facilitate conda-forge improvements.

Some steps for summarizing the release are still necessary.

- C++
Published by ngranda about 6 years ago

dagmc - First Release of FluDAG

This Tag reflects stability in the FluDAG section of the code. We have a number of keen users ready and waiting for this in the HEP community. Given the versioning requirements and the fact that DAGMC now has several interfaces, which really should have their own version number. This makes this release 1.0.0 of FluDAG

- C++
Published by makeclean about 8 years ago