Skip to content

Commit 61a7ee0

Browse files
authored
Merge pull request #14675 from cxp484/FireX
FireX FDS Source: Fix merging issue
2 parents 9fb0a75 + 3efc3cf commit 61a7ee0

File tree

1 file changed

+2
-118
lines changed

1 file changed

+2
-118
lines changed

Source/dump.f90

Lines changed: 2 additions & 118 deletions
Original file line numberDiff line numberDiff line change
@@ -1776,7 +1776,7 @@ SUBROUTINE WRITE_SMOKEVIEW_FILE
17761776
USE TRAN, ONLY: TRAN_TYPE,TRANS
17771777
USE MISC_FUNCTIONS, ONLY : ACCUMULATE_STRING
17781778
INTEGER :: N,NN,I,J,K,NM,NX,NY,NZ,NIN,NXL,NYL,NZL,COLOR_INDEX,IZERO,STATE_INDEX,SURF_INDEX,&
1779-
TYPE_INDEX,HI1,HI2,VI1,VI2,FACE_INDEX,VRGB(3),N_CVENT
1779+
TYPE_INDEX,HI1,HI2,VI1,VI2,VRGB(3),N_CVENT
17801780
INTEGER, ALLOCATABLE, DIMENSION(:,:,:) :: VENT_INDICES
17811781
REAL(EB) :: X1,Y1,Z1,X2,Y2,Z2,XX,YY,ZZ,PERT1(4),PERT2(4),XMIN,YMIN,ZMIN,XA,YA,ZA
17821782
TYPE SEGMENT_TYPE
@@ -2566,123 +2566,7 @@ SUBROUTINE WRITE_SMOKEVIEW_FILE
25662566
IF (VT%RADIUS>0._EB) N_CVENT=N_CVENT+1
25672567
ENDDO
25682568

