diff --git a/Manuals/Bibliography/authors.tex b/Manuals/Bibliography/authors.tex index 1d4baa892c9..7ad5b8fb913 100644 --- a/Manuals/Bibliography/authors.tex +++ b/Manuals/Bibliography/authors.tex @@ -61,7 +61,7 @@ \chapter{About the Developers} \item[Simo Hostikka] is an associate professor of fire safety engineering at Aalto University School of Engineering, since January 2014. Before joining Aalto, he worked as a Principal Scientist and Team Leader at VTT Technical Research Centre of Finland. He received a master of science (technology) degree in 1997 and a doctorate in 2008 from the Department of Engineering Physics and Mathematics of the Helsinki University of Technology. He is the principal developer of the radiation and solid phase sub-models within FDS. -\item[Jason Floyd] is a Principle Research Engineer at the UL Research Institutes' Fire Safety Research Institute in Columbia, Maryland. He received a B.S. (1993), M.S (1995), and a Ph.D. (2000) from the Nuclear Engineering Program of the University of Maryland. After graduating, he was awarded a National Research Council Post-Doctoral Fellowship at the Building and Fire Research Laboratory of NIST. He is a principal developer of the combustion, control logic, aerosol, droplet evaporation, and HVAC sub-models within FDS. +\item[Jason Floyd] is a Principal Research Engineer at the UL Research Institutes' Fire Safety Research Institute in Columbia, Maryland. He received a B.S. (1993), M.S (1995), and a Ph.D. (2000) from the Nuclear Engineering Program of the University of Maryland. After graduating, he was awarded a National Research Council Post-Doctoral Fellowship at the Building and Fire Research Laboratory of NIST. He is a principal developer of the combustion, control logic, aerosol, droplet evaporation, and HVAC sub-models within FDS. \item[Randall McDermott] joined the Fire Research Division at NIST in 2008. He received a B.S.~from the University of Tulsa in Chemical Engineering in 1994 and a Ph.D.~from the University of Utah in 2005. His research interests include subgrid-scale models and numerical methods for large-eddy simulation, turbulent combustion, immersed boundary methods, and Lagrangian particle methods. diff --git a/Manuals/FDS_Technical_Reference_Guide/Solid_Chapter.tex b/Manuals/FDS_Technical_Reference_Guide/Solid_Chapter.tex index 36e361033f7..74a5aca2a49 100644 --- a/Manuals/FDS_Technical_Reference_Guide/Solid_Chapter.tex +++ b/Manuals/FDS_Technical_Reference_Guide/Solid_Chapter.tex @@ -121,7 +121,7 @@ \subsubsection{Empirical Natural/Forced Convection Model} 2 + 0.454 \, \hbox{Ra}^{1/4} & \hbox{Sphere} \end{array} \right. \ee -\footnotetext{The heat transfer coefficient for a vertical plate or cylinder is simplified to $h=1.31 \, (\Delta T)^{1/3}$~\cite{Holman:2} in cases where the back side of a solid obstruction is outside the computational domain and the gas temperature is assumed to be ambient. } +\footnotetext{The heat transfer coefficient for a vertical plate or cylinder is simplified to $h=1.31 \, (\Delta T)^{1/3}$~\cite{Holman:2} when the back side of a solid obstruction is outside the computational domain or \ct{BACKING='VOID'}, and the back side gas temperature is assumed to be ambient or is user-specified. } For forced convection, the Nusselt number takes the form: \be \NU_{\rm forced} = C_0 + \left( C_1 \, \RE^n - C_2 \right) \, \PR^m \quad ; \quad \RE = \frac{\rho |\bu| L}{\mu} \quad ; \quad m=1/3 diff --git a/Source/ccib.f90 b/Source/ccib.f90 index 324521b1e9f..6c4f6a6598e 100644 --- a/Source/ccib.f90 +++ b/Source/ccib.f90 @@ -15,6 +15,7 @@ MODULE CC_SCALARS USE MATH_FUNCTIONS, ONLY: GET_SCALAR_FACE_VALUE IMPLICIT NONE (TYPE,EXTERNAL) +PRIVATE ! Debug Flags: LOGICAL, PARAMETER :: DEBUG_CC_INTERPOLATION=.FALSE. ! IBM interpolation and forcing scheme. @@ -96,8 +97,6 @@ MODULE CC_SCALARS ! Baroclininc torque linking variables. REAL(EB), SAVE, ALLOCATABLE, DIMENSION(:) :: F_LINK,A_LINK -PRIVATE - PUBLIC :: ADD_CUTCELL_D_PBAR_DT, ADD_LINKEDCELL_D_PBAR_DT,ADD_CUTCELL_PSUM,ADD_LINKEDCELL_PSUM,& ADD_INPLACE_NNZ_H_WHLDOM,CALL_FOR_GLMAT,CALL_FROM_GLMAT_SETUP,& CCCOMPUTE_RADIATION,CC_DIVERGENCE_PART_1,CC_VEL_FACE_TO_SOLID_NODE,CC_BAROCLINIC_CORRECTION,& diff --git a/Source/chem.f90 b/Source/chem.f90 index d7d2cc2d327..2cf2f37c52c 100644 --- a/Source/chem.f90 +++ b/Source/chem.f90 @@ -18,6 +18,7 @@ MODULE CVODE_INTERFACE USE FSUNDIALS_CORE_MOD IMPLICIT NONE +PRIVATE TYPE :: USERDATA REAL(EB) :: ZETA0 ! initial unmixed fraction @@ -29,7 +30,7 @@ MODULE CVODE_INTERFACE LOGICAL :: DEBUG=.FALSE. REAL(EB), PARAMETER :: MIN_CHEM_TMP=200._EB -REAL(EB) :: CUR_CFD_TIME +REAL(EB), PUBLIC :: CUR_CFD_TIME PUBLIC CVODE_SERIAL diff --git a/Source/ctrl.f90 b/Source/ctrl.f90 index 1c35864927b..4d7d648a0d9 100644 --- a/Source/ctrl.f90 +++ b/Source/ctrl.f90 @@ -8,6 +8,9 @@ MODULE CONTROL_FUNCTIONS USE DEVICE_VARIABLES IMPLICIT NONE (TYPE,EXTERNAL) +PRIVATE + +PUBLIC UPDATE_CONTROLS,EVALUATE_CONTROL CONTAINS diff --git a/Source/fire.f90 b/Source/fire.f90 index f45e7cda151..dbf25dace89 100644 --- a/Source/fire.f90 +++ b/Source/fire.f90 @@ -12,18 +12,14 @@ MODULE FIRE #endif IMPLICIT NONE (TYPE,EXTERNAL) - - PRIVATE REAL(EB), ALLOCATABLE, DIMENSION(:) :: DZ_F0 REAL(EB) :: RRTMP0,MOLPCM3,T_CHEM_ODE, T_CHEM_COMM - - LOGICAL :: COMBUSTION_INIT=.FALSE. -!INTEGER :: I0,J0,K0, NM0 ! Variables needed for chemistry load distribution + REAL(EB), ALLOCATABLE, DIMENSION(:,:) :: REALS_TO_SEND_ARRAY, REALS_TO_RECV_ARRAY, RESULTS_TO_SEND_ARRAY, & RESULTS_TO_RECV_ARRAY INTEGER, ALLOCATABLE, DIMENSION(:) :: NCELLS_TO_SEND_ARRAY, NCELLS_TO_RECV_ARRAY, SEND_DISPS, REVC_DISPS, & @@ -32,7 +28,6 @@ MODULE FIRE INTEGER :: NVAR_TO_SEND INTEGER :: NVAR_TO_RECEIVE - PUBLIC COMBUSTION_LOAD_BALANCED,COMBUSTION_BC,CONDENSATION_EVAPORATION,GET_FLAME_TEMPERATURE CONTAINS diff --git a/Source/geom.f90 b/Source/geom.f90 index eaa0cd870b5..7f55affb609 100644 --- a/Source/geom.f90 +++ b/Source/geom.f90 @@ -19,6 +19,8 @@ MODULE COMPLEX_GEOMETRY #endif /* WITH_MKL */ IMPLICIT NONE (TYPE,EXTERNAL) +PRIVATE + CHARACTER(2*MESSAGE_LENGTH) :: MESSAGE !! --------------------------------------------------------------------------------- @@ -319,7 +321,6 @@ MODULE COMPLEX_GEOMETRY ! End Variable declaration for CC_IBM. ! --------------------------------------------------------------------------------- -PRIVATE PUBLIC :: BLOCK_CC_SOLID_EXTWALLCELLS,GEOFCT,CALL_FOR_GLMAT,CALL_FROM_GLMAT_SETUP,CCGUARD,CC_MATVEC_DEFINED,GEOMEPS,& DELTA_INT,DELTA_VERT,DEBUG_SET_CUTCELLS,DEBUG_WAIT,DIST_THRES,& GET_CARTCELL_CUTCELLS_TIME_INDEX,GET_CFACE_INDEX,GETU,& diff --git a/Source/hvac.f90 b/Source/hvac.f90 index 47ac5594959..aeac5f1829b 100644 --- a/Source/hvac.f90 +++ b/Source/hvac.f90 @@ -7,7 +7,6 @@ MODULE HVAC_ROUTINES USE PRECISION_PARAMETERS -USE GLOBAL_CONSTANTS USE MESH_POINTERS USE DEVICE_VARIABLES USE CONTROL_VARIABLES @@ -15,7 +14,6 @@ MODULE HVAC_ROUTINES USE MEMORY_FUNCTIONS, ONLY: ChkMemErr IMPLICIT NONE (TYPE,EXTERNAL) - PRIVATE REAL(EB) :: DT_HV !< Size of subtimestep used in HVAC solver @@ -74,6 +72,10 @@ MODULE HVAC_ROUTINES SUBROUTINE READ_HVAC USE MISC_FUNCTIONS, ONLY: SEARCH_CONTROLLER,GET_RAMP_INDEX +USE GLOBAL_CONSTANTS, ONLY: LU_INPUT,INPUT_FILE_LINE_NUMBER,STOP_STATUS,SETUP_STOP,HVAC_DEBUG,N_DUCTS,N_DUCTNODES,& + N_FILTERS,N_FANS,N_AIRCOILS,N_ZONE,N_SURF,HVAC_SOLVE,DUCT_NE,DUCT_DR,DUCTNODE_NE,DUCTNODE_DR,& + RHOA,TMPA,N_TRACKED_SPECIES,T_BEGIN,TANH_RAMP,TSQR_RAMP,HVAC_MASS_TRANSPORT,XS_MIN,YS_MIN,ZS_MIN,& + TMPM,NODE_Z_MIN,NODE_Z_MAX,T_USED,TAU_DEFAULT,HVAC_SOLVE,N_FANS,N_AIRCOILS INTEGER , PARAMETER :: MAX_DUCTS = 20 !< Maximum number of ducts connected to a node INTEGER :: IOS !< Used for returning the status of a READ statement INTEGER :: IZERO !< Used for returning the status of an ALLOCATE statement @@ -831,6 +833,9 @@ END SUBROUTINE READ_HVAC SUBROUTINE PROC_HVAC USE PHYSICAL_FUNCTIONS, ONLY: GET_ENTHALPY +USE GLOBAL_CONSTANTS, ONLY: N_TRACKED_SPECIES,N_DUCTNODES,N_DUCTS,HVAC_SOLVE,N_FANS,N_AIRCOILS,N_LAGRANGIAN_CLASSES,RSUM0,& + TMPA,RHOA,P_INF,NMESHES,PROCESS,MY_RANK,HVAC_SURF_INDEX,HVAC_BOUNDARY,PYROLYSIS_NONE,N_MPI_PROCESSES,& + STOP_STATUS,N_FILTERS,T_USED #ifdef WITHOUT_MPIF08 USE MPI #else @@ -1225,7 +1230,10 @@ END SUBROUTINE PROC_HVAC !< \brief Finds all connected ducts and nodes and hence number of ductruns + SUBROUTINE CONNECTION_CHECK + +USE GLOBAL_CONSTANTS, ONLY: N_DUCTNODES,N_CONNECTIVITY_INDICES,N_DUCTS INTEGER :: NN,NN3,ND LOGICAL :: NODE_CHECKED(N_DUCTNODES),NODE_CONNECTED(N_DUCTNODES) TYPE(DUCT_TYPE), POINTER :: DU @@ -1302,8 +1310,11 @@ END SUBROUTINE CONNECTION_CHECK !> \brief Initializes duct node properties for non-leakage ducts SUBROUTINE INIT_DUCT_NODE + USE PHYSICAL_FUNCTIONS, ONLY: GET_ENTHALPY USE MATH_FUNCTIONS, ONLY: EVALUATE_RAMP +USE GLOBAL_CONSTANTS, ONLY: N_TRACKED_SPECIES,N_DUCTNODES,STRATIFICATION,TMPA,I_RAMP_TMP0_Z,I_RAMP_P0_Z,RSUM0,P_INF,RHOA,N_INIT,& + T_USED REAL(EB) :: ZZ_GET(1:N_TRACKED_SPECIES) !< Species mass fraction array. REAL(EB) :: VF(1:N_TRACKED_SPECIES) !< Species volunme fraction array. REAL(EB) :: TNOW !< Current CPU time (s) used in computing length of time spent in HVAC routines. @@ -1372,6 +1383,9 @@ END SUBROUTINE INIT_DUCT_NODE !> \param FIRST_PASS Flag for the first call to the HVAC solver during a timestep, i.e. the first pressure iteration. SUBROUTINE HVAC_CALC(T,DT,FIRST_PASS) + +USE GLOBAL_CONSTANTS, ONLY: N_ZONE,N_DUCTS,CORRECTOR,OLD,NEW,N_DUCTNODES,HVAC_MASS_TRANSPORT,PREVIOUS,GUESS,HVAC_QFAN,P_INF,& + N_NETWORKS,N_AIRCOILS,T_USED INTEGER :: NNE,NN,ND REAL(EB), INTENT(IN) :: T,DT REAL(EB) :: TNOW !< Current CPU time (s) used in computing length of time spent in HVAC routines. @@ -1531,7 +1545,9 @@ END SUBROUTINE HVAC_CALC !> \param NNE Index indicating which HVAC network is being solved SUBROUTINE MATRIX_SOLVE(NNE) -USE MATH_FUNCTIONS,ONLY : GAUSSJ + +USE MATH_FUNCTIONS, ONLY: GAUSSJ +USE GLOBAL_CONSTANTS, ONLY: NEW INTEGER :: NNE,IERR,ND,NN REAL(EB), ALLOCATABLE, DIMENSION(:,:) :: LHS_GAUSSJ REAL(EB), ALLOCATABLE, DIMENSION(:) :: RHS_GAUSSJ @@ -1572,6 +1588,7 @@ END SUBROUTINE MATRIX_SOLVE SUBROUTINE HVAC_UPDATE(NNE,DT) USE PHYSICAL_FUNCTIONS, ONLY : GET_SPECIFIC_GAS_CONSTANT,GET_ENTHALPY,GET_TEMPERATURE +USE GLOBAL_CONSTANTS, ONLY: N_DUCTS,N_DUCTNODES,N_DUCTRUNS,N_TRACKED_SPECIES,HVAC_MASS_TRANSPORT,I_MAX_TEMP,CPBAR_Z,P_INF,NEW REAL(EB),INTENT(IN) :: DT INTEGER, INTENT(IN) :: NNE REAL(EB) :: CPTSUM,DU_DX,ETOT,MFLOW,MSUM,MTOT,TGUESS,VFLOW,ZZ_GET(1:N_TRACKED_SPECIES),& @@ -1906,7 +1923,7 @@ END SUBROUTINE HVAC_UPDATE !> \param NETWORK_INDEX Index indicating which HVAC network is being solved SUBROUTINE RHSNODE(NETWORK_INDEX) -USE GLOBAL_CONSTANTS +USE GLOBAL_CONSTANTS, ONLY: DUCTNODE_NE INTEGER, INTENT(IN)::NETWORK_INDEX INTEGER :: NN,ND, ARRAYLOC TYPE(NETWORK_TYPE), POINTER::NE @@ -1933,7 +1950,8 @@ END SUBROUTINE RHSNODE !> \param NETWORK_INDEX Index indicating which HVAC network is being solved SUBROUTINE LHSNODE(NETWORK_INDEX) -USE GLOBAL_CONSTANTS + +USE GLOBAL_CONSTANTS, ONLY: DUCTNODE_NE,DUCT_NE INTEGER, INTENT(IN)::NETWORK_INDEX INTEGER :: NN,ND, ARRAYLOC1,ARRAYLOC2 TYPE(NETWORK_TYPE), POINTER::NE @@ -1959,7 +1977,7 @@ END SUBROUTINE LHSNODE SUBROUTINE DPSTARCALC -USE GLOBAL_CONSTANTS +USE GLOBAL_CONSTANTS, ONLY: N_ZONE,PSUM,CONNECTED_ZONES,OLD,NEW INTEGER :: NN,IPZ,IOPZ TYPE(DUCT_TYPE), POINTER::DU TYPE(DUCTNODE_TYPE), POINTER::DN @@ -2005,7 +2023,7 @@ END SUBROUTINE DPSTARCALC SUBROUTINE RHSDUCT(NETWORK_INDEX) -USE GLOBAL_CONSTANTS +USE GLOBAL_CONSTANTS, ONLY: DUCT_NE,HVAC_LOCAL_PRESSURE,OLD,GAMMA,N_ZONE,STRATIFICATION,GVEC,PREVIOUS,GUESS INTEGER, INTENT(IN)::NETWORK_INDEX INTEGER :: ND, ARRAYLOC,IPZ REAL(EB) :: HEAD !< DUCT pressure head (Pa) @@ -2070,13 +2088,14 @@ END SUBROUTINE RHSDUCT !> \param NETWORK_INDEX Index indicating which HVAC network is being solved SUBROUTINE LHSDUCT(NETWORK_INDEX) -USE GLOBAL_CONSTANTS -INTEGER, INTENT(IN)::NETWORK_INDEX + +USE GLOBAL_CONSTANTS, ONLY: DUCT_NE,PREVIOUS,GUESS,DUCTNODE_NE,HVAC_LOCAL_PRESSURE,GAMMA +INTEGER, INTENT(IN) :: NETWORK_INDEX INTEGER :: NN,ND, ARRAYLOC1,ARRAYLOC2 -TYPE(NETWORK_TYPE), POINTER::NE -TYPE(DUCT_TYPE), POINTER::DU,DU2 -TYPE(DUCTNODE_TYPE), POINTER::DN,DN2 -TYPE(P_ZONE_TYPE), POINTER::PZ +TYPE(NETWORK_TYPE), POINTER :: NE +TYPE(DUCT_TYPE), POINTER :: DU,DU2 +TYPE(DUCTNODE_TYPE), POINTER :: DN,DN2 +TYPE(P_ZONE_TYPE), POINTER :: PZ NE => NETWORK(NETWORK_INDEX) @@ -2163,7 +2182,9 @@ END SUBROUTINE LHSDUCT !> \param ND Index indicating duct where fan is located SUBROUTINE UPDATE_FAN(T,ND) -USE MATH_FUNCTIONS, ONLY : EVALUATE_RAMP + +USE MATH_FUNCTIONS, ONLY: EVALUATE_RAMP +USE GLOBAL_CONSTANTS, ONLY: PREVIOUS,OLD,NEW INTEGER :: FAN_ITER,DR_INDEX,DR_NF,DR_DU INTEGER, INTENT(IN) :: ND REAL(EB), INTENT(IN) :: T @@ -2278,6 +2299,7 @@ SUBROUTINE HVAC_BC_IN(NM) USE PHYSICAL_FUNCTIONS, ONLY: GET_ENTHALPY USE COMPLEX_GEOMETRY, ONLY: CC_FGSC, CC_SOLID +USE GLOBAL_CONSTANTS, ONLY: N_TRACKED_SPECIES,PREDICTOR,NULL_BOUNDARY,T_USED INTEGER, INTENT(IN) :: NM INTEGER :: II,JJ,KK,IW,IOR,IZ1,IZ2,ICF INTEGER, POINTER :: NODE_INDEX,VENT_INDEX @@ -2348,6 +2370,8 @@ SUBROUTINE HVAC_BC_IN(NM) SUBROUTINE INITIALIZE_HVAC +USE GLOBAL_CONSTANTS, ONLY: CC_IBM,HVAC_LOCAL_PRESSURE,P_INF + IF (CELL(CELL_INDEX(BC%IIG,BC%JJG,BC%KKG))%SOLID) RETURN IF (CC_IBM .AND. WALL_FLAG .AND. VENT_INDEX > 0) THEN IF (FCVAR(BC%IIG,BC%JJG,BC%KKG,CC_FGSC,ABS(VENTS(VENT_INDEX)%IOR)) == CC_SOLID) RETURN @@ -2355,7 +2379,6 @@ SUBROUTINE INITIALIZE_HVAC ZONE_LEAK_IF: IF (ALL(SF%LEAK_PATH < 0)) THEN - IF (WALL_FLAG) THEN IF (VENT_INDEX == 0) RETURN IF (VENTS(VENT_INDEX)%NODE_INDEX < 0) RETURN @@ -2514,12 +2537,14 @@ END SUBROUTINE INITIALIZE_HVAC END SUBROUTINE HVAC_BC_IN + !> \brief Determines what ducts are "fixed"; i.e. they have been given fixed volume or mass flow (including fixed volume fan) -!> !> \param T Current time (s) SUBROUTINE DETERMINE_FIXED_ELEMENTS(T,CHANGE) + USE MATH_FUNCTIONS,ONLY:EVALUATE_RAMP +USE GLOBAL_CONSTANTS, ONLY: N_DUCTS,NEW,N_DUCTNODES INTEGER:: NN,ND, COUNTER REAL(EB), INTENT(IN):: T LOGICAL, INTENT(INOUT) :: CHANGE @@ -2638,6 +2663,8 @@ END SUBROUTINE DETERMINE_FIXED_ELEMENTS !> \param T Current time (s) SUBROUTINE FIND_NETWORKS(CHANGE,T) + +USE GLOBAL_CONSTANTS, ONLY: N_DUCTS,N_DUCTNODES,N_ZONE,CONNECTED_ZONES,N_NETWORKS,DUCT_NE,DUCTNODE_NE INTEGER:: NZ,NN,ND,DUCT_COUNTER(N_DUCTS),NODE_COUNTER(N_DUCTNODES),COUNTER,COUNTER2,ZONE_COUNTER(N_ZONE),& CONNECTED_ZONES2(0:N_ZONE,0:N_ZONE),NETWORK_DCOUNTER(N_DUCTS),NETWORK_NCOUNTER(N_DUCTS),RENUMBER(N_DUCTNODES+N_ZONE) LOGICAL, INTENT(OUT) :: CHANGE @@ -2774,6 +2801,8 @@ END SUBROUTINE FIND_NETWORKS !> \brief For each HVAC network the routine defines which ducts and nodes belowng to which element of the HVAC matrix SUBROUTINE SETUP_SOLUTION_POINTERS + +USE GLOBAL_CONSTANTS, ONLY: N_NETWORKS INTEGER:: NNE,NN,ND,COUNTER TYPE(DUCT_TYPE), POINTER :: DU TYPE(DUCTNODE_TYPE), POINTER :: DN @@ -2806,8 +2835,10 @@ END SUBROUTINE SETUP_SOLUTION_POINTERS !> \param NNE Index indicating which HVAC network is being solved SUBROUTINE UPDATE_LOSS(T,DT,NNE) -USE PHYSICAL_FUNCTIONS,ONLY:GET_VISCOSITY -USE MATH_FUNCTIONS,ONLY:EVALUATE_RAMP + +USE PHYSICAL_FUNCTIONS, ONLY: GET_VISCOSITY +USE MATH_FUNCTIONS, ONLY: EVALUATE_RAMP +USE GLOBAL_CONSTANTS, ONLY: N_TRACKED_SPECIES,PREVIOUS REAL(EB) :: FRICTION_FACTOR,LOSS_SUM,ZZ_GET(1:N_TRACKED_SPECIES),VISCOSITY,AREA,VFLOW INTEGER, INTENT(IN) :: NNE REAL(EB), INTENT(IN) :: T,DT @@ -2959,6 +2990,8 @@ END FUNCTION COMPUTE_FRICTION_FACTOR !> \param NNE Index indicating which HVAC network is being solved SUBROUTINE SET_GUESS(NNE,T) + +USE GLOBAL_CONSTANTS, ONLY: GUESS,PREVIOUS,NEW INTEGER, INTENT(IN) :: NNE REAL(EB), INTENT(IN):: T INTEGER :: ND @@ -2994,6 +3027,7 @@ END SUBROUTINE SET_GUESS SUBROUTINE SET_DONOR(NNE) +USE GLOBAL_CONSTANTS, ONLY: PREVIOUS INTEGER :: ND,NN INTEGER, INTENT(IN) :: NNE REAL(EB) :: RHOLAST,TMPLAST,FVAL,OMFVAL,ITERFRAC @@ -3053,6 +3087,8 @@ END SUBROUTINE SET_DONOR !> \param NNE Index indicating which HVAC network is being solved SUBROUTINE CONVERGENCE_CHECK(NNE) + +USE GLOBAL_CONSTANTS, ONLY: PREVIOUS,NEW INTEGER, INTENT(IN) :: NNE INTEGER :: NN, ND, COUNT LOGICAL :: CONVERGED @@ -3121,6 +3157,8 @@ SUBROUTINE COLLAPSE_HVAC_BC(T) ! Takes the MPI gathered mesh array of HVAC boundary conditions and updates the DUCTNODE boundary condition values. USE PHYSICAL_FUNCTIONS, ONLY : GET_SPECIFIC_GAS_CONSTANT,GET_ENTHALPY,GET_TEMPERATURE USE MATH_FUNCTIONS, ONLY : EVALUATE_RAMP +USE GLOBAL_CONSTANTS, ONLY: N_TRACKED_SPECIES,N_DUCTNODES,CONNECTED_ZONES,STRATIFICATION,TMPA,I_RAMP_TMP0_Z,I_RAMP_P0_Z,& + RSUM0,RHOA,P_INF,T_BEGIN,HVAC_PRES_RELAX,N_DUCTS,T_USED REAL(EB), INTENT(IN) :: T REAL(EB) :: TNOW !< Current CPU time (s) used in computing length of time spent in HVAC routines. INTEGER:: NN,NS,ND @@ -3239,6 +3277,8 @@ END SUBROUTINE COLLAPSE_HVAC_BC !> \brief Sets current iteration values for duct nodes connected to a vent to the bondary condition value SUBROUTINE SET_INIT_HVAC + +USE GLOBAL_CONSTANTS, ONLY: N_DUCTNODES,N_DUCTS,HVAC_MASS_TRANSPORT_CELL_L,N_TRACKED_SPECIES,RHOA,TMPA,N_ZONE,T_USED REAL(EB) :: TNOW !< Current CPU time (s) used in computing length of time spent in HVAC routines. REAL(EB) :: XYZ1(3), XYZ2(3) INTEGER:: ND,NN,NW,NC @@ -3319,8 +3359,10 @@ END SUBROUTINE SET_INIT_HVAC !> \brief Initializes cell densities, temperatures, specific heats and species for discretized ducts SUBROUTINE SET_INIT_HVAC_MASS_TRANSPORT + USE MATH_FUNCTIONS, ONLY: EVALUATE_RAMP USE PHYSICAL_FUNCTIONS, ONLY: GET_ENTHALPY,GET_SPECIFIC_GAS_CONSTANT +USE GLOBAL_CONSTANTS, ONLY: N_TRACKED_SPECIES,N_DUCTS REAL(EB) :: P1,P2,T1,T2,ZZ1(1:N_TRACKED_SPECIES),ZZ2(1:N_TRACKED_SPECIES),FAC,RSUM INTEGER :: ND,NC REAL(EB) :: ZZ_GET(1:N_TRACKED_SPECIES),HGAS @@ -3364,6 +3406,7 @@ END SUBROUTINE SET_INIT_HVAC_MASS_TRANSPORT SUBROUTINE LEAKAGE_HVAC USE PHYSICAL_FUNCTIONS, ONLY: GET_ENTHALPY +USE GLOBAL_CONSTANTS, ONLY: N_TRACKED_SPECIES,N_ZONE,N_DUCTS,N_DUCTNODES,RHOA,TMPA,RSUM0,T_USED REAL(EB) :: ZZ_GET(1:N_TRACKED_SPECIES),HGAS,TNOW INTEGER :: I_DUCT,I_DUCTNODE,NZ1,NZ2 TYPE (DUCTNODE_TYPE), POINTER:: DN1,DN2 @@ -3447,8 +3490,9 @@ END SUBROUTINE LEAKAGE_HVAC !> \param NODE_INDEX Index of a node containing a filter SUBROUTINE FILTER_UPDATE(DT,NODE_INDEX) -!Updates filter loss and loading solution + USE MATH_FUNCTIONS,ONLY:EVALUATE_RAMP +USE GLOBAL_CONSTANTS, ONLY: PREVIOUS INTEGER,INTENT(IN)::NODE_INDEX REAL(EB), INTENT(IN) :: DT REAL(EB) :: TOTAL_LOADING @@ -3491,6 +3535,8 @@ END SUBROUTINE FILTER_UPDATE !> \param T Current time (s) SUBROUTINE COIL_UPDATE(T) + +USE GLOBAL_CONSTANTS, ONLY: N_DUCTS,NEW REAL(EB), INTENT(IN) :: T INTEGER :: ND TYPE(DUCT_TYPE),POINTER::DU @@ -3533,8 +3579,10 @@ END SUBROUTINE COIL_UPDATE !> \param AREA_D Duct area (m2) SUBROUTINE CALC_COIL_Q(AC_INDEX,COIL_Q,TSI,VEL_D,TMP_D,ZZ_D,RHO_D,CP_D,AREA_D) -USE MATH_FUNCTIONS, ONLY : EVALUATE_RAMP -USE PHYSICAL_FUNCTIONS, ONLY : GET_SPECIFIC_HEAT, GET_AVERAGE_SPECIFIC_HEAT, GET_ENTHALPY + +USE MATH_FUNCTIONS, ONLY: EVALUATE_RAMP +USE PHYSICAL_FUNCTIONS, ONLY: GET_SPECIFIC_HEAT, GET_AVERAGE_SPECIFIC_HEAT, GET_ENTHALPY +USE GLOBAL_CONSTANTS, ONLY: N_TRACKED_SPECIES,I_MAX_TEMP INTEGER, INTENT(IN) :: AC_INDEX REAL(EB), INTENT(IN) :: TSI,VEL_D,TMP_D,ZZ_D(1:N_TRACKED_SPECIES),RHO_D,CP_D,AREA_D REAL(EB), INTENT(INOUT) :: COIL_Q @@ -3590,6 +3638,7 @@ END SUBROUTINE CALC_COIL_Q SUBROUTINE ADJUST_LEAKAGE_AREA +USE GLOBAL_CONSTANTS, ONLY: N_DUCTS INTEGER :: ND REAL(EB) :: N,DELTA_P,DELTA_P_REF,C_D TYPE(DUCT_TYPE), POINTER :: DU @@ -3617,7 +3666,9 @@ END SUBROUTINE ADJUST_LEAKAGE_AREA !> \param DT Current time step (s) SUBROUTINE UPDATE_HVAC_MASS_TRANSPORT(DT,NR) + USE PHYSICAL_FUNCTIONS,ONLY: GET_TEMPERATURE, GET_ENTHALPY +USE GLOBAL_CONSTANTS, ONLY: N_TRACKED_SPECIES,NEW REAL(EB), INTENT(IN) :: DT INTEGER, INTENT(IN) :: NR INTEGER :: N_SUBSTEPS,ND,NS,NC,MAX_CELLS @@ -3700,6 +3751,8 @@ END SUBROUTINE UPDATE_HVAC_MASS_TRANSPORT !> \brief Checks duct network for minimal loss defintions SUBROUTINE EXAMINE_LOSSES + +USE GLOBAL_CONSTANTS, ONLY: N_DUCTNODES,N_DUCTS INTEGER :: ND, ND2, ND3, NN, F_COUNTER LOGICAL :: CHANGE LOGICAL :: LOSS_D(N_DUCTS,2),LOSS_N(N_DUCTNODES),FIXED_D(N_DUCTS) @@ -4015,6 +4068,8 @@ END SUBROUTINE EXAMINE_LOSSES !> \param T Current simulation time (s) SUBROUTINE HVAC_QFAN_CALC(T) + +USE GLOBAL_CONSTANTS, ONLY: N_DUCTRUNS,GUESS,N_AIRCOILS,PREVIOUS,OLD,NEW REAL(EB), INTENT(IN) :: T INTEGER :: NR,NF TYPE(DUCTRUN_TYPE), POINTER :: DR @@ -4078,6 +4133,8 @@ END SUBROUTINE HVAC_QFAN_CALC !> \param NF Index indicating which ductrun fan is being solved SUBROUTINE SET_GUESS_QFAN(DUCTRUN_INDEX,NF) + +USE GLOBAL_CONSTANTS, ONLY: GUESS,PREVIOUS,NEW INTEGER, INTENT(IN) :: DUCTRUN_INDEX,NF INTEGER :: ND TYPE(DUCTRUN_TYPE), POINTER :: DR @@ -4128,7 +4185,9 @@ END SUBROUTINE QFAN_SIMPLE !> \brief Finds "duct runs"; being ductnodes and ducts directly (via HVAC components) connected to one another SUBROUTINE FIND_DUCTRUNS(CHANGE) -USE PHYSICAL_FUNCTIONS, ONLY : GET_ENTHALPY + +USE PHYSICAL_FUNCTIONS, ONLY: GET_ENTHALPY +USE GLOBAL_CONSTANTS, ONLY: N_DUCTS,N_DUCTNODES,N_TRACKED_SPECIES,N_DUCTRUNS,P_INF,N_DUCTRUNS,HVAC_QFAN,TMPA,RHOA,OLD LOGICAL, INTENT(IN) :: CHANGE INTEGER :: NN,NR,NF,NN3,ND,DUCT_COUNTER(N_DUCTS),NODE_COUNTER(N_DUCTNODES),& DR_DUCTS(N_DUCTS),DR_DUCTNODES(N_DUCTS),DUCTRUN_MAP(N_DUCTS),DR_INDEX @@ -4383,7 +4442,9 @@ END SUBROUTINE FIND_DUCTRUNS !> \param NF Index indicating which HVAC ductrun fan is being solved SUBROUTINE MATRIX_SOLVE_QFAN(DUCTRUN_INDEX,NF) + USE MATH_FUNCTIONS,ONLY : GAUSSJ +USE GLOBAL_CONSTANTS, ONLY: NEW INTEGER,INTENT(IN) :: DUCTRUN_INDEX,NF INTEGER :: IERR REAL(EB), ALLOCATABLE, DIMENSION(:,:) :: LHS_GAUSSJ @@ -4412,12 +4473,12 @@ END SUBROUTINE MATRIX_SOLVE_QFAN !> \param DUCTRUN_INDEX Index indicating which HVAC ductrun is being solved SUBROUTINE RHSNODE_QFAN(DUCTRUN_INDEX) -USE GLOBAL_CONSTANTS -INTEGER, INTENT(IN)::DUCTRUN_INDEX + +INTEGER, INTENT(IN) :: DUCTRUN_INDEX INTEGER :: NN,ND -TYPE(DUCTRUN_TYPE), POINTER::DR -TYPE(DUCT_TYPE), POINTER::DU -TYPE(DUCTNODE_TYPE), POINTER::DN +TYPE(DUCTRUN_TYPE), POINTER :: DR +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(DUCTNODE_TYPE), POINTER :: DN DR => DUCTRUN(DUCTRUN_INDEX) DO NN = 1, DR%N_M_DUCTNODES @@ -4436,12 +4497,12 @@ END SUBROUTINE RHSNODE_QFAN !> \param NF Index indicating which ductrun fan is being solved SUBROUTINE LHSNODE_QFAN(DUCTRUN_INDEX,NF) -USE GLOBAL_CONSTANTS -INTEGER, INTENT(IN)::DUCTRUN_INDEX,NF + +INTEGER, INTENT(IN) :: DUCTRUN_INDEX,NF INTEGER :: NN,ND,ARRAYLOC -TYPE(DUCTRUN_TYPE), POINTER::DR -TYPE(DUCT_TYPE), POINTER::DU -TYPE(DUCTNODE_TYPE), POINTER::DN +TYPE(DUCTRUN_TYPE), POINTER :: DR +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(DUCTNODE_TYPE), POINTER :: DN DR => DUCTRUN(DUCTRUN_INDEX) DO NN = 1, DR%N_M_DUCTNODES @@ -4464,7 +4525,7 @@ END SUBROUTINE LHSNODE_QFAN SUBROUTINE RHSDUCT_QFAN(DUCTRUN_INDEX,NF,T) -USE GLOBAL_CONSTANTS +USE GLOBAL_CONSTANTS, ONLY: HVAC_LOCAL_PRESSURE,OLD,GAMMA,STRATIFICATION,GVEC,PREVIOUS,GUESS INTEGER, INTENT(IN) :: DUCTRUN_INDEX,NF REAL(EB), INTENT(IN) :: T INTEGER :: ND @@ -4522,12 +4583,13 @@ END SUBROUTINE RHSDUCT_QFAN !> \param NF Index indicating which ductrun fan is being solved SUBROUTINE LHSDUCT_QFAN(DUCTRUN_INDEX,NF) -USE GLOBAL_CONSTANTS -INTEGER, INTENT(IN)::DUCTRUN_INDEX,NF + +USE GLOBAL_CONSTANTS, ONLY: PREVIOUS,GUESS,HVAC_LOCAL_PRESSURE,GAMMA +INTEGER, INTENT(IN) :: DUCTRUN_INDEX,NF INTEGER :: ND -TYPE(DUCTRUN_TYPE), POINTER::DR -TYPE(DUCT_TYPE), POINTER::DU -TYPE(DUCTNODE_TYPE), POINTER::DN +TYPE(DUCTRUN_TYPE), POINTER :: DR +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(DUCTNODE_TYPE), POINTER :: DN DR => DUCTRUN(DUCTRUN_INDEX) @@ -4573,6 +4635,8 @@ END FUNCTION FAN_MAX !> \param NF Index indicating which HVAC ductrun fan is being solved SUBROUTINE CONVERGENCE_CHECK_QFAN(DUCTRUN_INDEX,NF) + +USE GLOBAL_CONSTANTS, ONLY: PREVIOUS,NEW INTEGER, INTENT(IN) :: DUCTRUN_INDEX,NF INTEGER :: NN, ND, COUNT REAL(EB) :: MSUM,MTOT,MFLOW,VEL @@ -4626,8 +4690,10 @@ END SUBROUTINE CONVERGENCE_CHECK_QFAN !> \param T Current time (s) SUBROUTINE COIL_UPDATE_QFAN(T,DUCTRUN_INDEX,NF) + USE MATH_FUNCTIONS, ONLY : EVALUATE_RAMP USE PHYSICAL_FUNCTIONS, ONLY : GET_SPECIFIC_HEAT, GET_AVERAGE_SPECIFIC_HEAT, GET_ENTHALPY +USE GLOBAL_CONSTANTS, ONLY: N_TRACKED_SPECIES,OLD,NEW INTEGER, INTENT(IN) :: DUCTRUN_INDEX,NF REAL(EB), INTENT(IN) :: T REAL(EB) :: COIL_ON_TIME,DVEL @@ -4672,8 +4738,10 @@ END SUBROUTINE COIL_UPDATE_QFAN !> \param NF Index indicating which HVAC ductrun dan is being solved SUBROUTINE UPDATE_LOSS_QFAN(T,DUCTRUN_INDEX,NF) -USE PHYSICAL_FUNCTIONS,ONLY:GET_VISCOSITY -USE MATH_FUNCTIONS,ONLY:EVALUATE_RAMP + +USE PHYSICAL_FUNCTIONS, ONLY: GET_VISCOSITY +USE MATH_FUNCTIONS, ONLY: EVALUATE_RAMP +USE GLOBAL_CONSTANTS, ONLY: N_TRACKED_SPECIES,PREVIOUS,OLD,NEW REAL(EB) :: FRICTION_FACTOR,LOSS_SUM,ZZ_GET(1:N_TRACKED_SPECIES),VISCOSITY,VFLOW,AREA,DVEL INTEGER, INTENT(IN) :: DUCTRUN_INDEX,NF REAL(EB), INTENT(IN) :: T @@ -4849,6 +4917,7 @@ END SUBROUTINE UPDATE_LOSS_QFAN SUBROUTINE SET_DONOR_QFAN(DUCTRUN_INDEX,NF) +USE GLOBAL_CONSTANTS, ONLY: NEW INTEGER :: ND,NN INTEGER, INTENT(IN) :: DUCTRUN_INDEX,NF REAL(EB) :: DVEL @@ -4926,7 +4995,8 @@ END SUBROUTINE SET_DONOR_QFAN SUBROUTINE HVAC_UPDATE_QFAN(DUCTRUN_INDEX,NF) -USE PHYSICAL_FUNCTIONS, ONLY : GET_TEMPERATURE,GET_SPECIFIC_GAS_CONSTANT,GET_ENTHALPY +USE PHYSICAL_FUNCTIONS, ONLY: GET_TEMPERATURE,GET_SPECIFIC_GAS_CONSTANT,GET_ENTHALPY +USE GLOBAL_CONSTANTS, ONLY: N_TRACKED_SPECIES,N_DUCTS,N_DUCTNODES,STRATIFICATION,GVEC,P_INF,NEW REAL(EB) :: CPTSUM,ETOT,MTOT,TGUESS,VFLOW,ZZ_GET(1:N_TRACKED_SPECIES),& ZZTOT(1:N_TRACKED_SPECIES),HGAS,RSUM,DVEL INTEGER, INTENT(IN) :: DUCTRUN_INDEX,NF @@ -5073,8 +5143,9 @@ END SUBROUTINE HVAC_UPDATE_QFAN !> \brief Define the index and other properties of output quantities SUBROUTINE GET_QUANTITY_INDEX(SMOKEVIEW_LABEL,SMOKEVIEW_BAR_LABEL,OUTPUT_INDEX,Y_INDEX,Z_INDEX,UNITS,QUANTITY,SPEC_ID) + USE MISC_FUNCTIONS, ONLY: GET_SPEC_OR_SMIX_INDEX -USE OUTPUT_DATA +USE OUTPUT_DATA, ONLY: OUTPUT_QUANTITY CHARACTER(*), INTENT(INOUT) :: QUANTITY CHARACTER(*), INTENT(OUT) :: SMOKEVIEW_LABEL,SMOKEVIEW_BAR_LABEL,UNITS CHARACTER(*), INTENT(IN) :: SPEC_ID diff --git a/Source/init.f90 b/Source/init.f90 index f53548cbd9e..46912a85a91 100644 --- a/Source/init.f90 +++ b/Source/init.f90 @@ -11,7 +11,6 @@ MODULE INIT USE DEVICE_VARIABLES IMPLICIT NONE (TYPE,EXTERNAL) - PRIVATE PUBLIC INITIALIZE_WALL_ARRAY,INITIALIZE_ATMOSPHERE,INITIALIZE_MESH_VARIABLES_1,INITIALIZE_MESH_VARIABLES_2,& diff --git a/Source/main.f90 b/Source/main.f90 index 8c4bc37910d..273d0159c6e 100644 --- a/Source/main.f90 +++ b/Source/main.f90 @@ -21,7 +21,9 @@ PROGRAM FDS USE RADCONS, ONLY : DLN USE MISC_FUNCTIONS, ONLY : WRITE_SUMMARY_INFO,VERBOSE_PRINTOUT USE OUTPUT_DATA -USE MEMORY_FUNCTIONS +USE MEMORY_FUNCTIONS, ONLY: EXCHANGE_GEOMETRY_INFO,CHKMEMERR,ALLOCATE_STORAGE,PACK_PARTICLE,& + NULLIFY_PARTICLE,PACK_WALL,REALLOCATE_P_ZONE,REALLOCATE_CELL,REALLOCATE_STORAGE_ARRAYS,& + RE_ALLOCATE_STRINGS,PACK_THIN_WALL USE HVAC_ROUTINES USE COMP_FUNCTIONS, ONLY : CURRENT_TIME,INITIALIZE_OUTPUT_CLOCKS,READ_EXTERNAL_FILE,GET_FILE_NUMBER USE DEVICE_VARIABLES @@ -1199,6 +1201,7 @@ END SUBROUTINE CHECK_MPI SUBROUTINE MPI_INITIALIZATION_CHORES(TASK_NUMBER) +USE CONTROL_VARIABLES, ONLY: N_CTRL INTEGER, INTENT(IN) :: TASK_NUMBER #ifdef WITHOUT_MPIF08 INTEGER, ALLOCATABLE, DIMENSION(:) :: REQ0,REQ0DUM @@ -3939,6 +3942,7 @@ END SUBROUTINE DUMP_TIMERS SUBROUTINE WRITE_STRINGS +USE CONTROL_VARIABLES, ONLY: CONTROL INTEGER :: N,NOM,N_STRINGS_DUM CHARACTER(:), ALLOCATABLE :: STRING_BUF INTEGER, PARAMETER :: PADDING = 256 @@ -4368,6 +4372,7 @@ END SUBROUTINE EXCHANGE_GLOBAL_OUTPUTS SUBROUTINE DUMP_GLOBAL_OUTPUTS +USE CONTROL_VARIABLES, ONLY: N_CTRL,CONTROL REAL(EB) :: TNOW TYPE(DEVICE_TYPE), POINTER :: DV @@ -4799,6 +4804,7 @@ END SUBROUTINE EXCHANGE_HVAC_SOLUTION SUBROUTINE EXCHANGE_EXTERNAL +USE CONTROL_VARIABLES, ONLY: N_CTRL REAL(EB) :: TNOW TNOW = CURRENT_TIME() diff --git a/Source/pois.f90 b/Source/pois.f90 index 8de04679949..9f435f60f5d 100644 --- a/Source/pois.f90 +++ b/Source/pois.f90 @@ -1,13 +1,11 @@ -MODULE POIS - -! CODE CONVERTED USING TO_F90 BY ALAN MILLER -! DATE: 2006-01-18 TIME: 13:48:46 +!> \brief Fast-Fourier transfer (FFT) Poisson pressure solver, Crayfishpak -! POISSON SOLVER ROUTINES +MODULE POIS USE PRECISION_PARAMETERS IMPLICIT NONE (TYPE,EXTERNAL) PRIVATE + REAL(EB) SCALE INTEGER :: KAPPA,NMAX,IKPWR LOGICAL :: TPOSE,NOCOPY,OUTARY diff --git a/Source/prop.f90 b/Source/prop.f90 index 0b6fd4d28e7..bd71beb0994 100644 --- a/Source/prop.f90 +++ b/Source/prop.f90 @@ -1,6 +1,7 @@ !>brief Predefined gas and liquid thermophysical properties MODULE THERMO_PROPS + USE PRECISION_PARAMETERS IMPLICIT NONE @@ -7596,6 +7597,7 @@ END SUBROUTINE DEFINE_THERMO_PROPS END MODULE THERMO_PROPS + MODULE QREF_DATA USE PRECISION_PARAMETERS IMPLICIT NONE @@ -8930,4 +8932,4 @@ SUBROUTINE DEFINE_QREF_ARRAYS END SUBROUTINE DEFINE_QREF_ARRAYS END MODULE QREF_DATA - \ No newline at end of file + diff --git a/Source/radi.f90 b/Source/radi.f90 index dd0bbfb31ca..093fe41cbb9 100644 --- a/Source/radi.f90 +++ b/Source/radi.f90 @@ -2749,6 +2749,7 @@ MODULE RAD USE MESH_POINTERS USE MESH_VARIABLES USE RADCONS +USE RADCAL_VAR IMPLICIT NONE (TYPE,EXTERNAL) PRIVATE diff --git a/Source/rcal.f90 b/Source/rcal.f90 index fb9d9924526..e6f085aa3a7 100644 --- a/Source/rcal.f90 +++ b/Source/rcal.f90 @@ -191,8 +191,9 @@ MODULE RADCAL_CALC USE RADCAL_VAR IMPLICIT NONE (TYPE,EXTERNAL) +PRIVATE -PUBLIC INIT_RADCAL,RCALLOC,RCDEALLOC,PLANCK,SUB_RADCAL +PUBLIC INIT_RADCAL,RCALLOC,RCDEALLOC,RCDEALLOC2,PLANCK,SUB_RADCAL CONTAINS diff --git a/Source/read.f90 b/Source/read.f90 index 57b9fff9bb9..8e989779cd2 100644 --- a/Source/read.f90 +++ b/Source/read.f90 @@ -17230,7 +17230,6 @@ END SUBROUTINE GET_PROPERTY_INDEX SUBROUTINE READ_CSVF -USE OUTPUT_DATA CHARACTER(FORMULA_LENGTH) :: SPECFILE,SPECFILE_BASE,SPECFILE_NM,TMPFILE,TMPFILE_BASE,TMPFILE_NM,UVWFILE,UVWFILE_BASE,UVWFILE_NM INTEGER :: N_CSVF,NM,STRLEN NAMELIST /CSVF/ SPECFILE,TMPFILE,UVWFILE diff --git a/Source/soot.f90 b/Source/soot.f90 index cf87102abe0..769f76a7e4c 100644 --- a/Source/soot.f90 +++ b/Source/soot.f90 @@ -5,8 +5,9 @@ MODULE SOOT_ROUTINES USE GLOBAL_CONSTANTS, ONLY: N_PARTICLE_BINS, MIN_PARTICLE_DIAMETER, MAX_PARTICLE_DIAMETER, K_BOLTZMANN, & N_TRACKED_SPECIES, GRAV, AGGLOMERATION_SMIX_INDEX, AGGLOMERATION_SPEC_INDEX, N_AGGLOMERATION_SPECIES IMPLICIT NONE (TYPE,EXTERNAL) +PRIVATE -PUBLIC CALC_AGGLOMERATION, INITIALIZE_AGGLOMERATION,SETTLING_VELOCITY,PARTICLE_RADIUS, SOOT_SURFACE_OXIDATION +PUBLIC CALC_AGGLOMERATION,INITIALIZE_AGGLOMERATION,SETTLING_VELOCITY,PARTICLE_RADIUS,SOOT_SURFACE_OXIDATION,DROPLET_SCRUBBING REAL(EB) :: MIN_AGGLOMERATION=1.E-4_EB REAL(EB), ALLOCATABLE, DIMENSION(:) :: BIN_S @@ -17,7 +18,6 @@ MODULE SOOT_ROUTINES TYPE(WALL_TYPE), POINTER :: WC TYPE(CFACE_TYPE), POINTER :: CFA TYPE(BOUNDARY_PROP1_TYPE), POINTER :: B1 -TYPE(BOUNDARY_PROP2_TYPE), POINTER :: B2 TYPE(BOUNDARY_COORD_TYPE), POINTER :: BC CONTAINS diff --git a/Source/turb.f90 b/Source/turb.f90 index a9450fe7731..c91046d3bab 100644 --- a/Source/turb.f90 +++ b/Source/turb.f90 @@ -7,7 +7,7 @@ MODULE TURBULENCE USE GLOBAL_CONSTANTS USE MESH_POINTERS USE MESH_VARIABLES -USE COMP_FUNCTIONS +USE COMP_FUNCTIONS, ONLY: GET_FILE_NUMBER,SHUTDOWN IMPLICIT NONE (TYPE,EXTERNAL) PRIVATE