SUBROUTINE seliso(kc,tiso,dictinfo,tabinfo,dicflg,niso) IMPLICIT NONE INCLUDE 'general.h' INCLUDE 'isomer.h' * input INTEGER tabinfo(mcri) INTEGER dictinfo(miso) INTEGER tiso INTEGER kc * input/output INTEGER dicflg(miso) INTEGER niso * local INTEGER i,ij INTEGER tempniso INTEGER tempdicflg(miso) * copy some value that may need to be returned without changes tempniso=niso DO i=1,tiso tempdicflg(i)=dicflg(i) ENDDO * unselect the species that does not match the input criteria DO i=1,tiso IF (dicflg(i).ne.1) THEN ! ignore species already eliminated ij=dictinfo(i) c WRITE(48,*) c & 'kc=',kc,'tab=',tabinfo(kc),'i=',i,'dic=',diccri(ij,kc) IF (tabinfo(kc).ne.diccri(ij,kc)) THEN dicflg(i)=1 niso=niso-1 ENDIF ENDIF ENDDO * no isomer remain (no species match the criteria). * the criteria does not allow discrimination - return without changes * flag=continue IF (niso.eq.0) THEN niso=tempniso DO i=1,tiso dicflg(i)=tempdicflg(i) ENDDO RETURN ENDIF * more than one isomer remain. The criteria allows some discrimination. * keep the updated dictflag and niso and return> * end of the subroutine END