# Copyright (c) 2002-08 Peter Guntert. All rights reserved. ## 7MACROS: ssbond - CYANA macro ## ## Parameters: ## ## Creates the standard upper and three lower limit distance restraints ## (Williamson et al., 1985) to enforce disulfide bonds between pairs R1-R2, ## R3-R4 etc. of cystine residues. These residues must be of the type "CYSS". ## For a disulfide bridge between residues i and j, three upper limits and ## three lower limits are generated: ## [6] var info echo i j res res1 res2 syntax * if (nparam.eq.0) return info:=none; echo:=off do i 1 nparam res='$p$i' j=index(res(2:),'-')+1 if (j.lt.2) error "Illegal residue number pair \"$res\"." res1=$res(1:j-1); res2=$res(j+1:) if (rnam(irnum(res1)).ne.'CYSS' .or. rnam(irnum(res2)).ne.'CYSS') \ error "Non-CYSS residue in disulfide bond." distance make "SG $res1" "SG $res2" lol=2.0 upl=2.1 distance make "SG $res1" "CB $res2" lol=3.0 upl=3.1 distance make "CB $res1" "SG $res2" lol=3.0 upl=3.1 end do unset info print " Restraints for $nparam disulphide bridges added."