I have learned lammps for days but I am still very confused about the command “fix gcmc”. I have the following questions (Qs). Thanks for your answers in advance.
Q1: In the manual, it reads “if used with the fix nvt command…” What does this mean? Does “fix gcmc” has to be used in a combination with “fix nvt”? Yes or No?
Q2: The format for “fix gcmc” is “fix ID group-ID gcmc N X M type seed T mu displace keyword values …” where we have “N = invoke this fix every N steps”. If “fix gcmc” can be used independently, is it still of “muVT” ensemble? If used independently, we have to set N=0, correct?
Q3: “fix gcmc” can be used with “fix nVt”, this is clearly stated in the manual. Is it also OK to use within a combination with “fix npT”?
Q4: For a homogeneous system (e.g. H2 in bulk), I guess, the answer for Q3 is NO. Because V and n can fluctuate for “npt” and “muVT”, respectively, for homogeneous system it may result in a continuely increase of n. For this you can imagine that when do simulations in “npt”, the volume of system may increase a little, then when turn to “muVT”, the n (e.g. the number of H2 molecules) may increase a little due to the relatively larger volume, then again V increases, n increases…and comes no end.
Q5: In a word, I believe, althoug not 100% sure, a combination of “fix gcmc” and “fix npt” can not be applied to a homogeneous system (or single component system). But I believe this combination can be applied to a multi-component system, if only the number of molecules (or atoms) of parts of components is kept constant and only the rest of components are allowed to exchange with the reservoir. If this is true, can I directly use this combination without any modification to lammps code?
Q6: Currently it seems for “fix gcmc”, only one type of component is allowed to exchange. Is it possible to deal with a system with more than one component needed to exchanged (e.g. a systems including H2, O2 and CO2)?
Q7 When explaining how to add the inserted atoms/molecules into group/group-ID. The manual reads " E.g. if type = 2, and the file specifies atom types 1,2,3, then the inserted molecule will have atom types 3,4,5." Here I am totally confused that why the specified atoms have types of 1,2,3, but then they become 3,4,5 after insertion?
Q8 Let’s take a system of originally 100 H2 molecules (i.e. for the initial state there are 100 H2, but more H2 may be inserted) as an example. Only the H2 with exchange type can be inserted, but all H2 including the originally 100 H2 and those newly inserted can be deleted. Is this correct? But it seems the atom type of the originally 100 H2 differs with those newly inserted H2 although they are esentially the same H2. I can not understand how the atom type is set or changed here.
Q9: It reads “Note that very lengthy simulations involving insertions/deletions of billions of gas molecules may run out of atom or molecule IDs and trigger an error”. I can not understand why the IDs can be run out of.
I have too many questions, partially because I am new to lammps and partially because of my English language. Anyway, thanks a lot for your reply in advance.