Deallocates and destroys a work matrix.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_type), | intent(inout) | :: | m |
SUBROUTINE dbcsr_work_destroy_all(m) !! Deallocates and destroys a work matrix. TYPE(dbcsr_type), INTENT(INOUT) :: m CHARACTER(len=*), PARAMETER :: routineN = 'dbcsr_work_destroy_all' INTEGER :: handle, i ! --------------------------------------------------------------------------- CALL timeset(routineN, handle) IF (.NOT. ASSOCIATED(m%wms)) & DBCSR_WARN("Want to destroy nonexisting work matrices.") IF (ASSOCIATED(m%wms)) THEN DO i = 1, SIZE(m%wms) CALL dbcsr_work_destroy(m%wms(i)) END DO DEALLOCATE (m%wms) END IF CALL timestop(handle) END SUBROUTINE dbcsr_work_destroy_all