TABLE OF CONTENTS
ABINIT/mati3det [ Functions ]
NAME
mati3det
FUNCTION
COmpute the determinant of a 3x3 matrix of INTEGER elements.
COPYRIGHT
Copyright (C) 2016-2018 ABINIT group (XG) This file is distributed under the terms of the GNU General Public License, see ~abinit/COPYING or http://www.gnu.org/copyleft/gpl.txt .
INPUTS
mm = integer matrix
OUTPUT
det = determinant of the matrix
NOTES
PARENTS
get_kpt_fullbz,getspinrot,m_ab7_symmetry,m_anaddb_dataset,symdet
CHILDREN
SOURCE
30 #if defined HAVE_CONFIG_H 31 #include "config.h" 32 #endif 33 34 #include "abi_common.h" 35 36 subroutine mati3det(mm,det) 37 38 use defs_basis 39 40 !This section has been created automatically by the script Abilint (TD). 41 !Do not modify the following lines by hand. 42 #undef ABI_FUNC 43 #define ABI_FUNC 'mati3det' 44 !End of the abilint section 45 46 implicit none 47 48 !Arguments ------------------------------------ 49 !arrays 50 integer,intent(in) :: mm(3,3) 51 integer,intent(out) :: det 52 53 !Local variables------------------------------- 54 !scalars 55 56 ! ************************************************************************* 57 det=mm(1,1)*(mm(2,2) * mm(3,3) - mm(3,2) * mm(2,3)) & 58 & + mm(2,1)*(mm(3,2) * mm(1,3) - mm(1,2) * mm(3,3)) & 59 & + mm(3,1)*(mm(1,2) * mm(2,3) - mm(2,2) * mm(1,3)) 60 61 end subroutine mati3det