Page 1 Source Listing EFILT 2025-03-12 18:23 EFILT.f 1 SUBROUTINE EFILT(EGRID) 2 C$$$ SUBPROGRAM DOCUMENTATION BLOCK 3 C . . . 4 C SUBPROGRAM: EFILT HEAVY HANDED E-GRID SMOOTHER 5 C PRGRMMR: TREADON ORG: W/NP2 DATE: 93-03-24 6 C 7 C ABSTRACT: 8 C THIS ROUTINE IS A HEAVY HANDED SMOOTHER THAT WORKS ON 9 C E-GRID MASS POINTS. IT IS BASED ON CODE IN THE OLD 10 C ETA POST PROCESSOR SUBROUTINE, OUTMAP. CURRENTLY, 11 C THIS SMOOTHER IS HARDCODED TO BE USED ONLY ON VORTICITY 12 C FIELDS IF THE USER ACTIVATES E-GRID SMOOTHING OF 13 C VORTICITY. IT DOES A VERY NICE JOB OF SMOOTHING THE 14 C VORTICITY FIELD. 15 C . 16 C 17 C PROGRAM HISTORY LOG: 18 C 93-03-24 RUSS TREADON 19 C 98-06-04 BLACK - CONVERSION TO 2-D 20 C 21 C USAGE: CALL EFILT(EGRID) 22 C INPUT ARGUMENT LIST: 23 C EGRID - ARRAY OF DATA ON E-GRID 24 C 25 C OUTPUT ARGUMENT LIST: 26 C EGRID - ARRAY OF SMOOTHED DATA ON E-GRID 27 C 28 C OUTPUT FILES: 29 C NONE 30 C 31 C SUBPROGRAMS CALLED: 32 C UTILITIES: 33 C NONE 34 C LIBRARY: 35 C COMMON - MASKS 36 C DYNAMD 37 C INDX 38 C 39 C ATTRIBUTES: 40 C LANGUAGE: FORTRAN 41 C MACHINE : CRAY Y-MP 42 C$$$ 43 C 44 C 45 C INCLUDE PARAMETERS. 46 INCLUDE "parmeta" 64 INCLUDE "params" 65 C 66 C DECLARE VARIABLES. 108 REAL EGRID(IM,JM),WORK1(IM,JM),WORK2(IM,JM),WORK3(IM,JM) 109 C 110 C INCLUDE COMMON BLOCKS. 111 INCLUDE "MASKS.comm" 119 INCLUDE "DYNAMD.comm" 131 INCLUDE "INDX.comm" 132 C 133 C******************************************************************* Page 2 Source Listing EFILT 2025-03-12 18:23 EFILT.f 134 C START EFILT HERE. 135 C 136 C LOAD PASSED E-GRID FIELD INTO WORK ARRAY. 137 143 !$omp parallel do 144 DO J=1,JM 145 DO I=1,IM 146 WORK1(I,J)=EGRID(I,J) 147 ENDDO 148 ENDDO 149 C 150 C LOAD WEIGHT ARRAY. 151 !$omp parallel do 152 DO J=3,JM-2 153 DO I=2,IM-1 154 WORK3(I,J)=1./(4.* HBM2(I,J)+ 155 1 2.*(HBM2(I+IHE(J),J+1)+HBM2(I+IHW(J),J+1)+ 156 2 HBM2(I+IHE(J),J-1)+HBM2(I+IHW(J),J-1))+ 157 3 HBM2(I+1,J)+HBM2(I-1,J)+ 158 4 HBM2(I,J+2)+HBM2(I,J-2)) 159 ENDDO 160 ENDDO 161 C 162 C SMOOTHING LOOP. SMTHA AND SMTHB ARE PARAMETERS SET IN 163 C INCLUDE FILE PARAMS. 164 MXFILT = NINT(SMTHA*DY+SMTHB) 165 C 166 DO 50 NFILT = 1,MXFILT 167 !$omp parallel do 168 DO J=3,JM-2 169 DO I=2,IM-1 170 WORK2(I,J) = 4.*WORK1(I,J)+ 171 1 2.*(WORK1(I+IHE(J),J+1)+WORK1(I+IHW(J),J+1)+ 172 2 WORK1(I+IHE(J),J-1)+WORK1(I+IHW(J),J-1))+ 173 3 WORK1(I+1,J)+WORK1(I-1,J)+ 174 4 WORK1(I,J+2)+WORK1(I,J-2) 175 ENDDO 176 ENDDO 177 C 178 !$omp parallel do 179 DO J=3,JM-2 180 DO I=2,IM-1 181 WORK1(I,J)=WORK3(I,J)*WORK2(I,J)*HBM2(I,J) 182 ENDDO 183 ENDDO 184 50 CONTINUE 185 C 186 C LOAD SMOOTHED EGRID INTO OUTPUT ARRAY. 187 !$omp parallel do 188 DO J=1,JM 189 DO I=1,IM 190 EGRID(I,J)=WORK1(I,J)*HBM2(I,J) 191 ENDDO 192 ENDDO 193 C 194 C END OF ROUTINE. 195 RETURN Page 3 Source Listing EFILT 2025-03-12 18:23 EFILT.f 196 END ENTRY POINTS Name efilt_ SYMBOL CROSS REFERENCE Name Object Declared Type Bytes Dimen Elements Attributes References 50 Label 184 166 A2 Param 107 R(4) 4 scalar A3 Param 107 R(4) 4 scalar A4 Param 107 R(4) 4 scalar AD05 Param 99 R(4) 4 scalar BETA Param 103 R(4) 4 scalar 103 BTG Param 103 R(4) 4 scalar CAPA Param 94 R(4) 4 scalar 101 CFT0 Param 99 R(4) 4 scalar CM1 Param 89 R(4) 4 scalar CM2 Param 89 R(4) 4 scalar CM3 Param 89 R(4) 4 scalar CP Param 100 R(4) 4 scalar 102,106 CPDR Param 102 R(4) 4 scalar D00 Param 91 R(4) 4 scalar D001 Param 91 R(4) 4 scalar D0065 Param 95 R(4) 4 scalar D01 Param 91 R(4) 4 scalar D05 Param 95 R(4) 4 scalar 99 D1 Param 91 R(4) 4 scalar D115 Param 95 R(4) 4 scalar D125 Param 93 R(4) 4 scalar D25 Param 93 R(4) 4 scalar D50 Param 91 R(4) 4 scalar D608 Param 95 R(4) 4 scalar DP10M Param 101 R(4) 4 scalar DTR Param 100 R(4) 4 scalar 100 DYNAM Common 121 3675964 SAVE EFILT Subr 1 EGRID Dummy 1 R(4) 4 2 91719 ARG,INOUT 146,190 ELDR Param 102 R(4) 4 scalar ELWV Param 102 R(4) 4 scalar 102 EPS Param 105 R(4) 4 scalar 105 EPSQ2 Param 106 R(4) 4 scalar ERAD Param 100 R(4) 4 scalar FMD Param 105 R(4) 4 scalar 105 FMW Param 105 R(4) 4 scalar 105 G Param 98 R(4) 4 scalar 98 GI Param 98 R(4) 4 scalar 102 H1 Param 92 R(4) 4 scalar 99 H100 Param 93 R(4) 4 scalar H1000 Param 93 R(4) 4 scalar H10000 Param 94 R(4) 4 scalar Page 4 Source Listing EFILT 2025-03-12 18:23 Symbol Table EFILT.f Name Object Declared Type Bytes Dimen Elements Attributes References H10E5 Param 94 R(4) 4 scalar H1E2 Param 96 R(4) 4 scalar H1E4 Param 96 R(4) 4 scalar H1M12 Param 92 R(4) 4 scalar H1M2 Param 96 R(4) 4 scalar H1M5 Param 93 R(4) 4 scalar H2 Param 92 R(4) 4 scalar H4 Param 92 R(4) 4 scalar H999 Param 91 R(4) 4 scalar H99999 Param 92 R(4) 4 scalar I Local 145 I(4) 4 scalar 145,146,153,154,155,156,157,158,16 9,170,171,172,173,174,180,181,189, 190 IDIM1 Param 60 I(4) 4 scalar IDIM2 Param 60 I(4) 4 scalar IGSTL Param 55 I(4) 4 scalar 60 IGSTR Param 55 I(4) 4 scalar 60 IM Param 49 I(4) 4 scalar 57,60,70,72,73,75,108,114,116,127, 128,145,153,169,180,189 IM1 Param 72 I(4) 4 scalar IMT Param 70 I(4) 4 scalar INDX Common 139 6192 SAVE INPES Param 52 I(4) 4 scalar 57,60 ITAIL Param 57 I(4) 4 scalar J Local 144 I(4) 4 scalar 144,146,152,154,155,156,157,158,16 8,170,171,172,173,174,179,181,188, 190 JAM Param 72 I(4) 4 scalar 125 JDIM1 Param 61 I(4) 4 scalar JDIM2 Param 61 I(4) 4 scalar JGSTL Param 56 I(4) 4 scalar 61 JGSTR Param 56 I(4) 4 scalar 61 JM Param 49 I(4) 4 scalar 58,61,70,72,75,108,114,116,127,128 ,140,144,152,168,179,188 JM2 Param 72 I(4) 4 scalar JMT Param 70 I(4) 4 scalar JNPES Param 52 I(4) 4 scalar 58,61 JTAIL Param 58 I(4) 4 scalar KSAV Param 80 I(4) 4 scalar KSFI Param 79 I(4) 4 scalar KSLI Param 80 I(4) 4 scalar KSLP Param 80 I(4) 4 scalar KSLPD Param 79 I(4) 4 scalar KSMUD Param 79 I(4) 4 scalar KSRH Param 80 I(4) 4 scalar KSSLP Param 79 I(4) 4 scalar KST Param 79 I(4) 4 scalar KSUV Param 80 I(4) 4 scalar LB Param 75 I(4) 4 scalar LHEAT Param 106 I(4) 4 scalar 106 LHTOCP Param 106 I(4) 4 scalar LM Param 49 I(4) 4 scalar 74,85,116,123 LM1 Param 74 I(4) 4 scalar LP1 Param 74 I(4) 4 scalar 123 LSM Param 49 I(4) 4 scalar Page 5 Source Listing EFILT 2025-03-12 18:23 Symbol Table EFILT.f Name Object Declared Type Bytes Dimen Elements Attributes References MASKS Common 113 34853220 SAVE MXFILT Local 164 I(4) 4 scalar 164,166 NFILT Local 166 I(4) 4 scalar 166 NINC Param 73 I(4) 4 scalar NINT Func 164 scalar 164 NSTAT Param 85 I(4) 4 scalar NSUMD Param 81 I(4) 4 scalar NWORD Param 85 I(4) 4 scalar 85 NWORD3 Param 85 I(4) 4 scalar NWORD6 Param 85 I(4) 4 scalar ONEPS Param 105 R(4) 4 scalar OVERRC Param 99 R(4) 4 scalar 99 P1000 Param 101 R(4) 4 scalar PQ0 Param 107 R(4) 4 scalar RCAPA Param 101 R(4) 4 scalar RD Param 98 R(4) 4 scalar 98,102,106 RDOCP Param 106 R(4) 4 scalar RG Param 102 R(4) 4 scalar ROG Param 98 R(4) 4 scalar RTD Param 100 R(4) 4 scalar SMTHA Param 81 R(4) 4 scalar 164 SMTHB Param 81 R(4) 4 scalar 164 TFRZ Param 105 R(4) 4 scalar WORK1 Local 108 R(4) 4 2 91719 146,170,171,172,173,174,181,190 WORK2 Local 108 R(4) 4 2 91719 170,181 WORK3 Local 108 R(4) 4 2 91719 154,181 TYPE COMPONENTS/COMMON VARIABLES Name Type Bytes Offset Dimen Elements Attributes References AETAD R(4) 4 396 1 45 COM CPGFU R(4) 4 740956 2 91719 COM CPGFV R(4) 4 4 scalar COM CURV R(4) 4 1107832 2 91719 COM DDMPU R(4) 4 2942212 2 91719 COM DDMPV R(4) 4 3309088 2 91719 COM DETAD R(4) 4 36 1 45 COM DFL R(4) 4 940 1 46 COM DX R(4) 4 7204 2 91719 COM DY R(4) 4 0 scalar COM 164 EF4T R(4) 4 32 scalar COM EM R(4) 4 1124 1 760 COM EMT R(4) 4 4164 1 760 COM EN R(4) 4 8 scalar COM ENT R(4) 4 12 scalar COM ETAD R(4) 4 756 1 46 COM F R(4) 4 2575336 2 91719 COM F4D R(4) 4 24 scalar COM F4Q R(4) 4 28 scalar COM F4Q2 R(4) 4 576 1 45 COM FAD R(4) 4 2208460 2 91719 COM FCP R(4) 4 1474708 2 91719 COM FDIV R(4) 4 1841584 2 91719 COM Page 6 Source Listing EFILT 2025-03-12 18:23 Symbol Table EFILT.f Name Type Bytes Offset Dimen Elements Attributes References HBM2 R(4) 4 0 2 91719 COM 154,155,156,157,158,181,190 HTM R(4) 4 1834380 3 4127355 COM IHE I(4) 4 0 1 387 COM 155,156,171,172 IHW I(4) 4 1548 1 387 COM 155,156,171,172 IVE I(4) 4 3096 1 387 COM IVW I(4) 4 4644 1 387 COM PTDYN R(4) 4 20 scalar COM RDETA R(4) 4 216 1 45 COM RDYN R(4) 4 16 scalar COM SICE R(4) 4 1467504 2 91719 COM SM R(4) 4 1100628 2 91719 COM VBM2 R(4) 4 366876 2 91719 COM VBM3 R(4) 4 733752 2 91719 COM VTM R(4) 4 18343800 3 4127355 COM WPDAR R(4) 4 374080 2 91719 COM Page 7 Source Listing EFILT 2025-03-12 18:23 EFILT.f 197 198 199 Page 8 Source Listing EFILT 2025-03-12 18:23 Subprograms/Common Blocks EFILT.f SUBPROGRAMS/COMMON BLOCKS Name Object Declared Type Bytes Dimen Elements Attributes References DYNAM Common 121 3675964 SAVE EFILT Subr 1 INDX Common 139 6192 SAVE MASKS Common 113 34853220 SAVE COMPILER OPTIONS BEING USED -align noall -align nonone -align nocommons -align nodcommons -align noqcommons -align nozcommons -align records -align nosequence -align norec1byte -align norec2byte -align norec4byte -align norec8byte -align norec16byte -align norec32byte -align norec64byte -align noarray8byte -align noarray16byte -align noarray32byte -align noarray64byte -align noarray128byte -align noarray256byte -altparam -assume accuracy_sensitive -assume nobscc -assume nobuffered_io -assume nobuffered_stdout -assume byterecl -assume nocontiguous_assumed_shape -assume nocontiguous_pointer -assume nocc_omp -assume nocstring -assume nodummy_aliases -assume nofpe_summary -assume noieee_fpe_flags -assume nominus0 -assume noold_boz -assume old_complex_align -assume old_unit_star -assume old_inquire_recl -assume old_ldout_format -assume old_ldout_zero -assume noold_logical_assign -assume noold_logical_ldio -assume old_maxminloc -assume old_xor -assume noprotect_allocates -assume protect_constants -assume noprotect_parens -assume split_common -assume source_include -assume nostd_intent_in -assume std_minus0_rounding -assume nostd_mod_proc_name -assume std_value -assume realloc_lhs -assume underscore -assume no2underscores -assume norecursion no -auto -auto_scalar no -bintext -ccdefault default -check noarg_temp_created -check noassume -check nobounds -check nocontiguous -check noformat -check nooutput_conversion -check nooverflow -check nopointers -check noshape -check nostack -check nouninitialized -check noudio_iostat -coarray-num-procs 0 no -coarray-config-file -convert big_endian -cross_reference -D __INTEL_COMPILER=1910 -D __INTEL_COMPILER_UPDATE=3 -D __unix__ -D __unix -D __linux__ -D __linux -D __gnu_linux__ -D unix -D linux -D __ELF__ Page 9 Source Listing EFILT 2025-03-12 18:23 EFILT.f -D __x86_64 -D __x86_64__ -D __amd64 -D __amd64__ -D __INTEL_COMPILER_BUILD_DATE=20200925 -D __INTEL_OFFLOAD -D __MMX__ -D __SSE__ -D __SSE_MATH__ -D __SSE2__ -D __SSE2_MATH__ -D __SSE3__ -D __SSSE3__ -D __SSE4_1__ -D __SSE4_2__ -D __POPCNT__ -D __PCLMUL__ -D __AES__ -D __AVX__ -D __F16C__ -D __AVX_I__ -D __RDRND__ -D __FMA__ -D __FP_FAST_FMA -D __FP_FAST_FMAF -D __BMI__ -D __LZCNT__ -D __AVX2__ -D __haswell -D __haswell__ -D __tune_haswell__ -D __core_avx2 -D __core_avx2__ -D __tune_core_avx2__ -D __CRAY_X86_ROME -D __CRAYXT_COMPUTE_LINUX_TARGET -double_size 64 no -d_lines no -Qdyncom -error_limit 30 no -f66 no -f77rtl no -fast -fpscomp nofilesfromcmd -fpscomp nogeneral -fpscomp noioformat -fpscomp noldio_spacing -fpscomp nologicals -fixed no -fpconstant -fpe3 -fprm nearest no -ftz -fp_model noprecise -fp_model fast -fp_model nostrict -fp_model nosource -fp_model nodouble -fp_model noextended -fp_model novery_fast -fp_model noexcept -fp_model nono_except -heap_arrays 0 no -threadprivate_compat -g2 -iface nomixed_str_len_arg -iface nono_mixed_str_len_arg -init noarrays -init nohuge -init noinfinity -init nominus_huge -init nominus_infinity -init nominus_tiny -init nonan -init nosnan -init notiny -init nozero no -intconstant -integer_size 32 no -mixed_str_len_arg no -module -names lowercase no -noinclude no -o -offload-build=host -openmp-simd -O2 no -pad_source -real_size 32 no -recursive -reentrancy threaded -vec=simd -show nofullpath -show noinclude -show map -show options no -syntax_only no -threadcom no -U no -vms -w noall -w nonone -w alignments -w nodeclarations -w noexternals -w general -w noignore_bounds -w noignore_loc -w nointerfaces -w noshape -w notruncated_source -w uncalled -w uninitialized -w nounused Page 10 Source Listing EFILT 2025-03-12 18:23 EFILT.f -w usage no -wrap-margins -includepath : /pe/intel/compilers_and_libraries_2020.4.304/linux/pstl/include/,/pe/intel/compilers_and_libraries_2020.4.304/linux/compiler/include/, .f90,./.f90,/opt/cray/pe/mpich/8.1.12/ofi/intel/19.0/include/.f90,/pe/intel/compilers_and_libraries_2020.4.304/linux/ipp/include/.f90, /pe/intel/compilers_and_libraries_2020.4.304/linux/mkl/include/.f90,/pe/intel/compilers_and_libraries_2020.4.304/linux/pstl/include/.f90, /pe/intel/compilers_and_libraries_2020.4.304/linux/pstl/stdlib/.f90,/pe/intel/compilers_and_libraries_2020.4.304/linux/tbb/include/.f90, /pe/intel/compilers_and_libraries_2020.4.304/linux/compiler/include/intel64/.f90,/pe/intel/compilers_and_libraries_2020.4.304/linux/compiler/include/icc/.f90, /pe/intel/compilers_and_libraries_2020.4.304/linux/compiler/include/.f90,/usr/lib64/gcc/x86_64-suse-linux/7/include/.f90, /usr/lib64/gcc/x86_64-suse-linux/7/include-fixed/.f90,/usr/include/.f90,/usr/include/.f90,/usr/include/.f90 -list filename : EFILT.lst no -o COMPILER: Intel(R) Fortran 19.1-1655