1 subroutine store_parm(iparm)
3 C Store parameters of set IPARM
4 C valence angles and the side chains and energy parameters.
8 include 'DIMENSIONS.ZSCOPT'
9 include 'DIMENSIONS.FREE'
10 include 'COMMON.IOUNITS'
11 include 'COMMON.CHAIN'
12 include 'COMMON.INTERACT'
14 include 'COMMON.LOCAL'
15 include 'COMMON.TORSION'
16 include 'COMMON.FFIELD'
17 include 'COMMON.NAMES'
18 include 'COMMON.SBRIDGE'
19 include 'COMMON.SCROT'
20 include 'COMMON.SCCOR'
21 include 'COMMON.ALLPARM'
22 integer i,j,k,l,m,mm,iparm,ichir1,ichir2,iblock,iii
29 ww_all(5,iparm)=wcorr5
30 ww_all(6,iparm)=wcorr6
31 ww_all(7,iparm)=wel_loc
32 ww_all(8,iparm)=wturn3
33 ww_all(9,iparm)=wturn4
34 ww_all(10,iparm)=wturn6
36 ww_all(12,iparm)=wscloc
38 ww_all(14,iparm)=wtor_d
39 ww_all(15,iparm)=wstrain
40 ww_all(16,iparm)=wvdwpp
41 ww_all(17,iparm)=wbond
42 ww_all(19,iparm)=wsccor
43 c Store bond parameters
44 vbldp0_all(iparm)=vbldp0
47 nbondterm_all(i,iparm)=nbondterm(i)
49 vbldsc0_all(j,i,iparm)=vbldsc0(j,i)
50 aksc_all(j,i,iparm)=aksc(j,i)
51 abond0_all(j,i,iparm)=abond0(j,i)
54 c Store bond angle parameters
57 a0thet_all(i,iparm)=a0thet(i)
61 athet_all(j,i,ichir1,ichir2,iparm)=athet(j,i,ichir1,ichir2)
62 bthet_all(j,i,ichir1,ichir2,iparm)=bthet(j,i,ichir1,ichir2)
67 polthet_all(j,i,iparm)=polthet(j,i)
70 gthet_all(j,i,iparm)=gthet(j,i)
72 theta0_all(i,iparm)=theta0(i)
73 sig0_all(i,iparm)=sig0(i)
74 sigc0_all(i,iparm)=sigc0(i)
77 nthetyp_all(iparm)=nthetyp
78 ntheterm_all(iparm)=ntheterm
79 ntheterm2_all(iparm)=ntheterm2
80 ntheterm3_all(iparm)=ntheterm3
81 nsingle_all(iparm)=nsingle
82 ndouble_all(iparm)=ndouble
83 nntheterm_all(iparm)=nntheterm
85 ithetyp_all(i,iparm)=ithetyp(i)
88 do i=-maxthetyp1,maxthetyp1
89 do j=-maxthetyp1,maxthetyp1
90 do k=-maxthetyp1,maxthetyp1
91 aa0thet_all(i,j,k,iblock,iparm)=aa0thet(i,j,k,iblock)
93 aathet_all(l,i,j,k,iblock,iparm)=aathet(l,i,j,k,iblock)
97 bbthet_all(m,l,i,j,k,iblock,iparm)=
98 & bbthet(m,l,i,j,k,iblock)
99 ccthet_all(m,l,i,j,k,iblock,iparm)=
100 & ccthet(m,l,i,j,k,iblock)
101 ddthet_all(m,l,i,j,k,iblock,iparm)=
102 & ddthet(m,l,i,j,k,iblock)
103 eethet_all(m,l,i,j,k,iblock,iparm)=
104 & eethet(m,l,i,j,k,iblock)
110 if (iblock.eq.1) then
111 ffthet_all1(mm,m,l,i,j,k,iparm)=
112 & ffthet(mm,m,l,i,j,k,iblock)
113 ggthet_all1(mm,m,l,i,j,k,iparm)=
114 &ggthet(mm,m,l,i,j,k,iblock)
116 ffthet_all2(mm,m,l,i,j,k,iparm)=
117 & ffthet(mm,m,l,i,j,k,iblock)
118 ggthet_all2(mm,m,l,i,j,k,iparm)=
119 &ggthet(mm,m,l,i,j,k,iblock)
130 c Store the sidechain rotamer parameters
134 nlob_all(iii,iparm)=nlob(iii)
136 bsc_all(j,iii,iparm)=bsc(j,iii)
138 censc_all(k,j,i,iparm)=censc(k,j,i)
142 gaussc_all(l,k,j,i,iparm)=gaussc(l,k,j,i)
150 sc_parmin_all(j,i,iparm)=sc_parmin(j,i)
154 c Store the torsional parameters
156 do i=-ntortyp+1,ntortyp-1
157 do j=-ntortyp+1,ntortyp-1
158 v0_all(i,j,iblock,iparm)=v0(i,j,iblock)
159 nterm_all(i,j,iblock,iparm)=nterm(i,j,iblock)
160 nlor_all(i,j,iblock,iparm)=nlor(i,j,iblock)
161 do k=1,nterm(i,j,iblock)
162 v1_all(k,i,j,iblock,iparm)=v1(k,i,j,iblock)
163 v2_all(k,i,j,iblock,iparm)=v2(k,i,j,iblock)
165 do k=1,nlor(i,j,iblock)
166 vlor1_all(k,i,j,iparm)=vlor1(k,i,j)
167 vlor2_all(k,i,j,iparm)=vlor2(k,i,j)
168 vlor3_all(k,i,j,iparm)=vlor3(k,i,j)
173 c Store the double torsional parameters
175 do i=-ntortyp+1,ntortyp-1
176 do j=-ntortyp+1,ntortyp-1
177 do k=-ntortyp+1,ntortyp-1
178 ntermd1_all(i,j,k,iblock,iparm)=ntermd_1(i,j,k,iblock)
179 ntermd2_all(i,j,k,iblock,iparm)=ntermd_2(i,j,k,iblock)
180 do l=1,ntermd_1(i,j,k,iblock)
181 v1c_all(1,l,i,j,k,iblock,iparm)=v1c(1,l,i,j,k,iblock)
182 v1c_all(2,l,i,j,k,iblock,iparm)=v1c(2,l,i,j,k,iblock)
183 v2c_all(1,l,i,j,k,iblock,iparm)=v2c(1,l,i,j,k,iblock)
184 v2c_all(2,l,i,j,k,iblock,iparm)=v2c(2,l,i,j,k,iblock)
186 do l=1,ntermd_2(i,j,k,iblock)
187 do m=1,ntermd_2(i,j,k,iblock)
188 v2s_all(l,m,i,j,k,iblock,iparm)=v2s(l,m,i,j,k,iblock)
195 c Store parameters of the cumulants
196 do i=-nloctyp,nloctyp
198 b1_all(j,i,iparm)=b1(j,i)
199 b1tilde_all(j,i,iparm)=b1tilde(j,i)
200 b2_all(j,i,iparm)=b2(j,i)
204 cc_all(k,j,i,iparm)=cc(k,j,i)
205 ctilde_all(k,j,i,iparm)=ctilde(k,j,i)
206 dd_all(k,j,i,iparm)=dd(k,j,i)
207 dtilde_all(k,j,i,iparm)=dtilde(k,j,i)
208 ee_all(k,j,i,iparm)=ee(k,j,i)
212 c Store the parameters of electrostatic interactions
215 app_all(j,i,iparm)=app(j,i)
216 bpp_all(j,i,iparm)=bpp(j,i)
217 ael6_all(j,i,iparm)=ael6(j,i)
218 ael3_all(j,i,iparm)=ael3(j,i)
221 c Store sidechain parameters
224 aa_all(j,i,iparm)=aa(j,i)
225 bb_all(j,i,iparm)=bb(j,i)
226 r0_all(j,i,iparm)=r0(j,i)
227 sigma_all(j,i,iparm)=sigma(j,i)
228 chi_all(j,i,iparm)=chi(j,i)
229 augm_all(j,i,iparm)=augm(j,i)
230 eps_all(j,i,iparm)=eps(j,i)
234 chip_all(i,iparm)=chip(i)
235 alp_all(i,iparm)=alp(i)
237 c Store the SCp parameters
240 aad_all(i,j,iparm)=aad(i,j)
241 bad_all(i,j,iparm)=bad(i,j)
244 c Store disulfide-bond parameters
246 ss_depth_all(iparm)=ss_depth
255 c Store SC-backbone correlation parameters
259 nterm_sccor_all(j,i,iparm)=nterm_sccor(j,i)
261 do k=1,nterm_sccor(j,i)
262 v1sccor_all(k,l,j,i,iparm)=v1sccor(k,l,j,i)
263 v2sccor_all(k,l,j,i,iparm)=v2sccor(k,l,j,i)
270 c--------------------------------------------------------------------------
271 subroutine restore_parm(iparm)
273 C Store parameters of set IPARM
274 C valence angles and the side chains and energy parameters.
278 include 'DIMENSIONS.ZSCOPT'
279 include 'DIMENSIONS.FREE'
280 include 'COMMON.IOUNITS'
281 include 'COMMON.CHAIN'
282 include 'COMMON.INTERACT'
284 include 'COMMON.LOCAL'
285 include 'COMMON.TORSION'
286 include 'COMMON.FFIELD'
287 include 'COMMON.NAMES'
288 include 'COMMON.SBRIDGE'
289 include 'COMMON.SCROT'
290 include 'COMMON.SCCOR'
291 include 'COMMON.ALLPARM'
292 integer i,j,k,l,m,mm,iparm,ichir1,ichir2,iblock,iii
297 welec=ww_all(3,iparm)
298 wcorr=ww_all(4,iparm)
299 wcorr5=ww_all(5,iparm)
300 wcorr6=ww_all(6,iparm)
301 wel_loc=ww_all(7,iparm)
302 wturn3=ww_all(8,iparm)
303 wturn4=ww_all(9,iparm)
304 wturn6=ww_all(10,iparm)
305 wang=ww_all(11,iparm)
306 wscloc=ww_all(12,iparm)
307 wtor=ww_all(13,iparm)
308 wtor_d=ww_all(14,iparm)
309 wstrain=ww_all(15,iparm)
310 wvdwpp=ww_all(16,iparm)
311 wbond=ww_all(17,iparm)
312 wsccor=ww_all(19,iparm)
313 c Restore bond parameters
314 vbldp0=vbldp0_all(iparm)
317 nbondterm(i)=nbondterm_all(i,iparm)
319 vbldsc0(j,i)=vbldsc0_all(j,i,iparm)
320 aksc(j,i)=aksc_all(j,i,iparm)
321 abond0(j,i)=abond0_all(j,i,iparm)
324 c Restore bond angle parameters
327 a0thet(i)=a0thet_all(i,iparm)
332 athet(j,i,ichir1,ichir2)=athet_all(j,i,ichir1,ichir2,iparm)
333 bthet(j,i,ichir1,ichir2)=bthet_all(j,i,ichir1,ichir2,iparm)
338 polthet(j,i)=polthet_all(j,i,iparm)
341 gthet(j,i)=gthet_all(j,i,iparm)
343 theta0(i)=theta0_all(i,iparm)
344 sig0(i)=sig0_all(i,iparm)
345 sigc0(i)=sigc0_all(i,iparm)
348 nthetyp=nthetyp_all(iparm)
349 ntheterm=ntheterm_all(iparm)
350 ntheterm2=ntheterm2_all(iparm)
351 ntheterm3=ntheterm3_all(iparm)
352 nsingle=nsingle_all(iparm)
353 ndouble=ndouble_all(iparm)
354 nntheterm=nntheterm_all(iparm)
356 ithetyp(i)=ithetyp_all(i,iparm)
359 do i=-maxthetyp1,maxthetyp1
360 do j=-maxthetyp1,maxthetyp1
361 do k=-maxthetyp1,maxthetyp1
362 aa0thet(i,j,k,iblock)=aa0thet_all(i,j,k,iblock,iparm)
364 aathet(l,i,j,k,iblock)=aathet_all(l,i,j,k,iblock,iparm)
368 bbthet(m,l,i,j,k,iblock)=
369 & bbthet_all(m,l,i,j,k,iblock,iparm)
370 ccthet(m,l,i,j,k,iblock)=
371 & ccthet_all(m,l,i,j,k,iblock,iparm)
372 ddthet(m,l,i,j,k,iblock)=
373 & ddthet_all(m,l,i,j,k,iblock,iparm)
374 eethet(m,l,i,j,k,iblock)=
375 & eethet_all(m,l,i,j,k,iblock,iparm)
381 if (iblock.eq.1) then
382 ffthet(mm,m,l,i,j,k,iblock)=
383 &ffthet_all1(mm,m,l,i,j,k,iparm)
384 ggthet(mm,m,l,i,j,k,iblock)=
385 &ggthet_all1(mm,m,l,i,j,k,iparm)
387 ffthet(mm,m,l,i,j,k,iblock)=
388 &ffthet_all2(mm,m,l,i,j,k,iparm)
389 ggthet(mm,m,l,i,j,k,iblock)=
390 &ggthet_all2(mm,m,l,i,j,k,iparm)
400 c Restore the sidechain rotamer parameters
405 nlob(iii)=nlob_all(iii,iparm)
407 bsc(j,iii)=bsc_all(j,iii,iparm)
409 censc(k,j,i)=censc_all(k,j,i,iparm)
413 gaussc(l,k,j,i)=gaussc_all(l,k,j,i,iparm)
421 sc_parmin(j,i)=sc_parmin_all(j,i,iparm)
425 c Restore the torsional parameters
427 do i=-ntortyp+1,ntortyp-1
428 do j=-ntortyp+1,ntortyp-1
429 v0(i,j,iblock)=v0_all(i,j,iblock,iparm)
430 nterm(i,j,iblock)=nterm_all(i,j,iblock,iparm)
431 nlor(i,j,iblock)=nlor_all(i,j,iblock,iparm)
432 do k=1,nterm(i,j,iblock)
433 v1(k,i,j,iblock)=v1_all(k,i,j,iblock,iparm)
434 v2(k,i,j,iblock)=v2_all(k,i,j,iblock,iparm)
436 do k=1,nlor(i,j,iblock)
437 vlor1(k,i,j)=vlor1_all(k,i,j,iparm)
438 vlor2(k,i,j)=vlor2_all(k,i,j,iparm)
439 vlor3(k,i,j)=vlor3_all(k,i,j,iparm)
444 c Restore the double torsional parameters
446 do i=-ntortyp+1,ntortyp-1
447 do j=-ntortyp+1,ntortyp-1
448 do k=-ntortyp+1,ntortyp-1
449 ntermd_1(i,j,k,iblock)=ntermd1_all(i,j,k,iblock,iparm)
450 ntermd_2(i,j,k,iblock)=ntermd2_all(i,j,k,iblock,iparm)
451 do l=1,ntermd_1(i,j,k,iblock)
452 v1c(1,l,i,j,k,iblock)=v1c_all(1,l,i,j,k,iblock,iparm)
453 v1c(2,l,i,j,k,iblock)=v1c_all(2,l,i,j,k,iblock,iparm)
454 v2c(1,l,i,j,k,iblock)=v2c_all(1,l,i,j,k,iblock,iparm)
455 v2c(2,l,i,j,k,iblock)=v2c_all(2,l,i,j,k,iblock,iparm)
457 do l=1,ntermd_2(i,j,k,iblock)
458 do m=1,ntermd_2(i,j,k,iblock)
459 v2s(l,m,i,j,k,iblock)=v2s_all(l,m,i,j,k,iblock,iparm)
466 c Restore parameters of the cumulants
467 do i=-nloctyp,nloctyp
469 b1(j,i)=b1_all(j,i,iparm)
470 b1tilde(j,i)=b1tilde_all(j,i,iparm)
471 b2(j,i)=b2_all(j,i,iparm)
475 cc(k,j,i)=cc_all(k,j,i,iparm)
476 ctilde(k,j,i)=ctilde_all(k,j,i,iparm)
477 dd(k,j,i)=dd_all(k,j,i,iparm)
478 dtilde(k,j,i)=dtilde_all(k,j,i,iparm)
479 ee(k,j,i)=ee_all(k,j,i,iparm)
483 c Restore the parameters of electrostatic interactions
486 app(j,i)=app_all(j,i,iparm)
487 bpp(j,i)=bpp_all(j,i,iparm)
488 ael6(j,i)=ael6_all(j,i,iparm)
489 ael3(j,i)=ael3_all(j,i,iparm)
492 c Restore sidechain parameters
495 aa(j,i)=aa_all(j,i,iparm)
496 bb(j,i)=bb_all(j,i,iparm)
497 r0(j,i)=r0_all(j,i,iparm)
498 sigma(j,i)=sigma_all(j,i,iparm)
499 chi(j,i)=chi_all(j,i,iparm)
500 augm(j,i)=augm_all(j,i,iparm)
501 eps(j,i)=eps_all(j,i,iparm)
505 chip(i)=chip_all(i,iparm)
506 alp(i)=alp_all(i,iparm)
508 c Restore the SCp parameters
511 aad(i,j)=aad_all(i,j,iparm)
512 bad(i,j)=bad_all(i,j,iparm)
515 c Restore disulfide-bond parameters
517 ss_depth=ss_depth_all(iparm)
526 c Restore SC-backbone correlation parameters
530 nterm_sccor(j,i)=nterm_sccor_all(j,i,iparm)
534 do k=1,nterm_sccor(j,i)
535 v1sccor(k,l,j,i)=v1sccor_all(k,l,j,i,iparm)
536 v2sccor(k,l,j,i)=v2sccor_all(k,l,j,i,iparm)