Skip to content

Commit 8d69ecf

Browse files
committed
FireX: Merge with firemodels/master
2 parents 61a7ee0 + 6fc5d42 commit 8d69ecf

File tree

6 files changed

+44
-44
lines changed

6 files changed

+44
-44
lines changed

Source/dump.f90

Lines changed: 28 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -2461,28 +2461,34 @@ SUBROUTINE WRITE_SMOKEVIEW_FILE
24612461
WRITE(MYSTR,'(A)') 'OFFSET'; CALL ADDSTR
24622462
WRITE(MYSTR,'(3F13.5)') 0.,0.,0.; CALL ADDSTR
24632463

2464-
! Mesh grid dimensions and neighbor information.
2465-
! Determine if the six mesh faces abut a single mesh (MESH_NEIGHBOR>0), nothing (MESH_NEIGHBOR=0),
2466-
! or a combination of nothing and/or multiple meshes (MESH_NEIGHBOR=-1). Write six values to GRID line.
2467-
2468-
DO I=1,6
2469-
SELECT CASE(I)
2470-
CASE(1) ; IW1=1 ; IW2=IW1+M%JBAR*M%KBAR-1
2471-
CASE(2) ; IW1= M%JBAR*M%KBAR+1 ; IW2=IW1+M%JBAR*M%KBAR-1
2472-
CASE(3) ; IW1=2*M%JBAR*M%KBAR+1 ; IW2=IW1+M%IBAR*M%KBAR-1
2473-
CASE(4) ; IW1=2*M%JBAR*M%KBAR+ M%IBAR*M%KBAR+1 ; IW2=IW1+M%IBAR*M%KBAR-1
2474-
CASE(5) ; IW1=2*M%JBAR*M%KBAR+2*M%IBAR*M%KBAR+1 ; IW2=IW1+M%IBAR*M%JBAR-1
2475-
CASE(6) ; IW1=2*M%JBAR*M%KBAR+2*M%IBAR*M%KBAR+ M%IBAR*M%JBAR+1 ; IW2=IW1+M%IBAR*M%JBAR-1
2476-
END SELECT
2477-
MESH_NEIGHBOR(I) = M%EXTERNAL_WALL(IW1)%NOM
2478-
DO IW=IW1,IW2
2479-
IF (M%EXTERNAL_WALL(IW)%NOM/=MESH_NEIGHBOR(I)) THEN
2480-
MESH_NEIGHBOR(I) = -1
2481-
EXIT
2482-
ENDIF
2464+
MESH_NEIGHBOR = 0
2465+
2466+
IF (.NOT.SETUP_ONLY) THEN
2467+
2468+
! Mesh grid dimensions and neighbor information.
2469+
! Determine if the six mesh faces abut a single mesh (MESH_NEIGHBOR>0), nothing (MESH_NEIGHBOR=0),
2470+
! or a combination of nothing and/or multiple meshes (MESH_NEIGHBOR=-1). Write six values to GRID line.
2471+
2472+
DO I=1,6
2473+
SELECT CASE(I)
2474+
CASE(1) ; IW1=1 ; IW2=IW1+M%JBAR*M%KBAR-1
2475+
CASE(2) ; IW1= M%JBAR*M%KBAR+1 ; IW2=IW1+M%JBAR*M%KBAR-1
2476+
CASE(3) ; IW1=2*M%JBAR*M%KBAR+1 ; IW2=IW1+M%IBAR*M%KBAR-1
2477+
CASE(4) ; IW1=2*M%JBAR*M%KBAR+ M%IBAR*M%KBAR+1 ; IW2=IW1+M%IBAR*M%KBAR-1
2478+
CASE(5) ; IW1=2*M%JBAR*M%KBAR+2*M%IBAR*M%KBAR+1 ; IW2=IW1+M%IBAR*M%JBAR-1
2479+
CASE(6) ; IW1=2*M%JBAR*M%KBAR+2*M%IBAR*M%KBAR+ M%IBAR*M%JBAR+1 ; IW2=IW1+M%IBAR*M%JBAR-1
2480+
END SELECT
2481+
MESH_NEIGHBOR(I) = M%EXTERNAL_WALL(IW1)%NOM
2482+
DO IW=IW1,IW2
2483+
IF (M%EXTERNAL_WALL(IW)%NOM/=MESH_NEIGHBOR(I)) THEN
2484+
MESH_NEIGHBOR(I) = -1
2485+
EXIT
2486+
ENDIF
2487+
ENDDO
24832488
ENDDO
2484-
ENDDO
24852489

