Subject: code for helical wheel plot

From: <[email-masked]>
Date: Tue, 4 Oct 94 10:45:27 EST

Hi friends,
             Some time ago i offered to give the code for a program
 which will generate the coordinates for helix wheel given a sequence
 of alpha helix.
          since i recieved a large no. of requests from the people
 asking for such a program, i have decided to post it to the CCL
 [A[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C.

 Please take this program from here. Since it would require me spend
a lot of time for individual postings, i hope CCL will be convenient
to all of us.
   
  About the program:
         This is a very very simple fortran program. It takes an
 initial arbit point with (r,phi,z) as (10,0,0) and keeps on rotating
  this point by 100 deg. for each amino acid in the seq. It increase
  the radius of circle by 5 every 18 residues to avoid overlapping of
   the points. 
   INPUT : input to this program is in SINGLE letter code of amino
   acids in format (40(1x,a1))
   Outpot : Output lists the amino acid in SINGLE letter code and
   Coordinates associated with it in a format that is analogous to
   PDB format. The format of the output is (13x,a1,16x,3f8.3).
*********start of the code********************************************
c            program helical wheel
c   it generate the coordinates for plotting a helical wheel for
c  given sequence of the helix. Method is from
c  schiffer & Edmundson, Biophyscal J. (1967).
c   maximum length of helix taken is 40 Amino acids
                parameter (i=50)
                character*1 r
               dimension r(i),x(i),y(i),z(i)
               dimension rad(i),phi(i)
               open (unit=1,file='hel.inp')
               open (unit=2,file='hel.out')
  10           format (40(1x,a1))
  11           format (13x,a1,16x,3(f8.3))
               read(1,10) (r(j),j=1,40)
               rad(1)=10.0
               phi(1)=0.0
                z(1)=0.0
                 k=1
               do j=2,40
               if (r(j).ne.' ') then
                  k=k+1
               if (j.le.18) rad(j)=rad(1)
               if ((j.gt.18).and.(j.le.36)) rad(j)=rad(1)+5.0
               if (j.gt.36) rad(j)=rad(1)+10.0 
               phi(j)=phi(j-1)+100.0
               if(phi(j).ge.360.0) phi(j)=phi(j)-360.0
               z(j)=0.0        
                 endif
               enddo
                      pi=acos(-1.0)/180.0
                    do j=1,k
                     phi(j)=pi*phi(j)
                  x(j)=rad(j)*cos(phi(j))
                  y(j)=rad(j)*sin(phi(j))
                    write(2,11) r(j),x(j),y(j),z(j)
                    enddo
                    stop
                     end

[B[B[B[B[B[B[B[B[B[B[B[B[B[B[B[B[B[B[B[B[B[B[B[B
********end of the code ***********************************************

         users can change the code at the will and pass it on to
  whomever they wish. This coordinates from this program can visualized
  in any graphics program .e.g. DTMM (DeskTop Molecular Modellar)
     and pltted. In case any body finds a bug in the program, please
  send a mail to me at 
                 [email-masked]
                            
                         sandeep kumar