NPT_F with surfaces
Marcelo Carignano
macar... at gmail.com
Tue Jun 26 06:32:19 UTC 2018
Thank you Travis,
I think I didn't explain myself correctly.
The original post from Massimo is about performing NPT_F MD simulations
keeping one of the box dimensions fixed.
A reply indicated that that could be done by a modification of the code,
cell_opt_utils.F
After checking that file I see that those options are already coded, but
perhaps this is only for CELL_OPT and not for RUN_TYPE MD
Now, looking back I see that the referred file is cell_opt_util.F and no
md_utils.F, which makes me wonder if the comment from Florian was indeed
referring to MD or CELL_OPT.
Then... is it possible to run an MD, under NPT_F conditions for a slab
system and keeping the constant dimension of the box normal to the slab??
With a little hint of the developers I can do this change myself.
Thanks,
Marcelo.
On Monday, June 25, 2018 at 11:35:04 PM UTC+3, Travis wrote:
>
> CONSTRAINT X, Y, Z, XY, XZ, YZ under
> https://manual.cp2k.org/trunk/CP2K_INPUT/MOTION/CELL_OPT.html
>
> On Monday, June 25, 2018 at 2:16:41 PM UTC-4, Marcelo Carignano wrote:
>>
>> Hello,
>>
>> I see at the end of cell_opt_utils.F (V 5.1) the code copied below
>> suggesting that different constraints for the box deformation can be
>> defined.
>> It is a CASE statement using my_constraint_id as argument.
>>
>> How and where can this variable be defined? I do not see how to control
>> this from the input.
>> Should I (hard) define constraint_id and recompile?
>>
>> Thanks,
>>
>> Marcelo.
>>
>> SELECT CASE (my_constraint_id)
>>
>> CASE (fix_x)
>>
>> gradient(1:2) = 0.0_dp
>>
>> gradient(4) = 0.0_dp
>>
>> CASE (fix_y)
>>
>> gradient(2:3) = 0.0_dp
>>
>> gradient(5) = 0.0_dp
>>
>> CASE (fix_z)
>>
>> gradient(4:6) = 0.0_dp
>>
>> CASE (fix_xy)
>>
>> gradient(1:5) = 0.0_dp
>>
>> CASE (fix_xz)
>>
>> gradient(1:2) = 0.0_dp
>>
>> gradient(4:6) = 0.0_dp
>>
>> CASE (fix_yz)
>>
>> gradient(2:6) = 0.0_dp
>>
>> CASE (fix_none)
>>
>> ! Nothing to do
>>
>> END SELECT
>>
>>
>>
>> On Sunday, January 26, 2014 at 1:49:33 PM UTC+3, Florian Schiffmann wrote:
>>>
>>> Hi,
>>>
>>> what Marcella says is correct in an ideal world. In reality there are
>>> numerics,... if it happens that your cell changes or you want to be on the
>>> save side, you might want to set the cell gradient in the nonperiodic
>>> direction to a perfect 0.
>>> This can be done in the cell_opt_utils.F at the end of the subroutine
>>> get_dg_dh.
>>> simply set gradient(n)=0.0_dp (n=1 for x, n=3 for y, n=6 for z as np
>>> direction).
>>> Recompile and your cell is fixed in that direction.
>>>
>>> Flo
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cp2k.org/archives/cp2k-user/attachments/20180625/c7065e32/attachment.htm>
More information about the CP2K-user
mailing list