I am running grand canonical monte carlo for water adsorption in zeolite with gcmc fix.
Running same setup with nvt fix is stable but adding gcmc returns non-numeric atom coords.
I tried changing both the number of md-steps between water insertion and number of mc-steps at each insertion without any improvement.
Adding molecules to cell during run is expected to be unstable because of overlap of volumes and so on but it should be possible to stabilize this. So hints are appreciated.
Update 1
Instability seem to occur whenever water number is zero. Since this implies temperature is zero, can the reason be related with the thermostat ?
Update 2
Removing modification of thermostat temp to water temperature by omitting this line
fix_modify fxnvt temp mdtemp
makes the simulation stable. It seems the issue was from the thermostat, having temperature of just one molecule likely gives large force. At zero load the thermostat temperature is zero. Inserting one water from gas at temperature 300 likely gives large force in one step. Can it be that the issue is this lack of equilibrium between temperatures of adsorbed water and gas water ?
Input
timestep 1.0
group si type 3 4 5 6 7 8 9
group water type 1 2
fix freezeSi si setforce 0.0 0.0 0.0molecule watmol watmol.txt
– energy minimization –
minimize 1e-30 1e-35 20000 2000000
– nvt / stable –
velocity si set 0.0 0.0 0.0
velocity water create 300 5463576
fix fxnvt water nvt temp 300.0 300.0 10.0
run 1000– gcmc / unstable –
velocity si set 0.0 0.0 0.0
velocity water create 300 5463576
compute mdtemp water temp
compute_modify mdtemp dynamic/dof yes
fix fxnvt water nvt temp 300.0 300.0 10.0
fix_modify fxnvt temp mdtemp
fix fxmuvt water gcmc 10 100 100 0 29494 300.0 0.0 0.01 pressure 0.01 mol watmol
run 1000
run.in (1.0 KB)
watmol.txt (319 Bytes)
system.in.settings (1022 Bytes)
system.in.init (1.1 KB)
system.data (7.0 KB)