Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update/dem #215

Merged
merged 68 commits into from
Jun 16, 2023
Merged

Update/dem #215

merged 68 commits into from
Jun 16, 2023

Conversation

jmpearl
Copy link
Collaborator

@jmpearl jmpearl commented May 8, 2023

Summary

  • This is a significant overhaul of the DEM package (may break scripts)
  • It does the following:
    • adds solid boundary conditions to DEM package
      • infinite plane
      • finite planes (disk/rectangle)
      • finite cylinder
      • sphere and half sphere
    • moves some DEM fieldLists from phys package to nodeList
    • simplifies node generation w/ DEM (no more nPerh)
    • makes initialization on start up more robust
      • Hfield guaranteed to be appropriate
      • unique indices always valid
    • modified fast timestepping to allow variable neighbor-search buffer distances
    • fixes the "exploding" composite particle bug

ToDo :

  • Annotate RELEASE_NOTES.md with notable changes.
  • Create LLNLSpheral PR pointing at this branch. (PR#)
  • LLNLSpheral PR has passed all tests.

jmpearl added 30 commits April 1, 2023 22:33
1) old implementation allowed eq overlap to be negative, now the initialize force eq overlap >= 0. 2) Shifted the if statment for efficiency, probably pretty insigificant in the grand scheme. 3) eq overlap initializer now takes a additional integer input which is used to limit the initialization to composite particle with id's greater than a specified value. This should come in handy for on the fly particle generation through a periodic work function.
what was in DEM was basically a hack using the initialize method and a bool flag to get initializeOnStartUp behavior. The new implementation is more consistent with the physics package structure. I also cut out that flag since it was no longer necessary
dem base class now initializes H from the particle radius on simulation start up. H is set such that the particle will 'see' neighbors when they are within a 'buffer distance' set through a new input neighborSearchBuffer in units of particle radii.
this is designed to allow the solid bc position and velocity to be update overtime for simple moving boundaries. The user could do more complicated things with periodic work functions to control the boundary dynamics
 also cleaned up some types and const-ing
@jmpearl jmpearl added this to the 2023.06.0 Release milestone Jun 9, 2023
@jmpearl jmpearl requested a review from mdavis36 June 13, 2023 00:21
Copy link
Collaborator

@mdavis36 mdavis36 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a few empty files and some nitpicking but otherwise looks good 👍

src/DEM/CMakeLists.txt Show resolved Hide resolved
src/DEM/SolidBoundary/CMakeLists.txt Outdated Show resolved Hide resolved
src/DEM/SolidBoundary/DEMBoundaryPolicyInline.hh Outdated Show resolved Hide resolved
src/DEM/SolidBoundary/SolidBoundaryBase.hh Outdated Show resolved Hide resolved
src/DEM/SolidBoundary/SolidBoundaryBaseInline.hh Outdated Show resolved Hide resolved
@jmpearl jmpearl requested a review from jmikeowen June 14, 2023 23:30
@jmpearl jmpearl merged commit 1617379 into develop Jun 16, 2023
@mdavis36 mdavis36 deleted the update/DEM branch June 16, 2023 19:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants