read2sigma supports separate domain definition in each *sco file
[unres.git] / source / unres / src_MD / COMMON.MD
1       double precision  gcart, gxcart, gradcag,gradxag
2       common /mdgrad/ gcart(3,0:MAXRES), gxcart(3,0:MAXRES),
3      & gradcag(3,MAXRES),gradxag(3,MAXRES)
4        integer dimen,dimen1, dimen3, ifrag(2,50,maxprocs/20), 
5      &                       ipair(2,100,maxprocs/20),iset,
6      &                       mset(maxprocs/20),nset
7        double precision IP,ISC(ntyp+1),mp,
8      & msc(ntyp+1),d_t_work(MAXRES6),
9      & d_t_work_new(MAXRES6),d_t(3,0:MAXRES2),d_t_new(3,0:MAXRES2),
10      & d_af_work(MAXRES6),d_as_work(MAXRES6),
11      & d_t_old(3,0:MAXRES2),d_a_old(3,0:MAXRES2),d_a_short(3,0:MAXRES2),
12      & Gmat(MAXRES2,MAXRES2),Ginv(MAXRES2,MAXRES2),A(MAXRES2,MAXRES2),
13      & d_a(3,0:MAXRES2),d_a_work(6*MAXRES),kinetic_force(MAXRES6),
14      & Gsqrp(MAXRES2,MAXRES2),Gsqrm(MAXRES2,MAXRES2),
15      & vtot(MAXRES2),Gvec(maxres2,maxres2),Geigen(maxres2)
16
17        real*8 odl(max_template,maxdim),sigma_odl(max_template,maxdim),
18      &    dih(max_template,maxres),sigma_dih(max_template,maxres),
19      &    sigma_odlir(max_template,maxdim)
20 c
21 c    Specification of new variables used in  subroutine e_modeller
22 c    modified by FP (Nov.,2014)
23        real*8 xxtpl(max_template,maxres),yytpl(max_template,maxres),
24      &        zztpl(max_template,maxres),thetatpl(max_template,maxres),
25      &        sigma_theta(max_template,maxres),
26      &        sigma_d(max_template,maxres)
27 c
28
29        integer ires_homo(maxdim),
30      & jres_homo(maxdim),idomain(max_template,maxres)
31
32        double precision v_ini,d_time,d_time0,t_bath,tau_bath,
33      & EK,potE,potEcomp(0:n_ene+4),totE,totT,amax,kinetic_T,dvmax,damax,
34      & edriftmax,
35      & eq_time,wfrag(50,maxprocs/20),wpair(100,maxprocs/20),
36      & qfrag(50),qpair(100),
37      & qinfrag(50,maxprocs/20),qinpair(100,maxprocs/20),
38      & Ucdfrag,Ucdpair,dUdconst(3,0:MAXRES),Uconst,
39      & dUdxconst(3,0:MAXRES),dqwol(3,0:MAXRES),dxqwol(3,0:MAXRES),
40      & utheta(maxfrag_back),ugamma(maxfrag_back),uscdiff(maxfrag_back),
41      & dutheta(maxres),dugamma(maxres),duscdiff(3,maxres),
42      & duscdiffx(3,maxres),wfrag_back(3,maxfrag_back,maxprocs/20),
43      & uconst_back
44       integer n_timestep,ntwx,ntwe,lang,count_reset_moment,
45      & count_reset_vel,reset_fricmat,nfrag,npair,nfrag_back,
46      & ifrag_back(3,maxfrag_back,maxprocs/20),ntime_split,ntime_split0,
47      & maxtime_split,lim_odl,lim_dih,link_start_homo,link_end_homo,
48      & idihconstr_start_homo,idihconstr_end_homo
49 c
50 c    FP (30/10/2014)
51 c
52 c     integer ithetaconstr_start_homo,ithetaconstr_end_homo
53 c
54       integer nresn,nyosh,nnos
55       double precision glogs,qmass,vlogs,xlogs
56       logical large,print_compon,tbf,rest,reset_moment,reset_vel,
57      & surfarea,rattle,usampl,mdpdb,RESPA,tnp,tnp1,tnh,xiresp,preminim,
58      & l_homo(max_template,maxdim)
59       integer igmult_start,igmult_end,my_ng_count,ng_start,ng_counts,
60      & nginv_start,nginv_counts,myginv_ng_count
61
62       common /back_constr/ uconst_back,utheta,ugamma,uscdiff,
63      & dutheta,dugamma,duscdiff,duscdiffx,
64      & wfrag_back,nfrag_back,ifrag_back
65        common /homrestr/ odl,dih,sigma_dih,sigma_odl,
66      & lim_odl,lim_dih,ires_homo,jres_homo,link_start_homo,
67      & link_end_homo,idihconstr_start_homo,idihconstr_end_homo,
68      & idomain,l_homo
69 c
70 c    FP (30/10/2014,04/03/2015)
71 c      
72        common /homrestr_double/
73      & xxtpl,yytpl,zztpl,thetatpl,sigma_theta,sigma_d,sigma_odlir
74 c
75       common /qmeas/ qfrag,qpair,qinfrag,qinpair,wfrag,wpair,eq_time,
76      & Ucdfrag,Ucdpair,dUdconst,dUdxconst,dqwol,dxqwol,Uconst,
77      & iset,mset,nset,usampl,ifrag,ipair,npair,nfrag
78       common /mdpar/ v_ini,d_time,d_time0,scal_fric,
79      & t_bath,tau_bath,dvmax,damax,n_timestep,mdpdb,
80      & ntime_split,ntime_split0,maxtime_split,
81      & ntwx,ntwe,large,print_compon,tbf,rest,tnp,tnp1,tnh,preminim
82       common /MDcalc/ totT,totE,potE,potEcomp,EK,amax,edriftmax,
83      & kinetic_T
84       common /lagrange/ d_t,d_t_old,d_t_new,d_t_work,
85      & d_t_work_new,d_a,d_a_old,d_a_work,d_af_work,d_as_work,d_a_short,
86      & kinetic_force,
87      & A,Ginv,Gmat,Gvec,Geigen,Gsqrp,Gsqrm,
88      & vtot,dimen,dimen1,dimen3,lang,
89      & reset_moment,reset_vel,count_reset_moment,count_reset_vel,
90      & rattle,RESPA
91       common /inertia/ IP,ISC,MP,MSC
92       double precision scal_fric,rwat,etawat,gamp,
93      & gamsc(ntyp),stdfp,stdfsc(ntyp),stdforcp(MAXRES),
94      & stdforcsc(MAXRES),pstok,restok(ntyp+1),cPoise,Rb
95       common /langevin/ pstok,restok,gamp,gamsc,
96      & stdfp,stdfsc,stdforcp,stdforcsc,rwat,etawat,cPoise,Rb,surfarea,
97      & reset_fricmat
98       common /mdpmpi/ igmult_start,igmult_end,my_ng_count,
99      & myginv_ng_count,
100      & ng_start(0:MaxProcs-1),ng_counts(0:MaxProcs-1),
101      & nginv_start(0:MaxProcs),nginv_counts(0:MaxProcs-1)
102       double precision pi_np,pistar,s_np,s12_np,Q_np,E_old,H0,E_long,
103      & sold_np,d_t_half,Csplit,hhh
104       common /nosepoincare/ pi_np,pistar,s_np,s12_np,Q_np,E_old,H0,
105      & E_long,sold_np,d_t_half(3,0:MAXRES2),Csplit,hhh
106       common /nosehoover/ glogs(maxmnh),qmass(maxmnh),
107      &                    vlogs(maxmnh),xlogs(maxmnh),
108      &                    nresn,nyosh,nnos,xiresp
109       integer hmc,hmc_acc
110       double precision dc_hmc,hmc_etot,totThmc
111       common /hmc_md/ dc_hmc(3,0:maxres2),hmc_etot,totThmc,hmc,hmc_acc