-
Notifications
You must be signed in to change notification settings - Fork 14
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
extended LAMMPS
commands support
#115
extended LAMMPS
commands support
#115
Conversation
@streeve This is remaining part of our work on CabanaMD. Marking this as a draft, as there are some limitations (mostly being restricted to |
Yes definitely, I will take a look |
src/comm_mpi_impl.h
Outdated
@@ -268,6 +271,11 @@ void Comm<t_System>::exchange() | |||
|
|||
N_local = N_local + N_total_recv - N_total_send; | |||
|
|||
std::cout << '[' << proc_rank << "] " |
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.
Same here - always better to have more output, but I doubt we always want to output this
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, definitely. I will do some testing and polishing to make sure that the information is actually useful.
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.
Relevant cabanaMD.out
fragment after integrating this with the other statistics:
#Timestep Temperature PotE ETot Time Atomsteps/s LBImbalance Exchanged
0 13.038466 -4.081539 15.472248 0.00 0.00e+00 -nan -
10 11.276282 -1.442460 15.468581 0.52 9.67e+04 -nan -
20 10.717567 -0.607034 15.466101 1.13 8.11e+04 7.55e-01 1057
30 10.846505 -0.798659 15.467845 1.87 6.77e+04 7.55e-01 -
40 10.953565 -0.960041 15.467020 2.73 5.80e+04 7.14e-01 1011
50 11.091998 -1.167610 15.467059 3.15 1.19e+05 7.14e-01 -
60 11.050713 -1.105665 15.467089 3.65 1.02e+05 6.50e-01 704
70 11.114292 -1.200594 15.467509 4.00 1.41e+05 6.50e-01 -
80 11.153192 -1.258347 15.468094 4.40 1.26e+05 5.65e-01 639
90 11.169153 -1.281515 15.468864 4.66 1.89e+05 5.65e-01 -
100 11.207249 -1.339408 15.468103 4.96 1.66e+05 4.70e-01 555
Exchanged
column will show up only when Load Balancing is enabled.
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 went with total values since we don't seem to need a breakdown per rank.
8363a06
to
e4b6497
Compare
@cwschilly This should help with modifying the load balancing test case. @streeve Thanks for the review. Leaving this as a draft for now, I will fix the output and possibly some other minor issues next week 🤞 |
e4b6497
to
a2d0f1c
Compare
- print imbalance on initial step (will be `-nan`) - use tabs as separators for easier reading
@streeve I have addressed remaining comments. This is also rebased and re-formatted. |
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.
This looks great - couple of wording suggestions, but I think it's ready to merge after that
Co-authored-by: Sam Reeve <[email protected]>
Make it possible to define multiple regions (and the size of simulation box will be adjusted accordingly). This is currently rectricted to
fcc
lattice style only.Notable changes:
create_atoms
to fill the region with atoms of specific typemass
to assign mass to atom typevelocity
to assign temperature to atom typeSee
in.lb
deck and the screenshots below for practical demonstration.You can use
paraview --script utils/paraview_process_data.py
to speed up analysis of produced data. It will try to load alldump*
,domain_act*
anddomain_lb*
data files from your current directory and do some basic ParaView visualization.TODO (mostly optional):
group
command supportMultiple regions with different atom types. Note that when the regions overlap, random type will be assigned:
Multiple regions with different velocities:
Types after 100 steps:
Velocities after 100 steps:
Types after 1000 steps: