Recovering Metadynamics in CP2K.. bug fix for waring in set_atm_mass and set_bond also for CP2K and

not only for QM/MM. Some cosmetics around


svn-origin-rev: 4422
This commit is contained in:
Teodoro Laino 2005-12-19 11:10:41 +00:00
parent 33f73d6045
commit 3192ad696f
17 changed files with 1944 additions and 1850 deletions

View file

@ -68,8 +68,6 @@ MODULE colvar
!****************************************************************************
CONTAINS
!TODEL_START_TL
!!****f* metadynamics/colvar_read *
!!
!! NAME
@ -119,6 +117,7 @@ CONTAINS
TYPE(section_vals_type), POINTER :: distance_section, angle_section,&
torsion_section, coordination_section
INTEGER, DIMENSION(:), POINTER :: iatms
NULLIFY(iatms)
failure=.FALSE.
@ -142,12 +141,16 @@ CONTAINS
CALL section_vals_val_get(colvar_section,"SUBSYS",i_rep_section=icol,i_val=colvar%i_subsys,error=error)
CALL section_vals_val_get(colvar_section,"MASS",i_rep_section=icol,r_val=colvar%mass,error=error)
CALL section_vals_val_get(colvar_section,"SCALE",i_rep_section=icol,r_val=colvar%delta_s,error=error)
CALL section_vals_val_get(colvar_section,"WALL_PLUS",i_rep_section=icol,r_val=colvar%wall_p,&
n_rep_val=n_rep,error=error)
IF (n_rep /= 0) colvar%do_wall_p=.TRUE.
CALL section_vals_val_get(colvar_section,"WALL_MINUS",i_rep_section=icol,r_val=colvar%wall_m,&
n_rep_val=n_rep,error=error)
IF (n_rep /= 0) colvar%do_wall_m=.TRUE.
CALL section_vals_val_get(colvar_section,"WALL_PLUS",i_rep_section=icol,n_rep_val=n_rep,error=error)
IF (n_rep /= 0) THEN
colvar%do_wall_p=.TRUE.
CALL section_vals_val_get(colvar_section,"WALL_PLUS",i_rep_section=icol,r_val=colvar%wall_p,error=error)
END IF
CALL section_vals_val_get(colvar_section,"WALL_MINUS",i_rep_section=icol,n_rep_val=n_rep,error=error)
IF (n_rep /= 0) THEN
colvar%do_wall_m=.TRUE.
CALL section_vals_val_get(colvar_section,"WALL_MINUS",i_rep_section=icol,r_val=colvar%wall_m,error=error)
END IF
CALL section_vals_val_get(colvar_section,"LAMBDA",i_rep_section=icol,r_val=colvar%lambda,error=error)
IF (my_subsection(1)) THEN
@ -168,10 +171,16 @@ CONTAINS
ELSE IF (my_subsection(4)) THEN
! Coordination
colvar%type_id=coord_colvar_id
CALL section_vals_val_get(coordination_section,"ATOMS_FROM",i_vals=colvar%coord_param%i_at_from,error=error)
colvar%coord_param%n_atoms_from = SIZE(colvar%coord_param%i_at_from)
CALL section_vals_val_get(coordination_section,"ATOMS_TO",i_vals=colvar%coord_param%i_at_to,error=error)
colvar%coord_param%n_atoms_to = SIZE(colvar%coord_param%i_at_to)
CALL section_vals_val_get(coordination_section,"ATOMS_FROM",i_vals=iatms,error=error)
colvar%coord_param%n_atoms_from = SIZE(iatms)
ALLOCATE(colvar%coord_param%i_at_from(SIZE(iatms)),stat=stat)
CPPostcondition(stat == 0,cp_failure_level,routinep,error,failure)
colvar%coord_param%i_at_from = iatms
CALL section_vals_val_get(coordination_section,"ATOMS_TO",i_vals=iatms,error=error)
colvar%coord_param%n_atoms_to = SIZE(iatms)
ALLOCATE(colvar%coord_param%i_at_to(SIZE(iatms)),stat=stat)
CPPostcondition(stat == 0,cp_failure_level,routinep,error,failure)
colvar%coord_param%i_at_to = iatms
CALL section_vals_val_get(coordination_section,"R0",r_val=colvar%coord_param%r_0,error=error)
CALL section_vals_val_get(coordination_section,"NN",i_val=colvar%coord_param%nncrd,error=error)

View file

@ -71,14 +71,8 @@ MODULE cp_subsystem_methods
init_topology,&
topology_parameters_type
USE topology_util, ONLY: topology_connectivity_pack,&
topology_coordinate_pack
USE periodic_table, ONLY: ptable
USE string_utilities, ONLY: uppercase
USE input_section_types, ONLY: section_vals_type,&
section_vals_get_subs_vals,&
section_vals_get,&
section_vals_val_get,&
section_vals_release
topology_coordinate_pack,&
check_subsys_element
IMPLICIT NONE
PRIVATE
@ -269,80 +263,5 @@ CONTAINS
END IF
END SUBROUTINE create_small_subsystem
!!****f* cp_subsystem_methods/check_subsys_element [1.0] *
!!
!! NAME
!! check_subsys_element
!!
!! FUNCTION
!! Check and returns the ELEMENT label
!!
!! NOTES
!!
!!
!! INPUTS
!!
!!
!! AUTHOR
!! Teodoro Laino
!!
!! MODIFICATION HISTORY
!! 12.2005 created [teo]
!!
!!*** **********************************************************************
SUBROUTINE check_subsys_element(element_in, element_out, globenv, error)
IMPLICIT NONE
! Arguments
CHARACTER(len=*), INTENT(IN) :: element_in
CHARACTER(len=default_string_length), INTENT(OUT) :: element_out
TYPE(global_environment_type), POINTER :: globenv
TYPE(cp_error_type), INTENT(inout), &
OPTIONAL :: error
! Local Variables
CHARACTER(len=*), PARAMETER :: routineN = 'check_subsys_element', &
routineP = moduleN//':'//routineN
CHARACTER(len=default_string_length) :: element_symbol, current_symbol, keyword
INTEGER :: i, n_rep, i_rep
LOGICAL :: found, failure
TYPE(section_vals_type), pointer :: kind_section
found = .FALSE.
failure = .FALSE.
element_symbol = element_in
CALL uppercase(element_symbol)
DO i=LBOUND(ptable,1),UBOUND(ptable,1)
current_symbol = ptable(i)%symbol
CALL uppercase(current_symbol)
IF (TRIM(current_symbol) == TRIM(element_symbol)) THEN
element_out = TRIM(element_symbol)
found = .TRUE.
EXIT
END IF
END DO
IF (.NOT.found) THEN
kind_section => section_vals_get_subs_vals(globenv%input_file,&
"FORCE_EVAL%SUBSYS%KIND",error=error)
CALL section_vals_get(kind_section,n_repetition=n_rep,error=error)
DO i_rep=1,n_rep
CALL section_vals_val_get(kind_section,"_SECTION_PARAMETERS_",&
c_val=keyword,i_rep_section=i_rep,error=error)
CALL uppercase(keyword)
IF (TRIM(keyword)==TRIM(element_symbol)) THEN
CALL section_vals_val_get(kind_section,i_rep_section=i_rep,&
keyword_name="ELEMENT",n_rep_val=i,error=error)
IF (i>0) THEN
CALL section_vals_val_get(kind_section,i_rep_section=i_rep,&
keyword_name="ELEMENT",c_val=element_symbol,error=error)
element_out = TRIM(element_symbol)
found = .TRUE.
EXIT
END IF
END IF
END DO
END IF
IF (.NOT.found) THEN
CPPrecondition(.FALSE.,cp_failure_level,routineP,error,failure)
END IF
END SUBROUTINE check_subsys_element
END MODULE cp_subsystem_methods

