Skip to content
Failed

Changes

Summary

  1. Adding space because commit ba3b1ef5ceaa07706f078cc61cfdac22d3c6a1c3 in the sys_admin repo fixed a bug causing tests to fail, this means we have RESOLVED:d8df4eea1e41bee8cbd3de374148241f040fc03c, which was only labelled as failing since we erroneously checked the commit range it was included in. (details)
  2. Making clubb_driver only call the multicolumn driver if num_standalone_columns > 1 (details)
  3. Minor adjustment to eliminate spikes in thlm tendencies from the monotonic flux limiter. (#1043) (details)
  4. Making interface for matrix solvers. (details)
  5. Making tridag tridiag everywhere, making sol soln, and adding intent comments. (details)
  6. A different way of dealing with monotonic flux limiter spikes (#1046) (details)
  7. Steffens tuner fixer branch (#1041) (details)
  8. Adding capability to change matrix solving method via clubb_config_flags. (details)
  9. Fixing small bug, need to pass _copy arrays to prevent lapack mangling the real ones. (details)
  10. Making GPU and CPU versions of the penta_lu solver the same as discussed in larson-group/clubb#1024. (details)
  11. Delete clubb.in (details)
  12. Delete error_diffs.txt (details)
  13. Adding capability to change matrix solving method via clubb_config_flags. (details)
  14. Removing unwanted files. (details)
  15. Replacing $ with & in namelist definition to make consistent. (details)
  16. Creates separate file for inputting data to the tuner (details)
  17. I added "smooth" max clipping for invrs_tau_shear, which is a variable (details)
  18. ADG1_pdf_driver subroutine port with OpenACC (details)
  19. Replacing old elemental ADG1_w_closure with new GPUized one. Making G_unit tests work with new version. Also making mixt_frac_max_mag a scalar since it was only being used as such. larson-group/clubb#1049 (details)
  20. Making the multicolumn code open the netcdf file before writing and close when finished writing. This fixes a bug where the netcdf data wasn't being written. (details)
  21. For tuning dashboard, modify the separate input file (details)
  22. Delete tuner file that was accidentally committed (details)
  23. Prevent accidental commits of python .pyc files (details)
  24. I can now safely remove all the "ifdef E3SM" statements from CLUBB's (details)
  25. For the dashboard, creates a forward model solution function. (details)
  26. I updated and augmented the instructions to run the tuner. (details)
  27. added ntecdf var collector and readme to clubb repo (details)
  28. Adds to tuner code for min dp for stubborn parameters (details)
  29. Adding config script to compile with openacc using nvhpc. (details)
  30. Pushing column loop into lapack wrap. (details)
  31. Restructuring and Porting of Compute_mixing_length subroutine(Phase 1) (#1052) (details)
  32. Restructuring and Porting of Compute_mixing_length subroutine(Phase 2) (#1054) (details)
  33. Breaking up column loop in mono_flux_limiter. This may not be the final form for GPUization, but it's definitely a start, no longer do we have to copy single column variables to multicolumn ones anywhere. (#1051) (details)
  34. Adding tridiag_lu solver (#1056) (details)
  35. Adds to tuner error bars on bias removal (arrow) plots (details)
  36. Adding OpenACC data directives for mixing length and adg routines (details)
  37. Fixing error causing GPU code not to run. Some variables to be copied were labelled as (ngrdcol,nz) when it should be (:ngrdcol,:nz). I've just removed the data length specifiers completely since they are not neccesary in general. (details)
  38. GPUizing sat_mixrat_ice_2D. (details)
  39. Adds to dashboard plots error bars for (details)
  40. Adds to dashboard a bar plot that separates nonlinear (details)
  41. Added option (-i) to run_tuner.bash script to enable pre-tuning standalone runs. README will be updated. (details)
  42. Pushing column loop into calculate_thvm (details)
  43. Removing update_pressure since it is no longer called anywhere in clubb or host models. The addition of this subroutine was discussed in larson-group/e3sm#6 and the removal of the call to it was discussed in larson-group/clubb#926. (details)
  44. Removing update_pressure from public list. This was causing compilation crashes. RESOLVED:8c7230fecb877d04fb129ef5e143e0993b4b29b1 (details)
  45. Fixing bug, arrays given a dummy index in 0fafc6b0b1f1a6058d37bf3db4bb3708204504db are declared nsize, but are only used up to nlevels, thus we need the (1,1:nlevels) specifier when passing them. This issue was only caught by our _debug tests, so that's good evidence the new flags we added to initialize unused to memory was effective. (details)
  46. GPUizing some helping procedures. (details)
  47. Removing sigma_sqd_w from the acc data copyout statement. This is a bug which was causing the code to crash when not using managed memory. (details)
  48. Porting pdf_closure subroutine with OpenACC (#1059) (details)
  49. made graphing for netcdf_var collector general. #1040 (details)
  50. Adding wp3_on_wp2_cfl_num to CLUBB's output stats. (details)
  51. Added wp3_on_wp2_cfl_num to the VariableGroupNondimMoments.py file for (details)
  52. Update VariableGroupNondimMoments.py (details)
  53. Fixing bug. This was only triggered when l_input_fields=.true., which I am only testing because it needs to be true so that I can test ADG2_driver. (details)
  54. Removing usage of gr from pdf_closure. It was only ever used for nz, which is now fed in directly. (details)
  55. Clubb ticket #1025: Implemented way to make esa tuner reproducible, h… (#1068) (details)
  56. added autocommit message maker to clubb so I have an easier time testing it (details)
  57. changes to integrate message maker into gitUpdate scripts (details)
  58. Oops, I made 1 small error, should be consistent now. (details)
  59. Implementing changes to the initial conditions. (details)
  60. This commit most definitely does not change any bits, (details)
  61. Add scripts to configure and run convergence test (details)
  62. reorgnize the scripts for convergence test simulations (details)
  63. Update README (details)
  64. Gpu updates (#1070) (details)
  65. Code changes to implement modified boundary condition (details)
  66. Implements Thomas Toniazzo's bug fix for spike removal (details)
  67. Fixed an old notation change in the README (details)
  68. Update README (details)
  69. Making 'a_const' into a CLUBB tunable parameter. (#1072) (details)
  70. Update README (details)
  71. Update README (details)
  72. Pdf closure driver gpuization (#1071) (details)
  73. Update README (details)
  74. Moving compute_cloud_cover outside of if ( l_use_cloud_cover ) then statement, the cloud_cover and rcm_in_layer variables they compute aren't output in clubb_standalone, but are in cam, causing cam bit diff tests to break. (details)
  75. Undoing README update, 1 space = 1 byte and we should maximize file sizes to deter hackers from stealing our data. Also BIT_CHANGING:fb4556e4cc4cb3d4b6df3520370a28a824f357ef for configs where l_use_cloud_cover = .false., which means I was wrong about this ever not being bit changing, so I must've either only tested with l_use_cloud_cover = .true. or only tested the multicol diffs when I put compute_cloud_cover inside the if statement. (details)
  76. Adding Skthl_zm to the update host list, I missed this in the last PR. I noticed this by comparing results with and without managed memory, now I've checked BFBness with arm, mpace_b, mc3e, and gabls2. (details)
  77. Small GPU fixes (#1076) (details)
  78. Adds blank line to trigger nightly tests (details)
  79. Code changes to implement modificiations on wp3 clippings (details)
  80. This commit contains code changes to implement modifications on limiters in three places: (details)
  81. changing tunable_parameters (details)
  82. changing tunable_parameters (details)
  83. changing tunable_parameters (details)
  84. Advance xm wpxp gpuization (#1077) (details)
  85. Small improvements to diff_netcdf_outputs.py, removing reliance on ncdiff, now it is entirely in python. Cleaning up linux_x86_64_nvhpc_gpu.bash, removing outdated parts, improving default parallel compilation, changing pgfortran to nvfortran. (details)
  86. Small tweaks to fix some GPU bugs. Some variables were uninitialized on the CPU while we were saving them. This could only have been caught by comparing consecutive runs and checking _zt and _zm files, even then few cases were having problems. (details)
  87. Fixing a labelling error in redirect_interpolated_azt_2D and similar procedures, since this interpolates to zt the input should be zm. I think this was my fault, so I cleaned all the zt2zm and zm2zt things up to make it a little nicer. Also ordered the routines _k _1D _2D to make it easier to jump around, it was a bit confusing as they were out of order and the typo really made it hard. (details)
  88. bug fixes for the autocommit message maker code (details)
  89. Making it so sclr_tol is set to 0 before the specified sclr_tol_in. This is so that it is initialized to 0 in the case that sclr_dim = 0, since now we are setting it to have a minimum allocation size of 1 and would otherwise have a garbage value. This is what broke the clubb_openmp_gfortran_test. (details)
  90. update the scripts for convergence test (details)
  91. Lscale GPUization (#1079) (details)
  92. gfortran does not like intent(out) specifiers for functions. (details)
  93. Added a new file to compile CLUBB on Anvil. (details)
  94. GPUizing Various Small Routines (#1080) (details)
  95. This commit is a commit that changes absolutely nothing. It is meant to trigger a change in the git update scripts, so that I can start the commit message logging in the autocommit updates larson-group/sys_admin#797 (details)
  96. Fixing an error with the autocommit_update script that was causing it new works (details)
  97. this is another commit that cahnges nothing that will trigger the gitUpdate scripts (details)
  98. Updates to make the convergence tests run on Anvil. (details)
  99. adding an update that changes nothing and is just a test for the autoupdate script (details)
  100. Making CLUBB's splatting scheme implicit and smoother (#1075) (details)
  101. Calc sfc varnce GPUization (#1081) (details)
  102. Reducing C_wp2_splat to 0.25 (from 2.0) for new implicit splatting code. (details)
  103. Removed Space From clip_explicit (details)
  104. updated autocommit_message_maker to check another error for debugging (details)
  105. Fixed the autocommit message maker code, should noot error anymore (details)
  106. I am beginning a section on running the convergence tests in the README. (details)
  107. Update run_cnvg_test_multi_cases_revall.csh (details)
  108. Update run_cnvg_test_multi_cases_default.csh (details)
  109. Update run_cnvg_test_multi_cases_baseline.csh (details)
  110. Update README (details)
  111. making changes to trigger autoudpate for test, these commits do nothing (details)
  112. Here is another commit that changes nothing (details)
  113. change to trigger updates (details)
  114. change to calc pressure to trigger autoupdate (details)
  115. Editing convergence scripts to show that the directory should be placed in (details)
  116. Committing scripts for use in running CLUBB convergence tests in the background. (details)
  117. Updated the background run scripts for the convergence tests with a comment (details)
  118. I updated the README to finish the section on the convergence tests. (details)
  119. Edited the README section on CLUBB convergence tests. (details)
  120. I added dycoms2_rf01 to the list of cases that could be run. (details)
  121. I updated the run_cnvg_test_multi_cases_revall.csh script to include (details)
  122. Modified run_cnvg_test_multi_cases_default.csh and (details)
  123. Added comments to the script to explain ambiguous portions of my code (details)
  124. GPUizing Lscale_width_vert_avg. Loops have been restructured for simplicity, and algorithm has a different starting value to avoid k dependency. Results are BFB. (#1083) (details)
  125. GPUizing most of advance_clubb_core (#1084) (details)
  126. advance_wp2_wp3 with explicitly managed memory  (#1085) (details)
  127. advance_xp2_xpyp with explicitly managed memory (#1086) (details)
  128. advance_windm_edsclrm with explicitly managed memory (#1087) (details)
  129. Moving data statements to outter most parts of clubb and little fix in advance_wp2_wp3 (#1088) (details)
  130. Data movement improvement (#1089) (details)
  131. CLUBB ticket #1069: (#1092) (details)
  132. Changing "Fnc" to "fnc" for consistency and easy search. (details)
  133. Memory usage optimizations (#1091) (details)
  134. Modifying README. Last commit was BIT_CHANGING:0b0ab3d530bef06eb90bf6dde21b26eb25780214 see https://github.com/larson-group/clubb/pull/1091 for details. (details)
  135. Openacc tweaks and cleanup (#1097) (details)
  136. Improving run_bin_diff.py to accept an argument to print the differences, and an argument to define a threshold to ignore differences. (details)
  137. Update requirements.txt (details)
  138. Update requirements.txt (details)
  139. Loop to `nz-1` instead of `nz` because upper boundary condition (details)
  140. Added code to subroutine run_clubb in src/clubb_driver.F90 which prints git log and git diff information to the <case>_setup.txt output file. (#1101) (details)
  141. Openacc tweaks and cleanup 2 (#1099) (details)
  142. Adds to RegTune a plot of a color-coded normalized sensitivity matrix (details)
  143. Adds hint about installing dash for RegTune (details)
  144. Updates input files for RegTune. (details)
  145. Bit changing changes (#1104) (details)
  146. Adding wp_coef and wp_coef_zt to acc data statements. (details)
  147. For RegTune, update input netcdf files. (details)
  148. Bv efold bit changing (#1095) (details)
Commit 712c7fcb9fe3cd06406e1cff510e45070e950884 by Gunther Huebler
Adding space because commit ba3b1ef5ceaa07706f078cc61cfdac22d3c6a1c3 in the sys_admin repo fixed a bug causing tests to fail, this means we have RESOLVED:d8df4eea1e41bee8cbd3de374148241f040fc03c, which was only labelled as failing since we erroneously checked the commit range it was included in.
The file was modified run_scripts/README (diff)
Commit 1715dbb290f3a73115e249c6624092680dc03893 by 37674341+huebleruwm
Making clubb_driver only call the multicolumn driver if num_standalone_columns > 1
The file was modified src/clubb_driver.F90 (diff)
Commit f2b6fe4f75342f54923d94253bf87d3bd84cf0ff by noreply
Minor adjustment to eliminate spikes in thlm tendencies from the monotonic flux limiter. (#1043)

See https://github.com/NCAR/amwg_dev/discussions/134.

This commit will be BIT_CHANGING. Differences are mainly noticeable in the more sensitive cases.
The file was modified src/CLUBB_core/mono_flux_limiter.F90 (diff)
Commit eaa6bc745ea28193de2b70e32f18d208c0502b46 by 37674341+huebleruwm
Making interface for matrix solvers.
The file was modified src/CLUBB_core/advance_windm_edsclrm_module.F90 (diff)
The file was modified src/CLUBB_core/lapack_wrap.F90 (diff)
The file was modified src/CLUBB_core/advance_xp2_xpyp_module.F90 (diff)
The file was modified src/CLUBB_core/mono_flux_limiter.F90 (diff)
The file was addedsrc/CLUBB_core/penta_lu_solver.F90
The file was modified src/CLUBB_core/advance_wp2_wp3_module.F90 (diff)
The file was modified src/CLUBB_core/advance_xm_wpxp_module.F90 (diff)
The file was addedsrc/CLUBB_core/matrix_solver_wrapper.F90
The file was modified src/advance_microphys_module.F90 (diff)
Commit 3db17ebd160e42d04b1128de2d904cf016a31c93 by 37674341+huebleruwm
Making tridag tridiag everywhere, making sol soln, and adding intent comments.
The file was modified src/CLUBB_core/lapack_wrap.F90 (diff)
The file was modified src/CLUBB_core/advance_xm_wpxp_module.F90 (diff)
The file was modified src/CLUBB_core/matrix_solver_wrapper.F90 (diff)
The file was modified src/CLUBB_core/penta_lu_solver.F90 (diff)
The file was modified src/advance_microphys_module.F90 (diff)
Commit 81e8853ff0aaa5927cdd1d420489680fd28e4eb3 by noreply
A different way of dealing with monotonic flux limiter spikes (#1046)

* A different way of dealing with monotonic flux limiter spikes in CAM, by increasing the value
of thl_tol_mfl.  ALso reverts the earlier fix.  BIT_CHANGING.

See https://github.com/NCAR/amwg_dev/discussions/134#discussioncomment-4165447.

* Reducing value of thl_tol_mfl from 0.5 to 0.2.

This will be BIT_CHANGING.
The file was modified src/CLUBB_core/constants_clubb.F90 (diff)
The file was modified src/CLUBB_core/mono_flux_limiter.F90 (diff)
Commit 7c694ec0241527c624be7ada4de8f0a7b3f6b610 by noreply
Steffens tuner fixer branch (#1041)

* Clubb ticket #1025: Implemented changes dealing with pdf_params%thl1/2 and wp2 floating point errors occurring in tuning runs. BIT_CHANGING
- Added command-line option -t/--tuner to compile.bash which enables the -DTUNER compiler flag.
- Added line to gfortran compilation config file to easily disable openMP
- Added a couple error messages and cleaned up some instances of error handling in src/error.F90, src/clubb_driver.F90, and src/CLUBB_core/advance_clubb_core_module.F90
- Added global constant wp2_max in src/CLUBB_core/constants_clubb.F90 which sets the upper bound for wp2
- In pdf_closure, added sanity checks for pdf_params%thl1/2 (>=190K, <=1000K)
- Added debug warning in src/CLUBB_core/advance_wp2_wp3_module.F90 when wp2 is clipped.
- Added wp2_sfc clipping in src/CLUBB_core/sfc_varnce_module.F90
- Added debug_level_check to NaN check in clubb_driver.F90
- Added mention of the new compiler option to the README
The file was modified README (diff)
The file was modified compile/config/linux_x86_64_gfortran.bash (diff)
The file was modified src/CLUBB_core/numerical_check.F90 (diff)
The file was modified input_misc/tuner/error_four_cases.in (diff)
The file was modified src/clubb_tuner.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/error.F90 (diff)
The file was modified src/CLUBB_core/constants_clubb.F90 (diff)
The file was modified src/CLUBB_core/advance_wp2_wp3_module.F90 (diff)
The file was modified src/CLUBB_core/grid_class.F90 (diff)
The file was modified compile/compile.bash (diff)
The file was modified src/CLUBB_core/sfc_varnce_module.F90 (diff)
The file was modified src/clubb_driver.F90 (diff)
The file was modified src/CLUBB_core/pdf_closure_module.F90 (diff)
Commit 1a43597bdd06c12411ea8698c4f1f200efec7478 by 37674341+huebleruwm
Adding capability to change matrix solving method via clubb_config_flags.
The file was modified src/CLUBB_core/mono_flux_limiter.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/model_flags.F90 (diff)
The file was modified src/clubb_driver.F90 (diff)
The file was modified input/tunable_parameters/configurable_model_flags.in (diff)
The file was addedrun_scripts/clubb.in
The file was modified src/G_unit_test_types/spurious_source_test.F90 (diff)
The file was addedrun_scripts/error_diffs.txt
The file was modified src/CLUBB_core/clubb_api_module.F90 (diff)
The file was modified src/G_unit_test_types/pdf_parameter_tests.F90 (diff)
The file was modified src/advance_microphys_module.F90 (diff)
The file was modified src/CLUBB_core/advance_xm_wpxp_module.F90 (diff)
The file was modified src/CLUBB_core/advance_windm_edsclrm_module.F90 (diff)
The file was modified src/clubb_tuner.F90 (diff)
The file was modified src/CLUBB_core/advance_wp2_wp3_module.F90 (diff)
The file was addedrun_scripts/diff.nc
The file was modified src/CLUBB_core/advance_xp2_xpyp_module.F90 (diff)
The file was modified src/CLUBB_core/matrix_solver_wrapper.F90 (diff)
Commit a8f324c4ae9dc0526fb9a1e622e32c8c20a4e0de by 37674341+huebleruwm
Fixing small bug, need to pass _copy arrays to prevent lapack mangling the real ones.
The file was modified src/CLUBB_core/matrix_solver_wrapper.F90 (diff)
Commit 3ebfa3db3b485a4f58bd654b25f8608c1aa7d7bd by 37674341+huebleruwm
Making GPU and CPU versions of the penta_lu solver the same as discussed in larson-group/clubb#1024.
The file was modified src/CLUBB_core/penta_lu_solver.F90 (diff)
The file was removedrun_scripts/clubb.in
The file was removedrun_scripts/error_diffs.txt
Commit 33dd904e2f71c1cf801dbcdd71e8b796cc1c55f1 by 37674341+huebleruwm
Adding capability to change matrix solving method via clubb_config_flags.
The file was addedrun_scripts/clubb.in
The file was addedrun_scripts/error_diffs.txt
The file was removedrun_scripts/diff.nc
The file was removedrun_scripts/error_diffs.txt
The file was removedrun_scripts/clubb.in
Commit 61b4a67e170bc2243263ac19fb90b24f5a1e455b by Gunther Huebler
Replacing $ with & in namelist definition to make consistent.
The file was modified input/tunable_parameters/configurable_model_flags.in (diff)
Commit 216528613a53b626f93c97867ec2b69bb7ba9da1 by Vince Larson
Creates separate file for inputting data to the tuner
The file was addedutilities/sens_matrix/set_up_dashboard_inputs.py
The file was modified utilities/sens_matrix/sens_matrix_dashboard.py (diff)
Commit c50ab36d29f7c3cdbadbfa6cfa5cf935451e26a2 by bmg2
I added "smooth" max clipping for invrs_tau_shear, which is a variable
that is supposed to be positive definite, yet was obtaining negative
values at the model lower boundary owing to linear extension at the
boundaries as part of the linear interpolation call.

This change is BIT_CHANGING.
The file was modified src/CLUBB_core/mixing_length.F90 (diff)
Commit dd076c1c9334039050dfc1a098d1cbbf997dad91 by 37674341+huebleruwm
ADG1_pdf_driver subroutine port with OpenACC

Added OpenACC related flags in linux_x86_64_nvhpc_casper.bash
You can enable/disable OpenACC compilation using OPENACC=true/false.
Added OpenACC directives in ADG1_pdf_driver subroutine.
The file was modified compile/config/linux_x86_64_nvhpc_casper.bash (diff)
The file was modified src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90 (diff)
Commit b6d7e4f16f711f1df7e991d2a854936bb0782517 by 37674341+huebleruwm
Replacing old elemental ADG1_w_closure with new GPUized one. Making G_unit tests work with new version. Also making mixt_frac_max_mag a scalar since it was only being used as such. larson-group/clubb#1049
The file was modified src/G_unit_test_types/pdf_parameter_tests.F90 (diff)
The file was modified src/G_unit_test_types/spurious_source_test.F90 (diff)
The file was modified src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90 (diff)
Commit 803a30a547fcc2771a30a51f56ebc7de8d842174 by Gunther Huebler
Making the multicolumn code open the netcdf file before writing and close when finished writing. This fixes a bug where the netcdf data wasn't being written.
The file was modified src/clubb_driver.F90 (diff)
Commit ab881650d8bfbf6dfbc652c1063f8f9ea10e6801 by Vince Larson
For tuning dashboard, modify the separate input file

that contains "namelist" data (i.e., input data) for tuning runs.
The file was modified utilities/sens_matrix/set_up_dashboard_inputs.py (diff)
The file was modified utilities/sens_matrix/sens_matrix_dashboard.py (diff)
The file was modified utilities/sens_matrix/analyze_sensitivity_matrix.py (diff)
The file was addedutilities/sens_matrix/__pycache__/analyze_sensitivity_matrix.cpython-310.pyc
Commit fa8048b3d5d5023dfc49e9d8dd4657b80f02f561 by Vince Larson
Delete tuner file that was accidentally committed
The file was removedutilities/sens_matrix/__pycache__/analyze_sensitivity_matrix.cpython-310.pyc
Commit 31fd72c504443be6a94bb4d846619ba4cf132da3 by Vince Larson
Prevent accidental commits of python .pyc files
The file was modified .gitignore (diff)
Commit caa222a50d383a0400f09f218434327430bdb996 by bmg2
I can now safely remove all the "ifdef E3SM" statements from CLUBB's
parameters_tunable.F90.  This code is now located in the clubb_intr.F90
portion of E3SM.
The file was modified src/CLUBB_core/parameters_tunable.F90 (diff)
Commit 94ffde078414db4311ae719e08c642c8a7e9a113 by Vince Larson
For the dashboard, creates a forward model solution function.
The file was modified utilities/sens_matrix/sens_matrix_dashboard.py (diff)
The file was modified utilities/sens_matrix/set_up_dashboard_inputs.py (diff)
Commit c2bce735f14469362d3042e38bb5553ef4dbb555 by noreply
I updated and augmented the instructions to run the tuner.
The file was modified utilities/sens_matrix/README.md (diff)
Commit d956707573fb70588a9f8b0219a5585c8577040a by cernikt
added ntecdf var collector and readme to clubb repo
The file was addedutilities/read_sam_moments/README.md
The file was addedutilities/read_sam_moments/netcdf_var_collector.py
Commit 2f930309d0a901cb4ba97ecd7766e81141b29993 by Vince Larson
Adds to tuner code for min dp for stubborn parameters

and adds code to start adding error bars on arrow plots.
The file was modified utilities/sens_matrix/sens_matrix_dashboard.py (diff)
The file was modified utilities/sens_matrix/set_up_dashboard_inputs.py (diff)
Commit ef9acf81f5828bb0d26258d7e2ae2e0ad5959bb5 by Gunther Huebler
Adding config script to compile with openacc using nvhpc.
The file was addedcompile/config/linux_x86_64_nvhpc_gpu.bash
Commit 6d5d5f573f3866d5d66b028d829342026e569099 by 37674341+huebleruwm
Pushing column loop into lapack wrap.
The file was modified src/CLUBB_core/lapack_wrap.F90 (diff)
The file was modified src/CLUBB_core/matrix_solver_wrapper.F90 (diff)
Commit 88b8239840f581d76610aa630dab6219d64d68be by noreply
Restructuring and Porting of Compute_mixing_length subroutine(Phase 1) (#1052)

* Restructuring and Porting of Compute_mixing_length subroutine(Phase 1)

Restructure: The compute_mixing_length is one of the top most routine taking 35-50%
of the total time in a single timestep. The subroutine has been restructured to
push the i-loop further down to extract vectorization and parallelization.
The restructuring also involves introduction of sat_mixrat_liq_acc routines to
extract parallelism when called inside a OpenACC parallel region.

Porting: OpenACC directives are inserted to port the restructured compute_mixing_length
code on to the GPUs. This port is currently unoptimized and there is still room for improvement.

NOTE: Currently, l_sat_mixrat_lookup = false and saturation_formula = saturation_flatau
(Earthworks config options) case is supported on OpenACC build. Any other options works
on CPUs as usual. OpenACC declare create directives are inserted in model_flags and
constants_clubb, as these module variables are used inside the saturation routines.

* Added debug message about only supporting
l_sat_mixrat_lookup = false and saturation_formula = saturation_flatau
on GPUs
Answers are Bit for Bit with arm-multicolumn case + nvhpc compiler.

* Changing CLUBB debug level 1 to 0 for the saturation formula support
running on GPUs

* Changing indentation to make gfortran happy, it wants ifdefs to start at the beginning of the line.

* Adding use statements for error checks and printouts, also making the errors set err_code to clubb_fatal_error.

Co-authored-by: huebler <huebler@uwm.edu>
The file was modified src/CLUBB_core/saturation.F90 (diff)
The file was modified compile/config/linux_x86_64_nvhpc_casper.bash (diff)
The file was modified src/CLUBB_core/model_flags.F90 (diff)
The file was modified src/CLUBB_core/constants_clubb.F90 (diff)
The file was modified src/CLUBB_core/mixing_length.F90 (diff)
Commit 7f1decd0252e0b4d80f4b3873b0b48b6d3ec8631 by noreply
Restructuring and Porting of Compute_mixing_length subroutine(Phase 2) (#1054)

* Restructuring and Porting of Compute_mixing_length subroutine(Phase 2)

Restructure: sat_mixrat_liq_2D_acc is being directly called instead of
calling the 1D version inside the column loop. Changing sat_mixrat_liq_2D_acc
to a subroutine from a function and adding output array, start_index as
additional argument. This is a workaround for passing sub-arrays. The OpenACC
doen't like the sub-arrays being passed and fails the validation.

Porting: OpenACC directives are added inside sat_mixrat_liq_2D_acc for porting

Validation: Answers are Bit for Bit with arm-multicolumn case + nvhpc compiler

* Fix for compilation issues

Issue 1: Missed out declaring 'start_index' while intergrating the
change

Issue 2: The use of error_code module and the procedures inside it
causes OpenACC compilation issues when run on the device.

* Removing the sat_mixrat_liq_acc and sat_mixrat_liq_2D_acc, making the normal sat_mixrat_liq work for all current use cases, and making the other versions of sat_mixrat_liq (bolton,gfdl,lookup) functional with OPENACC.

Co-authored-by: huebler <huebler@uwm.edu>
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/saturation.F90 (diff)
The file was modified src/CLUBB_core/model_flags.F90 (diff)
The file was modified src/CLUBB_core/mixing_length.F90 (diff)
Commit e21e2713eab0f3f228189a4b407c80d4f241038f by noreply
Breaking up column loop in mono_flux_limiter. This may not be the final form for GPUization, but it's definitely a start, no longer do we have to copy single column variables to multicolumn ones anywhere. (#1051)

The file was modified src/CLUBB_core/mono_flux_limiter.F90 (diff)
Commit dda5e8c57edb41b73340c0f9578d7c327b18e076 by noreply
Adding tridiag_lu solver (#1056)

* Adding tridiag_lu solver

* Changing low to lower in tridiag_lu and penta_lu, also fixing up some spacing.

* Making variables that represent matrix solutions more consistently named.
The file was addedsrc/CLUBB_core/tridiag_lu_solver.F90
The file was modified src/CLUBB_core/matrix_solver_wrapper.F90 (diff)
The file was modified src/CLUBB_core/penta_lu_solver.F90 (diff)
The file was modified src/CLUBB_core/lapack_wrap.F90 (diff)
The file was modified src/CLUBB_core/model_flags.F90 (diff)
Commit f9eb64fb27f4b0515602e0f46848fc644035cfaf by Vince Larson
Adds to tuner error bars on bias removal (arrow) plots

and also adds bar graphs that show how each parameter contributes to the bias removal.
The file was modified utilities/sens_matrix/sens_matrix_dashboard.py (diff)
Commit 95217702784b7eddc848ef0d6f7ee705c10d7752 by Vince Larson
Adding OpenACC data directives for mixing length and adg routines

OpenACC structured data regions are added to optimize the data transfers
between CPU and GPU. These data regions will converted to unstrucutred
data region in the later optimization phase.
Results are bit for bit.
The file was modified src/CLUBB_core/mixing_length.F90 (diff)
The file was modified src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90 (diff)
Commit a0f5313ee697be2153704f9d4b9775cde7d717a1 by Gunther Huebler
Fixing error causing GPU code not to run. Some variables to be copied were labelled as (ngrdcol,nz) when it should be (:ngrdcol,:nz). I've just removed the data length specifiers completely since they are not neccesary in general.
The file was modified src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90 (diff)
The file was modified src/CLUBB_core/saturation.F90 (diff)
The file was modified src/CLUBB_core/stats_clubb_utilities.F90 (diff)
Commit 822ec13b0db0f3beb4eb93d796d5221a0d3c5f93 by Vince Larson
Adds to dashboard plots error bars for

bias removal plot, a colored correlation matrix,
a matrix of linear-based 2-point bounds on parameter perturbations,
and a web-page version of the 3-dot subplots.
The file was modified utilities/sens_matrix/sens_matrix_dashboard.py (diff)
Commit 1025d807ab1f3d5e8d3a8deb72595f2314b1cec5 by Vince Larson
Adds to dashboard a bar plot that separates nonlinear

and linear contributions to bias removal.

Also abbreviates the clubb parameter names in the plots.
The file was modified utilities/sens_matrix/sens_matrix_dashboard.py (diff)
Commit cfd87ac680ebb26e2fdb7b1aab7a8b8b4fc75320 by Vince Larson
Added option (-i) to run_tuner.bash script to enable pre-tuning standalone runs. README will be updated.
The file was modified README (diff)
The file was modified run_scripts/run_tuner.bash (diff)
Commit 0fafc6b0b1f1a6058d37bf3db4bb3708204504db by 37674341+huebleruwm
Pushing column loop into calculate_thvm
The file was modified src/clubb_driver.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/calc_pressure.F90 (diff)
The file was modified src/input_interpret.F90 (diff)
Commit 8c7230fecb877d04fb129ef5e143e0993b4b29b1 by 37674341+huebleruwm
Removing update_pressure since it is no longer called anywhere in clubb or host models. The addition of this subroutine was discussed in larson-group/e3sm#6 and the removal of the call to it was discussed in larson-group/clubb#926.
The file was modified src/CLUBB_core/calc_pressure.F90 (diff)
Commit 2f84d7c748f143990316004c66ebda5486de5752 by Gunther Huebler
Removing update_pressure from public list. This was causing compilation crashes. RESOLVED:8c7230fecb877d04fb129ef5e143e0993b4b29b1
The file was modified src/CLUBB_core/calc_pressure.F90 (diff)
Commit 5850944600089fe2cb244ca1b08973231b6d91d3 by Gunther Huebler
Fixing bug, arrays given a dummy index in 0fafc6b0b1f1a6058d37bf3db4bb3708204504db are declared nsize, but are only used up to nlevels, thus we need the (1,1:nlevels) specifier when passing them. This issue was only caught by our _debug tests, so that's good evidence the new flags we added to initialize unused to memory was effective.
The file was modified src/input_interpret.F90 (diff)
Commit c9a950dbbf76e82a3cda0ab2d65f29cd5f28df12 by 37674341+huebleruwm
GPUizing some helping procedures.
The file was modified src/CLUBB_core/grid_class.F90 (diff)
The file was modified src/CLUBB_core/turbulent_adv_pdf.F90 (diff)
The file was modified src/CLUBB_core/mean_adv.F90 (diff)
The file was modified src/CLUBB_core/saturation.F90 (diff)
Commit 7d6dfad026e40eaf30f29ffa17c23dfbed882040 by 37674341+huebleruwm
Removing sigma_sqd_w from the acc data copyout statement. This is a bug which was causing the code to crash when not using managed memory.
The file was modified src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90 (diff)
Commit 47cd566e64abb0e774abd20c2ec97deed8dd3ab5 by noreply
Porting pdf_closure subroutine with OpenACC (#1059)

* Porting pdf_closure subroutine with OpenACC

OpenACC directives are added to pdf_closure subroutine. The necessary
structured data region is also added for optimzing data movement across
kernels. There is opportunity to task parallelize using streams and
will be explored in the future.

Answers are bit for bit.

* Fixing the copyin directives

* Making work without managed memory.
The file was modified src/CLUBB_core/pdf_closure_module.F90 (diff)
The file was modified src/CLUBB_core/pdf_utilities.F90 (diff)
Commit b361c61e93c25e1a491a5ff4fdbe5cbcc1f0f735 by cernikt
made graphing for netcdf_var collector general. #1040
The file was modified utilities/read_sam_moments/netcdf_var_collector.py (diff)
Commit f4a832bf41d24a08e9b5be84713c057dfa98084e by bmg2
Adding wp3_on_wp2_cfl_num to CLUBB's output stats.
The file was modified src/CLUBB_core/stats_clubb_utilities.F90 (diff)
The file was modified src/CLUBB_core/stats_variables.F90 (diff)
The file was modified input/stats/all_stats.in (diff)
The file was modified input/stats/standard_stats.in (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/stats_zm_module.F90 (diff)
Commit 28e0fce01e7815ba9476ef6de24e556755f142d4 by bmg2
Added wp3_on_wp2_cfl_num to the VariableGroupNondimMoments.py file for
pyplotgen use.
The file was modified postprocessing/pyplotgen/config/VariableGroupNondimMoments.py (diff)
Commit f41e9c4d0b929e0bcbfb84ee6705ab3b979a6520 by noreply
Update VariableGroupNondimMoments.py

Fixed a typo
The file was modified postprocessing/pyplotgen/config/VariableGroupNondimMoments.py (diff)
Commit d3264a2623c048a97b2dd6d8bb43f14c0e496f0c by 37674341+huebleruwm
Fixing bug. This was only triggered when l_input_fields=.true., which I am only testing because it needs to be true so that I can test ADG2_driver.
The file was modified src/clubb_driver.F90 (diff)
Commit fa914b7afea4b486d22cdaa23fb1fa70c0578559 by 37674341+huebleruwm
Removing usage of gr from pdf_closure. It was only ever used for nz, which is now fed in directly.
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90 (diff)
The file was modified src/CLUBB_core/pdf_closure_module.F90 (diff)
Commit 981b9ba9bc9b5d80edc82f52f502ab9bcce097db by noreply
Clubb ticket #1025: Implemented way to make esa tuner reproducible, h… (#1068)

* Clubb ticket #1025: Implemented way to make esa tuner reproducible, hid error output of optional diagnostic variables behind check, fixed parallelization issue with tuner, esa max_iters parameter is now in stats namelist, fixed issue with TUNER compiler directive, some small fixes.
- New namelist variables prescribed_rand_seed and l_use_prescribed_rand_seed determine if the esa tuner will use a random or a fixed value as random seed. Added descriptions to README.
- Added max_iters to stats namelist to make it more modifiable.
- Renamed stp_adjst_intercept_in and stp_adjst_slope_in to stp_adjst_shift_in and stp_adjst_factor_in, respectively, to better reflect their influence on step size.
- The error output in src/CLUBB_core/pdf_closure_module.F90 for the diagnostic variables wprtp2, wpthlp2, wprtpthlp, and rcp2 is now hidden behind existence checks for these variables. And a clarification was added to "#ifdef TUNER" directive.
- NetCDF file access caused the tuner to crash in parallel mode (-fopenmp flag in config file and multiple cases). Adding an $OMP CRITICAL structure around the call to stats_init in clubb_driver.F90 fixed that.
- Fixed compile/README. Config files are specified with the -c option.
- The -t option in run_scripts/run_tuner.bash interfered with the previous usage of the TUNER compiler directive. Renamed the old TUNER directive to NR_SP, a short for "numerical recipes, single precision". TUNER now is the option to "turn on" code changes required to run the tuner.
The file was modified input_misc/tuner/error_bomex.in (diff)
The file was addedinput_misc/tuner/error_bomex_fire.in
The file was modified compile/compile.bash (diff)
The file was modified input_misc/tuner/error_rico.in (diff)
The file was modified input_misc/tuner/error_arm.in (diff)
The file was modified input_misc/tuner/error_all.in (diff)
The file was modified input_misc/tuner/error_dycoms2_rf02_ds.in (diff)
The file was modified input_misc/tuner/error_lba.in (diff)
The file was modified src/enhanced_simann.F90 (diff)
The file was modified input_misc/tuner/error_dycoms2_rf02_do.in (diff)
The file was modified input_misc/tuner/error_four_cases.in (diff)
The file was modified input_misc/tuner/error_wangara.in (diff)
The file was modified README (diff)
The file was modified input_misc/tuner/error_atex.in (diff)
The file was modified input_misc/tuner/error_gabls2.in (diff)
The file was modified input_misc/tuner/README (diff)
The file was modified input_misc/tuner/error_arm_97.in (diff)
The file was modified compile/README (diff)
The file was modified input_misc/tuner/error_nov11_altocu.in (diff)
The file was modified src/CLUBB_core/pdf_closure_module.F90 (diff)
The file was modified input_misc/tuner/error_gabls3_night.in (diff)
The file was modified src/G_unit_test_types/tuner_tests.F90 (diff)
The file was modified input_misc/tuner/error_dycoms2_rf01.in (diff)
The file was modified input_misc/tuner/error_ticket_756.in (diff)
The file was modified src/error.F90 (diff)
The file was modified input_misc/tuner/error_dycoms2_rf02_nd.in (diff)
The file was modified input_misc/tuner/error_fire.in (diff)
The file was modified src/clubb_tuner.F90 (diff)
The file was modified src/clubb_driver.F90 (diff)
Commit 965964e81cc6b58ffbf3213af1d2488080b3371a by cernikt
added autocommit message maker to clubb so I have an easier time testing it
The file was addedutilities/autocommit_message_maker/autocommit_message_maker.py
Commit 6e4204729c1b525b0f2fde3d7c715f5982fc79c3 by cernikt
changes to integrate message maker into gitUpdate scripts
The file was modified utilities/autocommit_message_maker/autocommit_message_maker.py (diff)
Commit be6ab481c56acfc66d65990889dba011d6bcd36a by cernikt
Oops, I made 1 small error, should be consistent now.
The file was modified utilities/autocommit_message_maker/autocommit_message_maker.py (diff)
Commit 9aeea149d5970cb99218344f8bde576e1f036d21 by bmg2
Implementing changes to the initial conditions.
This commit contains code changes related to the modified initial
conditions for convergence test simulations. These code changes can be
activated by setting l_modify_ic_with_cubic_int = .true. in
the namelist on a case-by-case basis.

Along with this option, the sounding profiles are also modified for
the BOMEX, RICO, DYCOMS2_RF02 and Wangara cases.

-- For BOMEX, RICO, Wangara cases, we add more height levels in the
    original sounding profiles so that the cubic spline interpolation
    produces consistent profiles with those with linear interpolation

-- For DYCOMS2_RF02, instead of using the formulations in the code to
    derive the initial condition profiles (which will results in the
    grid-spacing dependent initial condition when we refine grid), we
    construct a sounding profiles (still use the same formulas as in
    the src/sounding.F90) on a high-resolution grid (refine the standard
    grid by a factor of 2^7), then save the profile in
    dycoms2_rf02_sounding.in. In this way, the model initiliazation will
    always read the same sounding profile for initialization when user
    refine the vertical model grid.

Originally committed by Shixuan.
The file was modified input/case_setups/dycoms2_rf02_sounding.in (diff)
The file was modified input/case_setups/dycoms2_rf02_ds_model.in (diff)
The file was modified input/case_setups/rico_sounding.in (diff)
The file was modified input/case_setups/dycoms2_rf02_so_model.in (diff)
The file was modified input/case_setups/dycoms2_rf02_nd_model.in (diff)
The file was modified input/case_setups/wangara_model.in (diff)
The file was modified input/case_setups/bomex_sounding.in (diff)
The file was modified input/case_setups/dycoms2_rf02_do_model.in (diff)
The file was modified input/case_setups/dycoms2_rf02_morr_model.in (diff)
The file was modified input/case_setups/wangara_sounding.in (diff)
The file was modified src/sounding.F90 (diff)
The file was modified input/case_setups/rico_model.in (diff)
The file was modified src/clubb_driver.F90 (diff)
The file was modified input/case_setups/bomex_model.in (diff)
The file was modified input/case_setups/rico_silhs_model.in (diff)
Commit a6682998e27e3d01b8ffeb4ec2774872e7311aa4 by bmg2
This commit most definitely does not change any bits,
but commit 67878ef was BIT_CHANGING for the DYCOMS-II RF02 family
of cases, RICO (and RICO SILHS), BOMEX, and Wangara.
The file was modified README (diff)
Commit 0e087bee28254a2bc2da5869a28352e1374b2b91 by bmg2
Add scripts to configure and run convergence test
This commit contains new scripts created to configure and run
convergence test simulations. There are four scripts:

1. run_scripts/run_cnvg_test_multi_cases.csh. This script is used to
    compile and run convergence simulations with specific configurations
    (see details in scripts for explations). After the simulations,the
    space-time convergence plots will also be generated.

2.run_scripts/convergence_config.py: this script "called" by the
   first script to generate the namelist file for CLUBB-SCM simulations.
   With this script, the modified configuration will be applied in the
   case run directory, while the files in default clubb will not be
   touched

3.run_scripts/convergence_function.py: this script contains function
   to modify the initial condition profile for convergence test
   simulations. It is called by run_scripts/convergence_config.py
   when the model is configured to use modified initial conditions

4.run_scripts/plot_l2_convergence.py: this is a sample script to
   generate the space-time convergence plots

Originally committed by Shixuan
The file was addedrun_scripts/run_cnvg_test_multi_cases.csh
The file was addedrun_scripts/convergence_config.py
The file was addedrun_scripts/convergence_function.py
The file was addedrun_scripts/plot_l2_convergence.py
Commit 53c717bb7dd9bddcd720cba58c46d77b7ad36c9c by bmg2
reorgnize the scripts for convergence test simulations
Move the script associated with convergence test simulation
in the folder of run_scripts/convergence_run

Originally committed by Shixuan
The file was addedrun_scripts/convergence_run/convergence_config.py
The file was removedrun_scripts/run_cnvg_test_multi_cases.csh
The file was addedrun_scripts/convergence_run/convergence_function.py
The file was removedrun_scripts/plot_l2_convergence.py
The file was removedrun_scripts/convergence_config.py
The file was addedrun_scripts/convergence_run/plot_l2_convergence.py
The file was removedrun_scripts/convergence_function.py
The file was addedrun_scripts/convergence_run/run_cnvg_test_multi_cases.csh
Commit db8d5931d779bc1f776fb80952a1c263c22f8467 by noreply
Update README

I guess the proper way to do it is this -- BIT_CHANGING:9aeea14
The file was modified README (diff)
Commit a3bcb0bd343d004b2f085006708b88131be99507 by noreply
Gpu updates (#1070)

* Fixing bug. This was only triggered when l_input_fields=.true., which I am only testing because it needs to be true so that I can test ADG2_driver.

* Removing usage of gr from pdf_closure. It was only ever used for nz, which is now fed in directly.

* Making openacc statements more consistent. Ensuring all statments on double loops have specified gang and vector, and that all parallel loops have an end parallel loop statment at the end of them. Everything BFB on CPUs and GPUs.

* Pushing acc data region to outermost parts of mixing_length.

* Removing pdf_implicit_coefs_terms from acc copyin and copyout. It is only used when iiPDF_type == iiPDF_new .or. iiPDF_type == iiPDF_new_hybrid, so we do not need to do any copying with it. The inclusion of it also caused the data statement to copy unallocated arrays, which are just garbage pointers, and that was causing random occasional crashes (either segfaults or gpu out of memory).

* The update device clauses for return variables seems to only be requried for arrays contained in types. See https://github.com/larson-group/clubb/issues/1049\#issuecomment-1440624778

* Moving acc end data to end of pdf_closure. This reuqired removing any conditional return statements that appear before the final return, since we're not allowed to branch out of an acc region early. I also moved a large printout statement outside of a loop. The only reason it was in the loop to begin with was because pdf_params used to be an array of types, but now is a type of arrays, allowing us to print the full arrays directly.

* Making loop an acc loop. If we weren't outputting w_[up/down]_in_cloud (iw_up_in_cloud <= 0 .or. iw_down_in_cloud <= 0, then these arrays were only being zerod out on the CPU and would've getting overwritten by the uninitialized GPU data at the end of the data statement. This change causes the arrays to get correctly zerod out on the GPU when we need.

* Update VariableGroupNondimMoments.py

Fixed a typo

* Merging new changes from master

* Removing need for -gpu=deepcopy, pushing some acc data statements up call tree, and replacing some acc data statements with acc delare statements so that return statements can be added back in.

* Adding back an acc loop that was accidentally removed during a merge.

---------

Co-authored-by: Brian Griffin <31553422+bmg929@users.noreply.github.com>
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/pdf_closure_module.F90 (diff)
The file was modified src/CLUBB_core/turbulent_adv_pdf.F90 (diff)
The file was modified src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90 (diff)
The file was modified src/CLUBB_core/grid_class.F90 (diff)
The file was modified src/CLUBB_core/saturation.F90 (diff)
The file was modified src/CLUBB_core/mean_adv.F90 (diff)
The file was modified src/CLUBB_core/mixing_length.F90 (diff)
The file was modified src/CLUBB_core/pdf_utilities.F90 (diff)
Commit 8e473e08b858df61c5c5116e37e26f3df2431a0b by bmg2
Code changes to implement modified boundary condition
This commit contains code changes to implement modified boundary
conditions for convergence test simulations. These code changes
can be activated by setting l_modify_bc_for_cnvg_test = .true.
in the CLUBB namelist.

Originally committed by Shixuan.
The file was modified input/case_setups/dycoms2_rf02_nd_model.in (diff)
The file was modified input/case_setups/dycoms2_rf02_do_model.in (diff)
The file was modified input/case_setups/dycoms2_rf02_morr_model.in (diff)
The file was modified input/case_setups/dycoms2_rf02_so_model.in (diff)
The file was modified input/case_setups/bomex_model.in (diff)
The file was modified src/clubb_driver.F90 (diff)
The file was modified input/case_setups/rico_model.in (diff)
The file was modified input/case_setups/rico_silhs_model.in (diff)
The file was modified input/case_setups/wangara_model.in (diff)
The file was modified input/case_setups/dycoms2_rf02_ds_model.in (diff)
Commit c5c29600aa8cf9176127e44fbf6ddccf9474722a by noreply
Implements Thomas Toniazzo's bug fix for spike removal

in the monotonic flux limiter.  See

https://github.com/larson-group/clubb_release/pull/11/files

This code change is
expected to be BIT_CHANGING for cases in which
`l_predict_upwp_vpwp = T`, `l_mono_flux_lim_um = T`
or `l_mono_flux_lim_vm = T`, and the monotonic
flux limiter is triggered.

This bug fix prevents non-conservation of momentum
when the vertical integral of either of the wind components `um` or `vm` is negative.
The file was modified src/CLUBB_core/mono_flux_limiter.F90 (diff)
Commit 9512061ddd7b2a7d1009a787409055495fbd39c5 by noreply
Fixed an old notation change in the README
The file was modified README (diff)
Commit 5cb6f1b9b80536e8a57e8d5f64a73136c824b0a0 by noreply
Update README

Did this not work because I didn't include all 40 characters of the git hash?
BIT_CHANGING:9aeea149d5970cb99218344f8bde576e1f036d21
The file was modified README (diff)
Commit 903169aafe5cfd2f7cae35adef3d31e6f51641fe by noreply
Making 'a_const' into a CLUBB tunable parameter. (#1072)

* Converting the sfc_varnce_module.F90 parameter 'a_const' into a CLUBB tunable parameter.

Results should be bit-for-bit since it will be set to 1.8 and with l_vary_convect_depth=F
this is the standard value.

Some discussion in ticket #994.

* Completing requested changes, see PR #1072.
The file was modified input_misc/tuner/error_gabls3_night.in (diff)
The file was modified input_misc/tuner/error_wangara.in (diff)
The file was modified input/tunable_parameters_compatible_r8029/tunable_parameters.in (diff)
The file was modified src/error.F90 (diff)
The file was modified src/G_unit_test_types/pdf_parameter_tests.F90 (diff)
The file was modified input_misc/tuner/error_fire.in (diff)
The file was modified input_misc/tuner/error_four_cases.in (diff)
The file was modified input/tunable_parameters_Lscale/tunable_parameters.in (diff)
The file was modified input_misc/tuner/error_atex.in (diff)
The file was modified src/jacobian.F90 (diff)
The file was modified input_misc/tuner/error_bomex.in (diff)
The file was modified input_misc/tuner/error_gabls2.in (diff)
The file was modified src/clubb_thread_test.F90 (diff)
The file was modified input_misc/tuner/error_dycoms2_rf02_nd.in (diff)
The file was modified src/CLUBB_core/sfc_varnce_module.F90 (diff)
The file was modified input_misc/tuner/error_dycoms2_rf02_do.in (diff)
The file was modified input_misc/tuner/error_arm_97.in (diff)
The file was modified input_misc/tuner/error_all.in (diff)
The file was modified src/CLUBB_core/parameter_indices.F90 (diff)
The file was modified input_misc/tuner/error_arm.in (diff)
The file was modified input/tunable_parameters_e3sm/tunable_parameters.in (diff)
The file was modified src/G_unit_test_types/spurious_source_test.F90 (diff)
The file was modified input_misc/tuner/error_lba.in (diff)
The file was modified src/CLUBB_core/clubb_api_module.F90 (diff)
The file was modified input/tunable_parameters/tunable_parameters.in (diff)
The file was modified input_misc/tuner/error_rico.in (diff)
The file was modified src/CLUBB_core/parameters_tunable.F90 (diff)
The file was modified input_misc/tuner/error_dycoms2_rf02_ds.in (diff)
The file was modified src/clubb_standalone.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified input_misc/tuner/error_bomex_fire.in (diff)
The file was modified input_misc/tuner/error_ticket_756.in (diff)
The file was modified input_misc/tuner/error_dycoms2_rf01.in (diff)
The file was modified input_misc/tuner/error_nov11_altocu.in (diff)
Commit 14c03cc05cfddd0fc31d3845fc13111b3ac08d3a by noreply
Update README

I should've added the answer-changing tag to my previous commit:
BIT_CHANGING:903169a.

That commit doesn't really change answers, but adds a new tunable parameter which will show up in the output files and therefore they will differ from previous output files.
The file was modified README (diff)
Commit 2c597f4960cdb75b2bee46e56a511bd56fd722e2 by noreply
Update README

Oops didn't include all git hash characters:
BIT_CHANGING:903169aafe5cfd2f7cae35adef3d31e6f51641fe
The file was modified README (diff)
Commit 5cbf4f80a34cfafd2fd164415af5ec7d6239bcdd by noreply
Pdf closure driver gpuization (#1071)

* GPUizing pdf_closure_driver, testing still needed, bug likely.

* Making data movement better. Also fixed some random things. Still need to return returns.

* Adding back a couple return statments. Moving a comment where it should be. GPUizing a missed loop.

* Making arguements list satisfy standards.

* Making arguements list satisfy standards. Also adding max(1,hydrometdim) to hydromet inputs.

* Capitalizing K

* Making the error case in compute_cloud_cover behavior a bit differently. This allows the error to be detected immediately by GPU runs as well.

* Calling compute_cloud_cover only needs to be done if l_use_cloud_cover = .true.
The file was modified src/CLUBB_core/T_in_K_module.F90 (diff)
The file was modified src/CLUBB_core/sigma_sqd_w_module.F90 (diff)
The file was modified src/CLUBB_core/pdf_closure_module.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/Skx_module.F90 (diff)
Commit b6496cec72690bbaa9195b116d01555338953797 by noreply
Update README


RESOLVED:8e473e08b858df61c5c5116e37e26f3df2431a0b
Above committed on March 8th, 2023
BIT_CHANGING:5cbf4f80a34cfafd2fd164415af5ec7d6239bcdd
Above was committed on March 14th, 2023
The file was modified README (diff)
Commit fb4556e4cc4cb3d4b6df3520370a28a824f357ef by Gunther Huebler
Moving compute_cloud_cover outside of if ( l_use_cloud_cover ) then statement, the cloud_cover and rcm_in_layer variables they compute aren't output in clubb_standalone, but are in cam, causing cam bit diff tests to break.
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
Commit 0cf0157ebf0dfe165d07da57520f34cbf1173bb8 by Gunther Huebler
Undoing README update, 1 space = 1 byte and we should maximize file sizes to deter hackers from stealing our data. Also BIT_CHANGING:fb4556e4cc4cb3d4b6df3520370a28a824f357ef for configs where l_use_cloud_cover = .false., which means I was wrong about this ever not being bit changing, so I must've either only tested with l_use_cloud_cover = .true. or only tested the multicol diffs when I put compute_cloud_cover inside the if statement.
The file was modified README (diff)
Commit dffad1daafea675ddb568df7159dc83c952baab7 by Gunther Huebler
Adding Skthl_zm to the update host list, I missed this in the last PR. I noticed this by comparing results with and without managed memory, now I've checked BFBness with arm, mpace_b, mc3e, and gabls2.
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
Commit d6db663fb3c7cd893d3d68786c486254e8a28ebb by noreply
Small GPU fixes (#1076)

* Fixing small things that I caught by adding the default(present) onto acc loops.

* Moving default(present) to the end because it looks nicer there.
The file was modified src/CLUBB_core/T_in_K_module.F90 (diff)
The file was modified src/CLUBB_core/sigma_sqd_w_module.F90 (diff)
The file was modified src/CLUBB_core/mixing_length.F90 (diff)
The file was modified src/CLUBB_core/grid_class.F90 (diff)
The file was modified src/CLUBB_core/saturation.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/pdf_utilities.F90 (diff)
The file was modified src/CLUBB_core/parameters_model.F90 (diff)
The file was modified src/CLUBB_core/turbulent_adv_pdf.F90 (diff)
The file was modified src/CLUBB_core/mean_adv.F90 (diff)
The file was modified src/CLUBB_core/Skx_module.F90 (diff)
The file was modified src/CLUBB_core/pdf_closure_module.F90 (diff)
The file was modified src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90 (diff)
Commit 5cd77e018ec1ca2d920bd34b5500529068b95749 by noreply
Adds blank line to trigger nightly tests
The file was modified README (diff)
Commit 475d569931a16ce1187c26757a0913e53c62abe5 by bmg2
Code changes to implement modificiations on wp3 clippings
This commit contains code changes to implement modifications of skewness
clippings on wp3 in src/CLUBB_core/clip_explicit.F90. The default method attempts
to apply smaller (larger) clippings below (above) 100m AGL level, which
can cause a discontinuities around 100m AGL level. This clippings is
found to trigger sawthooth oscillations in wp3 when linear diffusion is
used. Such swathooth oscillations are eleminated if a smoothed Heaviside
function is introduced to obtain a smooth transition of clippings at
around 100m AGL level. The changes is necessary to obtain the first
order convergence in CLUBB-SCM when lienar diffusion is used.

Previously committed by Shixuan.
The file was modified src/CLUBB_core/clubb_api_module.F90 (diff)
The file was modified src/clubb_driver.F90 (diff)
The file was modified src/clubb_tuner.F90 (diff)
The file was modified input/tunable_parameters/configurable_model_flags.in (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/clip_explicit.F90 (diff)
The file was modified src/CLUBB_core/model_flags.F90 (diff)
The file was modified src/G_unit_test_types/pdf_parameter_tests.F90 (diff)
The file was modified src/CLUBB_core/advance_wp2_wp3_module.F90 (diff)
The file was modified src/G_unit_test_types/spurious_source_test.F90 (diff)
Commit 4b16d833e86ad23ef6ea81de67c38c596ebccd25 by bmg2
This commit contains code changes to implement modifications on limiters in three places:

1. remove the limiters in denominator of equation for
   brunt_vaisala_freq_sqd_smth, which affects the computed
   eddy dissipation time scale in turbulent fluxes (wpxp).
   (in mixing_length.F90)

2. reduce the threshold values of limiters in the equation
   for richardson number (sqrt_Ri_zm)
   (in mixing_length.F90)

3. introduce the smoothed max/min function for limiters in
   equation of Cx_fnc_Richardson.
   (in advance_helper_module.F90).

After the modification, we also apply a zt2m(zm2zt) smoothing
on the calculated quantities. These modifications are found to
be benificial for improving solution convergence in CLUBB-SCM

The code changes are controlled by a newly introduced flag named
"l_modify_limiters_for_cnvg_test", which is set to .false. (meaning that
the modificaitons on limiters is turned off) by default.

Originally committed by Shixuan.
The file was modified src/clubb_tuner.F90 (diff)
The file was modified src/CLUBB_core/advance_helper_module.F90 (diff)
The file was modified src/G_unit_test_types/pdf_parameter_tests.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/mixing_length.F90 (diff)
The file was modified src/G_unit_test_types/spurious_source_test.F90 (diff)
The file was modified src/CLUBB_core/clubb_api_module.F90 (diff)
The file was modified src/CLUBB_core/model_flags.F90 (diff)
The file was modified input/tunable_parameters/configurable_model_flags.in (diff)
The file was modified src/clubb_driver.F90 (diff)
Commit 56b351a7c3870976816a85ac7cc292d57f3daa81 by cernikt
changing tunable_parameters
The file was modified input/tunable_parameters/tunable_parameters.in (diff)
Commit ec5eb04a57d416323f4f67bcacb242246816d5fd by cernikt
changing tunable_parameters
The file was modified input/tunable_parameters/tunable_parameters.in (diff)
Commit 3d6022f3fa683a1dcd6d42a6e281b6e25ac9d7f4 by cernikt
changing tunable_parameters
The file was modified input/tunable_parameters/tunable_parameters.in (diff)
Commit 49ec5990089b7f9728eb6707a2b653bbeca94c81 by noreply
Advance xm wpxp gpuization (#1077)

* Initial commit for GPUizing advance_xm_wpxp.

* GPUizing fill_holes_vertical

* Adding Skthl_zm to the update host list, I missed this in the last PR. I noticed this by comparing results with and without managed memory, now I've checked BFBness with arm, mpace_b, mc3e, and gabls2.

* Small GPU fixes (#1076)

* Fixing small things that I caught by adding the default(present) onto acc loops.

* Moving default(present) to the end because it looks nicer there.

* Adding default(present) to all acc loop statements. Also adding azt to a copyin statement, which was missed previously. All BFB.

* Incemental update, not well tested yet.

* Removing some copies and making the sclr_dim change.

* Fixing a bug that only seemed detectable with astex_a209. We need to pass only single arrays to functions, calling ddzt( nz, ngrdcol, gr, rho_ds_zt * K_zt_nu ) was resulting in rho_ds_zt * K_zt_nu being evluated on the CPU, but the values were only valid on the GPU. So we need to evaluate that expression on the GPU, save it into an array (currently K_zt_nu_tmp), then pass that to ddzt.

* GPUizing calc_turb_adv_range

* GPUizing mono_flux_limiter

* Cleaning up data statments and a couple other things.

* Updated for some different options.

* More updates needed for various options.

* Reverting accidental flag change

* Should be the final changes, all options tested now.

* Replacing some comments in monoflux limiter, and also modifying it to make it BFB on CPUs. Also changing incorrect error conditions on tridiag.

* Adding max_x_allowable to update host statement, missed previous.

* Properly naming tmp variables and variables calculated from ddzt and ddzm start with ddzt_ and ddzm_.

* Replacing constants with named ones from constants_clubb.

* Replacing hard coded numbers in lhs variables representing the number of bands they contain with fortran parameters.
The file was modified src/CLUBB_core/mean_adv.F90 (diff)
The file was modified src/CLUBB_core/mono_flux_limiter.F90 (diff)
The file was modified src/CLUBB_core/clip_explicit.F90 (diff)
The file was modified src/CLUBB_core/diffusion.F90 (diff)
The file was modified src/CLUBB_core/grid_class.F90 (diff)
The file was modified src/CLUBB_core/matrix_solver_wrapper.F90 (diff)
The file was modified src/CLUBB_core/advance_helper_module.F90 (diff)
The file was modified src/CLUBB_core/turbulent_adv_pdf.F90 (diff)
The file was modified src/CLUBB_core/fill_holes.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/advance_xm_wpxp_module.F90 (diff)
The file was modified src/CLUBB_core/parameters_model.F90 (diff)
Commit f20b355f2ce4e686d8f3392ad148341f08fd6acc by Gunther Huebler
Small improvements to diff_netcdf_outputs.py, removing reliance on ncdiff, now it is entirely in python. Cleaning up linux_x86_64_nvhpc_gpu.bash, removing outdated parts, improving default parallel compilation, changing pgfortran to nvfortran.
The file was modified compile/config/linux_x86_64_nvhpc_gpu.bash (diff)
The file was modified run_scripts/diff_netcdf_outputs.py (diff)
Commit c0fb204097dab9c58399ebd3526835db482899cc by Gunther Huebler
Small tweaks to fix some GPU bugs. Some variables were uninitialized on the CPU while we were saving them. This could only have been caught by comparing consecutive runs and checking _zt and _zm files, even then few cases were having problems.
The file was modified src/CLUBB_core/advance_xm_wpxp_module.F90 (diff)
Commit 34329990202f44999b237263136111b0086963c4 by Gunther Huebler
Fixing a labelling error in redirect_interpolated_azt_2D and similar procedures, since this interpolates to zt the input should be zm. I think this was my fault, so I cleaned all the zt2zm and zm2zt things up to make it a little nicer. Also ordered the routines _k _1D _2D to make it easier to jump around, it was a bit confusing as they were out of order and the typo really made it hard.
The file was modified src/CLUBB_core/grid_class.F90 (diff)
Commit 6d1ddfc80e3c21483a2a90d03c0f5581c0dd7dff by cernikt
bug fixes for the autocommit message maker code
The file was modified utilities/autocommit_message_maker/autocommit_message_maker.py (diff)
Commit 0eca2146266b52e407a4feac444e1be8923fa3c4 by Gunther Huebler
Making it so sclr_tol is set to 0 before the specified sclr_tol_in. This is so that it is initialized to 0 in the case that sclr_dim = 0, since now we are setting it to have a minimum allocation size of 1 and would otherwise have a garbage value. This is what broke the clubb_openmp_gfortran_test.
The file was modified src/CLUBB_core/parameters_model.F90 (diff)
Commit 4f762ff2971a094b45b591719bc9e28d3de9d06b by bmg2
update the scripts for convergence test

Originally committed by Shixuan.
The file was removedrun_scripts/convergence_run/run_cnvg_test_multi_cases.csh
The file was modified run_scripts/convergence_run/convergence_config.py (diff)
The file was addedrun_scripts/convergence_run/run_cnvg_test_multi_cases_default.csh
The file was addedrun_scripts/convergence_run/run_cnvg_test_multi_cases_baseline.csh
The file was addedrun_scripts/convergence_run/run_cnvg_test_multi_cases_revall.csh
Commit a883cf53b5eff3476a2c5e65dcd5a4093417ff18 by noreply
Lscale GPUization (#1079)

* Making 2 new functions zm2zt2zm and zt2zm2zt to handle smoothing by interpolation. Replaced the spots in clubb I know that uses this to smooth things. This is just a nice to have and could allow for easy optimizations in the future by inlining the interpolations. All cases BFB on CPU and GPU, checked all relevant options too.

* GPUizing diagnose_Lscale_from_tau

* Removing some unused variables.

* Moving acc data statements from calc_Lscale_directly up to advance_clubb_core.

* Removing an unused variable.

* GPUizing the l_smooth_min_max option.

* GPUizing l_avg_Lscale

* Changes to variable names to avoid gross long names only used once.
The file was modified src/CLUBB_core/advance_helper_module.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/mixing_length.F90 (diff)
The file was modified src/G_unit_test_types/smooth_heaviside_tests.F90 (diff)
The file was modified src/CLUBB_core/grid_class.F90 (diff)
The file was modified src/CLUBB_core/clip_explicit.F90 (diff)
Commit e7911cd16198153e0a3ca084bd813c0dfad1b4eb by Gunther Huebler
gfortran does not like intent(out) specifiers for functions.
The file was modified src/CLUBB_core/grid_class.F90 (diff)
Commit 7eb659d596d4c75f2da95a56428657ed23fb41e5 by bmg2
Added a new file to compile CLUBB on Anvil.
The file was addedcompile/config/linux_x86_64_ifort_anvil.bash
Commit 4205f9567c8864f9caa6d8d20286543b490db428 by noreply
GPUizing Various Small Routines (#1080)

* GPUizing compute_Cx_fnc_Richardson

* GPUizing term_wp2_splat and term_wp3_splat

* GPUizing xp3_LG_2005_ansatz

* GPUizing calculate_thvm

* GPUizing pvertinterp even though I don't think we care about the l_do_expldiff_rtm_thlm flag

* Fixing bug. Setting l_do_expldiff_rtm_thlm causes us to use edsclrm, so we need to also ensure that edsclrm > 1 (1 because it uses a edsclr_dim-1 index)

* Pushing some data statements up the call tree.
The file was modified src/CLUBB_core/calc_pressure.F90 (diff)
The file was modified src/CLUBB_core/Skx_module.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/interpolation.F90 (diff)
The file was modified src/CLUBB_core/sigma_sqd_w_module.F90 (diff)
The file was modified src/CLUBB_core/advance_helper_module.F90 (diff)
Commit e66210ad86254314f1855beee0fa43f947ce4754 by cernikt
This commit is a commit that changes absolutely nothing. It is meant to trigger a change in the git update scripts, so that I can start the commit message logging in the autocommit updates larson-group/sys_admin#797
The file was modified src/SILHS/math_utilities.F90 (diff)
The file was modified src/CLUBB_core/grid_class.F90 (diff)
Commit 5af7321c1c5daa335bb93a2c3cd50076fbdce418 by cernikt
Fixing an error with the autocommit_update script that was causing it new works
The file was modified utilities/autocommit_message_maker/autocommit_message_maker.py (diff)
Commit b89e73662a3a008cfd8a9790afb7fbeb777dc871 by cernikt
this is another commit that cahnges nothing that will trigger the gitUpdate scripts
The file was modified src/CLUBB_core/interpolation.F90 (diff)
Commit 898a66bd5d85618c9ec386798ea64722285b6925 by bmg2
Updates to make the convergence tests run on Anvil.
The file was modified compile/config/linux_x86_64_ifort_anvil.bash (diff)
The file was modified run_scripts/convergence_run/run_cnvg_test_multi_cases_default.csh (diff)
The file was modified run_scripts/convergence_run/run_cnvg_test_multi_cases_baseline.csh (diff)
The file was modified run_scripts/convergence_run/run_cnvg_test_multi_cases_revall.csh (diff)
Commit 6242bef56ec8f83eb6296133f8a7e6b637997629 by cernikt
adding an update that changes nothing and is just a test for the autoupdate script
The file was modified src/CLUBB_core/clip_explicit.F90 (diff)
Commit f0d1d1cb3d182f220a2bc78e2ea389ca8a9a3c71 by noreply
Making CLUBB's splatting scheme implicit and smoother (#1075)

* Introducing rough implicit splatting scheme into CLUBB.  Not yet implicit for wp3.

* Implementing implicit splatting for wp3.

* Further improvements to implicit splatting code, including

- smoothing of the BV freq used for splatting
- adding a new variable 'bv_freq_sqd_splat' to stats
- add the new variable to pyplotgen standard output

See PR #1075 and issue #994.

* Some cleanup.

* More cleanup, and adding comments.

* More comments.

* Updating implicit splatting scheme.

* Updates to resolve PR requests.

Updates associated with implicit splatting will be BIT_CHANGING.
The file was modified src/CLUBB_core/sfc_varnce_module.F90 (diff)
The file was modified src/CLUBB_core/stats_variables.F90 (diff)
The file was modified postprocessing/pyplotgen/config/VariableGroupBase.py (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified input/stats/all_stats.in (diff)
The file was modified src/CLUBB_core/advance_helper_module.F90 (diff)
The file was modified src/CLUBB_core/advance_wp2_wp3_module.F90 (diff)
The file was modified input/stats/standard_stats.in (diff)
The file was modified src/CLUBB_core/advance_xp2_xpyp_module.F90 (diff)
The file was modified src/CLUBB_core/stats_zm_module.F90 (diff)
Commit 9c47857c79559576598918989ef1ce82a72918a1 by noreply
Calc sfc varnce GPUization (#1081)

* Initial loop push for calc_sfc_varnce

* BIT_CHANGING:3b086a40085284aa49c71d32c001d20153a8ddb4 the last commit is bit changing for only some cases and only when using higher than -02 optimization. uf min seems to be the first calculation that starting to differ bitwise. Using the check_multicol script confirms the differences are small.

* Adding a tweak to surface values in the extra columns. This helped me check calc_sfc_varance, since we were not changing any arrays that would've affected calculations there.

* Small optimization, making wstar and ustar2 scalars.

* GPUizing calc_sfc_varnce

* Removing conditional around some stats calls. Now we will always save sfc values to stats, because this will change stats files when gr%zm(i,1) > sfc_elevation, this is potentially BIT_CHANGING.

* Merging with latest clubb changes and making work on GPUs again.

This contained 2 commits that are BIT_CHANGING in some situations.
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/sfc_varnce_module.F90 (diff)
The file was modified src/clubb_driver.F90 (diff)
The file was modified src/CLUBB_core/advance_helper_module.F90 (diff)
Commit 03f58050e0c59a10d9cca54f01876f1e737a9e24 by benjamin.andrew.stephens
Reducing C_wp2_splat to 0.25 (from 2.0) for new implicit splatting code.

Also fixing bug that shows up when l_brunt_vaisala_freq_moist = T.  This
will hopefully help to get some failing CAM tests running again.

See #1074 and PR #1075 for info.

This is BIT_CHANGING for all cases due to the new tunable parameter value.
The file was modified input/tunable_parameters/tunable_parameters.in (diff)
The file was modified src/CLUBB_core/advance_helper_module.F90 (diff)
Commit af6f9d87b088e3e7e5cfa328d4cf93f6fd38c1b4 by cernikt
Removed Space From clip_explicit

This is another commit that changes absolutely nothing, and only exists to test autocommit changes
The file was modified src/CLUBB_core/clip_explicit.F90 (diff)
Commit cdffbc10d9c3292cc224232bce2432a63e7eccfd by cernikt
updated autocommit_message_maker to check another error for debugging

I have been having alot of trouble recreating the output that is occuring in the host repos in my test, so I want to add it here to see if it works
The file was modified utilities/autocommit_message_maker/autocommit_message_maker.py (diff)
Commit 569bd7350c3058e77539bc5e68ba7437abfea2f9 by cernikt
Fixed the autocommit message maker code, should noot error anymore
The file was modified utilities/autocommit_message_maker/autocommit_message_maker.py (diff)
Commit 8d363835501ec82b96b7d6ed8c3cb162d70ac787 by bmg2
I am beginning a section on running the convergence tests in the README.
The file was modified README (diff)
Commit 4218a86cb398df01513f3b7b88731af9fdc0e53a by noreply
Update run_cnvg_test_multi_cases_revall.csh

Remove the 6th refinement, which is too close in grid spacing to the 7th and reference refinement.
The file was modified run_scripts/convergence_run/run_cnvg_test_multi_cases_revall.csh (diff)
Commit 6eff64f255aafd546ceb594733ea1817a0274149 by noreply
Update run_cnvg_test_multi_cases_default.csh

Remove the 6th refinement, which is too close in grid spacing to the 7th and reference refinement.
The file was modified run_scripts/convergence_run/run_cnvg_test_multi_cases_default.csh (diff)
Commit 949fb9dcd752ed0edd1c2e5720e34c49929c0375 by noreply
Update run_cnvg_test_multi_cases_baseline.csh

Remove the 6th refinement, which is too close in grid spacing to the 7th and reference refinement.
The file was modified run_scripts/convergence_run/run_cnvg_test_multi_cases_baseline.csh (diff)
Commit 1efa8cddfb173eec752a7b80926afebcc353ab84 by noreply
Update README

Updated the description of the convergence tests.
The file was modified README (diff)
Commit 7304a4ed399e8db8c3778ffb783b937564b85e6c by cernikt
making changes to trigger autoudpate for test, these commits do nothing

here is a body to the commit as well
The file was modified src/CLUBB_core/calendar.F90 (diff)
The file was modified src/SILHS/math_utilities.F90 (diff)
Commit c072656f70eec308312cd411b9098d16a0b69932 by cernikt
Here is another commit that changes nothing

Here is the body
The file was modified src/SILHS/math_utilities.F90 (diff)
The file was modified src/CLUBB_core/calendar.F90 (diff)
Commit 1c51108c54959fc2146c926a947fb77e2f3229b5 by cernikt
change to trigger updates

this is the last batch
The file was modified src/CLUBB_core/endian.F90 (diff)
Commit 6d00bf5998d8853274782192b3a97d00e045e80a by cernikt
change to calc pressure to trigger autoupdate

body
The file was modified src/CLUBB_core/calc_pressure.F90 (diff)
Commit 8ee870e356243f3861202305bebc6c15fe57e3eb by bmg2
Editing convergence scripts to show that the directory should be placed in
scratch space, where there is plentiful room to run, given the size of the output files.
The file was modified run_scripts/convergence_run/run_cnvg_test_multi_cases_baseline.csh (diff)
The file was modified run_scripts/convergence_run/run_cnvg_test_multi_cases_revall.csh (diff)
The file was modified run_scripts/convergence_run/run_cnvg_test_multi_cases_default.csh (diff)
Commit 5159c745e8a12eae1616043596dac0a9587abcd1 by bmg2
Committing scripts for use in running CLUBB convergence tests in the background.
The file was addedrun_scripts/convergence_run/run_clubb_default
The file was addedrun_scripts/convergence_run/run_clubb_revall
The file was addedrun_scripts/convergence_run/run_clubb_baseline
Commit ea3a68fd04dd0e23b837dd0f013e8801fdf39eef by bmg2
Updated the background run scripts for the convergence tests with a comment
about how to use the script.
The file was modified run_scripts/convergence_run/run_clubb_revall (diff)
The file was modified run_scripts/convergence_run/run_clubb_baseline (diff)
The file was modified run_scripts/convergence_run/run_clubb_default (diff)
Commit 6b3214004c3ec2e3c2554b0a9b409c8adaa4a590 by bmg2
I updated the README to finish the section on the convergence tests.
The file was modified README (diff)
Commit 594b74ff2dd50e8f051f1ceced8af963a83fc356 by bmg2
Edited the README section on CLUBB convergence tests.
The file was modified README (diff)
Commit df63abfa50aa910d527bded7304761051f71fa1b by bmg2
I added dycoms2_rf01 to the list of cases that could be run.
The file was modified run_scripts/convergence_run/convergence_config.py (diff)
Commit 2b12091dc37d2ebcca09fa10f1d2b3ccca067d35 by bmg2
I updated the run_cnvg_test_multi_cases_revall.csh script to include
dycoms2_rf01 in the list of cases that are run.
The file was modified run_scripts/convergence_run/run_cnvg_test_multi_cases_revall.csh (diff)
Commit ecc4f9d209b09d254fe889b25dff1e18e5dca530 by bmg2
Modified run_cnvg_test_multi_cases_default.csh and
run_cnvg_test_multi_cases_baseline.csh for the inclusion of
dycoms2_rf01.
The file was modified run_scripts/convergence_run/run_cnvg_test_multi_cases_baseline.csh (diff)
The file was modified run_scripts/convergence_run/run_cnvg_test_multi_cases_default.csh (diff)
Commit b75bf29871855c7e2bb56532f1fb82354a55729e by cernikt
Added comments to the script to explain ambiguous portions of my code
The file was modified utilities/autocommit_message_maker/autocommit_message_maker.py (diff)
Commit 982203d015ec33283d4d9b8b9ae03ef9fd19f1dc by noreply
GPUizing Lscale_width_vert_avg. Loops have been restructured for simplicity, and algorithm has a different starting value to avoid k dependency. Results are BFB. (#1083)

The file was modified src/CLUBB_core/advance_helper_module.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
Commit d1bd3cd11584759a8b90ae34dc7c26790e7e26e8 by noreply
GPUizing most of advance_clubb_core (#1084)

The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
Commit b6da36ca0e381e4547efc594f7f997507ebb9a34 by noreply
advance_wp2_wp3 with explicitly managed memory  (#1085)

* GPUizing most of advance_clubb_core

* GPUizing most of advance_wp2_wp3 based off Supreeths openacc branch

* Cleanup and small fixes.

* Converting data statement to declare statement to return the return.

* Small changes to prevent data copies
The file was modified src/CLUBB_core/advance_wp2_wp3_module.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/clip_explicit.F90 (diff)
Commit 2723c75bbfb000b67f641c3e9aa98f3d28517dce by noreply
advance_xp2_xpyp with explicitly managed memory (#1086)

* GPUizing most of advance_clubb_core

* GPUizing most of advance_wp2_wp3 based off Supreeths openacc branch

* Cleanup and small fixes.

* Converting data statement to declare statement to return the return.

* Small changes to prevent data copies

* Initial advance_xp2_xpyp GPUization, adapted from Supreeth's branch, clubb_openacc, to work without managed memory.

* Small cleanup

* Tweaks to reduce data copies

* Small change

* More GPUization and some cleanup

* Final little fixes

* Removing magic logicals
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/advance_xp2_xpyp_module.F90 (diff)
Commit 78bdcca4a7002e9c2ceddb62e7fc24c82884a3c7 by noreply
advance_windm_edsclrm with explicitly managed memory (#1087)

* Initial commit for advance_windm_edsclrm adapted from Supreeth's branch

* Final fixes

* Accidentally undid fix

* Returning returns
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/advance_helper_module.F90 (diff)
The file was modified src/CLUBB_core/advance_windm_edsclrm_module.F90 (diff)
Commit d778246e6f0ab92f0f23a100b1c693bc12345db4 by noreply
Moving data statements to outter most parts of clubb and little fix in advance_wp2_wp3 (#1088)

The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/advance_wp2_wp3_module.F90 (diff)
Commit 711714c6821efc75febabf0434b52a814b32a40b by noreply
Data movement improvement (#1089)

* Various reductions in data movement

* Bug fix

* Optimizations to fill_holes, this involves precalculating a multiplication an a division, so this is BIT_CHANGING.

* Missed a small part

* Small fix
The file was modified src/CLUBB_core/advance_wp2_wp3_module.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/advance_xp2_xpyp_module.F90 (diff)
The file was modified src/CLUBB_core/mono_flux_limiter.F90 (diff)
The file was modified src/CLUBB_core/fill_holes.F90 (diff)
The file was modified src/CLUBB_core/pdf_closure_module.F90 (diff)
The file was modified src/CLUBB_core/clip_explicit.F90 (diff)
The file was modified src/CLUBB_core/advance_helper_module.F90 (diff)
Commit a323ae3e38c8d4f569b839cf64f11614183dd9f1 by noreply
CLUBB ticket #1069: (#1092)

- Added tunable parameter bv_efold
- Removed extraneous use statement in src/CLUBB_core/advance_xm_wpxp_module.F90
- Removed obsolete flag l_update_pressure from input/tunable_parameters_Lscale/configurable_model_flags.in
- Changed tmp_calc_min -> tmp_calc in src/CLUBB_core/advance_helper_module.F90
The file was modified input_misc/tuner/error_dycoms2_rf01.in (diff)
The file was modified input_misc/tuner/error_dycoms2_rf02_ds.in (diff)
The file was modified src/CLUBB_core/advance_xm_wpxp_module.F90 (diff)
The file was modified input_misc/tuner/error_dycoms2_rf02_nd.in (diff)
The file was modified input_misc/tuner/error_rico.in (diff)
The file was modified src/CLUBB_core/mixing_length.F90 (diff)
The file was modified src/error.F90 (diff)
The file was modified src/G_unit_test_types/spurious_source_test.F90 (diff)
The file was modified src/jacobian.F90 (diff)
The file was modified input/tunable_parameters_Lscale/configurable_model_flags.in (diff)
The file was modified src/G_unit_test_types/pdf_parameter_tests.F90 (diff)
The file was modified src/CLUBB_core/advance_helper_module.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/parameters_tunable.F90 (diff)
The file was modified input_misc/tuner/error_wangara.in (diff)
The file was modified src/clubb_thread_test.F90 (diff)
The file was modified input_misc/tuner/error_gabls3_night.in (diff)
The file was modified src/CLUBB_core/parameter_indices.F90 (diff)
The file was modified input_misc/tuner/error_fire.in (diff)
The file was modified input_misc/tuner/error_ticket_756.in (diff)
The file was modified input_misc/tuner/error_bomex.in (diff)
The file was modified input/tunable_parameters/tunable_parameters.in (diff)
The file was modified input_misc/tuner/error_four_cases.in (diff)
The file was modified input_misc/tuner/error_dycoms2_rf02_do.in (diff)
The file was modified input_misc/tuner/error_arm_97.in (diff)
The file was modified input_misc/tuner/error_atex.in (diff)
The file was modified input_misc/tuner/error_lba.in (diff)
The file was modified src/CLUBB_core/clubb_api_module.F90 (diff)
The file was modified input_misc/tuner/error_nov11_altocu.in (diff)
The file was modified input_misc/tuner/error_all.in (diff)
The file was modified input_misc/tuner/error_gabls2.in (diff)
The file was modified input_misc/tuner/error_arm.in (diff)
The file was modified src/clubb_standalone.F90 (diff)
Commit 0e9723d96823a0347ff6ba8d431d95502bb3046c by benjamin.andrew.stephens
Changing "Fnc" to "fnc" for consistency and easy search.
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
Commit 0b0ab3d530bef06eb90bf6dde21b26eb25780214 by noreply
Memory usage optimizations (#1091)

* Fixing merge conflict

* Fixing a bug.

* Restoring correct default flag value

* Undoing changes that push stats variables into pdf_closure. That change may be included in a small future refactoring.

* Making same sclr_dim changes to hydromet_dim
The file was modified src/CLUBB_core/clip_explicit.F90 (diff)
The file was modified src/CLUBB_core/advance_xm_wpxp_module.F90 (diff)
The file was modified src/CLUBB_core/pdf_closure_module.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/advance_xp2_xpyp_module.F90 (diff)
The file was modified src/CLUBB_core/mixing_length.F90 (diff)
The file was modified src/CLUBB_core/advance_windm_edsclrm_module.F90 (diff)
Commit 2e3ed83325fd8b1f95a68dfe1568f872f11c7088 by Gunther Huebler
Modifying README. Last commit was BIT_CHANGING:0b0ab3d530bef06eb90bf6dde21b26eb25780214 see https://github.com/larson-group/clubb/pull/1091 for details.
The file was modified README (diff)
Commit f9b2927131803620d9af3ac671006bbb2de6b83e by noreply
Openacc tweaks and cleanup (#1097)

* Chaning acc declare statements to acc enter data statement

* Making acc statements more consistent

* Making lapack useable while using openacc. Lapack is still run on the CPU

* Updating setup_clubb_core to now accept clubb_config_flags as an input, and adding warning in case clubb is running with lapack but was compiled with openacc.
The file was modified src/CLUBB_core/mean_adv.F90 (diff)
The file was modified src/CLUBB_core/turbulent_adv_pdf.F90 (diff)
The file was modified src/CLUBB_core/advance_xp2_xpyp_module.F90 (diff)
The file was modified src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90 (diff)
The file was modified src/CLUBB_core/fill_holes.F90 (diff)
The file was modified src/CLUBB_core/clubb_api_module.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/sigma_sqd_w_module.F90 (diff)
The file was modified src/CLUBB_core/sfc_varnce_module.F90 (diff)
The file was modified src/CLUBB_core/matrix_solver_wrapper.F90 (diff)
The file was modified src/CLUBB_core/grid_class.F90 (diff)
The file was modified src/CLUBB_core/advance_wp2_wp3_module.F90 (diff)
The file was modified src/CLUBB_core/mixing_length.F90 (diff)
The file was modified src/CLUBB_core/advance_windm_edsclrm_module.F90 (diff)
The file was modified src/CLUBB_core/interpolation.F90 (diff)
The file was modified src/CLUBB_core/clip_explicit.F90 (diff)
The file was modified src/clubb_driver.F90 (diff)
The file was modified src/CLUBB_core/diffusion.F90 (diff)
The file was modified src/CLUBB_core/advance_xm_wpxp_module.F90 (diff)
The file was modified src/CLUBB_core/mono_flux_limiter.F90 (diff)
The file was modified src/CLUBB_core/advance_helper_module.F90 (diff)
Commit 398b8a728ce9f39a6ebc4be4e3cabba7c4bccc36 by Gunther Huebler
Improving run_bin_diff.py to accept an argument to print the differences, and an argument to define a threshold to ignore differences.
The file was modified run_scripts/run_bindiff_all.py (diff)
Commit 0b9f422518f7159d7c2d040cc3b2b818a71e9143 by noreply
Update requirements.txt

updated Pillow version to resolve related dependabot alerts
The file was modified postprocessing/pyplotgen/requirements.txt (diff)
Commit 4c8e71aad6664c648a84ba517dada0994b796fe5 by cernikt
Update requirements.txt

Also updating numpy version to 1.25.1
The file was modified postprocessing/pyplotgen/requirements.txt (diff)
Commit 13de9b8e3a8d758a44b8408fb64cc2ac5ffd2c23 by noreply
Loop to `nz-1` instead of `nz` because upper boundary condition

is set in the lines immediately below.
The file was modified src/CLUBB_core/mean_adv.F90 (diff)
Commit 29ad556fe9b55c4071e4fc4b6145b79d471f7a1a by noreply
Added code to subroutine run_clubb in src/clubb_driver.F90 which prints git log and git diff information to the <case>_setup.txt output file. (#1101)

CLUBB ticket #1098
The file was modified src/clubb_driver.F90 (diff)
Commit 1f4d0453a4d5c225be028a20ba8cfe44f3238336 by noreply
Openacc tweaks and cleanup 2 (#1099)

* Making all end parallel directives specify end loop

* Replacing last acc declare in a procedure with acc enter/exit data commands

* Removing pure declarations, turns out they dont really improve performance and openmp isn't allowed within them.

* Adding explicit directives to penta_lu and tridiag_lu, as opposed to the previously used kernels directive. Also splitting up a loop to improve GPU performance.

* Splitting up a couple loops for performance reasons.

* Missed one somehow
The file was modified src/CLUBB_core/diffusion.F90 (diff)
The file was modified src/CLUBB_core/advance_xp3_module.F90 (diff)
The file was modified src/CLUBB_core/clubb_api_module.F90 (diff)
The file was modified src/CLUBB_core/penta_lu_solver.F90 (diff)
The file was modified src/CLUBB_core/advance_windm_edsclrm_module.F90 (diff)
The file was modified src/CLUBB_core/advance_helper_module.F90 (diff)
The file was modified src/CLUBB_core/advance_xm_wpxp_module.F90 (diff)
The file was modified src/CLUBB_core/grid_class.F90 (diff)
The file was modified src/CLUBB_core/fill_holes.F90 (diff)
The file was modified src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90 (diff)
The file was modified src/CLUBB_core/advance_xp2_xpyp_module.F90 (diff)
The file was modified src/CLUBB_core/turbulent_adv_pdf.F90 (diff)
The file was modified src/CLUBB_core/clip_explicit.F90 (diff)
The file was modified src/CLUBB_core/numerical_check.F90 (diff)
The file was modified src/CLUBB_core/mean_adv.F90 (diff)
The file was modified src/CLUBB_core/clip_semi_implicit.F90 (diff)
The file was modified src/CLUBB_core/corr_varnce_module.F90 (diff)
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified src/CLUBB_core/tridiag_lu_solver.F90 (diff)
The file was modified src/CLUBB_core/calc_roots.F90 (diff)
The file was modified src/CLUBB_core/advance_wp2_wp3_module.F90 (diff)
The file was modified src/CLUBB_core/mono_flux_limiter.F90 (diff)
Commit 1ab8885573872beb8b590e955b48c1f5dc6b9bca by Vince Larson
Adds to RegTune a plot of a color-coded normalized sensitivity matrix
The file was modified utilities/sens_matrix/analyze_sensitivity_matrix.py (diff)
The file was modified utilities/sens_matrix/set_up_dashboard_inputs.py (diff)
The file was modified utilities/sens_matrix/sens_matrix_dashboard.py (diff)
Commit e1a725970256fc9b1c7c2e5f16675bb7d681da8e by noreply
Adds hint about installing dash for RegTune
The file was modified utilities/sens_matrix/README.md (diff)
Commit 722630f37286ca8f7fad84ef600af6d0607daf0a by Vince Larson
Updates input files for RegTune.

For #910.
The file was modified utilities/sens_matrix/set_up_dashboard_inputs.py (diff)
The file was modified utilities/sens_matrix/sens_matrix_dashboard.py (diff)
Commit e42078081e3931d7de83f7a5d0f5dabc96cb9397 by noreply
Bit changing changes (#1104)

* Moving functions called inside loops to their own 2D subroutines. This is for performance, but is also BIT_CHANGING.

* Correct range of values to calculate for term_dp1_lhs

* Comments and cleanup

* Slight change to Skx_func, this is mathematically equivalent but BIT_CHANGING. This is faster on GPUs, and doesn't seem to have a signficiant impact on CPU performance.

* Introducing wp_coef and wp_coef_zt to reduce needed computations. This changes order of operations, so it is BIT_CHANGING.
The file was modified src/CLUBB_core/advance_xp2_xpyp_module.F90 (diff)
The file was modified src/CLUBB_core/mean_adv.F90 (diff)
The file was modified src/CLUBB_core/Skx_module.F90 (diff)
Commit 3dbe0a48a7a72173093335aee0a1decee4ed7303 by Gunther Huebler
Adding wp_coef and wp_coef_zt to acc data statements.
The file was modified src/CLUBB_core/advance_xp2_xpyp_module.F90 (diff)
Commit 4739fb54b293d3201087c17e81daa2943f5d7661 by Vince Larson
For RegTune, update input netcdf files.

For #910.
The file was modified utilities/sens_matrix/sens_matrix_dashboard.py (diff)
The file was modified utilities/sens_matrix/set_up_dashboard_inputs.py (diff)
Commit 0c7fc1f05bfd096c03e190497c2f2b6b7bba4582 by noreply
Bv efold bit changing (#1095)

BIT_CHANGING! Added e-folding code for mixed Brunt Vaisala frequency - CLUBB ticket #1069
- Included usage for bv_efold in src/CLUBB_core/advance_helper_module.F90
- Added intent(out) for correction_stability in subroutine calc_correction_stability
- Removed brunt_vaisala_freq_sqd_plus
- Idiot proofed interaction between l_diag_Lscale_from_tau and l_use_invrs_tau_N2_iso
- Moved stat_update_var(invrs_tau_wp3_zm) out of if ( l_diag_Lscale_from_tau )
- Fixed some typos in src/CLUBB_core/stats_zt_module.F90
- Added comment about to input_misc/tuner/README about t_variables adn input/stats/tuning_stats.in
The file was modified src/CLUBB_core/advance_clubb_core_module.F90 (diff)
The file was modified input/stats/standard_stats.in (diff)
The file was modified src/CLUBB_core/mixing_length.F90 (diff)
The file was modified src/CLUBB_core/advance_helper_module.F90 (diff)
The file was modified src/CLUBB_core/stats_zt_module.F90 (diff)
The file was modified input_misc/tuner/README (diff)