SUBROUTINE surface(v,rij) !----------------------------------------------------------------------- ! This routine supplies the potential energy surface for the ! reactive scattering codes. ! ! On entering: The array rij contains the internuclear distances ! in units of bohr (NOT mass scaled). ! ! The common /pes/ must contain a character string ! of length 20 that properly describes the potential. ! ! On Exit: The variable v is the value of the potential energy ! surface in Hartree atomic units. ! ! !----------------------------------------------------------------------- USE PES_Module implicit none dimension rij(3) real*8 v, rij character(LEN=25) potname_gr, potname_ex external h2ogr, h2oex !----------------------------------------------------------------------- ! The character string potname must contain a string that uniquely ! specifies the potential energy surface to be used. !----------------------------------------------------------------------- data potname_gr/'H2O GROUND STATE PES'/ data potname_ex/'H2O (1B1) STATE PES'/ !----------------------------------------------------------------------- ! Check for correct potential energy surface specification. !----------------------------------------------------------------------- if(PES_Name==potname_gr)then call h2ogr(v,rij) ELSEIF(PES_Name==potname_ex)then call h2oex(v,rij) ELSE write(6,*)'The potential energy surface name does not match', & ' the name in the potential energy surface routine.' write(6,*)'***error***: Execution stopped in routine surface' stop 'potname' endif !----------------------------------------------------------------------- ! This call to surface supplies the potential energy surface ! for the particular system of interest. !----------------------------------------------------------------------- return ENDSUBROUTINE Surface