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,
& 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
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)
& 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
& 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,
& 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
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)
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
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,
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
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)
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