diff --git a/Source/ccib.f90 b/Source/ccib.f90 index 01965d1b229..9ad8b1bc75b 100644 --- a/Source/ccib.f90 +++ b/Source/ccib.f90 @@ -83,9 +83,9 @@ MODULE CC_SCALARS TYPE(WALL_TYPE), POINTER :: WC TYPE(CFACE_TYPE), POINTER :: CFA -TYPE(CC_CUTCELL_TYPE), POINTER :: CC=>NULL() -TYPE(CC_CUTFACE_TYPE), POINTER :: CF=>NULL() -TYPE(CC_RCFACE_TYPE), POINTER :: RCF=>NULL() +TYPE(CC_CUTCELL_TYPE), POINTER :: CC +TYPE(CC_CUTFACE_TYPE), POINTER :: CF +TYPE(CC_RCFACE_TYPE), POINTER :: RCF TYPE(BOUNDARY_COORD_TYPE), POINTER :: BC TYPE(EXTERNAL_WALL_TYPE), POINTER :: EWC TYPE(BOUNDARY_PROP1_TYPE), POINTER :: B1 @@ -390,8 +390,8 @@ SUBROUTINE CUTFACE_VELOCITIES(NM,UU,VV,WW,CUTFACES) INTEGER, INTENT(IN) :: NM REAL(EB), POINTER, DIMENSION(:,:,:), INTENT(INOUT) :: UU,VV,WW LOGICAL, INTENT(IN) :: CUTFACES -TYPE(CC_CUTFACE_TYPE), POINTER :: CF=>NULL() -TYPE(CFACE_TYPE), POINTER :: CFA=>NULL() +TYPE(CC_CUTFACE_TYPE), POINTER :: CF +TYPE(CFACE_TYPE), POINTER :: CFA TYPE(BOUNDARY_COORD_TYPE), POINTER :: BC TYPE(BOUNDARY_PROP1_TYPE), POINTER :: B1 INTEGER :: ICF,ICFA,JCF,I,J,K,X1AXIS @@ -1697,9 +1697,9 @@ SUBROUTINE GET_FH_FROM_PRHS_AND_BCS(NM,DT,CYL_FCT,UNKH,NUNKH,IPZ,F_H) ! Local variables: INTEGER :: I,J,K,IROW,IW,IIG,JJG,KKG,IOR,ICFACE,IFACE,JFACE,ILH,JLH,KLH,IRC -TYPE (WALL_TYPE), POINTER :: WC=>NULL() -TYPE (EXTERNAL_WALL_TYPE), POINTER :: EWC=>NULL() -TYPE(CFACE_TYPE), POINTER :: CFA=>NULL() +TYPE (WALL_TYPE), POINTER :: WC +TYPE (EXTERNAL_WALL_TYPE), POINTER :: EWC +TYPE(CFACE_TYPE), POINTER :: CFA REAL(EB) :: IDX, AF, VAL, BCV ! Dummy Assignment. @@ -5565,8 +5565,8 @@ SUBROUTINE CC_COMPUTE_VISCOSITY(DT,NM) ! Local Variables: INTEGER :: I,J,K -REAL(EB), POINTER, DIMENSION(:,:,:) :: RHOP=>NULL(),UU=>NULL(),VV=>NULL(),WW=>NULL() -REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZP=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: RHOP,UU,VV,WW +REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZP REAL(EB) :: NU_EDDY,DELTA,A_IJ(3,3),DUDX,DUDY,DUDZ,DVDX,DVDY,DVDZ,DWDX,DWDY,DWDZ REAL(EB) :: TNOW @@ -5789,7 +5789,7 @@ SUBROUTINE ROTATED_CUBE_VELOCITY_FLUX(NM,TLEVEL) ! Local Variables: REAL(EB) :: XGLOB(2,1), XLOC(2,1), FGLOB(2,1), FLOC(2,1), X_I, Y_J, NU INTEGER :: I,J,K -REAL(EB), POINTER, DIMENSION(:,:,:) :: RHOP=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: RHOP REAL(EB) :: SIN_T, COS_T, COS_KX, SIN_KX, COS_KY, SIN_KY CALL POINT_TO_MESH(NM) @@ -6602,7 +6602,7 @@ SUBROUTINE CC_VELOCITY_CUTFACES(APPLY_TO_ESTIMATED_VARIABLES) INTEGER :: NM,ICF,I,J,K,X1AXIS REAL(EB) :: AREATOT, A_CART REAL(EB), POINTER, DIMENSION(:,:,:) :: UP,VP,WP -TYPE(CC_CUTFACE_TYPE), POINTER :: CF=>NULL() +TYPE(CC_CUTFACE_TYPE), POINTER :: CF ! Mesh Loop: MESH_LOOP : DO NM=LOWER_MESH_INDEX,UPPER_MESH_INDEX @@ -7510,7 +7510,7 @@ SUBROUTINE SET_EXIMADVFLX_3D(NM,UU,VV,WW) ! Local Variables: INTEGER :: N,I,J,K,X1AXIS,IFACE -TYPE(CC_REGFACEZ_TYPE), POINTER, DIMENSION(:) :: REGFACE_Z=>NULL() +TYPE(CC_REGFACEZ_TYPE), POINTER, DIMENSION(:) :: REGFACE_Z ! Loop on scalars: SPECIES_LOOP : DO N=1,N_TOTAL_SCALARS @@ -7555,9 +7555,9 @@ SUBROUTINE SET_EXIMRHOZZLIM_3D(NM,N) ! Local Variables: INTEGER :: I,J,K,X1AXIS -REAL(EB), POINTER, DIMENSION(:,:,:,:) :: FX_ZZ=>NULL(),FY_ZZ=>NULL(),FZ_ZZ=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:,:) :: FX_ZZ,FY_ZZ,FZ_ZZ INTEGER :: IFACE,IW -TYPE(CC_REGFACEZ_TYPE), POINTER, DIMENSION(:) :: REGFACE_Z=>NULL() +TYPE(CC_REGFACEZ_TYPE), POINTER, DIMENSION(:) :: REGFACE_Z FX_ZZ=>SWORK1 FY_ZZ=>SWORK2 @@ -7614,10 +7614,10 @@ SUBROUTINE SET_EXIMRHOHSLIM_3D(NM) ! Local Variables: INTEGER :: I,J,K,X1AXIS -REAL(EB), POINTER, DIMENSION(:,:,:) :: FX_H_S=>NULL(),FY_H_S=>NULL(),FZ_H_S=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: FX_H_S,FY_H_S,FZ_H_S REAL(EB) :: H_S,ZZ_GET(1:N_TRACKED_SPECIES),TMP_F_GAS,VELC2 INTEGER :: IFACE,IW -TYPE(CC_REGFACEZ_TYPE), POINTER, DIMENSION(:) :: REGFACE_Z=>NULL() +TYPE(CC_REGFACEZ_TYPE), POINTER, DIMENSION(:) :: REGFACE_Z FX_H_S=>WORK2 FY_H_S=>WORK3 @@ -7685,7 +7685,7 @@ SUBROUTINE SET_EXIMDIFFLX_3D(NM,RHO_D_DZDX,RHO_D_DZDY,RHO_D_DZDZ) ! Local Variables: INTEGER :: N,I,J,K,X1AXIS,IFACE -TYPE(CC_REGFACEZ_TYPE), POINTER, DIMENSION(:) :: REGFACE_Z=>NULL() +TYPE(CC_REGFACEZ_TYPE), POINTER, DIMENSION(:) :: REGFACE_Z ! First, set all diffusive fluxes to zero on CC_SOLID faces: ! IAXIS: @@ -8462,7 +8462,7 @@ SUBROUTINE CCSPECIES_ADVECTION REAL(EB), PARAMETER :: SGNFCT=1._EB INTEGER :: IOR, ICFA TYPE(BOUNDARY_PROP1_TYPE), POINTER :: B1 -TYPE(CC_REGFACEZ_TYPE), POINTER, DIMENSION(:) :: RGF=>NULL() +TYPE(CC_REGFACEZ_TYPE), POINTER, DIMENSION(:) :: RGF U_DOT_DEL_RHO_Z_VOL=>WORK7 U_DOT_DEL_RHO_Z_VOL=0._EB @@ -8995,7 +8995,7 @@ SUBROUTINE CCENTHALPY_ADVECTION REAL(EB) :: RHO_H_S_PV(-2:1), VELC, VELC2, FN_H_S, TMP_F_GAS INTEGER :: IOR, ICFA TYPE(BOUNDARY_PROP1_TYPE), POINTER :: B1 -TYPE(CC_REGFACEZ_TYPE), POINTER, DIMENSION(:) :: REGFACE_Z=>NULL() +TYPE(CC_REGFACEZ_TYPE), POINTER, DIMENSION(:) :: REGFACE_Z LOGICAL :: DO_LO, DO_HI ! IAXIS faces: @@ -10676,8 +10676,8 @@ SUBROUTINE CC_DIFFUSIVE_MASS_FLUXES(NM) ! Local Variables: INTEGER :: N,I,J,K,X1AXIS,ISIDE,IFACE,ICC,JCC,ICF -REAL(EB), POINTER, DIMENSION(:,:,:) :: RHOP=>NULL() -REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZP=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: RHOP +REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZP REAL(EB) :: D_Z_N(0:I_MAX_TEMP),CCM1,CCP1,IDX,DIFF_FACE,D_Z_TEMP(-1:0),MUV(-1:0),MU_DNSV(-1:0), & RHOPV(-1:0),TMPV(-1:0),ZZPV(-1:0),X1F,PRFCT REAL(EB), ALLOCATABLE, DIMENSION(:) :: ZZ_GET,RHO_D_DZDN_GET @@ -11522,10 +11522,10 @@ SUBROUTINE GET_EXPLICIT_ADVDIFFVECTOR_SCALAR_3D(N) INTEGER :: X1AXIS,IFACE,IND(LOW_IND:HIGH_IND),IND_LOC(LOW_IND:HIGH_IND),ICF INTEGER :: LOCROW_1,LOCROW_2,ILOC,IROW,ICC,JCC,ISIDE,IW REAL(EB):: AF,VELC,RHO_Z_PV(-2:1),RHOPV(-2:1),FCT,ZZ_GET_N,FN_ZZ -REAL(EB), POINTER, DIMENSION(:,:,:) :: RHOP=>NULL(),UP=>NULL(),VP=>NULL(),WP=>NULL() -REAL(EB), POINTER, DIMENSION(:,:,:) :: UU=>NULL(),VV=>NULL(),WW=>NULL() -REAL(EB), POINTER, DIMENSION(:,:,:,:):: ZZP=>NULL() -TYPE(CC_REGFACEZ_TYPE), POINTER, DIMENSION(:) :: REGFACE_Z=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: RHOP,UP,VP,WP +REAL(EB), POINTER, DIMENSION(:,:,:) :: UU,VV,WW +REAL(EB), POINTER, DIMENSION(:,:,:,:):: ZZP +TYPE(CC_REGFACEZ_TYPE), POINTER, DIMENSION(:) :: REGFACE_Z LOGICAL :: DO_LO,DO_HI INTEGER :: IIG,JJG,KKG,IOR REAL(EB) :: UN @@ -11984,8 +11984,8 @@ SUBROUTINE CC_CHECK_MASS_DENSITY INTEGER, PARAMETER :: MAX_SURR_CELLS=20 INTEGER :: NM, NCELL, ICC, JCC, I, J, K, IFC, IFACE, IFC1, JFC1, ICC1, JCC1, IC, LOHI, ILH, X1AXIS, & II, JJ, KK, IIF, JJF, KKF, IRC, N -REAL(EB), POINTER, DIMENSION(:,:,:) :: DELTA_RHO=>NULL(),DELTA_RHO_ZZ=>NULL(),RHOP=>NULL() -REAL(EB), POINTER, DIMENSION(:,:,:,:) :: RHO_ZZ=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: DELTA_RHO,DELTA_RHO_ZZ,RHOP +REAL(EB), POINTER, DIMENSION(:,:,:,:) :: RHO_ZZ REAL(EB) :: MASS_C, MASS_N(1:MAX_SURR_CELLS), RHO_CELL(1:MAX_SURR_CELLS), VOL(1:MAX_SURR_CELLS), & RHO_CUT, SIGN_FACTOR, SUM_MASS_N, SUM_RHO_ZZ, CONST, PRFCT, CC_RHOP, CC_RHO_ZZP, RHO_ZZ_MIN, & RHO_ZZ_MAX, RHO_ZZ_CUT, RHO_ZZ_TEST @@ -12648,8 +12648,8 @@ SUBROUTINE GET_RHOZZ_CC_3D ! Local Variables: INTEGER :: NM,N,I,J,K,ICC,JCC -REAL(EB), POINTER, DIMENSION(:,:,:) :: RHOP=>NULL(),UP=>NULL() -REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZP=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: RHOP,UP +REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZP REAL(EB) :: VOLTOT INTEGER :: NMX @@ -12842,7 +12842,7 @@ SUBROUTINE PUT_RHOZZVECTOR_SCALAR_3D(N) ! Local Variables: INTEGER :: NM,I,J,K,IROW_LOC,ICC,JCC -REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZP=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZP ! Loop meshes: MESH_LOOP : DO NM=LOWER_MESH_INDEX,UPPER_MESH_INDEX @@ -12972,9 +12972,9 @@ SUBROUTINE GET_ADVDIFFVECTOR_SCALAR_3D(N) INTEGER :: X1AXIS,IFACE,IND(LOW_IND:HIGH_IND),IND_LOC(LOW_IND:HIGH_IND),ICF,IND1,IND2,IOR INTEGER :: LOCROW_1,LOCROW_2,ILOC,IROW,ICC,JCC,IW REAL(EB):: AF,VELC,RHO_Z,FN_ZZ,FCT -REAL(EB), POINTER, DIMENSION(:,:,:) :: RHOP=>NULL(),UP=>NULL(),VP=>NULL(),WP=>NULL() -REAL(EB), POINTER, DIMENSION(:,:,:,:):: ZZP=>NULL() -TYPE(CC_REGFACEZ_TYPE), POINTER, DIMENSION(:) :: REGFACE_Z=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: RHOP,UP,VP,WP +REAL(EB), POINTER, DIMENSION(:,:,:,:):: ZZP +TYPE(CC_REGFACEZ_TYPE), POINTER, DIMENSION(:) :: REGFACE_Z LOGICAL :: DO_LO,DO_HI ! This routine computes RHS due to boundary conditions prescribed in immersed solids @@ -13214,8 +13214,8 @@ SUBROUTINE CC_VELOCITY_BC(T,NM,APPLY_TO_ESTIMATED_VARIABLES,DO_IBEDGES) INTEGER :: I,J,K,II,JJ,KK,ICF,X1AXIS,IE,IEC,I_SGN,ICD,ICD_SGN,IIF,JJF,KKF,FAXIS,ICDO,ICDO_SGN,IS REAL(EB), ALLOCATABLE, DIMENSION(:,:,:) :: UVW_EP REAL(EB), ALLOCATABLE, DIMENSION(:,:,:,:) :: DUVW_EP -REAL(EB), POINTER, DIMENSION(:,:,:) :: UU=>NULL(),VV=>NULL(),WW=>NULL(),RHOP=>NULL() -REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZP=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: UU,VV,WW,RHOP +REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZP REAL(EB) :: NU,MU_FACE,RHO_FACE,DXN_STRM_UB,SLIP_FACTOR,SRGH,U_TAU,Y_PLUS,TNOW,MU_EP,MU_DUIDXJ_USE(2),DUIDXJ_USE(2),& DUIDXJ(-2:2),MU_DUIDXJ(-2:2),DXX(2),DF, DE, UE, UF, UB, A_CART, AREATOT, VEL_CART, PRFCT TYPE(CC_EDGE_TYPE), POINTER :: CC_EDGE @@ -13530,7 +13530,7 @@ SUBROUTINE CC_EDGE_TAU_OMG LOGICAL :: ALTERED_GRADIENT(-2:2),CORNER_EDGE REAL(EB):: XB_IB,OMEV_EP(-2:2),TAUV_EP(-2:2),DWDY,DVDZ,DUDZ,DWDX,DUDY,DVDX, & DUIDXJ_EP(-2:2),MU_DUIDXJ_EP(-2:2),EC_B(-2:2),EC_EP(-2:2),DEL_EP,VEL_GAS,CEP,CB,U1_T,U2_T -TYPE(SURFACE_TYPE), POINTER :: SF=>NULL() +TYPE(SURFACE_TYPE), POINTER :: SF REAL(EB) :: VLG(-2:2),NUV(-2:2),RGH(-2:2),UTA(-2:2) VLG(-2:2)=0._EB; NUV(-2:2)=0._EB; RGH(-2:2)=0._EB; UTA(-2:2)=0._EB @@ -15436,7 +15436,7 @@ SUBROUTINE CC_CHECK_DIVERGENCE(T,DT,PREDVEL) REAL(EB):: PRFCT, DIV, RES, DIVVOL, DIV_JCC, VOL, DPCC, DIV2,TLOC,DTLOC -REAL(EB), POINTER, DIMENSION(:,:,:) :: UP=>NULL(), VP=>NULL(), WP=>NULL(), DP=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: UP, VP, WP, DP REAL(EB), ALLOCATABLE, DIMENSION(:) :: RESMAXV, RESVOLMX REAL(EB), ALLOCATABLE, DIMENSION(:,:):: DIVMNX, DIVVOLMNX, VOLMNX INTEGER, ALLOCATABLE, DIMENSION(:,:):: IJKRM, RESICJCMX @@ -15887,7 +15887,7 @@ SUBROUTINE GET_CRTCFCC_INT_STENCILS INTEGER :: IS,I_SGN,ICD,ICD_SGN,IIF,JJF,KKF,FAXIS,IEC,IE,SKIP_FCT,IEP,JEP,KEP,INDS(1:2,IAXIS:KAXIS),AX,ICEDG,JCEDG,LOHI REAL(EB):: DXX(2),AREA_CF,XB_IB,DEL_EP,DEL_IBEDGE,XYZ1(IAXIS:KAXIS),XYZ2(IAXIS:KAXIS) -TYPE(CC_CUTEDGE_TYPE), POINTER :: CE=>NULL() +TYPE(CC_CUTEDGE_TYPE), POINTER :: CE REAL(EB) CPUTIME,CPUTIME_START,CPUTIME_START_LOOP CHARACTER(100) :: MSEGS_FILE @@ -18775,7 +18775,7 @@ END SUBROUTINE SET_CC_MATVEC_DATA SUBROUTINE GET_RCEDGE_FACE_LIST INTEGER :: NM,ICF,JCF,I,J,K,X1AXIS,EAXIS,LOHI_AXIS,IRC,ISIDE,HILO -TYPE(MESH_TYPE), POINTER :: M=>NULL() +TYPE(MESH_TYPE), POINTER :: M MESH_LOOP : DO NM=LOWER_MESH_INDEX,UPPER_MESH_INDEX M=>MESHES(NM) @@ -20739,7 +20739,7 @@ SUBROUTINE GET_GASPHASE_REGRCFACES_DATA LOGICAL :: FLGIN INTEGER, PARAMETER :: OZPOS=0, ICPOS=1, JCPOS=2, IFPOS=3 INTEGER :: IERR -TYPE(MESH_TYPE), POINTER :: M=>NULL() +TYPE(MESH_TYPE), POINTER :: M ! Mesh loop: MAIN_MESH_LOOP : DO NM=LOWER_MESH_INDEX,UPPER_MESH_INDEX @@ -21927,7 +21927,7 @@ SUBROUTINE GET_LINKED_FACE_INDEXES_F OFACE(3),OLO_UNKZ,OHI_UNKZ,OICF,OJCF,IECE,JECE,ILINK,ICC,JCC,IW,COUNT REAL(EB):: ACRT,CCVOL_THRES LOGICAL :: ALL_FLG,CC_LINKED -TYPE(MESH_TYPE), POINTER :: M=>NULL() +TYPE(MESH_TYPE), POINTER :: M INTEGER :: ILOC,SIZE_FACE INTEGER, ALLOCATABLE, DIMENSION(:,:) :: FACE_LIST,FACELAUX REAL(EB), ALLOCATABLE,DIMENSION(:) :: FACE_AREA,FACEARAUX diff --git a/Source/ctrl.f90 b/Source/ctrl.f90 index 36f6e4466c7..a70e3d01e21 100644 --- a/Source/ctrl.f90 +++ b/Source/ctrl.f90 @@ -23,7 +23,7 @@ SUBROUTINE UPDATE_CONTROLS(T,DT,CTRL_STOP_STATUS,RUN_START) INTEGER :: NC,N LOGICAL :: CTRL_STOP_STATUS LOGICAL, INTENT(IN) :: RUN_START -TYPE(DEVICE_TYPE), POINTER :: DV=>NULL() +TYPE(DEVICE_TYPE), POINTER :: DV CTRL_STOP_STATUS = .FALSE. diff --git a/Source/data.f90 b/Source/data.f90 index c194576f575..566ca4e6d1d 100644 --- a/Source/data.f90 +++ b/Source/data.f90 @@ -2258,7 +2258,7 @@ SUBROUTINE THERMO_TABLE_GAS(I_TMP,CP,SPEC_INDEX,SS_INDEX,RCON,G_F) REAL(EB) :: TE,H,S,TB(4),A(7,3),BC(2,3) INTEGER :: B,BANDS CHARACTER(LABEL_LENGTH):: POLY -TYPE (THERMO_DATA_TYPE), POINTER :: TD=>NULL() +TYPE (THERMO_DATA_TYPE), POINTER :: TD G_F = 0._EB !kJ/mol IF (SPEC_INDEX==-1 .OR. CONSTANT_SPECIFIC_HEAT_RATIO) THEN @@ -2348,7 +2348,7 @@ SUBROUTINE THERMO_TABLE_LIQUID(I_TMP,CP,H_V,T_REF,T_MELT,T_BOIL,SPEC_INDEX,FUEL, REAL(EB) :: TE INTEGER :: B LOGICAL,INTENT(OUT) :: FUEL -TYPE (THERMO_DATA_TYPE), POINTER :: TD=>NULL() +TYPE (THERMO_DATA_TYPE), POINTER :: TD !Default to water properteis @@ -2412,7 +2412,7 @@ SUBROUTINE GAS_PROPS(GAS_INDEX,SIGMA,EPSOK,PR_GAS,MW,FORMULA,LISTED,ATOM_COUNTS, CHARACTER(FORMULA_LENGTH), INTENT(INOUT) :: FORMULA REAL(EB) :: SIGMAIN,EPSOKIN,MWIN,ATOM_COUNTS(118),H_FIN,PR_GASIN CHARACTER(FORMULA_LENGTH) :: FORMULAIN -TYPE(THERMO_DATA_TYPE), POINTER :: TD=>NULL() +TYPE(THERMO_DATA_TYPE), POINTER :: TD SIGMAIN = SIGMA EPSOKIN = EPSOK @@ -2512,7 +2512,7 @@ SUBROUTINE CALC_GAS_PROPS(J,N,D_TMP,MU_TMP,K_TMP,CP_TMP,G_F_TMP) INTEGER :: I(1) REAL(EB), INTENT(OUT) :: D_TMP,MU_TMP,K_TMP,CP_TMP,G_F_TMP REAL(EB) :: SIGMA2,EPSIJ,AMW,TSTAR,OMEGA,TMP -TYPE(SPECIES_TYPE),POINTER :: SS=>NULL(),SS0=>NULL() +TYPE(SPECIES_TYPE),POINTER :: SS,SS0 SS=>SPECIES(N) @@ -2661,7 +2661,7 @@ SUBROUTINE CALC_MIX_PROPS(J,D_TMP,MU_TMP,K_TMP,CP_TMP,EPSK,SIG,D_USER,MU_USER,K_ REAL(EB), INTENT(IN) :: EPSK,SIG,D_USER,MU_USER,K_USER,MW,CP_USER,PR_USER REAL(EB), INTENT(INOUT) :: D_TMP,MU_TMP,K_TMP,CP_TMP REAL(EB) :: SIGMA2,EPSIJ,AMW,TSTAR,OMEGA,TMP,PR_TMP -TYPE(SPECIES_TYPE),POINTER :: SS0=>NULL() +TYPE(SPECIES_TYPE),POINTER :: SS0 TMP = REAL(J,EB) IF (SIG > 0._EB .AND. EPSK > 0._EB) THEN @@ -3100,7 +3100,7 @@ SUBROUTINE SHUTDOWN_ATOM(ATOM_COUNT,NR,ERR) REAL(EB), INTENT(IN) :: ATOM_COUNT(118),ERR REAL(EB) :: REACTION_BALANCE(118) LOGICAL :: EX -TYPE (REACTION_TYPE), POINTER :: RN=>NULL() +TYPE (REACTION_TYPE), POINTER :: RN IF (MY_RANK==0) THEN CALL WRITE_ATOM_BALANCE_DIAGNOSTICS(LU_ERR) diff --git a/Source/dump.f90 b/Source/dump.f90 index 79fcd4795d9..edbe64004b1 100644 --- a/Source/dump.f90 +++ b/Source/dump.f90 @@ -23,30 +23,30 @@ MODULE DUMP IMPLICIT NONE (TYPE,EXTERNAL) PRIVATE -REAL(EB), POINTER, DIMENSION(:,:,:) :: WFX=>NULL(),WFY=>NULL(),WFZ=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: WFX,WFY,WFZ INTEGER :: N_DEVC_FILES CHARACTER(80) :: TCFORM LOGICAL :: EX,DRY,OPN,FROM_BNDF=.FALSE. -TYPE (MESH_TYPE), POINTER :: M=>NULL() -TYPE (LAGRANGIAN_PARTICLE_TYPE), POINTER :: LP=>NULL() -TYPE (OBSTRUCTION_TYPE), POINTER :: OB=>NULL() -TYPE (VENTS_TYPE), POINTER :: VT=>NULL() -TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC=>NULL() -TYPE (SPECIES_TYPE), POINTER :: SS=>NULL() -TYPE (REACTION_TYPE), POINTER :: RN=>NULL() -TYPE (SURFACE_TYPE),POINTER :: SF=>NULL() -TYPE (MATERIAL_TYPE),POINTER :: ML=>NULL() -TYPE (PROPERTY_TYPE), POINTER :: PY=>NULL() -TYPE (DEVICE_TYPE), POINTER :: DV=>NULL(), DV2=>NULL() -TYPE (SUBDEVICE_TYPE), POINTER :: SDV=>NULL() -TYPE (SLICE_TYPE), POINTER :: SL=>NULL() -TYPE (WALL_TYPE), POINTER :: WC=>NULL() -TYPE (THIN_WALL_TYPE), POINTER :: TW=>NULL() -TYPE (CFACE_TYPE), POINTER :: CFA=>NULL() -TYPE (BOUNDARY_FILE_TYPE), POINTER :: BF=>NULL() -TYPE (ISOSURFACE_FILE_TYPE), POINTER :: IS=>NULL() -TYPE (INITIALIZATION_TYPE), POINTER :: IN=>NULL() +TYPE (MESH_TYPE), POINTER :: M +TYPE (LAGRANGIAN_PARTICLE_TYPE), POINTER :: LP +TYPE (OBSTRUCTION_TYPE), POINTER :: OB +TYPE (VENTS_TYPE), POINTER :: VT +TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC +TYPE (SPECIES_TYPE), POINTER :: SS +TYPE (REACTION_TYPE), POINTER :: RN +TYPE (SURFACE_TYPE),POINTER :: SF +TYPE (MATERIAL_TYPE),POINTER :: ML +TYPE (PROPERTY_TYPE), POINTER :: PY +TYPE (DEVICE_TYPE), POINTER :: DV, DV2 +TYPE (SUBDEVICE_TYPE), POINTER :: SDV +TYPE (SLICE_TYPE), POINTER :: SL +TYPE (WALL_TYPE), POINTER :: WC +TYPE (THIN_WALL_TYPE), POINTER :: TW +TYPE (CFACE_TYPE), POINTER :: CFA +TYPE (BOUNDARY_FILE_TYPE), POINTER :: BF +TYPE (ISOSURFACE_FILE_TYPE), POINTER :: IS +TYPE (INITIALIZATION_TYPE), POINTER :: IN PUBLIC ASSIGN_FILE_NAMES,INITIALIZE_GLOBAL_DUMPS,INITIALIZE_MESH_DUMPS,WRITE_STATUS_FILES, & TIMINGS,FLUSH_GLOBAL_BUFFERS,READ_RESTART,WRITE_DIAGNOSTICS, & @@ -1514,14 +1514,14 @@ SUBROUTINE WRITE_SMOKEVIEW_FILE REAL(EB) :: X1,X2,Y1,Y2,Z1,Z2 END TYPE SEGMENT_TYPE TYPE (SEGMENT_TYPE), ALLOCATABLE, TARGET, DIMENSION(:) :: SEGMENT -TYPE (SEGMENT_TYPE), POINTER :: SEG=>NULL() +TYPE (SEGMENT_TYPE), POINTER :: SEG INTEGER :: N_SEGMENTS_MAX -TYPE (MESH_TYPE), POINTER :: MX=>NULL(),MY=>NULL(),MZ=>NULL() -TYPE (TRAN_TYPE), POINTER :: T=>NULL() +TYPE (MESH_TYPE), POINTER :: MX,MY,MZ +TYPE (TRAN_TYPE), POINTER :: T REAL(EB), ALLOCATABLE, DIMENSION(:) :: XLEVEL,YLEVEL,ZLEVEL LOGICAL :: EX, FOUND_GEOM CHARACTER(MESSAGE_LENGTH) :: MESSAGE -TYPE(GEOMETRY_TYPE), POINTER :: G=>NULL() +TYPE(GEOMETRY_TYPE), POINTER :: G INTEGER :: IG,IS_TERRAIN_INT INTEGER :: II,JJ,IIO,JJO,KKO,NOM,IW,IW1,IW2,MESH_NEIGHBOR(6) INTEGER :: N_NODE_OUT, N_DUCT_OUT @@ -2680,7 +2680,7 @@ SUBROUTINE INITIALIZE_DIAGNOSTIC_FILE(DT) REAL(EB) :: ZZ_GET(1:N_TRACKED_SPECIES),ZZ_REAC(1:N_TRACKED_SPECIES),ZZ_PROD(1:N_TRACKED_SPECIES),& MU_Z,K_Z,CP_ZN,H_Z, PHI_TILDE,TMP_FLAME CHARACTER(LABEL_LENGTH) :: QUANTITY,ODE_SOLVER,OUTFORM -TYPE(SPECIES_MIXTURE_TYPE),POINTER :: SM=>NULL() +TYPE(SPECIES_MIXTURE_TYPE),POINTER :: SM ! Open and initialize diagnostic output file @@ -3489,9 +3489,9 @@ SUBROUTINE DUMP_RESTART(T,DT,NM) REAL(EB) :: STIME INTEGER :: NOM,N,IP,IW,ITW,ICF,RC,IC,LC INTEGER, INTENT(IN) :: NM -TYPE(OMESH_TYPE), POINTER :: M2=>NULL() -TYPE(DUCT_TYPE), POINTER :: DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() +TYPE(OMESH_TYPE), POINTER :: M2 +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(DUCTNODE_TYPE), POINTER :: DN TYPE(STORAGE_TYPE), POINTER :: OS OPEN(LU_CORE(NM),FILE=FN_CORE(NM),FORM='UNFORMATTED',STATUS='REPLACE') @@ -3669,9 +3669,9 @@ SUBROUTINE READ_RESTART(T,DT,NM) INTEGER, INTENT(IN) :: NM LOGICAL :: EX CHARACTER(MESSAGE_LENGTH) :: MESSAGE -TYPE(OMESH_TYPE), POINTER :: M2=>NULL() -TYPE(DUCT_TYPE), POINTER :: DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() +TYPE(OMESH_TYPE), POINTER :: M2 +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(DUCTNODE_TYPE), POINTER :: DN TYPE(STORAGE_TYPE), POINTER :: OS INQUIRE(FILE=FN_RESTART(NM),EXIST=EX) @@ -8626,11 +8626,11 @@ REAL(EB) FUNCTION SOLID_PHASE_OUTPUT(INDX,Y_INDEX,Z_INDEX,PART_INDEX,OPT_WALL_IN NVEC(3),PVEC(3),TAU_IJ(3,3),VEL_CELL(3),VEL_WALL(3),MU_WALL,RHO_WALL,FVEC(3),SVEC(3),TVEC1(3),TVEC2(3),& PR1,PR2,Z1,Z2,RADIUS,CUT_FACE_AREA,SOLID_PHASE_OUTPUT_CTF,AAA,BBB,CCC,ALP,BET,GAM,MMM,DTMP INTEGER :: I_DEPTH,II2,IIG,JJG,KKG,NN,IWX,SURF_INDEX,I,J,NWP,M_INDEX,ICC,IND1,IND2,IC2,ITMP,ICF,JCF,NFACE,NR,MATL_INDEX,OUTPUT_INDEX -TYPE(BOUNDARY_PROP1_TYPE), POINTER :: B1=>NULL() -TYPE(BOUNDARY_PROP2_TYPE), POINTER :: B2=>NULL() -TYPE(BOUNDARY_RADIA_TYPE), POINTER :: BR=>NULL() -TYPE(BOUNDARY_ONE_D_TYPE), POINTER :: ONE_D=>NULL() -TYPE(BOUNDARY_COORD_TYPE), POINTER :: BC=>NULL() +TYPE(BOUNDARY_PROP1_TYPE), POINTER :: B1 +TYPE(BOUNDARY_PROP2_TYPE), POINTER :: B2 +TYPE(BOUNDARY_RADIA_TYPE), POINTER :: BR +TYPE(BOUNDARY_ONE_D_TYPE), POINTER :: ONE_D +TYPE(BOUNDARY_COORD_TYPE), POINTER :: BC ! Assign default value to output @@ -9987,7 +9987,7 @@ SUBROUTINE DUMP_HVAC(T) INTEGER :: N,NN,NNN,NODE_INDEX(2) REAL(EB), INTENT(IN) :: T REAL(FB) :: STIME, OUTVAL_D(N_DUCT_QUANTITY), OUTVAL_N(N_NODE_QUANTITY) -TYPE(HVAC_QUANTITY_TYPE), POINTER :: HQT=>NULL() +TYPE(HVAC_QUANTITY_TYPE), POINTER :: HQT ! N_NODES_OUT N_NODE_VARS N_DUCTS_OUT N_DUCTS_VARS @@ -10703,7 +10703,7 @@ SUBROUTINE TIMINGS REAL(EB) :: T_NOW INTEGER :: N LOGICAL :: WRITE_HEADER -TYPE(CONTROL_TYPE), POINTER :: CF=>NULL() +TYPE(CONTROL_TYPE), POINTER :: CF ! Print out detector and control activation times diff --git a/Source/fire.f90 b/Source/fire.f90 index 60fc8b59b06..4b67d940363 100644 --- a/Source/fire.f90 +++ b/Source/fire.f90 @@ -724,7 +724,7 @@ SUBROUTINE COMBUSTION_MODEL(T,DT,ZZ_GET,Q_OUT,MIX_TIME_OUT,CHI_R_OUT,CHEM_SUBIT_ INTEGER, PARAMETER :: TV_ITER_MIN=5 LOGICAL :: TV_FLUCT(1:N_TRACKED_SPECIES),EXTINCT,NO_REACTIONS,NO_REAC_2,NO_REAC_4 DOUBLE PRECISION :: T1,T2 -TYPE(REACTION_TYPE), POINTER :: RN !,R1=>NULL() +TYPE(REACTION_TYPE), POINTER :: RN !,R1 ZZ_0 = ZZ_GET EXTINCT = .FALSE. @@ -1605,9 +1605,9 @@ SUBROUTINE CONDENSATION_EVAPORATION(DT,NM) MU_AIR, SC_AIR, TMP_N2, M_DOT, M_VAP, Y_PLUS, Y_S_PLUS, GAMMA, RHOCBAR, MCBAR, H_L_1, H_L_2 REAL(EB), POINTER, DIMENSION(:,:,:) :: RHO_INTERIM,TMP_INTERIM REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZ_INTERIM -TYPE (SPECIES_TYPE), POINTER :: SS=>NULL() -TYPE (SURFACE_TYPE), POINTER :: SF=>NULL() -TYPE (SPECIES_MIXTURE_TYPE), POINTER :: SM=>NULL(), SM2=>NULL() +TYPE (SPECIES_TYPE), POINTER :: SS +TYPE (SURFACE_TYPE), POINTER :: SF +TYPE (SPECIES_MIXTURE_TYPE), POINTER :: SM, SM2 TYPE(WALL_TYPE), POINTER :: WC !TYPE(CFACE_TYPE), POINTER :: CFA TYPE(BOUNDARY_ONE_D_TYPE), POINTER :: ONE_D @@ -1904,7 +1904,7 @@ END SUBROUTINE CONDENSATION_EVAPORATION REAL(EB) FUNCTION CALC_FCENT(TMP, P_RI, I) REAL(EB), INTENT(IN) :: TMP, P_RI INTEGER, INTENT(IN) :: I -TYPE(REACTION_TYPE), POINTER :: RN => NULL() +TYPE(REACTION_TYPE), POINTER :: RN REAL(EB) :: LOGFCENT, C, N, LOGPRC REAL(EB), PARAMETER :: D=0.14_EB diff --git a/Source/func.f90 b/Source/func.f90 index 2d89b7bc10d..bb55c1f49bb 100644 --- a/Source/func.f90 +++ b/Source/func.f90 @@ -2816,7 +2816,7 @@ END SUBROUTINE GET_Y_SURF SUBROUTINE GET_TMP_REF(N_MATL,NR) INTEGER, INTENT(IN) :: N_MATL,NR REAL(EB) :: HEATING_RATE,DT=0.01_EB,DTDT,RR_MAX,REACTION_RATE,TMP,RHO_S -TYPE(MATERIAL_TYPE), POINTER :: ML=>NULL() +TYPE(MATERIAL_TYPE), POINTER :: ML ML=> MATERIAL(N_MATL) @@ -3104,7 +3104,7 @@ SUBROUTINE RE_ALLOCATE_STRINGS(NM) CHARACTER(MESH_STRING_LENGTH), ALLOCATABLE, DIMENSION(:) :: DUMMY INTEGER, INTENT(IN) :: NM -TYPE (MESH_TYPE), POINTER :: M=>NULL() +TYPE (MESH_TYPE), POINTER :: M M=>MESHES(NM) ALLOCATE(DUMMY(1:M%N_STRINGS)) @@ -4682,7 +4682,7 @@ SUBROUTINE SEARCH_OTHER_MESHES(XX,YY,ZZ,NOM,IIO,JJO,KKO,XXI,YYJ,ZZK) REAL(EB), OPTIONAL :: XXI,YYJ,ZZK REAL(EB) :: XI,YJ,ZK INTEGER, INTENT(OUT) :: NOM,IIO,JJO,KKO -TYPE (MESH_TYPE), POINTER :: M2=>NULL() +TYPE (MESH_TYPE), POINTER :: M2 IF (PRESENT(XXI)) XXI = 0._EB IF (PRESENT(YYJ)) YYJ = 0._EB @@ -4729,7 +4729,7 @@ END SUBROUTINE SEARCH_OTHER_MESHES SUBROUTINE BLOCK_CELL(NM,I1,I2,J1,J2,K1,K2,IVAL,OBST_INDEX) INTEGER :: NM,I1,I2,J1,J2,K1,K2,IVAL,I,J,K,OBST_INDEX,IC -TYPE (MESH_TYPE), POINTER :: M=>NULL() +TYPE (MESH_TYPE), POINTER :: M M => MESHES(NM) DO K=K1,K2 @@ -5821,8 +5821,8 @@ MODULE TRAN USE PRECISION_PARAMETERS IMPLICIT NONE (TYPE,EXTERNAL) TYPE TRAN_TYPE - REAL(EB), POINTER, DIMENSION(:,:) :: C1=>NULL(),C2=>NULL(),C3=>NULL(),CCSTORE=>NULL(),PCSTORE=>NULL() - INTEGER, POINTER, DIMENSION(:,:) :: IDERIVSTORE=>NULL() + REAL(EB), POINTER, DIMENSION(:,:) :: C1,C2,C3,CCSTORE,PCSTORE + INTEGER, POINTER, DIMENSION(:,:) :: IDERIVSTORE INTEGER NOC(3),ITRAN(3),NOCMAX END TYPE TRAN_TYPE TYPE (TRAN_TYPE), ALLOCATABLE, TARGET, DIMENSION(:) :: TRANS @@ -5841,7 +5841,7 @@ REAL(EB) FUNCTION G(X,IC,NM) REAL(EB), INTENT(IN) :: X INTEGER, INTENT(IN) :: IC,NM INTEGER :: I,II,N -TYPE (TRAN_TYPE), POINTER :: T=>NULL() +TYPE (TRAN_TYPE), POINTER :: T T => TRANS(NM) @@ -5878,7 +5878,7 @@ REAL(EB) FUNCTION GP(X,IC,NM) REAL(EB), INTENT(IN) :: X INTEGER, INTENT(IN) :: IC,NM INTEGER :: I,II,N -TYPE (TRAN_TYPE), POINTER :: T=>NULL() +TYPE (TRAN_TYPE), POINTER :: T T => TRANS(NM) N = T%NOC(IC) @@ -5917,7 +5917,7 @@ REAL(EB) FUNCTION GINV(Z,IC,NM) INTEGER :: N,IT,II,I REAL(EB), INTENT(IN) :: Z INTEGER, INTENT(IN) :: IC,NM -TYPE (TRAN_TYPE), POINTER :: T=>NULL() +TYPE (TRAN_TYPE), POINTER :: T T => TRANS(NM) GINV = Z diff --git a/Source/geom.f90 b/Source/geom.f90 index 55b754f9c5e..401dd05dcf4 100644 --- a/Source/geom.f90 +++ b/Source/geom.f90 @@ -129,9 +129,9 @@ MODULE COMPLEX_GEOMETRY INTEGER, PARAMETER :: LINSEARCH_LIMIT = 13 ! LINSEARCH_LIMIT-1 is the maximum size of array for linear search O(n). If ! Array larger -> binary search O(log(n)). -TYPE(CC_CUTCELL_TYPE), POINTER :: CC=>NULL() -TYPE(CC_CUTFACE_TYPE), POINTER :: CF=>NULL() -TYPE(CC_CUTEDGE_TYPE), POINTER :: CE=>NULL() +TYPE(CC_CUTCELL_TYPE), POINTER :: CC +TYPE(CC_CUTFACE_TYPE), POINTER :: CF +TYPE(CC_CUTEDGE_TYPE), POINTER :: CE ! Auxiliary variables: TYPE(CC_EDGECROSS_TYPE), ALLOCATABLE, DIMENSION(:) :: EDGE_CROSS_AUX @@ -498,7 +498,7 @@ SUBROUTINE SEARCH_OTHER_MESHES_FACE(NM,AXIS,XX,YY,ZZ,NOM,IIO,JJO,KKO) REAL(EB), INTENT(IN) :: XX,YY,ZZ REAL(EB) :: XI,YJ,ZK,SGN INTEGER, INTENT(OUT) :: NOM,IIO,JJO,KKO -TYPE (MESH_TYPE), POINTER :: M2=>NULL() +TYPE (MESH_TYPE), POINTER :: M2 IIO = 0 JJO = 0 @@ -661,7 +661,7 @@ SUBROUTINE POINT_IN_CFACE(NM,XP,YP,ZP,CFACE_INDEX,IN_CFACE) ! Local Variables INTEGER :: INBFC,INBFC_LOC,VERT_CUTFACE,NVERT,X1AXIS,X2AXIS,X3AXIS -REAL(EB), POINTER, DIMENSION(:) :: NVEC=>NULL() +REAL(EB), POINTER, DIMENSION(:) :: NVEC INTEGER, ALLOCATABLE, DIMENSION(:) :: CFELEM REAL(EB):: ANVEC(MAX_DIM),P0(MAX_DIM),A,B,C,D,PROJ_COEFF,XYZ_P(MAX_DIM),PTCEN(IAXIS:JAXIS),I_SGN !,ATEST @@ -3059,7 +3059,7 @@ SUBROUTINE GET_CC_FACE_CELL_LIST_INFO(NM,PHASE) ! Local Vars: INTEGER :: ICC,JCC,IFC,IFACE,ICF1,ICF2,JCF,ICE,JCE,IIE,JJE,KKE,IIF,JJF,KKF,X1AXIS,EAXIS,IEDG_LOC,IEDGE -TYPE(MESH_TYPE), POINTER :: M=>NULL() +TYPE(MESH_TYPE), POINTER :: M M=>MESHES(NM) ! FACE-CELL incidence: @@ -4674,7 +4674,7 @@ SUBROUTINE GET_GEOM_TRIBIN REAL(EB):: LEDGE, DXYZE(MAX_DIM), LX1, DELBIN, X1V_LO, X1V_HI, X1V(NOD1:NOD3) INTEGER, ALLOCATABLE, DIMENSION(:) :: TRI_LIST REAL(EB):: MINMAX_MESHES(LOW_IND:HIGH_IND,IAXIS:KAXIS),MIN_MESHGEOM,MAX_MESHGEOM -TYPE(GEOMETRY_TYPE), POINTER :: G=>NULL() +TYPE(GEOMETRY_TYPE), POINTER :: G INTEGER :: DELTA_TBIN2 @@ -5129,7 +5129,7 @@ SUBROUTINE BLOCK_SMALL_UNLINKED_CUTCELLS(NM,NBLKCELLS) INTEGER, INTENT(OUT):: NBLKCELLS INTEGER :: ICC,JCC,I,J,K,IFC,IEC,JEC,IVR,DUM,NSEG,ISEG,JFC,INOD1,INOD2,X1AXIS,COUNT,NCELL -TYPE(MESH_TYPE), POINTER :: M=>NULL() +TYPE(MESH_TYPE), POINTER :: M CHARACTER(100) :: FILENAME M => MESHES(NM) @@ -7447,7 +7447,7 @@ SUBROUTINE ADD_CUTEDGE_TO_EDGE(NM,ILHF,IEG,JEG,KEG,X1AXEG,XV1,XV2) ! Local Variables: INTEGER :: NVERT,INOD1,INOD2,ICF,CEI,NEDGE,NOD1_TYPE,NOD2_TYPE,LOHI,AXIS -TYPE(MESH_TYPE), POINTER :: M=>NULL() +TYPE(MESH_TYPE), POINTER :: M M=>MESHES(NM) IF(M%ECVAR(IEG,JEG,KEG,CC_EGSC,X1AXEG)==CC_SOLID) RETURN @@ -7595,8 +7595,8 @@ SUBROUTINE ADD_REGEDGE_TO_FACE(NM,ILHF,X1AXIS,IEG,JEG,KEG,X1AXEG,IFC,JFC,KFC,X1A ! Local Variables: INTEGER :: NVERT,INOD1,INOD2,ICF,IEDGE,LOHI -TYPE(MESH_TYPE), POINTER :: M=>NULL() -TYPE(CC_CUTFACE_TYPE), POINTER :: CF=>NULL() +TYPE(MESH_TYPE), POINTER :: M +TYPE(CC_CUTFACE_TYPE), POINTER :: CF M=>MESHES(NM) IF(M%FCVAR(IFC,JFC,KFC,CC_FGSC,X1AXFC)==CC_SOLID) RETURN @@ -7940,8 +7940,8 @@ SUBROUTINE DROP_CUT_EDGE(NM,ICE,JCE,ETYPE) INTEGER :: CT,DUM,ILH,ICF1,IEDGE INTEGER, ALLOCATABLE, DIMENSION(:) :: IND -TYPE(MESH_TYPE), POINTER :: M=>NULL() -TYPE(CC_CUTEDGE_TYPE), POINTER :: CE=>NULL() +TYPE(MESH_TYPE), POINTER :: M +TYPE(CC_CUTEDGE_TYPE), POINTER :: CE IF(ICE<1) RETURN M =>MESHES(NM) @@ -8004,8 +8004,8 @@ SUBROUTINE DROP_CUTFACE(NM,FTYPE,I,J,K,ILHF,X1AXIS,IFC,JFC) INTEGER :: CT,DUM,ILH,ICC1,JCC1,IFACE,IFC1,IFACE2 INTEGER, ALLOCATABLE, DIMENSION(:) :: IND -TYPE(MESH_TYPE), POINTER :: M=>NULL() -TYPE(CC_CUTFACE_TYPE), POINTER :: CF=>NULL() +TYPE(MESH_TYPE), POINTER :: M +TYPE(CC_CUTFACE_TYPE), POINTER :: CF M => MESHES(NM) CF=> M%CUT_FACE(IFC) @@ -8122,7 +8122,7 @@ SUBROUTINE DROP_CUTCELL(NM,ICC,JCC) ! Local Variables INTEGER :: I,J,K,JCC2,IFC,CT INTEGER, ALLOCATABLE, DIMENSION(:) :: IND -TYPE(MESH_TYPE), POINTER :: M=>NULL() +TYPE(MESH_TYPE), POINTER :: M M => MESHES(NM) I = M%CUT_CELL(ICC)%IJK(IAXIS); J = M%CUT_CELL(ICC)%IJK(JAXIS); K = M%CUT_CELL(ICC)%IJK(KAXIS) @@ -8680,7 +8680,7 @@ SUBROUTINE GET_ICC2_JCC2(ICC,IFACE,INXT,JNXT,KNXT,ICC2,JCC2) INTEGER, INTENT(OUT):: ICC2, JCC2 INTEGER :: IFC, IFACE2 -TYPE(CC_CUTCELL_TYPE), POINTER :: CC2=>NULL() +TYPE(CC_CUTCELL_TYPE), POINTER :: CC2 ICC2=M%CCVAR(INXT,JNXT,KNXT,CC_IDCC); IF (ICC2<=0) RETURN CC2 => M%CUT_CELL(ICC2) DO JCC2=1,CC2%NCELL @@ -8783,7 +8783,7 @@ SUBROUTINE INIT_CFACE_CELL(NM,ICF,IFACE,CFACE_INDEX,SURF_INDEX,STAGE_FLG,IS_INB, REAL(EB):: XP(IAXIS:KAXIS),RDIR(IAXIS:KAXIS),V1(IAXIS:KAXIS),V2(IAXIS:KAXIS),V3(IAXIS:KAXIS),POS(IAXIS:KAXIS),DIST,DIST2 LOGICAL :: IS_INTERSECT=.FALSE., BACK_CFACE_FOUND=.FALSE. TYPE (SURFACE_TYPE), POINTER :: SF -TYPE (WALL_TYPE), POINTER :: WC=>NULL() +TYPE (WALL_TYPE), POINTER :: WC TYPE (MESH_TYPE), POINTER :: M TYPE (CFACE_TYPE), POINTER :: CFA TYPE (CC_CUTFACE_TYPE), POINTER :: CF @@ -21981,8 +21981,8 @@ SUBROUTINE READ_GEOM LOGICAL :: HAVE_SURF,HAVE_MATL,IN_LIST,SURF_INDEX_PER_FACE,BNDF_GEOM,LOGTEST REAL(EB), POINTER, DIMENSION(:) :: V1,V2,V3,V4 INTEGER, POINTER, DIMENSION(:) :: FACEI,FACEJ,FACE_FROM,FACE_TO,VOL -TYPE(MESH_TYPE), POINTER :: M=>NULL() -TYPE(GEOMETRY_TYPE), POINTER :: G=>NULL() +TYPE(MESH_TYPE), POINTER :: M +TYPE(GEOMETRY_TYPE), POINTER :: G INTEGER, PARAMETER :: CAD_GEOM_TYPE=1,TERRAIN_GEOM_TYPE=2,& BOX_GEOM_TYPE=3,SPHERE_GEOM_TYPE=4,CYLINDER_GEOM_TYPE=5 ! These 4 are for internal use. @@ -24710,7 +24710,7 @@ INTEGER FUNCTION GET_GEOM_ID(ID,N_LAST) INTEGER, INTENT(IN) :: N_LAST INTEGER :: N -TYPE(GEOMETRY_TYPE), POINTER :: G=>NULL() +TYPE(GEOMETRY_TYPE), POINTER :: G GET_GEOM_ID = 0 DO N=1,N_LAST @@ -24848,7 +24848,7 @@ SUBROUTINE GEOMCLIPS USE BOXTETRA_ROUTINES, ONLY : GEOMCLIP REAL(EB) :: XB(6) INTEGER :: I -TYPE(GEOMETRY_TYPE), POINTER :: G=>NULL() +TYPE(GEOMETRY_TYPE), POINTER :: G ! clip geometries to mesh @@ -24877,7 +24877,7 @@ SUBROUTINE PROCESS_GEOM(IS_DYNAMIC,TIME, N_VERTS, N_FACES, N_VOLUS) INTEGER, INTENT(OUT) :: N_VERTS, N_FACES, N_VOLUS INTEGER :: I, IVERT, IMOVE, MOVE_INDEX - TYPE(GEOMETRY_TYPE), POINTER :: G=>NULL() + TYPE(GEOMETRY_TYPE), POINTER :: G REAL(EB) :: DELTA_T, VEC(1:3) ! M(3,3) IF (IS_DYNAMIC) THEN @@ -24954,7 +24954,7 @@ SUBROUTINE GEOM2TEXTURE REAL(EB), POINTER, DIMENSION(:) :: XYZ, TFACES INTEGER, POINTER, DIMENSION(:) :: FACES INTEGER :: SURF_INDEX - TYPE(SURFACE_TYPE), POINTER :: SF=>NULL() + TYPE(SURFACE_TYPE), POINTER :: SF DO I = 1, N_GEOMETRY G=>GEOMETRY(I) @@ -24987,7 +24987,7 @@ SUBROUTINE MERGE_GEOMS(VERTS,N_VERTS,FACES,TFACES,GEOM_IDS,SURF_IDS,N_FACES,VOLU INTEGER, DIMENSION(:), INTENT(OUT) :: FACES(3*N_FACES), VOLUS(4*N_VOLUS), MATL_IDS(N_VOLUS), GEOM_IDS(N_FACES), SURF_IDS(N_FACES) INTEGER :: I -TYPE(GEOMETRY_TYPE), POINTER :: G=>NULL() +TYPE(GEOMETRY_TYPE), POINTER :: G INTEGER :: IVERT, ITFACE, IFACE, IVOLUS, IMATL, IGEOM, ISURF, OFFSET IVERT = 0 @@ -25187,7 +25187,7 @@ SUBROUTINE WRITE_GEOM(TIME) REAL(EB), INTENT(IN) :: TIME INTEGER :: ONE=1, ZERO=0, VERSION=2 -TYPE(TRANSFORM_TYPE), POINTER :: T=>NULL() +TYPE(TRANSFORM_TYPE), POINTER :: T IF (N_GEOMETRY<=0) RETURN diff --git a/Source/hvac.f90 b/Source/hvac.f90 index d0c88c35be7..5a1d6c934d7 100644 --- a/Source/hvac.f90 +++ b/Source/hvac.f90 @@ -139,9 +139,9 @@ SUBROUTINE READ_HVAC CHARACTER(LABEL_LENGTH) :: TYPE_ID !< Type of HVAC component (e.g. DUCT, FAN, DUCTNODE, etc.) CHARACTER(LABEL_LENGTH) :: VENT_ID !< Name of a VENT connected to a DUCTNODE or the first node for a LEAKAGE duct CHARACTER(LABEL_LENGTH) :: VENT2_ID !< VENT connected to the second node for a LEAKAGE duct -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() !< Pointer to a DUCTNODE -TYPE(DUCT_TYPE), POINTER :: DU=>NULL() !< Pointer to a DUCT -TYPE(HVAC_QUANTITY_TYPE), POINTER :: HQT=> NULL() !< Pointer to a DUCT_ or NODE_QUANTITY_ARRAY +TYPE(DUCTNODE_TYPE), POINTER :: DN !< Pointer to a DUCTNODE +TYPE(DUCT_TYPE), POINTER :: DU !< Pointer to a DUCT +TYPE(HVAC_QUANTITY_TYPE), POINTER :: HQT !< Pointer to a DUCT_ or NODE_QUANTITY_ARRAY NAMELIST /HVAC/ AIRCOIL_ID,AMBIENT,AREA,CLEAN_LOSS,COOLANT_SPECIFIC_HEAT,COOLANT_MASS_FLOW,COOLANT_TEMPERATURE,CTRL_ID,& DAMPER,DEBUG,DEVC_ID,DIAMETER,DISCHARGE_COEFFICIENT,DUCT_ID,& EFFICIENCY,FAN_ID,FILTER_ID,FIXED_Q,ID,LEAK_ENTHALPY,LEAK_PRESSURE_EXPONENT,LEAK_REFERENCE_PRESSURE,& @@ -794,10 +794,10 @@ SUBROUTINE PROC_HVAC REAL(EB) :: ZZ_GET(1:N_TRACKED_SPECIES) !< Species mass fraction array LOGICAL :: FOUND !< Flag indicating search loop has found the HVAC component assocaited with an ID LOGICAL :: DUMMY = .FALSE. !< Dummy flag -TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE),DIMENSION(:), POINTER:: TEMPALLOC=>NULL() -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() -TYPE(DUCT_TYPE), POINTER :: DU=>NULL() -TYPE(SURFACE_TYPE), POINTER :: SF=>NULL() +TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE),DIMENSION(:), POINTER:: TEMPALLOC +TYPE(DUCTNODE_TYPE), POINTER :: DN +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(SURFACE_TYPE), POINTER :: SF TNOW=CURRENT_TIME() @@ -1136,8 +1136,8 @@ END SUBROUTINE PROC_HVAC SUBROUTINE CONNECTION_CHECK INTEGER :: NN,NN3,ND LOGICAL :: NODE_CHECKED(N_DUCTNODES),NODE_CONNECTED(N_DUCTNODES) -TYPE(DUCT_TYPE), POINTER :: DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(DUCTNODE_TYPE), POINTER :: DN NODE_CONNECTED=.FALSE. NODE_CHECKED=.FALSE. @@ -1215,7 +1215,7 @@ SUBROUTINE INIT_DUCT_NODE REAL(EB) :: ZZ_GET(1:N_TRACKED_SPECIES) !< Species mass fraction array. REAL(EB) :: TNOW !< Current CPU time (s) used in computing length of time spent in HVAC routines. INTEGER :: NN,N -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() +TYPE(DUCTNODE_TYPE), POINTER :: DN TNOW = CURRENT_TIME() @@ -1277,7 +1277,7 @@ SUBROUTINE HVAC_CALC(T,DT,FIRST_PASS) LOGICAL, INTENT(IN):: FIRST_PASS LOGICAL :: CHANGE=.TRUE. LOGICAL, SAVE :: INITIALIZED_HVAC_MASS_TRANSPORT -TYPE(NETWORK_TYPE), POINTER:: NE=>NULL() +TYPE(NETWORK_TYPE), POINTER:: NE TNOW = CURRENT_TIME() @@ -1434,9 +1434,9 @@ END SUBROUTINE HVAC_CALC SUBROUTINE MATRIX_SOLVE(NNE) USE MATH_FUNCTIONS,ONLY : GAUSSJ INTEGER :: NNE,IERR,ND,NN -TYPE(NETWORK_TYPE), POINTER :: NE=>NULL() -TYPE(DUCT_TYPE), POINTER :: DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() +TYPE(NETWORK_TYPE), POINTER :: NE +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(DUCTNODE_TYPE), POINTER :: DN NE =>NETWORK(NNE) CALL GAUSSJ(LHS,NE%N_MATRIX,NE%N_MATRIX,RHS,1,1,IERR) @@ -1470,10 +1470,10 @@ SUBROUTINE HVAC_UPDATE(NNE,DT) ZZSUM(1:N_TRACKED_SPECIES),ZZTOT(1:N_TRACKED_SPECIES),HGAS,ESUM_FILTER(1:N_TRACKED_SPECIES) INTEGER :: NN,ND,NC,NR,NSS,ITMP,N_SUBSTEPS LOGICAL :: CYCLE_FLAG,SUB_CYCLE_FLAG,D_UPDATED(N_DUCTS),N_UPDATED(N_DUCTNODES),DR_NETWORK(N_DUCTRUNS) -TYPE (DUCTNODE_TYPE), POINTER :: DN=>NULL() -TYPE (DUCT_TYPE), POINTER :: DU=>NULL() -TYPE (DUCTRUN_TYPE), POINTER :: DR=>NULL() -TYPE (NETWORK_TYPE), POINTER :: NE=>NULL() +TYPE (DUCTNODE_TYPE), POINTER :: DN +TYPE (DUCT_TYPE), POINTER :: DU +TYPE (DUCTRUN_TYPE), POINTER :: DR +TYPE (NETWORK_TYPE), POINTER :: NE DR_NETWORK = .FALSE. NE => NETWORK(NNE) @@ -1801,9 +1801,9 @@ SUBROUTINE RHSNODE(NETWORK_INDEX) USE GLOBAL_CONSTANTS INTEGER, INTENT(IN)::NETWORK_INDEX INTEGER :: NN,ND, ARRAYLOC -TYPE(NETWORK_TYPE), POINTER::NE=>NULL() -TYPE(DUCT_TYPE), POINTER::DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER::DN=>NULL() +TYPE(NETWORK_TYPE), POINTER::NE +TYPE(DUCT_TYPE), POINTER::DU +TYPE(DUCTNODE_TYPE), POINTER::DN NE => NETWORK(NETWORK_INDEX) DO NN = 1, NE%N_DUCTNODES @@ -1828,9 +1828,9 @@ SUBROUTINE LHSNODE(NETWORK_INDEX) USE GLOBAL_CONSTANTS INTEGER, INTENT(IN)::NETWORK_INDEX INTEGER :: NN,ND, ARRAYLOC1,ARRAYLOC2 -TYPE(NETWORK_TYPE), POINTER::NE=>NULL() -TYPE(DUCT_TYPE), POINTER::DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER::DN=>NULL() +TYPE(NETWORK_TYPE), POINTER::NE +TYPE(DUCT_TYPE), POINTER::DU +TYPE(DUCTNODE_TYPE), POINTER::DN NE => NETWORK(NETWORK_INDEX) DO NN = 1, NE%N_DUCTNODES @@ -1853,9 +1853,9 @@ SUBROUTINE DPSTARCALC USE GLOBAL_CONSTANTS INTEGER :: NN,IPZ,IOPZ -TYPE(DUCT_TYPE), POINTER::DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER::DN=>NULL() -TYPE(P_ZONE_TYPE), POINTER::PZ=>NULL() +TYPE(DUCT_TYPE), POINTER::DU +TYPE(DUCTNODE_TYPE), POINTER::DN +TYPE(P_ZONE_TYPE), POINTER::PZ DO IPZ = 1,N_ZONE PZ => P_ZONE(IPZ) @@ -1902,9 +1902,9 @@ SUBROUTINE RHSDUCT(NETWORK_INDEX) REAL(EB) :: HEAD !< DUCT pressure head (Pa) REAL(EB) :: RGZ !< DUCT elevation head (Pa) REAL(EB) :: XYZ(3) !< Distance between duct nodes (m) -TYPE(NETWORK_TYPE), POINTER::NE=>NULL() -TYPE(DUCT_TYPE), POINTER::DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER::DN=>NULL() +TYPE(NETWORK_TYPE), POINTER::NE +TYPE(DUCT_TYPE), POINTER::DU +TYPE(DUCTNODE_TYPE), POINTER::DN NE => NETWORK(NETWORK_INDEX) @@ -1964,10 +1964,10 @@ SUBROUTINE LHSDUCT(NETWORK_INDEX) USE GLOBAL_CONSTANTS INTEGER, INTENT(IN)::NETWORK_INDEX INTEGER :: NN,ND, ARRAYLOC1,ARRAYLOC2 -TYPE(NETWORK_TYPE), POINTER::NE=>NULL() -TYPE(DUCT_TYPE), POINTER::DU=>NULL(),DU2=>NULL() -TYPE(DUCTNODE_TYPE), POINTER::DN=>NULL(),DN2=>NULL() -TYPE(P_ZONE_TYPE), POINTER::PZ=>NULL() +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) @@ -2060,9 +2060,9 @@ SUBROUTINE UPDATE_FAN(T,ND) REAL(EB), INTENT(IN) :: T REAL(EB) :: DEL_P,VDOT REAL(EB) :: TSI,FLOW1,FLOW2,FLOW3,ERROR,DR_MAX,DR_MIN,CONST,P_SYS,FLOWGUESS,MAX_PRES,RAMP_FAC,REV_FAC,A,B,C -TYPE(DUCT_TYPE), POINTER::DU=>NULL() -TYPE(FAN_TYPE), POINTER::FA=>NULL() -TYPE(RAMPS_TYPE), POINTER :: RP=>NULL() +TYPE(DUCT_TYPE), POINTER::DU +TYPE(FAN_TYPE), POINTER::FA +TYPE(RAMPS_TYPE), POINTER :: RP DU=> DUCT(ND) FA=> FAN(DU%FAN_INDEX) @@ -2413,9 +2413,9 @@ SUBROUTINE DETERMINE_FIXED_ELEMENTS(T,CHANGE) LOGICAL, INTENT(INOUT) :: CHANGE REAL(EB) :: VOLUME_FLOW,TSI LOGICAL :: ZERO_AREA,FAN_OP_OLD -TYPE(FAN_TYPE), POINTER :: FA=>NULL() -TYPE(DUCT_TYPE), POINTER :: DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() +TYPE(FAN_TYPE), POINTER :: FA +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(DUCTNODE_TYPE), POINTER :: DN DUCT%FIXED = .FALSE. DUCT%VOLUME_FLOW = 0._EB @@ -2531,7 +2531,7 @@ SUBROUTINE FIND_NETWORKS(CHANGE,T) LOGICAL, INTENT(OUT) :: CHANGE LOGICAL :: CHANGE2 REAL(EB), INTENT(IN):: T -TYPE(DUCT_TYPE), POINTER :: DU=>NULL() +TYPE(DUCT_TYPE), POINTER :: DU CHANGE = .FALSE. IF (.NOT. ALLOCATED(NETWORK)) CHANGE = .TRUE. @@ -2664,9 +2664,9 @@ END SUBROUTINE FIND_NETWORKS SUBROUTINE SETUP_SOLUTION_POINTERS INTEGER:: NNE,NN,ND,COUNTER -TYPE(DUCT_TYPE), POINTER :: DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() -TYPE(NETWORK_TYPE), POINTER :: NE=>NULL() +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(DUCTNODE_TYPE), POINTER :: DN +TYPE(NETWORK_TYPE), POINTER :: NE DO NNE = 1,N_NETWORKS COUNTER = 0 @@ -2701,9 +2701,9 @@ SUBROUTINE UPDATE_LOSS(T,DT,NNE) INTEGER, INTENT(IN) :: NNE REAL(EB), INTENT(IN) :: T,DT INTEGER :: ND,ND2, NN,NUM_OUT -TYPE(DUCT_TYPE), POINTER :: DU=>NULL(),DU2=>NULL() -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() -TYPE(NETWORK_TYPE), POINTER :: NE=>NULL() +TYPE(DUCT_TYPE), POINTER :: DU,DU2 +TYPE(DUCTNODE_TYPE), POINTER :: DN +TYPE(NETWORK_TYPE), POINTER :: NE NE => NETWORK(NNE) @@ -2851,8 +2851,8 @@ SUBROUTINE SET_GUESS(NNE,T) INTEGER, INTENT(IN) :: NNE REAL(EB), INTENT(IN):: T INTEGER :: ND -TYPE(DUCT_TYPE),POINTER :: DU=>NULL() -TYPE(NETWORK_TYPE), POINTER :: NE=>NULL() +TYPE(DUCT_TYPE),POINTER :: DU +TYPE(NETWORK_TYPE), POINTER :: NE NE => NETWORK(NNE) @@ -2886,9 +2886,9 @@ SUBROUTINE SET_DONOR(NNE) INTEGER :: ND,NN INTEGER, INTENT(IN) :: NNE REAL(EB) :: RHOLAST,TMPLAST,FVAL,OMFVAL,ITERFRAC -TYPE(DUCT_TYPE), POINTER :: DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() -TYPE(NETWORK_TYPE), POINTER :: NE=>NULL() +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(DUCTNODE_TYPE), POINTER :: DN +TYPE(NETWORK_TYPE), POINTER :: NE NE => NETWORK(NNE) ITERFRAC = REAL(ITER,EB)/REAL(ITER_MAX,EB) @@ -2946,9 +2946,9 @@ SUBROUTINE CONVERGENCE_CHECK(NNE) INTEGER :: NN, ND, COUNT LOGICAL :: CONVERGED REAL(EB) :: MSUM,MTOT,MFLOW -TYPE(NETWORK_TYPE), POINTER :: NE=>NULL() -TYPE(DUCT_TYPE), POINTER :: DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() +TYPE(NETWORK_TYPE), POINTER :: NE +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(DUCTNODE_TYPE), POINTER :: DN NE => NETWORK(NNE) CONVERGED = .TRUE. @@ -3014,7 +3014,7 @@ SUBROUTINE COLLAPSE_HVAC_BC(T) REAL(EB) :: TNOW !< Current CPU time (s) used in computing length of time spent in HVAC routines. INTEGER:: NN,NS REAL(EB) :: AREA,RHO_SUM,ZZ_GET(1:N_TRACKED_SPECIES),HGAS -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL(),DN2=>NULL() +TYPE(DUCTNODE_TYPE), POINTER :: DN,DN2 TNOW = CURRENT_TIME() @@ -3122,8 +3122,8 @@ SUBROUTINE SET_INIT_HVAC 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 -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL(),DN2=>NULL() -TYPE(DUCT_TYPE), POINTER :: DU=>NULL() +TYPE(DUCTNODE_TYPE), POINTER :: DN,DN2 +TYPE(DUCT_TYPE), POINTER :: DU TNOW = CURRENT_TIME() @@ -3204,8 +3204,8 @@ SUBROUTINE SET_INIT_HVAC_MASS_TRANSPORT 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 -TYPE(DUCT_TYPE), POINTER :: DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(DUCTNODE_TYPE), POINTER :: DN ZZ_GET(1:N_TRACKED_SPECIES) = SPECIES_MIXTURE(1:N_TRACKED_SPECIES)%ZZ0 @@ -3246,8 +3246,8 @@ SUBROUTINE LEAKAGE_HVAC USE PHYSICAL_FUNCTIONS, ONLY: GET_ENTHALPY REAL(EB) :: ZZ_GET(1:N_TRACKED_SPECIES),HGAS INTEGER :: I_DUCT,I_DUCTNODE,NZ1,NZ2 -TYPE (DUCTNODE_TYPE), POINTER:: DN1=>NULL(),DN2=>NULL() -TYPE (DUCT_TYPE), POINTER:: DU=>NULL() +TYPE (DUCTNODE_TYPE), POINTER:: DN1,DN2 +TYPE (DUCT_TYPE), POINTER:: DU I_DUCT = N_DUCTS - LEAK_DUCTS I_DUCTNODE = N_DUCTNODES - 2 * LEAK_DUCTS @@ -3495,7 +3495,7 @@ SUBROUTINE UPDATE_HVAC_MASS_TRANSPORT(DT,NR) REAL(EB), INTENT(IN) :: DT INTEGER, INTENT(IN) :: NR INTEGER :: N_SUBSTEPS,ND,NS,NC -TYPE(DUCT_TYPE),POINTER :: DU=>NULL() +TYPE(DUCT_TYPE),POINTER :: DU REAL(EB) :: DT_CFL,DT_DUCT,MASS_FLUX,ZZ_GET(N_TRACKED_SPECIES),HGAS REAL(EB), ALLOCATABLE, DIMENSION(:) :: CPT_C,CPT_F,RHOCPT_C REAL(EB), ALLOCATABLE, DIMENSION(:,:) :: RHOZZ_C,ZZ_F @@ -3579,8 +3579,8 @@ SUBROUTINE EXAMINE_LOSSES LOGICAL, ALLOCATABLE, DIMENSION(:,:) :: LOSS END TYPE N_LOSS_TEMP TYPE(N_LOSS_TEMP), ALLOCATABLE, DIMENSION(:) :: N_LOSS -TYPE(DUCT_TYPE), POINTER :: DU=> NULL() -TYPE(DUCTNODE_TYPE), POINTER :: DN=> NULL(),DN2=>NULL() +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(DUCTNODE_TYPE), POINTER :: DN,DN2 LOSS_D = .FALSE. LOSS_N = .FALSE. @@ -3889,7 +3889,7 @@ END SUBROUTINE EXAMINE_LOSSES SUBROUTINE HVAC_QFAN_CALC(T) REAL(EB), INTENT(IN) :: T INTEGER :: NR,NF -TYPE(DUCTRUN_TYPE), POINTER :: DR=>NULL() +TYPE(DUCTRUN_TYPE), POINTER :: DR ! Obtain system curves for HVAC fans DR_LOOP: DO NR = 1, N_DUCTRUNS @@ -3956,7 +3956,7 @@ END SUBROUTINE HVAC_QFAN_CALC SUBROUTINE SET_GUESS_QFAN(DUCTRUN_INDEX,NF) INTEGER, INTENT(IN) :: DUCTRUN_INDEX,NF INTEGER :: ND -TYPE(DUCTRUN_TYPE), POINTER :: DR=>NULL() +TYPE(DUCTRUN_TYPE), POINTER :: DR DR => DUCTRUN(DUCTRUN_INDEX) @@ -3980,7 +3980,7 @@ SUBROUTINE QFAN_SIMPLE(DUCTRUN_INDEX,T) INTEGER, INTENT(IN) :: DUCTRUN_INDEX REAL(EB), INTENT(IN) :: T REAL(EB) :: P1,P2,FAN_P -TYPE(DUCTRUN_TYPE), POINTER :: DR=>NULL() +TYPE(DUCTRUN_TYPE), POINTER :: DR DR => DUCTRUN(DUCTRUN_INDEX) @@ -4010,8 +4010,8 @@ SUBROUTINE FIND_DUCTRUNS(CHANGE) DR_DUCTS(N_DUCTS),DR_DUCTNODES(N_DUCTS),DUCTRUN_MAP(N_DUCTS),DR_INDEX LOGICAL :: NODE_CHECKED(N_DUCTNODES),NODE_CONNECTED(N_DUCTNODES),DUCT_FOUND,FAN_PRESENT(N_DUCTS),MT_PRESENT(N_DUCTS) REAL(EB) :: C0,ZZ_GET(1:N_TRACKED_SPECIES) -TYPE(DUCT_TYPE), POINTER :: DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(DUCTNODE_TYPE), POINTER :: DN IF (.NOT. CHANGE .AND. ALLOCATED(DUCTRUN)) RETURN IF (ALLOCATED(DUCTRUN)) DEALLOCATE(DUCTRUN) @@ -4262,7 +4262,7 @@ SUBROUTINE MATRIX_SOLVE_QFAN(DUCTRUN_INDEX,NF) USE MATH_FUNCTIONS,ONLY : GAUSSJ INTEGER,INTENT(IN) :: DUCTRUN_INDEX,NF INTEGER :: IERR -TYPE(DUCTRUN_TYPE), POINTER :: DR=>NULL() +TYPE(DUCTRUN_TYPE), POINTER :: DR DR =>DUCTRUN(DUCTRUN_INDEX) @@ -4281,9 +4281,9 @@ SUBROUTINE RHSNODE_QFAN(DUCTRUN_INDEX) USE GLOBAL_CONSTANTS INTEGER, INTENT(IN)::DUCTRUN_INDEX INTEGER :: NN,ND -TYPE(DUCTRUN_TYPE), POINTER::DR=>NULL() -TYPE(DUCT_TYPE), POINTER::DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER::DN=>NULL() +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 @@ -4305,9 +4305,9 @@ SUBROUTINE LHSNODE_QFAN(DUCTRUN_INDEX,NF) USE GLOBAL_CONSTANTS INTEGER, INTENT(IN)::DUCTRUN_INDEX,NF INTEGER :: NN,ND,ARRAYLOC -TYPE(DUCTRUN_TYPE), POINTER::DR=>NULL() -TYPE(DUCT_TYPE), POINTER::DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER::DN=>NULL() +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 @@ -4338,9 +4338,9 @@ SUBROUTINE RHSDUCT_QFAN(DUCTRUN_INDEX,NF,T) REAL(EB) :: RGZ !< DUCT elevation head (Pa) REAL(EB) :: XYZ(3) !< Distance between duct nodes (m) REAL(EB) :: DP_FAN !< Max pressure of fan (Pa) -TYPE(DUCTRUN_TYPE), POINTER::DR=>NULL() -TYPE(DUCT_TYPE), POINTER::DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER::DN=>NULL() +TYPE(DUCTRUN_TYPE), POINTER::DR +TYPE(DUCT_TYPE), POINTER::DU +TYPE(DUCTNODE_TYPE), POINTER::DN DR => DUCTRUN(DUCTRUN_INDEX) @@ -4391,9 +4391,9 @@ SUBROUTINE LHSDUCT_QFAN(DUCTRUN_INDEX,NF) USE GLOBAL_CONSTANTS INTEGER, INTENT(IN)::DUCTRUN_INDEX,NF INTEGER :: ND -TYPE(DUCTRUN_TYPE), POINTER::DR=>NULL() -TYPE(DUCT_TYPE), POINTER::DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER::DN=>NULL() +TYPE(DUCTRUN_TYPE), POINTER::DR +TYPE(DUCT_TYPE), POINTER::DU +TYPE(DUCTNODE_TYPE), POINTER::DN DR => DUCTRUN(DUCTRUN_INDEX) @@ -4441,9 +4441,9 @@ SUBROUTINE CONVERGENCE_CHECK_QFAN(DUCTRUN_INDEX,NF) INTEGER :: NN, ND, COUNT REAL(EB) :: MSUM,MTOT,MFLOW,VEL LOGICAL :: CONVERGED -TYPE(DUCTRUN_TYPE), POINTER :: DR=>NULL() -TYPE(DUCT_TYPE), POINTER :: DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() +TYPE(DUCTRUN_TYPE), POINTER :: DR +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(DUCTNODE_TYPE), POINTER :: DN DR => DUCTRUN(DUCTRUN_INDEX) CONVERGED = .TRUE. @@ -4542,9 +4542,9 @@ SUBROUTINE UPDATE_LOSS_QFAN(T,DUCTRUN_INDEX,NF) INTEGER, INTENT(IN) :: DUCTRUN_INDEX,NF REAL(EB), INTENT(IN) :: T INTEGER :: ND,ND2, NN,NUM_OUT,DM_INDEX,D_INDEX -TYPE(DUCT_TYPE), POINTER :: DU=>NULL(),DU2=>NULL() -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() -TYPE(DUCTRUN_TYPE), POINTER :: DR=>NULL() +TYPE(DUCT_TYPE), POINTER :: DU,DU2 +TYPE(DUCTNODE_TYPE), POINTER :: DN +TYPE(DUCTRUN_TYPE), POINTER :: DR DR=> DUCTRUN(DUCTRUN_INDEX) DO ND = 1, DR%N_DUCTS @@ -4716,9 +4716,9 @@ SUBROUTINE SET_DONOR_QFAN(DUCTRUN_INDEX,NF) INTEGER :: ND,NN INTEGER, INTENT(IN) :: DUCTRUN_INDEX,NF REAL(EB) :: DVEL -TYPE(DUCT_TYPE), POINTER :: DU=>NULL() -TYPE(DUCTNODE_TYPE), POINTER :: DN=>NULL() -TYPE(DUCTRUN_TYPE), POINTER :: DR=>NULL() +TYPE(DUCT_TYPE), POINTER :: DU +TYPE(DUCTNODE_TYPE), POINTER :: DN +TYPE(DUCTRUN_TYPE), POINTER :: DR DR => DUCTRUN(DUCTRUN_INDEX) @@ -4796,9 +4796,9 @@ SUBROUTINE HVAC_UPDATE_QFAN(DUCTRUN_INDEX,NF) INTEGER, INTENT(IN) :: DUCTRUN_INDEX,NF INTEGER :: NN,ND,ND2 LOGICAL :: CYCLE_FLAG,D_UPDATED(N_DUCTS),N_UPDATED(N_DUCTNODES) -TYPE (DUCTNODE_TYPE), POINTER :: DN=>NULL(),DN2=>NULL() -TYPE (DUCT_TYPE), POINTER :: DU=>NULL() -TYPE (DUCTRUN_TYPE), POINTER :: DR=>NULL() +TYPE (DUCTNODE_TYPE), POINTER :: DN,DN2 +TYPE (DUCT_TYPE), POINTER :: DU +TYPE (DUCTRUN_TYPE), POINTER :: DR DR=>DUCTRUN(DUCTRUN_INDEX) diff --git a/Source/mesh.f90 b/Source/mesh.f90 index 85ae65f05a1..5917a81f809 100644 --- a/Source/mesh.f90 +++ b/Source/mesh.f90 @@ -486,7 +486,7 @@ SUBROUTINE POINT_TO_MESH(NM) ! Local names for MESH variables point to Global names INTEGER, INTENT(IN) :: NM -TYPE (MESH_TYPE), POINTER :: M=>NULL() +TYPE (MESH_TYPE), POINTER :: M M=>MESHES(NM) U=>M%U diff --git a/Source/part.f90 b/Source/part.f90 index ee0aadb4f8c..bcfb3f1ee7c 100644 --- a/Source/part.f90 +++ b/Source/part.f90 @@ -26,8 +26,8 @@ SUBROUTINE GENERATE_PARTICLE_DISTRIBUTIONS REAL(EB) :: LL,UL,BIN_SIZE,TNOW,DD,DI INTEGER :: I,J,IL,IU,ILPC -TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC=>NULL() -TYPE (RAMPS_TYPE), POINTER :: RM=>NULL() +TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC +TYPE (RAMPS_TYPE), POINTER :: RM IF (N_LAGRANGIAN_CLASSES==0) RETURN ! Don't waste time if no particles @@ -137,13 +137,13 @@ SUBROUTINE INSERT_ALL_PARTICLES(T,NM) INTEGER :: N,N_INSERT,ILAT,NEW_LP_INDEX,III,IOS,LU_VEG_IN,NVOX,VXI INTEGER, ALLOCATABLE, DIMENSION(:) :: LP_INDEX_LOOKUP LOGICAL :: INSERT_ANOTHER_BATCH -TYPE (PROPERTY_TYPE), POINTER :: PY=>NULL() -TYPE (TABLES_TYPE), POINTER :: TA=>NULL() -TYPE (DEVICE_TYPE), POINTER :: DV=>NULL() -TYPE (SURFACE_TYPE), POINTER :: SF=>NULL() -TYPE (LAGRANGIAN_PARTICLE_TYPE), POINTER :: LP=>NULL() -TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC=>NULL() -TYPE (INITIALIZATION_TYPE), POINTER :: IN=>NULL() +TYPE (PROPERTY_TYPE), POINTER :: PY +TYPE (TABLES_TYPE), POINTER :: TA +TYPE (DEVICE_TYPE), POINTER :: DV +TYPE (SURFACE_TYPE), POINTER :: SF +TYPE (LAGRANGIAN_PARTICLE_TYPE), POINTER :: LP +TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC +TYPE (INITIALIZATION_TYPE), POINTER :: IN TYPE (WALL_TYPE), POINTER :: WC TYPE (BOUNDARY_COORD_TYPE), POINTER :: BC TYPE (BOUNDARY_ONE_D_TYPE), POINTER :: ONE_D @@ -1811,8 +1811,8 @@ SUBROUTINE MOVE_PARTICLES(T,DT,NM) LOGICAL :: HIT_SOLID,CC_CC_GASPHASE,EXTRACT_PARTICLE INTEGER :: IP,IC_NEW,IIG_OLD,JJG_OLD,KKG_OLD,IIG_TRY,JJG_TRY,KKG_TRY,IW,IC_OLD,IOR_HIT,& N_ITER,ITER,I_COORD,J_COORD,IC_TRY,IOR_ORIGINAL,ICC -TYPE (LAGRANGIAN_PARTICLE_TYPE), POINTER :: LP=>NULL() -TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC=>NULL() +TYPE (LAGRANGIAN_PARTICLE_TYPE), POINTER :: LP +TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC TYPE (SURFACE_TYPE), POINTER :: SF TYPE(CFACE_TYPE), POINTER :: CFA_OLD,CFA_NEW TYPE(BOUNDARY_PROP1_TYPE), POINTER :: B1 @@ -2570,7 +2570,7 @@ SUBROUTINE MOVE_IN_GAS LP_FORCE,FACE_VOLS(2,2,2),VEL_G_INT(3),VOL_WGT(2,2,2),& EMBER_PACKING_RATIO,LOCAL_PACKING_RATIO,LPC_GEOM_FACTOR REAL(EB) :: WGT(2,2,2,3),VEL_G(2,2,2) -REAL(EB), POINTER, DIMENSION(:,:,:) :: FV_D=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: FV_D REAL(EB), SAVE :: BETA INTEGER :: IIX,JJY,KKZ,IL,JL,KL,AXIS,N_LPC2 LOGICAL :: STUCK=.FALSE. @@ -3459,13 +3459,13 @@ SUBROUTINE PARTICLE_MASS_ENERGY_TRANSFER(T,DT,NM) REAL(EB), INTENT(IN) :: T,DT INTEGER, INTENT(IN) :: NM -REAL(EB), POINTER, DIMENSION(:,:,:) :: MVAP_TOT=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: MVAP_TOT !< Amount of mass evaporated into a grid cell (kg) -REAL(EB), POINTER, DIMENSION(:,:,:) :: RHO_INTERIM=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: RHO_INTERIM !< Current gas density (kg/m3) -REAL(EB), POINTER, DIMENSION(:,:,:) :: TMP_INTERIM=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: TMP_INTERIM !< Current gas temperature (K) -REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZ_INTERIM=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZ_INTERIM !< Current gas species mass fractions REAL(EB) :: C_DROP2 !< Specific heat of particle (J/kg/K) REAL(EB) :: CP !< Specific heat (J/kg/K) diff --git a/Source/pres.f90 b/Source/pres.f90 index e419bee5b8b..15ebfc174bf 100644 --- a/Source/pres.f90 +++ b/Source/pres.f90 @@ -1111,12 +1111,12 @@ SUBROUTINE ULMAT_SOLVER_SETUP(NM) ! Local Variables: INTEGER :: I,J,K,IPZ,ICC,JCC,IW,IOR,ZBTYPE_LAST(-3:3),WALL_BTYPE,NZIM,IPZIM,IZERO,JDIM,IERR -INTEGER, POINTER :: IBAR=>NULL(),JBAR=>NULL(),KBAR=>NULL(),IBP1=>NULL(),JBP1=>NULL(),KBP1=>NULL(),& - ITRN=>NULL(),JTRN=>NULL(),KTRN=>NULL() +INTEGER, POINTER :: IBAR,JBAR,KBAR,IBP1,JBP1,KBP1,& + ITRN,JTRN,KTRN TYPE(ZONE_MESH_TYPE), POINTER :: ZM -TYPE(MESH_TYPE), POINTER :: M=>NULL() -TYPE(WALL_TYPE), POINTER :: WC=>NULL() -TYPE(EXTERNAL_WALL_TYPE), POINTER :: EWC=>NULL() +TYPE(MESH_TYPE), POINTER :: M +TYPE(WALL_TYPE), POINTER :: WC +TYPE(EXTERNAL_WALL_TYPE), POINTER :: EWC TYPE(BOUNDARY_COORD_TYPE), POINTER :: BC INTEGER, PARAMETER :: NULL_BTYPE=0,DIRICHLET_BTYPE=1,NEUMANN_BTYPE=2,PERIODIC_BTYPE=3 @@ -1435,7 +1435,7 @@ SUBROUTINE ULMAT_SOLVE_ZONE(NM,IPZ) TYPE (EXTERNAL_WALL_TYPE), POINTER :: EWC TYPE (CFACE_TYPE), POINTER :: CFA TYPE (BOUNDARY_COORD_TYPE), POINTER :: BC -REAL(EB), POINTER, DIMENSION(:,:,:) :: HP=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: HP #ifdef WITH_MKL INTEGER :: PHASE, PERM(1) #endif @@ -1902,7 +1902,7 @@ SUBROUTINE ULMAT_GET_H_REGFACES(NM) INTEGER, ALLOCATABLE, DIMENSION(:,:) :: IJKBUFFER INTEGER :: IW, IIG, JJG, KKG, IOR LOGICAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: LOG_INTWC -TYPE(WALL_TYPE), POINTER :: WC=>NULL() +TYPE(WALL_TYPE), POINTER :: WC TYPE(BOUNDARY_COORD_TYPE), POINTER :: BC TYPE(MESH_TYPE), POINTER :: M TYPE(ZONE_MESH_TYPE), POINTER :: ZM1,ZM2 @@ -2042,9 +2042,9 @@ SUBROUTINE ULMAT_MATRIXGRAPH_H(NM,IPZ) INTEGER :: X1AXIS,IFACE,I,J,K,ICF,IND(LOW_IND:HIGH_IND) INTEGER :: LOCROW,LOCROW_1,LOCROW_2,IIND,NII,ILOC,NUNKH,IROW,ICC INTEGER :: NREG,IIM,JJM,KKM,IIP,JJP,KKP,LOW_FACE,HIGH_FACE,IW,II,JJ,KK,IIG,JJG,KKG -TYPE(CC_REGFACE_TYPE), POINTER, DIMENSION(:) :: REGFACE_H=>NULL() -TYPE(CC_RCFACE_TYPE), POINTER :: RCF=>NULL() -TYPE(WALL_TYPE), POINTER :: WC=>NULL() +TYPE(CC_REGFACE_TYPE), POINTER, DIMENSION(:) :: REGFACE_H +TYPE(CC_RCFACE_TYPE), POINTER :: RCF +TYPE(WALL_TYPE), POINTER :: WC TYPE (BOUNDARY_COORD_TYPE), POINTER :: BC INTEGER :: WC_JD(1:2,1:2) TYPE(ZONE_MESH_TYPE), POINTER :: ZM @@ -2418,8 +2418,8 @@ SUBROUTINE ULMAT_H_MATRIX(NM,IPZ) INTEGER :: LOCROW_1,LOCROW_2,ILOC,NUNKH INTEGER :: NREG,IIM,JJM,KKM,IIP,JJP,KKP,LOW_FACE,HIGH_FACE REAL(EB):: AF,IDX,BIJ,KFACE(2,2) -TYPE(CC_REGFACE_TYPE), POINTER, DIMENSION(:) :: REGFACE_H=>NULL() -TYPE(CC_RCFACE_TYPE), POINTER :: RCF=>NULL() +TYPE(CC_REGFACE_TYPE), POINTER, DIMENSION(:) :: REGFACE_H +TYPE(CC_RCFACE_TYPE), POINTER :: RCF TYPE(ZONE_MESH_TYPE), POINTER :: ZM REAL(EB), POINTER, DIMENSION(:) :: DX1,DX2,DX3 @@ -2598,7 +2598,7 @@ SUBROUTINE ULMAT_BCS_H_MATRIX(NM,IPZ) INTEGER :: DUM,H_MAT_IVEC INTEGER :: JLOC,JCOL,IND(LOW_IND:HIGH_IND),ILH,JLH,KLH,IRC REAL(EB):: AF,IDX,BIJ -TYPE(WALL_TYPE), POINTER :: WC=>NULL() +TYPE(WALL_TYPE), POINTER :: WC TYPE (BOUNDARY_COORD_TYPE), POINTER :: BC TYPE(ZONE_MESH_TYPE), POINTER :: ZM INTEGER :: IIG,JJG,KKG,II,JJ,KK,IW,IROW,ICC @@ -3025,7 +3025,7 @@ MODULE GLOBMAT_SOLVER INTEGER :: CGSC=IS_CGSC, UNKH=IS_UNKH, NCVARS=IS_NCVARS ! Define CC pointers: -TYPE(CC_CUTCELL_TYPE), POINTER :: CC=>NULL() +TYPE(CC_CUTCELL_TYPE), POINTER :: CC ! Pardiso or Sparse cluster solver message level: INTEGER, SAVE :: MSGLVL = 0 ! 0 no messages, 1 print statistical information @@ -3070,8 +3070,8 @@ SUBROUTINE GLMAT_SOLVER(T,DT) INTEGER :: PERM(1), PHASE #endif INTEGER :: NM, IW, IIG, JJG, KKG, IOR, IROW, I, J, K, ICC -TYPE (WALL_TYPE), POINTER :: WC=>NULL() -TYPE (EXTERNAL_WALL_TYPE), POINTER :: EWC=>NULL() +TYPE (WALL_TYPE), POINTER :: WC +TYPE (EXTERNAL_WALL_TYPE), POINTER :: EWC TYPE (BOUNDARY_COORD_TYPE), POINTER :: BC REAL(EB), POINTER, DIMENSION(:,:,:) :: HP REAL(EB) :: SUM_FH(2), SUM_XH(2), MEAN_FH, MEAN_XH @@ -3464,8 +3464,8 @@ SUBROUTINE CHECK_UNSUPPORTED_MESH(SUPPORTED_MESH) INTEGER, ALLOCATABLE, DIMENSION(:,:) :: MESH_GRAPH,DSETS LOGICAL, ALLOCATABLE, DIMENSION(:) :: COUNTED INTEGER, ALLOCATABLE, DIMENSION(:) :: DIRI_SET,MESH_LIST -TYPE (WALL_TYPE), POINTER :: WC=>NULL() -TYPE (EXTERNAL_WALL_TYPE), POINTER :: EWC=>NULL() +TYPE (WALL_TYPE), POINTER :: WC +TYPE (EXTERNAL_WALL_TYPE), POINTER :: EWC INTEGER :: NOM,IW,NMLOC,NSETS,ISET,PIVOT,PIVOT_LOC,MESHES_LEFT,CTMSH_LO,CTMSH_HI @@ -3655,10 +3655,10 @@ SUBROUTINE COPY_H_OMESH_TO_MESH USE CC_SCALARS, ONLY: GET_H_GUARD_CUTCELL ! Local Variables: INTEGER :: NM,NOM,II,JJ,KK,IOR,IW,IIO,JJO,KKO -TYPE (OMESH_TYPE), POINTER :: OM=>NULL() -TYPE (WALL_TYPE), POINTER :: WC=>NULL() +TYPE (OMESH_TYPE), POINTER :: OM +TYPE (WALL_TYPE), POINTER :: WC TYPE (BOUNDARY_COORD_TYPE), POINTER :: BC -TYPE (EXTERNAL_WALL_TYPE), POINTER :: EWC=>NULL() +TYPE (EXTERNAL_WALL_TYPE), POINTER :: EWC LOGICAL :: FLG IF (CC_IBM) CALL_FOR_GLMAT = .FALSE. @@ -3800,10 +3800,10 @@ SUBROUTINE COPY_HS_IN_CCVAR(VAR_CC) ! Local Variables: INTEGER :: NM,NOM,II,JJ,KK,IOR,IW,IIO,JJO,KKO -TYPE (OMESH_TYPE), POINTER :: OM=>NULL() -TYPE (WALL_TYPE), POINTER :: WC=>NULL() +TYPE (OMESH_TYPE), POINTER :: OM +TYPE (WALL_TYPE), POINTER :: WC TYPE (BOUNDARY_COORD_TYPE), POINTER :: BC -TYPE (EXTERNAL_WALL_TYPE), POINTER :: EWC=>NULL() +TYPE (EXTERNAL_WALL_TYPE), POINTER :: EWC LOGICAL :: FLG MESH_LOOP : DO NM=LOWER_MESH_INDEX,UPPER_MESH_INDEX @@ -4201,7 +4201,7 @@ SUBROUTINE GET_BCS_H_MATRIX ! Local Variables: INTEGER :: NM,NM1,JLOC,JCOL,IND(LOW_IND:HIGH_IND),IND_LOC(LOW_IND:HIGH_IND),IERR,IIG,JJG,KKG,II,JJ,KK,IW,ILH,JLH,KLH,IRC REAL(EB):: AF,IDX,BIJ -TYPE(WALL_TYPE), POINTER :: WC=>NULL() +TYPE(WALL_TYPE), POINTER :: WC TYPE (BOUNDARY_COORD_TYPE), POINTER :: BC REAL(EB), POINTER, DIMENSION(:,:) :: D_MAT_HP INTEGER :: H_MAT_IVEC @@ -4304,10 +4304,10 @@ SUBROUTINE GET_H_MATRIX INTEGER :: I,J,K,I1,I2,I3,IIP,JJP,KKP,IIM,JJM,KKM INTEGER :: ILOC,JLOC,IROW,JCOL,IND(LOW_IND:HIGH_IND),IND_LOC(LOW_IND:HIGH_IND) REAL(EB):: AF,IDX,BIJ,KFACE(1:2,1:2) -TYPE(CC_REGFACE_TYPE), POINTER, DIMENSION(:) :: RGF=>NULL() -TYPE(WALL_TYPE), POINTER :: WC=>NULL() +TYPE(CC_REGFACE_TYPE), POINTER, DIMENSION(:) :: RGF +TYPE(WALL_TYPE), POINTER :: WC TYPE (BOUNDARY_COORD_TYPE), POINTER :: BC -TYPE (EXTERNAL_WALL_TYPE), POINTER :: EWC=>NULL() +TYPE (EXTERNAL_WALL_TYPE), POINTER :: EWC INTEGER :: IIG,JJG,KKG,II,JJ,KK,IOR,LOCROW,IW INTEGER :: WC_JD(1:2,1:2) LOGICAL :: FLG @@ -4489,11 +4489,11 @@ SUBROUTINE GET_MATRIXGRAPH_H_WHLDOM INTEGER :: LOCROW,IIND,NII,ILOC INTEGER :: NREG,IIM,JJM,KKM,IIP,JJP,KKP,LOW_FACE,HIGH_FACE,JLOC,IW,II,JJ,KK,IIG,JJG,KKG,ICF LOGICAL :: INLIST -TYPE(CC_REGFACE_TYPE), POINTER, DIMENSION(:) :: RGF=>NULL() -TYPE(CC_RCFACE_TYPE), POINTER :: RCF=>NULL() -TYPE(WALL_TYPE), POINTER :: WC=>NULL() +TYPE(CC_REGFACE_TYPE), POINTER, DIMENSION(:) :: RGF +TYPE(CC_RCFACE_TYPE), POINTER :: RCF +TYPE(WALL_TYPE), POINTER :: WC TYPE (BOUNDARY_COORD_TYPE), POINTER :: BC -TYPE(EXTERNAL_WALL_TYPE), POINTER :: EWC=>NULL() +TYPE(EXTERNAL_WALL_TYPE), POINTER :: EWC INTEGER :: WC_JD(1:2,1:2) LOGICAL :: FLG @@ -4768,7 +4768,7 @@ SUBROUTINE GET_H_REGFACES INTEGER, ALLOCATABLE, DIMENSION(:,:) :: IJKBUFFER INTEGER :: IW, IIG, JJG, KKG, IOR, N_INTERNAL_WALL_CELLS_AUX LOGICAL, ALLOCATABLE, DIMENSION(:,:,:,:) :: LOG_INTWC -TYPE(WALL_TYPE), POINTER :: WC=>NULL() +TYPE(WALL_TYPE), POINTER :: WC TYPE (BOUNDARY_COORD_TYPE), POINTER :: BC ! Mesh loop: diff --git a/Source/radi.f90 b/Source/radi.f90 index 7ccdbd8e069..7afc1a4be7b 100644 --- a/Source/radi.f90 +++ b/Source/radi.f90 @@ -360,9 +360,9 @@ SUBROUTINE MEAN_CROSS_SECTIONS(PARTICLE_CLASS,SMIX_INDEX) REAL(EB) :: RMMAX,RMMIN,RDTMP,IB,IBSUM,AVAL,BVAL,ASUM,BSUM,B_WIEN REAL(EB), ALLOCATABLE, DIMENSION(:,:) :: WQABS,WQSCA REAL(EB), ALLOCATABLE, DIMENSION(:) :: R50 -TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC=>NULL() -TYPE (SPECIES_MIXTURE_TYPE), POINTER :: SM2=>NULL() -TYPE (TABLES_TYPE), POINTER :: TA=>NULL() +TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC +TYPE (SPECIES_MIXTURE_TYPE), POINTER :: SM2 +TYPE (TABLES_TYPE), POINTER :: TA IF (PRESENT(PARTICLE_CLASS)) THEN LPC => LAGRANGIAN_PARTICLE_CLASS(PARTICLE_CLASS) diff --git a/Source/read.f90 b/Source/read.f90 index 5bc905f026a..4b024e484e2 100644 --- a/Source/read.f90 +++ b/Source/read.f90 @@ -43,12 +43,12 @@ MODULE READ_INPUT INTEGER :: I,J,K,IZERO,IOS,N_INIT_RESERVED,MAX_LEAK_PATHS,I_DUM(10),IERROR,N_CONE_RAMP=0,WATER_INDEX INTEGER :: FUEL_SMIX_INDEX ! Simple chemistry fuel index -TYPE(MESH_TYPE), POINTER :: M=>NULL() -TYPE(OBSTRUCTION_TYPE), POINTER :: OB=>NULL() -TYPE(VENTS_TYPE), POINTER :: VT=>NULL() -TYPE(SURFACE_TYPE), POINTER :: SF=>NULL() -TYPE(MATERIAL_TYPE), POINTER :: ML=>NULL() -TYPE(REACTION_TYPE), POINTER :: RN=>NULL() +TYPE(MESH_TYPE), POINTER :: M +TYPE(OBSTRUCTION_TYPE), POINTER :: OB +TYPE(VENTS_TYPE), POINTER :: VT +TYPE(SURFACE_TYPE), POINTER :: SF +TYPE(MATERIAL_TYPE), POINTER :: ML +TYPE(REACTION_TYPE), POINTER :: RN LOGICAL :: RETURN_BEFORE_STOP_FILE=.FALSE., RETURN_BEFORE_SIM_MODE=.FALSE. INTEGER :: N_HT3D_SURF_LINES=0,N_HT3D_OBST=0 CHARACTER(LABEL_LENGTH), DIMENSION(20) :: HT3D_SURF_LIST='null' @@ -987,8 +987,8 @@ SUBROUTINE READ_TRAN REAL(EB) :: PC,CC,COEF,XI,ETA,ZETA INTEGER IEXP,IC,IDERIV,N,K,IOS,I,MESH_NUMBER,NIPX,NIPY,NIPZ,NIPXS,NIPYS,NIPZS,NIPXF,NIPYF,NIPZF,NM LOGICAL :: PROCESS_TRANS -TYPE (MESH_TYPE), POINTER :: M=>NULL() -TYPE (TRAN_TYPE), POINTER :: T=>NULL() +TYPE (MESH_TYPE), POINTER :: M +TYPE (TRAN_TYPE), POINTER :: T NAMELIST /TRNX/ CC,FYI,ID,IDERIV,MESH_NUMBER,PC NAMELIST /TRNY/ CC,FYI,ID,IDERIV,MESH_NUMBER,PC NAMELIST /TRNZ/ CC,FYI,ID,IDERIV,MESH_NUMBER,PC @@ -1606,7 +1606,7 @@ SUBROUTINE READ_MULT CHARACTER(LABEL_LENGTH) :: ID INTEGER :: N,I1,I2,J1,J2,K1,K2,I_LOWER,I_UPPER,J_LOWER,J_UPPER,K_LOWER,K_UPPER,N_LOWER,N_UPPER,& I_LOWER_SKIP,I_UPPER_SKIP,J_LOWER_SKIP,J_UPPER_SKIP,K_LOWER_SKIP,K_UPPER_SKIP,N_LOWER_SKIP,N_UPPER_SKIP -TYPE(MULTIPLIER_TYPE), POINTER :: MR=>NULL() +TYPE(MULTIPLIER_TYPE), POINTER :: MR NAMELIST /MULT/ DX,DXB,DX0,DY,DY0,DZ,DZ0,FYI,ID,& I_LOWER,I_LOWER_SKIP,I_UPPER,I_UPPER_SKIP,& J_LOWER,J_LOWER_SKIP,J_UPPER,J_UPPER_SKIP,& @@ -2482,8 +2482,8 @@ SUBROUTINE READ_SPEC CHARACTER(LABEL_LENGTH), ALLOCATABLE, DIMENSION(:) :: PREDEFINED_SMIX_ID,PREDEFINED_SPEC_ID,SPEC_ID_READ CHARACTER(FORMULA_LENGTH) :: FORMULA -TYPE(SPECIES_TYPE), POINTER :: SS=>NULL() -TYPE(SPECIES_MIXTURE_TYPE), POINTER :: SM=>NULL() +TYPE(SPECIES_TYPE), POINTER :: SS +TYPE(SPECIES_MIXTURE_TYPE), POINTER :: SM NAMELIST /SPEC/ AEROSOL,ALT_ID,BACKGROUND,BETA_LIQUID,C,COMPLEX_REFRACTIVE_INDEX,CONDUCTIVITY,CONDUCTIVITY_LIQUID,& CONDUCTIVITY_SOLID,COPY_LUMPED, & DENSITY_LIQUID,DENSITY_SOLID,DIFFUSIVITY,ENTHALPY_OF_FORMATION,EPSILONKLJ,FIC_CONCENTRATION,FLD_LETHAL_DOSE, & @@ -3961,7 +3961,7 @@ SUBROUTINE PROC_SPEC_1 INTEGER :: N,ITMP,IZERO,IT REAL(EB) :: H_REF,H_REF_2,H_CORR,DG REAL(EB) :: CP_TEMP,H_V,TMP_REF,TMP_MELT,TMP_V,DENSITY,MU_LIQUID,K_LIQUID,BETA_LIQUID -TYPE(SPECIES_TYPE), POINTER :: SS=>NULL() +TYPE(SPECIES_TYPE), POINTER :: SS ALLOCATE(SS_CP(N_SPECIES,0:I_MAX_TEMP),STAT=IZERO) SS_CP = 0._EB @@ -4181,7 +4181,7 @@ SUBROUTINE PROC_SMIX REAL(EB) :: H1 INTEGER :: N,NS,ITMP LOGICAL :: SS_ALL_H_F -TYPE(SPECIES_MIXTURE_TYPE), POINTER :: SM=>NULL() +TYPE(SPECIES_MIXTURE_TYPE), POINTER :: SM ! Set up RSQ Arrays @@ -4378,8 +4378,8 @@ SUBROUTINE PROC_SPEC_2 USE RADCONS, ONLY : MIE_NDG INTEGER :: N,ITMP,IZERO -TYPE(SPECIES_TYPE),POINTER:: SS=>NULL() -TYPE(SPECIES_MIXTURE_TYPE),POINTER:: SM=>NULL() +TYPE(SPECIES_TYPE),POINTER:: SS +TYPE(SPECIES_MIXTURE_TYPE),POINTER:: SM SPEC_LOOP: DO N=1,N_TRACKED_SPECIES IF (.NOT. SPECIES_MIXTURE(N)%EVAPORATION_SMIX_INDEX > 0) CYCLE SPEC_LOOP @@ -4523,7 +4523,7 @@ SUBROUTINE READ_REAC RAMP_CHI_R,REAC_ATOM_ERROR,REAC_MASS_ERROR, REACTYPE, REVERSE,SOOT_YIELD,& SPEC_ID_N_S,SPEC_ID_NU, T1_TROE, T2_TROE, T3_TROE, THIRD_BODY,THIRD_EFF_ID,THIRD_EFF -TYPE(REACTION_TYPE),POINTER :: RN2=>NULL() +TYPE(REACTION_TYPE),POINTER :: RN2 ATOM_COUNTS = 0._EB N_REACTIONS = 0 @@ -4991,7 +4991,7 @@ SUBROUTINE PROC_REAC_1 INTEGER :: NS,NS2, NR LOGICAL :: NAME_FOUND,SKIP_ATOM_BALANCE TYPE (SPECIES_MIXTURE_TYPE), POINTER :: SM -TYPE (REACTION_TYPE), POINTER :: RN=>NULL(),RN2=>NULL() +TYPE (REACTION_TYPE), POINTER :: RN,RN2 IF (N_REACTIONS <=0) RETURN @@ -5686,7 +5686,7 @@ SUBROUTINE READ_PART CHARACTER(25) :: COLOR LOGICAL :: TARGET_ONLY,MASSLESS,STATIC,MONODISPERSE,BREAKUP,CHECK_DISTRIBUTION,DEBUG,& TURBULENT_DISPERSION,EMBER_PARTICLE,TRACK_EMBERS -TYPE(LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC=>NULL() +TYPE(LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC NAMELIST /PART/ ADHERE_TO_SOLID,AGE,BREAKUP,BREAKUP_CNF_RAMP_ID,BREAKUP_DISTRIBUTION,BREAKUP_GAMMA_D,BREAKUP_RATIO,& BREAKUP_SIGMA_D,CHECK_DISTRIBUTION,CNF_RAMP_ID,COLOR,COMPLEX_REFRACTIVE_INDEX,& CTRL_ID,DEBUG,DENSE_VOLUME_FRACTION,& @@ -6236,10 +6236,10 @@ SUBROUTINE PROC_PART INTEGER :: N,NN REAL(EB) :: AREA_FACTOR,MASS,VOLUME,R_O,R_I -TYPE(LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC=>NULL() -TYPE(SPECIES_TYPE),POINTER:: SS=>NULL() -TYPE(SURFACE_TYPE),POINTER:: SF=>NULL() -TYPE(MATERIAL_TYPE), POINTER :: ML=>NULL() +TYPE(LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC +TYPE(SPECIES_TYPE),POINTER:: SS +TYPE(SURFACE_TYPE),POINTER:: SF +TYPE(MATERIAL_TYPE), POINTER :: ML IF (N_LAGRANGIAN_CLASSES == 0) RETURN @@ -6400,7 +6400,7 @@ SUBROUTINE READ_PROP SPRAY_PATTERN_TABLE='null',SPEC_ID='null',& PRESSURE_RAMP='null',SMOKEVIEW_PARAMETERS(SMOKEVIEW_OBJECTS_DIMENSION), & SPRAY_PATTERN_SHAPE='GAUSSIAN' -TYPE (PROPERTY_TYPE), POINTER :: PY=>NULL() +TYPE (PROPERTY_TYPE), POINTER :: PY NAMELIST /PROP/ ACTIVATION_OBSCURATION,ACTIVATION_TEMPERATURE,ALPHA_C,ALPHA_E,BETA_C,BETA_E, & CHARACTERISTIC_VELOCITY,C_FACTOR,DENSITY,DIAMETER,EMISSIVITY,FED_ACTIVITY,FLOW_RAMP,FLOW_RATE,FLOW_TAU, & @@ -6767,9 +6767,9 @@ SUBROUTINE PROC_PROP REAL(EB) :: TOTAL_FLOWRATE, SUBTOTAL_FLOWRATE INTEGER :: N,NN,N_V_FACTORS,ILPC LOGICAL :: TABLE_NORMED(1:N_TABLE) -TYPE (PROPERTY_TYPE), POINTER :: PY=>NULL() -TYPE (TABLES_TYPE), POINTER :: TA=>NULL() -TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE),POINTER :: LPC=>NULL() +TYPE (PROPERTY_TYPE), POINTER :: PY +TYPE (TABLES_TYPE), POINTER :: TA +TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE),POINTER :: LPC TABLE_NORMED = .FALSE. @@ -6887,7 +6887,7 @@ SUBROUTINE READ_MATL LOGICAL :: ADJUST_H,ALLOW_SHRINKING, ALLOW_SWELLING,ADD_MATL,FOUND,SURFACE_OXIDATION_MODEL,ITERATE CHARACTER(LABEL_LENGTH), DIMENSION(MAX_MATERIALS,MAX_REACTIONS) :: MATL_ID CHARACTER(LABEL_LENGTH), ALLOCATABLE, DIMENSION(:) :: SEARCH_PHRASE,MATL_NAME_RESERVED -TYPE(MATERIAL_TYPE), POINTER :: ML2=>NULL() +TYPE(MATERIAL_TYPE), POINTER :: ML2 TYPE(LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC INTEGER :: N,NN,NNN,IOS,NR,N_REACTIONS,N_MATL_RESERVED,N_MATL_READ NAMELIST /MATL/ A,ABSORPTION_COEFFICIENT,ADJUST_H,ALLOW_SHRINKING,ALLOW_SWELLING,BOILING_TEMPERATURE,& @@ -7345,8 +7345,8 @@ SUBROUTINE PROC_MATL INTEGER, ALLOCATABLE, DIMENSION(:) :: MATL_MATRIX_POINTER REAL(EB), ALLOCATABLE, DIMENSION(:,:) :: MATL_COEF_MATRIX REAL(EB), ALLOCATABLE, DIMENSION(:) :: MATL_COEF_VECTOR,MATL_SOLUTION_VECTOR,RHO_H,RHO -TYPE(LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC=>NULL() -TYPE(MATERIAL_TYPE), POINTER :: ML2=>NULL() +TYPE(LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC +TYPE(MATERIAL_TYPE), POINTER :: ML2 PROC_MATL_LOOP: DO N=1,N_MATL @@ -9016,7 +9016,7 @@ END SUBROUTINE READ_SURF SUBROUTINE PROC_SURF_1 INTEGER :: N,NR,ILPC -TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC=>NULL() +TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC PROCESS_SURF_LOOP: DO N=0,N_SURF @@ -9125,8 +9125,8 @@ SUBROUTINE PROC_SURF_2 INTEGER :: I_GRAD,I_CONE_RAMP,E_PTR INTEGER :: PROCESSED(N_RAMP) LOGICAL :: BURNING,BLOWING,SUCKING -TYPE(RAMPS_TYPE),POINTER :: RP=>NULL(),RP_E2T=>NULL(),RP_INT=>NULL(),RP_QREF=>NULL() -TYPE(LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC=>NULL() +TYPE(RAMPS_TYPE),POINTER :: RP,RP_E2T,RP_INT,RP_QREF +TYPE(LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC PROCESSED = 0 I_CONE_RAMP = N_RAMP @@ -10274,7 +10274,7 @@ SUBROUTINE READ_TABL REAL(EB) :: TABLE_DATA(9) INTEGER :: NN,N -TYPE(TABLES_TYPE), POINTER :: TA=>NULL() +TYPE(TABLES_TYPE), POINTER :: TA NAMELIST /TABL/ FYI,ID,TABLE_DATA IF (N_TABLE==0) RETURN @@ -11375,7 +11375,7 @@ SUBROUTINE READ_HOLE REAL(EB), ALLOCATABLE, DIMENSION(:,:) :: TEMP_XB LOGICAL, ALLOCATABLE, DIMENSION(:) :: CONTROLLED TYPE(OBSTRUCTION_TYPE), ALLOCATABLE, DIMENSION(:) :: TEMP_OBST -TYPE(MULTIPLIER_TYPE), POINTER :: MR=>NULL() +TYPE(MULTIPLIER_TYPE), POINTER :: MR ALLOCATE(TEMP_OBST(0:6)) @@ -11719,7 +11719,7 @@ SUBROUTINE RE_ALLOCATE_OBST(NM,N_OBST,NDO) TYPE (OBSTRUCTION_TYPE), ALLOCATABLE, DIMENSION(:) :: DUMMY INTEGER, INTENT(IN) :: NM,NDO,N_OBST -TYPE (MESH_TYPE), POINTER :: M=>NULL() +TYPE (MESH_TYPE), POINTER :: M M=>MESHES(NM) ALLOCATE(DUMMY(0:N_OBST)) DUMMY(0:N_OBST) = M%OBSTRUCTION(0:N_OBST) @@ -12539,9 +12539,9 @@ SUBROUTINE READ_INIT PATH_RAMP(3),RAMP_Q,RAMP_PART,NODE_ID,RAMP_TMP_Z,RAMP_MF_Z(MAX_SPECIES),RAMP_VF_Z(MAX_SPECIES) INTEGER, DIMENSION(MAX_SPECIES) :: RAMP_MF_Z_INDEX,RAMP_VF_Z_INDEX CHARACTER(MESSAGE_LENGTH) :: BULK_DENSITY_FILE -TYPE(INITIALIZATION_TYPE), POINTER :: IN=>NULL() -TYPE(MULTIPLIER_TYPE), POINTER :: MR=>NULL() -TYPE(LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC=>NULL() +TYPE(INITIALIZATION_TYPE), POINTER :: IN +TYPE(MULTIPLIER_TYPE), POINTER :: MR +TYPE(LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC TYPE(DEVICE_TYPE), POINTER :: DV,DV2 NAMELIST /INIT/ BULK_DENSITY_FACTOR,BULK_DENSITY_FILE,CELL_CENTERED,CROWN_BASE_HEIGHT,CROWN_BASE_WIDTH,CTRL_ID,DB,DEVC_ID,& DIAMETER,DRY,DT_INSERT,DX,DY,DZ,HEIGHT,HRRPUV,ID,INNER_RADIUS,MASS_FRACTION,MASS_PER_TIME,MASS_PER_VOLUME,MULT_ID,& @@ -13152,8 +13152,8 @@ SUBROUTINE PROC_INIT INTEGER :: NN REAL(EB) :: MOIST_FRAC -TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC => NULL() -TYPE (INITIALIZATION_TYPE), POINTER :: IN => NULL() +TYPE (LAGRANGIAN_PARTICLE_CLASS_TYPE), POINTER :: LPC +TYPE (INITIALIZATION_TYPE), POINTER :: IN DO NN=1,N_INIT IN=>INITIALIZATION(NN) @@ -14252,7 +14252,7 @@ SUBROUTINE READ_CTRL INTEGER :: N,NC,TRIP_DIRECTION REAL(EB) :: SETPOINT(2), DELAY,CONSTANT,PROPORTIONAL_GAIN,INTEGRAL_GAIN,DIFFERENTIAL_GAIN,TARGET_VALUE,PERCENTILE CHARACTER(LABEL_LENGTH) :: ID,FUNCTION_TYPE,INPUT_ID(MAX_INPUT_ID),RAMP_ID,ON_BOUND -TYPE (CONTROL_TYPE), POINTER :: CF=>NULL() +TYPE (CONTROL_TYPE), POINTER :: CF NAMELIST /CTRL/ CONSTANT,CONTROL_FORCE,DELAY,DIFFERENTIAL_GAIN,FUNCTION_TYPE,ID,INITIAL_STATE,& INPUT_ID,INTEGRAL_GAIN,LATCH,N,ON_BOUND,PERCENTILE,PROPORTIONAL_GAIN,RAMP_ID,& SETPOINT,TARGET_VALUE,TRIP_DIRECTION @@ -15314,7 +15314,7 @@ SUBROUTINE READ_ISOF REAL(EB) :: VALUE(10) CHARACTER(LABEL_LENGTH) :: QUANTITY,QUANTITY2,SPEC_ID,SPEC_ID2 INTEGER :: N,VELO_INDEX,VELO_INDEX2,SKIP -TYPE(ISOSURFACE_FILE_TYPE), POINTER :: IS=>NULL() +TYPE(ISOSURFACE_FILE_TYPE), POINTER :: IS REAL(FB) :: DELTA LOGICAL DEBUG NAMELIST /ISOF/ DELTA,DEBUG,FYI,QUANTITY,QUANTITY2,SKIP,SPEC_ID,SPEC_ID2,VALUE,VELO_INDEX,VELO_INDEX2 @@ -15803,7 +15803,7 @@ SUBROUTINE READ_BNDF LOGICAL :: CELL_CENTERED CHARACTER(LABEL_LENGTH) :: QUANTITY,PROP_ID,SPEC_ID,PART_ID,TEMPORAL_STATISTIC,DUMMY='null',MATL_ID NAMELIST /BNDF/ CELL_CENTERED,DEBUG,FYI,MATL_ID,PART_ID,PROP_ID,QUANTITY,SPEC_ID,TEMPORAL_STATISTIC -TYPE(BOUNDARY_FILE_TYPE), POINTER :: BF=>NULL() +TYPE(BOUNDARY_FILE_TYPE), POINTER :: BF N_BNDF = 0 REWIND(LU_INPUT) ; INPUT_FILE_LINE_NUMBER = 0 diff --git a/Source/soot.f90 b/Source/soot.f90 index a836f76aa9a..80ef61bc41f 100644 --- a/Source/soot.f90 +++ b/Source/soot.f90 @@ -34,8 +34,8 @@ SUBROUTINE SETTLING_VELOCITY(NM) REAL(EB), PARAMETER :: CM3=3._EB*CM,CS2=CS*2._EB,CT2=2._EB*CT INTEGER, INTENT(IN) :: NM INTEGER :: I,J,K,N,IW,IIG,JJG,KKG,IOR -REAL(EB), POINTER, DIMENSION(:,:,:) :: U_SETTLE=>NULL(),V_SETTLE=>NULL(),W_SETTLE=>NULL(),RHOP=>NULL() -REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZP=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: U_SETTLE,V_SETTLE,W_SETTLE,RHOP +REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZP CALL POINT_TO_MESH(NM) @@ -402,8 +402,8 @@ SUBROUTINE SOOT_SURFACE_OXIDATION(DT,NM) REAL(EB) :: DZZ(1:N_TRACKED_SPECIES),RSUM_LOC,CP,Y_O2,X_O2, M_DOT_PPP_SINGLE REAL(EB) :: H_G,CPBAR,CPBAR2,MW_RATIO,DELTA_H_G INTEGER :: ICF,IW,NS,NS2,IIG,JJG,KKG -TYPE(SPECIES_MIXTURE_TYPE), POINTER :: SM=>NULL() -TYPE(SPECIES_TYPE), POINTER :: SS=>NULL() +TYPE(SPECIES_MIXTURE_TYPE), POINTER :: SM +TYPE(SPECIES_TYPE), POINTER :: SS CALL POINT_TO_MESH(NM) @@ -545,8 +545,8 @@ SUBROUTINE DROPLET_SCRUBBING(IP,NM,DT,DT_P) INTEGER :: IIG,JJG,KKG,NS REAL(EB) :: VEL,VREL, R_D, FRAC, EFF, EFF_IN, EFF_IM, PE, STK, MU_G, ZZ_GET(1:N_TRACKED_SPECIES) REAL(EB) :: R_RATIO, EFF_IN_VIS, EFF_IN_POT, EFF_IM_VIS, EFF_IM_POT, RATE, VOL, RE -TYPE (LAGRANGIAN_PARTICLE_TYPE), POINTER :: LP=>NULL() -TYPE(SPECIES_MIXTURE_TYPE), POINTER :: SM=>NULL() +TYPE (LAGRANGIAN_PARTICLE_TYPE), POINTER :: LP +TYPE(SPECIES_MIXTURE_TYPE), POINTER :: SM CALL POINT_TO_MESH(NM) diff --git a/Source/turb.f90 b/Source/turb.f90 index d4e75f99bdc..ee406d231b7 100644 --- a/Source/turb.f90 +++ b/Source/turb.f90 @@ -102,7 +102,7 @@ SUBROUTINE NS_ANALYTICAL_SOLUTION(NM,T,RK_STAGE) REAL(EB), INTENT(IN) :: T INTEGER :: I,J,K REAL(EB) :: UP,WP -REAL(EB), POINTER, DIMENSION(:,:,:) :: UU=>NULL(),WW=>NULL(),RHOP=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: UU,WW,RHOP REAL(EB), PARAMETER :: AA=2._EB CALL POINT_TO_MESH(NM) @@ -1610,8 +1610,8 @@ SUBROUTINE TENSOR_DIFFUSIVITY_MODEL(NM,OPT_N) INTEGER, INTENT(IN), OPTIONAL :: OPT_N INTEGER :: I,J,K,N REAL(EB) :: DRHOZDX,DRHOZDY,DRHOZDZ,DUDX,DUDY,DUDZ,DVDX,DVDY,DVDZ,DWDX,DWDY,DWDZ,DTDX,DTDY,DTDZ -REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZP=>NULL(),RHO_D_DZDX=>NULL(),RHO_D_DZDY=>NULL(),RHO_D_DZDZ=>NULL() -REAL(EB), POINTER, DIMENSION(:,:,:) :: RHOP=>NULL(),UU=>NULL(),VV=>NULL(),WW=>NULL(),KDTDX=>NULL(),KDTDY=>NULL(),KDTDZ=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZP,RHO_D_DZDX,RHO_D_DZDY,RHO_D_DZDZ +REAL(EB), POINTER, DIMENSION(:,:,:) :: RHOP,UU,VV,WW,KDTDX,KDTDY,KDTDZ REAL(EB), PARAMETER :: C_NL=0.083_EB ! C_NL=1/12, See Pope Exercise 13.28 CALL POINT_TO_MESH(NM) @@ -1877,9 +1877,9 @@ END SUBROUTINE TAU_WALL_IJ SUBROUTINE SYNTHETIC_EDDY_SETUP(NM) INTEGER, INTENT(IN) :: NM -TYPE(VENTS_TYPE), POINTER :: VT=>NULL() +TYPE(VENTS_TYPE), POINTER :: VT INTEGER :: NE,NV,IERROR -REAL(EB), POINTER, DIMENSION(:,:) :: A_IJ=>NULL(),R_IJ=>NULL() +REAL(EB), POINTER, DIMENSION(:,:) :: A_IJ,R_IJ VENT_LOOP: DO NV=1,MESHES(NM)%N_VENT VT => MESHES(NM)%VENTS(NV) @@ -1940,8 +1940,8 @@ SUBROUTINE SYNTHETIC_TURBULENCE(DT,T,NM) REAL(EB), INTENT(IN) :: DT,T INTEGER, INTENT(IN) :: NM INTEGER :: NE,NV,II,JJ,KK,IERROR -TYPE(VENTS_TYPE), POINTER :: VT=>NULL() -TYPE(SURFACE_TYPE), POINTER :: SF=>NULL() +TYPE(VENTS_TYPE), POINTER :: VT +TYPE(SURFACE_TYPE), POINTER :: SF REAL(EB) :: XX,YY,ZZ,SHAPE_FACTOR,VOLUME_WEIGHTING_FACTOR(3),EDDY_VOLUME(3),PROFILE_FACTOR,RAMP_T,TSI,& VEL_NORMAL,VEL_TANG_1,VEL_TANG_2,Z_WGT INTEGER, PARAMETER :: SHAPE_CODE=1 ! 1=tent, 2=tophat @@ -2147,7 +2147,7 @@ SUBROUTINE EDDY_POSITION(NE,NV,NM,IERROR) INTEGER, INTENT(IN) :: NE,NV,NM INTEGER, INTENT(INOUT) :: IERROR REAL(EB) :: RN -TYPE(VENTS_TYPE), POINTER :: VT=>NULL() +TYPE(VENTS_TYPE), POINTER :: VT VT => MESHES(NM)%VENTS(NV) @@ -2175,7 +2175,7 @@ SUBROUTINE EDDY_AMPLITUDE(NE,NV,NM) INTEGER, INTENT(IN) :: NE,NV,NM REAL(EB) :: EPS_EDDY(3) REAL(EB) :: RN -TYPE(VENTS_TYPE), POINTER :: VT=>NULL() +TYPE(VENTS_TYPE), POINTER :: VT INTEGER :: J EPS_EDDY=-1._EB @@ -2225,11 +2225,11 @@ SUBROUTINE SANDIA_DAT(NM,FN_ISO) INTEGER :: I,J,K,II,JJ,KK,FILE_NUM,IM,IW,IOR,IIO,JJO,KKO,NX,NX_BLOCK,I_MESH,J_MESH,K_MESH,MX INTEGER, INTENT(IN) :: NM CHARACTER(80), INTENT(IN) :: FN_ISO -TYPE (MESH_TYPE), POINTER :: M=>NULL() -TYPE (MESH_TYPE), POINTER :: M2=>NULL() -TYPE (WALL_TYPE), POINTER :: WC=>NULL() -TYPE (BOUNDARY_COORD_TYPE), POINTER :: BC=>NULL() -TYPE (EXTERNAL_WALL_TYPE), POINTER :: EWC=>NULL() +TYPE (MESH_TYPE), POINTER :: M +TYPE (MESH_TYPE), POINTER :: M2 +TYPE (WALL_TYPE), POINTER :: WC +TYPE (BOUNDARY_COORD_TYPE), POINTER :: BC +TYPE (EXTERNAL_WALL_TYPE), POINTER :: EWC IF (NM>1) RETURN @@ -2383,8 +2383,8 @@ SUBROUTINE spectral_output(NM,FN_SPEC) INTEGER, INTENT(IN) :: NM CHARACTER(80), INTENT(IN) :: FN_SPEC INTEGER :: NN(3),I,J,K,IM,II,JJ,KK -REAL(EB), POINTER, DIMENSION(:,:,:) :: UU=>NULL(),VV=>NULL(),WW=>NULL() -COMPLEX(EB), POINTER, DIMENSION(:,:,:) :: UUHT=>NULL(),VVHT=>NULL(),WWHT=>NULL(),KKHT=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: UU,VV,WW +COMPLEX(EB), POINTER, DIMENSION(:,:,:) :: UUHT,VVHT,WWHT,KKHT TYPE (MESH_TYPE), POINTER :: MM,M IF (NM>1) RETURN @@ -2443,7 +2443,7 @@ SUBROUTINE sandia_out(NM) INTEGER, INTENT(IN) :: NM INTEGER :: NN(3),I,J,K,IM,II,JJ,KK,file_num -REAL(EB), POINTER, DIMENSION(:,:,:) :: UU=>NULL(),VV=>NULL(),WW=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: UU,VV,WW TYPE (MESH_TYPE), POINTER :: MM,M ! This subroutine writes out the velocity, relative pressure, and diff --git a/Source/velo.f90 b/Source/velo.f90 index 95c24cf8a84..77f9bea9dda 100644 --- a/Source/velo.f90 +++ b/Source/velo.f90 @@ -37,11 +37,11 @@ SUBROUTINE COMPUTE_VISCOSITY(NM,APPLY_TO_ESTIMATED_VARIABLES) DUDX,DUDY,DUDZ,DVDX,DVDY,DVDZ,DWDX,DWDY,DWDZ,VDF,WGT,T_NOW REAL(EB), PARAMETER :: RAPLUS=1._EB/26._EB INTEGER :: I,J,K,IIG,JJG,KKG,II,JJ,KK,IW,IOR,IC -REAL(EB), POINTER, DIMENSION(:,:,:) :: RHOP=>NULL(),UP=>NULL(),VP=>NULL(),WP=>NULL(), & - UP_HAT=>NULL(),VP_HAT=>NULL(),WP_HAT=>NULL(), & - UU=>NULL(),VV=>NULL(),WW=>NULL() -REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZP=>NULL() -INTEGER, POINTER, DIMENSION(:,:,:) :: CELL_COUNTER=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: RHOP,UP,VP,WP, & + UP_HAT,VP_HAT,WP_HAT, & + UU,VV,WW +REAL(EB), POINTER, DIMENSION(:,:,:,:) :: ZZP +INTEGER, POINTER, DIMENSION(:,:,:) :: CELL_COUNTER TYPE(WALL_TYPE), POINTER :: WC TYPE(BOUNDARY_COORD_TYPE), POINTER :: BC TYPE(BOUNDARY_PROP1_TYPE), POINTER :: B1 @@ -1223,7 +1223,7 @@ SUBROUTINE VELOCITY_FLUX_CYLINDRICAL(T,NM,APPLY_TO_ESTIMATED_VARIABLES) REAL(EB) :: MUY,UP,UM,WP,WM,VTRM,DTXZDZ,DTXZDX,DUDX,DWDZ,DUDZ,DWDX,WOMY,UOMY,OMYP,OMYM,TXZP,TXZM, & AH,RRHO,GX,GZ,TXXP,TXXM,TZZP,TZZM,DTXXDX,DTZZDZ,T_NOW INTEGER :: I,J,K,IEYP,IEYM,IC -REAL(EB), POINTER, DIMENSION(:,:,:) :: TXZ=>NULL(),OMY=>NULL(),UU=>NULL(),WW=>NULL(),RHOP=>NULL(),DP=>NULL() +REAL(EB), POINTER, DIMENSION(:,:,:) :: TXZ,OMY,UU,WW,RHOP,DP T_NOW = CURRENT_TIME()