iRASPA Community

RASPA => Simulation algorithms and theory => Topic started by: Mozhdeh on September 29, 2019, 08:11:59 AM

Title: MaxNumberOfCoulombicSites
Post by: Mozhdeh on September 29, 2019, 08:11:59 AM
Dear Pro. Dubbledam

I have encounter a message from program as:


Realloc MaxNumberOfCoulombicSites: 4672
Realloc MaxNumberOfCoulombicSites: 5184

I lookup in the algorithms and I found three part of it: first time

// Read the definitions of the components
  MaxNumberOfCoulombicSites=0;
  LargestNumberOfCoulombicSites=0;
  MaxNumberOfBondDipoleSites=0;
  LargestNumberOfBondDipoleSites=0;
then
// components have been read and the maximum amount of molecules has been determined for NVT
  if(!Swapable)
  {
    // the +1 molecule for the Widom particle insertion particle
    MaxNumberOfCoulombicSites=LargestNumberOfCoulombicSites+2*MaxNumberOfBeads;
    MaxNumberOfBondDipoleSites=LargestNumberOfBondDipoleSites+2*MaxNumberOfBeads;

    Adsorbates=(ADSORBATE_MOLECULE**)calloc(NumberOfSystems,sizeof(ADSORBATE_MOLECULE*));

and then

// default: start with 512 atoms in addition to a possible framework
    MaxNumberOfCoulombicSites=LargestNumberOfCoulombicSites+MAX2(MaxNumberOfBeads,512);
    MaxNumberOfBondDipoleSites=LargestNumberOfBondDipoleSites+MAX2(MaxNumberOfBeads,512);
// default: start with 256 adsorbates
    Adsorbates=(ADSORBATE_MOLECULE**)calloc(NumberOfSystems,sizeof(ADSORBATE_MOLECULE*));
    for(i=0;i<NumberOfSystems;i++)
    {
      MaxNumberOfAdsorbateMolecules=256;
      Adsorbates=(ADSORBATE_MOLECULE*)calloc(MaxNumberOfAdsorbateMolecules,sizeof(ADSORBATE_MOLECULE));
    }

Does the message means that the number of adsorbates exceeds a specific number? does the system stuck in a loop or some thing like that?
Title: Re: MaxNumberOfCoulombicSites
Post by: David Dubbeldam on September 29, 2019, 12:45:36 PM
In open ensembles (Gibbs, grand-canonical ensemble) the number of molecules fluctuates. So if more memory is needed the code needs to realloc the memory to make it larger.
Title: Re: MaxNumberOfCoulombicSites
Post by: Mozhdeh on October 01, 2019, 04:28:39 PM
Thanks for the fast respond.
For me, It seems that the run stuck in the initialization part. It takes two days for a structure with more than 2600 atoms and nothing happens after appearance of this message. And actually I found out that running simultaneous jobs of 1 structure with different conditions, for example different pressures, gives wrong results. So the jobs should be run individually. Since I am using a 6-core system (each with 2 thread)  with 16 GB of memory I wonder, Is there a way to manage memory allocation to use the total power of a given PC?
Regards
Title: Re: MaxNumberOfCoulombicSites
Post by: David Dubbeldam on October 04, 2019, 02:18:16 PM
You could do some basic debugging, like setting the PrintEvery to 1 and see if it is just slow or that you are really stuck at step 0.
The latter can happen if you try to put in more molecules than fit in the simulation volume.
Title: Re: MaxNumberOfCoulombicSites
Post by: yimin88 on August 16, 2022, 12:31:47 PM
Yes, this way can work to check whether your script is right or not. This message is telling that you program will run slowly to get results. from my experience, it may take 6 hours to get 100 cycle from my PC (16G RAM, 4 CPU core).