File: N:\mfix\model\write_out3.f
1
2
3
4
5
6
7
8
9 SUBROUTINE WRITE_OUT3(CPU, WALL, IO)
10
11 use error_manager
12 use run, only: get_tunit
13
14 IMPLICIT NONE
15
16 DOUBLE PRECISION, INTENT(INOUT) :: CPU
17 DOUBLE PRECISION, INTENT(INOUT) :: WALL
18 DOUBLE PRECISION, INTENT(INOUT) :: IO
19
20
21
22
23
24
25 CHARACTER(len=4) :: UNIT_CPU
26 CHARACTER(len=4) :: UNIT_WALL
27 CHARACTER(len=4) :: UNIT_IO
28
29
30 WRITE(ERR_MSG, "(2/1x,70('*'))")
31 CALL FLUSH_ERR_MSG(HEADER=.FALSE., FOOTER=.FALSE.)
32
33 CALL GET_TUNIT(CPU, UNIT_CPU)
34 WRITE(ERR_MSG, 1000) 'CPU', trim(iVal(CPU)), UNIT_CPU
35 CALL FLUSH_ERR_MSG(HEADER=.FALSE., FOOTER=.FALSE.)
36
37 CALL GET_TUNIT(IO, UNIT_IO)
38 WRITE(ERR_MSG, 1000) 'CPU IO', trim(iVal(IO)), UNIT_IO
39 CALL FLUSH_ERR_MSG(HEADER=.FALSE., FOOTER=.FALSE.)
40
41 CALL GET_TUNIT(WALL, UNIT_WALL)
42 WRITE(ERR_MSG, 1000) 'wall time', trim(iVal(WALL)), UNIT_WALL
43 CALL FLUSH_ERR_MSG(HEADER=.FALSE., FOOTER=.FALSE.)
44
45 WRITE(ERR_MSG, "(1x,70('*'))")
46 CALL FLUSH_ERR_MSG(HEADER=.FALSE., FOOTER=.FALSE.)
47
48 1000 FORMAT(' Total ',A,' used = ',A,1x,A)
49
50 RETURN
51 END SUBROUTINE WRITE_OUT3
52