From: Vermaas, Josh (
Date: Mon Aug 09 2021 - 08:00:36 CDT

In my experience, getting the initial windows exactly right isn't a big
deal. Normally, I make the simplifying assumption that my SMD tracks the
reaction coordinate fairly well (which I can check! Always check this!),
and then I can do something like the following:

mol new system.psf
mol addfile smd.dcd waitfor -1
set minz -20 ; #Depends on your actual range!
set maxz 20 ; #Depends on your actual range!
set numreplicas [expr {$maxz - $minz + 1}]; #This assumes 1 Angstrom
set asel [atomselect top "all"]
for { set i 0 } { $i < $numreplicas } { incr i } {
    set frame [expr { int($i * [molinfo top get numframes] / $numreplicas)}]
    $asel frame $frame
    $asel writenamdbin replica-$i.coor
    pbc writexst replica-$i.xsc -first $frame -last $frame

On 8/9/21 12:31 AM, Ropon-Palacios G. wrote:
> Dear users,
> made an SMD to generate different windows on the Z + axis, how can I write the files to be able to carry out the simulations of independent windows every 1 Angstrom?
> My biggest problem is how to select for example every 1 angstrom, I have calculated the displacement in Z as (Zi-Z0) throughout the pulling, but I don't know how to make a for that writes every 1 angstrom (xsc and coord ) files

Josh Vermaas
Assistant Professor, MSU-DOE Plant Research Lab and Department of Biochemisty and Molecular Biology;!!DZ3fjg!tIpsiMlPa6RX0FK1I4GKMCqjifrvwbrjdWjoCx2jnlqsqoM_UhFHfFfvNo4Id-H9oA$