source: INCL.H@ 0f06b4a

Last change on this file since 0f06b4a was 0f06b4a, checked in by baerbaer <baerbaer@…>, 14 years ago

Declared some more variable in INCL.H.

git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/smmp/trunk@20 26dc1dd8-5c4e-0410-9ffe-d298b4865968

  • Property mode set to 100644
File size: 17.2 KB
Line 
1 implicit integer*4 (i-n)
2 implicit real*8 (a-h,o-z)
3 character*255 version
4
5 integer MAX_REPLICA, MAX_PROC, mxml, mxrs, mxat, mxbd, mxath
6 integer mxvr, mxms, mxvw, mx14, mxvrh, mxtyat, mxhbdo
7 integer mxhbac, mxtybl, mxtyba, mxtyto, mxrt, mxvrrt, mxrtsu
8 integer nrsty
9 double precision pi, pi2, pi4, crd, cdr, zero, one
10 integer izero, ione
11
12 parameter(MAX_PROC=2048)
13 parameter (MAX_REPLICA = 2048) ! max. number of replicas
14 parameter (mxml=10) ! max. number of molecules
15 parameter(mxrs=100) ! max. total number of residues
16 parameter(mxat=2600) ! max. total number of atoms
17 parameter(mxbd=3) ! max. number of bonds to following atoms
18 parameter(mxath=100) ! max. number of atoms in help-arrays
19 parameter(mxvr=mxrs*8) ! max. number of local variables
20 parameter(mxms=mxvr*3) ! max. total number of moving sets
21 parameter(mxvw=mxat*4) ! max. number of vwd domains
22 parameter(mx14=mxat*4) ! max. number of '1-4' partners
23 parameter(mxvrh=mxath) ! max. number of variables in help
24 parameter(mxtyat=18) ! max. # of energetic atom-types
25 parameter(mxhbdo=4) ! max. types of Hydrogens as donors in HB
26
27 parameter (mxhbac=6) ! max. types of atoms as acceptors in HB
28 parameter(mxtybl=0) ! max. # of types of bond length potentials
29 parameter(mxtyba=0) ! - " - b. angle pot.
30 parameter(mxtyto=19) ! - " - torsional pot.
31 parameter(mxrt=500) ! max. # of restraint types
32 parameter(mxvrrt=mxrt*2) ! max. # of restraint variables
33 parameter(mxrtsu=mxvr*6) ! max. # of pointers subsets -> restraints
34 parameter(nrsty=35) ! max. # of residue types
35
36 parameter (pi=3.141592653589793d0)
37 parameter(pi2=2.d0*pi)
38 parameter(pi4=4.d0*pi)
39 parameter(crd=57.2957795130823d0)
40 parameter(cdr=1.745329251994330d-2)
41
42 parameter (izero=0)
43 parameter(ione=1)
44 parameter(zero=0.d0)
45 parameter(one=1.d0)
46 parameter (version= &
47 & '$Id: INCL.H 335 2007-08-09 09:32:21Z meinke $')
48
49 integer seed
50 integer enysolct
51 common /counter/enysolct
52 common /commonrandom/ seed
53 common /bounds/ boxsize
54
55 integer myrank, no, my_mpi_comm
56 integer workPerProcessor(0:mxml, 0:MAX_PROC)
57 common/paral/myrank,no,my_mpi_comm,workPerProcessor
58 common /bet/beta
59!== For solvent============================
60 integer mxpoint, mxbox, mxinbox, mxtysol
61 parameter (mxpoint=2000) !
62 parameter(mxbox=80000) !
63 parameter(mxinbox=80000) !
64 parameter(mxtysol=9) !Max number of solvent types
65 parameter (rwater=1.4) !The Wdv radius of the water molecule
66
67!== Solvent types
68 logical isolscl
69 common /isolty/ itysol, isolscl
70 common /tes/ spoint(mxpoint,3)
71 common /pnt/ npnt
72 common /sol/ coef_sl(mxtysol,mxtyat),rad_vdw(mxtysol,mxtyat)
73 common/ressurf/surfres(mxrs)
74 dimension rsstrg(mxrs)
75 common /abgncor/rsstrg
76
77!---- The vdW radii of the atoms and solvation coefficients
78 common /solvent/ rvdw(mxat),sigma(mxat)
79
80! vdvol - van der Waals volume of the molecule
81! asa - Surface of molecule
82 common /v_sol/ vdvol,asa,asap,asah
83
84! gradan - analytical gradients of solv. energy against atomic coordinates
85 common /deriv/ gradan(mxat,3)
86
87
88!-----For calculation of hydrogen bonds
89 parameter(mxtyhb=100) ! Maximum number of hydrogen bond types
90 common /h_bond/ ntyhb,ixtyhb(mxtyhb),nutyhb(mxtyhb), &
91 & mmhb(mxml, mxml)
92!-----For molecule parameter
93 common/mol_par/ nvr
94
95!-----Hydrophobic/polar radius of gyration
96 common /rgy/ rgyh, rgyp
97!=======================================
98
99 character nmrt(mxrt)*4,nmvrrt(mxvrrt)*3
100 character rsnmcd(nrsty)*4,onltcd(nrsty)
101 character nmath(mxath)*4,nmvrh(mxvrh)*3
102 logical flex, tesgrd,epsd,sh2
103! -----Switches for Bias Gaussian Steps and random order in variable updates
104! upchswitch=0 => No BGS
105! upchswitch=1 => For backbone updates, use BGS with probability bgsprob
106! upchswitch=2 => More sophisticated, temperature dependent choice between
107! simple pivot update and BGS
108 logical rndord
109 integer upchswitch
110 double precision bgsprob
111 common /updchois/rndord,upchswitch,bgsprob
112 common /con_i/ idloa,idloz,idupa,idupz
113!---- The contact matrix and the indices of C_alpha atoms
114 common/cont_i_j/ ijcont(mxrs,mxrs),ind_alf(mxrs)
115 common /jref/ iref(mxrs,mxrs),nci
116
117!-----For calculation of Zimmermann code of conformation:
118 character zimm*(mxrs)
119 common/zimme/zimm
120
121! lunlib - LUN of residue library
122! lunseq - LUN of sequence file
123! lunchg - LUN of charges for terminal residues (=0 if not necessary)
124! lunvar - LUN of file with commands to set variables
125! lunrst - LUN for variable restraints
126! reslib - name of residue library
127! seqfil - name of sequence file
128! chgfil - name of file with charges for terminal residues
129! varfil - name of file with commands to set variables
130! rstfil - name of file with variable restraints
131
132 common /fil_i/ lunlib,lunseq,lunchg,lunvar,lunrst
133 character reslib*80,seqfil*80,chgfil*80,varfil*80,rstfil*80
134 common /fil_c/ reslib,seqfil,chgfil,varfil,rstfil
135
136! ntlml - total number of molecules
137! irsml1,irsml2 - indices of 1st/last residue of each molecule
138! ivrml1,nvrml - index of 1st/number of loc. variables in molecule
139! imsml1,nmsml - index of 1st/number of moving sets in molecule
140! iadml1,nadml - index of 1st/number of 'added varaibles' in molecule
141! nmml - name of molecule
142
143! -------------------------------------------------------------- new
144! ixrfpt - indices of 3 reference points (first 3 backbone atoms)
145! per molecule
146! ixatp - pointer of each SMMP atom to corresponding atom in a ref.
147! structure, (=0 if no corr. atom in ref. str.)
148! isrfvr() = true, if i-th variable is defined in ref. structure
149! rfpt - coordinates of a reference point (first bb atom) in molecule
150! xrfax,yrfax,zrfax - direction cosines of 3 ref. axes (axes J,K,L
151! according to global angles alpha,beta,gamma)
152! gbpr - 6 global parameters per molecule (3 shifts, 3 angles)
153! --------------------------------------------------------------------
154
155 common /mol_i/ ntlml,irsml1(mxml),irsml2(mxml),ivrml1(mxml), &
156 &nvrml(mxml),imsml1(mxml),nmsml(mxml),iadml1(mxml),nadml(mxml) &
157 &,ixrfpt(3,mxml) &
158 &,ixatp(mxat) &
159 &,ireg
160! -------------------
161
162 logical isrfvr(mxvr)
163 common /refstr/ isrfvr
164
165 character nmml(mxml)*80
166 common /mol_c/ nmml
167
168! ----------------------------------------- new
169 common /mol_r/ rfpt(3,mxml),gbpr(6,mxml), &
170 &xrfax(3,mxml),yrfax(3,mxml),zrfax(3,mxml)
171! ---------------------------------------------
172
173! iatrs1,iatrs2 - indices of 1st (backbone)/last atom of residue
174! ixatrs - index of last backbone atom (may be bound to next res.)
175! ivrrs1,nvrrs - index of 1st/number of local variable for residue
176! seq - names of residues
177
178 common /res_i/ iatrs1(mxrs),iatrs2(mxrs),ixatrs(mxrs),ivrrs1(mxrs)&
179 & ,nvrrs(mxrs)
180 character seq(mxrs)*4
181 common /res_c/ seq
182
183! ityat - atom class
184! iowat - index of preceeding atom (=0 if none)
185! iyowat - type of bond with prec. atom (=1:single bond,=-1:not single)
186! nbdat - number of bonds with following atoms
187! ibdat - indices of following covalently bonded atoms
188! iybdat - types of covalently bonds to following atoms (see 'iyowat')
189! ixmsat - index of the moving set for each atom
190! cgat - point charge at atom
191! xbaat - |
192! ybaat - | axis to alter valence-angle for i-th atom
193! zbaat - | (placed at 'iowat(i)')
194! baat - valence angle 'iowat(iowat(i)), iowat(i), i' [rad.]
195! snbaat - Sin(baat)
196! csbaat - Cos(baat)
197! xtoat - |
198! ytoat - | axis between 'iowat(i)' and i-th atom
199! ztoat - |
200! toat - dihedral 'iowat(iowat(iowat(i))), iowat(iowat(i)),
201! iowat(i), i' [rad.]
202! sntoat - Sin(toat)
203! cstoat - Cos(toat)
204! blat - valence-length 'iowat(i)-i'
205! xat - |
206! yat - | cartesian coordinates of atom
207! zat - |
208! nmat - atom name
209
210 common /atm_i/ ityat(mxat),iowat(mxat),iyowat(mxat),nbdat(mxat), &
211 & ibdat(mxbd,mxat),iybdat(mxbd,mxat),ixmsat(mxat)
212 common /atm_r/ cgat(mxat), &
213 &xbaat(mxat),ybaat(mxat),zbaat(mxat),baat(mxat),snbaat(mxat), &
214 &csbaat(mxat), &
215 &xtoat(mxat),ytoat(mxat),ztoat(mxat),toat(mxat),sntoat(mxat), &
216 &cstoat(mxat), &
217 &blat(mxat), &
218 &xat(-1:mxat),yat(-1:mxat),zat(-1:mxat)
219 character nmat(mxat)*4
220 common /atm_c/ nmat
221
222! olvlvr - stores initial values for internal variables
223! nmvr - name of variable
224! iatvr - index of primary moving atom for loc. variable
225! ityvr - type of variable ( 1 = valence length,
226! 2 = valence angle,
227! 3 = dihedral angle)
228! iclvr - indicates class for corresponding variable potential
229! iorvr - indicates appropriate order of variables
230! imsvr - index of 1st moving set per variable as stored in
231! 'latms1,latms2'
232! imsvr1,imsvr2 - indices of 1st & last moving set per variable
233! 'latms1,latms2'
234! latms1,latms2 - lists of indices for 1st and last atom of each moving set
235! iadvr1,iadvr2 - indices of 1st & last related variable per var. in 'ladvr'
236! ladvr - list of variable indices which are related to other variables
237! fxvr - .true. if variable will be fixed throughout calculations
238
239 common /var_r/ olvlvr(mxvr),vlvr(mxvr),axvr(mxvr)
240 common /var_i/ iatvr(mxvr),ityvr(mxvr),iclvr(mxvr),iorvr(mxvr), &
241 & imsvr1(mxvr),imsvr2(mxvr),latms1(mxms),latms2(mxms)&
242 & ,iadvr1(mxvr),iadvr2(mxvr),ladvr(mxvr),idvr(mxvr)
243 character nmvr(mxvr)*3
244 common /var_c/ nmvr
245 logical fxvr(mxvr)
246 common /var_l/ fxvr
247
248! Energy parametrization for SCHERAGA set
249!
250! ehm - 1.5*(elem. charge)/(Planck\'s const./2Pi * electr. mass)
251! atpl - atomic polarizabilities
252! efel - empirical numbers of effective electrons per atom
253! emin - minima of pairwise Lennard-Jones terms of like atoms
254! rmin - corresponding pair-distance of energy minima
255! chb_s,ahb_s - parameter of attraction/repulsion terms of HB-potential
256! e0to_s,sgto_s,rnto_s - barrier[kcal/mole],sign,multiplicity of tors.potential
257! eps_s - distance-INdependent diel. constant
258! do_s,ac_s - flag to define atom-types serving as donors/acceptors in HB
259
260 common /sche_r/ ehm,atpl(mxtyat),efel(mxtyat),emin(mxtyat), &
261 & rmin(mxtyat),chb_s(mxhbdo,mxhbac),ahb_s(mxhbdo,mxhbac), &
262 & e0to_s(mxtyto),sgto_s(mxtyto),rnto_s(mxtyto), &
263 & eps_s
264 logical do_s(mxtyat),ac_s(mxtyat)
265 common /sche_l/ do_s,ac_s
266
267! Energy parametrization for FLEX set
268!
269! c_f,a_f - parameter of attraction/repulsion terms of LJ-potential
270! chb_f,ahb_f - parameter of attraction/repulsion terms of HB-potential
271! e0to_s,sgto_s,rnto_s - barrier[kcal/mole],sign,multiplicity of tors.potential
272! plt_f,slp_f - parameters for sigmoidal distance-dependent epsilon
273! cohb_f - cut-off distance between H- & acceptor atom in Hydrogen-Bonds
274! do_f,ac_f - flags atom-types serving as donors/acceptors in HB
275
276 common /flex_r/ c_f(mxtyat,mxtyat),a_f(mxtyat,mxtyat), &
277 & chb_f(mxhbdo,mxhbac),ahb_f(mxhbdo,mxhbac), &
278 & e0to_f(mxtyto),sgto_f(mxtyto),rnto_f(mxtyto), &
279 & plt_f,slp_f,cohb_f
280 logical do_f(mxtyat),ac_f(mxtyat)
281 common /flex_l/ do_f,ac_f
282
283! Currently chosen energy parametrization
284!
285! ihbty = 1, i - HB donor hydrogen & j - HB acceptor
286! = -1, i - HB acceptor & j - HB donor hydrogen
287! = 0, otherwise
288! cij,aij - parameters of attraction/repulsion terms of LJ-potential
289! a14 - special value for repulsion in "1-4"-interactions
290! chb,ahb - parameters of attraction/repulsion terms of HB-potential
291! e0to,sgto,rnto - barrier*0.5 !!,sign,multiplicity of torsional potential
292! esnto = e0/2 * sign * multipl.
293! conv - parameter to convert electrostat. energy into [kcal/mole]
294! plt,slp,cohb - see FLEX
295! flex - .true. if FLEX-parametrization is to be used (obsolete)
296! ientyp : 0 => ECEPP, 1 => FLEX, 2 => Lund, 3 => ECEPP+Abagyan
297! tesgrd - .true. if GRADTEST to be included
298
299 common /epar_i/ ihbty(mxtyat,mxtyat)
300 common /epar_r/ cij(mxtyat,mxtyat),aij(mxtyat,mxtyat), &
301 & a14(mxtyat,mxtyat),chb(mxtyat,mxtyat),ahb(mxtyat,mxtyat), &
302 & e0to(mxtyto),sgto(mxtyto),rnto(mxtyto),esnto(mxtyto), &
303 & conv, plt,slp, cohb
304
305 common /epar_l/ flex, tesgrd,sh2,epsd,ientyp
306
307! ENERGY & -MINIMIZATION
308
309! nvwml,ivwml1 - number/index of 1st vdW-domain per molecule
310! ivwat1,ivwat2 - index of 1st/last vdW-domain per atom
311! lvwat1,lvwat2 - lists of indices of 1st and last atom in each vdw domain
312! n14ml,i14ml1 - number/index of 1st '1-4' interaction partner per molecule
313! i14at1,i14at2 - index of 1st/last '1-4' interact. partner per atom
314! ixatvw - index of respective atom for each vdW-domain
315! ixatvw - index of respective atom for each '14'-interaction partner
316
317! ---------------------------------------------------------------------------- new
318! eyel,eyvw,eyhb,eyvr,eysm,eysl,eyrg - Coulomb,vdW,HB,variable-potential & total
319! eyslh, eyslp - hydrophilic (h)/phobic (p) conributions to the solvent energy
320! potential energy, solvation, regularization energy
321! gdeyvr - partial derivative of total energy vs. variable (Gradient)
322! gdeyrg - partial derivative of regularization energy vs. variable (Gradient)
323! gdeysl - partial derivative of solvatation energy vs. variable (Gradient)
324! wtey - weight to energy & energy gradient
325! wtrg - weight to reg. target & its gradient
326 common /eny_i/ nvwml(mxml),ivwml1(mxml),n14ml(mxml),i14ml1(mxml), &
327 & ivwat1(mxat),ivwat2(mxat),i14at1(mxat),i14at2(mxat)&
328 & ,lvwat1(mxvw),lvwat2(mxvw),l14at(mx14) &
329 & ,ixatvw(mxvw),ixat14(mx14)
330 common /eny_r/ eyel,eyvw,eyhb,eyvr,eysm,eysl,eyrg,eyslh,eyslp,eyab&
331 & ,eysmi,eyhbi,eyeli,eyvwi &
332 & ,gdeyvr(mxvr),gdeyrg(mxvr),gdeysl(mxvr) &
333 & ,gdeygb(6*mxml),wtey,wtrg
334
335! ntlrt - total # of restraint types
336! ntlsu - total # of variable subsets
337! nmrt - name of r.t
338! pbrt - probability for r.t
339! i1vrrt,i2vrrt - 1st,last restraint variable for a r.t
340! nmvrrt - name of restraint variable
341! vuvrrt - average value for r.v
342! dvvrrt - standard deviation for r.v
343! i1rtsu - point to 1st restraint type for a variable subset
344! nprtsu - # of restraint types for each subset
345! iprtsu - pointers from subsets --> restr. types
346! i1vrsu,i2vrsu - 1st,last pointer in 'ipvrsu' per var. subset
347! ipvrsu - pointers var. subset -> variables
348
349 common /rstr_i/ ntlrt,ntlsu,i1vrrt(mxrt),i2vrrt(mxrt), &
350 & iprtsu(mxrtsu),i1rtsu(mxvr),nrtsu(mxvr), &
351 & i1vrsu(mxvr),i2vrsu(mxvr),ipvrsu(mxvr)
352
353 common /rstr_c/ nmrt,nmvrrt
354 common /rstr_r/ pbrt(mxrt),vuvrrt(mxvrrt),dvvrrt(mxvrrt)
355
356! rsnmcd - 4-letter codes for NRSTY residue types
357! onltcd - respective 1-letter codes for residue types
358
359 common /rsnm_c/ rsnmcd,onltcd
360
361! arrays for help
362
363 common /help_i/ ityath(mxath),iowath(mxath),iyowath(mxath), &
364 & nbdath(mxath),ibdath(mxbd,mxath), &
365 & iybdath(mxbd,mxath), &
366 & ityvrh(mxvrh),iclvrh(mxvrh),iatvrh(mxvrh)
367 common /help_r/ blath(mxath),baath(mxath),toath(mxath), &
368 & cgath(mxath)
369 common /help_c/ nmath,nmvrh
370
Note: See TracBrowser for help on using the repository browser.