GCMC

Isaak Daniels isaakdan... at gmail.com
Fri Sep 30 20:02:12 CEST 2011


I think I will try to implement GCMC into the source code. What files
should one modify if one wants to introduce a new ensamble?

Thank you

On Sep 3, 12:56 am, Matt McGrath <obfis... at gmail.com> wrote:
> Hi.
>
> That's not possible.  The more molecules you have, the less the
> density will change, but it will always change by a little.
>
>                                            Cheers, Matt
>
> On Sep 3, 4:24 am, Isaak Daniels <isaakdan... at gmail.com> wrote:
>
>
>
> > How does one make sure the density isn't changed in the vapor box when
> > one moves a molecule out of it?
>
> > Thank you
>
> > On Aug 30, 11:21 pm, Matt McGrath <obfis... at gmail.com> wrote:
>
> > > The chemical potential of an ideal gas is a function of the
> > > temperature and number density (N/V).  So, if you have a chemical
> > > potential you want at a certain temperature, you can solve that
> > > equation for the number density.  Once you have the number density,
> > > you decide how many vapor molecules you want (400, 500 maybe) and
> > > calculate the vapor box volume from that.  Then you run the simulation
> > > and make sure the vapor density does not change over the course of the
> > > simulation, because if it does, your chemical potential changes as
> > > well.
>
> > >                              Cheers, Matt
>
> > > On Aug 31, 12:14 am, Isaak Daniels <isaakdan... at gmail.com>
> > > wrote:
>
> > > > What variables should one vary to affect the chemical potential?
>
> > > > Thank you
>
> > > > On Aug 30, 2:41 am, Matt McGrath <obfis... at gmail.com> wrote:
>
> > > > > Nope, not possible.  I never saw a reason for having such a feature
> > > > > (zero particles in the Gibbs ensemble vapor box is still a valid
> > > > > configuration).
>
> > > > >                                 Cheers, Matt
>
> > > > > On Aug 30, 12:51 am, Isaak Daniels <isaakdan... at gmail.com>
> > > > > wrote:
>
> > > > > > Thank you. Is there a way to stop the program from aborting when there
> > > > > > are no molecules left in one box?
>
> > > > > > Thank you
>
> > > > > > On Aug 29, 12:44 am, Matt McGrath <obfis... at gmail.com> wrote:
>
> > > > > > > Hi Issak.  Neither of those is possible at the moment.  The only
> > > > > > > option is to write a script to generate the coordinates yourself (for
> > > > > > > example, creating a grid inside a box the size of your desired
> > > > > > > simulation box, and putting a molecule on each gridpoint, and then
> > > > > > > using those coordinates as the input to one of the boxes in CP2K).  If
> > > > > > > you are using an ideal gas box (i.e. all the FIST interactions are set
> > > > > > > to zero), you don't have to equilibrate the coordinates at all, which
> > > > > > > is a small help.  Otherwise you should run some short equilibration
> > > > > > > (not letting the molecules swap) before doing a real run.
>
> > > > > > >                                 Cheers, Matt
>
> > > > > > > On Aug 29, 2:36 am, Isaak Daniels <isaakdan... at gmail.com> wrote:
>
> > > > > > > > Also, how do you do it so that one can specify a number of molecules
> > > > > > > > without needing coordinates?
>
> > > > > > > > Thank you for helping me.
>
> > > > > > > > On Aug 28, 11:06 am, Isaak Daniels <isaakdan... at gmail.com>
> > > > > > > > wrote:
>
> > > > > > > > > Just to confirm, there is no way to directly have an initial number of
> > > > > > > > > molecules set that can be changed, for example doing 400 gas molecules
> > > > > > > > > that can go in and out of boxes?
>
> > > > > > > > > Thank you
>
> > > > > > > > > On Aug 28, 12:46 am, Matt McGrath <obfis... at gmail.com> wrote:
>
> > > > > > > > > > Hi Issak.  You can find the average number of molecules in each box by
> > > > > > > > > > writing a script to average the mc_molecules file that is printed
> > > > > > > > > > out.  The format is
>
> > > > > > > > > > Step number     # of molecules of type 1        # of molecules of type
> > > > > > > > > > 2 ..... etc, for box 1
> > > > > > > > > > Step number     # of molecules of type 1        # of molecules of type
> > > > > > > > > > 2 ..... etc, for box 2 (if there is a second box in the system)
>
> > > > > > > > > > At one time this was printed out at the end of a run, but for some
> > > > > > > > > > reason I removed it.  There is no way to set this number via the
> > > > > > > > > > pressure...you just need to change the box volume, run the simulation,
> > > > > > > > > > see what the average density is (assuming the simulation has
> > > > > > > > > > equilibrated), change the box volume so that average density will give
> > > > > > > > > > the desired number of molecules, and then rerun.  If the number of
> > > > > > > > > > molecules in the box is very small, there will be large fluctuations
> > > > > > > > > > around this number over the course of the run, but assuming the
> > > > > > > > > > simulation is long enough and equilibrated, the average should be what
> > > > > > > > > > you desire.
>
> > > > > > > > > > The easiest way of keeping a large molecule rigid is to change the
> > > > > > > > > > _MOL probabilities in the input file.  For example, if the big
> > > > > > > > > > molecule is type 1 and the gas atoms are type 2, then a line of
>
> > > > > > > > > > PMSWAP_MOL 0.0 1.0
>
> > > > > > > > > > will let the gas molecules swap between boxes but not the big
> > > > > > > > > > molecule.  Similarly,
>
> > > > > > > > > > PMTRAION_MOL 0.0 1.0
>
> > > > > > > > > > will attempt to change the conformation of molecule 2 but not molecule
> > > > > > > > > > 1.  If you want 30% of molecule translations to be done on molecule 1
> > > > > > > > > > and 70% on molecule 2, a line like
>
> > > > > > > > > > PMTRANS_MOL 0.3 1.0
>
> > > > > > > > > > would work.  Hope that clarifies things.  The file, tests/MC/regtest/
> > > > > > > > > > GEMC_NVT_box1.inp uses this, since it has two molecule types.
>
> > > > > > > > > >                                Cheers, Matt
>
> > > > > > > > > > On Aug 27, 6:26 am, Isaak Daniels <isaakdan... at gmail.com> wrote:
>
> > > > > > > > > > > Sorry for not being clear. By crystal, I mean a large molecule I want
> > > > > > > > > > > rigid, and when I say atoms, I meant the gas atoms.
>
> > > > > > > > > > > Thank you
>
> > > > > > > > > > > On Aug 26, 4:10 pm, Isaak Daniels <isaakdan... at gmail.com> wrote:
>
> > > > > > > > > > > > Also, how does one make sure the crystal is rigid but the atoms can go
> > > > > > > > > > > > in and out of each box?
>
> > > > > > > > > > > > Thank you for answering my questions
>
> > > > > > > > > > > > On Aug 26, 3:07 pm, Isaak Daniels <isaakdan... at gmail.com> wrote:
>
> > > > > > > > > > > > > And one would set it by using the Pressure?
>
> > > > > > > > > > > > > Thank you
>
> > > > > > > > > > > > > On Aug 26, 11:12 am, Isaak Daniels <isaakdan... at gmail.com>
> > > > > > > > > > > > > wrote:
>
> > > > > > > > > > > > > > Is there a way to find the average number of molecules in each box for
> > > > > > > > > > > > > > a GEMC simulation?
>
> > > > > > > > > > > > > > Thank you
>
> > > > > > > > > > > > > > On Aug 25, 2:23 am, Matt McGrath <obfis... at gmail.com> wrote:
>
> > > > > > > > > > > > > > > The only way to set thechemical potentialis if you use the above
> > > > > > > > > > > > > > > tricks and they work.  You can't set it directly, but you could choose
> > > > > > > > > > > > > > > your ideal gas to have a certainchemical potential.  GEMC would
> > > > > > > > > > > > > > > equilibrate thechemical potentialbetween the two boxes, and provided
> > > > > > > > > > > > > > > your ideal vapor box is big enough (i.e. a true reservoir), its
> > > > > > > > > > > > > > >chemical potentialwould not change, so therefore thechemical> potentialin both boxes would be (approximately) the same as what you
> > > > > > > > > > > > > > > started with for your ideal gas.  Finding what is "big enough" would
> > > > > > > > > > > > > > > probably take some effort, though, and there would be error bars
> > > > > > > > > > > > > > > associated with the number, so this is not a perfect solution.
>
> > > > > > > > > > > > > > >                                    Cheers, Matt
>
> > > > > > > > > > > > > > > On Aug 24, 9:21 pm, Isaak Daniels <isaakdan... at gmail.com> wrote:
>
> > > > > > > > > > > > > > > > Is there a way to set achemical potential, such as -454?
>
> > > > > > > > > > > > > > > > Thank you
>
> > > > > > > > > > > > > > > > On Aug 23, 10:08 pm, Matt McGrath <obfis... at gmail.com> wrote:
>
> > > > > > > > > > > > > > > > > When you say "import coordinates of a crystal", do you mean as a swap
> > > > > > > > > > > > > > > > > move?  As in, you want to have gas molecules and crystal molecules
> > > > > > > > > > > > > > > > > come into the box, or that you put crystal coordinates into the box at
> > > > > > > > > > > > > > > > > the beginning, treat the whole box as QM, and then swap gas molecules
> > > > > > > > > > > > > > > > > into the box (also treated as QM)?  The latter option should be
> > > > > > > > > > > > > > > > > possible if the test I described above worked (since the force_env of
> > > > > > > > > > > > > > > > > each box can be specified separately), and is what I assumed you
> > > > > > > > > > > > > > > > > wanted to do in the first post.  If you also want to swap in crystal
> > > > > > > > > > > > > > > > > nuclei, you could do that by making it a new molecule type (and
> > > > > > > > > > > > > > > > > creating a psf file for it), but then it would swap into the QM box in
> > > > > > > > > > > > > > > > > a completely random position, and would still be treated as a molecule
> > > > > > > > > > > > > > > > > from CP2K's standpoint (rotated and translated together).  I don't
> > > > > > > > > > > > > > > > > know if that's what you want or not.
>
> > > > > > > > > > > > > > > > >                       Cheers, Matt
>
> > > > > > > > > > > > > > > > > On Aug 23, 9:23 pm, Isaak Daniels <isaakdan... at gmail.com> wrote:
>
> > > > > > > > > > > > > > > > > > Can I also have it so that in the non-vapor box, gas molecules
>
> ...
>
> read more »


More information about the CP2K-user mailing list