2490+
ENDIF
2491+
24862492
CALL EOL
24872493
WRITE(MYSTR,'(A,3X,A)') 'GRID',TRIM(MESH_NAME(NM)); CALL ADDSTR
24882494
WRITE(MYSTR,'(9I6)') M%IBAR,M%JBAR,M%KBAR,MESH_NEIGHBOR(1:6) ; CALL ADDSTR
@@ -2566,7 +2572,6 @@ SUBROUTINE WRITE_SMOKEVIEW_FILE
25662572
IF (VT%RADIUS>0._EB) N_CVENT=N_CVENT+1
25672573
ENDDO
25682574

2569-
25702575
! Write out information about vents to Smokeview file
25712576

25722577
CALL EOL
@@ -3014,7 +3019,7 @@ SUBROUTINE INITIALIZE_DIAGNOSTIC_FILE(DT)
30143019
WRITE(LU_OUTPUT,'(A,I8)') ' Cells in the X Direction ',M%IBAR
30153020
WRITE(LU_OUTPUT,'(A,I8)') ' Cells in the Y Direction ',M%JBAR
30163021
WRITE(LU_OUTPUT,'(A,I8)') ' Cells in the Z Direction ',M%KBAR
3017-
WRITE(LU_OUTPUT,'(A,I8)') ' Number of Grid Cells ',M%IBAR*M%JBAR*M%KBAR
3022+
WRITE(LU_OUTPUT,'(A,I12)') ' Number of Grid Cells ',M%IBAR*M%JBAR*M%KBAR
30183023
WRITE(LU_OUTPUT,'(//A,I5/)')' Physical Dimensions, Mesh ',NM
30193024
WRITE(LU_OUTPUT,'(A,F10.3)') ' Length (m) ',M%XF-M%XS
30203025
WRITE(LU_OUTPUT,'(A,F10.3)') ' Width (m) ',M%YF-M%YS
@@ -3029,7 +3034,7 @@ SUBROUTINE INITIALIZE_DIAGNOSTIC_FILE(DT)
30293034
ENDIF
30303035

30313036
WRITE(LU_OUTPUT,'(/A/)') ' Miscellaneous Parameters'
3032-
WRITE(LU_OUTPUT,'(A,I9)' ) ' Total Number of Grid Cells ',CELL_COUNT
3037+
WRITE(LU_OUTPUT,'(A,I12)') ' Total Number of Grid Cells' ,CELL_COUNT
30333038
WRITE(LU_OUTPUT,'(A,F9.3)') ' Maximum Cell Aspect Ratio ',MAXVAL(MAX_CELL_ASPECT_RATIO)
30343039
WRITE(LU_OUTPUT,'(A,F9.3)') ' Initial Time Step (s) ',DT
30353040
WRITE(LU_OUTPUT,'(A,I9)') ' CFL Velocity Norm ',CFL_VELOCITY_NORM
@@ -4952,7 +4957,6 @@ SUBROUTINE DUMP_SMOKE3D(T,DT,NM)
49524957
REAL(FB) :: DXX,STIME
49534958
REAL(EB), POINTER, DIMENSION(:,:,:) :: FF
49544959
REAL(FB), ALLOCATABLE, DIMENSION(:) :: QQ_PACK
4955-
REAL(EB) :: FR_C
49564960
TYPE(SMOKE3D_TYPE), POINTER :: S3
49574961

49584962
! Miscellaneous settings
@@ -4977,13 +4981,6 @@ SUBROUTINE DUMP_SMOKE3D(T,DT,NM)
49774981
ENDDO
49784982
ENDDO
49794983

