@brief Print energy gradient vector
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(information), | intent(in) | :: | infos |
subroutine print_gradient(infos) implicit none type(information), intent(in) :: infos real(kind=dp) :: gmax, grms integer :: i write(iw, fmt="(& &/25X,23('=')& &/25X,'Gradient (Hartree/Bohr)'& &/25X,23('=')& &/8X,'ATOM ZNUC',9X,'dE/dX',10X,'dE/dY',10X,'dE/dZ'& &/6X,62('-'))") do i = 1, infos%mol_prop%natom write(iw,'(7X,I4,5X,F4.1,3X,3F15.9)') & i,infos%atoms%zn(i), infos%atoms%grad(:,i) end do ! Compute Maximum and RMS Gradient call grad_max_rms(infos%mol_prop%natom,infos%atoms%grad,gmax,grms) write(iw,fmt="(/10X,'Maximum Gradient =',F10.7,4X,& &'RMS Gradient =',F10.7/)") gmax, grms end subroutine print_gradient