I need to implement the Green Kubo method for computing thermal conductivity. I created a compute modeled after stress/atom and it works fine on a single processor.
The method gives totally different (and wrong) results on a parallel machine. I believe it is because the velocities for the non-local atoms do not exist on other processors.
I need help with sharing the velocities of all the atoms across all processors.
Thanks,
Bill Evans
Hi Bill,
I've attached slightly modified style.h file. I added compute_hf.h to it
and compute_hf.cpp, computer_hf.h files. I've used compute_group_group.cpp
as a prototype, as soon as it has cycle over pairs in it.
It should be compiled
make yes-dpd,
- it uses velocities of ghost atoms.
I've also attached input file for Ar computation with two temperatures
(in comment).
the results could be compared with results presented in chapter 2.18
of S. Yip (ed.), Handbook of Materials Modeling, 763–771. c 2005
Springer. Printed in the Netherlands.
I've deleted first 1000 iterations and calculated averaged values over
20000 samples with 50 steps shift.
Known problems:
1) It's working with pair potentials only,
2) I do no know how to include long-ranged part of Coulomb interaction.
I would really appreciate any comments and suggestions ...
Best,
German
2009/4/9 WJ Evans <[email protected]...>:
compute_hf.cpp (9.93 KB)
compute_hf.h (1.56 KB)
style.h (9.26 KB)
in.lj (674 Bytes)
in.lj (674 Bytes)
If all you need is velocities of ghost atoms, then use
atom_style dpd (or hybrid with dpd as one sub-style).
If you need velocities of all atoms on all procs, then
that isn't very parallel. You could write code to do
it, but LAMMPS doesn't do it anywhere else.
You may also want to see my comments (must posted
to another thread) on GK vs Muller-Plathe for thermal
conductivities. I'd like to understand why everyone seems
to want/need GK.
Steve
2009/4/9 WJ Evans <[email protected]...>:
Just to get comments or to set the ball rolling for a discussion on the list::
I think GK is more of a first principles method based on statistical mechanics as opposed to Muller-Plathe (MP if you please) which seems to be a clever computational trick to obtain a temperature and a corresponding thermal flux. This does not mean that MP is wrong …
Manoj
2009/4/11 Steve Plimpton <[email protected]>
Oops … It should read “clever computational trick to obtain a temperature gradient” …
Best Regards,
Manoj
2009/4/11 Manoj Warrier <manoj.warrier@…24…>