vmd教程 forces-tutorial
1TCLFORCES9
1.3Example2:Rotation
Wewillnowaddalayerofcomplexity:wewillforceatomsdi erentlybasedontheircoordinates.Inthisexample,wewillforceatomsinsuchawaythat,inadditiontoalinearforce,theproteinalsorotatesaboutanaxisparalleltothez-axisandthroughtheprotein’scenterofmass.
1Changetothedirectoryforces-tutorial-files/tclForcesFiles/rot-a.2LookattheNAMDcon guration le.Openthe lerot-a.namd.Attheend,weseethefollowing:
tclforces
setlinaccel
setangaccel
tclforcesscripton"3000"1rot-a.tcl
Thisisverysimilartothepreviousexample,buthereweprovideanadditionalscalartodescribetheangularacceleration.
3Nowlet’slookatthescriptitself.Openthe lerot-a.tcl.Theatomselectionpartatthebeginningisidenticaltothelastcase,sowewillnotrepeatthediscussion.Thenextpartofthe leisagainsimilar,butalsoprocessestheangularacceleration.
setlinaccel[vecscale[expr1.0/418.68]$linaccel]
setangaccel[expr$angaccel/418.68]
print"Linearacceleration:($linaccel)Ang*ps^-2"
print"Angularacceleration:(00$angaccel)Rad*ps^-2"
WeconverttoNAMDunits,justlikebefore.Thenweprintsomeinfor-mationaltextusingtheprintcommand.
4Nowwe’lllookatthecalcforcescommand.The rstpartisnearlythesameasinthepreviousexample.Thedi erencesarethechangeofoneoftheglobalvariables,andthefactthatwenolongerapplyforcesinthe rstloop.
proccalcforces{}{
globalatomsnumatomslinaccelangaccelnamd
loadcoordscoords
loadmassesmasses