4980-
! Adjust the temperature as it is used in the expression for the radiation source term
4981-
4982-
IF (S3%DISPLAY_TYPE=='TEMPERATURE' .AND. RTE_SOURCE_CORRECTION) THEN
4983-
FR_C = RTE_SOURCE_CORRECTION_FACTOR**0.25_EB
4984-
WHERE (CHI_R*Q>QR_CLIP) FF = (FF+TMPM)*FR_C - TMPM
4985-
ENDIF
4986-
49874984
! Interpolate data to cell nodes
49884985

49894986
DO K=0,KBAR

Source/main.f90

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -199,13 +199,12 @@ PROGRAM FDS
199199
IF (DT_EXTERNAL_HEARTBEAT > 0._EB) LU_EXTERNAL_HEARTBEAT = GET_FILE_NUMBER()
200200
ENDIF
201201

202-
! Set up the background atmosphere and initialize the WALL cells
202+
! Set up the background atmosphere and initialize the boundary (WALL) arrays
203203

204204
DO NM=LOWER_MESH_INDEX,UPPER_MESH_INDEX
205205
CALL INITIALIZE_ATMOSPHERE(NM)
206-
CALL INITIALIZE_WALL_ARRAY(NM)
206+
IF (.NOT.SETUP_ONLY) CALL INITIALIZE_WALL_ARRAY(NM)
207207
ENDDO
208-
209208
IF (MY_RANK==0 .AND. VERBOSE) CALL VERBOSE_PRINTOUT('Completed INITIALIZE_WALL_ARRAY')
210209

211210
! Write the Smokeview (.smv) file using parallel MPI writes

Source/part.f90

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1016,6 +1016,8 @@ SUBROUTINE INSERT_VOLUMETRIC_PARTICLES
10161016
IF ((IN_X1-XF)>-50._EB*TWO_EPSILON_EB .OR. (IN_X2-XS)<50._EB*TWO_EPSILON_EB .OR. &
10171017
(IN_Y1-YF)>-50._EB*TWO_EPSILON_EB .OR. (IN_Y2-YS)<50._EB*TWO_EPSILON_EB .OR. &
10181018
(IN_Z1-ZF)>-50._EB*TWO_EPSILON_EB .OR. (IN_Z2-ZS)<50._EB*TWO_EPSILON_EB) RETURN
1019+
ELSEIF (IN%SHAPE=='RING') THEN
1020+
IF (RING_MESH_INTERSECTION_ARC(NM,IN%X0,IN%Y0,IN%RADIUS)<TWO_EPSILON_EB) RETURN
10191021
ELSE
10201022
IF (IN_X1>XF .OR. IN_X2<XS .OR. IN_Y1>YF .OR. IN_Y2<YS .OR. IN_Z1>ZF .OR. IN_Z2<ZS) RETURN
10211023
ENDIF

Source/read.f90

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12579,9 +12579,11 @@ SUBROUTINE READ_VENT
1257912579

1258012580
! Check UVW
1258112581

12582-
IF (ABS(VT%UVW(ABS(VT%IOR))) < TWO_EPSILON_EB .AND. .NOT.VT%GEOM) THEN
12583-
WRITE(MESSAGE,'(3A)') 'ERROR(821): VENT ',TRIM(VT%ID),' cannot have normal component of UVW equal to 0.'
12584-
CALL SHUTDOWN(MESSAGE,PROCESS_0_ONLY=.FALSE.) ; RETURN
12582+
IF (.NOT.VT%GEOM) THEN
12583+
IF (ABS(VT%UVW(ABS(VT%IOR))) < TWO_EPSILON_EB) THEN
12584+
WRITE(MESSAGE,'(3A)') 'ERROR(821): VENT ',TRIM(VT%ID),' cannot have normal component of UVW equal to 0.'
12585+
CALL SHUTDOWN(MESSAGE,PROCESS_0_ONLY=.FALSE.) ; RETURN
12586+
ENDIF
1258512587
ENDIF
1258612588

