Line data Source code
1 : MODULE m_tetsrt 2 : 3 : 4 : IMPLICIT NONE 5 : 6 : CONTAINS 7 : 8 25068210 : PURE FUNCTION tetsrt(etetra) Result(ind) 9 : 10 : REAL, INTENT(IN) :: etetra(:) 11 : 12 : INTEGER :: ind(SIZE(etetra)) 13 : 14 : INTEGER i,j 15 : INTEGER tmp 16 : 17 : 18 125281488 : DO i = 1, SIZE(etetra) 19 125281488 : ind(i) = i 20 : ENDDO 21 : 22 : !Sort the energies in the tetrahedron in ascending order 23 100213278 : DO i = 1, SIZE(etetra)-1 24 250443852 : DO j = i+1, SIZE(etetra) 25 225375642 : IF (etetra(ind(i)).GT.etetra(ind(j))) THEN 26 77369908 : tmp = ind(i) 27 77369908 : ind(i) = ind(j) 28 77369908 : ind(j) = tmp 29 : ENDIF 30 : ENDDO 31 : ENDDO 32 : 33 25068210 : END FUNCTION tetsrt 34 : 35 : END MODULE m_tetsrt