From: Cezary Czaplewski Date: Thu, 21 Dec 2017 09:45:26 +0000 (+0100) Subject: saxs SCAL_RAD input parameter X-Git-Url: http://mmka.chem.univ.gda.pl/gitweb/?a=commitdiff_plain;h=17f6ba1f1fcc75e0823f1cfb16fa99c11f606d6d;p=unres.git saxs SCAL_RAD input parameter --- diff --git a/source/cluster/wham/src-M/COMMON.CONTROL b/source/cluster/wham/src-M/COMMON.CONTROL index bc4444e..1a6299f 100644 --- a/source/cluster/wham/src-M/COMMON.CONTROL +++ b/source/cluster/wham/src-M/COMMON.CONTROL @@ -6,7 +6,7 @@ real*8 waga_homology real*8 waga_dist, waga_angle, waga_theta, waga_d, dist_cut, & dist2_cut - real*8 Psaxs(maxsaxs),distsaxs(maxsaxs),CSAXS(3,maxsaxs) + real*8 Psaxs(maxsaxs),distsaxs(maxsaxs),CSAXS(3,maxsaxs),scal_rad logical refstr,pdbref,punch_dist,print_dist,caonly,lside, & lprint_cart,lprint_int,from_cart,efree,from_bx,from_cx, & with_dihed_constr,with_theta_constr,out1file, @@ -24,4 +24,4 @@ & waga_dist,waga_angle,waga_theta,waga_d,dist_cut,dist2_cut, & iset,ihset,l_homo(max_template,maxdim), & print_homology_restraints,print_homology_models - common /saxsretr/ Psaxs,distsaxs,csaxs,nsaxs,saxs_mode + common /saxsretr/ Psaxs,distsaxs,csaxs,scal_rad,nsaxs,saxs_mode diff --git a/source/cluster/wham/src-M/energy_p_new.F b/source/cluster/wham/src-M/energy_p_new.F index 340af75..55cc7a1 100644 --- a/source/cluster/wham/src-M/energy_p_new.F +++ b/source/cluster/wham/src-M/energy_p_new.F @@ -9806,7 +9806,8 @@ c SC SC enddo ! k #else dijCACA=dist(i,j) - sigma2CACA=0.25d0/(restok(itype(j))**2+restok(itype(i))**2) + sigma2CACA=scal_rad**2*0.25d0/ + & (restok(itype(j))**2+restok(itype(i))**2) do k=1,nsaxs dk = distsaxs(k) expCACA = dexp(-0.5d0*sigma2CACA*(dijCACA-dk)**2) diff --git a/source/cluster/wham/src-M/readrtns.F b/source/cluster/wham/src-M/readrtns.F index 6bb388a..e5c31cf 100644 --- a/source/cluster/wham/src-M/readrtns.F +++ b/source/cluster/wham/src-M/readrtns.F @@ -130,8 +130,9 @@ C long axis of side chain & index(controlcard,"PRINT_HOMOLOGY_MODELS").gt.0 call readi(controlcard,'NSAXS',nsaxs,0) call readi(controlcard,'SAXS_MODE',saxs_mode,0) + call reada(controlcard,'SCAL_RAD',scal_rad,1.0d0) write (iout,*) "Number of SAXS restraints",NSAXS," SAXS_MODE", - & SAXS_MODE + & SAXS_MODE," SCAL_RAD",scal_rad if (min_var) iopt=1 return end diff --git a/source/unres/src_MD-M/COMMON.CONTROL b/source/unres/src_MD-M/COMMON.CONTROL index be1739c..4de9697 100644 --- a/source/unres/src_MD-M/COMMON.CONTROL +++ b/source/unres/src_MD-M/COMMON.CONTROL @@ -3,7 +3,7 @@ & constr_homology,homol_nset,nsaxs,saxs_mode real*8 waga_homology real*8 waga_dist, waga_angle, waga_theta, waga_d, dist_cut, - & dist2_cut + & dist2_cut, scal_rad real*8 Psaxs(maxsaxs),distsaxs(maxsaxs),CSAXS(3,maxsaxs) logical minim,refstr,pdbref,outpdb,outmol2,overlapsc,energy_dec, & sideadd,lsecondary,read_cart,unres_pdb, @@ -19,6 +19,6 @@ & constr_homology,homol_nset,read2sigma,start_from_model common /homol/ waga_homology(maxprocs/20), & waga_dist, waga_angle, waga_theta, waga_d, dist_cut,dist2_cut - common /saxsretr/ Psaxs,distsaxs,csaxs,nsaxs,saxs_mode + common /saxsretr/ Psaxs,distsaxs,csaxs,scal_rad,nsaxs,saxs_mode C... minim = .true. means DO minimization. C... energy_dec = .true. means print energy decomposition matrix diff --git a/source/unres/src_MD-M/energy_p_new_barrier.F b/source/unres/src_MD-M/energy_p_new_barrier.F index 205f78a..7a158ed 100644 --- a/source/unres/src_MD-M/energy_p_new_barrier.F +++ b/source/unres/src_MD-M/energy_p_new_barrier.F @@ -11177,7 +11177,8 @@ c SC SC enddo ! k #else dijCACA=dist(i,j) - sigma2CACA=0.25d0/(restok(itype(j))**2+restok(itype(i))**2) + sigma2CACA=scal_rad**2*0.25d0/ + & (restok(itype(j))**2+restok(itype(i))**2) do k=1,nsaxs dk = distsaxs(k) expCACA = dexp(-0.5d0*sigma2CACA*(dijCACA-dk)**2) diff --git a/source/unres/src_MD-M/readrtns_CSA.F b/source/unres/src_MD-M/readrtns_CSA.F index f18e6eb..5b71db2 100644 --- a/source/unres/src_MD-M/readrtns_CSA.F +++ b/source/unres/src_MD-M/readrtns_CSA.F @@ -101,8 +101,9 @@ C Set up the time limit (caution! The time must be input in minutes!) write (iout,*) "constr_dist",constr_dist call readi(controlcard,'NSAXS',nsaxs,0) call readi(controlcard,'SAXS_MODE',saxs_mode,0) + call reada(controlcard,'SCAL_RAD',scal_rad,1.0d0) write (iout,*) "Number of SAXS restraints",NSAXS," SAXS_MODE", - & SAXS_MODE + & SAXS_MODE," SCAL_RAD",scal_rad call readi(controlcard,'CONSTR_HOMOL',constr_homology,0) call readi(controlcard,'SYM',symetr,1) call reada(controlcard,'TIMLIM',timlim,960.0D0) ! default 16 hours diff --git a/source/wham/src-M/COMMON.CONTROL b/source/wham/src-M/COMMON.CONTROL index 8c940ab..9c2ac68 100644 --- a/source/wham/src-M/COMMON.CONTROL +++ b/source/wham/src-M/COMMON.CONTROL @@ -5,7 +5,7 @@ real*8 waga_homology real*8 waga_dist, waga_angle, waga_theta, waga_d, dist_cut, & dist2_cut - real*8 Psaxs(maxsaxs),distsaxs(maxsaxs),CSAXS(3,maxsaxs) + real*8 Psaxs(maxsaxs),distsaxs(maxsaxs),CSAXS(3,maxsaxs),scal_rad logical refstr,pdbref,punch_dist,print_rms,caonly,verbose, & merge_helices,bxfile,cxfile,histfile,entfile,zscfile, & rmsrgymap,with_dihed_constr,check_conf,histout,out1file, @@ -21,4 +21,4 @@ common /homol/ waga_homology(maxR), & waga_dist,waga_angle,waga_theta,waga_d,dist_cut,dist2_cut, & iset,ihset,l_homo(max_template,maxdim) - common /saxsretr/ Psaxs,distsaxs,csaxs,nsaxs,saxs_mode + common /saxsretr/ Psaxs,distsaxs,csaxs,scal_rad,nsaxs,saxs_mode diff --git a/source/wham/src-M/energy_p_new.F b/source/wham/src-M/energy_p_new.F index de97b0b..fdc98e4 100644 --- a/source/wham/src-M/energy_p_new.F +++ b/source/wham/src-M/energy_p_new.F @@ -8795,7 +8795,8 @@ c SC SC enddo ! k #else dijCACA=dist(i,j) - sigma2CACA=0.25d0/(restok(itype(j))**2+restok(itype(i))**2) + sigma2CACA=scal_rad**2*0.25d0/ + & (restok(itype(j))**2+restok(itype(i))**2) do k=1,nsaxs dk = distsaxs(k) expCACA = dexp(-0.5d0*sigma2CACA*(dijCACA-dk)**2) diff --git a/source/wham/src-M/readrtns.F b/source/wham/src-M/readrtns.F index 51216d9..e2eca89 100644 --- a/source/wham/src-M/readrtns.F +++ b/source/wham/src-M/readrtns.F @@ -128,8 +128,9 @@ C endif dyn_ss=(index(controlcard,'DYN_SS').gt.0) call readi(controlcard,'NSAXS',nsaxs,0) call readi(controlcard,'SAXS_MODE',saxs_mode,0) + call reada(controlcard,'SCAL_RAD',scal_rad,1.0d0) write (iout,*) "Number of SAXS restraints",NSAXS," SAXS_MODE", - & SAXS_MODE + & SAXS_MODE," SCAL_RAD",scal_rad C /06/28/2013 Adasko: dyn_ss is keyword allowing to break and create bond C disulfide bond. Note that in conterary to dynamics this in C CONTROLCARD. The bond are read in molread_zs.F