get_pairwise_dispersion Subroutine

public subroutine get_pairwise_dispersion(mol, disp, param, cutoff, energy2, energy3)

Wrapper to handle the evaluation of pairwise representation of the dispersion energy

deprecated: removed with the v2 API, use the interface with error handling

Arguments

Type IntentOptional Attributes Name
class(structure_type), intent(in) :: mol

Molecular structure data

class(d3_model), intent(in) :: disp

Dispersion model

class(damping_param), intent(in) :: param

Damping parameters

type(realspace_cutoff), intent(in) :: cutoff

Realspace cutoffs

real(kind=wp), intent(out) :: energy2(:,:)

Pairwise representation of additive dispersion energy

real(kind=wp), intent(out) :: energy3(:,:)

Pairwise representation of non-additive dispersion energy


Source Code

subroutine get_pairwise_dispersion(mol, disp, param, cutoff, energy2, energy3)

   !> Molecular structure data
   class(structure_type), intent(in) :: mol

   !> Dispersion model
   class(d3_model), intent(in) :: disp

   !> Damping parameters
   class(damping_param), intent(in) :: param

   !> Realspace cutoffs
   type(realspace_cutoff), intent(in) :: cutoff

   !> Pairwise representation of additive dispersion energy
   real(wp), intent(out) :: energy2(:, :)

   !> Pairwise representation of non-additive dispersion energy
   real(wp), intent(out) :: energy3(:, :)

   type(error_type), allocatable :: error

   call get_pairwise_dispersion_v2(error, mol, disp, param, cutoff, energy2, energy3)

   if (allocated(error)) then
      write(error_unit, '("[Fatal]", 1x, a)') error%message
      error stop
   end if

end subroutine get_pairwise_dispersion