I am going to compute the heat flux in an none-heterogeneous system under the steady none-equilibrium state. But i am wondering whether the compute heat/flux command can be used to do this for it is not explicitly pointed out in the manual.In order to solve this question, i tried to find the paper where the formula was first put out,but failed.In the page of the compute heat/flux command manual,the paper is not mentioned. In the papers that use this command to compute the heat flux,they all point to the paper S. Plimpton, Fast Parallel Algorithms for Short-Range Molecular Dynamics, J. Comput. Phys., 1995, 117, 1–19. But in this paper,i cannot find any information about the compute heat/flux command. I noticed that a paper J. Chem. Phys. 128, 044504 (2008) put out a similar formular that include all many-body potential in the heat-flux computation,so i am wondering whether this two methods are the same.
What is none-heterogeneous? Perhaps you were referring to inhomogenous? If you are studying systems with different species, it is important to add partial enthalpy terms to the convective part of the heat flux.
Anyway, as written in the Introduction of the 2008-JCP paper you mentioned, the heat flux expression for two-body potentials were first derived by Irving and Kirkwood [Ref. 1 in the 2008-JCP paper] in 1950. This is a now a standard textbook result, so people usually do not cite any literature for it. Steve’s 1995-JCP paper was usually cited in this case just because the authors used LAMMPS and chose to cite LAMMPS for it.
As for heat flux for many-body potentials, the 2008-JCP is an interesting one. I did not read it before, but it seems I would agree with the results in it. Whether the current LAMMPS implementation is consistent with this paper or not is not clear to me. You can also consult this paper for an alternative viewpoint: https://journals.aps.org/prb/abstract/10.1103/PhysRevB.92.094301. Many-body potentials are generally more complicated than two-body potentials and there might be many seemingly different but actually equivalent formulations for the same quantity.
Happy to cooperate with you. I have studied the DCV-GCMD in lammps several days. I have got a preliminary script. But I find there exist some problems. Hope to discuss DCV-GCMD and solve the problem. I have post my main problem in DCV-GCMD to the mail list today. You can find it easily. The input script was attached. Last but not least, it is better to add a reflecting probability to the modified cpp file.
test1.in (4.72 KB)
test2.in (4.84 KB)
This is a general response to all your recent questions about generating a steady flow. The easiest way to generate steady flow is to apply an external force to all the fluid atoms in a direction that crosses a periodic boundary. However, in order for this to be stable, it is essentially that you add something to the simulation that opposes the flow, otherwise the flow velocity will increase without limit. There are lots of choice for the opposing force e.g. a slab of atoms that is either frozen or tethered in some way.
If you apply a thermostat of any kind, you have to be very careful about measuring temperature and adjusting kinetic energy using velocities with the bias (flow velocity) removed.
Another method is DCV-GCMD, with two different chemical potentials. It is a good idea to get this working for a non-flowing system with a few different values of mu=mu1=mu2, measuring the state of the system (pressure or density) in each case. Now you can set mu2=mu1+delta_mu, with delta_mu chosen to give you a desired pressure or density difference.
There is no magic trick to all of this, you just have to start simple and slowly add complexity, carefully checking the results against your expectations at each point along the way.