View file

@ -127,7 +127,7 @@ SUBROUTINE fist_init ( fist_env, globenv, error )
TYPE(fist_environment_type), POINTER :: fist_env
TYPE(global_environment_type), &
INTENT(INOUT) :: globenv
POINTER :: globenv
TYPE(cp_error_type), INTENT(inout), OPTIONAL :: error
! Local variables

View file

@ -51,13 +51,13 @@ PUBLIC :: create_motion_section
!****************************************************************************
contains
!!****f* input_cp2k/create_metadyn_section *
!!****f* input_cp2k/create_motion_section *
!!
!! NAME
!! create_metadyn_section
!! create_motion_section
!!
!! FUNCTION
!! creates the metadynamics section
!! creates the motion section
!!
!! NOTES
!! -
@ -673,9 +673,9 @@ contains
CALL keyword_create(keyword, name="TEMPERATURE",&
variants=(/"TEMPCONTROL"/),&
description="If a Lagrangian scheme is used the temperature control for the collective "//&
"variables is specified. Default 100.0 K.",&
"variables is specified. ",&
usage="TEMPERATURE {real}",&
default_r_val=100.0_dp,error=error)
type_of_var=real_t,unit_str='K',error=error)
CALL section_add_keyword(section,keyword,error=error)
CALL keyword_release(keyword,error=error)
@ -762,39 +762,36 @@ contains
CALL keyword_create(keyword, name="LAMBDA",&
description="Specifies the lambda parameter of the collective variable in the"//&
" extended lagrangian scheme.",&
usage="LAMBDA {real}",&
default_r_val=-HUGE(0.0_dp),error=error)
usage="LAMBDA {real}",type_of_var=real_t,error=error)
CALL section_add_keyword(section,keyword,error=error)
CALL keyword_release(keyword,error=error)
CALL keyword_create(keyword, name="MASS",&
description="Specifies the mass parameter of the collective variable in the"//&
" extended lagrangian scheme. Default 0.0 .",&
usage="MASS {real}",&
default_r_val=-HUGE(0.0_dp),error=error)
" extended lagrangian scheme.",&
usage="MASS {real}",unit_str='amu',&
default_r_val=0.0_dp,error=error)
CALL section_add_keyword(section,keyword,error=error)
CALL keyword_release(keyword,error=error)
CALL keyword_create(keyword, name="SCALE",&
description="Specifies the scale factor for the following collective variable.",&
usage="SCALE {real}",&
default_r_val=-HUGE(0.0_dp),error=error)
default_r_val=1.0_dp,error=error)
CALL section_add_keyword(section,keyword,error=error)
CALL keyword_release(keyword,error=error)
CALL keyword_create(keyword, name="WALL_PLUS",&
variants=(/"WALLP"/),&
description="Activates the reflective wall on the upper limit of the collective variable.",&
usage="WALL_PLUS {real}",&
default_r_val=-HUGE(0.0_dp),error=error)
usage="WALL_PLUS {real}",type_of_var=real_t,error=error)
CALL section_add_keyword(section,keyword,error=error)
CALL keyword_release(keyword,error=error)
CALL keyword_create(keyword, name="WALL_MINUS",&
variants=(/"WALLM"/),&
description="Activates the reflective wall on the lower limit of the collective variable.",&
usage="WALL_MINUS {real}",&
default_r_val=-HUGE(0.0_dp),error=error)
usage="WALL_MINUS {real}",type_of_var=real_t,error=error)
CALL section_add_keyword(section,keyword,error=error)
CALL keyword_release(keyword,error=error)

View file

