io_dyn_mat2 Module

  • Uses:

  • iotk_module
  • kinds
  • mp_images
  • io_global
module~~io_dyn_mat2~~UsesGraph module~io_dyn_mat2 io_dyn_mat2 iotk_module iotk_module iotk_module->module~io_dyn_mat2 mp_images mp_images mp_images->module~io_dyn_mat2 io_global io_global io_global->module~io_dyn_mat2 kinds kinds kinds->module~io_dyn_mat2
Help
 This module contains methods to read and write the dynamical
 matrix and the interatomic force constants files in xml format.

Used By

module~~io_dyn_mat2~~UsedByGraph module~io_dyn_mat2 io_dyn_mat2 proc~readmat_shuffle2 readmat_shuffle2 module~io_dyn_mat2->proc~readmat_shuffle2 proc~read_ifc read_ifc module~io_dyn_mat2->proc~read_ifc
Help


Variables

TypeVisibility AttributesNameInitial
integer, private :: iunout
character(len=iotk_attlenx), private :: attr

Subroutines

public subroutine read_dyn_mat_param(fildyn, ntyp, nat)

Read paramters from the dynamical matrix

Arguments

Type IntentOptional AttributesName
character(len=256), intent(in) :: fildyn

Name of the file to read

integer, intent(out) :: ntyp

Number of type of atoms

integer, intent(out) :: nat

Number of atoms

public subroutine read_dyn_mat_header(ntyp, nat, ibrav, nspin_mag, celldm, at, bg, omega, atm, amass, tau, ityp, m_loc, nqs, lrigid, epsil, zstareu, lraman, ramtns)

Read the dynamical matrix

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ntyp

Number of type of atoms

integer, intent(in) :: nat

Number of atoms

integer, intent(out) :: ibrav
integer, intent(out) :: nspin_mag
real(kind=DP), intent(out) :: celldm(6)
real(kind=DP), intent(out) :: at(3,3)

Real-space lattice

real(kind=DP), intent(out) :: bg(3,3)

Reciprocal-space latrice

real(kind=DP), intent(out) :: omega
character(len=3), intent(out) :: atm(ntyp)
real(kind=DP), intent(out) :: amass(ntyp)
real(kind=DP), intent(out) :: tau(3,nat)
integer, intent(out) :: ityp(nat)
real(kind=DP), intent(out) :: m_loc(3,nat)
integer, intent(out) :: nqs
logical, intent(out), optional :: lrigid
real(kind=DP), intent(out), optional :: epsil(3,3)
real(kind=DP), intent(out), optional :: zstareu(3,3,nat)
logical, intent(out), optional :: lraman
real(kind=DP), intent(out), optional :: ramtns(3,3,3,nat)

public subroutine read_dyn_mat(nat, iq, xq, dyn)

This routine reads the dynamical matrix file. The file is assumed to be already opened. iq is the number of the dynamical matrix to read.

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: nat
integer, intent(in) :: iq
real(kind=DP), intent(out) :: xq(3)
complex(kind=DP), intent(out) :: dyn(3,3,nat,nat)

public subroutine read_ifc_param(nr1, nr2, nr3)

Arguments

Type IntentOptional AttributesName
integer, intent(out) :: nr1
integer, intent(out) :: nr2
integer, intent(out) :: nr3

public subroutine read_ifc_xml(nr1, nr2, nr3, nat, phid)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: nr1
integer, intent(in) :: nr2
integer, intent(in) :: nr3
integer, intent(in) :: nat
real(kind=DP), intent(out) :: phid(nr1*nr2*nr3,3,3,nat,nat)