Page 1 Source Listing ENSADD 2021-01-25 17:16 ENSADD.f 1 C$$$ MAIN PROGRAM DOCUMENTATION BLOCK 2 C 3 C MAIN PROGRAM: ENSADD 4 C PRGMMR: ZHU ORG: NP23 DATE: 1999-08-31 5 C 6 C ABSTRACT: THIS PROGRAM WILL EXTEND PDS MESSAGE WHICH WILL 7 C INCLUDE ENS(5) MESSAGE 8 C 9 C PROGRAM HISTORY LOG: 10 C 96-10-?? MARK IREDELL - Originator 11 C 97-03-17 YUEJIAN ZHU - Added DOCBLOACK 12 C 99-07-26 YUEJIAN ZHU - Modified to IBM-SP 13 C 14 C USAGE: 15 C 16 C INPUT FILES: 17 C UNIT 11 GRIB FILE ( maximum 512*256 ) 18 C UNIT 21 GRIB INDEX FILE 19 C UNIT 5 READ *, IENST,IENSI (For ensemble message) 20 C 21 C OUTPUT FILES: 22 C UNIT 51 GRIB FILE ( maximum 512*256 ) 23 C 24 C SUBPROGRAMS CALLED: 25 C GETGB -- W3LIB ROUTINE 26 C PUTGBE -- W3LIB ROUTINE 27 C 28 C ATTRIBUTES: 29 C LANGUAGE: FORTRAN 30 C 31 C$$$ 32 program ensadd 33 parameter (jf=512*256) 34 integer jpds(200),jgds(200),kpds(200),kgds(200),kens(200) 35 integer ienst,iensi 36 real f(jf) 37 character*255 cpgb,cpgi,cpge 38 logical*1 lb(jf) 39 namelist /namin/ ienst,iensi,cpgb,cpgi,cpge 40 c 41 c 42 c CALL W3LOG('$S97118.73','ENSADD') 43 CALL W3TAGB('ENSADD',1999,0243,0068,'NP23') 44 45 read (5,namin) 46 lpgb=len_trim(cpgb) 47 lpgi=len_trim(cpgi) 48 lpge=len_trim(cpge) 49 print *, cpgb(1:lpgb),' ',cpgi(1:lpgi),' ',cpge(1:lpge) 50 call baopenr(11,cpgb(1:lpgb),iretb) 51 call baopenr(21,cpgi(1:lpgi),ireti) 52 call baopen (51,cpge(1:lpge),irete) 53 54 j=0 55 jpds=-1 56 call getgb(11,21,jf,j,jpds,jgds,kf,j,kpds,kgds,lb,f,iret) 57 dowhile(iret.eq.0) Page 2 Source Listing ENSADD 2021-01-25 17:16 ENSADD.f 58 kpds(23)=2 59 kens(1)=1 60 kens(2)=ienst 61 kens(3)=iensi 62 kens(4)=1 63 kens(5)=255 64 if(kpds(6).eq.100.and.kpds(5).ne.222.and.kpds(5).ne.52) 65 & kens(5)=kgds(3)/2-1 66 call putgbe(51,kf,kpds,kgds,kens,lb,f,iret) 67 call getgb(11,21,jf,j,jpds,jgds,kf,j,kpds,kgds,lb,f,iret) 68 enddo 69 70 call baclose(11,iretb) 71 call baclose(21,ireti) 72 call baclose(51,irete) 73 74 c CALL W3LOG('$E') 75 CALL W3TAGE('ENSADD') 76 77 stop 78 end ENTRY POINTS Name MAIN__ Page 3 Source Listing ENSADD 2021-01-25 17:16 Symbol Table ENSADD.f SYMBOL CROSS REFERENCE Name Object Declared Type Bytes Dimen Elements Attributes References BACLOSE Subr 70 70,71,72 BAOPEN Subr 52 52 BAOPENR Subr 50 50,51 CPGB Local 37 CHAR 255 scalar 39,46,49,50 CPGE Local 37 CHAR 255 scalar 39,48,49,52 CPGI Local 37 CHAR 255 scalar 39,47,49,51 ENSADD Prog 32 F Local 36 R(4) 4 1 131072 56,66,67 GETGB Subr 56 56,67 IENSI Local 35 I(4) 4 scalar 39,61 IENST Local 35 I(4) 4 scalar 39,60 IRET Local 56 I(4) 4 scalar 56,57,66,67 IRETB Local 50 I(4) 4 scalar 50,70 IRETE Local 52 I(4) 4 scalar 52,72 IRETI Local 51 I(4) 4 scalar 51,71 J Local 54 I(4) 4 scalar 54,56,67 JF Param 33 I(4) 4 scalar 36,38,56,67 JGDS Local 34 I(4) 4 1 200 56,67 JPDS Local 34 I(4) 4 1 200 55,56,67 KENS Local 34 I(4) 4 1 200 59,60,61,62,63,65,66 KF Local 56 I(4) 4 scalar 56,66,67 KGDS Local 34 I(4) 4 1 200 56,65,66,67 KPDS Local 34 I(4) 4 1 200 56,58,64,66,67 LB Local 38 L(1) 1 1 131072 56,66,67 LEN_TRIM Func 46 scalar 46,47,48 LPGB Local 46 I(4) 4 scalar 46,49,50 LPGE Local 48 I(4) 4 scalar 48,49,52 LPGI Local 47 I(4) 4 scalar 47,49,51 NAMIN Local 39 scalar 45 PUTGBE Subr 66 66 W3TAGB Subr 43 43 W3TAGE Subr 75 75 Page 4 Source Listing ENSADD 2021-01-25 17:16 Subprograms/Common Blocks ENSADD.f SUBPROGRAMS/COMMON BLOCKS Name Object Declared Type Bytes Dimen Elements Attributes References ENSADD Prog 32 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 nobyterecl -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_ldout_format -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 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 -coarray-num-procs 0 no -coarray-config-file -convert native -cross_reference -D __INTEL_COMPILER=1800 -D __INTEL_COMPILER_UPDATE=1 -D __unix__ -D __unix -D __linux__ -D __linux -D __gnu_linux__ -D unix -D linux -D __ELF__ -D __x86_64 -D __x86_64__ -D __amd64 -D __amd64__ -D __INTEL_COMPILER_BUILD_DATE=20171018 -D __INTEL_OFFLOAD -D __i686 -D __i686__ -D __pentiumpro -D __pentiumpro__ Page 5 Source Listing ENSADD 2021-01-25 17:16 ENSADD.f -D __pentium4 -D __pentium4__ -D __tune_pentium4__ -D __SSE2__ -D __SSE2_MATH__ -D __SSE__ -D __SSE_MATH__ -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 -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 -g0 -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 -offload-build=host -O2 no -pad_source -real_size 32 no -recursive -reentrancy threaded no -sharable_localsaves -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 general -w noignore_bounds -w noignore_loc -w nointerfaces -w notruncated_source -w uncalled -w uninitialized -w nounused -w usage no -wrap-margins -includepath : /usrx/local/prod/intel/2018UP01/compilers_and_libraries/linux/tbb/include/,/usr/local/include/, .f,./.f,/usrx/local/prod/intel/2018UP01/compilers_and_libraries/linux/ipp/include/.f,/usrx/local/prod/intel/2018UP01/compilers_and_libraries/linux/mkl/include/.f, /usrx/local/prod/intel/2018UP01/compilers_and_libraries/linux/pstl/include/.f,/usrx/local/prod/intel/2018UP01/compilers_and_libraries/linux/tbb/include/.f, /usrx/local/prod/intel/2018UP01/compilers_and_libraries/linux/daal/include/.f,/gpfs/dell1/usrx/local/prod/intel/2018UP01/compilers_and_libraries_2018.1.163/linux/compiler/include/intel64/.f, /gpfs/dell1/usrx/local/prod/intel/2018UP01/compilers_and_libraries_2018.1.163/linux/compiler/include/icc/.f, /gpfs/dell1/usrx/local/prod/intel/2018UP01/compilers_and_libraries_2018.1.163/linux/compiler/include/.f, /usr/local/include/.f,/usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/.f,/usr/include/.f,/usr/include/.f, /usr/include/.f -list filename : ENSADD.lst -o filename : none COMPILER: Intel(R) Fortran 18.0-1599