Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | unit |
Unit for output |
||
type(structure_type), | intent(in) | :: | mol |
Molecular structure data |
||
type(gcp_param), | intent(in) | :: | param |
Counter-poise parameters |
||
character(len=*), | intent(in), | optional | :: | method |
Method name |
subroutine ascii_gcp_param(unit, mol, param, method) !> Unit for output integer, intent(in) :: unit !> Molecular structure data type(structure_type), intent(in) :: mol !> Counter-poise parameters type(gcp_param), intent(in) :: param !> Method name character(len=*), intent(in), optional :: method integer :: isp write(unit, '(a,":")') "Global counter-poise parameters" write(unit, '(20("-"))') if (param%sigma > 0.0_wp .and. param%alpha > 0.0_wp .and. param%beta > 0.0_wp) then write(unit, '(a6, t10, f10.4)') & & "sigma", param%sigma, & & "alpha", param%alpha, & & "beta", param%beta end if if (param%damp) then write(unit, '(a6, t10, f10.4)') & & "dscal", param%dmp_scal, & & "dexpo", param%dmp_exp end if if (param%srb) then write(unit, '(a6, t10, f10.4)') & & "rscal", param%rscal, & & "qscal", param%qscal end if write(unit, '(20("-"))') write(unit, '(a)') if (allocated(param%emiss) .and. allocated(param%xv) & & .and. allocated(param%slater)) then write(unit, '(a,":")') "Atomic counter-poise parameters" write(unit, '(47("-"))') write(unit, '(a4,5x,a4,*(1x,a10))') "Z", "Zeff", "Emiss[Eh]", "Virtual", "Slater" write(unit, '(47("-"))') do isp = 1, mol%nid write(unit, '(i4, 1x, a4, i4, *(1x,f10.4))') & & mol%num(isp), mol%sym(isp), param%zeff(isp), & & param%emiss(isp), param%xv(isp), param%slater(isp) end do write(unit, '(47("-"))') write(unit, '(a)') end if end subroutine ascii_gcp_param