Page 1 Source Listing CALDRG 2025-03-12 18:23 CALDRG.f 1 SUBROUTINE CALDRG(DRAGCO) 2 C$$$ SUBPROGRAM DOCUMENTATION BLOCK 3 C . . . 4 C SUBPROGRAM: CALDRG COMPUTE DRAG COEFFICIENT 5 C PRGRMMR: TREADON ORG: W/NP2 DATE: 93-09-01 6 C 7 C ABSTRACT: THIS ROUTINE COMPUTES A SURFACE LAYER DRAG 8 C COEFFICIENT USING EQUATION (7.4.1A) IN "AN INTRODUCTION 9 C TO BOUNDARY LAYER METEOROLOGY" BY STULL (1988, KLUWER 10 C ACADEMIC PUBLISHERS). 11 C . 12 C 13 C PROGRAM HISTORY LOG: 14 C 93-09-01 RUSS TREADON 15 C 98-06-15 T BLACK - CONVERSION FROM 1-D TO 2-D 16 C 00-01-04 JIM TUCCILLO - MPI VERSION 17 C 18 C USAGE: CALL CALDRG(DRAGCO) 19 C INPUT ARGUMENT LIST: 20 C NONE 21 C 22 C OUTPUT ARGUMENT LIST: 23 C DRAGCO - SURFACE LAYER DRAG COEFFICIENT 24 C 25 C OUTPUT FILES: 26 C NONE 27 C 28 C SUBPROGRAMS CALLED: 29 C UTILITIES: 30 C NONE 31 C LIBRARY: 32 C COMMON - LOOPS 33 C VRBLS 34 C SRFDSP 35 C PVRBLS 36 C 37 C ATTRIBUTES: 38 C LANGUAGE: FORTRAN 90 39 C MACHINE : CRAY C-90 40 C$$$ 41 C 42 C 43 C INCLUDE/SET PARAMETERS. 44 C 45 INCLUDE "parmeta" 63 INCLUDE "params" 64 C 65 C DECLARE VARIABLES. 107 REAL DRAGCO(IM,JM) 108 C 109 C INCLUDE COMMON BLOCKS. 110 C 111 INCLUDE "LOOPS.comm" 119 INCLUDE "VRBLS.comm" 126 INCLUDE "SRFDSP.comm" 132 INCLUDE "PVRBLS.comm" 144 INCLUDE "INDX.comm" Page 2 Source Listing CALDRG 2025-03-12 18:23 CALDRG.f 150 INCLUDE "CTLBLK.comm" 151 C 152 C 153 C******************************************************************** 154 C START CALDRG HERE. 155 C 156 C INITIALIZE DRAG COEFFICIENT ARRAY TO ZERO. 157 C 172 DO J=JSTA,JEND 173 DO I=1,IM 174 DRAGCO(I,J) = D00 175 ENDDO 176 ENDDO 177 C 178 C COMPUTE A SURFACE LAYER DRAG COEFFICIENT. 179 C 180 CALL EXCH(UZ0) 181 CALL EXCH(VZ0) 182 C 183 C ASSUMET THAT U AND V HAVE HALOS 184 C 185 DO 30 J=JSTA_M,JEND_M 186 DO 30 I=2,IM-1 187 C 188 C COMPUTE A MEAN MASS POINT WIND IN THE 189 C FIRST ATMOSPHERIC ETA LAYER. 190 C 191 LMHK=LMH(I,J) 192 IE=I+IHE(J) 193 IW=I+IHW(J) 194 SUMU=U(IE,J,LMV(IE,J))+U(IW,J,LMV(IW,J))+U(I,J-1,LMV(I,J-1)) 195 1 +U(I,J+1,LMV(I,J+1)) 196 SUMV=V(IE,J,LMV(IE,J))+V(IW,J,LMV(IW,J))+V(I,J-1,LMV(I,J-1)) 197 1 +V(I,J+1,LMV(I,J+1)) 198 ULMH=D25*SUMU 199 VLMH=D25*SUMV 200 C 201 C COMPUTE A MEAN MASS POINT WIND AT HEIGHT Z0. 202 C 203 UZ0H=D25*(UZ0(IE,J)+UZ0(IW,J)+UZ0(I,J-1)+UZ0(I,J+1)) 204 VZ0H=D25*(VZ0(IE,J)+VZ0(IW,J)+VZ0(I,J-1)+VZ0(I,J+1)) 205 C 206 C COMPUTE A MEAN MASS POINT WIND SPEED BETWEEN THE 207 C FIRST ATMOSPHERIC ETA LAYER AND Z0. 208 C 209 UBAR=D50*(ULMH+UZ0H) 210 VBAR=D50*(VLMH+VZ0H) 211 WSPDSQ=UBAR*UBAR+VBAR*VBAR 212 C 213 C COMPUTE A DRAG COEFFICIENT. 214 C 215 USTRSQ=USTAR(I,J)*USTAR(I,J) 216 DRAGCO(I,J)=USTRSQ/WSPDSQ 217 C 218 30 CONTINUE 219 C 220 C END OF ROUTINE. Page 3 Source Listing CALDRG 2025-03-12 18:23 CALDRG.f 221 C 222 RETURN 223 END ENTRY POINTS Name caldrg_ SYMBOL CROSS REFERENCE Name Object Declared Type Bytes Dimen Elements Attributes References 30 Label 218 185,186 A2 Param 106 R(4) 4 scalar A3 Param 106 R(4) 4 scalar A4 Param 106 R(4) 4 scalar AD05 Param 98 R(4) 4 scalar BETA Param 102 R(4) 4 scalar 102 BTG Param 102 R(4) 4 scalar CALDRG Subr 1 CAPA Param 93 R(4) 4 scalar 100 CFT0 Param 98 R(4) 4 scalar CM1 Param 88 R(4) 4 scalar CM2 Param 88 R(4) 4 scalar CM3 Param 88 R(4) 4 scalar CP Param 99 R(4) 4 scalar 101,105 CPDR Param 101 R(4) 4 scalar CTLBLK Common 159 96 SAVE D00 Param 90 R(4) 4 scalar 174 D001 Param 90 R(4) 4 scalar D0065 Param 94 R(4) 4 scalar D01 Param 90 R(4) 4 scalar D05 Param 94 R(4) 4 scalar 98 D1 Param 90 R(4) 4 scalar D115 Param 94 R(4) 4 scalar D125 Param 92 R(4) 4 scalar D25 Param 92 R(4) 4 scalar 198,199,203,204 D50 Param 90 R(4) 4 scalar 209,210 D608 Param 94 R(4) 4 scalar DP10M Param 100 R(4) 4 scalar DRAGCO Dummy 1 R(4) 4 2 91719 ARG,INOUT 174,216 DTR Param 99 R(4) 4 scalar 99 ELDR Param 101 R(4) 4 scalar ELWV Param 101 R(4) 4 scalar 101 EPS Param 104 R(4) 4 scalar 104 EPSQ2 Param 105 R(4) 4 scalar ERAD Param 99 R(4) 4 scalar EXCH Subr 180 180,181 FMD Param 104 R(4) 4 scalar 104 FMW Param 104 R(4) 4 scalar 104 G Param 97 R(4) 4 scalar 97 GI Param 97 R(4) 4 scalar 101 H1 Param 91 R(4) 4 scalar 98 Page 4 Source Listing CALDRG 2025-03-12 18:23 Symbol Table CALDRG.f Name Object Declared Type Bytes Dimen Elements Attributes References H100 Param 92 R(4) 4 scalar H1000 Param 92 R(4) 4 scalar H10000 Param 93 R(4) 4 scalar H10E5 Param 93 R(4) 4 scalar H1E2 Param 95 R(4) 4 scalar H1E4 Param 95 R(4) 4 scalar H1M12 Param 91 R(4) 4 scalar H1M2 Param 95 R(4) 4 scalar H1M5 Param 92 R(4) 4 scalar H2 Param 91 R(4) 4 scalar H4 Param 91 R(4) 4 scalar H999 Param 90 R(4) 4 scalar H99999 Param 91 R(4) 4 scalar I Local 173 I(4) 4 scalar 173,174,186,191,192,193,194,195,19 6,197,203,204,215,216 IDIM1 Param 59 I(4) 4 scalar IDIM2 Param 59 I(4) 4 scalar IE Local 192 I(4) 4 scalar 192,194,196,203,204 IGSTL Param 54 I(4) 4 scalar 59 IGSTR Param 54 I(4) 4 scalar 59 IM Param 48 I(4) 4 scalar 56,59,69,71,72,74,107,116,122,124, 129,130,131,135,136,137,138,139,14 1,173,186 IM1 Param 71 I(4) 4 scalar IMT Param 69 I(4) 4 scalar INDX Common 146 6192 SAVE INPES Param 51 I(4) 4 scalar 56,59 ITAIL Param 56 I(4) 4 scalar IW Local 193 I(4) 4 scalar 193,194,196,203,204 J Local 172 I(4) 4 scalar 172,174,185,191,192,193,194,195,19 6,197,203,204,215,216 JAM Param 71 I(4) 4 scalar 114 JDIM1 Param 60 I(4) 4 scalar JDIM2 Param 60 I(4) 4 scalar JGSTL Param 55 I(4) 4 scalar 60 JGSTR Param 55 I(4) 4 scalar 60 JM Param 48 I(4) 4 scalar 57,60,69,71,74,107,116,122,124,129 ,130,131,135,136,137,138,139,141,1 47 JM2 Param 71 I(4) 4 scalar JMT Param 69 I(4) 4 scalar JNPES Param 51 I(4) 4 scalar 57,60 JTAIL Param 57 I(4) 4 scalar KSAV Param 79 I(4) 4 scalar KSFI Param 78 I(4) 4 scalar KSLI Param 79 I(4) 4 scalar KSLP Param 79 I(4) 4 scalar KSLPD Param 78 I(4) 4 scalar KSMUD Param 78 I(4) 4 scalar KSRH Param 79 I(4) 4 scalar KSSLP Param 78 I(4) 4 scalar KST Param 78 I(4) 4 scalar KSUV Param 79 I(4) 4 scalar LB Param 74 I(4) 4 scalar LHEAT Param 105 I(4) 4 scalar 105 Page 5 Source Listing CALDRG 2025-03-12 18:23 Symbol Table CALDRG.f Name Object Declared Type Bytes Dimen Elements Attributes References LHTOCP Param 105 I(4) 4 scalar LM Param 48 I(4) 4 scalar 73,84,124,141 LM1 Param 73 I(4) 4 scalar LMHK Local 191 I(4) 4 scalar 191 LOOPS Common 113 748952 SAVE LP1 Param 73 I(4) 4 scalar LSM Param 48 I(4) 4 scalar NINC Param 72 I(4) 4 scalar NSTAT Param 84 I(4) 4 scalar NSUMD Param 80 I(4) 4 scalar NWORD Param 84 I(4) 4 scalar 84 NWORD3 Param 84 I(4) 4 scalar NWORD6 Param 84 I(4) 4 scalar ONEPS Param 104 R(4) 4 scalar OVERRC Param 98 R(4) 4 scalar 98 P1000 Param 100 R(4) 4 scalar PARALLEL Common 166 8240 PQ0 Param 106 R(4) 4 scalar PVRBLS Common 134 23480064 SAVE RCAPA Param 100 R(4) 4 scalar RD Param 97 R(4) 4 scalar 97,101,105 RDOCP Param 105 R(4) 4 scalar RG Param 101 R(4) 4 scalar ROG Param 97 R(4) 4 scalar RTD Param 99 R(4) 4 scalar SMTHA Param 80 R(4) 4 scalar SMTHB Param 80 R(4) 4 scalar SRFDSP Common 128 4402512 SUMU Local 194 R(4) 4 scalar 194,198 SUMV Local 196 R(4) 4 scalar 196,199 TFRZ Param 104 R(4) 4 scalar UBAR Local 209 R(4) 4 scalar 209,211 ULMH Local 198 R(4) 4 scalar 198,209 USTRSQ Local 215 R(4) 4 scalar 215,216 UZ0H Local 203 R(4) 4 scalar 203,209 VBAR Local 210 R(4) 4 scalar 210,211 VLMH Local 199 R(4) 4 scalar 199,210 VRBLS Common 121 67138308 VZ0H Local 204 R(4) 4 scalar 204,210 WSPDSQ Local 211 R(4) 4 scalar 211,216 TYPE COMPONENTS/COMMON VARIABLES Name Type Bytes Offset Dimen Elements Attributes References ACCLIQ R(4) 4 6236892 2 91719 COM ACPREC R(4) 4 5870016 2 91719 COM AKHS R(4) 4 733752 2 91719 COM AKMS R(4) 4 366876 2 91719 COM CLDEFI R(4) 4 5136264 2 91719 COM CUPREC R(4) 4 6603768 2 91719 COM DT R(4) 4 48 scalar COM FIRST R(4) 4 24 scalar COM FIS R(4) 4 733752 2 91719 COM Page 6 Source Listing CALDRG 2025-03-12 18:23 Symbol Table CALDRG.f Name Type Bytes Offset Dimen Elements Attributes References ICNT I(4) 4 40 1 1024 COM IDAT I(4) 4 8 1 3 COM IDN I(4) 4 36 scalar COM IDSP I(4) 4 4136 1 1024 COM IDTAD I(4) 4 68 scalar COM IHE I(4) 4 0 1 387 COM 192 IHHA I(4) 4 3040 1 760 COM IHLA I(4) 4 0 1 760 COM IHRST I(4) 4 20 scalar COM IHW I(4) 4 1548 1 387 COM 193 IOUT I(4) 4 44 scalar COM IUP I(4) 4 32 scalar COM IVE I(4) 4 3096 1 387 COM IVHA I(4) 4 9120 1 760 COM IVLA I(4) 4 6080 1 760 COM IVW I(4) 4 4644 1 387 COM JEND I(4) 4 12 scalar COM 172 JEND_2U I(4) 4 8236 scalar COM JEND_M I(4) 4 20 scalar COM 185 JEND_M2 I(4) 4 28 scalar COM JRA I(4) 4 12160 1 760 COM JSTA I(4) 4 8 scalar COM 172 JSTA_2L I(4) 4 8232 scalar COM JSTA_M I(4) 4 16 scalar COM 185 JSTA_M2 I(4) 4 24 scalar COM LIST I(4) 4 40 scalar COM LMH I(4) 4 15200 2 91719 COM 191 LMV I(4) 4 382076 2 91719 COM 194,195,196,197 ME I(4) 4 4 scalar COM NBC I(4) 4 36 scalar COM NBOCO I(4) 4 72 scalar COM NCP I(4) 4 80 scalar COM NDDAMP I(4) 4 60 scalar COM NFCST I(4) 4 32 scalar COM NPHS I(4) 4 84 scalar COM NPREC I(4) 4 64 scalar COM NRADL I(4) 4 92 scalar COM NRADS I(4) 4 88 scalar COM NSHDE I(4) 4 76 scalar COM NTSD I(4) 4 52 scalar COM NTSTM I(4) 4 56 scalar COM NUM_PROCS I(4) 4 0 scalar COM PD R(4) 4 0 2 91719 COM PREC R(4) 4 5503140 2 91719 COM PSHLTR R(4) 4 2568132 2 91719 COM Q R(4) 4 50628888 3 4127355 COM Q10 R(4) 4 733752 2 91719 COM Q2 R(4) 4 6970644 3 4127355 COM Q30 R(4) 4 3301884 2 91719 COM QS R(4) 4 1467504 2 91719 COM QSHLTR R(4) 4 2201256 2 91719 COM QWBS R(4) 4 4035636 2 91719 COM QZ0 R(4) 4 2935008 2 91719 COM RES R(4) 4 366876 2 91719 COM RESTRT R(4) 4 28 scalar COM Page 7 Source Listing CALDRG 2025-03-12 18:23 Symbol Table CALDRG.f Name Type Bytes Offset Dimen Elements Attributes References RF R(4) 4 3301884 2 91719 COM RUN R(4) 4 4 scalar COM SI R(4) 4 4769388 2 91719 COM SIGMA R(4) 4 0 scalar COM SNO R(4) 4 4402512 2 91719 COM T R(4) 4 34119468 3 4127355 COM TH10 R(4) 4 366876 2 91719 COM TH30 R(4) 4 2935008 2 91719 COM THS R(4) 4 1100628 2 91719 COM THZ0 R(4) 4 2568132 2 91719 COM TSHLTR R(4) 4 1834380 2 91719 COM TWBS R(4) 4 3668760 2 91719 COM U R(4) 4 1100628 3 4127355 COM 194,195 U10 R(4) 4 1100628 2 91719 COM U30 R(4) 4 3668760 2 91719 COM USTAR R(4) 4 0 2 91719 COM 215 UZ0 R(4) 4 1834380 2 91719 COM 180,203 V R(4) 4 17610048 3 4127355 COM 196,197 V10 R(4) 4 1467504 2 91719 COM V30 R(4) 4 4035636 2 91719 COM VZ0 R(4) 4 2201256 2 91719 COM 181,204 Z0 R(4) 4 0 2 91719 COM Page 8 Source Listing CALDRG 2025-03-12 18:23 Subprograms/Common Blocks CALDRG.f SUBPROGRAMS/COMMON BLOCKS Name Object Declared Type Bytes Dimen Elements Attributes References CALDRG Subr 1 CTLBLK Common 159 96 SAVE INDX Common 146 6192 SAVE LOOPS Common 113 748952 SAVE PARALLEL Common 166 8240 PVRBLS Common 134 23480064 SAVE SRFDSP Common 128 4402512 VRBLS Common 121 67138308 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 Page 9 Source Listing CALDRG 2025-03-12 18:23 CALDRG.f -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=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 Page 10 Source Listing CALDRG 2025-03-12 18:23 CALDRG.f -w noignore_bounds -w noignore_loc -w nointerfaces -w noshape -w notruncated_source -w uncalled -w uninitialized -w nounused -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 : CALDRG.lst no -o COMPILER: Intel(R) Fortran 19.1-1655