The monomer file is where the connectivity of the particles in a monomer is listed and where the rules for joining monomers are defined. It is an input to the "con" program in order to generate the connectivity file for the complete molecule. The structure of the file is as follows: The top of the file must be (or a comment line that have ~ ) MONO LIST after the title the different monomers are listed. Each monomer starts with the line MONO=(NAME) #prt=5 chrg=0. where NAME is the name of the monomer type that can be at most four characters (all character assignments must be closed in brackets. This include of course also the monomer name). #prt is the number of particles in the monomer. This includes also virtual particles used to link the monomer to next or previous monomers.. chrg is the charge of the total monomer INCLUDING the virtual particles. The virtual particles are included since their type is the one that will be finally used (see below). The total charge is used only for test purposes. After that line ca list of unique names of particles (to that monomer) and their types is provided: ~ unique particle to monomer particle type connectivity action UNIQ=(UNAM) PRTC=(PTYP) HERE UNIQ=(B) PRTC=(BTYP) UNIQ=(C) PRTC=(CTYP) NEXT where the UNIQ command assigns a unique particle name (unique to that monomer). The name can be at most four characters. The name must appear only once for a given type of connectivity action (see below), otherwise bond assignments will be ambiguous. The PRTC defined the particle type and it is matched against the PNAM data from the property file. Failure to match particle types results in program termination. The connectivity action provides the necessary data to join monomers. The following keywords are available for the connectivity action (note that only four characters from a keyword are actually used): HERE (or blank) - This is a normal particle of the present monomer NEXT - This particle belongs to the next monomer, when the Molecule will be Formed (MF), do the following: Change the Type of the Particle (CTP) in the next monomer to the one defined in the present monomer, Transfer all Bonds (TB) in the present monomer to the one that it is connected to. PREVIOUS - The particle belongs to the previous monomer, when MF do CTP and TB DNXT - At MF delete particle and all its bond in next monomer. DPRV - At MF delete particle and all its bond in previous monome. The unique particle list ends (as usual) by DONE after the particle list, a bond list is provided. A Bond is given by two unique particle names and a dash in between (e.g. A-B is a bond between A and B). Note that special particles for which the connectivity action is different from HERE are denoted by *. Example following the definition of particles above is. BOND B-C* UNAM-C* B-UNAM DONE Special particles must come second in bond and a monomer cannot be used to define a bond between two special particles, one of the particles must be HERE. Note that the * is really needed to avoid ambiguity. Since it is possible to have (for example), particle A as HERE and also particle A as PREV. This also means that there are some restrictions on the connectivity. Currently it is not possible to make a reference from a given monomer to the same particle name at PREVious and NEXT monomers. It is hard to imaging however a case in which it is truly needed. Note also that cases in which a NEXT particle is defined but not found are possible, a warning will be issued but it is not fatal. In fact it can be quite convenient to define peptide link as the carbonyl carbon attached to the NEXT nitrogen. This however fails at the C terminus. The program is set in this way. The virtual nitrogen at the C terminus is deleted which bring everything back to normal, a warning on that nitrogen is however issued, that warning should be ignored. The angles, torsions improper torsions are generated once the complete molecule is formed and they are generated in a complete way. I.e. all possible angles, torsions and improper torsions are formed. Some torsions are then eliminated (with zero energy contribution). One consequence is that the possible bonds angles and improper torsions MUST be defined in the property file. If torsion is not found a yellow alert is issued (non-fatal warning) and that torsion is ignored. The file ends in the traditional way, i.e. *EOD Finally we give a complete example to define alanine MONO=(ALA) #prt=7 chrg=-0.57 UNIQ=(N) PRTC=(NH) UNIQ=(H) PRTC=(HN) UNIQ=(CA) PRTC=(CAH) UNIQ=(CB) PRTC=(CH3) UNIQ=(C) PRTC=(CO) UNIQ=(O) PRTC=(OC) UNIQ=(N) PRTC=(NH) NEXT DONE BOND C-O C-N* C-CA CA-CB CA-N N-H DONE An example for a monomer file can be found moil.mop/ALL.MONO