update new files
[unres.git] / source / maxlik / src_MD_T_maxlik-NEWCORR.safe / openunits.F
1       subroutine openunits
2 #ifdef WIN
3       use dfport
4 #endif
5       implicit real*8 (a-h,o-z)
6       include 'DIMENSIONS'    
7       include 'DIMENSIONS.ZSCOPT'
8 #ifdef MPI
9       include 'mpif.h'
10       include 'COMMON.MPI'
11       integer MyRank
12       character*4 liczba
13 #endif
14       include 'COMMON.IOUNITS'
15       integer lenpre,lenpot,ilen
16       external ilen
17
18 #ifdef MPI
19       MyRank=Me
20 #endif
21       call mygetenv('PREFIX',prefix)
22 c      print *,me," prefix",prefix
23       call mygetenv('SCRATCHDIR',scratchdir)
24       call mygetenv('POT',pot)
25       lenpre=ilen(prefix)
26       lenpot=ilen(pot)
27       call mygetenv('POT',pot)
28       entname=prefix(:lenpre)//'_'//pot(:lenpot)//'.entr'
29 C Get the names and open the input files
30       open (1,file=prefix(:ilen(prefix))//'.inp',status='old')
31 c      print *,me," input ",prefix(:ilen(prefix))//'.inp'
32 C Get parameter filenames and open the parameter files.
33       call mygetenv('BONDPAR',bondname)
34 c      open (ibond,file=bondname,status='old')
35       call mygetenv('THETPAR',thetname)
36 c      open (ithep,file=thetname,status='old')
37       call mygetenv('ROTPAR',rotname)
38 c      open (irotam,file=rotname,status='old')
39       call mygetenv('TORPAR',torname)
40 c      open (itorp,file=torname,status='old')
41       call mygetenv('TORDPAR',tordname)
42 c      open (itordp,file=tordname,status='old')
43       call mygetenv('FOURIER',fouriername)
44 c      open (ifourier,file=fouriername,status='old')
45       call mygetenv('ELEPAR',elename)
46 c      open (ielep,file=elename,status='old')
47       call mygetenv('SCCORPAR',sccorname)
48 c      open (isccor,file=sccorname,status='old')
49       call mygetenv('SIDEPAR',sidename)
50 c      open (isidep,file=sidename,status='old')
51       call mygetenv('SIDEP',sidepname)
52       open (isidep1,file=sidepname,status="old")
53       call mygetenv('LIPTRANPAR',liptranname)
54       open (iliptranpar,file=liptranname,status='old',action='read')
55 #ifndef OLDSCP
56 C
57 C 8/9/01 In the newest version SCp interaction constants are read from a file
58 C Use -DOLDSCP to use hard-coded constants instead.
59 C
60       call mygetenv('SCPPAR',scpname)
61 c      open (iscpp,file=scpname,status='old')
62 #endif
63 #ifdef MPL
64       if (MyID.eq.BossID) then
65       MyRank = MyID/fgProcs
66 #endif
67 #ifdef MPI
68 c      print *,'OpenUnits: processor',MyID,' MyRank=',MyRank
69       call numstr(MyRank,liczba)
70       outname=prefix(:lenpre)//'.out_'//pot(:lenpot)//liczba
71       intname=prefix(:lenpre)//'_'//pot(:lenpot)//liczba//'.int'
72       pdbname=prefix(:lenpre)//'_'//pot(:lenpot)//liczba//'.pdb'
73       mol2name=prefix(:lenpre)//'_'//pot(:lenpot)//liczba//'.mol2'
74       statname=prefix(:lenpre)//'_'//pot(:lenpot)//liczba//'.stat'
75 #else
76       outname=prefix(:lenpre)//'.out_'//pot(:lenpot)
77       intname=prefix(:lenpre)//'_'//pot(:lenpot)//'.int'
78       pdbname=prefix(:lenpre)//'_'//pot(:lenpot)//'.pdb'
79       mol2name=prefix(:lenpre)//'_'//pot(:lenpot)//'.mol2'
80       statname=prefix(:lenpre)//'_'//pot(:lenpot)//'.stat'
81 #endif
82 #if defined(AIX) || defined(PGI)
83 c      open(iout,file=outname,status='unknown')
84 c      if(me.eq.Master) then
85 c      open(igeom,file=intname,status='unknown',position='append')
86 c      open(ipdb,file=pdbname,status='unknown')
87 c      open(imol2,file=mol2name,status='unknown')
88 c      open(istat,file=statname,status='unknown',position='append')
89 c      endif
90 #else
91 c      open(iout,file=outname,status='unknown')
92 c      if(me.eq.Master) then
93 c      open(igeom,file=intname,status='unknown',access='append')
94 c      open(ipdb,file=pdbname,status='unknown')
95 c      open(imol2,file=mol2name,status='unknown')
96 c      open(istat,file=statname,status='unknown',access='append')
97 c      endif
98 #endif
99 #ifdef MPL
100       endif ! (MyID.eq.BossID)
101 #endif
102       csa_rbank=prefix(:lenpre)//'.CSA.rbank'
103       csa_seed=prefix(:lenpre)//'.CSA.seed'
104       csa_history=prefix(:lenpre)//'.CSA.history'
105       csa_bank=prefix(:lenpre)//'.CSA.bank'
106       csa_bank1=prefix(:lenpre)//'.CSA.bank1'
107       csa_alpha=prefix(:lenpre)//'.CSA.alpha'
108       csa_alpha1=prefix(:lenpre)//'.CSA.alpha1'
109       csa_bankt=prefix(:lenpre)//'.CSA.bankt'
110       csa_int=prefix(:lenpre)//'.int'
111       csa_bank_reminimized=prefix(:lenpre)//'.CSA.bank_reminimized'
112       csa_native_int=prefix(:lenpre)//'.CSA.native.int'
113       csa_in=prefix(:lenpre)//'.CSA.in'
114 c      write (iout,'(80(1h-))')
115 c      write (iout,'(30x,a)') "FILE ASSIGNMENT"
116 c      write (iout,'(80(1h-))')
117 c      write (iout,*) "Input file                      : ",
118 c     &  prefix(:ilen(prefix))//'.inp'
119 c      write (iout,*) "Output file                     : ",
120 c     &  outname(:ilen(outname))
121 c      write (iout,*)
122 c      write (iout,*) "Sidechain potential file        : ",
123 c     &  sidename(:ilen(sidename))
124 c#ifndef OLDSCP
125 c      write (iout,*) "SCp potential file              : ",
126 c     &  scpname(:ilen(scpname))
127 c#endif  
128 c      write (iout,*) "Electrostatic potential file    : ",
129 c     &  elename(:ilen(elename))
130 c      write (iout,*) "Cumulant coefficient file       : ",
131 c     &  fouriername(:ilen(fouriername))
132 c      write (iout,*) "Torsional parameter file        : ",
133 c     &  torname(:ilen(torname))
134 c      write (iout,*) "Double torsional parameter file : ",
135 c     &  tordname(:ilen(tordname))
136 c      write (iout,*) "Backbone-rotamer parameter file : ",
137 c     &  sccorname(:ilen(sccorname))
138 c      write (iout,*) "Bond & inertia constant file    : ",
139 c     &  bondname(:ilen(bondname))
140 c      write (iout,*) "Bending parameter file          : ",
141 c     &  thetname(:ilen(thetname))
142 c      write (iout,*) "Rotamer parameter file          : ",
143 c     &  rotname(:ilen(rotname))
144 c      write (iout,'(80(1h-))')
145 c      write (iout,*)
146       return
147       end
148