Page 1 Source Listing VDIFQ 2025-03-12 18:23 /tmp/ifortt4dIj3.i 1 # 1 "VDIFQ.F" 2 C&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 3 SUBROUTINE VDIFQ(LMHK,KTM,DTQ2,Q2,EL,Z) 4 C ****************************************************************** 5 C * * 6 C * VERTICAL DIFFUSION * 7 C * * 8 C ****************************************************************** 9 C----------------------------------------------------------------------- 10 INCLUDE "parmeta" 11 # 1 "./sp.h" 1 12 # 4 13 14 # 11 "VDIFQ.F" 2 15 C----------------------------------------------------------------------- 39 P A R A M E T E R 40 &(LP1=LM+1,LM1=LM-1,LM2=LM-2) 41 P A R A M E T E R 42 &(ESQ=0.20,ELZ0=0.) 43 C----------------------------------------------------------------------- 44 D I M E N S I O N 45 & Q2 (LM) 46 D I M E N S I O N 47 & EL (LM1) 48 &,Z (LP1) 49 D I M E N S I O N 50 & CM (LM2),CR (LM2),RSQ2 (LM2),AKQ (LM2),DTOZ (LM2) 51 C----------------------------------------------------------------------- 52 C*********************************************************************** 53 DTDIF=DTQ2/FLOAT(KTM) 54 LMHM=LMHK-1 55 LMH2=LMHK-2 56 LMHP=LMHK+1 57 C----------------------------------------------------------------------- 58 DO 300 KT=1,KTM 59 C----------------------------------------------------------------------- 60 DO 100 L=1,LMH2 61 DTOZ(L)=(DTDIF+DTDIF)/(Z(L)-Z(L+2)) 62 AKQ(L)=SQRT((Q2(L)+Q2(L+1))*0.5)*(EL(L)+EL(L+1))*0.5*ESQ 63 & /(Z(L+1)-Z(L+2)) 64 CR(L)=-DTOZ(L)*AKQ(L) 65 100 CONTINUE 66 C 67 CM(1)=DTOZ(1)*AKQ(1)+1. 68 RSQ2(1)=Q2(1) 69 C----------------------------------------------------------------------- 70 DO 110 L=2,LMH2 71 CF=-DTOZ(L)*AKQ(L-1)/CM(L-1) 72 CM(L)=-CR(L-1)*CF+(AKQ(L-1)+AKQ(L))*DTOZ(L)+1. 73 RSQ2(L)=-RSQ2(L-1)*CF+Q2(L) 74 110 CONTINUE 75 C----------------------------------------------------------------------- 76 DTOZS=(DTDIF+DTDIF)/(Z(LMHM)-Z(LMHP)) 77 AKQS=SQRT((Q2(LMHM)+Q2(LMHK))*0.5)*(EL(LMHM)+ELZ0)*0.5*ESQ 78 & /(Z(LMHK)-Z(LMHP)) 79 C 80 CF=-DTOZS*AKQ(LMH2)/CM(LMH2) Page 2 Source Listing VDIFQ 2025-03-12 18:23 VDIFQ.F 81 C----------------------------------------------------------------------- 82 Q2(LMHM)=(DTOZS*AKQS*Q2(LMHK)-RSQ2(LMH2)*CF+Q2(LMHM)) 83 & /((AKQ(LMH2)+AKQS)*DTOZS-CR(LMH2)*CF+1.) 84 C 85 DO 120 IVI=1,LMH2 86 L=LMHM-IVI 87 Q2(L)=(-CR(L)*Q2(L+1)+RSQ2(L))/CM(L) 88 120 CONTINUE 89 C----------------------------------------------------------------------- 90 300 CONTINUE 91 C----------------------------------------------------------------------- 92 RETURN 93 END ENTRY POINTS Name vdifq_ SYMBOL CROSS REFERENCE Name Object Declared Type Bytes Dimen Elements Attributes References 100 Label 65 60 110 Label 74 70 120 Label 88 85 300 Label 90 58 AKQ Local 50 R(4) 4 1 43 62,64,67,71,72,80,83 AKQS Local 77 R(4) 4 scalar 77,82,83 CF Local 71 R(4) 4 scalar 71,72,73,80,82,83 CM Local 50 R(4) 4 1 43 67,71,72,80,87 CR Local 50 R(4) 4 1 43 64,72,83,87 DTDIF Local 53 R(4) 4 scalar 53,61,76 DTOZ Local 50 R(4) 4 1 43 61,64,67,71,72 DTOZS Local 76 R(4) 4 scalar 76,80,82,83 DTQ2 Dummy 3 R(4) 4 scalar ARG,INOUT 53 EL Dummy 3 R(4) 4 1 44 ARG,INOUT 62,77 ELZ0 Param 42 R(4) 4 scalar 77 ESQ Param 42 R(4) 4 scalar 62,77 FLOAT Func 53 scalar 53 IDIM1 Param 35 I(4) 4 scalar IDIM2 Param 35 I(4) 4 scalar IGSTL Param 30 I(4) 4 scalar 35 IGSTR Param 30 I(4) 4 scalar 35 IM Param 18 I(4) 4 scalar 32,35 INPES Param 27 I(4) 4 scalar 32,35 ITAIL Param 32 I(4) 4 scalar IVI Local 85 I(4) 4 scalar 85,86 JDIM1 Param 36 I(4) 4 scalar JDIM2 Param 36 I(4) 4 scalar JGSTL Param 31 I(4) 4 scalar 36 JGSTR Param 31 I(4) 4 scalar 36 JM Param 18 I(4) 4 scalar 33,36 JNPES Param 27 I(4) 4 scalar 33,36 Page 3 Source Listing VDIFQ 2025-03-12 18:23 Symbol Table VDIFQ.F Name Object Declared Type Bytes Dimen Elements Attributes References JTAIL Param 33 I(4) 4 scalar KT Local 58 I(4) 4 scalar 58 KTM Dummy 3 I(4) 4 scalar ARG,INOUT 53,58 L Local 60 I(4) 4 scalar 60,61,62,63,64,70,71,72,73,86,87 LM Param 18 I(4) 4 scalar 40,45 LM1 Param 40 I(4) 4 scalar 47 LM2 Param 40 I(4) 4 scalar 50 LMH2 Local 55 I(4) 4 scalar 55,60,70,80,82,83,85 LMHK Dummy 3 I(4) 4 scalar ARG,INOUT 54,55,56,77,78,82 LMHM Local 54 I(4) 4 scalar 54,76,77,82,86 LMHP Local 56 I(4) 4 scalar 56,76,78 LP1 Param 40 I(4) 4 scalar 48 LSM Param 18 I(4) 4 scalar Q2 Dummy 3 R(4) 4 1 45 ARG,INOUT 62,68,73,77,82,87 RSQ2 Local 50 R(4) 4 1 43 68,73,82,87 SQRT Func 62 scalar 62,77 VDIFQ Subr 3 Z Dummy 3 R(4) 4 1 46 ARG,INOUT 61,63,76,78 Page 4 Source Listing VDIFQ 2025-03-12 18:23 VDIFQ.F 94 Page 5 Source Listing VDIFQ 2025-03-12 18:23 Subprograms/Common Blocks VDIFQ.F SUBPROGRAMS/COMMON BLOCKS Name Object Declared Type Bytes Dimen Elements Attributes References VDIFQ Subr 3 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__ -D __x86_64 -D __x86_64__ -D __amd64 -D __amd64__ -D __INTEL_COMPILER_BUILD_DATE=20200925 -D __INTEL_OFFLOAD Page 6 Source Listing VDIFQ 2025-03-12 18:23 VDIFQ.F -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 precise -fp_model nofast -fp_model nostrict -fp_model nosource -fp_model nodouble -fp_model noextended -fp_model novery_fast -fp_model noexcept -fp_model nono_except -fp_modbits nofp_contract -fp_modbits nono_fp_contract -fp_modbits nofenv_access -fp_modbits nono_fenv_access -fp_modbits nocx_limited_range -fp_modbits nono_cx_limited_range -fp_modbits noprec_div -fp_modbits nono_prec_div -fp_modbits noprec_sqrt -fp_modbits nono_prec_sqrt -fp_modbits noftz -fp_modbits no_ftz -fp_modbits nointrin_limited_range -fp_modbits nono_intrin_limited_range -fp_modbits notrunc_compares -fp_modbits nono_trunc_compares -fp_modbits noieee_nan_compares -fp_modbits nono_ieee_nan_compares -fp_modbits nohonor_f32_conversion -fp_modbits nono_honor_f32_conversion -fp_modbits nohonor_f64_conversion -fp_modbits nono_honor_f64_conversion -fp_modbits nono_x87_copy -fp_modbits nono_no_x87_copy -fp_modbits noexception_semantics -fp_modbits nono_exception_semantics -fp_modbits noprecise_libm_functions -fp_modbits nono_precise_libm_functions -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 Page 7 Source Listing VDIFQ 2025-03-12 18:23 VDIFQ.F -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 -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 : VDIFQ.lst no -o COMPILER: Intel(R) Fortran 19.1-1655