X-Git-Url: http://mmka.chem.univ.gda.pl/gitweb/?a=blobdiff_plain;f=source%2Funres%2Fcontrol.F90;h=413fe236160864f2f5c4d7513250aea4c7f6f6e1;hb=9b36766b4b62536253dcc78a6591c620f27b46fb;hp=b851d37d3f35b054dd64dcf0a9ee66515ab0dbfa;hpb=04d0eb23476c67cc0cadc32bf09aa91c03e2dc15;p=unres4.git diff --git a/source/unres/control.F90 b/source/unres/control.F90 index b851d37..413fe23 100644 --- a/source/unres/control.F90 +++ b/source/unres/control.F90 @@ -237,11 +237,15 @@ ! ielep_nucl= 131 isidep_nucl=132 iscpp_nucl=133 - - + isidep_scbase=141 + isidep_pepbase=142 + isidep_scpho=143 + isidep_peppho=144 iliptranpar=60 itube=61 +! IONS + iion=401 #if defined(WHAM_RUN) || defined(CLUSTER) ! ! setting the mpi variables for WHAM @@ -509,7 +513,7 @@ my_ele_inds_vdw_nucl,my_ele_inde_vdw_nucl,ind_eleint_vdw_nucl,& ind_eleint_vdw_old_nucl,nscp_int_tot_nucl,my_scp_inds_nucl,& my_scp_inde_nucl,ind_scpint_nucl,ind_scpint_old_nucl - integer,dimension(5) :: nct_molec,nnt_molec +! integer,dimension(5) :: nct_molec,nnt_molec !el allocate(itask_cont_from(0:nfgtasks-1)) !(0:max_fg_procs-1) !el allocate(itask_cont_to(0:nfgtasks-1)) !(0:max_fg_procs-1) @@ -696,7 +700,7 @@ enddo enddo do i=nnt_molec(2),nct_molec(2)-1 -! print*, "inloop2",i + print*, "inloop2",i call int_partition(ind_scint_nucl,my_sc_inds_nucl,my_sc_inde_nucl,i,& iatsc_s_nucl,iatsc_e_nucl,i+1,nct_molec(2),nint_gr_nucl(i), & istart_nucl(i,1),iend_nucl(i,1),*112) @@ -717,18 +721,20 @@ write (iout,'(i3,2(2x,2i3))') & i,(istart(i,iint),iend(i,iint),iint=1,nint_gr(i)) enddo - endif +! endif ! lprint=.false. write (iout,'(a)') 'Interaction array2:' do i=iatsc_s_nucl,iatsc_e_nucl write (iout,'(i3,2(2x,2i4))') & i,(istart_nucl(i,iint),iend_nucl(i,iint),iint=1,nint_gr_nucl(i)) enddo - + endif ispp=4 !?? wham ispp=2 #ifdef MPI ! Now partition the electrostatic-interaction array - if (itype(nres_molec(1),1).eq.ntyp1_molec(1)) then + if (nres_molec(1).eq.0) then + npept=0 + elseif (itype(nres_molec(1),1).eq.ntyp1_molec(1)) then npept=nres_molec(1)-nnt-1 else npept=nres_molec(1)-nnt @@ -787,7 +793,7 @@ ijunk,ielstart_nucl(i),ielend_nucl(i),*113) enddo ! i 113 continue - if (iatel_s.eq.0) iatel_s=1 + if (iatel_s_nucl.eq.0) iatel_s_nucl=1 nele_int_tot_vdw=(npept-2)*(npept-2+1)/2 ! write (iout,*) "nele_int_tot_vdw",nele_int_tot_vdw @@ -810,7 +816,7 @@ if (iatel_s_vdw.eq.0) iatel_s_vdw=1 15 continue if (iatel_s.eq.0) iatel_s=1 - + if (iatel_s_vdw.eq.0) iatel_s_vdw=1 nele_int_tot_vdw_nucl=(npept_nucl-2)*(npept_nucl-2+1)/2 ! write (iout,*) "nele_int_tot_vdw",nele_int_tot_vdw call int_bounds(nele_int_tot_vdw_nucl,my_ele_inds_vdw_nucl,& @@ -831,7 +837,7 @@ ! write (iout,*) i," ielstart_vdw",ielstart_vdw(i), ! & " ielend_vdw",ielend_vdw(i) enddo ! i - if (iatel_s_vdw.eq.0) iatel_s_vdw=1 + if (iatel_s_vdw.eq.0) iatel_s_vdw_nucl=1 115 continue #else @@ -934,6 +940,7 @@ enddo ! i 114 continue print *, "after inloop3",iatscp_s_nucl,iatscp_e_nucl + if (iatscp_s_nucl.eq.0) iatscp_s_nucl=1 #else iatscp_s=nnt iatscp_e=nct_molec(1)-1 @@ -968,6 +975,9 @@ call int_bounds(nres_molec(1)-2,loc_start,loc_end) loc_start=loc_start+1 loc_end=loc_end+1 + call int_bounds(nres_molec(2)-2,loc_start_nucl,loc_end_nucl) + loc_start_nucl=loc_start_nucl+1+nres_molec(1) + loc_end_nucl=loc_end_nucl+1+nres_molec(1) call int_bounds(nres_molec(1)-2,ithet_start,ithet_end) ithet_start=ithet_start+2 ithet_end=ithet_end+2 @@ -1010,10 +1020,15 @@ ibond_nucl_start=ibond_nucl_start+nnt_molec(2)-1 ibond_nucl_end=ibond_nucl_end+nnt_molec(2)-1 print *,"NUCLibond",ibond_nucl_start,ibond_nucl_end + if (nres_molec(2).ne.0) then print *, "before devision",nnt_molec(2),nct_molec(2)-nnt_molec(2) call int_bounds(nct_molec(2)-nnt_molec(2),ibondp_nucl_start,ibondp_nucl_end) ibondp_nucl_start=ibondp_nucl_start+nnt_molec(2) ibondp_nucl_end=ibondp_nucl_end+nnt_molec(2) + else + ibondp_nucl_start=1 + ibondp_nucl_end=0 + endif print *,"NUCLibond2",ibondp_nucl_start,ibondp_nucl_end @@ -1888,7 +1903,7 @@ !----------------------------------------------------------------------------- subroutine setup_var - integer :: i + integer :: i,mnum ! implicit real*8 (a-h,o-z) ! include 'DIMENSIONS' ! include 'COMMON.IOUNITS' @@ -1911,10 +1926,12 @@ nvar=ntheta+nphi nside=0 do i=2,nres-1 + mnum=molnum(i) + write(iout,*) "i",molnum(i) #ifdef WHAM_RUN if (itype(i,1).ne.10) then #else - if (itype(i,1).ne.10 .and. itype(i,1).ne.ntyp1) then + if (itype(i,1).ne.10 .and. itype(i,mnum).ne.ntyp1_molec(mnum) .and. mnum.ne.5) then #endif nside=nside+1 ialph(i,1)=nvar+nside