File: N:\mfix\model\qmomk\qmomk_init_bc.f

1     !vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvC
2     !                                                                      C
3     !  Module name: QMOMK_INIT_BC                                           C
4     !  Author: Alberto Passalacqua                        Date:            C
5     !  Reviewer:                                          Date:            C
6     !                                                                      C
7     !^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^C
8     
9     SUBROUTINE QMOMK_INIT_BC
10     
11     !-----------------------------------------------
12     !     M o d u l e s
13     !-----------------------------------------------
14       USE param
15       USE param1
16       USE constant
17       USE physprop
18       USE fldvar
19       USE geometry
20       USE compar
21       USE indices
22       USE bc
23       USE qmom_kinetic_equation
24       USE qmomk_quadrature
25       USE qmomk_bc
26       USE functions
27     
28       IMPLICIT NONE
29     
30       INTEGER :: L
31       INTEGER :: I1, I2, J1, J2, K1, K2
32     
33       DO L = 1, DIMENSION_BC
34           IF (BC_DEFINED(L)) THEN
35     
36             I1 = BC_I_W(L)
37             I2 = BC_I_E(L)
38             J1 = BC_J_S(L)
39             J2 = BC_J_N(L)
40             K1 = BC_K_B(L)
41             K2 = BC_K_T(L)
42     
43             ! Wall BC's
44             IF (BC_TYPE_ENUM(L)==FREE_SLIP_WALL .OR. BC_TYPE_ENUM(L)==NO_SLIP_WALL&
45                 .OR. BC_TYPE_ENUM(L)==PAR_SLIP_WALL) THEN
46               IF (QMOMK_WALL_BC_TYPE == 'SPECULAR_REFLECTIVE') THEN
47                 CALL QMOMK_REFLECTIVE_WALL_BC(L, I1, I2, J1, J2, K1, K2, .TRUE.)
48               ENDIF
49             ! Outlet BC's
50             ELSEIF (BC_TYPE_ENUM(L) == MASS_OUTFLOW .OR. BC_TYPE_ENUM(L)==P_OUTFLOW&
51                 .OR. BC_TYPE_ENUM(L)==OUTFLOW) THEN
52               CALL QMOMK_OUTLET_BC(L, I1, I2, J1, J2, K1, K2, .TRUE.)
53             ! Inlet BC's
54             ELSEIF (BC_TYPE_ENUM(L) == MASS_INFLOW) THEN
55               CALL QMOMK_INLET_BC(L, .TRUE.)
56             ! Cyclic BC's
57             ELSEIF (CYCLIC) THEN
58               CALL QMOMK_CYCLIC_BC(.TRUE.)
59             END IF
60           END IF
61       END DO
62     
63     END SUBROUTINE QMOMK_INIT_BC
64