Skip to content

Commit cc2b460

Browse files
authored
Merge pull request #14700 from cxp484/FireX
FireX : Merge with Firemodels/master
2 parents 4321e81 + 4f0b299 commit cc2b460

File tree

3 files changed

+23
-4
lines changed

3 files changed

+23
-4
lines changed

Manuals/FDS_User_Guide/FDS_User_Guide.tex

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9266,11 +9266,18 @@ \subsection*{Reading the Fields}
92669266
\end{lstlisting}
92679267
and FDS will read, for example, \ct{CHID_uvw_t1_m1.csv} through \ct{CHID_uvw_t1_m16.csv} in the order of the \ct{MESH} lines (note that a \ct{MULT} line for the meshes may also be used).
92689268

9269-
\section{Unfreezing the Initial Flow Field}
9269+
\subsection{Unfreezing the Initial Flow Field}
92709270
\label{info:FREZ}
92719271

9272-
It may be useful to allow the solid phase to respond to an established flow field at the start of a simulation. This could be accomplished with the normal restart functionality; however, this limits the number of changes that can be made to the model before a restart is made. The \ct{UNFREEZE_TIME} parameter on the \ct{MISC} line can be used for this purpose. When set, the initial flow field is frozen with the options \ct{FREEZE_VELOCITY} and \ct{SOLID_PHASE_ONLY} set until the simulation time exceeds \ct{UNFREEZE_TIME}.
9273-
9272+
It may be useful to allow the solid phase to respond to an established flow field at the start of a simulation. This could be accomplished with the normal restart functionality; however, this limits the number of changes that can be made to the model before a restart is made. The \ct{UNFREEZE_TIME} parameter on the \ct{MISC} line can be used for this purpose. When set, the initial flow field is frozen with the options \ct{FREEZE_VELOCITY}, \ct{SOLID_PHASE_ONLY}, and \ct{LOCK_TIME_STEP} set until the simulation time exceeds \ct{UNFREEZE_TIME}. It may also be useful to set the initial time step \ct{DT} to a larger value. It may be necessary to set \ct{LIMITING_DT_RATIO} to a lower value than the default if the fixed \ct{DT} while the flow field is frozen is much larger than that calculated by the stability conditions. An example configuration with a frozen flow field is shown below.
9273+
\begin{lstlisting}
9274+
&TIME DT=1.0, T_END=120.0, LIMITING_DT_RATIO=1e-6 /
9275+
&MISC UNFREEZE_TIME=90, /
9276+
&CSVF UVWFILE ='CHID_uvw_t1_m1.csv',
9277+
TMPFILE ='CHID_tmp_t1_m1.csv',
9278+
SPECFILE='CHID_spec_t1_m1.csv' /
9279+
\end{lstlisting}
9280+
The example will read in an initial flow field using the \ct{CSVF} files, then allow the solids to heat for 90 seconds at a time step of 1 seconds (90 time steps total). The flow field will then be unfrozen for the remaining 30 seconds of simulation time.
92749281

92759282
\section{Gravity}
92769283
\label{info:GVEC}

Source/main.f90

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -641,6 +641,7 @@ PROGRAM FDS
641641
IF (UNFREEZE_TIME > 0._EB) THEN
642642
FREEZE_VELOCITY=.TRUE.
643643
SOLID_PHASE_ONLY=.TRUE.
644+
LOCK_TIME_STEP=.TRUE.
644645
ENDIF
645646

646647
IF (MY_RANK==0 .AND. VERBOSE) CALL VERBOSE_PRINTOUT('Starting the time-stepping')
@@ -683,6 +684,16 @@ PROGRAM FDS
683684
IF ((UNFREEZE_TIME > 0._EB).AND.(T>UNFREEZE_TIME)) THEN
684685
FREEZE_VELOCITY=.FALSE.
685686
SOLID_PHASE_ONLY=.FALSE.
687+
LOCK_TIME_STEP=.FALSE.
688+
689+
UNFREEZE_DT_LOOP: DO NM=LOWER_MESH_INDEX,UPPER_MESH_INDEX
690+
CALL CHECK_STABILITY(DT,DT_NEW,T,NM)
691+
ENDDO UNFREEZE_DT_LOOP
692+
IF (N_MPI_PROCESSES>1) THEN
693+
CALL MPI_ALLGATHERV(MPI_IN_PLACE,0,MPI_DATATYPE_NULL,DT_NEW(1:NMESHES),&
694+
COUNTS,DISPLS,MPI_DOUBLE_PRECISION,MPI_COMM_WORLD,IERR)
695+
ENDIF
696+
DT = MINVAL(DT_NEW)
686697
ENDIF
687698

688699
!================================================================================================================================

Source/velo.f90

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ MODULE VELO
1212
PRIVATE
1313

1414
PUBLIC VELOCITY_PREDICTOR,VELOCITY_CORRECTOR,NO_FLUX,BAROCLINIC_CORRECTION,MATCH_VELOCITY,MATCH_VELOCITY_FLUX,&
15-
VELOCITY_BC,COMPUTE_VISCOSITY,VISCOSITY_BC,VELOCITY_FLUX,VELOCITY_FLUX_CYLINDRICAL
15+
VELOCITY_BC,COMPUTE_VISCOSITY,VISCOSITY_BC,VELOCITY_FLUX,VELOCITY_FLUX_CYLINDRICAL,&
16+
CHECK_STABILITY
1617

1718

1819
CONTAINS

0 commit comments

Comments
 (0)