TABLE OF CONTENTS


ABINIT/m_args_gs [ Modules ]

[ Top ] [ Modules ]

NAME

  m_args_gs

FUNCTION

  This module provides the definition of the args_gs_type
  used to tranfer some arguments to GS calculations,
  especially those depending on the image of the cell.

COPYRIGHT

 Copyright (C) 2015-2018 ABINIT group (MT)
 This file is distributed under the terms of the
 GNU General Public License, see ~abinit/COPYING
 or http://www.gnu.org/copyleft/gpl.txt .

PARENTS

CHILDREN

SOURCE

23 #if defined HAVE_CONFIG_H
24 #include "config.h"
25 #endif
26 
27 #include "abi_common.h"
28 
29 MODULE m_args_gs
30 
31  use defs_basis
32  use m_abicore
33  use m_errors
34 
35  implicit none
36 
37  private

m_args_gs/args_gs_free [ Functions ]

[ Top ] [ m_args_gs ] [ Functions ]

NAME

  args_gs_free

FUNCTION

  Clean and destroy a args_gs datastructure

INPUTS

OUTPUT

SIDE EFFECTS

  args_gs(:)=<type(args_gs_type)>=args_gs datastructure

PARENTS

      gstateimg

CHILDREN

SOURCE

174 subroutine args_gs_free(args_gs)
175 
176 
177 !This section has been created automatically by the script Abilint (TD).
178 !Do not modify the following lines by hand.
179 #undef ABI_FUNC
180 #define ABI_FUNC 'args_gs_free'
181 !End of the abilint section
182 
183  implicit none
184 
185 !Arguments ------------------------------------
186 !arrays
187  type(args_gs_type),intent(inout) :: args_gs
188 !Local variables-------------------------------
189 
190 !************************************************************************
191 
192  !@args_gs_type
193 
194  args_gs%amu         => null()
195  args_gs%mixalch     => null()
196  args_gs%dmatpawu    => null()
197  args_gs%upawu       => null()
198  args_gs%jpawu       => null()
199  args_gs%rprimd_orig => null()
200 
201 end subroutine args_gs_free

m_args_gs/args_gs_init [ Functions ]

[ Top ] [ m_args_gs ] [ Functions ]

NAME

  args_gs_init

FUNCTION

  Init a args_gs datastructure

INPUTS

  amu(:)= mass of each atom type
  mixalch(:)= mixing coefficients to generate alchemical pseudo atoms
  dmatpawu(:,:,:,:)= fixed occupation matrix for correlated orbitals (DFT+U or DMFT only)
  upawu(:) =value of U for the DFT+U or DMFT approach
  jpawu(:) =value of J for the DFT+U or DMFT approach

OUTPUT

SIDE EFFECTS

  args_gs=<type(args_gs_type)>=args_gs datastructure

PARENTS

      gstateimg

CHILDREN

SOURCE

119 subroutine args_gs_init(args_gs,amu,mixalch,dmatpawu,upawu,jpawu,rprimd_orig)
120 
121 
122 !This section has been created automatically by the script Abilint (TD).
123 !Do not modify the following lines by hand.
124 #undef ABI_FUNC
125 #define ABI_FUNC 'args_gs_init'
126 !End of the abilint section
127 
128  implicit none
129 
130 !Arguments ------------------------------------
131 !arrays
132  real(dp),intent(in),target :: amu(:),dmatpawu(:,:,:,:),jpawu(:),mixalch(:,:),upawu(:)
133  real(dp),intent(in),target :: rprimd_orig(:,:)
134  type(args_gs_type),intent(inout) :: args_gs
135 !Local variables-------------------------------
136 
137 !************************************************************************
138 
139  !@args_gs_type
140 
141  args_gs%amu         => amu
142  args_gs%mixalch     => mixalch
143  args_gs%dmatpawu    => dmatpawu
144  args_gs%upawu       => upawu
145  args_gs%jpawu       => jpawu
146  args_gs%rprimd_orig => rprimd_orig
147 
148 end subroutine args_gs_init

m_args_gs/args_gs_type [ Types ]

[ Top ] [ m_args_gs ] [ Types ]

NAME

 args_gs_type

FUNCTION

 This structured datatype contains some arguments of a GS calculation,
 especially the ones depending on the "images".

SOURCE

50  type, public :: args_gs_type
51 
52 ! WARNING : if you modify this datatype, please check whether there might be creation/destruction/copy routines,
53 ! declared in another part of ABINIT, that might need to take into account your modification.
54 
55 ! Real (real(dp)) arrays
56 
57   real(dp), pointer :: amu(:)
58    ! amu(ntypat)
59    ! mass of each atom type
60 
61   real(dp), pointer :: mixalch(:,:)
62    ! mixalch(ntypat)
63    ! Mixing coefficients to generate alchemical pseudo atoms
64 
65   real(dp), pointer :: dmatpawu(:,:,:,:)
66    ! dmatpawu(2*lpawu+1,2*lpawu+1,nspinor*nsppol,natpawu)
67    ! Fixed occupation matrix for correlated orbitals (DFT+U or DMFT only)
68 
69   real(dp), pointer :: upawu(:)
70    ! upawu(ntypat)
71    ! Value of U for the DFT+U or DMFT approach
72 
73   real(dp), pointer :: jpawu(:)
74    ! upawu(ntypat)
75    ! Value of J for the DFT+U or DMFT approach
76 
77   real(dp), pointer :: rprimd_orig(:,:)
78    ! rprimd_orig(3,3)
79    ! Original primitive vectors (usually the input variable)
80 
81  end type args_gs_type
82 
83 !public procedures.
84  public :: args_gs_init
85  public :: args_gs_free