@@ -214,7 +214,7 @@ SUBROUTINE WALL_BC(T,DT,NM)
214214
215215 IF (LPC% SOLID_PARTICLE) THEN
216216 CALL CALCULATE_ZZ_F(T,DT,PARTICLE_INDEX= IP)
217- IF (CORRECTOR) CALL DEPOSIT_PARTICLE_MASS(NM,LP,LPC,CALL_HT_1D ) ! Add the particle off-gas to the gas phase mesh
217+ IF (CORRECTOR) CALL DEPOSIT_PARTICLE_MASS(NM,LP,LPC) ! Add the particle off-gas to the gas phase mesh
218218 ENDIF
219219
220220 ENDDO PARTICLE_LOOP
@@ -1364,16 +1364,14 @@ END SUBROUTINE CALCULATE_ZZ_F
13641364! > \param NM Mesh number
13651365! > \param LP Pointer to Lagrangian Particle derived type variable
13661366! > \param LPC Pointer to Lagrangian Particle Class
1367- ! > \param CALL_HT_1D Logical indicating if the 1-D heat transfer routine was called
13681367! > \details Deposit the particle off-gas onto the mesh
13691368
1370- SUBROUTINE DEPOSIT_PARTICLE_MASS (NM ,LP ,LPC , CALL_HT_1D )
1369+ SUBROUTINE DEPOSIT_PARTICLE_MASS (NM ,LP ,LPC )
13711370
13721371USE PHYSICAL_FUNCTIONS, ONLY: SURFACE_DENSITY,GET_SPECIFIC_HEAT,GET_SENSIBLE_ENTHALPY
13731372USE OUTPUT_DATA, ONLY: M_DOT,Q_DOT
13741373INTEGER , INTENT (IN ) :: NM
1375- LOGICAL , INTENT (IN ) :: CALL_HT_1D
1376- REAL (EB) :: RADIUS,AREA_SCALING,M_DOT_SINGLE,CP,MW_RATIO,H_G,ZZ_GET(1 :N_TRACKED_SPECIES),M_GAS,LENGTH,WIDTH,H_S_B
1374+ REAL (EB) :: RADIUS,M_DOT_SINGLE,CP,MW_RATIO,H_G,ZZ_GET(1 :N_TRACKED_SPECIES),M_GAS,LENGTH,WIDTH,H_S_B
13771375INTEGER :: NS
13781376TYPE (BOUNDARY_ONE_D_TYPE), POINTER :: ONE_D
13791377TYPE (LAGRANGIAN_PARTICLE_TYPE), POINTER :: LP
@@ -1396,7 +1394,6 @@ SUBROUTINE DEPOSIT_PARTICLE_MASS(NM,LP,LPC,CALL_HT_1D)
13961394
13971395IF (ABS (RADIUS)<TWO_EPSILON_EB) RETURN
13981396
1399- AREA_SCALING = 1._EB
14001397IF (LPC% DRAG_LAW == SCREEN_DRAG .OR. LPC% DRAG_LAW == POROUS_DRAG) THEN
14011398 LENGTH = LP% LENGTH
14021399 WIDTH = LP% LENGTH
@@ -1409,26 +1406,10 @@ SUBROUTINE DEPOSIT_PARTICLE_MASS(NM,LP,LPC,CALL_HT_1D)
14091406 B1% AREA = 2._EB * LENGTH* WIDTH
14101407 CASE (SURF_CYLINDRICAL,SURF_INNER_CYLINDRICAL)
14111408 B1% AREA = TWOPI* RADIUS* LENGTH
1412- IF (SF% THERMAL_BC_INDEX == THERMALLY_THICK) AREA_SCALING = (SF% INNER_RADIUS+ SF% THICKNESS)/ RADIUS
14131409 CASE (SURF_SPHERICAL)
14141410 B1% AREA = 4._EB * PI* RADIUS** 2
1415- IF (SF% THERMAL_BC_INDEX == THERMALLY_THICK) AREA_SCALING = ((SF% INNER_RADIUS+ SF% THICKNESS)/ RADIUS)** 2
14161411END SELECT
14171412
1418- ! In PYROLYSIS, all the mass fluxes are based on the INITIAL surface area.
1419- ! Here, correct the mass flux using the CURRENT surface area.
1420-
1421- IF (CALL_HT_1D) THEN
1422- B1% M_DOT_G_PP_ADJUST(1 :N_TRACKED_SPECIES) = B1% M_DOT_G_PP_ADJUST(1 :N_TRACKED_SPECIES)* AREA_SCALING
1423- B1% M_DOT_G_PP_ACTUAL(1 :N_TRACKED_SPECIES) = B1% M_DOT_G_PP_ACTUAL(1 :N_TRACKED_SPECIES)* AREA_SCALING
1424- B1% Q_DOT_G_PP = B1% Q_DOT_G_PP * AREA_SCALING
1425- B1% Q_DOT_O2_PP = B1% Q_DOT_O2_PP * AREA_SCALING
1426- IF (LP% OD_INDEX> 0 ) THEN
1427- ONE_D = > BOUNDARY_ONE_D(LP% OD_INDEX)
1428- ONE_D% M_DOT_S_PP(1 :ONE_D% N_MATL) = ONE_D% M_DOT_S_PP(1 :ONE_D% N_MATL) * AREA_SCALING
1429- ENDIF
1430- ENDIF
1431-
14321413! Add evaporated particle species to gas phase and compute resulting contribution to the divergence
14331414
14341415M_GAS = B1% RHO_G/ LP% RVC
@@ -2927,9 +2908,16 @@ SUBROUTINE PERFORM_PYROLYSIS
29272908 ENDIF
29282909
29292910 ! Sum the mass and heat generation within the solid layers (PPP) and transfer result to the surface (PP).
2911+ ! GEOM_FACTOR accounts for cylindrical and spherical geometry. If this is not a Lagrangian particle, scale with
2912+ ! the original radius (SF%THICKNESS) because the VENT to which the flux is applied does not change in area.
29302913
29312914 IF (ONE_D% N_LAYERS== 1 .AND. REMOVE_LAYER) MF_FRAC(I) = 1._EB
2932- GEOM_FACTOR = MF_FRAC(I)* (R_S(I-1 )** I_GRAD- R_S(I)** I_GRAD)/ (I_GRAD* (SF% THICKNESS+ SF% INNER_RADIUS)** (I_GRAD-1 ))
2915+
2916+ IF (PRESENT (PARTICLE_INDEX)) THEN
2917+ GEOM_FACTOR = MF_FRAC(I)* (R_S(I-1 )** I_GRAD- R_S(I)** I_GRAD)/ (I_GRAD* R_S(0 )** (I_GRAD-1 ))
2918+ ELSE
2919+ GEOM_FACTOR = MF_FRAC(I)* (R_S(I-1 )** I_GRAD- R_S(I)** I_GRAD)/ (I_GRAD* (SF% THICKNESS+ SF% INNER_RADIUS)** (I_GRAD-1 ))
2920+ ENDIF
29332921
29342922 Q_DOT_G_PP = Q_DOT_G_PP + Q_DOT_G_PPP * GEOM_FACTOR
29352923 Q_DOT_O2_PP = Q_DOT_O2_PP + Q_DOT_O2_PPP* GEOM_FACTOR
0 commit comments