C C $Id: gensub.F,v 1.7 1998/07/16 16:39:52 jjv5 Exp arjan $ C C------------------------------------------------------------------------ subroutine gensub(ierror) implicit double precision (a-h,o-z) #include "divcon.dim" #include "divcon.h" CC----------------------------------------------------CC if (handsub) return nsub = 0 natot = 0 ipoint = 1 nbig = 0 ibig = 0 if (STAND) then nsub = 1 iatom1(1) = 1 do 20 i=1,natoms C C SKIP DUMMIES AND SPARKLES. C iai = iatnum(i) if(natorb(iai).eq.0) goto 20 C iatoms(ipoint) = i iabuff(ipoint) = 0 ipoint = ipoint + 1 20 continue iatom1(2) = ipoint elseif (combsub) then call cmbsub(ipoint, natot, nbig, ibig, ierror) elseif (resgr) then call resgrid(ipoint, natot, nbig, ibig, ierror) elseif (mixgr) then call mixgrid(ipoint, natot, nbig, ibig, ierror) elseif (atgr) then call atgrid(ipoint, natot, nbig, ibig, ierror) elseif (clust) then call clustsub(ipoint, natot, nbig, ibig, ierror) elseif (resclust) then call resclustsub(ipoint, natot, nbig, ibig, ierror) elseif (atmsub) then call makesub(ipoint, natot, nbig, ibig, ierror) elseif (ressub) then call makesubres(ipoint, natot, nbig, ibig, ierror) endif end