mbe_result_allocate_hessian Subroutine

private subroutine mbe_result_allocate_hessian(this, total_atoms)

Allocate hessian array for total_atoms

Type Bound

mbe_result_t

Arguments

Type IntentOptional Attributes Name
class(mbe_result_t), intent(inout) :: this
integer, intent(in) :: total_atoms

Called by

proc~~mbe_result_allocate_hessian~~CalledByGraph proc~mbe_result_allocate_hessian mbe_result_t%mbe_result_allocate_hessian proc~serial_fragment_processor serial_fragment_processor proc~serial_fragment_processor->proc~mbe_result_allocate_hessian interface~serial_fragment_processor serial_fragment_processor interface~serial_fragment_processor->proc~serial_fragment_processor proc~mbe_run_serial mbe_context_t%mbe_run_serial proc~mbe_run_serial->interface~serial_fragment_processor

Variables

Type Visibility Attributes Name Initial
integer, private :: hess_dim

Source Code

   subroutine mbe_result_allocate_hessian(this, total_atoms)
      !! Allocate hessian array for total_atoms
      class(mbe_result_t), intent(inout) :: this
      integer, intent(in) :: total_atoms
      integer :: hess_dim
      hess_dim = 3*total_atoms
      if (allocated(this%hessian)) deallocate (this%hessian)
      allocate (this%hessian(hess_dim, hess_dim))
      this%hessian = 0.0_dp
   end subroutine mbe_result_allocate_hessian