Sequence of files: (1) generate "psf_bld_monomer.inp". This is essentially the generate.inp from the manual. Instead of the .pdb file used in the input files one can also specify the sequence. (2) run "symmetrynoe_x.inp". This creates the symmetry noes for a subset of distances. symmetrynoe_2.inp is for a symmetric dimer symmetrynoe_3.inp is for a symmetric trimer symmetrynoe_4a.inp is for a symmetric tetramer (3 C_2 axes) symmetrynoe_4b.inp is for a symmetric tetramer (1 C_4 axis) (3) run "inistruct.inp", to generate a set of random starting structures (if desired). This sometimes crashes, for reasons unclear to me. Just rerun, with new random number seed, until enough starting structures have been obtained. An (new) alternative is to run the "generate_template.inp" from the X-PLOR manual, and then randomise this by using "randomchain.inp". This avoids using IC build altogether. "randomchain.inp" can be run from "refine.inp", so one does not have to store the random starting structures. (4) now one can run "refine.inp". Don't forget to modify the input for a trimer. NMONO has to be set to 3, and the ncs restraint has to be modified. (5) run "rerefine.inp" Bug report: =========== There is an error in the way the NOE routine handles the MONOMER statement, which may cause the minimizer to abort. The energy is calculated correctly, but the gradient is scaled by the number of monomers specified. Energy constants reported in my paper in Proteins are not affected since I scaled distances explicitely (as in work-around 2 below). Work around: ============ set NMONO to 1 and either (1) Specify each restraint twice (for a dimer) i.e. assi (name x and segid a) (name y) r d- d+ assi (name x and segid b) (name y) r d- d+ or (2) specify each restraint once and scale all distances explicitely by NMONO^(-1/6) i.e. assi (name x) (name y) NMONO^(-1/6)*r NMONO^(-1/6)*d- NMONO^(-1/6)*d+ Bug fix: ======== change the following lines in routine ENOE2 C for NOESUM we do not average (divide by L) C if we have a multimeric protein, we have to divide by the C number of molecules to get the scaling right. IF (NOEAVE(NOECND(N)).EQ.NOESUM) THEN L=1 RN=RN/NMONO(NOECND(N)) END IF to C for NOESUM we do not average (divide by L) C if we have a multimeric protein, we have to divide by the C number of molecules to get the scaling right. IF (NOEAVE(NOECND(N)).EQ.NOESUM) THEN L=NMONO(NOECND(N)) END IF