@ -37,6 +37,11 @@ MODULE metadynamics
section_vals_type,&
section_vals_val_get,&
section_vals_get
USE metadynamics_types, ONLY: colvar_type,&
coord_colvar_id,&
dist_colvar_id,&
no_colvar_id,&
torsion_colvar_id
IMPLICIT NONE
PRIVATE
@ -140,13 +145,14 @@ SUBROUTINE metadyn_read(meta_env,globenv,metadyn_section,error)
CHARACTER(len=3) :: test_result
CHARACTER(len=default_string_length) :: keyword, time_units
INTEGER :: n_colvar, n_colvar_inp, i, n_rep
LOGICAL :: do_hills, failure, &
section_found
INTEGER :: n_colvar, n_colvar_inp, i, n_rep, iw, kk
LOGICAL :: failure, explicit
REAL(kind=dp) :: dt
TYPE(section_vals_type), POINTER :: md_section, colvar_section
RETURN ! fix breakage, should only go through if metadynamics section is present
CALL section_vals_get(metadyn_section,explicit=explicit,error=error)
IF (.NOT.explicit) RETURN
CPPreconditionNoFail(.NOT.ASSOCIATED(meta_env),cp_failure_level,routineP,error)
md_section => section_vals_get_subs_vals(globenv%input_file,"MOTION%MD",error=error)
@ -156,13 +162,13 @@ SUBROUTINE metadyn_read(meta_env,globenv,metadyn_section,error)
CALL metadyn_create(meta_env,n_colvar=n_colvar,&
dt=dt,para_env=globenv%para_env,error=error)
CALL section_vals_val_get(metadyn_section,"DO_HILLS",l_val=do_hills,error=error)
CALL section_vals_val_get(metadyn_section,"DO_HILLS",l_val=meta_env%do_hills,error=error)
CALL section_vals_val_get(metadyn_section,"LAGRANGE",l_val=meta_env%extended_lagrange,error=error)
CALL section_vals_val_get(metadyn_section,"WW",r_val=meta_env%hills_env%ww,error=error)
CALL section_vals_val_get(metadyn_section,"NT_HILLS",i_val=meta_env%hills_env%nt_hills,error=error)
CALL section_vals_val_get(metadyn_section,"RESTART_HILLS",l_val=meta_env%hills_env%restart_hills,error=error)
CALL section_vals_val_get(metadyn_section,"TEMPERATURE",n_rep_val=n_rep,error=error)
IF (n_rep /=0) THEN
IF ( n_rep /= 0 ) THEN
meta_env%tempcontrol=.TRUE.
CALL section_vals_val_get(metadyn_section,"TEMPERATURE",r_val=meta_env%temp_wanted,error=error)
meta_env%toll_temp=meta_env%temp_wanted/SQRT(REAL(meta_env%n_colvar,dp))
@ -181,6 +187,55 @@ SUBROUTINE metadyn_read(meta_env,globenv,metadyn_section,error)
DO i= 1, n_colvar
CALL colvar_read(meta_env%colvars(i),meta_env%extended_lagrange,i,colvar_section,error=error)
END DO
IF (globenv % ionode .AND. globenv % print_level>=0) THEN
iw = globenv % scr
WRITE ( iw, '( /A )' ) ' METADYN| Meta Dynamics Protocol '
WRITE ( iw, '( A,T71,I10)' ) ' METADYN| Number of interval time steps to spawn hills',meta_env%hills_env%nt_hills
IF (meta_env%extended_lagrange) THEN
WRITE ( iw, '( A )' ) ' METADYN| Extended Lagrangian Scheme '
IF (meta_env%tempcontrol) WRITE ( iw, '( A,T71,F10.2)' )&
' METADYN| Collective Variables Temperature control',meta_env%toll_temp
END IF
IF (meta_env%hills_env%restart_hills) &
WRITE ( iw, '( A )' ) ' METADYN| Restarting HILLS '
IF (meta_env%do_hills) &
WRITE ( iw, '( A )' ) ' METADYN| Spanwing the Hills '
WRITE ( iw, '( A,T71,F10.2)' ) ' METADYN| Width of the Spawned Gaussian',meta_env%hills_env%ww
WRITE ( iw, '( A,T71,I10)' ) ' METADYN| Number of collective variables',meta_env%n_colvar
DO i=1,n_colvar
WRITE ( iw, '( A )')' ----------------------------------------------------------------------'
WRITE ( iw, '( A,T71,I10)' ) ' COLVARS| Collective Variable Number',i
WRITE ( iw, '( A,T71,I10)' ) ' COLVARS| Type of collective variable',meta_env%colvars(i)%type_id
WRITE ( iw, '( A,T71,I10)' ) ' COLVARS| Subsys',meta_env%colvars(i)%i_subsys
WRITE ( iw, '( A,T71,F10.6)' ) ' COLVARS| Lambda Parameter',meta_env%colvars(i)%lambda
WRITE ( iw, '( A,T66,F15.6)' ) ' COLVARS| Collective Variable Mass',meta_env%colvars(i)%mass
WRITE ( iw, '( A,T71,F10.6)' ) ' COLVARS| Scaling factor',meta_env%colvars(i)%delta_s
IF (meta_env%colvars(i)%do_wall_p) &
WRITE ( iw, '( A,T61,F12.6)' ) ' COLVARS| Upper Wall Height',meta_env%colvars(i)%wall_p
IF (meta_env%colvars(i)%do_wall_m) &
WRITE ( iw, '( A,T61,F12.6)' ) ' COLVARS| Lower Wall Height',meta_env%colvars(i)%wall_m
SELECT CASE(meta_env%colvars(i)%type_id)
CASE(torsion_colvar_id)
WRITE ( iw, '( A,T61,4I5)' ) ' COLVARS| TORSION >>> ATOMS:',meta_env%colvars(i)%torsion_param%i_at_tors
CASE(dist_colvar_id)
WRITE ( iw, '( A,T71,2I5)' ) ' COLVARS| BOND >>> ATOMS:',meta_env%colvars(i)% dist_param%i_at,&
meta_env%colvars(i)% dist_param%j_at
CASE(coord_colvar_id)
WRITE ( iw, '( A,T71,I10)' ) (' COLVARS| COORDINATION >>> FROM ATOM:',meta_env%colvars(i)%coord_param%i_at_from(kk),&
kk=1,SIZE(meta_env%colvars(i)%coord_param%i_at_from))
WRITE ( iw, '( A,T71,I10)' ) (' COLVARS| COORDINATION >>> TO ATOM:',meta_env%colvars(i)%coord_param%i_at_to(kk),&
kk=1,SIZE(meta_env%colvars(i)%coord_param%i_at_to))
WRITE ( iw, '( A,T71,F10.5)' ) ' COLVARS| R0',meta_env%colvars(i)%coord_param%r_0
WRITE ( iw, '( A,T71,I10)' ) ' COLVARS| NN',meta_env%colvars(i)%coord_param%nncrd
WRITE ( iw, '( A,T71,I10)' ) ' COLVARS| ND',meta_env%colvars(i)%coord_param%ndcrd
WRITE ( iw, '( A )')' ----------------------------------------------------------------------'
END SELECT
END DO
END IF
END SUBROUTINE metadyn_read

View file

