File: /nfs/home/0/users/jenkins/mfix.git/model/location_check.f

1     !vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvC
2     !                                                                      C
3     !  Subroutine: LOCATION_CHECK                                          C
4     !  Purpose: check calculated and given cell locations for consistency  C
5     !                                                                      C
6     !  Author: P. Nicoletti                               Date: 02-DEC-91  C
7     !  Reviewer: M.SYAMLAL, W.ROGERS, P.NICOLETTI         Date: 24-JAN-92  C
8     !                                                                      C
9     !  Revision Number:                                                    C
10     !  Purpose:                                                            C
11     !  Author:                                            Date: dd-mmm-yy  C
12     !  Reviewer:                                          Date: dd-mmm-yy  C
13     !                                                                      C
14     !  Literature/Document References:                                     C
15     !                                                                      C
16     !                                                                      C
17     !^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^C
18     
19           SUBROUTINE LOCATION_CHECK(CELL_SPECIFIED, CELL_CALCULATED, &
20              COUNTER, MESSAGE)
21     
22     !-----------------------------------------------
23     ! Modules
24     !-----------------------------------------------
25           USE param
26           USE param1
27           USE funits
28           USE geometry
29           IMPLICIT NONE
30     !-----------------------------------------------
31     ! Dummy arguments
32     !-----------------------------------------------
33     ! cell index specified in the input file
34           INTEGER, INTENT(IN) :: CELL_SPECIFIED
35     ! cell index calculated for location coordinate specified in the
36     ! data file
37           INTEGER, INTENT(IN) :: CELL_CALCULATED
38     ! index for BC or IC
39           INTEGER, INTENT(IN) :: COUNTER
40     ! error message to print out
41           CHARACTER MESSAGE*(*)
42     !-----------------------------------------------
43     
44     
45     ! check that the cell_specified in the data input equals to the
46     ! cell calculated.  If not equal, print error message and stop
47     
48           IF (CELL_SPECIFIED == CELL_CALCULATED) RETURN
49     
50           IF (NO_K) THEN
51              IF (MESSAGE(6:6)=='b' .OR. MESSAGE(6:6)=='t') RETURN
52           ENDIF
53           IF (NO_J) THEN
54              IF (MESSAGE(6:6)=='s' .OR. MESSAGE(6:6)=='n') RETURN
55           ENDIF
56           IF (NO_I) THEN
57              IF (MESSAGE(6:6)=='w' .OR. MESSAGE(6:6)=='e') RETURN
58           ENDIF
59     
60           CALL ERROR_ROUTINE ('location_check', 'consistency error', 0, 2)
61           IF(DMP_LOG)WRITE (UNIT_LOG, 1000) MESSAGE, COUNTER, &
62              CELL_SPECIFIED, CELL_CALCULATED
63           CALL ERROR_ROUTINE (' ', ' ', 1, 3)
64     
65      1000 FORMAT(1X,'IC, BC, or IS error for : ',A,/,1X,'IC/BC/IS No  = ',&
66           I6,/, 1X,'Cell specified  = ',I6,/,1X,'Cell calculated = ',I6)
67     
68           RETURN
69           END SUBROUTINE LOCATION_CHECK
70