Mode calc with tot_virial calculation

This commit is contained in:
Alex Selimov 2020-11-01 21:08:42 -05:00
parent 4dcaddb2cb
commit 153b95194f
5 changed files with 119 additions and 0 deletions

View file

@ -50,6 +50,9 @@ module elements
!Additional module level variables we need
logical :: wrap_flag
!flags for data variables
logical :: vflag
public
contains
@ -136,6 +139,7 @@ module elements
real(kind=dp), dimension(3,max_ng_node) :: adjustVar
adjustVar(:,:) = 0.0_dp
vflag = .false.
select case(trim(ele_type))
@ -823,6 +827,7 @@ do i = 1, atom_num
energy_atom(ia) = eng
force_atom(:,ia) = force(:)
virial_atom(:,ia) = virial(:)
vflag = .true.
return
end subroutine add_atom_data
@ -832,6 +837,7 @@ do i = 1, atom_num
real(kind=dp), intent(in) :: eng(max_basisnum, max_ng_node), &
force(3,max_basisnum, max_ng_node), &
virial(6,max_basisnum,max_ng_node)
vflag = .true.
energy_node(:,:,ie) = eng
force_node(:,:,:,ie) = force
virial_node(:,:,:,ie) = virial