diff --git a/Source/chem.f90 b/Source/chem.f90 index 5e6765516d9..10f0a16e553 100644 --- a/Source/chem.f90 +++ b/Source/chem.f90 @@ -39,7 +39,7 @@ MODULE CVODE_INTERFACE !> \param TN_C is the current time !> \param SUNVEC_Y is the current array of molar concentrations, temperature and pressure. !> \param SUNVEC_F is the array of derivatives returned -!> \param USER_DATA is the user data array. Not yet used in FDS. +!> \param C_USER_DATA is the user data array. Hold unburned zone data for mixing+chem. !> \details The right hand side function of the ode d[c]/dt = wdot (=f). Provides the Derivative function to CVODE. INTEGER(C_INT) FUNCTION RHSFN(TN_C, SUNVEC_Y, SUNVEC_F, C_USER_DATA) & RESULT(IERR) BIND(C,NAME='RHSFN') @@ -86,7 +86,7 @@ END FUNCTION RHSFN !> \param CVEC is the current array of molar concentrations, temperature and pressure. !> \param FVEC is the array of derivatives returned !> \param TN is the current time -!> \param USER_DATA is the user data containing mixing information +!> \param USER_DATA is the user data array. Hold unburned zone data for mixing+chem. SUBROUTINE DERIVATIVE(CVEC,FVEC, TN, USER_DATA) USE PHYSICAL_FUNCTIONS, ONLY : GET_SPECIFIC_HEAT_INTERP, GET_ENTHALPY, GET_ENTHALPY_Z, & @@ -258,7 +258,7 @@ END FUNCTION CALCFCENT !> \param SUNVEC_Y is the current array of molar concentrations, temperature and pressure. !> \param SUNVEC_F is the array of derivatives returned !> \param SUNMAT_J is the Jacobian array returned to CVODE -!> \param USER_DATA is the user data array. Not yet used in FDS. +!> \param C_USER_DATA is the user data array. Hold unburned zone data for mixing+chem. !> \param TMP1 is not yet used in FDS. !> \param TMP2 is not yet used in FDS. !> \param TMP3 is not yet used in FDS. @@ -328,6 +328,8 @@ END FUNCTION JACFN !> \param CVEC is the current array of molar concentrations, temperature and pressure. !> \param FVEC is the array of derivatives passed as input !> \param JMAT is the jacobian matrix returned +!> \param TN is the current time provided by CVODE during callback, not the actual CFD time. +!> \param USER_DATA is the user data array. Hold unburned zone data for mixing+chem. SUBROUTINE JACOBIAN(CVEC,FVEC,JMAT,TN,USER_DATA) @@ -779,10 +781,11 @@ END FUNCTION DDTMP_TROE !> \brief cvode interface for ODE integrator. Call sundials cvode in serial mode. -!> \param CC species mass fraction array -!> \param TMP_IN is the temperature +!> \param CC species concentration (kmol/m3) array +!> \param ZZ_0 initial species mass fraction array (of the unbuned zone),needed for mixing+chem +!> \param TMP_IN is the temperature of the cell (unburned zone) !> \param PR_IN is the pressure -!> \param ZETA0 is the initial unmixed fraction +!> \param ZETA0 is the initial unmixed fraction !> \param TAU_MIX is Mixing timescale !> \param CELL_MASS total mass of the cell (mixed + unmixed) !> \param TCUR is the start time in seconds diff --git a/Source/main.f90 b/Source/main.f90 index 0a109512678..a432417c0fe 100644 --- a/Source/main.f90 +++ b/Source/main.f90 @@ -317,6 +317,7 @@ PROGRAM FDS ! done, there is no need to exchange all HT3D cells. The second call reduces the size of the exchange arrays. CALL INITIALIZE_BACK_WALL_EXCHANGE(1) +CALL MPI_BARRIER(MPI_COMM_WORLD,IERR) CALL INITIALIZE_BACK_WALL_EXCHANGE(2) IF (MY_RANK==0 .AND. VERBOSE) CALL VERBOSE_PRINTOUT('Completed INITIALIZE_BACK_WALL_EXCHANGE')