-
Notifications
You must be signed in to change notification settings - Fork 60
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
Encapsulation of the load balancing in DEM and CFD-DEM #1199
Conversation
examples/unresolved-cfd-dem/gas-solid-spouted-bed/gas-solid-spouted-bed.prm
Outdated
Show resolved
Hide resolved
/** | ||
* @brief Pointer to the simulation control object. | ||
*/ | ||
std::shared_ptr<SimulationControl> simulation_control; | ||
|
||
/** | ||
* @brief Pointer to the triangulation object. | ||
*/ | ||
parallel::distributed::Triangulation<dim> *triangulation; | ||
|
||
/** | ||
* @brief Pointer to the particle handler object. | ||
*/ | ||
Particles::ParticleHandler<dim> *particle_handler; | ||
|
||
/** | ||
* @brief Pointer to the adaptive sparse contacts object. | ||
*/ | ||
AdaptiveSparseContacts<dim> *adaptive_sparse_contacts; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Any reasons why you are keeping raw points for some stuff and shared_ptr for others?
I presume the one for which you are keeping raw points are not pointer in the DEM class, is that it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll continue reviewing this as I have time today and over the weekend, but I really like what I have read thus far. This is a beautiful step in a beautiful direction
6980bec
to
d6f5b2e
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice move! I have nothing to add. Great job!
applications_tests/lethe-fluid-particles/spouted_bed_load_balancing.prm
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome, will merge :)!
I will look into the failling test this PM, probably the rayleigh ratio :) |
Yes because the test failed after rebased |
Move the cell weight in the class
Make compatible the prm generator for easy restart generation
Output is still the same as fixed master
e61262c
to
a08b710
Compare
…#1199) Description The functions related to the load balancing were implemented in the DEM solver and coupling CFD-DEM solver even tho it is not really specific to the solvers. The setup and the routine were duplicated in both solvers, making modifications or maintenances harder. The solution is the implementation the load balancing class with mostly the same functions. The load balancing is also fixed for the CFD-DEM. It was not working since nov. 2022, oops. Testing All tests related to the load balacing in DEM are still passing. A new test spouted_bed_load_balancing_generator.prm was added for the unresolved cfd-dem tests. After a quick fix on the master, results were compared and are the same. Former-commit-id: 2e3dfc0
Description The functions related to the load balancing were implemented in the DEM solver and coupling CFD-DEM solver even tho it is not really specific to the solvers. The setup and the routine were duplicated in both solvers, making modifications or maintenances harder. The solution is the implementation the load balancing class with mostly the same functions. The load balancing is also fixed for the CFD-DEM. It was not working since nov. 2022, oops. Testing All tests related to the load balacing in DEM are still passing. A new test spouted_bed_load_balancing_generator.prm was added for the unresolved cfd-dem tests. After a quick fix on the master, results were compared and are the same. Former-commit-id: 2e3dfc0
Description
The functions related to the load balancing were implemented in the DEM solver and coupling CFD-DEM solver even tho it is not really specific to the solvers.
The setup and the routine were duplicated in both solvers, making modifications or maintenances harder.
The solution is the implementation the load balancing class with mostly the same functions.
The load balancing is also fixed for the CFD-DEM. It was not working since nov. 2022, oops.
Testing
All tests related to the load balacing in DEM are still passing.
A new test
spouted_bed_load_balancing_generator.prm
was added for the unresolved cfd-dem tests.After a quick fix on the master, results were compared and are the same.
Miscellaneous (will be removed when merged)
It is not fully encapsulated (the load_balance() functions are still implemented in the solvers), but it is the cleanest and easier way to do it to this day with the way the code flags some step (load_balancing, checkpoint, etc...) and executes reinititialization and other stuff.
Checklist (will be removed when merged)
See this page for more information about the pull request process.
Code related list:
Pull request related list: