CNSインプットファイルの文法  

CNSのインプットファイルは普段使う分には慣れればそんなに難しいことはないと思いますが、気がついたことを少しまとめておきます。

Atom Selection  

原子(または残基)の選択をする時の文法です。ここで示した例以外の複雑な例はCNSのチュートリアルに詳しく書いてあるのでそちらを参考にしてください。

対象
すべての原子(all)
何も選択しない(none)
座標が既知の原子のみ(known)
座標が既知ではない原子(not(known))
水素原子(selects all atoms with a mass of 1 AMU)(hydrogen)
SEGIDによる選択(segid A)
SEGIDでの範囲指定(ここではAからD)(segid A:D)
残基番号による選択(residue 10)
指定した範囲の残基番号(例では10から50)(residue 10:50)
残基名による選択(resname MET)
原子名による選択(name CA)
原子種(Chemical type)による選択(例ではZN)(chemical ZN)
ATOM IDによる選択*1(id 100)
指定残基番号内の指定原子(byresidue(residue 10 and name CA))
指定した原子に結合している原子(bondedto(residue 10 and name CA))
残基ごとに一つのユニークな原子*2(tag and (residue 10:50))
指定した原子から特定の距離内にある原子((residue 10 and name CA) around 5.0)
指定した原子から特定の距離内にある原子(結晶学的対称原子も含む)((residue 10 and name CA) saround 5.0)

使用できる論理演算子はand,or,notで、結合順位を明確にするためにはそれぞれをカッコで囲みます(チュートリアルには結合順位に関する記述は見あたりませんでした)。

{* select atoms to be treated as rigid groups during torsion angle dynamics *}
{===>} atom_rigid=(resname GLC);

こんな感じで使います。選択はカッコ内に入れるようです。もっと複雑にするなら、

atom_rigid=(segid C:D and resname GLC)

って感じですね。

*1 should only be used when the id has been returned by a previous show expression or inside a FOR $ID IN ID loop construct
*2 the TAG modifier selects only one atom per residue