cgto_destroy Subroutine

private pure subroutine cgto_destroy(self)

Clean up allocated memory in a CGTO

Type Bound

cgto_type

Arguments

Type IntentOptional Attributes Name
class(cgto_type), intent(inout) :: self

Called by

proc~~cgto_destroy~~CalledByGraph proc~cgto_destroy cgto_type%cgto_destroy proc~atomic_basis_destroy atomic_basis_type%atomic_basis_destroy proc~atomic_basis_destroy->proc~cgto_destroy proc~basis_set_destroy molecular_basis_type%basis_set_destroy proc~basis_set_destroy->proc~atomic_basis_destroy proc~build_molecular_basis build_molecular_basis proc~build_molecular_basis->proc~atomic_basis_destroy proc~fragment_destroy physical_fragment_t%fragment_destroy proc~fragment_destroy->proc~basis_set_destroy proc~fragment_set_basis physical_fragment_t%fragment_set_basis proc~fragment_set_basis->proc~basis_set_destroy proc~compute_gmbe compute_gmbe proc~compute_gmbe->proc~fragment_destroy proc~process_intersection_derivatives process_intersection_derivatives proc~compute_gmbe->proc~process_intersection_derivatives proc~displaced_geometry_destroy displaced_geometry_t%displaced_geometry_destroy proc~displaced_geometry_destroy->proc~fragment_destroy proc~gmbe_pie_coordinator gmbe_pie_coordinator proc~gmbe_pie_coordinator->proc~fragment_destroy proc~map_fragment_to_system_dipole_derivatives map_fragment_to_system_dipole_derivatives proc~map_fragment_to_system_dipole_derivatives->proc~fragment_destroy proc~map_fragment_to_system_gradient map_fragment_to_system_gradient proc~map_fragment_to_system_gradient->proc~fragment_destroy proc~map_fragment_to_system_hessian map_fragment_to_system_hessian proc~map_fragment_to_system_hessian->proc~fragment_destroy proc~node_worker node_worker proc~node_worker->proc~fragment_destroy proc~process_intersection_derivatives->proc~fragment_destroy proc~serial_fragment_processor serial_fragment_processor proc~serial_fragment_processor->proc~fragment_destroy proc~serial_gmbe_pie_processor serial_gmbe_pie_processor proc~serial_gmbe_pie_processor->proc~fragment_destroy interface~node_worker node_worker interface~node_worker->proc~node_worker interface~serial_fragment_processor serial_fragment_processor interface~serial_fragment_processor->proc~serial_fragment_processor proc~compute_mbe compute_mbe proc~compute_mbe->proc~map_fragment_to_system_dipole_derivatives proc~compute_mbe->proc~map_fragment_to_system_gradient proc~compute_mbe->proc~map_fragment_to_system_hessian proc~compute_mbe_dipole_derivatives compute_mbe_dipole_derivatives proc~compute_mbe_dipole_derivatives->proc~map_fragment_to_system_dipole_derivatives proc~compute_mbe_gradient compute_mbe_gradient proc~compute_mbe_gradient->proc~map_fragment_to_system_gradient proc~compute_mbe_hessian compute_mbe_hessian proc~compute_mbe_hessian->proc~map_fragment_to_system_hessian proc~gmbe_run_distributed gmbe_context_t%gmbe_run_distributed proc~gmbe_run_distributed->proc~gmbe_pie_coordinator proc~gmbe_run_serial gmbe_context_t%gmbe_run_serial proc~gmbe_run_serial->proc~serial_gmbe_pie_processor

Source Code

   pure subroutine cgto_destroy(self)
      !! Clean up allocated memory in a CGTO
      class(cgto_type), intent(inout) :: self

      if (allocated(self%exponents)) deallocate (self%exponents)
      if (allocated(self%coefficients)) deallocate (self%coefficients)
      self%nfunc = 0
      self%ang_mom = 0
   end subroutine cgto_destroy