1258712589
! Special treatment for coloring GEOM surface with HVAC_BOUNDARY
@@ -16382,7 +16384,7 @@ SUBROUTINE READ_SM3D
1638216384
IF (N<=N_SMOKE3D_RESERVED) THEN
1638316385
IF (N==1) THEN ; QUANTITY='DENSITY' ; SPEC_ID='SOOT' ; ENDIF
1638416386
IF (N==2) THEN ; QUANTITY='HRRPUV' ; ENDIF
16385-
IF (N==3) THEN ; QUANTITY='TEMPERATURE' ; ENDIF
16387+
IF (N==3) THEN ; QUANTITY='EFFECTIVE FLAME TEMPERATURE' ; ENDIF
1638616388
ELSE
1638716389
CALL CHECKREAD('SM3D',LU_INPUT,IOS) ; IF (STOP_STATUS==SETUP_STOP) RETURN
1638816390
IF (IOS==1) EXIT READ_SM3D_LOOP

Source/smvv.f90

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -979,7 +979,7 @@ SUBROUTINE SMOKE3D_TO_FILE(NM,TIME,DX,SMOKE3D_INDEX,VALS,NX,NY,NZ)
979979
MAX_VAL = MAX(VAL_FDS,MAX_VAL)
980980
ENDDO
981981

982-
ELSEIF (S3%DISPLAY_TYPE=='TEMPERATURE') THEN
982+
ELSEIF (S3%DISPLAY_TYPE=='TEMPERATURE' .OR. S3%DISPLAY_TYPE=='EFFECTIVE FLAME TEMPERATURE') THEN
983983

984984
DO I=1,NVALS
985985
VAL_FDS = MIN(TEMP_MAX_SMV,MAX(TEMP_MIN_SMV,VALS(I)))

Source/vege.f90

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -197,9 +197,9 @@ SUBROUTINE INITIALIZE_LEVEL_SET_FIRESPREAD_2(NM,MODE)
197197
LSET_TAN2 = .FALSE. ! Flag for ROS proportional to Tan(slope)^2
198198

199199
! Flux limiters
200-
! LIMITER_LS=1 MINMOD
200+
! LIMITER_LS=1 First order upwinding
201201
! LIMITER_LS=2 SUPERBEE
202-
! LIMITER_LS=3 First order upwinding
202+
! LIMITER_LS=3 MINMOD
203203

204204
LIMITER_LS = I_FLUX_LIMITER
205205
IF (LIMITER_LS > 3) LIMITER_LS = 1
@@ -1044,7 +1044,7 @@ END SUBROUTINE LEVEL_SET_ADVECT_FLUX
10441044
!>
10451045
!> \param SR_XY If positive, indicates that flow is from left to right
10461046
!> \param Z Scalar quantity
1047-
!> \param LIMITER Flux limiter (1) MINMOD, (2) SUPERBEE, (3) first-order upwinding (monotone)
1047+
!> \param LIMITER Flux limiter (1) first-order upwinding (monotone), (2) SUPERBEE, (3) MINMOD
10481048
!> \details
10491049
! face
10501050
! | o | o | o | o |
@@ -1083,11 +1083,11 @@ REAL(EB) FUNCTION SCALAR_FACE_VALUE_LS(SR_XY,Z,LIMITER)
10831083
ENDIF
10841084

10851085
IF (LIMITER==1) THEN
1086-
B = MAX(0._EB,MIN(1._EB,R))
1086+
B = 0._EB
10871087
ELSEIF (LIMITER==2) THEN
10881088
B = MAX(0._EB,MIN(2._EB*R,1._EB),MIN(R,2._EB))
10891089
ELSEIF (LIMITER==3) THEN
1090-
B = 0._EB
1090+
B = MAX(0._EB,MIN(1._EB,R))
10911091
ENDIF
10921092

10931093
SCALAR_FACE_VALUE_LS = ZUP + 0.5_EB * B * ( ZDWN - ZUP )

0 commit comments

Comments
 (0)