File: N:\mfix\model\reset_new.f

1     !vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvC
2     !                                                                      C
3     !  Module name: RESET_NEW                                              C
4     !  Purpose: Reset the new variables with the stored previous-time-step C
5     !           values of field variables.                                 C
6     !    *****Remember to modify update_old also
7     !                                                                      C
8     !  Author: M. Syamlal                                 Date: FEB-6-97   C
9     !                                                                      C
10     !  Literature/Document References:                                     C
11     !                                                                      C
12     !  Variables referenced: ROP_g, EP_g, ROP_s, IJKMAX2, MMAX, U_s, V_s,  C
13     !                        W_s                                           C
14     !                                                                      C
15     !  Variables modified: ROP_go, ROP_so, IJK, M, U_so, V_so, W_so C
16     !                                                                      C
17     !  Local variables: NONE                                               C
18     !                                                                      C
19     !^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^C
20           SUBROUTINE RESET_NEW
21     
22     !...Translated by Pacific-Sierra Research VAST-90 2.06G5  12:17:31  12/09/98
23     !...Switches: -xf
24     !
25     !-----------------------------------------------
26     !   M o d u l e s
27     !-----------------------------------------------
28     
29           USE fldvar
30           USE physprop, only: mmax, nmax
31           USE run, only: energy_eq, call_dqmom, granular_energy, k_epsilon, species_eq
32           USE scalars, only: nscalar
33           USE trace, only: trd_s_c, trd_s_co
34     
35           IMPLICIT NONE
36     !-----------------------------------------------
37     !   G l o b a l   P a r a m e t e r s
38     !-----------------------------------------------
39     !-----------------------------------------------
40     !   L o c a l   P a r a m e t e r s
41     !-----------------------------------------------
42     !-----------------------------------------------
43     !   L o c a l   V a r i a b l e s
44     !-----------------------------------------------
45     !
46     !                    Indices
47           INTEGER :: M
48     !
49     !                    error index
50           INTEGER :: IER
51     
52     !-----------------------------------------------
53     
54           EP_G(:) = EP_GO(:)
55           P_G(:) = P_GO(:)
56           P_STAR(:) = P_STARO(:)
57           RO_G(:) = RO_GO(:)
58           ROP_G(:) = ROP_GO(:)
59           U_G(:) = U_GO(:)
60           V_G(:) = V_GO(:)
61           W_G(:) = W_GO(:)
62           IF (ENERGY_EQ) T_G(:) = T_GO(:)
63           IF (SPECIES_EQ(0)) THEN
64             IF (NMAX(0) > 0) THEN
65               X_G(:,:NMAX(0)) = X_GO(:,:NMAX(0))
66             ENDIF
67           ENDIF
68     
69           IF (NScalar > 0) THEN
70             Scalar(:,:NScalar) = ScalarO(:,:NScalar)
71           ENDIF
72     
73           IF (K_Epsilon) THEN
74             K_Turb_G(:) = K_Turb_GO(:)
75             E_Turb_G(:) = E_Turb_GO(:)
76           ENDIF
77     
78           DO M = 1, MMAX
79             ROP_S(:,M) = ROP_SO(:,M)
80     ! add by rong
81             If (Call_DQMOM) D_P(:,M)=D_Po(:,M)
82     !       If (NScalar>0) ome(:,M)=ome_o(:,M)
83     ! add by rong
84             IF (ENERGY_EQ) T_S(:,M) = T_SO(:,M)
85             IF (GRANULAR_ENERGY) THEN
86               THETA_M(:,M) = THETA_MO(:,M)
87               TRD_S_C(:,M) = TRD_S_CO(:,M)
88             ENDIF
89             U_S(:,M) = U_SO(:,M)
90             V_S(:,M) = V_SO(:,M)
91             W_S(:,M) = W_SO(:,M)
92             IF (SPECIES_EQ(M)) THEN
93               IF (NMAX(M) > 0) THEN
94                 X_S(:,M,:NMAX(M)) = X_SO(:,M,:NMAX(M))
95               ENDIF
96     
97               RO_S(:,M) = RO_SO(:,M)
98             ENDIF
99           END DO
100     
101     !     Recalculate all coefficients
102           CALL CALC_COEFF_ALL (0, IER)
103     
104           RETURN
105           END SUBROUTINE RESET_NEW
106     
107     !// Comments on the modifications for DMP version implementation
108     !// 120 Replaced the index for initialization: (:IJKMAX2) to just (:)
109