2569-
! Create EXTERIOR_PATCHes with which Smokeview colors, textures, or contours exterior mesh boundaries.
2570-
2571-
ALLOCATE(M%EXTERIOR_PATCH(10*(6+N_VENT_TOTAL))) ; M%N_EXTERIOR_PATCH = 0
2572-
ALLOCATE(VENT_INDICES(MAX(M%IBAR,M%JBAR),MAX(M%JBAR,M%KBAR),6)) ; VENT_INDICES = 0
2573-
2574-
VENT_LOOP: DO N=1,M%N_VENT
2575-
2576-
VT=>M%VENTS(N)
2577-
2578-
IF (VT%RADIUS>0._EB) CYCLE VENT_LOOP
2579-
2580-
FACE_INDEX = 0
2581-
IF (VT%I1==0 .AND. VT%I2==0 ) FACE_INDEX = 1
2582-
IF (VT%I1==M%IBAR .AND. VT%I2==M%IBAR) FACE_INDEX = 2
2583-
IF (VT%J1==0 .AND. VT%J2==0 ) FACE_INDEX = 3
2584-
IF (VT%J1==M%JBAR .AND. VT%J2==M%JBAR) FACE_INDEX = 4
2585-
IF (VT%K1==0 .AND. VT%K2==0 ) FACE_INDEX = 5
2586-
IF (VT%K1==M%KBAR .AND. VT%K2==M%KBAR) FACE_INDEX = 6
2587-
2588-
SELECT CASE(FACE_INDEX) ! Get vent cell indices
2589-
CASE(0)
2590-
CYCLE VENT_LOOP
2591-
CASE(1:2)
2592-
HI1 = MAX(1,VT%J1+1)
2593-
HI2 = MIN(M%JBAR,VT%J2)
2594-
VI1 = MAX(1,VT%K1+1)
2595-
VI2 = MIN(M%KBAR,VT%K2)
2596-
CASE(3:4)
2597-
HI1 = MAX(1,VT%I1+1)
2598-
HI2 = MIN(M%IBAR,VT%I2)
2599-
VI1 = MAX(1,VT%K1+1)
2600-
VI2 = MIN(M%KBAR,VT%K2)
2601-
CASE(5:6)
2602-
HI1 = MAX(1,VT%I1+1)
2603-
HI2 = MIN(M%IBAR,VT%I2)
2604-
VI1 = MAX(1,VT%J1+1)
2605-
VI2 = MIN(M%JBAR,VT%J2)
2606-
END SELECT
2607-
2608-
IF (VT%BOUNDARY_TYPE==MIRROR_BOUNDARY .OR. &
2609-
VT%BOUNDARY_TYPE==OPEN_BOUNDARY .OR. &
2610-
VT%BOUNDARY_TYPE==PERIODIC_BOUNDARY .OR. &
2611-
VT%TYPE_INDICATOR==2) THEN ! Render this vent invisible in Smokeview
2612-
WHERE (VENT_INDICES(HI1:HI2,VI1:VI2,FACE_INDEX)==0) VENT_INDICES(HI1:HI2,VI1:VI2,FACE_INDEX) = -1
2613-
ELSE ! Tag user-specified vents
2614-
WHERE (VENT_INDICES(HI1:HI2,VI1:VI2,FACE_INDEX)==0) VENT_INDICES(HI1:HI2,VI1:VI2,FACE_INDEX) = N
2615-
IF (.NOT.VT%DRAW) THEN ! a dummy vent will be created and drawn rather than the actual vent.
2616-
VT%COLOR_INDICATOR = 8
2617-
VT%TYPE_INDICATOR = -2
2618-
VT%TRANSPARENCY = 0._EB
2619-
ENDIF
2620-
ENDIF
2621-
2622-
! Render GEOM vents using SURF properties (that is, do not draw GEOM vents in Smokeview)
2623-
2624-
IF (VT%GEOM) VT%TYPE_INDICATOR = -2
2625-
2626-
ENDDO VENT_LOOP
2627-
2628-
! Look for interpolated mesh boundaries and ensure that Smokeview leaves these blank (VENT_INDICES=-1).
2629-
2630-
DO K=1,M%KBAR
2631-
DO J=1,M%JBAR
2632-
YY = 0.5_EB*(M%Y(J)+M%Y(J-1))
2633-
ZZ = 0.5_EB*(M%Z(K)+M%Z(K-1))
2634-
XX = M%X(0) - 0.001_EB*M%DX(0)
2635-
CALL SEARCH_OTHER_MESHES(XX,YY,ZZ,NOM,IIO,JJO,KKO)
2636-
IF (NOM>0 .AND. VENT_INDICES(J,K,1)<1) VENT_INDICES(J,K,1)=-1
2637-
IF (M%WALL(M%CELL(M%CELL_INDEX(1,J,K))%WALL_INDEX(-1))%OBST_INDEX>0) VENT_INDICES(J,K,1)=-1
2638-
XX = M%X(M%IBAR) + 0.001_EB*M%DX(M%IBAR)
2639-
CALL SEARCH_OTHER_MESHES(XX,YY,ZZ,NOM,IIO,JJO,KKO)
2640-
IF (NOM>0 .AND. VENT_INDICES(J,K,2)<1) VENT_INDICES(J,K,2)=-1
2641-
IF (M%WALL(M%CELL(M%CELL_INDEX(M%IBAR,J,K))%WALL_INDEX(1))%OBST_INDEX>0) VENT_INDICES(J,K,2)=-1
2642-
ENDDO
2643-
ENDDO
2644-
2645-
DO K=1,M%KBAR
2646-
DO I=1,M%IBAR
2647-
XX = 0.5_EB*(M%X(I)+M%X(I-1))
2648-
ZZ = 0.5_EB*(M%Z(K)+M%Z(K-1))
2649-
YY = M%Y(0) - 0.001_EB*M%DY(0)
2650-
CALL SEARCH_OTHER_MESHES(XX,YY,ZZ,NOM,IIO,JJO,KKO)
2651-
IF (NOM>0 .AND. VENT_INDICES(I,K,3)<1) VENT_INDICES(I,K,3)=-1
2652-
IF (M%WALL(M%CELL(M%CELL_INDEX(I,1,K))%WALL_INDEX(-2))%OBST_INDEX>0) VENT_INDICES(I,K,3)=-1
2653-
YY = M%Y(M%JBAR) + 0.001_EB*M%DY(M%JBAR)
2654-
CALL SEARCH_OTHER_MESHES(XX,YY,ZZ,NOM,IIO,JJO,KKO)
2655-
IF (NOM>0 .AND. VENT_INDICES(I,K,4)<1) VENT_INDICES(I,K,4)=-1
2656-
IF (M%WALL(M%CELL(M%CELL_INDEX(I,M%JBAR,K))%WALL_INDEX(2))%OBST_INDEX>0) VENT_INDICES(I,K,4)=-1
2657-
ENDDO
2658-
ENDDO
2659-
2660-
DO J=1,M%JBAR
2661-
DO I=1,M%IBAR
2662-
XX = 0.5_EB*(M%X(I)+M%X(I-1))
2663-
YY = 0.5_EB*(M%Y(J)+M%Y(J-1))
2664-
ZZ = M%Z(0) - 0.001_EB*M%DZ(0)
2665-
CALL SEARCH_OTHER_MESHES(XX,YY,ZZ,NOM,IIO,JJO,KKO)
2666-
IF (NOM>0 .AND. VENT_INDICES(I,J,5)<1) VENT_INDICES(I,J,5)=-1
2667-
IF (M%WALL(M%CELL(M%CELL_INDEX(I,J,1))%WALL_INDEX(-3))%OBST_INDEX>0) VENT_INDICES(I,J,5)=-1
2668-
ZZ = M%Z(M%KBAR) + 0.001_EB*M%DZ(M%KBAR)
2669-
CALL SEARCH_OTHER_MESHES(XX,YY,ZZ,NOM,IIO,JJO,KKO)
2670-
IF (NOM>0 .AND. VENT_INDICES(I,J,6)<1) VENT_INDICES(I,J,6)=-1
2671-
IF (M%WALL(M%CELL(M%CELL_INDEX(I,J,M%KBAR))%WALL_INDEX(3))%OBST_INDEX>0) VENT_INDICES(I,J,6)=-1
2672-
ENDDO
2673-
ENDDO
2674-
2675-
! Create EXTERIOR_PATCHes to fill in areas around actual specified vents
2676-
2677-
CALL DUMMY_VENTS(1,M%JBAR,M%KBAR)
2678-
CALL DUMMY_VENTS(2,M%JBAR,M%KBAR)
2679-
CALL DUMMY_VENTS(3,M%IBAR,M%KBAR)
2680-
CALL DUMMY_VENTS(4,M%IBAR,M%KBAR)
2681-
CALL DUMMY_VENTS(5,M%IBAR,M%JBAR)
2682-
CALL DUMMY_VENTS(6,M%IBAR,M%JBAR)
2683-
2684-
DEALLOCATE(VENT_INDICES)
2685-
2569+
26862570
! Write out information about vents to Smokeview file
26872571

26882572
CALL EOL

0 commit comments

Comments
 (0)