Page 1 Source Listing P2FLTV 2014-12-17 20:48 P2FLTV.f 1 SUBROUTINE P2FLTV(MKOUNT,VBM2,FIELD) 2 CFPP$ NOCONCUR R 3 C$$$ SUBPROGRAM DOCUMENTATION BLOCK 4 C . . . 5 C SUBPROGRAM: P2FLTV 4-TH ORDER SMOOTHER for vel pts 6 C PRGRMMR: TREADON ORG: W/NP2 DATE: 93-03-02 7 C 8 C ABSTRACT: 9 C THIS ROUTINE WILL APPLY A FOURTH OTHER FILTER (SMOOTHER) 10 C OF A CONTINOUS FIELD AT VELOCITY POINTS ON THE STAGGERED 11 C E-GRID. MULTIPLE APPLICATIONS OF THIS FILTER MAY BE 12 C MADE. 13 C IN THIS VERSION, EACH TASK WORKS ON THE DATA IT OWNS. 14 C . 15 C 16 C PROGRAM HISTORY LOG: 17 C 93-03-02 RUSS TREADON - MODIFIED SUBROUTINE P2FILT. 18 C 98-06-04 BLACK - CONVERSION TO 2-D 19 C 00-01-04 JIM TUCCILLO - MPI VERSION 20 C 21 C USAGE: CALL P2FLTV(MKOUNT,VBM2,FIELD) 22 C INPUT ARGUMENT LIST: 23 C MKOUNT - NUMBER OF APPLICATIONS OF THE SMOOTHER. 24 C HBM2 - VELOCITY POINT BOUNDARY MASK. 25 C FIELD - VELOCITY POINT FIELD TO BE SMOOTHED. 26 C 27 C OUTPUT ARGUMENT LIST: 28 C FIELD - SMOOTHED VELOCITY POINT FIELD. 29 C 30 C OUTPUT FILES: 31 C NONE 32 C 33 C SUBPROGRAMS CALLED: 34 C UTILITIES: 35 C NONE 36 C LIBRARY: 37 C NONE 38 C 39 C ATTRIBUTES: 40 C LANGUAGE: FORTRAN 41 C MACHINE : CRAY Y-MP 42 C$$$ 43 C 44 C 45 C INCLUDE GLOBAL PARAMETERS. SET DEPENDENT VARIABLES. 46 C 47 C---------------------------------------------------------------------- 48 INCLUDE "parmeta" 49 C 67 INCLUDE "INDX.comm" 73 INCLUDE "CTLBLK.comm" 74 C---------------------------------------------------------------------- 89 D I M E N S I O N 90 & VBM2(IM,JM),FIELD(IM,JM),WFIELD(IM,JM),FNE(IM,JM),FSE(IM,JM) 91 C 92 C*********************************************************************** 93 C START P2FLTV HERE. Page 2 Source Listing P2FLTV 2014-12-17 20:48 P2FLTV.f 94 C 95 C IF NUMBER OF PASSES IS LESS THAN 1, EXIT ROUTINE. 96 C 97 IF(MKOUNT.LT.1) RETURN 98 C 99 C OTHERWISE, APPLY SMOOTHER MKOUND TIMES. 100 C 101 C----------------------------------------------------------------------- 102 DO 400 KOUNT=1,MKOUNT 103 C----------------------------------------------------------------------- 104 C 105 C FILTERING STARTS 106 C 107 C----------------------------------------------------------------------- 108 !$omp parallel do 109 DO J=JSTA,JEND 110 DO I=1,IM 111 FNE (I,J)=0.0 112 FSE (I,J)=0.0 113 WFIELD(I,J)=0.0 114 ENDDO 115 ENDDO 116 C 117 C 118 CALL EXCH(FIELD) 119 C 120 C 2-ND ORDER DIAGONAL CONTRIBUTIONS 121 C 122 !$omp parallel do 123 DO J=JSTA,JEND_M 124 DO I=1,IM-1 125 FNE(I,J)=FIELD(I+IVE(J),J+1)-FIELD(I,J) 126 ENDDO 127 ENDDO 128 C 129 !$omp parallel do 130 DO J=JSTA_M,JEND 131 DO I=1,IM-1 132 FSE(I,J)=FIELD(I+IVE(J),J-1)-FIELD(I,J) 133 ENDDO 134 ENDDO 135 C 136 CALL EXCH(FNE) 137 CALL EXCH(FSE) 138 C 139 !$omp parallel do 140 DO J=JSTA_M2,JEND_M2 141 DO I=2,IM-1 142 WFIELD(I,J)=(FNE(I,J)-FNE(I+IVW(J),J-1) 143 1 +FSE(I,J)-FSE(I+IVW(J),J+1)) 144 2 *VBM2(I,J)*0.125 145 ENDDO 146 ENDDO 147 C 148 C 4-TH ORDER DIAGONAL CONTRIBUTIONS 149 C 150 CALL EXCH(WFIELD) Page 3 Source Listing P2FLTV 2014-12-17 20:48 P2FLTV.f 151 C 152 !$omp parallel do 153 DO J=JSTA,JEND_M 154 DO I=1,IM-1 155 FNE(I,J)=WFIELD(I+IHE(J),J+1)-WFIELD(I,J) 156 ENDDO 157 ENDDO 158 C 159 !$omp parallel do 160 DO J=JSTA_M,JEND 161 DO I=1,IM-1 162 FSE(I,J)=WFIELD(I+IVE(J),J-1)-WFIELD(I,J) 163 ENDDO 164 ENDDO 165 C 166 CALL EXCH(FNE) 167 CALL EXCH(FSE) 168 C 169 !$omp parallel do 170 DO J=JSTA_M2,JEND_M2 171 DO I=2,IM-1 172 FIELD(I,J)=FIELD(I,J)-(FNE(I,J)-FNE(I+IVW(J),J-1) 173 1 +FSE(I,J)-FSE(I+IVW(J),J+1)) 174 2 *VBM2(I,J)*0.125 175 ENDDO 176 ENDDO 177 C 178 400 CONTINUE 179 C 180 CALL EXCH(FIELD) 181 C 182 C END OF ROUTINE 183 RETURN 184 END Page 4 Source Listing P2FLTV 2014-12-17 20:48 Entry Points P2FLTV.f ENTRY POINTS Name p2fltv_ SYMBOL CROSS REFERENCE Name Object Declared Type Bytes Dimen Elements Attributes References 400 Label 142 66 CTLBLK Common 2 96 DT Scalar 4 R(4) 4 scalar COM EXCH Subr 82 82,100,101,114,130,131,144 FIELD Dummy 1 R(4) 4 2 91719 ARG,INOUT 82,89,96,136,144 FIRST Scalar 3 R(4) 4 scalar COM FNE Local 54 R(4) 4 2 91719 75,89,100,106,119,130,136 FSE Local 54 R(4) 4 2 91719 76,96,101,107,126,131,137 I Local 74 I(4) 4 scalar 74,75,76,77,88,89,95,96,105,106,10 7,108,118,119,125,126,135,136,137, 138 ICNT Scalar 7 I(4) 4 1 1024 COM IDAT Scalar 3 I(4) 4 1 3 COM IDIM1 Param 14 I(4) 4 scalar IDIM2 Param 14 I(4) 4 scalar IDN Scalar 7 I(4) 4 scalar COM IDSP Scalar 7 I(4) 4 1 1024 COM IDTAD Scalar 4 I(4) 4 scalar COM IGSTL Param 9 I(4) 4 scalar 14 IGSTR Param 9 I(4) 4 scalar 14 IHE Scalar 3 I(4) 4 1 387 COM 119 IHRST Scalar 3 I(4) 4 scalar COM IHW Scalar 3 I(4) 4 1 387 COM IM Param 3 I(4) 4 scalar 11,14,54,74,88,95,105,118,125,135 INDX Common 2 6192 INPES Param 6 I(4) 4 scalar 11,14 IOUT Scalar 3 I(4) 4 scalar COM ITAIL Param 11 I(4) 4 scalar IUP Scalar 7 I(4) 4 scalar COM IVE Scalar 3 I(4) 4 1 387 COM 89,96,126 IVW Scalar 3 I(4) 4 1 387 COM 106,107,136,137 J Local 73 I(4) 4 scalar 73,75,76,77,87,89,94,96,104,106,10 7,108,117,119,124,126,134,136,137, 138 JDIM1 Param 15 I(4) 4 scalar JDIM2 Param 15 I(4) 4 scalar JEND Scalar 6 I(4) 4 scalar COM 73,94,124 JEND_2U Scalar 8 I(4) 4 scalar COM JEND_M Scalar 7 I(4) 4 scalar COM 87,117 JEND_M2 Scalar 7 I(4) 4 scalar COM 104,134 JGSTL Param 10 I(4) 4 scalar 15 JGSTR Param 10 I(4) 4 scalar 15 JM Param 3 I(4) 4 scalar 3,12,15,54 JNPES Param 6 I(4) 4 scalar 12,15 Page 5 Source Listing P2FLTV 2014-12-17 20:48 Symbol Table P2FLTV.f Name Object Declared Type Bytes Dimen Elements Attributes References JSTA Scalar 6 I(4) 4 scalar COM 73,87,117 JSTA_2L Scalar 8 I(4) 4 scalar COM JSTA_M Scalar 7 I(4) 4 scalar COM 94,124 JSTA_M2 Scalar 7 I(4) 4 scalar COM 104,134 JTAIL Param 12 I(4) 4 scalar KOUNT Local 66 I(4) 4 scalar 66 LIST Scalar 3 I(4) 4 scalar COM LM Param 3 I(4) 4 scalar LSM Param 3 I(4) 4 scalar ME Scalar 6 I(4) 4 scalar COM MKOUNT Dummy 1 I(4) 4 scalar ARG,INOUT 61,66 NBC Scalar 3 I(4) 4 scalar COM NBOCO Scalar 4 I(4) 4 scalar COM NCP Scalar 4 I(4) 4 scalar COM NDDAMP Scalar 4 I(4) 4 scalar COM NFCST Scalar 3 I(4) 4 scalar COM NPHS Scalar 5 I(4) 4 scalar COM NPREC Scalar 4 I(4) 4 scalar COM NRADL Scalar 5 I(4) 4 scalar COM NRADS Scalar 5 I(4) 4 scalar COM NSHDE Scalar 4 I(4) 4 scalar COM NTSD Scalar 4 I(4) 4 scalar COM NTSTM Scalar 4 I(4) 4 scalar COM NUM_PROCS Scalar 6 I(4) 4 scalar COM P2FLTV Subr 1 PARALLEL Common 9 8240 RESTRT Scalar 3 R(4) 4 scalar COM RUN Scalar 3 R(4) 4 scalar COM SIGMA Scalar 3 R(4) 4 scalar COM VBM2 Dummy 1 R(4) 4 2 91719 ARG,INOUT 108,138 WFIELD Local 54 R(4) 4 2 91719 77,106,114,119,126 Page 6 Source Listing P2FLTV 2014-12-17 20:48 Subprograms/Common Blocks P2FLTV.f SUBPROGRAMS/COMMON BLOCKS Name Object Declared Type Bytes Dimen Elements Attributes References CTLBLK Common 2 96 INDX Common 2 6192 P2FLTV Subr 1 PARALLEL Common 9 8240 COMPILER OPTIONS BEING USED -align nocommons -align nodcommons -align noqcommons -align records -align nosequence -align norec1byte -align norec2byte -align norec4byte -align norec8byte -align norec16byte -altparam -assume accuracy_sensitive -assume nobscc -assume nobuffered_io -assume byterecl -assume nocc_omp -assume nocstring -assume nodummy_aliases -assume nofpe_summary -assume noieee_fpe_flags -assume nominus0 -assume noold_boz -assume old_unit_star -assume old_ldout_format -assume noold_logical_ldio -assume old_maxminloc -assume old_xor -assume protect_constants -assume noprotect_parens -assume split_common -assume source_include -assume nostd_intent_in -assume nostd_mod_proc_name -assume norealloc_lhs -assume underscore -assume no2underscores no -auto -auto_scalar no -bintext -ccdefault default -check noargs -check noarg_temp_created -check nobounds -check noformat -check nooutput_conversion -check nooverflow -check nopointers -check power -check noshape -check nounderflow -check nouninitialized -coarray-num-procs 0 no -coarray-config-file -convert big_endian -cross_reference -D __INTEL_COMPILER=1210 -D __unix__ -D __unix -D __linux__ -D __linux -D __gnu_linux__ -D unix -D linux -D __ELF__ -D __x86_64 -D __x86_64__ -D _MT -D __INTEL_COMPILER_BUILD_DATE=20120612 -D __i686 -D __i686__ -D __pentiumpro -D __pentiumpro__ -D __pentium4 -D __pentium4__ -D __tune_pentium4__ -D __SSE2__ -D __SSE__ -D __MMX__ -double_size 64 no -d_lines no -Qdyncom -error_limit 30 no -f66 no -f77rtl no -fast -fpscomp nofilesfromcmd -fpscomp nogeneral -fpscomp noioformat Page 7 Source Listing P2FLTV 2014-12-17 20:48 P2FLTV.f -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 no -intconstant -integer_size 32 no -mixed_str_len_arg no -module -names lowercase no -noinclude -O2 no -pad_source -real_size 32 no -recursive -reentrancy none no -sharable_localsaves -vec=simd -show noinclude -show map -show options no -syntax_only no -threadcom no -U no -vms -w noall -w nonone -w alignments -w noargument_checking -w nodeclarations -w general -w noignore_bounds -w noignore_loc -w nointerfaces -w notruncated_source -w uncalled -w uninitialized -w nounused -w usage -includepath : /gpfs/tp1/usrx/local/intel/composer_xe_2011_sp1.11.339/compiler/include/,.f,./.f,/usrx/local/intel/composerxe/mkl/include/.f, /usrx/local/intel/composerxe/tbb/include/.f,/gpfs/tp1/usrx/local/intel/composer_xe_2011_sp1.11.339/compiler/include/intel64/.f, /gpfs/tp1/usrx/local/intel/composer_xe_2011_sp1.11.339/compiler/include/.f,/usr/local/include/.f,/usr/lib/gcc/x86_64-redhat-linux/4.4.7/include/.f, /usr/include/.f,/usr/include/.f -list filename : P2FLTV.lst -o filename : none COMPILER: Intel(R) Fortran 12.1-2100