<div dir="ltr"><div>Hello CP2K users,</div><div><br></div><div>I'm a graduate student at Oregon State University.  My work is focused on dust formation in astrophysics.  I have a passing familiarity with chemistry codes, but my background is limited.</div><div><br></div>I am attempting to use minima hopping to determine the ground state (or close to it) of silicate molecules.  However, I'm running across the issue where the algorithm will fragment the molecule during the relaxation step, which leads to huge differences in energies.<div><br></div><div>Following the MH algorithm in the code, here is what (I think) is happening:</div><div><br></div><div>1.) Runs the MD step</div><div>   1a.) Using the FIX_FRAGMENTATION flag, if any fragmentation happened then CP2K will "reform" the molecule</div><div>2.) Runs the GEO_OPT step</div><div>   2a.) Here, the system will relax into a fragmented molecule - even if it was "fixed" in the previous step, or if the atomic positions go beyond the size of the cell.</div><div>3.) Updates MH parameters (temperature, accept energy, ect.) based on the fragmented (and wildly different) molecule.</div><div><br></div><div>I would like to know if/how it's possible in CP2K to constrain the system to prevent it from fragmenting in the relaxation step.  For instance, I could impart a global spring force on all atoms, or I could constrain atom positions to stay within a certain range.  There's a lot in CP2K that seems to do something like this, but I can't work out how to implement it.</div><div><br></div><div>(Is this something to worry about?  My main concern isn't that the MH algorithm gives fragmented molecules - I can sort out the unfragmented (= correct) ones afterwords.  I worried, however, that by breaking up these molecules the MH algorithm won't work correctly.  Indeed, it appears to go a bit crazy after a fragmentation happens. For instance, the temperature will reduce to ~0.0 and never rise again, indicating that the system has entered into a completely flat, nonphysical energy surface.)</div><div><br></div><div>I've attached my input file (being MH, there's a lot of clutter involved in turning off of output).  The number of workers and number of steps were are changed, but I usually run on several dozens workers with ~10^6 MH steps.  The atomic positions are randomly generated but done so in a way to maintain reasonable separation between atoms at creation.  The current setup should yield a fragmented system within ~100 - 1000 steps.</div><div><br></div><div>(Also, if anyone has any advice on the warning:</div><div><div>********************************************************************************</div><div>* Value of r in Input =   0.226256 not in the spline range. Using =   0.902115 *</div><div>********************************************************************************</div></div><div>I would appreciate it.  I've tried playing with the SPLINE parameters but I have only the vaguest notions of what these do, so I'm just stabbing in the dark.)</div><div><br></div><div>Thanks for your help!</div></div>