mirror of https://gitlab.com/QEF/q-e.git
73 lines
2.0 KiB
Fortran
73 lines
2.0 KiB
Fortran
!
|
|
! Copyright (C) 2002-2005 Quantum ESPRESSO group
|
|
! This file is distributed under the terms of the
|
|
! GNU General Public License. See the file `License'
|
|
! in the root directory of the present distribution,
|
|
! or http://www.gnu.org/copyleft/gpl.txt .
|
|
!
|
|
!----------------------------------------------------------------------------
|
|
MODULE metadyn_io
|
|
!----------------------------------------------------------------------------
|
|
!
|
|
! ... this module contains the I/O methods used by meta-dynamics
|
|
!
|
|
! ... code written by Carlo Sbraccia (2005)
|
|
!
|
|
USE kinds, ONLY : DP
|
|
!
|
|
USE iotk_module
|
|
!
|
|
USE xml_io_base, ONLY : create_directory
|
|
!
|
|
IMPLICIT NONE
|
|
!
|
|
CHARACTER(iotk_attlenx) :: attr
|
|
!
|
|
PRIVATE
|
|
!
|
|
PUBLIC :: write_axsf_file
|
|
!
|
|
CONTAINS
|
|
!
|
|
!------------------------------------------------------------------------
|
|
SUBROUTINE write_axsf_file( image, tau, tau_units )
|
|
!------------------------------------------------------------------------
|
|
!
|
|
USE io_files, ONLY : iunaxsf
|
|
USE constants, ONLY : bohr_radius_angs
|
|
USE ions_base, ONLY : nat, ityp, atm
|
|
!
|
|
IMPLICIT NONE
|
|
!
|
|
INTEGER, INTENT(IN) :: image
|
|
REAL(DP), INTENT(IN) :: tau(:,:)
|
|
REAL(DP), INTENT(IN) :: tau_units
|
|
!
|
|
INTEGER :: ia
|
|
LOGICAL :: opnd
|
|
!
|
|
!
|
|
INQUIRE( UNIT = iunaxsf, OPENED = opnd )
|
|
IF ( .NOT.opnd ) &
|
|
CALL errore( 'write_axsf_file', &
|
|
'unit to write the axsf file is closed', 1 )
|
|
!
|
|
WRITE( UNIT = iunaxsf, FMT = '(" PRIMCOORD ",I5)' ) image
|
|
WRITE( UNIT = iunaxsf, FMT = '(I5," 1")' ) nat
|
|
!
|
|
DO ia = 1, nat
|
|
!
|
|
WRITE( UNIT = iunaxsf, FMT = '(A2,3(2X,F18.10))' ) &
|
|
TRIM( atm(ityp(ia)) ), &
|
|
tau(1,ia)*tau_units*bohr_radius_angs, &
|
|
tau(2,ia)*tau_units*bohr_radius_angs, &
|
|
tau(3,ia)*tau_units*bohr_radius_angs
|
|
!
|
|
END DO
|
|
!
|
|
RETURN
|
|
!
|
|
END SUBROUTINE write_axsf_file
|
|
!
|
|
END MODULE metadyn_io
|