Releases: solidsgroup/alamo
Releases · solidsgroup/alamo
Release list
26.06
What's Changed
- Updating Gas and Thermo to use standard methods for IO and initializa… by @bsrunnels in #208
- Migrate Hydro and HeatConduction to using amrex::TimeIntegrator by @bsrunnels in #221
- Global constants by @etsandall in #222
- Adding units to SCP tests and to PSRead by @bsrunnels in #226
- Fixing integrator loop, also tweaking HLLC exceptions and test by @bsrunnels in #227
- Fix SCP Sandwich test error by @bsrunnels in #230
- Enhancement/ci test update by @bsrunnels in #233
- Shoring up the python support by @bsrunnels in #234
- Merge hydro by @mungerct in #229
- Feature/add config and fork by @bsrunnels in #238
- Adding capability to print out layers of ghost nodes or cells by @bsrunnels in #249
- fixing warnings, making tests and structs more pod friendly by @bsrunnels in #254
- updates to runtests scripts, documentation, report generation by @bsrunnels in #255
- Fix --get-eigen by @etsandall in #256
- Hotfix hydro by @etsandall in #257
- Upgrade to amrex 26.02 by @bsrunnels in #261
- Making integrator I/O more compliant so that inputs show up in scraped documentation. by @bsrunnels in #262
- Update AMREX make variables to fix realclean by @mcmehrtens in #258
- Update to make solver tolerances adjustable instead of hardcoded by @bsrunnels in #263
- Enhancement/periodicity by @bsrunnels in #265
- Improving the regression test report by @bsrunnels in #223
- implemented constants for BC::Expression by @bsrunnels in #268
- fix eta healing bug by @mungerct in #270
- Major overhaul of Hydro by @etsandall in #274
- Merge flame with regression with voids to development by @mungerct in #276
- Adding a check to error out if the ncomp is inconsistent with the num… by @bsrunnels in #279
- Disable AMReX Fortran builds by @mcmehrtens in #282
- Make macOS support more robust by @mcmehrtens in #283
- Feature/regression with voids merge by @mungerct in #281
- Upgrade to 26.06 by @bsrunnels in #284
New Contributors
Full Changelog: 25.12...26.06
25.12
Updates in 25.12 from 25.07.
🔧 Features
- Added alamo python interface
- Linked to JOSS publication
- Added Unit parsing capability
- Added RK4 and SSPRK3 timestepping to Hydro
- Added clock stop feature for Integrator
- Added PFCZM integrator
- Added HLLC Riemann solver
- Added fracture integrator and executable
♻️ Refactorization
- Refactor of testlib
🐛 Bugfixes
- Fixed mac os installation script
- Addressed permissions vulnerability in install.yml
- Regression tests error if unused inputs are detected
- Addressed pressure reference issues in FullFeedback
- Fixed restart issues
🧪 Regression tests
- Updated cleanup capability so that cleanup only happens after all sections in a test have been run
- Added restart testing to Hydro and PhaseFieldMicrostructure
- Most tests updated to include units
- Added Fracture family of regression tests
🏗️ Building and infrastructure
- Upgrade to AMReX 25.12
- Fixed issues with restart
- Improved exception catching in ParmParse
- Added tests for units
✅ CI tests
- Fixed the artifact generation to always generate even if the tests fail
- Added CI test to generate paper for JOSS
🧹 Formatting
- Various formatting fixes to documentation
📚 Documentation
- Added JOSS paper
- Minor fixes to the InputIndex formatting
- Updated documentation checker to warn if it seems pp.query lines were missed
- Added test and documentation for 1D allen cahn
- Added animation for VoronoiDynamics test
25.07
▦ AMReX Update to 25.07
🔧 Features
- Added a new capability to replace current dynamic dispatch functionality with static dispatch using templates. This shows up as a new
select_enumerateoption, and the example case is insrc/Model/Propellant/Propellant.H. - Added SSPRK3 and RK4 time integration options to Hydro
- Added HLLE solver to Hydro (though there is not currently a good test in place)
- Updated ghost cells and
evolvingspecifier to speed up Hydro - Updated
Integratorto enable specification of evolving vs non-evolving fields (to try to remove some of the expensive fillpatch operations) - Added
Model::Solid::Linear::Transversematerial model with test - Added
Stencil::NodeGradientOnCell - Added extraction of young's modulus and poisson's ratio from the
Matrix4<Isotropic>type. - Added
Transversegenerator to theMatrix4<MajorMinor>class - Added
Stateconstructor toFluxto enable type conversion. - Added lowmach correction to
Riemann::Roesolver - Added
IgnoreUnusedtoUtil - Updated
Hydroto complain if unused variables are detected. This caused a bunch of errors (and subsequent cleanup) for the regression tests
♻️ Refactorization
- Major refactor of the flame integrator, using the static dispatch described above. A large number of
pp_forbidstatements have been added to address compatibility, and all tests have been updated. The Flame capabilities are largely encapsulated in theModel/Propellantclasses.
🐛 Bugfixes
- In
BC::Constant, fixed an issue with corner ghost cells that were not getting filled correctly. Note however that this fixes the issue in 2D only; more general fixes are needed. - Fixed error in
Operator::Elastic::averageDownCoeffsDifferentAmrLevels- debug statement was checking for NANs in a fab using the wrong indices. - Added
constspecifier toPatchfor const-correctness - Updated destructor for
PNGto include preprocessor directives
🧪 Regression tests
- Increased absolute tolerance for
FlowAllenCahn.FlowChannel - Removed unused inputs for regtests
- Changed params of
SCPSandwichto reduce runtime
🏗️ Building and infrastructure
- Added support for building and regression testing with
google-perftools - Added automatic generation of
report.htmlto summarize regression test results when `./scripts/runtests.py' is called
✅ CI tests
- Updated ubuntu 24.04 install script to include google perftools
- Updated macos brew install
- Added artifact export of regtest summary bundle into the
test-2d-24-04-clangtest - Update memcheck to force switch to
mpichfor msan/asan tests, sinceopenmpiis not msan/asan safe - Updated the performance CI test to build in parallel
🧹 Formatting
- Updated
.clang-format
📚 Documentation
- Removed the HPC page - this is now on the wiki
- Fixed some issues with the
InputIndexformatting
25.04
New dependencies added:
- amrex 25.04
- python clang (for linting and autodoc only)
- libfftw3-dev (optional, used with --fft flag)
New features added:
- Ability to use the AMReX FFT capability for spectral solves
- PFC integrator
- Spectral option for CahnHilliard and HeatConduction
- Verbose mode for Makefile (configure with
--verboseto activate) - InputIndex documentation with recursive code scraping using new scraper + clang based AST
- Added
query_enumerateandselect_main
Bugs fixed:
- Fixed issue with diff patch that was preventing creation during make bin/exe
- Updating queries to use _default or _required option
- General increased compliance to autodoc parsing standards
New CI tests added
- fft CI test with clang
- added fft option to control whether fft tests are run in regression test
Misc
- Added citation to arXiv paper
25.03
This version addresses the issues with mpich on Ubuntu 24.04 by fully supporting openmpi and setting that as the default on 24.04. It also adds the Hydro integrator, the completed CahnHilliard integrator, and overhauls the PhaseFieldMicrostructure integrator.
Summary of updates in this version from 25.02:
- Removed many deprecated and unused files
- Added clang formatter file
- Revamped the CI tests including
- Consolidated and renamed many of workflows
- Changed conditions of PR into development to run all tests but performance and deploy to github pages
- Split dependency files into different ubuntu versions
- Added support for ubuntu 24.04
- Removed ubuntu 20.04 tests
- Added a "parallelism" check to ensure that MPI is functioning properly
- Removed outdated python interface code
- Updated makefile to have verbose mode
- Re-wrote readme file
- Updated configure script to generate compile_commands.json for LSP
- Added full support for openmpi, and revised the configure script to do more comprehensive checking of the mpi version
- Cleaned up the doxygen Doxyfile
- Consolidated python dependencies
- Refactored the code autodoc scrapers
- Added an HPC documentation section
- Reformatted the documentation
- Cleaned up many header files and fleshed out documentation
- Added IC templating
- Finished Cahn Hilliard example and added test
- Added the Hydro integrator and Flow regression tests
- Updated PFM to integrate old Fgb methods, merged in the atgb branch and added appropriate options
- Added the Disconnection class to manage manual disconnection nucleation
- Added the class of local Riemann solvers
- Split PNG management into a separate util class
- Added the PNG regression test
25.02
Standard update into master branch from development (#96) * Format Documents (Tabs and Spaces) * Fixed errors in compiling * Added a default max_step value * Added default values to ref_threshold and made changes to pp_query naming errors * correctd BMP input verification, added working blade impact dynamics example * Substantial revision to traction boundary conditions for dynamics (they were never actually correct before). Shock tube case and droplet impact all working. * adding dynamicbar test, more minor fixes * fixed uninitialize value issue, and added ignores so that elastic expression BCs work in 2d and 3d * fixing formatting and docs * Fixing formatting and input errors * makefile update * reverting to div(sigma) but still need to check impact test * updating dynamics BCs to account for eigenstrain * fixing clang incompatibilities * updates for multimodel inputs to the mechanics integrator; some small updates to ParmParse * fixed backwards compatibility error from new model parse check, updated laplacian to have a parsed coefficient * fixed depenency error with .cc files during compilation * Removed some warnings * Deleted changes and applied difftool to go back to development's status * Changed pp_query to default/required PART 1 * pp_query changes PART 2 * PART 3 * pp_query changes PART 3 * pp_query changes PART 3 * pp_query changes PART 4 * fixed bug with #83 for dispersion variable bad query * pp_query changes PART 5 * pp_query changes PART 5 * pp_query changes PART 5 * pp_query changes PART 5.2 * pp_query changes PART 6 * pp_query changes PART 6.1 * pp_query changes PART 6.2 * debugging * fixed merge conflict marker * Changes in Integrator.cpp * Changes in Integrator.cpp * Reverted pp_query changes to 4 * pp_changes PART 5.3 * pp_query changes 5.4 * pp_query changes 5.5 * pp_query changes 7.0 * pp_query changes 7.1 * pp_query changes 7.3 * pp_query changes 7.2 * pp_query changes 7.4 * pp_query changes 7.5 * pp_query changes 7.41 * pp_query changes 5.5 * pp_query changes 7.7 * pp_query changes 7.8 * pp_query changes 8.0 * pp_query changes 8.1 * pp_query changes 8.2 * pp_query changes 8.21 * pp_query changes 8.22 * pp_query changes 8.23 * pp_query changes 8.3 * pp_query changes 8.4 * pp_query changes 8.5 * pp_queery changes 8.51 * pp_query changes 8.55 * pp_query changes 8.6 * pp_query changes 8.61 * pp_query changes 8.7 (Flame.cpp) * pp_query changes 8.71 (Fracture.H) * pp_query changes 8.72 (Integrator.cpp) * pp_query changes 8.721 (Integrator.cpp) * pp_query changes 8.73 (PhaseFieldMicrostructure.H) * pp_query changes 8.74 (SutureCrack.H) * updated test scripts to make them more robust * pp_query changes 8.731 (PhaseFieldMicrostructure.H) * pp_query changes 8.5 (Mechanics.H) * pp_query changes 8.51 (Mechanics.H) * pp_query changes 8.52 (Mechanics.H) * pp_query changes 8.74 (SutureCrack.H) * pp_query changes 8.75 (Reverted SutureCrack.H) * pp_query changes 8.76 (testing without validate in mechanics) * pp_query changes 8.77 (😫) * pp_query changes 8.78 (Flame.cpp rmv validate) * pp_query changes 8.781 (re added validate to Flame.cpp - was working before) * Added plot_file variable substitution * pp_query changes 8.783 redoing from the last succesful run * adding anglefmt specifier * Fixed missing anglefmt documentation * test scripts change * pp_query changes - fixed 8.73 * pp_query changes - fixed 8.74 * integrating changes from atgb-twin * renaming some models * fixed compile error in test * reverting Voronoi test * Adding pp_query_validate to Mechanics.H * Added pp_query_validate to Mechanics.H - 1.2 * pp_query FINAL UPDATES * Delete sshfile * Delete sshfile.pub * Resolved formatting changes - AllenCahn.H * Resolved formatting changes - BaseField.H * Resolved formatting changes - CahnHilliard.H * Resolved formatting changes - CahnHilliard.cpp * Reverted to OG file - Fracture.H * Reverted to OG file - SutureCrack.H * Delete sudo * Changes upon comments in Pull Request - Integrator.cpp * Integrator.cpp - Regrid int = 2 // not 10 * Integrator.cpp - PR changes * testing - remove 0 and using required - Flame.cpp * 0 TO 'NAN' changes upon PR comments - Flame.cpp/H * 0 to 'NAN' changes - Flame.cpp/H * 0 to NAN - Flame.cpp/H * retrying Flame.cpp/H fixes * retrying Flame.cpp/H fixes 2 * resetting few values except those with all zeroes in flame.cpp * resetting the same in Flame.H * adding sdf * Removed bmp and png from pp_query_validate - Flame.cpp * removed thermal disperssion from Flame.cpp * Added comments referring to -ve values in Integrator.cpp * Added pp_query_validate line in TopOp.H * Initialized values to NAN in Dendrite.H and TopOp.H. Provided Vol0frac = 0.5 * set non-pp_query values to NAN - testing * Set lower values to NAN - AllenCahn.H * Set lower values to NAN & add timestep in .cpp - Flame.cpp/H * Set lower values to NAN and added timestep in .cpp - Flame.cpp/H * Set lower values to NAN and added timestep to Flame.cpp - Flame.H/cpp * Set lower values as NAN - Integrator.H * Set the lower values to NAN - Mechanics.H * Set lower values to NAN - PhaseFieldMicrostructure.H * Set lower values to NAN - TopOp.H * testing changes in Random.H * reverted NAN changes in PhaseFieldMicroStructure.H * Updated, merged with development, and fixed regridding issue * Removing Random.IC test * Readded Random.IC test * Tried resolving compiling erros after merging * resolving merge conflicts * restoring from merge * reverting merge * trying to fix make error in test.cc and mechanics.cc * fixing make error in test.cc & mechanics.cc * using difftool to crosscheck 62c1cc5 - last successful commit * difftool a6a8654 * merging with development . pt1 * merging with development PT. 2 * fixed Integrator.cpp diff * Testing update for Random.IC in AllenCahn * Restoring AllenCahn Test * Allowing ref in AllenCahn Test * ref = False -- AllenCahn Test * finite crystal plasticity implementation * added random with , in var in allencahn * reverted test and changed input - AllenCahn * reverting to 1 before * changing = to == in AllenCahn.H * changed test - Allen Cahn * type -- alpha.ic.type - AllenCahn Test * added "" to random * removed "" * ref file gen = true * removedd sys.argv[2] * i don't know * added comma to reference = reference * reverting to OG * reverted ref file * set ref * adding reference and generating ref data - Allen Chan * reference for random.ic added * set gen_ref_data = false * added reference for remaining tests * added stop_time=30.0 * replacing NAN with -1 when initializing int * Updating coverage test to use coverage version of code * updating to amrex 24.08, which required some ParmParse fixes * removing coverage test from Linux run * Adding file hasher - wip to do runtime source checking * fixing EC issue - literally just one space * Brining in some updates from viscous2d * adding new required constant values to SCP tests * initial select implementation * wip - input parsing * formatted tabs * adding more IO utils and associated python * fixing compatibility issues * most parts working now * Finalizing alpha builder * compile error fixed * All tests passing locally - ready to merge in * removed docutils - wasn't necessary * REALLY removing docutils this time... * fixed perturbedinterface input file so now tests pass * fixing test script to catch error * Fixing reference for incorrect test * Fixing regtest issue and extending the input builder * Updating thermoelastic test to add el.bc.type * Fixing css formatting * Updating regtest script to include progress updates * updating to avoid status update with backspace on GH actions * Fixing error in run script that was failing to notice if a run crashed * updated run script to force kill a run that has timed out * merging in some of the developments from hydro * updating configure * Added kill to timeout in regtest script, was causing CI to hang on completion because jobs were still running * Cleaning up some of the tests, adding TopOp verification * Upgrading artifact uploading * Updating the pp.select implementation and documentation capability * Modernizing the inputs table formatting * more formatting changes * Formatting and purging some of the code * Code purging * purge and format * additional documentation and purging old code * fix: added Trig back in because a test depends on it * Upgrading to AMReX 25.02 * checking to make sure memcheck FAILS * bugfix: fixed an error in the linear interpolator that was accessing points outside the array * Flame bugfix - eta.ic and pf.eta.ic were both allowed which led to memory leaks. This has been fixed * fixed whitespace warning and added required documentation to Flame * Switching to ASan for memory checking. * adding ASan and MSan options, fixing some of the memory leak issues * fix workflow character error * caught some memory leaks but not all - still work to do * Updating configure script to check mpich version for ASan compatibility * Numerous memory leak fixes. * Cleaning up the test runner - formatting and adding kill * fixing stencil overflow error in Flame * Fixed another stencil overflow error in Integrator::Mechanics. Updated the pressurized hole reference data * Update issue templates * Update issue templates --------- Co-authored-by: Moses Ongole <mongole@solids.group> Co-authored-by: meierms1 <meierms@icloud.com> Co-authored-by: Brandon Runnels <Brandon Runnels>
24.07
What's Changed
- updating eigen script by @bsrunnels in #76
- Macos by @bsrunnels in #77
- Install ubuntu by @bsrunnels in #78
- Flame by @bsrunnels in #79
- Candidate by @bsrunnels in #80
- Development by @bsrunnels in #81
Full Changelog: 24.06...24.07