@ -155,7 +155,7 @@ CONTAINS
TYPE(topology_parameters_type), &
INTENT(INOUT) :: topology
TYPE(global_environment_type), &
INTENT(IN) :: globenv
POINTER :: globenv
TYPE(molecule_type), DIMENSION(:), &
POINTER :: molecule_set
TYPE(qmmm_env_mm_type), POINTER :: qmmm_env
@ -234,7 +234,9 @@ CONTAINS
END IF
END IF
CALL timestop(0.0_dp,handle)
CALL write_checkpoint_information("leaving "//routineN,globenv)
IF((globenv%ionode).AND.(globenv%print%level>0))THEN
WRITE(iw,*) " Leaving qmmm_connectivity_control"
END IF
END SUBROUTINE qmmm_connectivity_control

View file

@ -24,7 +24,8 @@ MODULE topology
USE atoms_input, ONLY: read_atoms_input
USE checkpoint_handler, ONLY: write_checkpoint_information
USE global_types, ONLY: global_environment_type
USE kinds, ONLY: dp
USE kinds, ONLY: default_string_length,&
dp
USE molecule_kind_types, ONLY: molecule_kind_type
USE molecule_types_new, ONLY: molecule_type
USE particle_types, ONLY: particle_type
@ -54,7 +55,8 @@ MODULE topology
topology_generate_onfo,&
topology_generate_ub,&
topology_molecules_check,&
topology_reorder_atoms
topology_reorder_atoms,&
check_subsys_element
USE qmmm_topology_util, ONLY: qmmm_coordinate_control,&
qmmm_connectivity_control
USE qmmm_types, only: qmmm_env_mm_type
@ -104,7 +106,7 @@ SUBROUTINE topology_control (atomic_kind_set,particle_set,&
TYPE(particle_type), DIMENSION(:), POINTER :: particle_set
TYPE(molecule_kind_type), DIMENSION(:), POINTER :: molecule_kind_set
TYPE(molecule_type), DIMENSION(:), POINTER :: molecule_set
TYPE(global_environment_type), INTENT(IN) :: globenv
TYPE(global_environment_type), POINTER :: globenv
TYPE(qmmm_env_mm_type), POINTER, OPTIONAL :: qmmm_env
TYPE(cp_error_type), INTENT(inout), &
OPTIONAL :: error
@ -168,7 +170,7 @@ SUBROUTINE topology_control (atomic_kind_set,particle_set,&
!-----------------------------------------------------------------------------
! 5. Read in the coordinates
!-----------------------------------------------------------------------------
CALL coordinate_control(topology,globenv)
CALL coordinate_control(topology,globenv,error)
!-----------------------------------------------------------------------------
!-----------------------------------------------------------------------------
@ -271,7 +273,7 @@ SUBROUTINE connectivity_control(topology,globenv,qmmm,qmmm_env,error)
TYPE(topology_parameters_type), &
INTENT(INOUT) :: topology
TYPE(global_environment_type), &
INTENT(IN), OPTIONAL :: globenv
POINTER, OPTIONAL :: globenv
TYPE(qmmm_env_mm_type), POINTER, OPTIONAL :: qmmm_env
LOGICAL, INTENT(in), OPTIONAL :: qmmm
TYPE(cp_error_type), INTENT(inout), &
@ -395,20 +397,23 @@ END SUBROUTINE connectivity_control
!!
!! SOURCE
!******************************************************************************
SUBROUTINE coordinate_control(topology,globenv)
SUBROUTINE coordinate_control(topology,globenv,error)
TYPE(topology_parameters_type), &
INTENT(INOUT) :: topology
TYPE(global_environment_type), &
INTENT(IN) :: globenv
POINTER :: globenv
TYPE(cp_error_type), INTENT(inout), &
OPTIONAL :: error
CHARACTER(len=*), PARAMETER :: routineN = 'coordinate_control', &
routineP = moduleN//':'//routineN
INTEGER :: handle, iw
INTEGER :: handle, iw, i, id
LOGICAL :: found
CHARACTER(len=default_string_length) :: my_element
!-------------------------------------------------------------------------------
!-------------------------------------------------------------------------------
@ -447,8 +452,6 @@ SUBROUTINE coordinate_control(topology,globenv)
CASE (do_coord_xyz)
CALL read_coordinate_xyz (topology,globenv)
CASE DEFAULT
!CALL read_particle_set (particle_set,atomic_kind_set,molecule_set,&
! molecule_kind_set,topology%cell,globenv)
CALL read_atoms_input ( topology, globenv )
END SELECT
@ -456,7 +459,14 @@ SUBROUTINE coordinate_control(topology,globenv)
IF (topology%natoms.LE.0) THEN
CALL stop_program ("coordinate_control","No atomic coordinates have been found")
ENDIF
! Fix element name for QS
DO i = 1, topology%natoms
id = INDEX(topology%atom_info%element(i),"_")-1
IF ( id == -1 ) id = LEN_TRIM(topology%atom_info%element(i))
CALL check_subsys_element(topology%atom_info%element(i)(1:id),my_element,globenv,error)
topology%atom_info%element(i)=my_element
END DO
IF((globenv%ionode).AND.(globenv%print%level>0))THEN
WRITE(iw,*) " Exiting coordinate_control"

View file

@ -127,7 +127,7 @@ SUBROUTINE read_topology_section ( topology, topology_section, globenv, error )
IMPLICIT NONE
! Arguments
TYPE(topology_parameters_type) :: topology
TYPE(global_environment_type), INTENT(IN),OPTIONAL :: globenv
TYPE(global_environment_type), POINTER ,OPTIONAL :: globenv
TYPE(section_vals_type), POINTER :: topology_section
TYPE(cp_error_type), INTENT(inout), &
OPTIONAL :: error
@ -203,7 +203,7 @@ SUBROUTINE read_constraints_section(topology, globenv, constraint_section, error
TYPE(topology_parameters_type), &
INTENT(INOUT) :: topology
TYPE(global_environment_type), &
INTENT(IN),OPTIONAL :: globenv
pointer ,OPTIONAL :: globenv
TYPE(section_vals_type), POINTER :: constraint_section
TYPE(cp_error_type), INTENT(inout), &
OPTIONAL :: error

View file

@ -199,6 +199,7 @@ SUBROUTINE read_coordinate_pdb (topology,globenv)
READ(line(61:66),*,IOSTAT=istat) atom_info%beta(natom)
READ(line(73:76),*,IOSTAT=istat) atom_info%label_molname(natom)
READ(line(77:78),*,IOSTAT=istat) atom_info%element(natom)
IF(LEN_TRIM(atom_info%element(natom)) == 0 ) atom_info%element(natom) = atom_info%label_atmname(natom)
atom_info%atm_mass(natom) =0.0_dp
atom_info%atm_charge(natom)=-10000.0_dp
IF(topology%charge_occup) &
@ -206,8 +207,9 @@ SUBROUTINE read_coordinate_pdb (topology,globenv)
IF(topology%charge_beta) &
atom_info%atm_charge(natom) = atom_info%beta(natom)
IF(PM2) WRITE(iw,*) natom,line(13:16),line(77:78)
IF(PM2) WRITE(iw,'(5X,A4,3F8.3,A4,I4)') &
IF(PM2) WRITE(iw,'(5X,A4,5X,A2,3F8.3,A4,I4)') &
TRIM(atom_info%label_atmname(natom)),&
TRIM(atom_info%element(natom)),&
atom_info%r(1,natom),&
atom_info%r(2,natom),&
atom_info%r(3,natom),&

View file

@ -109,7 +109,11 @@ MODULE topology_util
USE input_constants, ONLY: do_conn_psf,&
do_conn_generate,&
do_conn_off
USE input_section_types, ONLY: section_vals_type,&
section_vals_get_subs_vals,&
section_vals_get,&
section_vals_val_get,&
section_vals_release
IMPLICIT NONE
CHARACTER(LEN=*), PARAMETER, PRIVATE :: moduleN = "topology_util"
@ -128,7 +132,8 @@ MODULE topology_util
topology_generate_molecule,&
topology_generate_onfo,&
topology_generate_ub,&
topology_molecules_check
topology_molecules_check,&
check_subsys_element
!!*****
!******************************************************************************
@ -1547,7 +1552,7 @@ SUBROUTINE topology_connectivity_pack(molecule_kind_set,molecule_set,&
TYPE(topology_parameters_type), &
INTENT(INOUT) :: topology
TYPE(global_environment_type), &
INTENT(IN), OPTIONAL :: globenv
POINTER, OPTIONAL :: globenv
CHARACTER(len=*), PARAMETER :: routineN = 'topology_connectivity_pack', &
routineP = moduleN//':'//routineN
@ -2383,19 +2388,8 @@ SUBROUTINE topology_connectivity_pack(molecule_kind_set,molecule_set,&
END IF
END DO
!------------------------------------------------------------------------------
!------------------------------------------------------------------------------
IF(PM1) WRITE(iw,*) " Exiting topology_connectivity_pack"
CALL timestop(0.0_dp,handle)
IF(PRESENT(globenv)) THEN
CALL write_checkpoint_information("leaving "//routineN,globenv)
END IF
!-------------------------------------------------------------------------------
!-------------------------------------------------------------------------------
END SUBROUTINE topology_connectivity_pack
@ -2598,7 +2592,8 @@ SUBROUTINE topology_coordinate_pack (particle_set,atomic_kind_set,&
atomic_kind => atomic_kind_set(i)
mass(i) = mass(i) * massunit
CALL set_atomic_kind(atomic_kind=atomic_kind,kind_number=i,&
name=atom_info%atom_names(i),mass=mass(i))
name=atom_info%atom_names(i),element_symbol=atom_info%element(i),&
mass=mass(i))
END DO
DEALLOCATE(mass,STAT=istat)
IF (istat/=0) CALL stop_memory ('coordinate_pack','mass')
@ -3775,4 +3770,82 @@ SUBROUTINE topology_molecules_check(topology,globenv)
END SUBROUTINE topology_molecules_check
!!****f* cp_subsystem_methods/check_subsys_element [1.0] *
!!
!! NAME
!! check_subsys_element
!!
!! FUNCTION
!! Check and returns the ELEMENT label
!!
!! NOTES
!!
!!
!! INPUTS
!!
!!
!! AUTHOR
!! Teodoro Laino
!!
!! MODIFICATION HISTORY
!! 12.2005 created [teo]
!!
!!*** **********************************************************************
SUBROUTINE check_subsys_element(element_in, element_out, globenv, error)
IMPLICIT NONE
! Arguments
CHARACTER(len=*), INTENT(IN) :: element_in
CHARACTER(len=default_string_length), INTENT(OUT) :: element_out
TYPE(global_environment_type), POINTER :: globenv
TYPE(cp_error_type), INTENT(inout), &
OPTIONAL :: error
! Local Variables
CHARACTER(len=*), PARAMETER :: routineN = 'check_subsys_element', &
routineP = moduleN//':'//routineN
CHARACTER(len=default_string_length) :: element_symbol, current_symbol, keyword
INTEGER :: i, n_rep, i_rep
LOGICAL :: found, failure
TYPE(section_vals_type), pointer :: kind_section
found = .FALSE.
failure = .FALSE.
element_symbol = element_in
CALL uppercase(element_symbol)
DO i=LBOUND(ptable,1),UBOUND(ptable,1)
current_symbol = ptable(i)%symbol
CALL uppercase(current_symbol)
IF (TRIM(current_symbol) == TRIM(element_symbol)) THEN
element_out = TRIM(element_symbol)
found = .TRUE.
EXIT
END IF
END DO
IF (.NOT.found) THEN
kind_section => section_vals_get_subs_vals(globenv%input_file,&
"FORCE_EVAL%SUBSYS%KIND",error=error)
CALL section_vals_get(kind_section,n_repetition=n_rep,error=error)
DO i_rep=1,n_rep
CALL section_vals_val_get(kind_section,"_SECTION_PARAMETERS_",&
c_val=keyword,i_rep_section=i_rep,error=error)
CALL uppercase(keyword)
IF (TRIM(keyword)==TRIM(element_symbol)) THEN
CALL section_vals_val_get(kind_section,i_rep_section=i_rep,&
keyword_name="ELEMENT",n_rep_val=i,error=error)
IF (i>0) THEN
CALL section_vals_val_get(kind_section,i_rep_section=i_rep,&
keyword_name="ELEMENT",c_val=element_symbol,error=error)
element_out = TRIM(element_symbol)
found = .TRUE.
EXIT
END IF
END IF
END DO
END IF
IF (.NOT.found) THEN
IF (globenv%ionode) &
WRITE(globenv%scr,*)">>> NO ELEMENT SPECIFIED FOR TYPE:",element_in,"<<<"
CPPrecondition(.FALSE.,cp_failure_level,routineP,error,failure)
END IF
END SUBROUTINE check_subsys_element
END MODULE topology_util

File diff suppressed because it is too large Load diff

View file

@ -1,258 +1,258 @@
REMARK
ATOM 1 Na+ Na+ 1 0.000 0.000 8.430
TER
ATOM 2 Na+ Na+ 2 0.000 5.620 8.430
TER
ATOM 3 Na+ Na+ 3 5.620 0.000 8.430
TER
ATOM 4 Na+ Na+ 4 5.620 5.620 8.430
TER
ATOM 5 Na+ Na+ 5 2.810 2.810 8.430
TER
ATOM 6 Na+ Na+ 6 2.810 8.430 8.430
TER
ATOM 7 Na+ Na+ 7 8.430 2.810 8.430
TER
ATOM 8 Na+ Na+ 8 8.430 8.430 8.430
TER
ATOM 9 Cl- Cl- 9 2.810 0.000 8.430
TER
ATOM 10 Cl- Cl- 10 2.810 5.620 8.430
TER
ATOM 11 Cl- Cl- 11 8.430 0.000 8.430
TER
ATOM 12 Cl- Cl- 12 0.000 2.810 8.430
TER
ATOM 13 Cl- Cl- 13 0.000 8.430 8.430
TER
ATOM 14 Cl- Cl- 14 5.620 2.810 8.430
TER
ATOM 15 Cl- Cl- 15 5.620 8.430 8.430
TER
ATOM 16 Cl- Cl- 16 8.430 5.620 8.430
TER
ATOM 17 Na+ Na+ 17 0.000 2.810 5.620
TER
ATOM 18 Na+ Na+ 18 0.000 8.430 5.620
TER
ATOM 19 Na+ Na+ 19 5.620 2.810 5.620
TER
ATOM 20 Na+ Na+ 20 5.620 8.430 5.620
TER
ATOM 21 Na+ Na+ 21 2.810 0.000 5.620
TER
ATOM 22 Na+ Na+ 22 2.810 5.620 5.620
TER
ATOM 23 Na+ Na+ 23 8.430 0.000 5.620
TER
ATOM 24 Na+ Na+ 24 8.430 5.620 5.620
TER
ATOM 25 Cl- Cl- 25 2.810 2.810 5.620
TER
ATOM 26 Cl- Cl- 26 2.810 8.430 5.620
TER
ATOM 27 Cl- Cl- 27 8.430 2.810 5.620
TER
ATOM 28 Cl- Cl- 28 8.430 8.430 5.620
TER
ATOM 29 Cl- Cl- 29 0.000 0.000 5.620
TER
ATOM 30 Cl- Cl- 30 0.000 5.620 5.620
TER
ATOM 31 Cl- Cl- 31 5.620 0.000 5.620
TER
ATOM 32 Cl- Cl- 32 5.620 5.620 5.620
TER
ATOM 33 Na+ Na+ 33 0.000 0.000 2.810
TER
ATOM 34 Na+ Na+ 34 0.000 5.620 2.810
TER
ATOM 35 Na+ Na+ 35 5.620 0.000 2.810
TER
ATOM 36 Na+ Na+ 36 5.620 5.620 2.810
TER
ATOM 37 Na+ Na+ 37 2.810 2.810 2.810
TER
ATOM 38 Na+ Na+ 38 2.810 8.430 2.810
TER
ATOM 39 Na+ Na+ 39 8.430 2.810 2.810
TER
ATOM 40 Na+ Na+ 40 8.430 8.430 2.810
TER
ATOM 41 Cl- Cl- 41 2.810 0.000 2.810
TER
ATOM 42 Cl- Cl- 42 2.810 5.620 2.810
TER
ATOM 43 Cl- Cl- 43 8.430 0.000 2.810
TER
ATOM 44 Cl- Cl- 44 8.430 5.620 2.810
TER
ATOM 45 Cl- Cl- 45 0.000 2.810 2.810
TER
ATOM 46 Cl- Cl- 46 0.000 8.430 2.810
TER
ATOM 47 Cl- Cl- 47 5.620 2.810 2.810
TER
ATOM 48 Cl- Cl- 48 5.620 8.430 2.810
TER
ATOM 49 Na+ Na+ 49 0.000 2.810 11.240
TER
ATOM 50 Na+ Na+ 50 0.000 8.430 11.240
TER
ATOM 51 Na+ Na+ 51 5.620 2.810 11.240
TER
ATOM 52 Na+ Na+ 52 5.620 8.430 11.240
TER
ATOM 53 Na+ Na+ 53 2.810 0.000 11.240
TER
ATOM 54 Na+ Na+ 54 2.810 5.620 11.240
TER
ATOM 55 Na+ Na+ 55 8.430 0.000 11.240
TER
ATOM 56 Na+ Na+ 56 8.430 5.620 11.240
TER
ATOM 57 Cl- Cl- 57 2.810 2.810 11.240
TER
ATOM 58 Cl- Cl- 58 2.810 8.430 11.240
TER
ATOM 59 Cl- Cl- 59 8.430 2.810 11.240
TER
ATOM 60 Cl- Cl- 60 8.430 8.430 11.240
TER
ATOM 61 Cl- Cl- 61 0.000 0.000 11.240
TER
ATOM 62 Cl- Cl- 62 0.000 5.620 11.240
TER
ATOM 63 Cl- Cl- 63 5.620 0.000 11.240
TER
ATOM 64 Cl- Cl- 64 5.620 5.620 11.240
TER
ATOM 65 O WAT 65 2.966 9.144 17.602
ATOM 66 H1 WAT 65 2.447 9.818 18.042
ATOM 67 H2 WAT 65 3.781 9.104 18.102
TER
ATOM 68 O WAT 66 1.937 2.403 20.284
ATOM 69 H1 WAT 66 1.240 2.980 20.596
ATOM 70 H2 WAT 66 2.457 2.952 19.696
TER
ATOM 71 O WAT 67 0.914 5.881 19.046
ATOM 72 H1 WAT 67 1.625 5.241 19.086
ATOM 73 H2 WAT 67 1.201 6.518 18.391
TER
ATOM 74 O WAT 68 7.942 8.491 18.286
ATOM 75 H1 WAT 68 8.572 7.938 18.748
ATOM 76 H2 WAT 68 8.479 9.138 17.830
TER
ATOM 77 O WAT 69 7.016 7.361 16.262
ATOM 78 H1 WAT 69 7.338 7.915 15.550
ATOM 79 H2 WAT 69 7.397 7.741 17.053
TER
ATOM 80 O WAT 70 8.449 8.347 21.793
ATOM 81 H1 WAT 70 8.437 8.742 22.665
ATOM 82 H2 WAT 70 8.515 9.089 21.193
TER
ATOM 83 O WAT 71 8.966 3.834 18.313
ATOM 84 H1 WAT 71 8.998 3.215 19.043
ATOM 85 H2 WAT 71 9.194 4.678 18.704
TER
ATOM 86 O WAT 72 9.846 0.282 19.385
ATOM 87 H1 WAT 72 10.191 1.159 19.215
ATOM 88 H2 WAT 72 10.605 -0.223 19.675
TER
ATOM 89 O WAT 73 9.809 3.546 21.390
ATOM 90 H1 WAT 73 9.771 4.490 21.546
ATOM 91 H2 WAT 73 9.901 3.163 22.263
TER
ATOM 92 O WAT 74 7.222 1.144 20.123
ATOM 93 H1 WAT 74 8.116 0.847 19.953
ATOM 94 H2 WAT 74 7.261 1.534 20.997
TER
ATOM 95 O WAT 75 3.452 0.879 22.058
ATOM 96 H1 WAT 75 3.101 1.574 21.501
ATOM 97 H2 WAT 75 2.962 0.097 21.803
TER
ATOM 98 O WAT 76 1.542 2.073 17.524
ATOM 99 H1 WAT 76 1.846 1.815 16.654
ATOM 100 H2 WAT 76 1.036 2.872 17.375
TER
ATOM 101 O WAT 77 3.418 4.450 18.364
ATOM 102 H1 WAT 77 3.946 5.240 18.476
ATOM 103 H2 WAT 77 4.033 3.729 18.502
TER
ATOM 104 O WAT 78 5.285 9.251 19.090
ATOM 105 H1 WAT 78 6.014 9.070 18.496
ATOM 106 H2 WAT 78 5.692 9.669 19.849
TER
ATOM 107 O WAT 79 4.351 6.208 15.672
ATOM 108 H1 WAT 79 5.252 6.410 15.922
ATOM 109 H2 WAT 79 3.959 7.059 15.477
TER
ATOM 110 O WAT 80 4.057 6.923 19.990
ATOM 111 H1 WAT 80 4.564 7.432 19.357
ATOM 112 H2 WAT 80 4.570 6.963 20.797
TER
ATOM 113 O WAT 81 5.973 3.268 18.669
ATOM 114 H1 WAT 81 6.604 3.114 17.965
ATOM 115 H2 WAT 81 6.041 2.492 19.226
TER
ATOM 116 O WAT 82 5.912 6.951 22.085
ATOM 117 H1 WAT 82 5.599 7.370 23.001
ATOM 118 H2 WAT 82 6.793 7.104 21.744
TER
ATOM 119 O WAT 83 1.532 5.593 16.334
ATOM 120 H1 WAT 83 2.323 5.182 16.683
ATOM 121 H2 WAT 83 1.113 4.906 15.816
TER
ATOM 122 O WAT 84 10.471 8.162 16.172
ATOM 123 H1 WAT 84 10.657 7.224 16.223
ATOM 124 H2 WAT 84 11.333 8.576 16.144
TER
ATOM 125 O WAT 85 9.195 4.428 15.194
ATOM 126 H1 WAT 85 8.732 5.123 14.728
ATOM 127 H2 WAT 85 8.681 4.287 15.989
TER
ATOM 128 O WAT 86 2.023 8.578 20.786
ATOM 129 H1 WAT 86 2.558 7.862 20.444
ATOM 130 H2 WAT 86 1.523 8.184 21.501
TER
ATOM 131 O WAT 87 2.282 6.917 13.234
ATOM 132 H1 WAT 87 2.798 6.123 13.375
ATOM 133 H2 WAT 87 2.462 7.460 14.001
TER
ATOM 134 O WAT 88 3.643 3.769 14.391
ATOM 135 H1 WAT 88 4.440 3.821 13.863
ATOM 136 H2 WAT 88 3.696 4.521 14.981
TER
ATOM 137 O WAT 89 9.691 6.004 13.544
ATOM 138 H1 WAT 89 10.520 6.375 13.845
ATOM 139 H2 WAT 89 9.182 6.726 13.512
TER
ATOM 140 O WAT 90 5.776 9.458 13.350
ATOM 141 H1 WAT 90 5.095 9.929 13.188
ATOM 142 H2 WAT 90 6.444 10.094 13.606
TER
ATOM 143 O WAT 91 9.564 2.023 14.178
ATOM 144 H1 WAT 91 10.428 1.702 14.436
ATOM 145 H2 WAT 91 9.484 2.873 14.610
TER
ATOM 146 O WAT 92 5.963 4.301 14.225
ATOM 147 H1 WAT 92 5.751 4.352 13.293
ATOM 148 H2 WAT 92 6.249 5.185 14.455
TER
ATOM 149 O WAT 93 3.488 8.688 14.950
ATOM 150 H1 WAT 93 4.261 9.076 14.540
ATOM 151 H2 WAT 93 3.406 9.144 15.787
TER
ATOM 152 O WAT 94 2.139 1.400 14.872
ATOM 153 H1 WAT 94 2.685 2.058 14.442
ATOM 154 H2 WAT 94 2.510 0.562 14.595
TER
ATOM 155 O WAT 95 7.148 1.826 13.571
ATOM 156 H1 WAT 95 6.531 2.546 13.703
ATOM 157 H2 WAT 95 7.984 2.165 13.892
TER
ATOM 158 O WAT 96 8.740 9.219 14.505
ATOM 159 H1 WAT 96 9.000 10.113 14.726
ATOM 160 H2 WAT 96 9.373 8.664 14.962
ATOM 1 Na+ Na+ 1 0.000 0.000 8.430 Na
TER
ATOM 2 Na+ Na+ 2 0.000 5.620 8.430 Na
TER
ATOM 3 Na+ Na+ 3 5.620 0.000 8.430 Na
TER
ATOM 4 Na+ Na+ 4 5.620 5.620 8.430 Na
TER
ATOM 5 Na+ Na+ 5 2.810 2.810 8.430 Na
TER
ATOM 6 Na+ Na+ 6 2.810 8.430 8.430 Na
TER
ATOM 7 Na+ Na+ 7 8.430 2.810 8.430 Na
TER
ATOM 8 Na+ Na+ 8 8.430 8.430 8.430 Na
TER
ATOM 9 Cl- Cl- 9 2.810 0.000 8.430 Cl
TER
ATOM 10 Cl- Cl- 10 2.810 5.620 8.430 Cl
TER
ATOM 11 Cl- Cl- 11 8.430 0.000 8.430 Cl
TER
ATOM 12 Cl- Cl- 12 0.000 2.810 8.430 Cl
TER
ATOM 13 Cl- Cl- 13 0.000 8.430 8.430 Cl
TER
ATOM 14 Cl- Cl- 14 5.620 2.810 8.430 Cl
TER
ATOM 15 Cl- Cl- 15 5.620 8.430 8.430 Cl
TER
ATOM 16 Cl- Cl- 16 8.430 5.620 8.430 Cl
TER
ATOM 17 Na+ Na+ 17 0.000 2.810 5.620 Na
TER
ATOM 18 Na+ Na+ 18 0.000 8.430 5.620 Na
TER
ATOM 19 Na+ Na+ 19 5.620 2.810 5.620 Na
TER
ATOM 20 Na+ Na+ 20 5.620 8.430 5.620 Na
TER
ATOM 21 Na+ Na+ 21 2.810 0.000 5.620 Na
TER
ATOM 22 Na+ Na+ 22 2.810 5.620 5.620 Na
TER
ATOM 23 Na+ Na+ 23 8.430 0.000 5.620 Na
TER
ATOM 24 Na+ Na+ 24 8.430 5.620 5.620 Na
TER
ATOM 25 Cl- Cl- 25 2.810 2.810 5.620 Cl
TER
ATOM 26 Cl- Cl- 26 2.810 8.430 5.620 Cl
TER
ATOM 27 Cl- Cl- 27 8.430 2.810 5.620 Cl
TER
ATOM 28 Cl- Cl- 28 8.430 8.430 5.620 Cl
TER
ATOM 29 Cl- Cl- 29 0.000 0.000 5.620 Cl
TER
ATOM 30 Cl- Cl- 30 0.000 5.620 5.620 Cl
TER
ATOM 31 Cl- Cl- 31 5.620 0.000 5.620 Cl
TER
ATOM 32 Cl- Cl- 32 5.620 5.620 5.620 Cl
TER
ATOM 33 Na+ Na+ 33 0.000 0.000 2.810 Na
TER
ATOM 34 Na+ Na+ 34 0.000 5.620 2.810 Na
TER
ATOM 35 Na+ Na+ 35 5.620 0.000 2.810 Na
TER
ATOM 36 Na+ Na+ 36 5.620 5.620 2.810 Na
TER
ATOM 37 Na+ Na+ 37 2.810 2.810 2.810 Na
TER
ATOM 38 Na+ Na+ 38 2.810 8.430 2.810 Na
TER
ATOM 39 Na+ Na+ 39 8.430 2.810 2.810 Na
TER
ATOM 40 Na+ Na+ 40 8.430 8.430 2.810 Na
TER
ATOM 41 Cl- Cl- 41 2.810 0.000 2.810 Cl
TER
ATOM 42 Cl- Cl- 42 2.810 5.620 2.810 Cl
TER
ATOM 43 Cl- Cl- 43 8.430 0.000 2.810 Cl
TER
ATOM 44 Cl- Cl- 44 8.430 5.620 2.810 Cl
TER
ATOM 45 Cl- Cl- 45 0.000 2.810 2.810 Cl
TER
ATOM 46 Cl- Cl- 46 0.000 8.430 2.810 Cl
TER
ATOM 47 Cl- Cl- 47 5.620 2.810 2.810 Cl
TER
ATOM 48 Cl- Cl- 48 5.620 8.430 2.810 Cl
TER
ATOM 49 Na+ Na+ 49 0.000 2.810 11.240 Na
TER
ATOM 50 Na+ Na+ 50 0.000 8.430 11.240 Na
TER
ATOM 51 Na+ Na+ 51 5.620 2.810 11.240 Na
TER
ATOM 52 Na+ Na+ 52 5.620 8.430 11.240 Na
TER
ATOM 53 Na+ Na+ 53 2.810 0.000 11.240 Na
TER
ATOM 54 Na+ Na+ 54 2.810 5.620 11.240 Na
TER
ATOM 55 Na+ Na+ 55 8.430 0.000 11.240 Na
TER
ATOM 56 Na+ Na+ 56 8.430 5.620 11.240 Na
TER
ATOM 57 Cl- Cl- 57 2.810 2.810 11.240 Cl
TER
ATOM 58 Cl- Cl- 58 2.810 8.430 11.240 Cl
TER
ATOM 59 Cl- Cl- 59 8.430 2.810 11.240 Cl
TER
ATOM 60 Cl- Cl- 60 8.430 8.430 11.240 Cl
TER
ATOM 61 Cl- Cl- 61 0.000 0.000 11.240 Cl
TER
ATOM 62 Cl- Cl- 62 0.000 5.620 11.240 Cl
TER
ATOM 63 Cl- Cl- 63 5.620 0.000 11.240 Cl
TER
ATOM 64 Cl- Cl- 64 5.620 5.620 11.240 Cl
TER
ATOM 65 O WAT 65 2.966 9.144 17.602 O
ATOM 66 H1 WAT 65 2.447 9.818 18.042 H
ATOM 67 H2 WAT 65 3.781 9.104 18.102 H
TER
ATOM 68 O WAT 66 1.937 2.403 20.284 O
ATOM 69 H1 WAT 66 1.240 2.980 20.596 H
ATOM 70 H2 WAT 66 2.457 2.952 19.696 H
TER
ATOM 71 O WAT 67 0.914 5.881 19.046 O
ATOM 72 H1 WAT 67 1.625 5.241 19.086 H
ATOM 73 H2 WAT 67 1.201 6.518 18.391 H
TER
ATOM 74 O WAT 68 7.942 8.491 18.286 O
ATOM 75 H1 WAT 68 8.572 7.938 18.748 H
ATOM 76 H2 WAT 68 8.479 9.138 17.830 H
TER
ATOM 77 O WAT 69 7.016 7.361 16.262 O
ATOM 78 H1 WAT 69 7.338 7.915 15.550 H
ATOM 79 H2 WAT 69 7.397 7.741 17.053 H
TER
ATOM 80 O WAT 70 8.449 8.347 21.793 O
ATOM 81 H1 WAT 70 8.437 8.742 22.665 H
ATOM 82 H2 WAT 70 8.515 9.089 21.193 H
TER
ATOM 83 O WAT 71 8.966 3.834 18.313 O
ATOM 84 H1 WAT 71 8.998 3.215 19.043 H
ATOM 85 H2 WAT 71 9.194 4.678 18.704 H
TER
ATOM 86 O WAT 72 9.846 0.282 19.385 O
ATOM 87 H1 WAT 72 10.191 1.159 19.215 H
ATOM 88 H2 WAT 72 10.605 -0.223 19.675 H
TER
ATOM 89 O WAT 73 9.809 3.546 21.390 O
ATOM 90 H1 WAT 73 9.771 4.490 21.546 H
ATOM 91 H2 WAT 73 9.901 3.163 22.263 H
TER
ATOM 92 O WAT 74 7.222 1.144 20.123 O
ATOM 93 H1 WAT 74 8.116 0.847 19.953 H
ATOM 94 H2 WAT 74 7.261 1.534 20.997 H
TER
ATOM 95 O WAT 75 3.452 0.879 22.058 O
ATOM 96 H1 WAT 75 3.101 1.574 21.501 H
ATOM 97 H2 WAT 75 2.962 0.097 21.803 H
TER
ATOM 98 O WAT 76 1.542 2.073 17.524 O
ATOM 99 H1 WAT 76 1.846 1.815 16.654 H
ATOM 100 H2 WAT 76 1.036 2.872 17.375 H
TER
ATOM 101 O WAT 77 3.418 4.450 18.364 O
ATOM 102 H1 WAT 77 3.946 5.240 18.476 H
ATOM 103 H2 WAT 77 4.033 3.729 18.502 H
TER
ATOM 104 O WAT 78 5.285 9.251 19.090 O
ATOM 105 H1 WAT 78 6.014 9.070 18.496 H
ATOM 106 H2 WAT 78 5.692 9.669 19.849 H
TER
ATOM 107 O WAT 79 4.351 6.208 15.672 O
ATOM 108 H1 WAT 79 5.252 6.410 15.922 H
ATOM 109 H2 WAT 79 3.959 7.059 15.477 H
TER
ATOM 110 O WAT 80 4.057 6.923 19.990 O
ATOM 111 H1 WAT 80 4.564 7.432 19.357 H
ATOM 112 H2 WAT 80 4.570 6.963 20.797 H
TER
ATOM 113 O WAT 81 5.973 3.268 18.669 O
ATOM 114 H1 WAT 81 6.604 3.114 17.965 H
ATOM 115 H2 WAT 81 6.041 2.492 19.226 H
TER
ATOM 116 O WAT 82 5.912 6.951 22.085 O
ATOM 117 H1 WAT 82 5.599 7.370 23.001 H
ATOM 118 H2 WAT 82 6.793 7.104 21.744 H
TER
ATOM 119 O WAT 83 1.532 5.593 16.334 O
ATOM 120 H1 WAT 83 2.323 5.182 16.683 H
ATOM 121 H2 WAT 83 1.113 4.906 15.816 H
TER
ATOM 122 O WAT 84 10.471 8.162 16.172 O
ATOM 123 H1 WAT 84 10.657 7.224 16.223 H
ATOM 124 H2 WAT 84 11.333 8.576 16.144 H
TER
ATOM 125 O WAT 85 9.195 4.428 15.194 O
ATOM 126 H1 WAT 85 8.732 5.123 14.728 H
ATOM 127 H2 WAT 85 8.681 4.287 15.989 H
TER
ATOM 128 O WAT 86 2.023 8.578 20.786 O
ATOM 129 H1 WAT 86 2.558 7.862 20.444 H
ATOM 130 H2 WAT 86 1.523 8.184 21.501 H
TER
ATOM 131 O WAT 87 2.282 6.917 13.234 O
ATOM 132 H1 WAT 87 2.798 6.123 13.375 H
ATOM 133 H2 WAT 87 2.462 7.460 14.001 H
TER
ATOM 134 O WAT 88 3.643 3.769 14.391 O
ATOM 135 H1 WAT 88 4.440 3.821 13.863 H
ATOM 136 H2 WAT 88 3.696 4.521 14.981 H
TER
ATOM 137 O WAT 89 9.691 6.004 13.544 O
ATOM 138 H1 WAT 89 10.520 6.375 13.845 H
ATOM 139 H2 WAT 89 9.182 6.726 13.512 H
TER
ATOM 140 O WAT 90 5.776 9.458 13.350 O
ATOM 141 H1 WAT 90 5.095 9.929 13.188 H
ATOM 142 H2 WAT 90 6.444 10.094 13.606 H
TER
ATOM 143 O WAT 91 9.564 2.023 14.178 O
ATOM 144 H1 WAT 91 10.428 1.702 14.436 H
ATOM 145 H2 WAT 91 9.484 2.873 14.610 H
TER
ATOM 146 O WAT 92 5.963 4.301 14.225 O
ATOM 147 H1 WAT 92 5.751 4.352 13.293 H
ATOM 148 H2 WAT 92 6.249 5.185 14.455 H
TER
ATOM 149 O WAT 93 3.488 8.688 14.950 O
ATOM 150 H1 WAT 93 4.261 9.076 14.540 H
ATOM 151 H2 WAT 93 3.406 9.144 15.787 H
TER
ATOM 152 O WAT 94 2.139 1.400 14.872 O
ATOM 153 H1 WAT 94 2.685 2.058 14.442 H
ATOM 154 H2 WAT 94 2.510 0.562 14.595 H
TER
ATOM 155 O WAT 95 7.148 1.826 13.571 O
ATOM 156 H1 WAT 95 6.531 2.546 13.703 H
ATOM 157 H2 WAT 95 7.984 2.165 13.892 H
TER
ATOM 158 O WAT 96 8.740 9.219 14.505 O
ATOM 159 H1 WAT 96 9.000 10.113 14.726 H
ATOM 160 H2 WAT 96 9.373 8.664 14.962 H
TER
END

View file

@ -1,8 +1,8 @@
ATOM 1 O WAT 1 0.000 0.000 0.000 1.00 0.00
ATOM 2 H1 WAT 1 0.000 0.000 0.947 1.00 0.00
ATOM 3 H2 WAT 1 0.896 0.000 -0.317 1.00 0.00
TER
ATOM 4 O WAT 2 -2.114 0.000 -1.712 1.00 0.00
ATOM 5 H1 WAT 2 -1.449 0.000 -1.034 1.00 0.00
ATOM 6 H2 WAT 2 -2.975 0.000 -1.311 1.00 0.00
ATOM 1 O WAT 1 0.000 0.000 0.000 1.00 0.00 O
ATOM 2 H1 WAT 1 0.000 0.000 0.947 1.00 0.00 H
ATOM 3 H2 WAT 1 0.896 0.000 -0.317 1.00 0.00 H
TER
ATOM 4 O WAT 2 -2.114 0.000 -1.712 1.00 0.00 O
ATOM 5 H1 WAT 2 -1.449 0.000 -1.034 1.00 0.00 H
ATOM 6 H2 WAT 2 -2.975 0.000 -1.311 1.00 0.00 H
END

View file

@ -407,6 +407,15 @@
BASIS_SET SZV-GTH
POTENTIAL GTH-PADE-q1
&END KIND
&KIND H1
ELEMENT H
&END KIND
&KIND H2
ELEMENT H
&END KIND
&KIND H3
ELEMENT H
&END KIND
&TOPOLOGY
CONN_FILE sio2.psf
CONNECTIVITY PSF

View file

@ -418,6 +418,15 @@
BASIS_SET SZV-GTH
POTENTIAL GTH-PADE-q1
&END KIND
&KIND H1
ELEMENT H
&END KIND
&KIND H2
ELEMENT H
&END KIND
&KIND H3
ELEMENT H
&END KIND
&TOPOLOGY
CONN_FILE sio2.psf
CONNECTIVITY PSF

View file

@ -407,6 +407,15 @@
BASIS_SET SZV-GTH
POTENTIAL GTH-PADE-q1
&END KIND
&KIND H1
ELEMENT H
&END KIND
&KIND H2
ELEMENT H
&END KIND
&KIND H3
ELEMENT H
&END KIND
&TOPOLOGY
CONN_FILE sio2.psf
CONNECTIVITY PSF

View file

@ -69,8 +69,8 @@
MASS 10.0
SCALE 0.02
&COORDINATION
ATOMS_FROM 1 1
ATOMS_TO 2 2 3
ATOMS_FROM 1
ATOMS_TO 2 3
R_0 2.3
&END COORDINATION
&END COLVAR
@ -79,8 +79,8 @@
MASS 10.0
SCALE 0.02
&COORDINATION
ATOMS_FROM 1 2
ATOMS_TO 1 3
ATOMS_FROM 2
ATOMS_TO 3
R_0 2.3
&END COORDINATION
&END COLVAR