Applying TclBC script every x steps Error

From: Maria Pikoula (maria.pikoula_at_eng.ox.ac.uk)
Date: Fri May 04 2012 - 16:46:03 CDT

Dear all

I have been using the TclBC scripting function to impose a force in my system in order to implement flow. It is applied to the water oxygens in every time step. I would like for this force to be applied less frequently as it slows down the computation speed considerably. When I try to apply the force every 100 steps I get this error message on the first go:

FATAL ERROR: tclBCScript failed to call nextatom until failure

if I simply apply the force every time step, the simulation is fine.

Thank you for any help, comments.

Maria

----------
Here I copy the configuration file and tcl script:

Configuration file:

coordinates flow_fast_rextra2.coor
numsteps 55000000
set temp 300
set outputname flow_fast_plus110
binaryoutput no
binaryrestart no
firsttimestep 0

velocities flow_fast_rextra2.vel

# Input
paraTypeCharmm off

amber on
parmfile man_WAT.top

# Force-Field Parameters
exclude scaled1-4
1-4scaling 1.0
cutoff 12.
switching off
pairlistdist 13.5

# Integrator Parameters
timestep 2
rigidBonds all
nonbondedFreq 1
fullElectFrequency 2
stepspercycle 10

# Constant Temperature Control Using Berendsen Method (Coupling)

tCouple on
tCoupleTemp $temp
tCoupleFile temp_coupling.pdb
tCoupleCol B

wrapAll off

extendedSystem flow_fast_rextra2.xsc

# PME (for full-system periodic electrostatics)
PME yes
#PMEGridSizeX 100
#PMEGridSizeY 100
#PMEGridSizeZ 100
PMEGridSpacing 1.0

# Constant Pressure Control (variable volume)
useGroupPressure yes
useFlexibleCell no
useConstantArea no

BerendsenPressure on
BerendsenPressureTarget 1.01325 ;# in bar -> 1 atm
BerendsenPressureCompressibility 4.57E-5
BerendsenPressureRelaxationTime 100
BerendsenPressureFreq 10

# Output
outputName $outputname

velDCDfile flow_fast_plus110_vel.dcd

velDCDfreq 200

restartfreq 500 ;# 500steps = every 1ps
dcdfreq 200
xstFreq 250
outputEnergies 100
outputPressure 100

#############################################################
## EXTRA PARAMETERS ##
#############################################################

constraints on
consref constrained_atoms.pdb
conskfile constrained_atoms.pdb
conskcol B

tclBC on

tclBCScript {
  set zLo -9. ;# lower plane where forces are applied
  set zHi 9. ;# top plane where forces are applied
  set dz 3. ;# half-width of the layer
  set TOL 6. ;# drop atoms that far from either layer
  set start 232
  set end 18628
  set force 0.00001
  set pdbSource man_WAT.pdb
  set tclBCScript flow.tcl
  source $tclBCScript
}
tclBCArgs { }

Tcl Script:

set atomList {} ;
for { set i $start } { $i<=$end } { incr i 3 } { lappend atomList $i; }

puts "[llength $atomList] water oxigens atoms found"

proc calcforces {step unique} {
  global atomList force;
  if {$step % 100 == 0} {
  while {[nextatom]} {
        if { [lsearch $atomList [getid]] == -1 } {continue; }
        addforce "[expr {$force}] 0.0 0.0";
  }
}
}

This archive was generated by hypermail 2.1.6 : Mon Dec 31 2012 - 23:21:31 CST