<workflowJob _class='org.jenkinsci.plugins.workflow.job.WorkflowJob'><action></action><action></action><action></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.JobDisplayAction'><displayUrl>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/</displayUrl></action><action></action><action _class='com.cloudbees.plugins.credentials.ViewCredentialsAction'><stores></stores></action><description></description><displayName>clubb_BFB_r8029_flags_gfortran_test</displayName><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test</fullDisplayName><fullName>clubb_BFB_r8029_flags_gfortran_test</fullName><name>clubb_BFB_r8029_flags_gfortran_test</name><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/</url><buildable>true</buildable><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>1</buildableTimeMillis><buildingDurationMillis>83224</buildingDurationMillis><executingTimeMillis>82237</executingTimeMillis><executorUtilization>0.99</executorUtilization><subTaskCount>1</subTaskCount><waitingDurationMillis>9080</waitingDurationMillis><waitingTimeMillis>9080</waitingTimeMillis></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>592</buildNumber><marked><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><branch><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><branch><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><branch><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#592</displayName><duration>83224</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #592</fullDisplayName><id>592</id><keepLog>false</keepLog><number>592</number><queueId>10228</queueId><result>SUCCESS</result><timestamp>1791448030655</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/592/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tuner/loss_backend.py</affectedPath><affectedPath>tuner/job_runtime.py</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_tuner_top_overrides.py</affectedPath><affectedPath>jenkins_tests/clubb_tuner/Jenkinsfile</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</affectedPath><affectedPath>dash_app/pytests/auto_llm_generated_pytests/test_tune_replay_completion.py</affectedPath><affectedPath>run_scripts/README.md</affectedPath><affectedPath>dash_app/pytests/test_jax_device.py</affectedPath><affectedPath>dash_app/shared/activity.py</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_jax_launch_errors.py</affectedPath><affectedPath>tuner/request.py</affectedPath><affectedPath>dash_app/compile_tab/callbacks.py</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>dash_app/shared/jax_device.py</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>dash_app/profile_tab/runtime.py</affectedPath><affectedPath>dash_app/tune_tab/runtime.py</affectedPath><affectedPath>tuner/tune_clubb.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_device_selection.py</affectedPath><affectedPath>tuner/tuning_worker.py</affectedPath><affectedPath>dash_app/run_tab/runtime.py</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_runtime_device_settings.py</affectedPath><affectedPath>tuner/status.py</affectedPath><affectedPath>clubb_jax/backends/cuda.py</affectedPath><affectedPath>dash_app/services/models.py</affectedPath><affectedPath>dash_app/pytests/test_agent_services.py</affectedPath><affectedPath>dash_app/pytests/auto_llm_generated_pytests/test_jax_tuning_runtime.py</affectedPath><affectedPath>dash_app/tune_tab/callbacks_runs.py</affectedPath><affectedPath>tuner/tuning_scheduler.py</affectedPath><affectedPath>dash_app/DEVELOPMENT.md</affectedPath><affectedPath>dash_app/pytests/test_run_broker_simplification.py</affectedPath><affectedPath>dash_app/compile_tab/build_selector.py</affectedPath><affectedPath>tuner/README.md</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_jax_backend.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>run_scripts/run_tuner_job.py</affectedPath><commitId>9a1b8b23408d3a5abe78ebae7dd1390755fa4fec</commitId><timestamp>1791407526000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Use JAX in tuner (#1383)

This makes the JAX work through the new tuner, same sort of way the fortran does. Probably needs a little more testing but seems to be working properly now.

* Support reusable JAX driver state and runtime batches

* Add standalone JAX loss evaluation and consistency coverage

* Keep standalone loss CLI coverage separate from tuning

* Integrate JAX with managed tuner jobs and add bounded Jenkins coverage

* Remove trailing whitespace from extracted loss CLI tests

* Run JAX loss help checks in the JAX pytest suite

* Keep JAX lifecycle coverage with native driver tests and document its origins

* Document loss test scenarios, native counterparts and JAX extensions

* Keep the native loss executable path intact in the test description

* Explain managed tuning test ownership and native backend contracts

* Mirror the native driver lifecycle test and compare complete JAX statistics

* Run JAX driver extensions as an independent step in the lifecycle stage

* Update the C8 comparison mutation for indexed parameter loading

* Refresh JAX tuner integration for merged loss frontends

Use the relocated standalone loss entry point and retain CLI checks only in their shared owner. Give each Jenkins tuning run a separate job directory so repeated builds can succeed.

* Record invalid direct tuner requests as terminal errors

Let the existing request and launcher error handlers report malformed JSON and non-string JAX options instead of crashing during bootstrap before writing job results.

* Preserve winning parameter columns in tuner reruns

Retain request physics overrides while excluding initialized values for tuned parameters. Window and full-case reruns now use the winning candidate values, including multiple columns and grouped override names.

* Use the selected JAX runtime throughout Dash tuning

Persist backend and per-job device settings through native and typed broker requests, saved revisions, continuation and result reruns. Reuse the launcher, shared device controls and rerun override resolver; supervise browser replay processes in the broker.

* Allow run IDs in broker replay completion metadata

Avoid a selector argument collision that killed the replay watcher before recording terminal state. Preserve run IDs and cancellation metadata while reporting completed jobs accurately.

* Keep JAX device setup inside the launcher and backends

Expose a standard-library selection interface and forward per-job device and preallocation settings through the SCM and tuner launch paths. Use the same backend configuration for discovery, provenance, and execution; remove GPU environment handling from Dash and the tuner.

Validate with Dash/shared suites, focused launcher checks, a CPU tuning and replay workflow, and synthetic two-GPU discovery.

* Forward device settings through the existing JAX selection option

Extend the launcher-owned -options grammar with device=UUID and prealloc_gpu_mem=true|false, while retaining xla_prealloc compatibility. Remove the transient device-specific options from SCM and tuner scripts so they forward one opaque -jax value.

Validate saved settings, discovery and replays through the same public interface; verify CPU tuning metrics remain identical.
</comment><date>2026-10-07 16:12:06 -0500</date><id>9a1b8b23408d3a5abe78ebae7dd1390755fa4fec</id><msg>Use JAX in tuner (#1383)</msg><path><editType>edit</editType><file>jenkins_tests/clubb_tuner/Jenkinsfile</file></path><path><editType>edit</editType><file>tuner/README.md</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_device_selection.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_run_broker_simplification.py</file></path><path><editType>add</editType><file>tuner/loss_backend.py</file></path><path><editType>edit</editType><file>tuner/job_runtime.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_runs.py</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>edit</editType><file>tuner/tuning_worker.py</file></path><path><editType>delete</editType><file>dash_app/shared/jax_device.py</file></path><path><editType>edit</editType><file>tuner/tuning_scheduler.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_agent_services.py</file></path><path><editType>edit</editType><file>clubb_jax/backends/cuda.py</file></path><path><editType>edit</editType><file>tuner/tune_clubb.py</file></path><path><editType>edit</editType><file>dash_app/DEVELOPMENT.md</file></path><path><editType>edit</editType><file>dash_app/run_tab/runtime.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>dash_app/compile_tab/build_selector.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_jax_backend.py</file></path><path><editType>edit</editType><file>tuner/request.py</file></path><path><editType>edit</editType><file>run_scripts/run_tuner_job.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</file></path><path><editType>edit</editType><file>dash_app/shared/actions.py</file></path><path><editType>edit</editType><file>tuner/status.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/runtime.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_jax_device.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_tuner_top_overrides.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_runtime_device_settings.py</file></path><path><editType>edit</editType><file>dash_app/services/models.py</file></path><path><editType>add</editType><file>dash_app/pytests/auto_llm_generated_pytests/test_tune_replay_completion.py</file></path><path><editType>edit</editType><file>run_scripts/README.md</file></path><path><editType>add</editType><file>dash_app/pytests/auto_llm_generated_pytests/test_jax_tuning_runtime.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/runtime.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_jax_launch_errors.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/compile_tab/callbacks.py</file></path><path><editType>edit</editType><file>dash_app/shared/activity.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_tuner.py</affectedPath><affectedPath>dash_app/run_tab/tab.py</affectedPath><affectedPath>dash_app/persistence.py</affectedPath><affectedPath>utilities/README.md</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>dash_app/run_tab/callbacks_selection.py</affectedPath><affectedPath>utilities/case_json_to_namelist.py</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>dash_app/pytests/auto_llm_generated_pytests/test_case_editor.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>input/case_setups/case_definitions.json</affectedPath><affectedPath>dash_app/assets/34_case_editor.js</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>run_scripts/run_scm_loss.py</affectedPath><affectedPath>utilities/pytests/auto_llm_generated_pytests/test_case_json_to_namelist.py</affectedPath><affectedPath>dash_app/run_tab/discovery.py</affectedPath><affectedPath>dash_app/assets/12_case_editor.css</affectedPath><affectedPath>dash_app/assets/11_tab_run_theme.css</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>tuner/case_defaults.py</affectedPath><affectedPath>dash_app/profile_tab/runtime.py</affectedPath><affectedPath>input/case_setups/README</affectedPath><affectedPath>dash_app/run_tab/cases.py</affectedPath><commitId>5f8b57f69c01c59fc3c4457178ae85d57894c1d9</commitId><timestamp>1791415324000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Add JSON case definitions and Dash case editor (#1389)

This is mainly a dash update right now, but it adds json versions of our model files. Basically just 2 new files for that - each json stores default values then one entry for each case with overrides it is not default yet and the current system of defining cases is unchanged.


* Add JSON case definitions and Dash case editor

* Simplify named case lookup and remove queued snapshots

* Remove model validation from JSON case conversion
</comment><date>2026-10-07 18:22:04 -0500</date><id>5f8b57f69c01c59fc3c4457178ae85d57894c1d9</id><msg>Add JSON case definitions and Dash case editor (#1389)</msg><path><editType>edit</editType><file>dash_app/run_tab/tab.py</file></path><path><editType>add</editType><file>dash_app/assets/34_case_editor.js</file></path><path><editType>edit</editType><file>dash_app/run_tab/discovery.py</file></path><path><editType>add</editType><file>utilities/case_json_to_namelist.py</file></path><path><editType>add</editType><file>input/case_setups/case_definitions.json</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>add</editType><file>dash_app/pytests/auto_llm_generated_pytests/test_case_editor.py</file></path><path><editType>edit</editType><file>tuner/case_defaults.py</file></path><path><editType>edit</editType><file>dash_app/shared/actions.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm_loss.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_selection.py</file></path><path><editType>add</editType><file>dash_app/assets/12_case_editor.css</file></path><path><editType>edit</editType><file>run_scripts/run_tuner.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/assets/11_tab_run_theme.css</file></path><path><editType>edit</editType><file>dash_app/persistence.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/runtime.py</file></path><path><editType>edit</editType><file>utilities/README.md</file></path><path><editType>add</editType><file>dash_app/run_tab/cases.py</file></path><path><editType>edit</editType><file>input/case_setups/README</file></path><path><editType>add</editType><file>utilities/pytests/auto_llm_generated_pytests/test_case_json_to_namelist.py</file></path><path><editType>edit</editType><file>.gitignore</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/README.md</affectedPath><affectedPath>jenkins_tests/clubb_stats_output_consistency/Jenkinsfile</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_run_stats_output_consistency.py</affectedPath><affectedPath>tests/run_stats_output_consistency.py</affectedPath><commitId>166ec211468128c37d8bb4b917ffac337bf80247</commitId><timestamp>1791416548000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Run JAX statistics consistency with an explicit rounding tolerance (#1385)

This adds a jax jenkins stage for the statistics consistency test. This is the test that runs clubb with different batches sizes and averaging methods, e.g
- start by: run once with 60s output intervals all the way through
- test: running with 300s output intervals should give the same stats as manually averaging 5 steps of 60s output
- test: outputing only a "window" of stats data (like from timesteps 100-200 instead of whole run), should produce a window idendical to the 60s full output run
- test: running 16 columns at once should produce the same as running 16 columns in batches of 4 at a time

In fortran these comparisons should be BFB (other than the manually averaging one, which is only close), but in jax, changing things like the batch size can cause optimizations to happen differently, which breaks BFBness and seems to cause differences larger than expected by fortran. For example, the threshold for the manual averaging test in fortran is 1e-12, but for the jax we need 1e-9 even for the batch test. I added a tolerance, `jax_tolerance`, that I left named after jax for now since that is the only current reason that flag exists. 

This difficulty with jax wasn't unexpected - we also have to compile the fortran with `-O0` to get this test working, also to disable optimizations. There just seems to be less control over how jax does that, so I went with a "relax the tolerance for this specific instance" approach.

* Support reusable JAX driver state and runtime batches

* Expose JAX in the strict statistics consistency workflow

* Keep JAX lifecycle coverage with native driver tests and document its origins

* Reference native driver and statistics owners in the JAX test workflow

* Keep full Fortran statistics source paths in the test description

* Mirror the native driver lifecycle test and compare complete JAX statistics

* Run JAX driver extensions as an independent step in the lifecycle stage

* Update the C8 comparison mutation for indexed parameter loading

* Keep statistics windows within the capped native case duration

* Allow explicit JAX statistics tolerance for JIT rounding differences
</comment><date>2026-10-07 18:42:28 -0500</date><id>166ec211468128c37d8bb4b917ffac337bf80247</id><msg>Run JAX statistics consistency with an explicit rounding tolerance (#1385)</msg><path><editType>edit</editType><file>tests/run_stats_output_consistency.py</file></path><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_stats_output_consistency/Jenkinsfile</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_run_stats_output_consistency.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/README.md</affectedPath><affectedPath>tests/run_timestep_tests.py</affectedPath><affectedPath>jenkins_tests/clubb_timestep/Jenkinsfile</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compilation_cache.py</affectedPath><affectedPath>tests/run_timestep_sweep.py</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_run_timestep_sweep.py</affectedPath><commitId>341cac040a0d352fd5a4da6a5938a86d7d06e332</commitId><timestamp>1791417082000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Run timestep sweep tests with JAX (#1384)

Adding a jax run to the timestep test (now renamed timestep sweep because it's more descriptive).

This was really slow on JAX at first - one trick was to add a compilation cache, so that different runs that only use different timesteps didn't need to be recompiled. From my undestanding this is super easy with jax, basically just set `JAX_COMPILATION_CACHE_DIR` to a directory the process can save compiled parts is all it takes, then the compiled parts can live there even after the processes dies, and future ones can reuse it.

* Run existing timestep sweeps with the JAX runner

* Explain the shared native and JAX timestep sweep behavior

* Keep timestep checks aligned with current launcher and CLI conventions

Select CPU explicitly in the bounded JAX stage and resolve optional output roots through the shared owner. Support standard single-dash help, reject ambiguous option abbreviations, and cover opaque runtime forwarding while preserving native defaults and exploratory status.

Validate with 373 shared checks and four eight-step BOMEX/ATEX runs per backend at 60 and 600 seconds.

* Rename the timestep sweep and run shared JAX cases at native defaults

Select the 18 cases shared by the native sweep and JAX/Fortran comparison list. Remove Jenkins timestep and iteration overrides, update stage names and documentation, and preserve the sweep's stability-reporting behavior.

Validate the selection and rename with 374 shared checks before live branch testing.

* Reuse JAX compilations and parallelize case timestep sweeps

Keep a backend-specific persistent cache outside the checkout and preserve explicit cache overrides. Run four isolated case sweeps, prioritize measured expensive cases, and print each completed report as a block while preserving timestep order and first-failure semantics.

Validate cache reuse across fresh processes and cache clearing, scheduling/overlap/interruption contracts, 379 shared checks, and full 90-run cold-cache JAX/native matrices.
</comment><date>2026-10-07 18:51:22 -0500</date><id>341cac040a0d352fd5a4da6a5938a86d7d06e332</id><msg>Run timestep sweep tests with JAX (#1384)</msg><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>delete</editType><file>tests/run_timestep_tests.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compilation_cache.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_timestep/Jenkinsfile</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>add</editType><file>tests/run_timestep_sweep.py</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_run_timestep_sweep.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_plots/Jenkinsfile</affectedPath><affectedPath>LLM_prompts/jenkins_workflow.md</affectedPath><commitId>e92c2f24486a32610935ff4eede3512c67e313ea</commitId><timestamp>1791427833000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Add JAX comparison plots
</comment><date>2026-10-07 21:50:33 -0500</date><id>e92c2f24486a32610935ff4eede3512c67e313ea</id><msg>Add JAX comparison plots</msg><path><editType>edit</editType><file>LLM_prompts/jenkins_workflow.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_plots/Jenkinsfile</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><previousBuild><number>591</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/591/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>1</buildableTimeMillis><buildingDurationMillis>136948</buildingDurationMillis><executingTimeMillis>135955</executingTimeMillis><executorUtilization>0.99</executorUtilization><subTaskCount>1</subTaskCount><waitingDurationMillis>9638</waitingDurationMillis><waitingTimeMillis>9638</waitingTimeMillis></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>591</buildNumber><marked><SHA1>04ff5df702bc2ad372325353ee19dde5a2fc3fc1</SHA1><branch><SHA1>04ff5df702bc2ad372325353ee19dde5a2fc3fc1</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>04ff5df702bc2ad372325353ee19dde5a2fc3fc1</SHA1><branch><SHA1>04ff5df702bc2ad372325353ee19dde5a2fc3fc1</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>04ff5df702bc2ad372325353ee19dde5a2fc3fc1</SHA1><branch><SHA1>04ff5df702bc2ad372325353ee19dde5a2fc3fc1</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#591</displayName><duration>136948</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #591</fullDisplayName><id>591</id><keepLog>false</keepLog><number>591</number><queueId>10121</queueId><result>SUCCESS</result><timestamp>1791361630943</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/591/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/src/clubb_case_initalization.py</affectedPath><affectedPath>clubb_jax/src/clubb_standalone.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/parameters_tunable.py</affectedPath><affectedPath>clubb_jax/src/Input_fields/namelist.py</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_scm_jax_driver_test.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_driver_test_frontend.py</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>tests/run_jax_comparison_mutation_test.py</affectedPath><affectedPath>LLM_prompts/jenkins_workflow.md</affectedPath><affectedPath>clubb_jax/tests/run_driver_extensions_test.py</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_driver_lifecycle.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_driver_error_window.py</affectedPath><affectedPath>jenkins_tests/clubb_driver/Jenkinsfile</affectedPath><affectedPath>clubb_jax/src/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/src/clubb_driver_test.py</affectedPath><affectedPath>LLM_prompts/pytest_workflow.md</affectedPath><commitId>56e1502fbdd1be881a4c3ae1a2a9570dfc8615ab</commitId><timestamp>1791322777000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Support reusable JAX driver initialization and runtime batches (#1380)

This is just getting the jax driver to be more in line with fortran. It was lacking features like being able to start/stop at a certain timestep. Certain driver tests were also missing, which got added and included in the driver jenkins test.


* Support reusable JAX driver state and runtime batches

* Keep JAX lifecycle coverage with native driver tests and document its origins

* Mirror the native driver lifecycle test and compare complete JAX statistics

* Run JAX driver extensions as an independent step in the lifecycle stage

* Update the C8 comparison mutation for indexed parameter loading
</comment><date>2026-10-06 16:39:37 -0500</date><id>56e1502fbdd1be881a4c3ae1a2a9570dfc8615ab</id><msg>Support reusable JAX driver initialization and runtime batches (#1380)</msg><path><editType>edit</editType><file>LLM_prompts/pytest_workflow.md</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Input_fields/namelist.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_driver_test_frontend.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_driver_lifecycle.py</file></path><path><editType>edit</editType><file>clubb_jax/src/clubb_standalone.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_driver/Jenkinsfile</file></path><path><editType>edit</editType><file>LLM_prompts/jenkins_workflow.md</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>clubb_jax/src/advance_clubb_to_end.py</file></path><path><editType>edit</editType><file>clubb_jax/src/clubb_case_initalization.py</file></path><path><editType>add</editType><file>clubb_jax/tests/run_driver_extensions_test.py</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_scm_jax_driver_test.py</file></path><path><editType>edit</editType><file>tests/run_jax_comparison_mutation_test.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/parameters_tunable.py</file></path><path><editType>add</editType><file>clubb_jax/src/clubb_driver_test.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_driver_error_window.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/README.md</affectedPath><affectedPath>clubb_jax/src/clubb_case_initalization.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_restart.py</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_run_restart_test.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py</affectedPath><affectedPath>clubb_jax/src/Input_fields/input_fields.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_restart_input_validation.py</affectedPath><affectedPath>jenkins_tests/clubb_restart/Jenkinsfile</affectedPath><affectedPath>tests/run_restart_test.py</affectedPath><affectedPath>clubb_jax/RESTART_PORT_NOTES.md</affectedPath><commitId>7666fd0f4e1bf2c8c46194dcbaa31fedf8f3c824</commitId><timestamp>1791325897000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Port JAX restart initialization and test normal and SILHS continuation (#1381)

This makes jax restarts work. Also adding jax restart test stages in the existing jenkins restart test.

* Port JAX restart initialization and exercise native and SILHS restarts

* Describe restart validation and dependencies for the focused PR

* Describe JAX restart scenarios and their native source equivalents

* Keep JAX restart validation in the shared harness and exercise distinct columns
</comment><date>2026-10-06 17:31:37 -0500</date><id>7666fd0f4e1bf2c8c46194dcbaa31fedf8f3c824</id><msg>Port JAX restart initialization and test normal and SILHS continuation (#1381)</msg><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_restart.py</file></path><path><editType>add</editType><file>clubb_jax/src/Input_fields/input_fields.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_restart/Jenkinsfile</file></path><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>edit</editType><file>clubb_jax/src/clubb_case_initalization.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_restart_input_validation.py</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_run_restart_test.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>add</editType><file>clubb_jax/RESTART_PORT_NOTES.md</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py</file></path><path><editType>edit</editType><file>tests/run_restart_test.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_python_api/tests/clubb_loss_driver_test.py</affectedPath><affectedPath>clubb_python_api/README.md</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>tuner/clubb_loss_driver.py</affectedPath><affectedPath>tests/README.md</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_loss_frontend.py</affectedPath><affectedPath>run_scripts/run_scm_loss.py</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_case_window_overrides.py</affectedPath><affectedPath>clubb_jax/tests/test_loss_driver.py</affectedPath><affectedPath>clubb_jax/src/clubb_standalone_loss.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_loss_port_structure.py</affectedPath><affectedPath>clubb_python_api/clubb_python/clubb_standalone_loss.py</affectedPath><affectedPath>clubb_python_api/CMakeLists.txt</affectedPath><affectedPath>tuner/clubb_loss_driver_test.py</affectedPath><affectedPath>utilities/README.md</affectedPath><affectedPath>jenkins_tests/clubb_stats_output_consistency/Jenkinsfile</affectedPath><affectedPath>utilities/loss_metrics.py</affectedPath><affectedPath>clubb_jax/src/clubb_loss_driver.py</affectedPath><affectedPath>clubb_jax/TUNER_PORT.md</affectedPath><affectedPath>utilities/pytests/auto_llm_generated_pytests/test_loss_cli.py</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_run_loss_output_consistency.py</affectedPath><affectedPath>clubb_jax/tests/test_silhs_loss_driver.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_loss_driver.py</affectedPath><affectedPath>tuner/README.md</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>tuner/case_defaults.py</affectedPath><affectedPath>tests/run_loss_output_consistency.py</affectedPath><commitId>04ff5df702bc2ad372325353ee19dde5a2fc3fc1</commitId><timestamp>1791344832000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Port standalone JAX loss evaluation and consistency checks (#1382)

This adds the capability for the jax to run and compute loss vs les data the same as fortran does. Fortran uses the "loss driver" which does this, and has some additional testing code and a clubb_standalone_loss program that supports that, so this was basically just porting more of the high level fortran code to jax and hooking it up with some of the high level python scripts the tuner uses.


* Support reusable JAX driver state and runtime batches

* Add standalone JAX loss evaluation and consistency coverage

* Keep standalone loss CLI coverage separate from tuning

* Remove trailing whitespace from extracted loss CLI tests

* Run JAX loss help checks in the JAX pytest suite

* Keep JAX lifecycle coverage with native driver tests and document its origins

* Document loss test scenarios, native counterparts and JAX extensions

* Keep the native loss executable path intact in the test description

* Mirror the native driver lifecycle test and compare complete JAX statistics

* Run JAX driver extensions as an independent step in the lifecycle stage

* Update the C8 comparison mutation for indexed parameter loading

* Reject unsupported loss restarts before opening model resources

* Clean up merged loss launcher state and document early restart rejection

* Move loss frontends and tests out of the tuner package

Call the existing Fortran Python API directly from its installed standalone loss frontend, and keep the JAX standalone frontend with its source port. Share unchanged table formatting, relocate lifecycle and CLI coverage, and update runners and documentation.
</comment><date>2026-10-06 22:47:12 -0500</date><id>04ff5df702bc2ad372325353ee19dde5a2fc3fc1</id><msg>Port standalone JAX loss evaluation and consistency checks (#1382)</msg><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_case_window_overrides.py</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_loss_driver.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_loss_driver.py</file></path><path><editType>add</editType><file>clubb_jax/src/clubb_loss_driver.py</file></path><path><editType>edit</editType><file>tuner/case_defaults.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_loss_port_structure.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_stats_output_consistency/Jenkinsfile</file></path><path><editType>edit</editType><file>clubb_python_api/README.md</file></path><path><editType>delete</editType><file>tuner/clubb_loss_driver.py</file></path><path><editType>add</editType><file>clubb_jax/TUNER_PORT.md</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/clubb_standalone_loss.py</file></path><path><editType>edit</editType><file>tuner/README.md</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_run_loss_output_consistency.py</file></path><path><editType>delete</editType><file>tuner/clubb_loss_driver_test.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_silhs_loss_driver.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_loss_frontend.py</file></path><path><editType>add</editType><file>utilities/pytests/auto_llm_generated_pytests/test_loss_cli.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/clubb_loss_driver_test.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm_loss.py</file></path><path><editType>edit</editType><file>utilities/README.md</file></path><path><editType>add</editType><file>clubb_jax/src/clubb_standalone_loss.py</file></path><path><editType>edit</editType><file>clubb_python_api/CMakeLists.txt</file></path><path><editType>edit</editType><file>tests/run_loss_output_consistency.py</file></path><path><editType>edit</editType><file>utilities/loss_metrics.py</file></path><path><editType>edit</editType><file>tests/README.md</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>592</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/592/</url></nextBuild><previousBuild><number>590</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/590/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Gunther Huebler</shortDescription><userId>huebler</userId><userName>Gunther Huebler</userName></cause></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>590</buildNumber><marked><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><branch><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><branch><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><branch><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#590</displayName><duration>102759</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #590</fullDisplayName><id>590</id><keepLog>false</keepLog><number>590</number><queueId>10069</queueId><result>SUCCESS</result><timestamp>1791308898372</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/590/</url><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>591</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/591/</url></nextBuild><previousBuild><number>589</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/589/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Gunther Huebler</shortDescription><userId>huebler</userId><userName>Gunther Huebler</userName></cause></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>589</buildNumber><marked><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><branch><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><branch><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><branch><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#589</displayName><duration>787902</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #589</fullDisplayName><id>589</id><keepLog>false</keepLog><number>589</number><queueId>10037</queueId><result>FAILURE</result><timestamp>1791306240225</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/589/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>utilities/convert_acc_to_omp.bash</affectedPath><commitId>e83e7d62179dd6c710b77216aea55df37600f820</commitId><timestamp>1791236009000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Fix OpenMP GPU host_data conversion
</comment><date>2026-10-05 16:33:29 -0500</date><id>e83e7d62179dd6c710b77216aea55df37600f820</id><msg>Fix OpenMP GPU host_data conversion</msg><path><editType>edit</editType><file>utilities/convert_acc_to_omp.bash</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/backends/cpu.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_backends.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_compile_compiler_selection.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_rocm_runtime.py</affectedPath><affectedPath>BUILD.md</affectedPath><affectedPath>clubb_jax/backends/metal.py</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_portable_cholesky.py</affectedPath><affectedPath>clubb_jax/backends/__init__.py</affectedPath><affectedPath>clubb_jax/backends/rocm.py</affectedPath><affectedPath>clubb_jax/backends/cuda.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/matrix_operations.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/requirements-rocm.txt</affectedPath><affectedPath>clubb_jax/backends/common.py</affectedPath><affectedPath>tests/run_jax_vs_fortran_cases.py</affectedPath><affectedPath>compile.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_runtime_info.py</affectedPath><affectedPath>clubb_jax/runtime_info.py</affectedPath><commitId>da614f85c180af844a77e80ddd4b61a94ce716b9</commitId><timestamp>1791238822000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>AMD/ROCM Support for Jax (#1376)

This does 2 things:

adds support for running on ROCM systems, this is the AMD GPU equivalent of cuda
organize specific-device backend setup files, e.g GPU on nvidia needs cuda jax libraries, Apple needs metal, AMD needs rocm
The only complication was the jax cholesky not working on AMD GPUs. Seems like a bug that's out of our control, so I left en environment flag to switch between the jax linalg call and a custom "portable" one. The portable one still passes the jax_vs_fortran comparison tests.


Commits
---
* Support native AMD ROCm JAX on CachyOS

* Keep ROCm crash fixes and remove Morrison rounding workarounds

* Separate JAX launcher and inspection backend policies
</comment><date>2026-10-05 17:20:22 -0500</date><id>da614f85c180af844a77e80ddd4b61a94ce716b9</id><msg>AMD/ROCM Support for Jax (#1376)</msg><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_backends.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_portable_cholesky.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_rocm_runtime.py</file></path><path><editType>edit</editType><file>clubb_jax/runtime_info.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/matrix_operations.py</file></path><path><editType>add</editType><file>clubb_jax/backends/metal.py</file></path><path><editType>add</editType><file>clubb_jax/backends/__init__.py</file></path><path><editType>edit</editType><file>BUILD.md</file></path><path><editType>edit</editType><file>tests/run_jax_vs_fortran_cases.py</file></path><path><editType>add</editType><file>clubb_jax/backends/cpu.py</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_compile_compiler_selection.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>add</editType><file>clubb_jax/backends/common.py</file></path><path><editType>add</editType><file>clubb_jax/backends/rocm.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</file></path><path><editType>add</editType><file>clubb_jax/requirements-rocm.txt</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_runtime_info.py</file></path><path><editType>add</editType><file>clubb_jax/backends/cuda.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_sigma_sqd_w.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_component_corr_ip.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnose_correlations.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_limits_f_x_responder.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_autoconversion.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_uv_tndcy.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_binormal_moments.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_Nc_Ncn_eqns.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_radiation_port_structure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_liq_water_path.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_jit_compile.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_sunray_sw.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_comp_corr_norm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_remapping_ppm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad_lba.py</affectedPath><affectedPath>clubb_jax/tests/run_morrison_interface_test.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_ice_dfsn.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_variance.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_adg1_adg2_responder_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_ice_cloud_frac_component.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_varnce.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_rad_extended_atmosphere.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_rtp2_from_chi.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_KK_Nrm_tendencies.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_max_cubic_root.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_param_names.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pvertinterp.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_no_dead_functions.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_denorm_transform_corr.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_integration.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_params_pack_roundtrip.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_const_vs_MM.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_skewness.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_interpolation.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_constants.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_penta_faithful.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mpace_b_lba_tndcy.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_T_in_K.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_config_flags_complete.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_update_xp2_mc.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calculate_w_responder_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_setter_var_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnose_upxp.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_rcm_sat_adj.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_no_dead_imports.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mixed_moment_pdf_integrals.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrometp2_zt.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wp3_on_wp2.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_inverse_hydrostatic.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnostic_cache.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_local_means.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_roots.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mean_vert_vel_up_down.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_gamma_skw.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_grid_operators.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_quadrivar_NNLL_covar_eq_swap.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calculate_thvm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_numerical_check_setters.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wp4_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_covar_KK_mixt_frac_linearity.py</affectedPath><affectedPath>clubb_jax/tests/run_pdf_monte_carlo_test.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_remapping_module.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_time_select.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_index_mapping.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wpxpyp_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_w_up_in_cloud.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_luhar_3d_driver.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_stats_output_time.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_drop_sed.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_sliding_window.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial_rr_Nr.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_gabls3_night_stability.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_new_pdf_main.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cos_solar_zen.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_w_hm_n.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_spurious_source.py</affectedPath><affectedPath>tests/README.md</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_precip_fraction.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_soil_vegetation.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_spec_hum_to_mixing_ratio.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_penta_solver.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pressure_sounding_z.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_correlate.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_lhs.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_flux.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_xpthvp_terms.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mirror_lower_triangular.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_covar.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_quadrivar_covar_const_limits.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mixing_length.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_vs_MM.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_mean_const.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrometeor_mixed_moments.py</affectedPath><affectedPath>jenkins_tests/clubb_jax/Jenkinsfile</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_global.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pos_definite.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_ly93_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrostatic.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_forcing_port_structure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_covariance_batch.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_const_limits.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_luhar_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_binormal_moments.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_differentiability.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_component_precip_frac_specify.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_validation_checks.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_params_init.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_diffusion.py</affectedPath><affectedPath>tests/run_pytests.sh</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_liquid_cloud_frac_component.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cholesky_corr_mtx_approx.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_utilities.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_mean.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_moment_integrals.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_lba_sfclyr.py</affectedPath><affectedPath>clubb_jax/tests/run_standalone_no_bindings_test.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_hydromet_pdf_parameter.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_new_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_numerics_autodiff.py</affectedPath><affectedPath>LLM_prompts/pytest_workflow.md</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_adg2_driver.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_routine_placement.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calendar.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mean_adv.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_error_paths.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_xp3.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mono_flux_limiter.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_port_structure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_responder_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_corr_varnce.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_feedback_sfclyr.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cholesky_factor.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_autodiff.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_close_luhar_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_saturation.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_upscaled_variances.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_new_tsdadg_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_set_sfc_value_of_flux_profiles.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_coefs_semiimpl.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_norm_cholesky.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_xprcp_component.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_integrals_all_mm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_new_hybrid_pdf_main.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_advance_xp3_simplified.py</affectedPath><commitId>350a98e42b5a193c8471cc67c288bce95e7f7ac0</commitId><timestamp>1791244216000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Prune inherited JAX pytests and remove binding dependencies (#1379)

This just prunes lots of outdated and unneccesary pytests. These are all LLM generated and I just never went through them before. Probably still needs cleanup.
</comment><date>2026-10-05 18:50:16 -0500</date><id>350a98e42b5a193c8471cc67c288bce95e7f7ac0</id><msg>Prune inherited JAX pytests and remove binding dependencies (#1379)</msg><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnostic_cache.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_liquid_cloud_frac_component.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_penta_solver.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_sigma_sqd_w.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_jit_compile.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_forcing_port_structure.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_set_sfc_value_of_flux_profiles.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_remapping_ppm.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_w_hm_n.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_integration.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial_rr_Nr.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mono_flux_limiter.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_new_hybrid_pdf_main.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pvertinterp.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_feedback_sfclyr.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_denorm_transform_corr.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_binormal_moments.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_mean_const.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_numerical_check_setters.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_interpolation.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calendar.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_constants.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_rtp2_from_chi.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_rcm_sat_adj.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnose_upxp.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_index_mapping.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mixed_moment_pdf_integrals.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_local_means.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py</file></path><path><editType>add</editType><file>clubb_jax/tests/run_standalone_no_bindings_test.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mean_adv.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_Nc_Ncn_eqns.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_lba_sfclyr.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_coefs_semiimpl.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_component_corr_ip.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_KK_Nrm_tendencies.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cos_solar_zen.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_uv_tndcy.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_luhar_3d_driver.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_validation_checks.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cholesky_corr_mtx_approx.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_vs_MM.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_lhs.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_radiation_port_structure.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_quadrivar_NNLL_covar_eq_swap.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calculate_thvm.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_comp_corr_norm.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_limits_f_x_responder.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_binormal_moments.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_close_luhar_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_ly93_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_max_cubic_root.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_penta_faithful.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_ice_dfsn.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_norm_cholesky.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_rad_extended_atmosphere.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_spurious_source.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_correlate.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_luhar_params.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_utilities.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_setter_var_params.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_adg2_driver.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_component_precip_frac_specify.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_autoconversion.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_stats_output_time.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_varnce.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_error_paths.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_differentiability.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_jax/Jenkinsfile</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_saturation.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wp3_on_wp2.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrometp2_zt.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnose_correlations.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_spec_hum_to_mixing_ratio.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_const_limits.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mirror_lower_triangular.py</file></path><path><editType>edit</editType><file>tests/run_pytests.sh</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_adg1_adg2_responder_params.py</file></path><path><editType>add</editType><file>clubb_jax/tests/run_morrison_interface_test.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad_lba.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_precip_fraction.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mpace_b_lba_tndcy.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_new_pdf_main.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_upscaled_variances.py</file></path><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_gabls3_night_stability.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_params_pack_roundtrip.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrostatic.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_moment_integrals.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cholesky_factor.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_update_xp2_mc.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrometeor_mixed_moments.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_remapping_module.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_roots.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_xpthvp_terms.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_liq_water_path.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_variance.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_responder_params.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_no_dead_functions.py</file></path><path><editType>edit</editType><file>LLM_prompts/pytest_workflow.md</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_autodiff.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_soil_vegetation.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_ice_cloud_frac_component.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_diffusion.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_grid_operators.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_param_names.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_no_dead_imports.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_const_vs_MM.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_new_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_covar_KK_mixt_frac_linearity.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_new_tsdadg_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_port_structure.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_covar.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_routine_placement.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_skewness.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_xp3.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pos_definite.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pressure_sounding_z.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_sunray_sw.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_config_flags_complete.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_params_init.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_xprcp_component.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_inverse_hydrostatic.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wpxpyp_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_w_up_in_cloud.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_gamma_skw.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_mean.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_sliding_window.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_T_in_K.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_numerics_autodiff.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_covariance_batch.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_quadrivar_covar_const_limits.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mean_vert_vel_up_down.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_hydromet_pdf_parameter.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_flux.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_drop_sed.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_integrals_all_mm.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wp4_pdf.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_corr_varnce.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_global.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calculate_w_responder_params.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_time_select.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_advance_xp3_simplified.py</file></path><path><editType>add</editType><file>clubb_jax/tests/run_pdf_monte_carlo_test.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mixing_length.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>590</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/590/</url></nextBuild><previousBuild><number>588</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/588/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Gunther Huebler</shortDescription><userId>huebler</userId><userName>Gunther Huebler</userName></cause></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#588</displayName><duration>9037</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #588</fullDisplayName><id>588</id><keepLog>false</keepLog><number>588</number><queueId>9991</queueId><result>FAILURE</result><timestamp>1791302496338</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/588/</url><inProgress>false</inProgress><nextBuild><number>589</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/589/</url></nextBuild><previousBuild><number>587</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/587/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#587</displayName><duration>2616</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #587</fullDisplayName><id>587</id><keepLog>false</keepLog><number>587</number><queueId>9905</queueId><result>FAILURE</result><timestamp>1791275227456</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/587/</url><inProgress>false</inProgress><nextBuild><number>588</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/588/</url></nextBuild><previousBuild><number>586</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/586/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>586</buildNumber><marked><SHA1>feb2438c46510eaadecd3e0c3bdede3df2939ac1</SHA1><branch><SHA1>feb2438c46510eaadecd3e0c3bdede3df2939ac1</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>feb2438c46510eaadecd3e0c3bdede3df2939ac1</SHA1><branch><SHA1>feb2438c46510eaadecd3e0c3bdede3df2939ac1</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>feb2438c46510eaadecd3e0c3bdede3df2939ac1</SHA1><branch><SHA1>feb2438c46510eaadecd3e0c3bdede3df2939ac1</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#586</displayName><duration>657822</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #586</fullDisplayName><id>586</id><keepLog>false</keepLog><number>586</number><queueId>9801</queueId><result>SUCCESS</result><timestamp>1791188827418</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/586/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/AGENTS.md</affectedPath><affectedPath>LLM_prompts/script_cli_conventions.md</affectedPath><affectedPath>LLM_prompts/update_python_api_and_drivers.md</affectedPath><affectedPath>LLM_prompts/jenkins_workflow.md</affectedPath><affectedPath>LLM_prompts/dash_app_workflow.md</affectedPath><affectedPath>LLM_prompts/port_underlying_fortran_to_other_languages.md</affectedPath><affectedPath>.agents/skills/clubb-jax-port/SKILL.md</affectedPath><affectedPath>LLM_prompts/numerical_regression_workflow.md</affectedPath><affectedPath>LLM_prompts/README.md</affectedPath><affectedPath>AGENTS.md</affectedPath><affectedPath>.agents/skills/clubb-script-cli/SKILL.md</affectedPath><affectedPath>LLM_prompts/SHORTCUTS.md</affectedPath><affectedPath>LLM_prompts/fortran_column_refactor.md</affectedPath><affectedPath>LLM_prompts/update_host_models_after_clubb_changes.md</affectedPath><affectedPath>LLM_prompts/jax_porting_workflow.md</affectedPath><commitId>d1c3f80378f8621f388662593c7e5a47f1847b35</commitId><timestamp>1791138711000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Improve agent workflow discovery and completion evidence (#1375)

This is just a rework of out LLM shortcuts. I had chatgpt go through a bunch of sessions and investigate my inefficiencies in my workflow (like how often I have to ask for corrections for things that were already instructions in these shortcuts), and had it rework our shortcuts.

The things done seem to make sense - they're a little shorter and more concise, broken up a bit better, include some extra things. Hard to say if any of it's effective though - hopefully I'll notice an improvement with things
</comment><date>2026-10-04 13:31:51 -0500</date><id>d1c3f80378f8621f388662593c7e5a47f1847b35</id><msg>Improve agent workflow discovery and completion evidence (#1375)</msg><path><editType>edit</editType><file>LLM_prompts/port_underlying_fortran_to_other_languages.md</file></path><path><editType>add</editType><file>LLM_prompts/script_cli_conventions.md</file></path><path><editType>add</editType><file>.agents/skills/clubb-script-cli/SKILL.md</file></path><path><editType>add</editType><file>LLM_prompts/jax_porting_workflow.md</file></path><path><editType>edit</editType><file>LLM_prompts/update_python_api_and_drivers.md</file></path><path><editType>edit</editType><file>LLM_prompts/update_host_models_after_clubb_changes.md</file></path><path><editType>add</editType><file>LLM_prompts/jenkins_workflow.md</file></path><path><editType>edit</editType><file>AGENTS.md</file></path><path><editType>edit</editType><file>LLM_prompts/dash_app_workflow.md</file></path><path><editType>add</editType><file>.agents/skills/clubb-jax-port/SKILL.md</file></path><path><editType>add</editType><file>LLM_prompts/numerical_regression_workflow.md</file></path><path><editType>add</editType><file>clubb_jax/AGENTS.md</file></path><path><editType>add</editType><file>LLM_prompts/README.md</file></path><path><editType>edit</editType><file>LLM_prompts/SHORTCUTS.md</file></path><path><editType>add</editType><file>LLM_prompts/fortran_column_refactor.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/src/CLUBB_core/precipitation_fraction.py</affectedPath><affectedPath>clubb_jax/src/Microphys/cloud_sed_module.py</affectedPath><affectedPath>clubb_jax/tests/test_microphysics_port_structure.py</affectedPath><affectedPath>clubb_jax/tests/test_silhs_fortran_oracle.py</affectedPath><affectedPath>clubb_jax/tests/test_silhs_sampling.py</affectedPath><affectedPath>clubb_jax/src/Microphys/ice_dfsn_module.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys_module.py</affectedPath><affectedPath>clubb_jax/src/SILHS/est_kessler_microphys_module.py</affectedPath><affectedPath>clubb_jax/src/SILHS/latin_hypercube_arrays.py</affectedPath><affectedPath>clubb_jax/src/SILHS/silhs_api_module.py</affectedPath><affectedPath>clubb_jax/src/SILHS/lh_microphys_var_covar_module.py</affectedPath><affectedPath>clubb_jax/src/Microphys/estimate_scm_microphys_module.py</affectedPath><affectedPath>clubb_jax/tests/test_silhs_diagnostics.py</affectedPath><affectedPath>clubb_jax/tests/test_silhs_driver.py</affectedPath><affectedPath>clubb_jax/JAX_CONVERSION_PLAN.md</affectedPath><affectedPath>tests/run_jax_vs_fortran_cases.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/fill_holes.py</affectedPath><affectedPath>clubb_jax/src/Input_fields/corr_varnce_input_reader.py</affectedPath><affectedPath>clubb_jax/tests/test_microphysics_error_paths.py</affectedPath><affectedPath>clubb_jax/src/clubb_case_initalization.py</affectedPath><affectedPath>src/SILHS/latin_hypercube_driver_module.F90</affectedPath><affectedPath>clubb_jax/tests/test_microphysics_integration.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/src/SILHS/__init__.py</affectedPath><affectedPath>clubb_jax/src/SILHS/parameters_silhs.py</affectedPath><affectedPath>clubb_jax/src/Microphys/advance_microphys_module.py</affectedPath><affectedPath>tests/pytests/test_jax_compare_forwarding.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/setup_clubb_pdf_params.py</affectedPath><affectedPath>clubb_jax/src/Microphys/gfdl_activation.py</affectedPath><affectedPath>clubb_jax/src/Microphys/microphys_driver.py</affectedPath><affectedPath>clubb_jax/src/SILHS/latin_hypercube_driver_module.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/jax_stats.py</affectedPath><affectedPath>clubb_jax/src/Microphys/lh_microphys_driver_module.py</affectedPath><affectedPath>clubb_jax/src/Microphys/silhs_category_variance_module.py</affectedPath><affectedPath>LLM_prompts/SHORTCUTS.md</affectedPath><affectedPath>clubb_jax/tests/test_silhs_port_structure.py</affectedPath><affectedPath>LLM_prompts/update_host_models_after_clubb_changes.md</affectedPath><affectedPath>clubb_jax/tests/test_microphysics_host_errors.py</affectedPath><affectedPath>src/SILHS/parameters_silhs.F90</affectedPath><affectedPath>clubb_jax/src/Microphys/parameters_microphys.py</affectedPath><affectedPath>clubb_jax/src/SILHS/silhs_importance_sample_module.py</affectedPath><affectedPath>clubb_jax/src/SILHS/math_utilities.py</affectedPath><affectedPath>clubb_jax/src/SILHS/generate_uniform_sample_module.py</affectedPath><affectedPath>src/Microphys/microphys_init_cleanup.F90</affectedPath><affectedPath>clubb_jax/src/Microphys/pdf_hydromet_microphys_wrapper.py</affectedPath><affectedPath>clubb_jax/src/Microphys/morrison_microphys_module.py</affectedPath><affectedPath>src/SILHS/generate_uniform_sample_module.F90</affectedPath><affectedPath>clubb_jax/src/Microphys/microphys_init_cleanup.py</affectedPath><affectedPath>clubb_jax/SILHS_PORT_NOTES.md</affectedPath><affectedPath>clubb_jax/src/SILHS/transform_to_pdf_module.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/stats_clubb_utilities.py</affectedPath><affectedPath>clubb_jax/src/Microphys/mixed_moment_PDF_integrals.py</affectedPath><affectedPath>clubb_jax/src/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_jax/src/Microphys/coamps_microphys_driver_module.py</affectedPath><commitId>f51ab963e7cde71123d3afd8f77d077a35cf211f</commitId><timestamp>1791158488000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Jax silhs (#1372)

Adding silhs to jax.

To avoid randomness issues I added a silhs flag, l_lh_deterministic_test, that causes samples and random numbers to be generated in a deterministic order that is pretty basic but seems like a fine enough sampling method for a test that only matters for comparing jax to fortran matching. This required changing the fortran to have this deterministic test sample generation.

I added 3 new silhs tests:

rico_silhs with a 60s timestep matches up to 360 timestpes (6 hours)
lba_kk_silhs (lba with kk microphys instead of defauly morrison) passes up to 270ish steps, I set test to 240 steps
lba_silhs (with morrison) passes &lt;80, from past exploration this seems mainly due to morrison being in single precision

* Port SILHS sampling and microphysics coupling to JAX

Add native JAX Latin-hypercube sampling with explicit persistent permutation
state and case-owned initialization. Couple sampled states to KK and Morrison
microphysics in interactive and diagnostic modes, with weighted statistics,
substep averaging, and fatal-path/configuration guards.

Preserve Fortran routine structure, argument grouping, and source comments
throughout SILHS and the microphysics interface layer. Leave Fortran, MT95,
and the KK/Morrison numerical cores unchanged.

Validation: 103 focused sampling/interface/error-path checks and eight real
SILHS driver checks pass. Earlier interface/support validation and the
20-pair disabled-SILHS JAX/Fortran comparison also pass. Enabled SILHS random
stream parity is deferred to a future common-random-input comparison.

* Add deterministic SILHS comparisons and initialize JAX output grids

Add a default-off l_lh_deterministic_test flag to Fortran and JAX. Use
ordered strata and a shared four-value, binary-exact draw cycle in the
high-level LHS and overlap-pool routines, preserving sequence reuse and
leaving the native random generators unchanged. Reject independent
importance sampling and random starts in this comparison mode.

Add interactive RICO, LBA KK and native LBA Morrison configurations to the
JAX/Fortran comparison suite without relaxing the existing tolerances.
Initialize SILHS host statistics from JAX case setup so reduced statistics
files also contain Fortran's lh_zt and lh_sample_number coordinates.

Validation: Fortran build and source checks pass; 581 raw sampling values
match exactly; 59 sampler/contract/forwarding checks and 46 output/support
checks pass. RICO matches through 360 steps at 60s with standard statistics
and with reduced statistics at debug 0.

Document the remaining comparison limits: LBA KK's repeating-cycle Nrp2
difference starts at saved prefix 274, while its configured cap remains
275. Native Morrison's selected scope was verified with midpoint inputs;
the repeating-cycle comparison was not rerun after the requested stop.

* Match Fortran SILHS sampling precision and overlap

Preserve default-real rounding in inverse-normal coefficients before
promotion to the sample dtype. Apply vertical overlap to starting-level
straight Monte Carlo samples and retain source sampling failure status.

Add a live Fortran inverse-normal oracle and regressions for overlap and
the source sample-count check. Keep comparison limits and tolerances.

* Restore SILHS diagnostics and microphysics host error guards

Carry weight-limiter and Kessler diagnostic failures through compiled
returns and ErrInfo. Preserve Fortran debug guards at the host boundaries
so negative-debug tracing can retain per-column failure status.

Write ordered microphysics/SILHS settings and approximate correlations
from initialization into the standalone setup file. Keep report lifetime
and output-name resolution outside the timestep driver.

Add focused failure/report regressions and update the port notes with
repeating-input comparisons and the native Morrison compiler sensitivity.

* Document deterministic SILHS comparison patterns

Explain the ordered permutation, repeating within-stratum offsets and overlap
pool at every Fortran deterministic randomness override. Mirror the explanation
in JAX, including index phases, sequence reuse and independence from RNG state.

Executable statements are unchanged in both implementations; source/AST checks
confirm these changes only add comments.

* Use definition decorators for microphysics JIT boundaries

Move the existing PDF preparation, scheme tendency and hydrometeor transport
JIT boundaries onto their routine definitions with @partial(jax.jit, ...).
Keep the static arguments unchanged and call the source-named routines directly
from the standalone driver.

Update host injection and source-order checks for the canonical routine names.
Lightweight error/feedback fixtures still check eager and compiled routine
bodies; real standalone runs exercise the decorated entry points.

Validation: 140 focused tests; 28 passed, 2435 warnings in 453.39s (0:07:33); unchanged RICO360/LBAKK275
strict comparisons; supported whole-driver and reverse-mode tracing.

* Simplify deterministic SILHS sampling comments

Describe the repeatable-testing branches directly, with their base values and
index offsets. Show the first twelve pool entries for four columns, grouped by
sample, and use the same concise descriptions in the Fortran and JAX mirrors.

Only comments and argument documentation change; executable code is unchanged.

* Exclude E3SM from host compatibility updates

Keep the exclusion visible in shortcut discovery and the host workflow.
Treat sys_admin mappings as synchronization metadata, not the active host list.

* Shortening tests timesteps a bit and adding a space for niceness
</comment><date>2026-10-04 19:01:28 -0500</date><id>f51ab963e7cde71123d3afd8f77d077a35cf211f</id><msg>Jax silhs (#1372)</msg><path><editType>add</editType><file>clubb_jax/src/SILHS/silhs_importance_sample_module.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/morrison_microphys_module.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/gfdl_activation.py</file></path><path><editType>edit</editType><file>tests/pytests/test_jax_compare_forwarding.py</file></path><path><editType>add</editType><file>clubb_jax/src/SILHS/est_kessler_microphys_module.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/advance_microphys_module.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/stats_clubb_utilities.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_microphysics_host_errors.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/microphys_driver.py</file></path><path><editType>edit</editType><file>tests/run_jax_vs_fortran_cases.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/estimate_scm_microphys_module.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/mixed_moment_PDF_integrals.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_silhs_port_structure.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/fill_holes.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Input_fields/corr_varnce_input_reader.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/lh_microphys_driver_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/SILHS/math_utilities.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_microphysics_port_structure.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_silhs_diagnostics.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/KK_microphys_module.py</file></path><path><editType>edit</editType><file>src/SILHS/generate_uniform_sample_module.F90</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/microphys_init_cleanup.py</file></path><path><editType>add</editType><file>clubb_jax/src/SILHS/generate_uniform_sample_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_silhs_driver.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_silhs_sampling.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/silhs_category_variance_module.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/setup_clubb_pdf_params.py</file></path><path><editType>add</editType><file>clubb_jax/src/SILHS/lh_microphys_var_covar_module.py</file></path><path><editType>edit</editType><file>clubb_jax/JAX_CONVERSION_PLAN.md</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_microphysics_error_paths.py</file></path><path><editType>edit</editType><file>src/SILHS/parameters_silhs.F90</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_microphysics_integration.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_silhs_fortran_oracle.py</file></path><path><editType>edit</editType><file>LLM_prompts/update_host_models_after_clubb_changes.md</file></path><path><editType>add</editType><file>clubb_jax/src/SILHS/__init__.py</file></path><path><editType>add</editType><file>clubb_jax/src/SILHS/latin_hypercube_driver_module.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/precipitation_fraction.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/ice_dfsn_module.py</file></path><path><editType>edit</editType><file>clubb_jax/src/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/jax_stats.py</file></path><path><editType>edit</editType><file>src/SILHS/latin_hypercube_driver_module.F90</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/coamps_microphys_driver_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/SILHS/parameters_silhs.py</file></path><path><editType>edit</editType><file>clubb_jax/src/advance_clubb_to_end.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/parameters_microphys.py</file></path><path><editType>add</editType><file>clubb_jax/src/SILHS/silhs_api_module.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/cloud_sed_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/SILHS/latin_hypercube_arrays.py</file></path><path><editType>edit</editType><file>LLM_prompts/SHORTCUTS.md</file></path><path><editType>add</editType><file>clubb_jax/SILHS_PORT_NOTES.md</file></path><path><editType>edit</editType><file>src/Microphys/microphys_init_cleanup.F90</file></path><path><editType>add</editType><file>clubb_jax/src/SILHS/transform_to_pdf_module.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/pdf_hydromet_microphys_wrapper.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/src/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_jax/SILHS_PORT_NOTES.md</affectedPath><commitId>9233e347a33c4422eaadde0503786b7f6134ebcf</commitId><timestamp>1791167559000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Clarify current SILHS comparison limits

Separate current LBA test caps from earlier longer validation runs.
Remove trailing spaces from the radiation-call blank line.
</comment><date>2026-10-04 21:32:39 -0500</date><id>9233e347a33c4422eaadde0503786b7f6134ebcf</id><msg>Clarify current SILHS comparison limits</msg><path><editType>edit</editType><file>clubb_jax/SILHS_PORT_NOTES.md</file></path><path><editType>edit</editType><file>clubb_jax/src/advance_clubb_to_end.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/tests/test_kk_local_means.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_sigma_sqd_w.py</affectedPath><affectedPath>clubb_jax/tests/test_hydrometeor_mixed_moments.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_corr_varnce_module.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_autoconversion.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_limits_f_x_responder.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_nc_ncn_eqns.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_Nc_Ncn_eqns.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_sfc_varnce.py</affectedPath><affectedPath>clubb_jax/tests/test_pdf_utilities.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_wp3_on_wp2.py</affectedPath><affectedPath>clubb_jax/tests/test_penta_faithful.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_ice_cloud_frac_component.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_varnce.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_vertical_coherence.py</affectedPath><affectedPath>clubb_jax/tests/test_constants.py</affectedPath><affectedPath>clubb_jax/tests/test_read_surface_var_for_bc.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_pdf_skewness_diagnostics.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_pdf_utils.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_skewness.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_integration.py</affectedPath><affectedPath>clubb_jax/tests/test_mixing_length.py</affectedPath><affectedPath>clubb_jax/tests/test_differentiability.py</affectedPath><affectedPath>clubb_jax/tests/test_NNL_covar_vs_MM.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_constants.py</affectedPath><affectedPath>clubb_jax/tests/test_adg1_adg2_responder_params.py</affectedPath><affectedPath>clubb_jax/tests/test_penta_solver.py</affectedPath><affectedPath>clubb_jax/tests/test_kk_autoconversion.py</affectedPath><affectedPath>dash_app/pytests/test_dashboard_manager.py</affectedPath><affectedPath>clubb_jax/tests/test_mean_adv.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_config_flags_complete.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_udt_roundtrip.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_sponge.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_lapack_wrap.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_no_dead_imports.py</affectedPath><affectedPath>clubb_jax/tests/test_stats_output_time.py</affectedPath><affectedPath>clubb_jax/tests/microphysics_test_inputs.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_luhar.py</affectedPath><affectedPath>tests/pytests/test_jax_compare_forwarding.py</affectedPath><affectedPath>clubb_jax/tests/test_cloud_feedback_sfclyr.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_pdf_closure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_inverse_hydrostatic.py</affectedPath><affectedPath>clubb_jax/tests/test_mean_vert_vel_up_down.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mean_vert_vel_up_down.py</affectedPath><affectedPath>clubb_jax/tests/test_bivar_LL_covar_partial_rr_Nr.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_quadrivar_NNLL_covar_eq_swap.py</affectedPath><affectedPath>clubb_jax/tests/test_sponge_damp_xp23.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wp4_pdf.py</affectedPath><affectedPath>clubb_jax/tests/test_hydromet_pdf_parameter.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_covar_KK_mixt_frac_linearity.py</affectedPath><affectedPath>clubb_jax/tests/test_config_flags_complete.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp3.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_numerical_check.py</affectedPath><affectedPath>clubb_jax/tests/test_standalone_jax.py</affectedPath><affectedPath>dash_app/tests/run_dash_mixing_length_test.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_stats_output_time.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_remap.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_driver.py</affectedPath><affectedPath>dash_app/pytests/test_tutorial_tab.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial_rr_Nr.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_advance_xp2_xpyp.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_diagnose_correlations_module.py</affectedPath><affectedPath>clubb_jax/tests/test_quadrivar_NNLL_covar_eq_swap.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_string_conversion.py</affectedPath><affectedPath>clubb_jax/tests/test_component_precip_frac_specify.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_soil_vegetation.py</affectedPath><affectedPath>clubb_jax/tests/test_gabls3_night_stability.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_error_code.py</affectedPath><affectedPath>clubb_jax/tests/test_bivar_NL_mean_eq.py</affectedPath><affectedPath>clubb_jax/tests/test_silhs_driver.py</affectedPath><affectedPath>dash_app/pytests/test_analysis.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mirror_lower_triangular.py</affectedPath><affectedPath>clubb_jax/tests/test_wp2_wp3_terms.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_udt_return_contract.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_splat.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_t_in_k_module.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_tridiag_lu_solvers.py</affectedPath><affectedPath>jenkins_tests/clubb_jax/Jenkinsfile</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_utils.py</affectedPath><affectedPath>clubb_python_api/tests/test_advance_core_subs.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_numerical_check.py</affectedPath><affectedPath>clubb_jax/tests/test_splatting_autodiff.py</affectedPath><affectedPath>clubb_jax/tests/test_interpolation.py</affectedPath><affectedPath>clubb_python_api/tests/test_stats.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_comp_mu_sigma_hm.py</affectedPath><affectedPath>.agents/skills/clubb-pytests/SKILL.md</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_forcing_port_structure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_covariance_batch.py</affectedPath><affectedPath>clubb_jax/tests/test_mono_flux_limiter.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_transport.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_luhar_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_differentiability.py</affectedPath><affectedPath>clubb_jax/tests/test_pdf_integrals_all_mm.py</affectedPath><affectedPath>clubb_python_api/tests/test_stats_registry.in</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py</affectedPath><affectedPath>clubb_jax/tests/test_pressure_sounding_z.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_params_init.py</affectedPath><affectedPath>clubb_jax/tests/test_calendar.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_liquid_cloud_frac_component.py</affectedPath><affectedPath>clubb_jax/tests/test_rcm_sat_adj.py</affectedPath><affectedPath>clubb_jax/tests/test_mirror_lower_triangular.py</affectedPath><affectedPath>clubb_jax/tests/test_new_tsdadg_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_hydromet_pdf_parameter.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_stats_accumulate.py</affectedPath><affectedPath>clubb_jax/tests/test_spec_hum_to_mixing_ratio.py</affectedPath><affectedPath>clubb_jax/tests/test_silhs_port_structure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_xp3.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mono_flux_limiter.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_feedback_sfclyr.py</affectedPath><affectedPath>clubb_jax/tests/test_forcing_port_structure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_upscaled_variances.py</affectedPath><affectedPath>clubb_python_api/tests/test_python_port_api_coverage.py</affectedPath><affectedPath>clubb_jax/tests/test_fill_holes_autodiff.py</affectedPath><affectedPath>clubb_jax/tests/test_luhar_3d_driver.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_matrix_solver_wrapper.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_new_tsdadg_pdf.py</affectedPath><affectedPath>clubb_jax/tests/test_ly93_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py</affectedPath><affectedPath>clubb_jax/tests/test_T_in_K.py</affectedPath><affectedPath>clubb_jax/tests/test_covar_KK_mixt_frac_linearity.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_lapack_interfaces.py</affectedPath><affectedPath>jenkins_tests/clubb_python/Jenkinsfile</affectedPath><affectedPath>clubb_jax/tests/test_grid_operators.py</affectedPath><affectedPath>clubb_jax/tests/test_diagnose_upxp.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_wp4_pdf.py</affectedPath><affectedPath>clubb_jax/tests/test_windm_edsclrm_rhs.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_python_port_api_coverage.py</affectedPath><affectedPath>clubb_jax/tests/test_pdf_moment_integrals.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_mixing_length.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_uv_tndcy.py</affectedPath><affectedPath>clubb_jax/tests/test_microphysics_port_structure.py</affectedPath><affectedPath>clubb_jax/tests/test_xp2_xpyp_terms.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_liquid_cloud_frac_component.py</affectedPath><affectedPath>clubb_jax/tests/test_calculate_thvm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_liq_water_path.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_sfc_varnce.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_comp_corr_norm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad_lba.py</affectedPath><affectedPath>clubb_jax/tests/test_hydrometp2_zt.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_ice_dfsn.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_adg1_adg2_responder_params.py</affectedPath><affectedPath>clubb_jax/tests/test_quadrivar_covar_const_limits.py</affectedPath><affectedPath>clubb_jax/tests/test_mixed_moment_pdf_integrals.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_rtp2_from_chi.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_param_names.py</affectedPath><affectedPath>clubb_jax/tests/test_xpyp_term_ta_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py</affectedPath><affectedPath>.agents/skills/clubb-session-retrospective/SKILL.md</affectedPath><affectedPath>clubb_jax/tests/test_smooth_heaviside.py</affectedPath><affectedPath>dash_app/pytests/auto_llm_generated_pytests/README.md</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_params_pack_roundtrip.py</affectedPath><affectedPath>clubb_jax/tests/test_pos_definite.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_const_vs_MM.py</affectedPath><affectedPath>clubb_jax/tests/test_pressure_coord_forcing.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_interpolation.py</affectedPath><affectedPath>clubb_jax/tests/test_advance_xp3_simplified.py</affectedPath><affectedPath>clubb_jax/tests/test_simple_rad.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_lapack_wrap.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_update_xp2_mc.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calculate_w_responder_params.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_tridiag_lu_solvers.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_setter_var_params.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_matrix_solver_wrapper.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_advance_xm_wpxp.py</affectedPath><affectedPath>clubb_jax/AGENTS.md</affectedPath><affectedPath>clubb_jax/tests/test_calculate_w_responder_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial.py</affectedPath><affectedPath>clubb_jax/tests/test_radiation_port_structure.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_refresh_pdf9_parcel_ensemble_lab.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_local_means.py</affectedPath><affectedPath>clubb_jax/tests/test_close_luhar_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py</affectedPath><affectedPath>clubb_jax/tests/test_kk_rico_oracle.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_pdf_closure_driver.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_mixing_length.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_numerical_check_setters.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_new_tsdadg.py</affectedPath><affectedPath>clubb_python_api/tests/test_init_sequence.py</affectedPath><affectedPath>clubb_jax/tests/test_fill_holes_mean.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_time_select.py</affectedPath><affectedPath>clubb_jax/tests/test_sfc_varnce.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_turbulent_adv_pdf.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_bicgstab_solvers.py</affectedPath><affectedPath>clubb_jax/tests/test_remapping_module.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_gfdl_activation.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_w_up_in_cloud.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_meta.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_drop_sed.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_sliding_window.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_error_code.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_gabls3_night_stability.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_interpolation.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_driver_error_checks.py</affectedPath><affectedPath>clubb_jax/tests/test_fill_holes_global.py</affectedPath><affectedPath>clubb_jax/tests/test_silhs_sampling.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_spurious_source.py</affectedPath><affectedPath>clubb_jax/tests/test_kk_covariance_batch.py</affectedPath><affectedPath>clubb_jax/tests/microphysics_coefficients.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pressure_sounding_z.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_vs_MM.py</affectedPath><affectedPath>clubb_jax/tests/test_pvertinterp.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_pdf_closure_driver.py</affectedPath><affectedPath>clubb_jax/tests/test_numerical_check_setters.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_global.py</affectedPath><affectedPath>dash_app/pytests/test_agent_services.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_saturation.py</affectedPath><affectedPath>clubb_jax/tests/test_clip_skewness.py</affectedPath><affectedPath>AGENTS.md</affectedPath><affectedPath>clubb_python_api/tests/test_udt_roundtrip.py</affectedPath><affectedPath>clubb_jax/tests/test_error_code.py</affectedPath><affectedPath>clubb_jax/tests/test_routine_placement.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_const_limits.py</affectedPath><affectedPath>clubb_jax/tests/test_xpyp_term_ta_godunov.py</affectedPath><affectedPath>clubb_jax/tests/test_f2py_advance_xm_wpxp.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_binormal_moments.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_pdf.py</affectedPath><affectedPath>clubb_jax/tests/test_trivar_NLL_mean_eq.py</affectedPath><affectedPath>clubb_jax/tests/test_cos_solar_zen.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_diffusion.py</affectedPath><affectedPath>clubb_jax/tests/test_nov11.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_init_pressure.py</affectedPath><affectedPath>clubb_jax/tests/test_setter_var_params.py</affectedPath><affectedPath>clubb_python_api/tests/test_argument_contract_audit.py</affectedPath><affectedPath>clubb_jax/tests/test_xm_correction_wpxp_cl.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_routine_placement.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_runtime_info.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calendar.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_read_surface_var_for_bc.py</affectedPath><affectedPath>clubb_jax/pytests/microphysics_test_inputs.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_advance_windm_edsclrm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_error_paths.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mean_adv.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_port_structure.py</affectedPath><affectedPath>utilities/pytests/auto_llm_generated_pytests/README.md</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cholesky_factor.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_autodiff.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_radiation_module.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_advance_core.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_file_functions.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py</affectedPath><affectedPath>clubb_jax/tests/run_rico_microphysics_oracle_test.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_interpolation.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_new_hybrid_pdf_main.py</affectedPath><affectedPath>clubb_jax/tests/test_compute_uv_tndcy.py</affectedPath><affectedPath>clubb_jax/tests/test_diagnose_correlations.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnose_correlations.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_radiation_port_structure.py</affectedPath><affectedPath>clubb_jax/tests/test_KK_Nrm_tendencies.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_xprcp_component.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_transport.py</affectedPath><affectedPath>clubb_python_api/pytests/test_stats_registry.in</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_pos_definite_module.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_variance.py</affectedPath><affectedPath>clubb_jax/tests/test_solver.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_penta_lu_solvers.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pressure_coord_forcing.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_rad_extended_atmosphere.py</affectedPath><affectedPath>clubb_jax/tests/test_microphysics_error_paths.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_max_cubic_root.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_remap.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_KK_Nrm_tendencies.py</affectedPath><affectedPath>clubb_jax/pytests/port_structure_helpers.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_stats.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_denorm_transform_corr.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_meta.py</affectedPath><affectedPath>clubb_python_api/tests/test_udt_return_contract.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</affectedPath><affectedPath>clubb_jax/tests/test_diffusion.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py</affectedPath><affectedPath>clubb_jax/tests/test_liq_water_path.py</affectedPath><affectedPath>clubb_jax/tests/test_compute_gamma_skw.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_T_in_K.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_corr_w_hm_n.py</affectedPath><affectedPath>clubb_jax/tests/test_compute_xp3.py</affectedPath><affectedPath>clubb_jax/tests/test_update_xp2_mc.py</affectedPath><affectedPath>clubb_jax/tests/test_trivar_NNL_covar_eq.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnose_upxp.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_rcm_sat_adj.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_advance_core_subs.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrometp2_zt.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_roots.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mixed_moment_pdf_integrals.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wp3_on_wp2.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_t_in_k_module.py</affectedPath><affectedPath>experimental/experimental_pdfs/README.md</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_luhar.py</affectedPath><affectedPath>clubb_jax/tests/test_spurious_source.py</affectedPath><affectedPath>clubb_jax/tests/test_corr_varnce.py</affectedPath><affectedPath>clubb_jax/tests/test_bivar_LL_covar_partial.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnostic_cache.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_calc_roots.py</affectedPath><affectedPath>clubb_jax/tests/test_cloud_drop_sed.py</affectedPath><affectedPath>clubb_jax/tests/test_xm_wpxp_terms.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_new_pdf.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_skx.py</affectedPath><affectedPath>clubb_jax/tests/test_soil_vegetation.py</affectedPath><affectedPath>clubb_jax/tests/test_bivar_LL_mean_const.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_gamma_skw.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_grid_operators.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_host_errors.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calculate_thvm.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_new_hybrid_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_skx.py</affectedPath><affectedPath>clubb_jax/tests/test_remapping_ppm.py</affectedPath><affectedPath>clubb_jax/tests/test_new_pdf_main.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_remapping_module.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_mono_flux.py</affectedPath><affectedPath>tests/pytests/jax_comparison_inputs.py</affectedPath><affectedPath>clubb_jax/tests/test_w_up_in_cloud.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cobra_sfclyr.py</affectedPath><affectedPath>clubb_jax/tests/test_simple_rad_lba.py</affectedPath><affectedPath>clubb_jax/tests/test_index_mapping.py</affectedPath><affectedPath>clubb_jax/tests/test_cloud_correlate.py</affectedPath><affectedPath>clubb_jax/tests/test_cholesky_factor.py</affectedPath><affectedPath>clubb_jax/tests/test_clip_covar.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_mixed_moment_allocation.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_advance_wp2_wp3.py</affectedPath><affectedPath>clubb_jax/tests/test_time_select.py</affectedPath><affectedPath>clubb_jax/tests/test_silhs_fortran_oracle.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_calc_roots.py</affectedPath><affectedPath>clubb_python_api/README.md</affectedPath><affectedPath>clubb_jax/tests/test_pdf_params_pack_roundtrip.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_new_pdf_main.py</affectedPath><affectedPath>clubb_jax/tests/test_responder_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cos_solar_zen.py</affectedPath><affectedPath>tests/README.md</affectedPath><affectedPath>clubb_jax/tests/test_rad_extended_atmosphere.py</affectedPath><affectedPath>clubb_jax/tests/test_diagnostic_cache.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_pos_definite_module.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_index_mapping.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_xpthvp_terms.py</affectedPath><affectedPath>clubb_jax/tests/test_set_sfc_value_of_flux_profiles.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mixing_length.py</affectedPath><affectedPath>clubb_python_api/tests/conftest.py</affectedPath><affectedPath>clubb_jax/tests/test_wp2_wp3_lhs_terms.py</affectedPath><affectedPath>jenkins_tests/clubb_dash/Jenkinsfile</affectedPath><affectedPath>clubb_jax/tests/run_jax_timestep_gradient_test.py</affectedPath><affectedPath>clubb_python_api/tests/test_init_pressure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py</affectedPath><affectedPath>clubb_jax/tests/test_cholesky_corr_mtx_approx.py</affectedPath><affectedPath>clubb_jax/tests/test_sfc_flux.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_corr_varnce_module.py</affectedPath><affectedPath>clubb_jax/tests/test_saturation.py</affectedPath><affectedPath>clubb_jax/tests/test_jax_cli_options.py</affectedPath><affectedPath>clubb_jax/tests/test_runtime_info.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_component_precip_frac_specify.py</affectedPath><affectedPath>clubb_jax/tests/test_lba_sfclyr.py</affectedPath><affectedPath>clubb_jax/tests/test_precip_fraction.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_validation_checks.py</affectedPath><affectedPath>clubb_jax/tests/run_silhs_driver_test.py</affectedPath><affectedPath>clubb_jax/tests/test_adg2_driver.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_splat.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_transport_2g_prototype.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_matrix_operations.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_moment_integrals.py</affectedPath><affectedPath>clubb_python_api/run_pytests.sh</affectedPath><affectedPath>clubb_jax/tests/test_coefs_semiimpl.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_lba_sfclyr.py</affectedPath><affectedPath>clubb_jax/tests/test_radiation_module.py</affectedPath><affectedPath>clubb_jax/tests/test_max_cubic_root.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_wpxpyp_pdf.py</affectedPath><affectedPath>clubb_jax/tests/test_validation_checks.py</affectedPath><affectedPath>clubb_jax/tests/test_skx_func.py</affectedPath><affectedPath>clubb_jax/tests/test_fill_holes_sliding_window.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_new_pdf.py</affectedPath><affectedPath>LLM_prompts/SHORTCUTS.md</affectedPath><affectedPath>LLM_prompts/pytest_workflow.md</affectedPath><affectedPath>clubb_jax/tests/test_calc_pdf_chi_mean_var.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_file_functions.py</affectedPath><affectedPath>clubb_jax/tests/test_binormal_moments.py</affectedPath><affectedPath>clubb_jax/tests/test_hydrostatic.py</affectedPath><affectedPath>clubb_jax/tests/test_denorm_transform_corr.py</affectedPath><affectedPath>LLM_prompts/update_python_api_and_drivers.md</affectedPath><affectedPath>clubb_jax/tests/test_new_hybrid_pdf_main.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_ly93.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_comp_corrs_binormal.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_close_luhar_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_saturation.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_coefs_semiimpl.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_xprcp_component.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_xpthvp_terms.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_advance_xp3_simplified.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_utils.py</affectedPath><affectedPath>clubb_jax/tests/test_no_dead_functions.py</affectedPath><affectedPath>clubb_jax/tests/test_pdf_params_init.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_component_corr_ip.py</affectedPath><affectedPath>tests/pytests/test_bindiff_report.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_binormal_moments.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_jit_compile.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_sunray_sw.py</affectedPath><affectedPath>clubb_jax/tests/test_transform_pdf_chi_eta_component.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_remapping_ppm.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_pdf_closure.py</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/README.md</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</affectedPath><affectedPath>clubb_jax/tests/test_silhs_diagnostics.py</affectedPath><affectedPath>clubb_jax/tests/test_unsupported_config_guards.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pvertinterp.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_no_dead_functions.py</affectedPath><affectedPath>clubb_jax/tests/test_full_timestep_grad.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_pdf_utils.py</affectedPath><affectedPath>clubb_jax/tests/test_microphysics_integration.py</affectedPath><affectedPath>clubb_python_api/tests/test_string_conversion.py</affectedPath><affectedPath>clubb_jax/tests/test_cobra_sfclyr.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mpace_b_lba_tndcy.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_penta_faithful.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_stats_accumulate.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_precipitation_fraction.py</affectedPath><affectedPath>LLM_prompts/session_retrospective.md</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py</affectedPath><affectedPath>clubb_jax/tests/test_kk_upscaled_variances.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_ly93.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_lapack_interfaces.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_nc_ncn_eqns.py</affectedPath><affectedPath>LLM_prompts/README.md</affectedPath><affectedPath>clubb_jax/tests/test_silhs_surface_schemes.py</affectedPath><affectedPath>clubb_jax/tests/test_luhar_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_roots.py</affectedPath><affectedPath>clubb_jax/tests/test_clip_variance.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_init_sequence.py</affectedPath><affectedPath>clubb_jax/tests/test_microphysics_host_errors.py</affectedPath><affectedPath>clubb_jax/tests/test_NNL_covar_const_vs_MM.py</affectedPath><affectedPath>clubb_python_api/requirements.txt</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_precipitation_fraction.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_mono_flux.py</affectedPath><affectedPath>clubb_jax/tests/test_component_corr_ip.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_index_mapping.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wpxpyp_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_fortran_oracle.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_luhar_3d_driver.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_penta_lu_solvers.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_morrison_special.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_core.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_pdf9_parcel_ensemble_report.py</affectedPath><affectedPath>clubb_jax/tests/test_inverse_hydrostatic.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_new_hybrid_pdf.py</affectedPath><affectedPath>clubb_jax/tests/test_no_dead_imports.py</affectedPath><affectedPath>clubb_python_api/pytests/conftest.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_w_hm_n.py</affectedPath><affectedPath>clubb_jax/tests/test_NNL_covar_const_limits.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py</affectedPath><affectedPath>clubb_jax/tests/test_morrison_special.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_precip_fraction.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_spec_hum_to_mixing_ratio.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_saturation.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_penta_solver.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_correlate.py</affectedPath><affectedPath>clubb_jax/tests/test_new_pdf.py</affectedPath><affectedPath>clubb_jax/tests/test_jit_compile.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_lhs.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_flux.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_quadrivar_covar_const_limits.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_covar.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py</affectedPath><affectedPath>clubb_jax/tests/test_Nc_Ncn_eqns.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_nov11.py</affectedPath><affectedPath>clubb_jax/tests/test_sunray_sw.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_mean_const.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_matrix_operations.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrometeor_mixed_moments.py</affectedPath><affectedPath>dash_app/pytests/test_equations.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pos_definite.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_ly93_pdf.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_sponge.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrostatic.py</affectedPath><affectedPath>clubb_jax/tests/test_advance_helper_extras.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_ice_cloud_frac_component.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_corr_norm_cholesky.py</affectedPath><affectedPath>clubb_jax/tests/test_limits_f_x_responder.py</affectedPath><affectedPath>clubb_jax/tests/test_windm_edsclrm_lhs.py</affectedPath><affectedPath>clubb_jax/tests/test_numerics_autodiff.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_index_mapping.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py</affectedPath><affectedPath>clubb_jax/tests/test_mpace_b_lba_tndcy.py</affectedPath><affectedPath>tests/run_pytests.sh</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_utilities.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cholesky_corr_mtx_approx.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_mean.py</affectedPath><affectedPath>clubb_jax/tests/test_stats_writer.py</affectedPath><affectedPath>clubb_jax/tests/test_param_names.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_advance_xp3.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_numerics_autodiff.py</affectedPath><affectedPath>clubb_jax/tests/test_compute_sigma_sqd_w.py</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/README.md</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_bicgstab_solvers.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_adg2_driver.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_new_pdf.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_diagnose_correlations_module.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/KK_upscaled_turbulent_sed.py</affectedPath><affectedPath>clubb_jax/pytests/microphysics_coefficients.py</affectedPath><affectedPath>clubb_jax/tests/test_bugsrad.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_responder_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_corr_varnce.py</affectedPath><affectedPath>clubb_jax/tests/test_ice_dfsn.py</affectedPath><affectedPath>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_turbulent_adv_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_set_sfc_value_of_flux_profiles.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_norm_cholesky.py</affectedPath><affectedPath>clubb_jax/SILHS_PORT_NOTES.md</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_new_tsdadg.py</affectedPath><affectedPath>clubb_jax/tests/test_pdf_binormal_moments.py</affectedPath><affectedPath>clubb_jax/tests/test_comp_corr_norm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_integrals_all_mm.py</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_jax_silhs_forwarding.py</affectedPath><affectedPath>clubb_jax/tests/test_gfdl_activation.py</affectedPath><affectedPath>clubb_jax/tests/test_compute_rtp2_from_chi.py</affectedPath><commitId>9afedd80dbc4a1f64989768f1f5124eb03483513</commitId><timestamp>1791171294000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Organize pytest admission, ownership and Jenkins coverage (#1377)

* Organize pytest coverage, generated admission and Jenkins ownership

* Tidy moved pytest helper formatting

* Isolate native JAX pytest failures and fix migration validation

* Prepare Dash CI Node runtime without system npm

* Prune incidental UI assertions and clarify required-input failures

* Keep pytest promotion paths stable and validate API fixtures

* Apply pytest review revisions and consolidate JAX CI

* Keep pytest discovery and admission in the runners

* Limit Jenkins additions to focused pytest stages

* Keep component-specific validation beside Dash and JAX
</comment><date>2026-10-04 22:34:54 -0500</date><id>9afedd80dbc4a1f64989768f1f5124eb03483513</id><msg>Organize pytest admission, ownership and Jenkins coverage (#1377)</msg><path><editType>delete</editType><file>clubb_jax/tests/test_adg1_adg2_responder_params.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_gfdl_activation.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_no_dead_functions.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_pdf_binormal_moments.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_python_port_api_coverage.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_diagnostic_cache.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/test_stats_registry.in</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wp3_on_wp2.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_covar_KK_mixt_frac_linearity.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_pdf_moment_integrals.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_new_tsdadg_pdf.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_udt_return_contract.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_mixed_moment_pdf_integrals.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pvertinterp.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_ly93.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_radiation_port_structure.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calc_comp_mu_sigma_hm.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/README.md</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calculate_w_responder_params.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_numerical_check_setters.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_transport.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_rtp2_from_chi.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_param_names.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_sigma_sqd_w.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_dashboard_manager.py</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_jax_silhs_forwarding.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_read_surface_var_for_bc.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_windm_edsclrm_rhs.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_ice_dfsn.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_params_pack_roundtrip.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_numerical_check.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_diagnose_correlations.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_rcm_sat_adj.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/port_structure_helpers.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_set_sfc_value_of_flux_profiles.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_turbulent_adv_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrometp2_zt.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_limits_f_x_responder.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_quadrivar_covar_const_limits.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_numerics_autodiff.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_bivar_NL_mean_eq.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_diagnose_correlations_module.py</file></path><path><editType>edit</editType><file>clubb_jax/SILHS_PORT_NOTES.md</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_luhar.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_drop_sed.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mean_vert_vel_up_down.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_varnce.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_error_paths.py</file></path><path><editType>edit</editType><file>tests/pytests/test_bindiff_report.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_meta.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_variance.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_kk_autoconversion.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_lba_sfclyr.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_advance_wp2_wp3.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_rcm_sat_adj.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/microphysics_coefficients.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_kk_upscaled_variances.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_silhs_driver.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_new_tsdadg.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_ly93_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrometeor_mixed_moments.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_mixing_length.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_no_dead_functions.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_sunray_sw.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_agent_services.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_cloud_correlate.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_jit_compile.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calendar.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_constants.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_setter_var_params.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_config_flags_complete.py</file></path><path><editType>add</editType><file>clubb_jax/tests/run_silhs_driver_test.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_liq_water_path.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_advance_xp3.py</file></path><path><editType>edit</editType><file>clubb_python_api/run_pytests.sh</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calc_xpthvp_terms.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_xm_wpxp_terms.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_tridiag_lu_solvers.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_cos_solar_zen.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_unsupported_config_guards.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_port_structure.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_responder_params.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_pdf_utils.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_diffusion.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_bicgstab_solvers.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_index_mapping.py</file></path><path><editType>edit</editType><file>experimental/experimental_pdfs/README.md</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calc_wp4_pdf.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_clip_variance.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_interpolation.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calendar.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_stats_output_time.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_new_pdf_main.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_NNL_covar_const_vs_MM.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_routine_placement.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_kk_rico_oracle.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_turbulent_adv_pdf.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_saturation.py</file></path><path><editType>edit</editType><file>tests/pytests/test_jax_compare_forwarding.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_interpolation.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_stats_registry.in</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_xp3.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_hydrometeor_mixed_moments.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_rad_extended_atmosphere.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_advance_windm_edsclrm.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_udt_roundtrip.py</file></path><path><editType>edit</editType><file>LLM_prompts/update_python_api_and_drivers.md</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calculate_thvm.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_comp_corr_norm.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_component_precip_frac_specify.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_soil_vegetation.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_kk_local_means.py</file></path><path><editType>add</editType><file>utilities/pytests/auto_llm_generated_pytests/README.md</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_standalone_jax.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_pdf_utilities.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_radiation_port_structure.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_stats_accumulate.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_autodiff.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_set_sfc_value_of_flux_profiles.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_differentiability.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_routine_placement.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnose_correlations.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_numerical_check.py</file></path><path><editType>edit</editType><file>tests/run_pytests.sh</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_advance_helper_extras.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_setter_var_params.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_precipitation_fraction.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_gfdl_activation.py</file></path><path><editType>edit</editType><file>LLM_prompts/SHORTCUTS.md</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calc_wpxpyp_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_mean_const.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_radiation_module.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_sponge_damp_xp23.py</file></path><path><editType>delete</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_pdf9_parcel_ensemble_report.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wp4_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_denorm_transform_corr.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_autoconversion.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_rad_extended_atmosphere.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_nc_ncn_eqns.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_grid_operators.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_read_surface_var_for_bc.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_compute_xp3.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_file_functions.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_pressure_coord_forcing.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_radiation_module.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial_rr_Nr.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cos_solar_zen.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calc_comp_corrs_binormal.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_adg1_adg2_responder_params.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_stats_accumulate.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_hydrometp2_zt.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_solver.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_bicgstab_solvers.py</file></path><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_init_sequence.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mono_flux_limiter.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_forcing_port_structure.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_responder_params.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calc_corr_norm_cholesky.py</file></path><path><editType>delete</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_vertical_coherence.py</file></path><path><editType>edit</editType><file>clubb_jax/AGENTS.md</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py</file></path><path><editType>add</editType><file>dash_app/tests/run_dash_mixing_length_test.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_w_hm_n.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_xpyp_term_ta_godunov.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_luhar_params.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_pos_definite_module.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_feedback_sfclyr.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_transform_pdf_chi_eta_component.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_string_conversion.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_close_luhar_pdf.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_calc_roots.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_clip_skewness.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_mixing_length.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_compute_sigma_sqd_w.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_comp_corr_norm.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_mono_flux.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_new_pdf_main.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_Nc_Ncn_eqns.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_gabls3_night_stability.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_NNL_covar_vs_MM.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_diffusion.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_jax_cli_options.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_constants.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_spurious_source.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_pdf_closure.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_penta_lu_solvers.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_advance_xp3_simplified.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_pdf_integrals_all_mm.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_calc_roots.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_xprcp_component.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_luhar.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_gamma_skw.py</file></path><path><editType>edit</editType><file>clubb_python_api/requirements.txt</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_liquid_cloud_frac_component.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_grid_operators.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_skx_func.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_new_hybrid_pdf_main.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_pos_definite_module.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_T_in_K.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_hydromet_pdf_parameter.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mirror_lower_triangular.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_skewness.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_max_cubic_root.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_validation_checks.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_morrison_special.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cholesky_factor.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_nc_ncn_eqns.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_advance_core.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_limits_f_x_responder.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_analysis.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_adg2_driver.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_T_in_K.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_remapping_ppm.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_lapack_interfaces.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_max_cubic_root.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_precip_fraction.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_wp2_wp3_lhs_terms.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_remapping_module.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_cobra_sfclyr.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_xpthvp_terms.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/microphysics_test_inputs.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_advance_core_subs.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mixing_length.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_jax/Jenkinsfile</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_inverse_hydrostatic.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_norm_cholesky.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_microphysics_port_structure.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_init_sequence.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_jit_compile.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_flux.py</file></path><path><editType>add</editType><file>.agents/skills/clubb-session-retrospective/SKILL.md</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_cholesky_corr_mtx_approx.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_splat.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_integrals_all_mm.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_bivar_LL_covar_partial_rr_Nr.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_init_pressure.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_binormal_moments.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_bivar_LL_mean_const.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_const_limits.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_penta_solver.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_covariance_batch.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_compute_uv_tndcy.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_meta.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_string_conversion.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_no_dead_imports.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_smooth_heaviside.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_mpace_b_lba_tndcy.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_fill_holes_global.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_component_precip_frac_specify.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_new_tsdadg_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad_lba.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_quadrivar_NNLL_covar_eq_swap.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_interpolation.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_pressure_sounding_z.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_stats.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_numerical_check_setters.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_inverse_hydrostatic.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_equations.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_lapack_interfaces.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_update_xp2_mc.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_wp2_wp3_terms.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_stats_writer.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_quadrivar_covar_const_limits.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_time_select.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_covar.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_compute_rtp2_from_chi.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_ly93.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_utilities.py</file></path><path><editType>add</editType><file>LLM_prompts/pytest_workflow.md</file></path><path><editType>add</editType><file>clubb_jax/tests/run_jax_timestep_gradient_test.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_cloud_feedback_sfclyr.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_pdf_params_init.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py</file></path><path><editType>delete</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_mixed_moment_allocation.py</file></path><path><editType>edit</editType><file>AGENTS.md</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_init_pressure.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_lapack_wrap.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_pvertinterp.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_fill_holes_sliding_window.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_NNL_covar_const_limits.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_udt_return_contract.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_new_hybrid_pdf.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_xpyp_term_ta_pdf.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/conftest.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_Nc_Ncn_eqns.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pos_definite.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_pdf_closure_driver.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_KK_Nrm_tendencies.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_interpolation.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/KK_microphys/KK_upscaled_turbulent_sed.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_microphysics_host_errors.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/conftest.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_diagnose_correlations_module.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_corr_varnce.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_pdf_utils.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_new_pdf.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_transport.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_stats.py</file></path><path><editType>add</editType><file>tests/pytests/jax_comparison_inputs.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_index_mapping.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_new_pdf.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_t_in_k_module.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_mixing_length.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_ly93_pdf.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_differentiability.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_fill_holes_autodiff.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_skx.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_f2py_advance_xm_wpxp.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_matrix_operations.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_pos_definite.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_validation_checks.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_advance_core_subs.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_corr_varnce_module.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_error_code.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_bivar_LL_covar_partial.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_covar_KK_mixt_frac_linearity.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_adg2_driver.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_remap.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_splat.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_pdf_closure.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_coefs_semiimpl.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_spec_hum_to_mixing_ratio.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wpxpyp_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_params_init.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_luhar_3d_driver.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_luhar_3d_driver.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_soil_vegetation.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_corr_varnce_module.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_udt_roundtrip.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_fill_holes_mean.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pressure_sounding_z.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_penta_lu_solvers.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_sfc_flux.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calc_ice_cloud_frac_component.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calc_xprcp_component.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_argument_contract_audit.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_saturation.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_update_xp2_mc.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_const_vs_MM.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_remap.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_advance_core.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_hydromet_pdf_parameter.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_no_dead_imports.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calculate_w_responder_params.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_matrix_operations.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_tutorial_tab.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_advance_xp3_simplified.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_spurious_source.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_w_up_in_cloud.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_utils.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_bugsrad.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_error_code.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_pdf_closure_driver.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_pdf.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_advance_xp2_xpyp.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_moment_integrals.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_remapping_ppm.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_simple_rad.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_silhs_sampling.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_local_means.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_luhar_params.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calc_roots.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_tridiag_lu_solvers.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_new_hybrid_pdf_main.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_corr_varnce.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_xp2_xpyp_terms.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calc_wp3_on_wp2.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_global.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/microphysics_test_inputs.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_host_errors.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_clip_covar.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calculate_thvm.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_error_code.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_cloud_drop_sed.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cobra_sfclyr.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_diagnose_upxp.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_roots.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_binormal_moments.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_hydrostatic.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_silhs_surface_schemes.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mixed_moment_pdf_integrals.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_sunray_sw.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_numerics_autodiff.py</file></path><path><editType>add</editType><file>clubb_jax/tests/run_rico_microphysics_oracle_test.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_close_luhar_pdf.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_mono_flux.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_python/Jenkinsfile</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_sfc_varnce.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cholesky_corr_mtx_approx.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_runtime_info.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_matrix_solver_wrapper.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_lapack_wrap.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_precipitation_fraction.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_fortran_oracle.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_cholesky_factor.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrostatic.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_new_tsdadg.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_uv_tndcy.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_advance_xp3.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_kk_covariance_batch.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_upscaled_variances.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_nov11.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_full_timestep_grad.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_binormal_moments.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_coefs_semiimpl.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_silhs_fortran_oracle.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_splatting_autodiff.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_correlate.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_vs_MM.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_sponge.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calc_corr_w_hm_n.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_w_up_in_cloud.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_denorm_transform_corr.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_ice_dfsn.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_silhs_port_structure.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_matrix_solver_wrapper.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_microphysics_integration.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnostic_cache.py</file></path><path><editType>add</editType><file>dash_app/pytests/auto_llm_generated_pytests/README.md</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_utils.py</file></path><path><editType>edit</editType><file>LLM_prompts/README.md</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_mean_vert_vel_up_down.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_file_functions.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_liq_water_path.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_morrison_special.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_driver_error_checks.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_python_port_api_coverage.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_sponge.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_component_corr_ip.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_silhs_diagnostics.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_remapping_module.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pressure_coord_forcing.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_index_mapping.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_xm_correction_wpxp_cl.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_mono_flux_limiter.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_param_names.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calc_pdf_chi_mean_var.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_windm_edsclrm_lhs.py</file></path><path><editType>add</editType><file>jenkins_tests/clubb_dash/Jenkinsfile</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_sliding_window.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_nov11.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mean_adv.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_new_pdf.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_microphysics_error_paths.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_trivar_NNL_covar_eq.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_index_mapping.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_saturation.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_ice_cloud_frac_component.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_compute_gamma_skw.py</file></path><path><editType>add</editType><file>LLM_prompts/session_retrospective.md</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_saturation.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_penta_solver.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calc_pdf_skewness_diagnostics.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_forcing_port_structure.py</file></path><path><editType>edit</editType><file>clubb_python_api/README.md</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_lhs.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_quadrivar_NNLL_covar_eq_swap.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/microphysics_coefficients.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_new_hybrid_pdf.py</file></path><path><editType>delete</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_refresh_pdf9_parcel_ensemble_lab.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_calc_liquid_cloud_frac_component.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_stats_output_time.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_spec_hum_to_mixing_ratio.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_mirror_lower_triangular.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_sfc_varnce.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_lba_sfclyr.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_trivar_NLL_mean_eq.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mpace_b_lba_tndcy.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_mean_adv.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_mean.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_skx.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_component_corr_ip.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_precip_fraction.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_pdf_params_pack_roundtrip.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_integration.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_penta_faithful.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_config_flags_complete.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnose_upxp.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/README.md</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_gabls3_night_stability.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_driver.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_penta_faithful.py</file></path><path><editType>delete</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_transport_2g_prototype.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_advance_xm_wpxp.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_simple_rad_lba.py</file></path><path><editType>add</editType><file>clubb_python_api/pytests/auto_llm_generated_pytests/test_call_tree_sfc_varnce.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_KK_Nrm_tendencies.py</file></path><path><editType>add</editType><file>.agents/skills/clubb-pytests/SKILL.md</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_new_pdf.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_runtime_info.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_call_tree_t_in_k_module.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_time_select.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>utilities/stats_json_to_namelist.py</affectedPath><affectedPath>input/stats/README</affectedPath><affectedPath>dash_app/shared/stats.py</affectedPath><affectedPath>dash_app/run_tab/tab.py</affectedPath><affectedPath>dash_app/persistence.py</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>dash_app/run_tab/runtime.py</affectedPath><affectedPath>input/stats/stats.json</affectedPath><affectedPath>dash_app/run_tab/callbacks_selection.py</affectedPath><affectedPath>dash_app/run_tab/stats.py</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>dash_app/services/models.py</affectedPath><affectedPath>dash_app/assets/33_stats_tree.js</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>dash_app/run_tab/discovery.py</affectedPath><affectedPath>dash_app/pytests/test_stats_selection.py</affectedPath><affectedPath>dash_app/DEVELOPMENT.md</affectedPath><affectedPath>utilities/pytests/test_stats_json_to_namelist.py</affectedPath><affectedPath>dash_app/assets/11_tab_run_theme.css</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>dash_app/pytests/test_persistence.py</affectedPath><commitId>feb2438c46510eaadecd3e0c3bdede3df2939ac1</commitId><timestamp>1791171498000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Add hierarchical JSON statistics selection and Dash editor (#1378)

* Add hierarchical JSON stats selection and Dash editor

* Ignore locally saved custom stats configurations
</comment><date>2026-10-04 22:38:18 -0500</date><id>feb2438c46510eaadecd3e0c3bdede3df2939ac1</id><msg>Add hierarchical JSON statistics selection and Dash editor (#1378)</msg><path><editType>add</editType><file>dash_app/shared/stats.py</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>add</editType><file>utilities/stats_json_to_namelist.py</file></path><path><editType>edit</editType><file>dash_app/persistence.py</file></path><path><editType>edit</editType><file>.gitignore</file></path><path><editType>add</editType><file>utilities/pytests/test_stats_json_to_namelist.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/pytests/test_persistence.py</file></path><path><editType>add</editType><file>dash_app/assets/33_stats_tree.js</file></path><path><editType>edit</editType><file>dash_app/assets/11_tab_run_theme.css</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>add</editType><file>input/stats/stats.json</file></path><path><editType>edit</editType><file>dash_app/run_tab/runtime.py</file></path><path><editType>edit</editType><file>input/stats/README</file></path><path><editType>add</editType><file>dash_app/pytests/test_stats_selection.py</file></path><path><editType>edit</editType><file>dash_app/DEVELOPMENT.md</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_selection.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/tab.py</file></path><path><editType>edit</editType><file>dash_app/services/models.py</file></path><path><editType>edit</editType><file>dash_app/shared/actions.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/discovery.py</file></path><path><editType>add</editType><file>dash_app/run_tab/stats.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>587</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/587/</url></nextBuild><previousBuild><number>585</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/585/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Gunther Huebler</shortDescription><userId>huebler</userId><userName>Gunther Huebler</userName></cause></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>585</buildNumber><marked><SHA1>1d1abb1d2fcf29eef75bfe3182b8b213a1c6001e</SHA1><branch><SHA1>1d1abb1d2fcf29eef75bfe3182b8b213a1c6001e</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>1d1abb1d2fcf29eef75bfe3182b8b213a1c6001e</SHA1><branch><SHA1>1d1abb1d2fcf29eef75bfe3182b8b213a1c6001e</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>1d1abb1d2fcf29eef75bfe3182b8b213a1c6001e</SHA1><branch><SHA1>1d1abb1d2fcf29eef75bfe3182b8b213a1c6001e</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#585</displayName><duration>1868004</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #585</fullDisplayName><id>585</id><keepLog>false</keepLog><number>585</number><queueId>9625</queueId><result>SUCCESS</result><timestamp>1791075458592</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/585/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/stats_netcdf.F90</affectedPath><commitId>5a618af3b1fa969ad22fc01e46db81f7bc71f449</commitId><timestamp>1791058620000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Serialize NetCDF statistics output across OpenMP threads
</comment><date>2026-10-03 15:17:00 -0500</date><id>5a618af3b1fa969ad22fc01e46db81f7bc71f449</id><msg>Serialize NetCDF statistics output across OpenMP threads</msg><path><editType>edit</editType><file>src/CLUBB_core/stats_netcdf.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_tuner.py</affectedPath><affectedPath>run_scripts/run_clubb_w_varying_flags.py</affectedPath><affectedPath>jenkins_tests/clubb_python/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_tuner/Jenkinsfile</affectedPath><affectedPath>run_scripts/README.md</affectedPath><affectedPath>tests/test_monoflux_limiter_GPU.py</affectedPath><affectedPath>tests/pytests/test_bindiff_report.py</affectedPath><affectedPath>utilities/pytests/test_time_clubb.py</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/utilities/refresh_pdf9_parcel_ensemble_lab.py</affectedPath><affectedPath>tests/README.md</affectedPath><affectedPath>tests/run_clubb_conv_test.py</affectedPath><affectedPath>run_scripts/run_scm_loss.py</affectedPath><affectedPath>postprocessing/latin_hypercube_plotting/variance_analysis_scripts/rms_vs_sample_points/silhs_varying_sp_output.sh</affectedPath><affectedPath>tests/check_budget_balance.py</affectedPath><affectedPath>utilities/time_clubb.py</affectedPath><affectedPath>utilities/pytests/test_run_script_arguments.py</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>tests/run_jax_vs_fortran_cases.py</affectedPath><affectedPath>dash_app/pytests/test_pyplotgen_export.py</affectedPath><affectedPath>jenkins_tests/clubb_plots/Jenkinsfile</affectedPath><affectedPath>dash_app/tune_tab/runtime.py</affectedPath><affectedPath>tests/test_fire_tuner.py</affectedPath><affectedPath>jenkins_tests/clubb_column_mirror/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_generalized_grid/Jenkinsfile</affectedPath><affectedPath>tuner/tune_clubb.py</affectedPath><affectedPath>dash_app/compile_tab/runtime.py</affectedPath><affectedPath>tests/run_thread_test.py</affectedPath><affectedPath>jenkins_tests/clubb_jax/Jenkinsfile</affectedPath><affectedPath>tests/check_mirrored_multi_col_output.py</affectedPath><affectedPath>jenkins_tests/clubb_single_prec_build/Jenkinsfile</affectedPath><affectedPath>tests/run_G_unit_tests.py</affectedPath><affectedPath>run_scripts/convergence_run/convergence_config.py</affectedPath><affectedPath>postprocessing/pyplotgen/README.md</affectedPath><affectedPath>postprocessing/pyplotgen/pyplotgen.py</affectedPath><affectedPath>tests/run_python_vs_fortran_cases.py</affectedPath><affectedPath>clubb_jax/tests/test_jax_cli_options.py</affectedPath><affectedPath>jenkins_tests/clubb_driver/Jenkinsfile</affectedPath><affectedPath>clubb_jax/tests/test_runtime_info.py</affectedPath><affectedPath>dash_app/compile_tab/build_selector.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>input/flag_sets/README.md</affectedPath><affectedPath>run_scripts/run_tuner_job.py</affectedPath><affectedPath>tests/run_restart_test.py</affectedPath><affectedPath>tuner/presets.py</affectedPath><affectedPath>tests/run_loss_output_consistency.py</affectedPath><affectedPath>dash_app/pytests/test_profile_tab.py</affectedPath><affectedPath>tuner/job_runtime.py</affectedPath><affectedPath>tests/pytests/test_jax_compare_forwarding.py</affectedPath><affectedPath>utilities/parse_argument_list/replace_err_code_type.py</affectedPath><affectedPath>tuner/system_defaults.py</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>utilities/print_tunable_parameters_table.py</affectedPath><affectedPath>tests/run_jax_comparison_mutation_test.py</affectedPath><affectedPath>tests/run_bindiff_w_flags.py</affectedPath><affectedPath>jenkins_tests/clubb_gpu_async_output_matching/Jenkinsfile</affectedPath><affectedPath>utilities/benchmark_converter.py</affectedPath><affectedPath>jenkins_tests/run_bindiff_w_varying_flags_against_master/Jenkinsfile</affectedPath><affectedPath>utilities/api_analysis/run_full_api_diagnostics.bash</affectedPath><affectedPath>utilities/CLUBBStandardsCheck.py</affectedPath><affectedPath>utilities/split_stats_to_legacy.py</affectedPath><affectedPath>jenkins_tests/clubb_basic_full_run/Jenkinsfile</affectedPath><affectedPath>run_scripts/run_scm_all.py</affectedPath><affectedPath>run_scripts/run_clubb_and_pyplotgen.py</affectedPath><affectedPath>jenkins_tests/clubb_gpu_vs_cpu_diffness/Jenkinsfile</affectedPath><affectedPath>dash_app/profile_tab/runtime.py</affectedPath><affectedPath>tests/run_stats_output_consistency.py</affectedPath><affectedPath>dash_app/pytests/test_compile_tab_build_status.py</affectedPath><affectedPath>compile.py</affectedPath><affectedPath>clubb_jax/tests/test_kk_rico_oracle.py</affectedPath><affectedPath>clubb_jax/runtime_info.py</affectedPath><affectedPath>utilities/api_analysis/create_module_table.py</affectedPath><affectedPath>utilities/api_analysis/api_commitment_test.py</affectedPath><affectedPath>utilities/setup_python_venv.py</affectedPath><affectedPath>dash_app/run_tab/runtime.py</affectedPath><affectedPath>utilities/convert_to_async.py</affectedPath><affectedPath>LLM_prompts/update_python_api_and_drivers.md</affectedPath><affectedPath>tests/pytests/test_column_mirror.py</affectedPath><affectedPath>tests/run_silhs_test.py</affectedPath><affectedPath>jenkins_tests/clubb_G_unit/Jenkinsfile</affectedPath><affectedPath>dash_app/plot_tab/pyplotgen_runtime.py</affectedPath><affectedPath>tests/analyze_tuner_sample_history.py</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>tests/pytests/test_run_clubb_conv_test.py</affectedPath><affectedPath>run_scripts/run_bindiff_all.py</affectedPath><affectedPath>postprocessing/pyplotgen/config/Style_definitions.py</affectedPath><affectedPath>utilities/create_multi_col_params.py</affectedPath><affectedPath>tuner/README.md</affectedPath><affectedPath>postprocessing/pyplotgen/src/CaseGallerySetup.py</affectedPath><commitId>1d1abb1d2fcf29eef75bfe3182b8b213a1c6001e</commitId><timestamp>1791075166000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Standardize script arguments  (#1373)

This is mainly changing the names of arguments to be clearer and more consistent, and replacing the usage of double dash options with single ones (I just like it better that way).

* Standardize script arguments and worker defaults

* Forward model options through the Python comparison harness

* Reuse existing modules for script argument helpers

* Fix script argument cleanup integration regressions

* Update API commitment wrapper for renamed exclusion option
</comment><date>2026-10-03 19:52:46 -0500</date><id>1d1abb1d2fcf29eef75bfe3182b8b213a1c6001e</id><msg>Standardize script arguments  (#1373)</msg><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>edit</editType><file>utilities/parse_argument_list/replace_err_code_type.py</file></path><path><editType>edit</editType><file>tuner/README.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_jax/Jenkinsfile</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/config/Style_definitions.py</file></path><path><editType>edit</editType><file>tests/check_budget_balance.py</file></path><path><editType>edit</editType><file>tests/run_thread_test.py</file></path><path><editType>edit</editType><file>utilities/convert_to_async.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_kk_rico_oracle.py</file></path><path><editType>edit</editType><file>utilities/api_analysis/api_commitment_test.py</file></path><path><editType>edit</editType><file>tuner/tune_clubb.py</file></path><path><editType>add</editType><file>utilities/pytests/test_run_script_arguments.py</file></path><path><editType>edit</editType><file>run_scripts/run_clubb_and_pyplotgen.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_plots/Jenkinsfile</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/pyplotgen.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/runtime.py</file></path><path><editType>edit</editType><file>tests/run_loss_output_consistency.py</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/src/CaseGallerySetup.py</file></path><path><editType>edit</editType><file>tests/pytests/test_column_mirror.py</file></path><path><editType>edit</editType><file>utilities/setup_python_venv.py</file></path><path><editType>edit</editType><file>tests/run_jax_comparison_mutation_test.py</file></path><path><editType>edit</editType><file>postprocessing/latin_hypercube_plotting/variance_analysis_scripts/rms_vs_sample_points/silhs_varying_sp_output.sh</file></path><path><editType>edit</editType><file>run_scripts/README.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_driver/Jenkinsfile</file></path><path><editType>edit</editType><file>tests/run_restart_test.py</file></path><path><editType>edit</editType><file>tuner/job_runtime.py</file></path><path><editType>edit</editType><file>tuner/system_defaults.py</file></path><path><editType>edit</editType><file>LLM_prompts/update_python_api_and_drivers.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_gpu_async_output_matching/Jenkinsfile</file></path><path><editType>edit</editType><file>clubb_jax/runtime_info.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm_all.py</file></path><path><editType>edit</editType><file>tests/run_clubb_conv_test.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_column_mirror/Jenkinsfile</file></path><path><editType>edit</editType><file>dash_app/tune_tab/runtime.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_G_unit/Jenkinsfile</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_generalized_grid/Jenkinsfile</file></path><path><editType>edit</editType><file>run_scripts/convergence_run/convergence_config.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm_loss.py</file></path><path><editType>edit</editType><file>tests/run_silhs_test.py</file></path><path><editType>edit</editType><file>tests/pytests/test_bindiff_report.py</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/README.md</file></path><path><editType>edit</editType><file>dash_app/pytests/test_profile_tab.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_gpu_vs_cpu_diffness/Jenkinsfile</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_python/Jenkinsfile</file></path><path><editType>edit</editType><file>tuner/presets.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_compile_tab_build_status.py</file></path><path><editType>edit</editType><file>tests/run_python_vs_fortran_cases.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/runtime.py</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_basic_full_run/Jenkinsfile</file></path><path><editType>edit</editType><file>utilities/benchmark_converter.py</file></path><path><editType>edit</editType><file>utilities/pytests/test_time_clubb.py</file></path><path><editType>edit</editType><file>utilities/time_clubb.py</file></path><path><editType>edit</editType><file>utilities/create_multi_col_params.py</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>run_scripts/run_tuner.py</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_runtime_info.py</file></path><path><editType>edit</editType><file>utilities/print_tunable_parameters_table.py</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/build_selector.py</file></path><path><editType>edit</editType><file>utilities/api_analysis/run_full_api_diagnostics.bash</file></path><path><editType>edit</editType><file>tests/pytests/test_jax_compare_forwarding.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_tuner/Jenkinsfile</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_jax_cli_options.py</file></path><path><editType>edit</editType><file>tests/run_jax_vs_fortran_cases.py</file></path><path><editType>edit</editType><file>input/flag_sets/README.md</file></path><path><editType>edit</editType><file>utilities/CLUBBStandardsCheck.py</file></path><path><editType>edit</editType><file>tests/run_G_unit_tests.py</file></path><path><editType>edit</editType><file>tests/analyze_tuner_sample_history.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/runtime.py</file></path><path><editType>edit</editType><file>tests/run_stats_output_consistency.py</file></path><path><editType>edit</editType><file>tests/check_mirrored_multi_col_output.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/pyplotgen_runtime.py</file></path><path><editType>edit</editType><file>utilities/split_stats_to_legacy.py</file></path><path><editType>edit</editType><file>utilities/api_analysis/create_module_table.py</file></path><path><editType>edit</editType><file>tests/pytests/test_run_clubb_conv_test.py</file></path><path><editType>edit</editType><file>run_scripts/run_tuner_job.py</file></path><path><editType>edit</editType><file>tests/run_bindiff_w_flags.py</file></path><path><editType>edit</editType><file>tests/test_fire_tuner.py</file></path><path><editType>edit</editType><file>jenkins_tests/run_bindiff_w_varying_flags_against_master/Jenkinsfile</file></path><path><editType>edit</editType><file>run_scripts/run_clubb_w_varying_flags.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_pyplotgen_export.py</file></path><path><editType>edit</editType><file>experimental/experimental_pdfs/python/dash_additions/utilities/refresh_pdf9_parcel_ensemble_lab.py</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_all.py</file></path><path><editType>edit</editType><file>tests/test_monoflux_limiter_GPU.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_single_prec_build/Jenkinsfile</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>586</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/586/</url></nextBuild><previousBuild><number>584</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/584/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>584</buildNumber><marked><SHA1>ec38f6a3b0805ee6ac8db48d845ddee0e7d11ac3</SHA1><branch><SHA1>ec38f6a3b0805ee6ac8db48d845ddee0e7d11ac3</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>ec38f6a3b0805ee6ac8db48d845ddee0e7d11ac3</SHA1><branch><SHA1>ec38f6a3b0805ee6ac8db48d845ddee0e7d11ac3</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>ec38f6a3b0805ee6ac8db48d845ddee0e7d11ac3</SHA1><branch><SHA1>ec38f6a3b0805ee6ac8db48d845ddee0e7d11ac3</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#584</displayName><duration>119364</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #584</fullDisplayName><id>584</id><keepLog>false</keepLog><number>584</number><queueId>9554</queueId><result>SUCCESS</result><timestamp>1791016028922</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/584/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_restart_silhs_gfortran_test/Jenkinsfile</affectedPath><affectedPath>run_scripts/run_clubb_w_varying_flags.py</affectedPath><affectedPath>jenkins_tests/clubb_python/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_plot_ifort_debug/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_BFB_r8029_flags_gfortran_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_tuner/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_timestep/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_G_unit_gfortran_tests/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/github_nightly_update_scripts/Jenkinsfile</affectedPath><affectedPath>run_scripts/README.md</affectedPath><affectedPath>jenkins_tests/clubb_timestep_convergence_gfortran_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_nvhpc_single_prec_build/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_openmp_gfortran_test/Jenkinsfile</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>utilities/pytests/test_create_case_namelist.py</affectedPath><affectedPath>jenkins_tests/clubb_backwards_compatibility_gfortran_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_plots/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_monoflux_CPU_vs_GPU_diff/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_gfortran_debug_run/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_nvhpc_debug_build/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_generalized_grid/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_column_mirror/Jenkinsfile</affectedPath><affectedPath>src/generalized_grid_test.F90</affectedPath><affectedPath>jenkins_tests/clubb_stats_output_consistency/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/LLM_FAILURE_AUTOMATION_DESIGN.md</affectedPath><affectedPath>jenkins_tests/clubb_ifort_build/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_generalized_vertical_grid_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_BFB_gfortran_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_jax/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_BFB_varying_flags_gfortran_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_python_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_single_prec_build/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_generalized_vert_grid_host_flags/Jenkinsfile</affectedPath><affectedPath>postprocessing/pyplotgen/pyplotgen.py</affectedPath><affectedPath>jenkins_tests/clubb_mac_gfortran_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_plot_solver_compare/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_driver/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_openmp/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_cmake_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_new_tuner_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_column_mirror_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_release_intel_build/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_rev_grid_matrix_solve_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_BFB_e3sm_flags_gfortran_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_BFB_multi_col_gpu_nvhpc_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_fire_tuning_gfortran_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_cmake/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_driver_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_gpu_async_output_matching/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_plot_nvhpc_gpu_vs_cpu/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/run_bindiff_w_varying_flags_against_master/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_gfortran_build/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_G_unit_reverse_dir_grid_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_basic_full_run/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_jax_tests/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_gpu_vs_cpu_diffness/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_check_budget_balance_gfortran/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_silhs_convergence_gfortran/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_timestep_gfortran_tests/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_api_commitment_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_stats_output_consistency_gfortran_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_G_unit/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_silhs_convergence/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_nvhpc_gpu_vs_cpu_diffness/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_error_handling/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_error_handling_gfortran_test/Jenkinsfile</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>jenkins_tests/clubb_fire_tuning/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_budget_balance/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_release_diff_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_restart_multicol_gfortran_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_restart/Jenkinsfile</affectedPath><commitId>01b5fa7cb4bdd981c17405c3d67992080c4b2ca9</commitId><timestamp>1790992696000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Jenkins test cleanup (#1371)

* Consolidate and simplify CLUBB branch Jenkins jobs

* Parallelize Jenkins workflows and preserve live job scripts

* Remove archive metadata from Jenkins scripts

* Let pyplotgen choose its own case worker count

* Remove retired historical Jenkins tests

* Remove superseded standalone Jenkins workflows

* Remove completed Jenkins migration records

* Resolve JSON overrides in the existing namelist generator

* Inline grid overrides with shared defaults and indent Jenkins scripts

* Preserve full-case debug coverage in combined Jenkins tests

* Separate full-case debug runs from Jenkins compiler matrix
</comment><date>2026-10-02 20:58:16 -0500</date><id>01b5fa7cb4bdd981c17405c3d67992080c4b2ca9</id><msg>Jenkins test cleanup (#1371)</msg><path><editType>edit</editType><file>jenkins_tests/LLM_FAILURE_AUTOMATION_DESIGN.md</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_timestep_convergence_gfortran_test/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_generalized_grid/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_timestep_gfortran_tests/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_G_unit/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_plots/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_column_mirror/Jenkinsfile</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_BFB_multi_col_gpu_nvhpc_test/Jenkinsfile</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_BFB_r8029_flags_gfortran_test/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_plot_solver_compare/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_nvhpc_debug_build/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_restart/Jenkinsfile</file></path><path><editType>edit</editType><file>run_scripts/README.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_release_diff_test/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_backwards_compatibility_gfortran_test/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_gfortran_build/Jenkinsfile</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_monoflux_CPU_vs_GPU_diff/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_rev_grid_matrix_solve_test/Jenkinsfile</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_BFB_e3sm_flags_gfortran_test/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_driver/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_jax/Jenkinsfile</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_BFB_gfortran_test/Jenkinsfile</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_BFB_varying_flags_gfortran_test/Jenkinsfile</file></path><path><editType>edit</editType><file>src/generalized_grid_test.F90</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_column_mirror_test/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_basic_full_run/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_G_unit_reverse_dir_grid_test/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_nvhpc_gpu_vs_cpu_diffness/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_openmp/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_restart_silhs_gfortran_test/Jenkinsfile</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_api_commitment_test/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_restart_multicol_gfortran_test/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_check_budget_balance_gfortran/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_stats_output_consistency_gfortran_test/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_new_tuner_test/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_plot_ifort_debug/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_generalized_vert_grid_host_flags/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_gfortran_debug_run/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/github_nightly_update_scripts/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_gpu_vs_cpu_diffness/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_nvhpc_single_prec_build/Jenkinsfile</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/pyplotgen.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_gpu_async_output_matching/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_stats_output_consistency/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_tuner/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_timestep/Jenkinsfile</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>add</editType><file>jenkins_tests/clubb_python/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_error_handling/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_single_prec_build/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_generalized_vertical_grid_test/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_openmp_gfortran_test/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_jax_tests/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_silhs_convergence/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_plot_nvhpc_gpu_vs_cpu/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_fire_tuning/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_python_test/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_G_unit_gfortran_tests/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_error_handling_gfortran_test/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_driver_test/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_mac_gfortran_test/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_cmake/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_fire_tuning_gfortran_test/Jenkinsfile</file></path><path><editType>edit</editType><file>run_scripts/run_clubb_w_varying_flags.py</file></path><path><editType>edit</editType><file>utilities/pytests/test_create_case_namelist.py</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_cmake_test/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_ifort_build/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_silhs_convergence_gfortran/Jenkinsfile</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_release_intel_build/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_budget_balance/Jenkinsfile</file></path><path><editType>edit</editType><file>jenkins_tests/run_bindiff_w_varying_flags_against_master/Jenkinsfile</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_tuner/Jenkinsfile</affectedPath><commitId>31c332794e716ac7d086ac96c5ae10ce56f55fba</commitId><timestamp>1790994241000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Run Jenkins tuner commands with the project Python environment
</comment><date>2026-10-02 21:24:01 -0500</date><id>31c332794e716ac7d086ac96c5ae10ce56f55fba</id><msg>Run Jenkins tuner commands with the project Python environment</msg><path><editType>edit</editType><file>jenkins_tests/clubb_tuner/Jenkinsfile</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_tuner_job.py</affectedPath><affectedPath>jenkins_tests/clubb_tuner/Jenkinsfile</affectedPath><affectedPath>run_scripts/run_scm_loss.py</affectedPath><commitId>ec38f6a3b0805ee6ac8db48d845ddee0e7d11ac3</commitId><timestamp>1790994567000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Initialize the project Python environment in loss and tuner runners
</comment><date>2026-10-02 21:29:27 -0500</date><id>ec38f6a3b0805ee6ac8db48d845ddee0e7d11ac3</id><msg>Initialize the project Python environment in loss and tuner runners</msg><path><editType>edit</editType><file>run_scripts/run_scm_loss.py</file></path><path><editType>edit</editType><file>run_scripts/run_tuner_job.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_tuner/Jenkinsfile</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>585</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/585/</url></nextBuild><previousBuild><number>583</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/583/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>583</buildNumber><marked><SHA1>70c5581b0784cb1117c9a4c0acc1d39be5c9e15c</SHA1><branch><SHA1>70c5581b0784cb1117c9a4c0acc1d39be5c9e15c</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>70c5581b0784cb1117c9a4c0acc1d39be5c9e15c</SHA1><branch><SHA1>70c5581b0784cb1117c9a4c0acc1d39be5c9e15c</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>70c5581b0784cb1117c9a4c0acc1d39be5c9e15c</SHA1><branch><SHA1>70c5581b0784cb1117c9a4c0acc1d39be5c9e15c</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#583</displayName><duration>81068</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #583</fullDisplayName><id>583</id><keepLog>false</keepLog><number>583</number><queueId>9266</queueId><result>SUCCESS</result><timestamp>1790929629579</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/583/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/README.md</affectedPath><affectedPath>run_scripts/run_bindiff_all.py</affectedPath><commitId>d7b8c3fb8977ea0824c0b8f3aa52a5346c3c92d3</commitId><timestamp>1790897173000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Fail bindiff on shape mismatches; optionally reject extra variables (#1370)

* Add opt-in strict NetCDF structure checks to bindiff

* Fail bindiff comparisons on any shape mismatch

* Trim strict bindiff PR scope

* Clarify strict bindiff variable matching

* Making shape mismatches only a warning by default again - this is in case someone wants to change how metadata is stored in the netcdf. For example,  new parameter is added to clubb_params, now the netcdf storage for clubb_params is 1 element bigger and the python will detect the sizes are not comparable (shape error) - we don't want this to cause this bindiff script to fail.
</comment><date>2026-10-01 18:26:13 -0500</date><id>d7b8c3fb8977ea0824c0b8f3aa52a5346c3c92d3</id><msg>Fail bindiff on shape mismatches; optionally reject extra variables (#1370)</msg><path><editType>edit</editType><file>run_scripts/run_bindiff_all.py</file></path><path><editType>edit</editType><file>run_scripts/README.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/src/Microphys/KK_microphys/parameters_KK.py</affectedPath><affectedPath>clubb_jax/tests/test_hydrometeor_mixed_moments.py</affectedPath><affectedPath>run_scripts/README.md</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/precipitation_fraction.py</affectedPath><affectedPath>clubb_jax/src/Microphys/cloud_sed_module.py</affectedPath><affectedPath>tests/pytests/test_bindiff_report.py</affectedPath><affectedPath>clubb_jax/tests/test_microphysics_port_structure.py</affectedPath><affectedPath>clubb_jax/src/Microphys/ice_dfsn_module.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys_module.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/PDF_integrals_means.py</affectedPath><affectedPath>tests/README.md</affectedPath><affectedPath>clubb_jax/tests/test_component_precip_frac_specify.py</affectedPath><affectedPath>clubb_jax/tests/test_morrison_special.py</affectedPath><affectedPath>clubb_jax/tests/test_kk_covariance_batch.py</affectedPath><affectedPath>clubb_jax/tests/microphysics_coefficients.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/PDF_integrals_covar.py</affectedPath><affectedPath>clubb_jax/src/Microphys/morrison_microphys_step.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/covariance_dv.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/lba.py</affectedPath><affectedPath>clubb_jax/src/Microphys/estimate_scm_microphys_module.py</affectedPath><affectedPath>tests/run_jax_vs_fortran_cases.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/fill_holes.py</affectedPath><affectedPath>clubb_jax/tests/test_unsupported_config_guards.py</affectedPath><affectedPath>clubb_jax/src/clubb_case_initalization.py</affectedPath><affectedPath>clubb_jax/src/Input_fields/corr_varnce_input_reader.py</affectedPath><affectedPath>clubb_jax/tests/test_microphysics_error_paths.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/parabolic_cylinder.py</affectedPath><affectedPath>clubb_jax/tests/test_microphysics_integration.py</affectedPath><affectedPath>clubb_jax/tests/test_differentiability.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/prescribe_forcings.py</affectedPath><affectedPath>clubb_jax/tests/test_kk_autoconversion.py</affectedPath><affectedPath>clubb_jax/tests/test_jax_cli_options.py</affectedPath><affectedPath>tests/run_python_vs_fortran_cases.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>input/flag_sets/README.md</affectedPath><affectedPath>clubb_jax/tests/test_stats_output_time.py</affectedPath><affectedPath>clubb_jax/tests/test_lba_sfclyr.py</affectedPath><affectedPath>clubb_jax/tests/microphysics_test_inputs.py</affectedPath><affectedPath>clubb_jax/src/Microphys/advance_microphys_module.py</affectedPath><affectedPath>tests/pytests/test_jax_compare_forwarding.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/KK_upscaled_covariances.py</affectedPath><affectedPath>clubb_jax/src/Microphys/Morrison_microphys/__init__.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/setup_clubb_pdf_params.py</affectedPath><affectedPath>clubb_jax/src/Microphys/gfdl_activation.py</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>clubb_jax/src/Microphys/microphys_driver.py</affectedPath><affectedPath>tests/run_jax_comparison_mutation_test.py</affectedPath><affectedPath>clubb_jax/src/Microphys/lh_microphys_driver_module.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/clex9_oct14.py</affectedPath><affectedPath>clubb_jax/src/Microphys/silhs_category_variance_module.py</affectedPath><affectedPath>clubb_jax/tests/test_cloud_drop_sed.py</affectedPath><affectedPath>jenkins_tests/clubb_jax_tests/Jenkinsfile</affectedPath><affectedPath>clubb_jax/src/Radiation/parameters_radiation.py</affectedPath><affectedPath>clubb_jax/tests/test_kk_rico_oracle.py</affectedPath><affectedPath>clubb_jax/tests/test_morrison_differentiable.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/KK_upscaled_turbulent_sed.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/kk_microphys_driver.py</affectedPath><affectedPath>clubb_jax/src/Microphys/parameters_microphys.py</affectedPath><affectedPath>LLM_prompts/update_python_api_and_drivers.md</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/KK_Nrm_tendencies.py</affectedPath><affectedPath>clubb_jax/src/Microphys/Morrison_microphys/module_mp_graupel.py</affectedPath><affectedPath>clubb_jax/tests/test_forcing_port_structure.py</affectedPath><affectedPath>clubb_jax/src/Microphys/pdf_hydromet_microphys_wrapper.py</affectedPath><affectedPath>clubb_jax/tests/test_ice_dfsn.py</affectedPath><affectedPath>clubb_jax/src/Microphys/morrison_microphys_module.py</affectedPath><affectedPath>run_scripts/run_bindiff_all.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/KK_upscaled_means.py</affectedPath><affectedPath>clubb_jax/src/Microphys/microphys_init_cleanup.py</affectedPath><affectedPath>clubb_jax/tests/test_morrison_rates.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/stats_clubb_utilities.py</affectedPath><affectedPath>clubb_jax/src/Microphys/mixed_moment_PDF_integrals.py</affectedPath><affectedPath>clubb_jax/src/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_jax/tests/test_gfdl_activation.py</affectedPath><affectedPath>clubb_jax/src/Microphys/coamps_microphys_driver_module.py</affectedPath><affectedPath>clubb_jax/src/Microphys/kk_microphys_step.py</affectedPath><commitId>70c5581b0784cb1117c9a4c0acc1d39be5c9e15c</commitId><timestamp>1790913575000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Adding Microhpysics to JAX (#1362)

* Enable JAX microphysics with Fortran-shaped interfaces

Connect KK and Morrison cores through microphysics initialization, PDF preparation, transport, sedimentation, statistics, and delayed feedback. Retain explicit guards and dummy interfaces for unsupported features.

Add DYCOMS2 RF02 DS to the JAX-versus-Fortran harness at 240 timesteps. The four-column CPU double comparison passes at the existing 1e-7 threshold. Morrison validation remains limited to synthetic interface checks.

* Add RICO and LBA KK microphysics comparisons

Configure per-case timestep limits, timesteps and namelist overrides in the
JAX-versus-Fortran harness. Add RICO at 380 steps of 60 seconds and the LBA
warm-rain KK variant for its full 360-step, six-hour duration.

Match Fortran multicolumn hydrometeor hole-filling grid metrics, keep lazy
KK module constants outside JAX tracing, resolve LBA radiation tables from
the configured forcing path, and use the source LBA surface-flux pi constant.
Update the existing surface-flux expectation and document coverage.

Validation: serial live comparisons pass for RICO 380, DYCOMS2 RF02 DS 240,
and LBA 360 at the unchanged 1e-7 thresholds with four columns and standard
statistics. All LBA prefixes and its comparison against release O2 pass.
Focused checks: 72 RICO/integration checks and 51 LBA/radiation checks pass.

* Replace draft JAX Morrison core with source-transcribed physics

Restore Morrison process assembly, sedimentation, corrections and diagnostics
with source float32 state and native arithmetic. Consolidate the implementation
in module_mp_graupel.py, align public routine boundaries with Fortran, and remove
unused draft helpers and their tests. Fix column snow integration and conversion
of accumulated fallout to precipitation rates.

Add the lba_morrison strict startup case (60 steps at the unchanged 1e-7 threshold)
and isolate named variants' output directories. Update support documentation.

Validation: fresh serial LBA Morrison strict comparison passes; 42 focused
physics/interface checks pass. A separate six-hour, eight-column replay matches
all 25 pre-cleanup NetCDF variables exactly. Active ice/graupel validation remains
outstanding. Experimental ensemble tooling and investigation files are excluded.

* Little script/readme cleanup

* Little fixes for morrison code and adding morrison cases to jax_vs_fortran test, but with a short number of iterations since morrison is hard to compare (mainly because it's in single precision and that seems to hugely amplify floating-point error to be larger than our correctness tolerance that our test uses).

* Batching KK parabolic cylinder calls - this results in far less memory consumed because it's a big function and was called hundreds of times each timestep, and that consumes lots of memory because the jit step inlines each of those calls. Batching them allows us to compute them all in pretty much the same place with far less inlining. Also improving the jax_vs_fortran scripts handling of multiple processes - now it exits out correctly when using ctrl-c

* Little fix to prevent divergence in some fields with kk microphysics.

* Simplify JAX comparison CLI and reporting

* Adding a test, run_jax_comparison_mutation_test.py, that injects little code errors into the jax and runs the jax_vs_fortran script to ensure it fails.

* Little formatting changes

* Improving comment

* Update to the json return option from the runbindiff - clearer explaination and more functionality, making other scripts make use of it too

* Improving readme a bit

* Improving the jax_vs_fortran failure test by adding a case that tests what happens when a stat value is output by one file but not the other
</comment><date>2026-10-01 22:59:35 -0500</date><id>70c5581b0784cb1117c9a4c0acc1d39be5c9e15c</id><msg>Adding Microhpysics to JAX (#1362)</msg><path><editType>edit</editType><file>run_scripts/README.md</file></path><path><editType>add</editType><file>tests/pytests/test_bindiff_report.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/clex9_oct14.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/KK_microphys_module.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_forcing_port_structure.py</file></path><path><editType>add</editType><file>clubb_jax/tests/microphysics_test_inputs.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/KK_microphys/PDF_integrals_means.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_differentiability.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Radiation/parameters_radiation.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_microphysics_port_structure.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_kk_autoconversion.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_lba_sfclyr.py</file></path><path><editType>add</editType><file>clubb_jax/tests/microphysics_coefficients.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_component_precip_frac_specify.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Benchmark_cases/lba.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/KK_microphys/parabolic_cylinder.py</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/KK_microphys/KK_Nrm_tendencies.py</file></path><path><editType>edit</editType><file>tests/run_jax_vs_fortran_cases.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_cloud_drop_sed.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/pdf_hydromet_microphys_wrapper.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/KK_microphys/parameters_KK.py</file></path><path><editType>add</editType><file>tests/pytests/test_jax_compare_forwarding.py</file></path><path><editType>add</editType><file>tests/run_jax_comparison_mutation_test.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/fill_holes.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_jax_tests/Jenkinsfile</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_gfdl_activation.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_unsupported_config_guards.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/estimate_scm_microphys_module.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/morrison_microphys_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/silhs_category_variance_module.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/mixed_moment_PDF_integrals.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/precipitation_fraction.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/lh_microphys_driver_module.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_jax_cli_options.py</file></path><path><editType>edit</editType><file>clubb_jax/src/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/KK_microphys/KK_upscaled_covariances.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/microphys_driver.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_morrison_special.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/ice_dfsn_module.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/advance_microphys_module.py</file></path><path><editType>delete</editType><file>clubb_jax/src/Microphys/kk_microphys_step.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_kk_covariance_batch.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_morrison_differentiable.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/Morrison_microphys/module_mp_graupel.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_hydrometeor_mixed_moments.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Benchmark_cases/prescribe_forcings.py</file></path><path><editType>add</editType><file>clubb_jax/src/Input_fields/corr_varnce_input_reader.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/gfdl_activation.py</file></path><path><editType>edit</editType><file>tests/run_python_vs_fortran_cases.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/Morrison_microphys/__init__.py</file></path><path><editType>edit</editType><file>LLM_prompts/update_python_api_and_drivers.md</file></path><path><editType>edit</editType><file>clubb_jax/src/advance_clubb_to_end.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_kk_rico_oracle.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/setup_clubb_pdf_params.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/KK_microphys/covariance_dv.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/cloud_sed_module.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/KK_microphys/KK_upscaled_turbulent_sed.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_microphysics_error_paths.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/microphys_init_cleanup.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_microphysics_integration.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/stats_clubb_utilities.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/KK_microphys/KK_upscaled_means.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/parameters_microphys.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Microphys/KK_microphys/PDF_integrals_covar.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_ice_dfsn.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_stats_output_time.py</file></path><path><editType>edit</editType><file>input/flag_sets/README.md</file></path><path><editType>delete</editType><file>clubb_jax/src/Microphys/morrison_microphys_step.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/coamps_microphys_driver_module.py</file></path><path><editType>delete</editType><file>clubb_jax/tests/test_morrison_rates.py</file></path><path><editType>delete</editType><file>clubb_jax/src/Microphys/KK_microphys/kk_microphys_driver.py</file></path><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_all.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>584</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/584/</url></nextBuild><previousBuild><number>582</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/582/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Gunther Huebler</shortDescription><userId>huebler</userId><userName>Gunther Huebler</userName></cause></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>582</buildNumber><marked><SHA1>09639f38d1373114e73ae7fd501310bd7e8f744f</SHA1><branch><SHA1>09639f38d1373114e73ae7fd501310bd7e8f744f</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>09639f38d1373114e73ae7fd501310bd7e8f744f</SHA1><branch><SHA1>09639f38d1373114e73ae7fd501310bd7e8f744f</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>09639f38d1373114e73ae7fd501310bd7e8f744f</SHA1><branch><SHA1>09639f38d1373114e73ae7fd501310bd7e8f744f</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#582</displayName><duration>176793</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #582</fullDisplayName><id>582</id><keepLog>false</keepLog><number>582</number><queueId>9210</queueId><result>SUCCESS</result><timestamp>1790881194441</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/582/</url><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>583</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/583/</url></nextBuild><previousBuild><number>581</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/581/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>581</buildNumber><marked><SHA1>09639f38d1373114e73ae7fd501310bd7e8f744f</SHA1><branch><SHA1>09639f38d1373114e73ae7fd501310bd7e8f744f</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>09639f38d1373114e73ae7fd501310bd7e8f744f</SHA1><branch><SHA1>09639f38d1373114e73ae7fd501310bd7e8f744f</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>09639f38d1373114e73ae7fd501310bd7e8f744f</SHA1><branch><SHA1>09639f38d1373114e73ae7fd501310bd7e8f744f</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#581</displayName><duration>4577454</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #581</fullDisplayName><id>581</id><keepLog>false</keepLog><number>581</number><queueId>9132</queueId><result>FAILURE</result><timestamp>1790843323421</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/581/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>experimental/experimental_pdfs/python/report_scripts/directional_lscale_pdf_coherence/generate_report.py</affectedPath><affectedPath>doc/reports/resize_raster_assets.py</affectedPath><affectedPath>doc/reports/README.md</affectedPath><affectedPath>clubb_python_api/README.md</affectedPath><affectedPath>tuner/clubb_loss_driver.py</affectedPath><affectedPath>tests/run_clubb_conv_test.py</affectedPath><affectedPath>run_scripts/run_scm_loss.py</affectedPath><affectedPath>tests/check_budget_balance.py</affectedPath><affectedPath>tests/run_loss_metrics_test.py</affectedPath><affectedPath>launch_dashboard.sh</affectedPath><affectedPath>tests/README</affectedPath><affectedPath>tuner/clubb_loss_driver_test.py</affectedPath><affectedPath>clubb_python_api/tests/conftest.py</affectedPath><affectedPath>tuner/tune_clubb.py</affectedPath><affectedPath>postprocessing/check_budgets_balance/checkBudget.py</affectedPath><affectedPath>tests/run_thread_test.py</affectedPath><affectedPath>clubb_python_driver/__init__.py</affectedPath><affectedPath>tests/check_mirrored_multi_col_output.py</affectedPath><affectedPath>postprocessing/pyplotgen/requirements.txt</affectedPath><affectedPath>postprocessing/pyplotgen/README.md</affectedPath><affectedPath>run_scripts/convergence_run/convergence_config.py</affectedPath><affectedPath>postprocessing/pyplotgen/pyplotgen.py</affectedPath><affectedPath>tests/run_clubb_settings_validation_test.py</affectedPath><affectedPath>tests/run_python_vs_fortran_cases.py</affectedPath><affectedPath>dash_app/agent_integration/mcp_server.py</affectedPath><affectedPath>dash_app/requirements.txt</affectedPath><affectedPath>tests/run_restart_test.py</affectedPath><affectedPath>tests/run_loss_output_consistency.py</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>tests/run_pytests.sh</affectedPath><affectedPath>clubb_python_driver/clubb_standalone.py</affectedPath><affectedPath>utilities/benchmark_converter.py</affectedPath><affectedPath>tests/run_benchmark_converter_test.py</affectedPath><affectedPath>clubb_python_api/run_pytests.sh</affectedPath><affectedPath>utilities/split_stats_to_legacy.py</affectedPath><affectedPath>run_scripts/run_clubb_and_pyplotgen.py</affectedPath><affectedPath>tests/run_stats_output_consistency.py</affectedPath><affectedPath>compile.py</affectedPath><affectedPath>run_scripts/convergence_run/convergence_function.py</affectedPath><affectedPath>utilities/setup_python_venv.py</affectedPath><affectedPath>BUILD.md</affectedPath><affectedPath>clubb_python_api/requirements.txt</affectedPath><affectedPath>tests/run_silhs_test.py</affectedPath><affectedPath>tests/analyze_tuner_sample_history.py</affectedPath><affectedPath>run_scripts/convergence_run/plot_l2_convergence.py</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>run_scripts/run_bindiff_all.py</affectedPath><affectedPath>utilities/create_multi_col_params.py</affectedPath><affectedPath>README</affectedPath><affectedPath>dash_app/pytests/test_scm_override.py</affectedPath><commitId>fbd75c66dc7e14c9dbca7e418c37a679d3de47d3</commitId><timestamp>1790791702000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Venv improvement (#1367)

* Unify Python environment setup with uv

Add optional shared Python/F2PY setup and automatic Dash dependency installation. Keep JAX independent, preserve ordinary system-Python use, and update compile selection behavior for CLI and Dash.

* Harden shared Python environment and F2PY runtime selection

* Bootstrap shared Python environment from entry points

* Move install alias behavior to symlink branch
</comment><date>2026-09-30 13:08:22 -0500</date><id>fbd75c66dc7e14c9dbca7e418c37a679d3de47d3</id><msg>Venv improvement (#1367)</msg><path><editType>edit</editType><file>tests/check_mirrored_multi_col_output.py</file></path><path><editType>edit</editType><file>utilities/create_multi_col_params.py</file></path><path><editType>edit</editType><file>doc/reports/resize_raster_assets.py</file></path><path><editType>edit</editType><file>dash_app/requirements.txt</file></path><path><editType>edit</editType><file>clubb_python_api/README.md</file></path><path><editType>edit</editType><file>dash_app/pytests/test_scm_override.py</file></path><path><editType>edit</editType><file>tuner/clubb_loss_driver_test.py</file></path><path><editType>add</editType><file>utilities/setup_python_venv.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm_loss.py</file></path><path><editType>edit</editType><file>tests/run_loss_metrics_test.py</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>tests/run_silhs_test.py</file></path><path><editType>edit</editType><file>tuner/clubb_loss_driver.py</file></path><path><editType>edit</editType><file>BUILD.md</file></path><path><editType>edit</editType><file>experimental/experimental_pdfs/python/report_scripts/directional_lscale_pdf_coherence/generate_report.py</file></path><path><editType>edit</editType><file>tests/check_budget_balance.py</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/pyplotgen.py</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_all.py</file></path><path><editType>edit</editType><file>run_scripts/convergence_run/plot_l2_convergence.py</file></path><path><editType>edit</editType><file>tests/run_pytests.sh</file></path><path><editType>edit</editType><file>tests/run_thread_test.py</file></path><path><editType>edit</editType><file>README</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>edit</editType><file>utilities/benchmark_converter.py</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/README.md</file></path><path><editType>edit</editType><file>.gitignore</file></path><path><editType>edit</editType><file>tests/run_benchmark_converter_test.py</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/requirements.txt</file></path><path><editType>edit</editType><file>tests/run_clubb_conv_test.py</file></path><path><editType>edit</editType><file>utilities/split_stats_to_legacy.py</file></path><path><editType>edit</editType><file>clubb_python_api/requirements.txt</file></path><path><editType>edit</editType><file>tests/run_loss_output_consistency.py</file></path><path><editType>edit</editType><file>tests/run_stats_output_consistency.py</file></path><path><editType>edit</editType><file>dash_app/agent_integration/mcp_server.py</file></path><path><editType>edit</editType><file>clubb_python_driver/clubb_standalone.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/conftest.py</file></path><path><editType>edit</editType><file>postprocessing/check_budgets_balance/checkBudget.py</file></path><path><editType>edit</editType><file>clubb_python_driver/__init__.py</file></path><path><editType>edit</editType><file>run_scripts/convergence_run/convergence_config.py</file></path><path><editType>edit</editType><file>doc/reports/README.md</file></path><path><editType>edit</editType><file>run_scripts/convergence_run/convergence_function.py</file></path><path><editType>edit</editType><file>tests/README</file></path><path><editType>edit</editType><file>tests/run_restart_test.py</file></path><path><editType>edit</editType><file>run_scripts/run_clubb_and_pyplotgen.py</file></path><path><editType>edit</editType><file>tuner/tune_clubb.py</file></path><path><editType>edit</editType><file>tests/run_clubb_settings_validation_test.py</file></path><path><editType>edit</editType><file>clubb_python_api/run_pytests.sh</file></path><path><editType>edit</editType><file>tests/run_python_vs_fortran_cases.py</file></path><path><editType>edit</editType><file>launch_dashboard.sh</file></path><path><editType>edit</editType><file>tests/analyze_tuner_sample_history.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/pytests/test_compile_install_aliases.py</affectedPath><affectedPath>BUILD.md</affectedPath><affectedPath>dash_app/compile_tab/runtime.py</affectedPath><affectedPath>compile.py</affectedPath><affectedPath>dash_app/pytests/test_compile_tab_build_status.py</affectedPath><commitId>f5f8f9cb615e396a1a9913fe3b9470c63df93595</commitId><timestamp>1790792854000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Update selected install with command-line builds (#1369)
</comment><date>2026-09-30 13:27:34 -0500</date><id>f5f8f9cb615e396a1a9913fe3b9470c63df93595</id><msg>Update selected install with command-line builds (#1369)</msg><path><editType>edit</editType><file>dash_app/compile_tab/runtime.py</file></path><path><editType>add</editType><file>tests/pytests/test_compile_install_aliases.py</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>edit</editType><file>BUILD.md</file></path><path><editType>edit</editType><file>dash_app/pytests/test_compile_tab_build_status.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/README.md</affectedPath><affectedPath>tests/README</affectedPath><commitId>b9b446daeae9d0f9adb793b75429898922efac3e</commitId><timestamp>1790792931000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Making README a README.md
</comment><date>2026-09-30 13:28:51 -0500</date><id>b9b446daeae9d0f9adb793b75429898922efac3e</id><msg>Making README a README.md</msg><path><editType>add</editType><file>tests/README.md</file></path><path><editType>delete</editType><file>tests/README</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/src/clubb_case_initalization.py</affectedPath><affectedPath>src/CLUBB_core/parameters_tunable.F90</affectedPath><affectedPath>src/G_unit_test_types/spurious_source_test.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/clubb_api.py</affectedPath><affectedPath>clubb_python_api/tests/test_init_sequence.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/parameters_tunable_wrapper.F90</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/sam_lscale.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/parameters_tunable.py</affectedPath><affectedPath>clubb_python_api/tests/test_udt_return_contract.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</affectedPath><affectedPath>clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/parameters_tunable.py</affectedPath><affectedPath>clubb_python_driver/clubb_case_initalization.py</affectedPath><affectedPath>clubb_python_api/tests/test_advance_core_subs.py</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>src/CLUBB_core/clubb_api_module.F90</affectedPath><affectedPath>clubb_jax/tests/test_param_names.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</affectedPath><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/new_tsdadg_pdf.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_core.py</affectedPath><affectedPath>src/G_unit_test_types/rev_direction_grid_test.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</affectedPath><commitId>09639f38d1373114e73ae7fd501310bd7e8f744f</commitId><timestamp>1790794987000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Rename derived-parameter routine across CLUBB interfaces
</comment><date>2026-09-30 14:03:07 -0500</date><id>09639f38d1373114e73ae7fd501310bd7e8f744f</id><msg>Rename derived-parameter routine across CLUBB interfaces</msg><path><editType>edit</editType><file>clubb_python_api/tests/test_init_sequence.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/clubb_api_module.F90</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/parameters_tunable.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_advance_core_subs.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</file></path><path><editType>edit</editType><file>clubb_python_driver/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</file></path><path><editType>edit</editType><file>clubb_jax/src/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/clubb_api.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/parameters_tunable_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_param_names.py</file></path><path><editType>edit</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/sam_lscale.py</file></path><path><editType>edit</editType><file>src/G_unit_test_types/rev_direction_grid_test.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_udt_return_contract.py</file></path><path><editType>edit</editType><file>src/G_unit_test_types/spurious_source_test.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/parameters_tunable.F90</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/new_tsdadg_pdf.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/parameters_tunable.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_core.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>582</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/582/</url></nextBuild><previousBuild><number>580</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/580/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>580</buildNumber><marked><SHA1>89be3d5fd401ed3393a0a251b98752e552010ab9</SHA1><branch><SHA1>89be3d5fd401ed3393a0a251b98752e552010ab9</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>89be3d5fd401ed3393a0a251b98752e552010ab9</SHA1><branch><SHA1>89be3d5fd401ed3393a0a251b98752e552010ab9</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>89be3d5fd401ed3393a0a251b98752e552010ab9</SHA1><branch><SHA1>89be3d5fd401ed3393a0a251b98752e552010ab9</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#580</displayName><duration>751946</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #580</fullDisplayName><id>580</id><keepLog>false</keepLog><number>580</number><queueId>8988</queueId><result>SUCCESS</result><timestamp>1790670427236</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/580/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/src/CLUBB_core/precipitation_fraction.py</affectedPath><affectedPath>src/CLUBB_core/precipitation_fraction.F90</affectedPath><commitId>a4826465aeec11af80e51e711d1cc0b8287e96c0</commitId><timestamp>1790609573000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Remove upsilon 0 and 1 if branches (#1365)

* Removed unnecessary upsilon_precip_frac_rat == 0 or 1 checks

The read in parameter upsilon_precip_frac_rat is set in .in files.
upsilon_precip_frac_rat describes the precipitation ratio between the first and second
PDF component.
The edge cases, all perticipitation in one PDF (upsilon=0 or 1) had their
own if branches. These edge case branches are not strictly necessary as upsilon
should never be set to 0 or 1 and we can live with a tiny precipitation fraction of
precip_frac_tol in such a case.
Furthermore a logic error was present which would never execute the if branch for the upsilon=0 case anyway.
Per default upsilon is not set to 0 and afaik is not tested in the jenkins tests.
However if upsilon is read in as 0 or 1 this commit would be technically BIT_CHANGING.

A mirrored code removal in clubb-jax was also done.

* changed comment about role of upsilon a bit
</comment><date>2026-09-28 10:32:53 -0500</date><id>a4826465aeec11af80e51e711d1cc0b8287e96c0</id><msg>Remove upsilon 0 and 1 if branches (#1365)</msg><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/precipitation_fraction.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/precipitation_fraction.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_restart_multicol_gfortran_test/Jenkinsfile</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>tests/run_restart_test.py</affectedPath><affectedPath>jenkins_tests/clubb_restart_gfortran_test/Jenkinsfile</affectedPath><commitId>89be3d5fd401ed3393a0a251b98752e552010ab9</commitId><timestamp>1790614619000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Restart clubb 2d arr slicing fix (#1366)

* Fixed 2d arr passing into restart_clubb subroutine which expects a 1d arr

This only affects behaviour upon clubb restarts. Because restarts are more of a debug feature and disabled in all current "..._model.in"
files I don't see the necessity to mark with bit changing.

* Added multicol support to restart tests script

Forwarding any extra cli options to the run_scm.py script which run_restart.py calls. E.g. -multicol

* Changed the bomex jenkins restart test to run with multicol. Changed the jenkins test name
</comment><date>2026-09-28 11:56:59 -0500</date><id>89be3d5fd401ed3393a0a251b98752e552010ab9</id><msg>Restart clubb 2d arr slicing fix (#1366)</msg><path><editType>add</editType><file>jenkins_tests/clubb_restart_multicol_gfortran_test/Jenkinsfile</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>tests/run_restart_test.py</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_restart_gfortran_test/Jenkinsfile</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>581</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/581/</url></nextBuild><previousBuild><number>579</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/579/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>579</buildNumber><marked><SHA1>8f4f60104e839514cc8fa69801bebe0d1e26dfbb</SHA1><branch><SHA1>8f4f60104e839514cc8fa69801bebe0d1e26dfbb</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>8f4f60104e839514cc8fa69801bebe0d1e26dfbb</SHA1><branch><SHA1>8f4f60104e839514cc8fa69801bebe0d1e26dfbb</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>8f4f60104e839514cc8fa69801bebe0d1e26dfbb</SHA1><branch><SHA1>8f4f60104e839514cc8fa69801bebe0d1e26dfbb</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#579</displayName><duration>260625</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #579</fullDisplayName><id>579</id><keepLog>false</keepLog><number>579</number><queueId>8881</queueId><result>SUCCESS</result><timestamp>1790324829093</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/579/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tuner/request.py</affectedPath><affectedPath>utilities/check_scripts/check_exponents.py</affectedPath><affectedPath>utilities/README.md</affectedPath><affectedPath>tuner/parameter_ranges.py</affectedPath><affectedPath>utilities/check_scripts/check_uninitialized_output_variables.py</affectedPath><affectedPath>utilities/clubb_settings_validation.py</affectedPath><affectedPath>utilities/pytests/test_settings_rules.py</affectedPath><affectedPath>utilities/README</affectedPath><affectedPath>tests/run_clubb_settings_validation_test.py</affectedPath><affectedPath>utilities/check_for_errors.py</affectedPath><affectedPath>utilities/pytests/test_clubb_settings_resolution.py</affectedPath><commitId>8f4f60104e839514cc8fa69801bebe0d1e26dfbb</commitId><timestamp>1790261625000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>lil cleanup without directory refactoring done (#1364)

* lil utilities dir cleanup without directory refactoring

* Rename utilities/README to utilities/README.md

Pure rename with no content change, so git and GitHub detect it as a rename
rather than a delete plus create. -&gt; Did not work

* added gh links in readme
</comment><date>2026-09-24 09:53:45 -0500</date><id>8f4f60104e839514cc8fa69801bebe0d1e26dfbb</id><msg>lil cleanup without directory refactoring done (#1364)</msg><path><editType>edit</editType><file>tuner/request.py</file></path><path><editType>add</editType><file>utilities/README.md</file></path><path><editType>edit</editType><file>utilities/check_scripts/check_exponents.py</file></path><path><editType>edit</editType><file>utilities/pytests/test_clubb_settings_resolution.py</file></path><path><editType>edit</editType><file>utilities/clubb_settings_validation.py</file></path><path><editType>edit</editType><file>tuner/parameter_ranges.py</file></path><path><editType>edit</editType><file>utilities/check_scripts/check_uninitialized_output_variables.py</file></path><path><editType>edit</editType><file>tests/run_clubb_settings_validation_test.py</file></path><path><editType>edit</editType><file>utilities/check_for_errors.py</file></path><path><editType>delete</editType><file>utilities/README</file></path><path><editType>edit</editType><file>utilities/pytests/test_settings_rules.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>580</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/580/</url></nextBuild><previousBuild><number>578</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/578/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>578</buildNumber><marked><SHA1>8b60ee73f5faaa22d874985220f1bbaf9e2cc10f</SHA1><branch><SHA1>8b60ee73f5faaa22d874985220f1bbaf9e2cc10f</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>8b60ee73f5faaa22d874985220f1bbaf9e2cc10f</SHA1><branch><SHA1>8b60ee73f5faaa22d874985220f1bbaf9e2cc10f</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>8b60ee73f5faaa22d874985220f1bbaf9e2cc10f</SHA1><branch><SHA1>8b60ee73f5faaa22d874985220f1bbaf9e2cc10f</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#578</displayName><duration>185942</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #578</fullDisplayName><id>578</id><keepLog>false</keepLog><number>578</number><queueId>8805</queueId><result>SUCCESS</result><timestamp>1790238427125</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/578/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_jax_tests/Jenkinsfile</affectedPath><commitId>8b60ee73f5faaa22d874985220f1bbaf9e2cc10f</commitId><timestamp>1790198131000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Adding a stage in the jax test to just do a basic run with standard_stats
</comment><date>2026-09-23 16:15:31 -0500</date><id>8b60ee73f5faaa22d874985220f1bbaf9e2cc10f</id><msg>Adding a stage in the jax test to just do a basic run with standard_stats</msg><path><editType>edit</editType><file>jenkins_tests/clubb_jax_tests/Jenkinsfile</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>579</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/579/</url></nextBuild><previousBuild><number>577</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/577/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>577</buildNumber><marked><SHA1>bc8d70735e710ef36f81e42f58843908ae3ddcbc</SHA1><branch><SHA1>bc8d70735e710ef36f81e42f58843908ae3ddcbc</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>bc8d70735e710ef36f81e42f58843908ae3ddcbc</SHA1><branch><SHA1>bc8d70735e710ef36f81e42f58843908ae3ddcbc</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>bc8d70735e710ef36f81e42f58843908ae3ddcbc</SHA1><branch><SHA1>bc8d70735e710ef36f81e42f58843908ae3ddcbc</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#577</displayName><duration>1876311</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #577</fullDisplayName><id>577</id><keepLog>false</keepLog><number>577</number><queueId>8714</queueId><result>SUCCESS</result><timestamp>1790152028906</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/577/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>src/Benchmark_cases/time_dependent_input.F90</affectedPath><affectedPath>src/CLUBB_core/remapping_module.F90</affectedPath><affectedPath>src/Benchmark_cases/atex.F90</affectedPath><affectedPath>src/Benchmark_cases/prescribe_forcings.F90</affectedPath><commitId>eb20e0988129b0a57d5df04a39b5c4a965e2397f</commitId><timestamp>1790093259000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>F90 fix multicol+l add dycore grid (#1363)

fixed 2d array passing into 1d array fns. Technically BIT_CHANGING for multicol
</comment><date>2026-09-22 11:07:39 -0500</date><id>eb20e0988129b0a57d5df04a39b5c4a965e2397f</id><msg>F90 fix multicol+l add dycore grid (#1363)</msg><path><editType>edit</editType><file>src/CLUBB_core/remapping_module.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/prescribe_forcings.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/time_dependent_input.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/atex.F90</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>utilities/check_division.py</affectedPath><commitId>bc8d70735e710ef36f81e42f58843908ae3ddcbc</commitId><timestamp>1790104995000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Delete utilities/check_division.py

@shellwitz and I updated this script to python3, ran it, and discovered that it finds too many instances of division in CLUBB to be useful.  So let's delete it.
</comment><date>2026-09-22 14:23:15 -0500</date><id>bc8d70735e710ef36f81e42f58843908ae3ddcbc</id><msg>Delete utilities/check_division.py</msg><path><editType>delete</editType><file>utilities/check_division.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>578</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/578/</url></nextBuild><previousBuild><number>576</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/576/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>576</buildNumber><marked><SHA1>77b73e25b7c54c85e9714178efbd6dc893834dc5</SHA1><branch><SHA1>77b73e25b7c54c85e9714178efbd6dc893834dc5</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>77b73e25b7c54c85e9714178efbd6dc893834dc5</SHA1><branch><SHA1>77b73e25b7c54c85e9714178efbd6dc893834dc5</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>77b73e25b7c54c85e9714178efbd6dc893834dc5</SHA1><branch><SHA1>77b73e25b7c54c85e9714178efbd6dc893834dc5</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#576</displayName><duration>471621</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #576</fullDisplayName><id>576</id><keepLog>false</keepLog><number>576</number><queueId>8619</queueId><result>SUCCESS</result><timestamp>1789806426862</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/576/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>dash_app/shared/broker.py</affectedPath><affectedPath>dash_app/run_tab/tab.py</affectedPath><affectedPath>dash_app/plot_tab/case_cache.py</affectedPath><affectedPath>dash_app/shared/background.py</affectedPath><affectedPath>dash_app/profile_tab/callbacks.py</affectedPath><affectedPath>dash_app/shared/activity.py</affectedPath><affectedPath>utilities/pytests/test_time_clubb.py</affectedPath><affectedPath>dash_app/assets/14_tab_compile_theme.css</affectedPath><affectedPath>dash_app/pytests/test_selected_build.py</affectedPath><affectedPath>dash_app/compile_tab/callbacks.py</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/custom_plot.py</affectedPath><affectedPath>utilities/time_clubb.py</affectedPath><affectedPath>dash_app/misc_tab/layout.py</affectedPath><affectedPath>dash_app/shared/broker_protocol.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/pdf_contour_plot.py</affectedPath><affectedPath>dash_app/tune_tab/tab.py</affectedPath><affectedPath>dash_app/pytests/test_pyplotgen_export.py</affectedPath><affectedPath>dash_app/assets/37_workspace_persistence.js</affectedPath><affectedPath>dash_app/plot_tab/plot_types/shared.py</affectedPath><affectedPath>dash_app/persistence.py</affectedPath><affectedPath>dash_app/plot_tab/tasks.py</affectedPath><affectedPath>dash_app/assets/30_run_ui_resize.js</affectedPath><affectedPath>dash_app/compile_tab/tab.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_grid.py</affectedPath><affectedPath>dash_app/assets/34_plot_chooser.js</affectedPath><affectedPath>dash_app/shared/array_cache.py</affectedPath><affectedPath>dash_app/pytests/test_output_discovery.py</affectedPath><affectedPath>dash_app/plot_tab/tab.py</affectedPath><affectedPath>dash_app/assets/32_plots_constant_param_rows.js</affectedPath><affectedPath>utilities/timing_profiles.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_pyplotgen.py</affectedPath><affectedPath>dash_app/misc_tab/mixing_length_trajectories/analysis.py</affectedPath><affectedPath>dash_app/pytests/test_plot_tasks.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/timeheight_plot.py</affectedPath><affectedPath>dash_app/assets/36_tune_ui_resize.js</affectedPath><affectedPath>dash_app/pytests/test_profile_tab.py</affectedPath><affectedPath>dash_app/plot_tab/state.py</affectedPath><affectedPath>dash_app/pytests/test_plot_extraction.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>dash_app/misc_tab/tab.py</affectedPath><affectedPath>dash_app/pytests/test_pane_resize.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/budget_plot.py</affectedPath><affectedPath>dash_app/pytests/test_performance_polling.py</affectedPath><affectedPath>dash_app/plot_tab/layout.py</affectedPath><affectedPath>dash_app/plot_tab/async_callbacks.py</affectedPath><affectedPath>dash_app/profile_tab/runtime.py</affectedPath><affectedPath>dash_app/tutorial_tab/tab.py</affectedPath><affectedPath>dash_app/assets/31_plots_ui_resize.js</affectedPath><affectedPath>dash_app/lazy_tabs.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_controls.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_params.py</affectedPath><affectedPath>dash_app/tutorial_tab/layout.py</affectedPath><affectedPath>dash_app/app.py</affectedPath><affectedPath>dash_app/assets/33_plot_tasks.js</affectedPath><affectedPath>dash_app/plot_tab/pyplotgen_runtime.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/profile_plot.py</affectedPath><affectedPath>dash_app/pytests/test_plot_case_cache.py</affectedPath><affectedPath>dash_app/profile_tab/tab.py</affectedPath><affectedPath>dash_app/pytests/test_activity.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/subcolumn_plot.py</affectedPath><affectedPath>dash_app/services/profiles.py</affectedPath><affectedPath>dash_app/tune_tab/callbacks_workspaces.py</affectedPath><affectedPath>dash_app/pytests/test_param_disclosures.py</affectedPath><affectedPath>dash_app/DEVELOPMENT.md</affectedPath><affectedPath>dash_app/assets/12_tab_plots_theme.css</affectedPath><affectedPath>dash_app/pytests/test_plot_grid_updates.py</affectedPath><affectedPath>dash_app/shared/broker_client.py</affectedPath><affectedPath>dash_app/reports_tab/tab.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_case.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/timeseries_plot.py</affectedPath><affectedPath>dash_app/pytests/test_state_persistence.py</affectedPath><affectedPath>dash_app/pytests/test_app_startup.py</affectedPath><commitId>af35e5202409ab58c575e8d2841f59d31ba80c94</commitId><timestamp>1789748367000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Dash Improvements (#1360)

* Improve Dash plot responsiveness and bound data caches

* Dash improvements, mainly for performance

* Removing performance audit file that is no longer needed:
</comment><date>2026-09-18 11:19:27 -0500</date><id>af35e5202409ab58c575e8d2841f59d31ba80c94</id><msg>Dash Improvements (#1360)</msg><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/custom_plot.py</file></path><path><editType>edit</editType><file>dash_app/DEVELOPMENT.md</file></path><path><editType>edit</editType><file>utilities/pytests/test_time_clubb.py</file></path><path><editType>edit</editType><file>dash_app/assets/30_run_ui_resize.js</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/budget_plot.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_selected_build.py</file></path><path><editType>edit</editType><file>dash_app/reports_tab/tab.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/tab.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_params.py</file></path><path><editType>edit</editType><file>utilities/time_clubb.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/tab.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_plot_extraction.py</file></path><path><editType>edit</editType><file>utilities/timing_profiles.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/timeseries_plot.py</file></path><path><editType>edit</editType><file>dash_app/assets/12_tab_plots_theme.css</file></path><path><editType>add</editType><file>dash_app/plot_tab/case_cache.py</file></path><path><editType>delete</editType><file>dash_app/assets/32_plots_constant_param_rows.js</file></path><path><editType>edit</editType><file>dash_app/assets/37_workspace_persistence.js</file></path><path><editType>edit</editType><file>dash_app/pytests/test_param_disclosures.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/callbacks.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_grid.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_plot_grid_updates.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/subcolumn_plot.py</file></path><path><editType>edit</editType><file>dash_app/shared/actions.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_pyplotgen.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_pyplotgen_export.py</file></path><path><editType>edit</editType><file>dash_app/shared/background.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_state_persistence.py</file></path><path><editType>edit</editType><file>dash_app/tutorial_tab/layout.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_plot_tasks.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_profile_tab.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_output_discovery.py</file></path><path><editType>add</editType><file>dash_app/lazy_tabs.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/callbacks.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_pane_resize.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/tab.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/async_callbacks.py</file></path><path><editType>add</editType><file>dash_app/shared/array_cache.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/tasks.py</file></path><path><editType>edit</editType><file>dash_app/services/profiles.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_activity.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/pdf_contour_plot.py</file></path><path><editType>edit</editType><file>dash_app/tutorial_tab/tab.py</file></path><path><editType>edit</editType><file>dash_app/app.py</file></path><path><editType>add</editType><file>dash_app/assets/34_plot_chooser.js</file></path><path><editType>edit</editType><file>dash_app/assets/36_tune_ui_resize.js</file></path><path><editType>edit</editType><file>dash_app/shared/broker_protocol.py</file></path><path><editType>edit</editType><file>dash_app/assets/31_plots_ui_resize.js</file></path><path><editType>edit</editType><file>dash_app/shared/activity.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/shared.py</file></path><path><editType>edit</editType><file>dash_app/persistence.py</file></path><path><editType>edit</editType><file>dash_app/shared/broker.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_workspaces.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/pyplotgen_runtime.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_performance_polling.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/assets/14_tab_compile_theme.css</file></path><path><editType>edit</editType><file>dash_app/misc_tab/layout.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/runtime.py</file></path><path><editType>edit</editType><file>dash_app/shared/broker_client.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/profile_plot.py</file></path><path><editType>edit</editType><file>dash_app/misc_tab/mixing_length_trajectories/analysis.py</file></path><path><editType>edit</editType><file>dash_app/misc_tab/tab.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_app_startup.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/tab.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_plot_case_cache.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/layout.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/tab.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_case.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_controls.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/timeheight_plot.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/state.py</file></path><path><editType>add</editType><file>dash_app/assets/33_plot_tasks.js</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/README</affectedPath><commitId>5b5bf5f74f30e0332db965215e3de5e6baf72d6e</commitId><timestamp>1789749148000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Improving README section for column mirror test
</comment><date>2026-09-18 11:32:28 -0500</date><id>5b5bf5f74f30e0332db965215e3de5e6baf72d6e</id><msg>Improving README section for column mirror test</msg><path><editType>edit</editType><file>tests/README</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/src/CLUBB_core/fill_holes.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/LY93_pdf.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/new_hybrid_pdf.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/new_hybrid_pdf_main.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/adg1_adg2_3d_luhar_pdf.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/mixing_length.py</affectedPath><affectedPath>clubb_jax/tests/test_full_timestep_grad.py</affectedPath><affectedPath>clubb_jax/tests/test_fill_holes_mean.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/setup_clubb_pdf_params.py</affectedPath><affectedPath>clubb_jax/tests/test_fill_holes_global.py</affectedPath><affectedPath>clubb_jax/tests/test_differentiability.py</affectedPath><affectedPath>clubb_jax/tests/test_fill_holes_autodiff.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/new_pdf.py</affectedPath><affectedPath>clubb_jax/tests/test_transform_pdf_chi_eta_component.py</affectedPath><affectedPath>clubb_jax/tests/test_splatting_autodiff.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/pdf_closure_module.py</affectedPath><affectedPath>clubb_jax/src/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/new_tsdadg_pdf.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/pdf_utilities.py</affectedPath><affectedPath>clubb_jax/tests/test_fill_holes_sliding_window.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/advance_helper_module.py</affectedPath><affectedPath>clubb_jax/tests/test_numerics_autodiff.py</affectedPath><commitId>77b73e25b7c54c85e9714178efbd6dc893834dc5</commitId><timestamp>1789784882000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Making certain things differentiation safe, various parts had issues with sqrt or divisions that needed clipping for reverse mode calcualtions. Lot's of code sections seemed to already have worked around this with a safe_sqrt method (or some variation) that I standardized and put in advance_helper. (#1361)
</comment><date>2026-09-18 21:28:02 -0500</date><id>77b73e25b7c54c85e9714178efbd6dc893834dc5</id><msg>Making certain things differentiation safe, various parts had issues with sqrt or divisions that needed clipping for reverse mode calcualtions. Lot's of code sections seemed to already have worked around this with a safe_sqrt method (or some variation) that I standardized and put in advance_helper. (#1361)</msg><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/fill_holes.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/mixing_length.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_fill_holes_autodiff.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/new_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/new_hybrid_pdf_main.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_splatting_autodiff.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_fill_holes_global.py</file></path><path><editType>edit</editType><file>clubb_jax/src/advance_clubb_to_end.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/new_tsdadg_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_full_timestep_grad.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/advance_helper_module.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_fill_holes_mean.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_numerics_autodiff.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/LY93_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_transform_pdf_chi_eta_component.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/adg1_adg2_3d_luhar_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/setup_clubb_pdf_params.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/pdf_closure_module.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_fill_holes_sliding_window.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/pdf_utilities.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_differentiability.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/new_hybrid_pdf.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>577</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/577/</url></nextBuild><previousBuild><number>575</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/575/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>575</buildNumber><marked><SHA1>17b29a7e938300692cec5c6c7e78aae7b9578568</SHA1><branch><SHA1>17b29a7e938300692cec5c6c7e78aae7b9578568</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>17b29a7e938300692cec5c6c7e78aae7b9578568</SHA1><branch><SHA1>17b29a7e938300692cec5c6c7e78aae7b9578568</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>17b29a7e938300692cec5c6c7e78aae7b9578568</SHA1><branch><SHA1>17b29a7e938300692cec5c6c7e78aae7b9578568</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#575</displayName><duration>136734</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #575</fullDisplayName><id>575</id><keepLog>false</keepLog><number>575</number><queueId>8541</queueId><result>SUCCESS</result><timestamp>1789720027613</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/575/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/src/clubb_standalone.py</affectedPath><affectedPath>dash_app/profile_tab/callbacks.py</affectedPath><affectedPath>dash_app/pytests/test_jax_device.py</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>dash_app/assets/09_selected_build_badge.css</affectedPath><affectedPath>dash_app/pytests/test_selected_build.py</affectedPath><affectedPath>dash_app/compile_tab/callbacks.py</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>dash_app/shared/jax_device.py</affectedPath><affectedPath>clubb_jax/tests/test_radiation_module.py</affectedPath><affectedPath>dash_app/run_tab/telemetry.py</affectedPath><affectedPath>dash_app/assets/11_tab_run_theme.css</affectedPath><affectedPath>dash_app/profile_tab/runtime.py</affectedPath><affectedPath>tests/run_jax_vs_fortran_cases.py</affectedPath><affectedPath>clubb_jax/runtime_info.py</affectedPath><affectedPath>dash_app/run_tab/runtime.py</affectedPath><affectedPath>clubb_jax/requirements-metal.txt</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>clubb_jax/run_jax_wrapper.sh</affectedPath><affectedPath>clubb_python_driver/advance_clubb_to_end.py</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>dash_app/services/models.py</affectedPath><affectedPath>dash_app/pytests/test_agent_services.py</affectedPath><affectedPath>dash_app/pytests/test_callbacks_runs.py</affectedPath><affectedPath>clubb_jax/tests/test_jax_cli_options.py</affectedPath><affectedPath>dash_app/DEVELOPMENT.md</affectedPath><affectedPath>clubb_jax/tests/test_runtime_info.py</affectedPath><affectedPath>clubb_jax/src/advance_clubb_to_end.py</affectedPath><affectedPath>dash_app/pytests/test_run_broker_simplification.py</affectedPath><affectedPath>dash_app/run_tab/callbacks_runs.py</affectedPath><affectedPath>dash_app/compile_tab/build_selector.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/src/Radiation/radiation_module.py</affectedPath><affectedPath>dash_app/pytests/test_profile_tab.py</affectedPath><commitId>17b29a7e938300692cec5c6c7e78aae7b9578568</commitId><timestamp>1789714227000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Jax integration (#1356)

* Starting to integrate jax with dash more and making the run_scm -jax flag a little more useful by being able to choose to run on the CPU or GPU via -jax=cpu or -jax=gpu rather than requireing environment variables

* Making the jax option even fancier, dash runner chooser is better/smarter now too

* Make CLUBB-JAX launcher portable across macOS and Linux

* Making the jax device detection work without needing the venvs setup first.

* Keep JAX radiation compiled with static timestep scheduling

Preserve the host radiation flag as a static JIT argument and mirror the Fortran conditional directly. Remove the Metal-only eager execution path and redundant branch helpers.

Cover both schedule states, statistics cadence, soil update ordering, and alternating time-dependent radiation calls. Validated with CPU and Metal tests and three-step standalone runs.

* Microphys loop push (#1355)

* First set of loop pushes - feature addition to stats too to allow for calling stats_update multiple times in a timestep and averaging the results, which is quite nice for silhs and allows us to get rid of the special microphysics stats type

* More loop pushes

* Tiny changes to restore BFBness

* Pushing loop into advance_microphys

* Little more loop push

* More basic loop pushing

* More loop pushing, also found what seems to be a bug with additional columns, theres code that uses only the first one. Im leaving this in for now to maintain BFBness, but labeled the problem areas with TODOs

* Potentially final batch of loop pushes

* Adding acc fixes for microphys stuff - the 2D versions called are GPUized, so they need acc data statements surrounding them

* Removing unneccesary single col versions of lots of things

* Restoring some comments and formatting

* A little more restoration, maybe unnecceary

* Little OpenACC fixes for microphys code RESOLVED:900681c91bdbdf8d6cd069bab01663ebac1a3279

* renamed jax jenkins test to clubb_jax_tests

* Making column mirror test work by comparing two different output files rather than one. This test now runs once with 3 different columns in a certain order, say ABC, and again with reverse order CBA, then ensures that A=A B=B and C=C (bit-for-bit equivalence) in both files. This should fail now actually, as there is currently a bug, and this update is intented to improve this test so that it fails before we fix the bug

* Making column mirror test use CPU. This makes it much faster and doesn't change the test at all - not sure why I made it use GPU originally.

* Fixing microphys bug that has been around for quite a while. This happened when making clubb standalone use multiple columns, and only affects columns other than the first. This is BIT_CHANGING, but only for microphysics cases using multiple columns (#1358)

* Test different f90 vs jax flags (#1357)

* wip

* wip

* test is basically done -&gt; find out why some jax runs fail, mabe also run fortran even if jax fails

* fortran is tested regardless of whether jax fails

* changed jenkinsfile + removed l_Lscale_plume_centered from flag file + flag_set readme + lil print F90 fix

* added comments and a new flagset for jax tests

* added new jax flag config file to Jenkinstest

* Small UI fixes to make entry boxes refresh better

* Making python/jax driver status prints happen right away

* Removing accidentally added file

* Improving readmes

* Simpliciation cleanup

---------

Co-authored-by: Daniel Ebel &lt;debel@uwm.edu&gt;
Co-authored-by: Daniel Ebel &lt;124399436+shellwitz@users.noreply.github.com&gt;
</comment><date>2026-09-18 01:50:27 -0500</date><id>17b29a7e938300692cec5c6c7e78aae7b9578568</id><msg>Jax integration (#1356)</msg><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_to_end.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_runtime_info.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_callbacks_runs.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_runs.py</file></path><path><editType>edit</editType><file>tests/run_jax_vs_fortran_cases.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/assets/11_tab_run_theme.css</file></path><path><editType>edit</editType><file>clubb_jax/src/advance_clubb_to_end.py</file></path><path><editType>edit</editType><file>clubb_jax/src/Radiation/radiation_module.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>add</editType><file>clubb_jax/runtime_info.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_jax_cli_options.py</file></path><path><editType>edit</editType><file>dash_app/DEVELOPMENT.md</file></path><path><editType>edit</editType><file>dash_app/shared/actions.py</file></path><path><editType>add</editType><file>clubb_jax/requirements-metal.txt</file></path><path><editType>edit</editType><file>dash_app/pytests/test_profile_tab.py</file></path><path><editType>edit</editType><file>clubb_jax/src/clubb_standalone.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_selected_build.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/runtime.py</file></path><path><editType>edit</editType><file>clubb_jax/tests/test_radiation_module.py</file></path><path><editType>delete</editType><file>clubb_jax/run_jax_wrapper.sh</file></path><path><editType>edit</editType><file>dash_app/pytests/test_run_broker_simplification.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_jax_device.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/callbacks.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_agent_services.py</file></path><path><editType>add</editType><file>dash_app/shared/jax_device.py</file></path><path><editType>edit</editType><file>dash_app/assets/09_selected_build_badge.css</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/callbacks.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/telemetry.py</file></path><path><editType>edit</editType><file>dash_app/services/models.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/build_selector.py</file></path><path><editType>add</editType><file>clubb_jax/run_jax.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/runtime.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>576</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/576/</url></nextBuild><previousBuild><number>574</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/574/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>574</buildNumber><marked><SHA1>e2f38c22369792200d556168276e492b5bff6717</SHA1><branch><SHA1>e2f38c22369792200d556168276e492b5bff6717</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>e2f38c22369792200d556168276e492b5bff6717</SHA1><branch><SHA1>e2f38c22369792200d556168276e492b5bff6717</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>e2f38c22369792200d556168276e492b5bff6717</SHA1><branch><SHA1>e2f38c22369792200d556168276e492b5bff6717</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#574</displayName><duration>2163401</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #574</fullDisplayName><id>574</id><keepLog>false</keepLog><number>574</number><queueId>8451</queueId><result>SUCCESS</result><timestamp>1789633627725</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/574/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>input/flag_sets/config_core_flags_wo_never_supported_jax_features.json</affectedPath><affectedPath>run_scripts/run_clubb_w_varying_flags.py</affectedPath><affectedPath>tests/README</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>utilities/flag_sets.py</affectedPath><affectedPath>jenkins_tests/clubb_jax_tests/Jenkinsfile</affectedPath><affectedPath>input/flag_sets/run_bindiff_w_flags_config_core_flags.json</affectedPath><affectedPath>input/flag_sets/README.md</affectedPath><affectedPath>src/CLUBB_core/err_info_type_module.F90</affectedPath><affectedPath>tests/run_jax_vs_fortran_cases.py</affectedPath><commitId>3a0c0fbbeb0eae52b7b98be4555b18dc6036398a</commitId><timestamp>1789591299000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Test different f90 vs jax flags (#1357)

* wip

* wip

* test is basically done -&gt; find out why some jax runs fail, mabe also run fortran even if jax fails

* fortran is tested regardless of whether jax fails

* changed jenkinsfile + removed l_Lscale_plume_centered from flag file + flag_set readme + lil print F90 fix

* added comments and a new flagset for jax tests

* added new jax flag config file to Jenkinstest
</comment><date>2026-09-16 15:41:39 -0500</date><id>3a0c0fbbeb0eae52b7b98be4555b18dc6036398a</id><msg>Test different f90 vs jax flags (#1357)</msg><path><editType>add</editType><file>input/flag_sets/config_core_flags_wo_never_supported_jax_features.json</file></path><path><editType>edit</editType><file>run_scripts/run_clubb_w_varying_flags.py</file></path><path><editType>edit</editType><file>.gitignore</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_jax_tests/Jenkinsfile</file></path><path><editType>edit</editType><file>src/CLUBB_core/err_info_type_module.F90</file></path><path><editType>edit</editType><file>input/flag_sets/run_bindiff_w_flags_config_core_flags.json</file></path><path><editType>add</editType><file>input/flag_sets/README.md</file></path><path><editType>edit</editType><file>tests/README</file></path><path><editType>edit</editType><file>tests/run_jax_vs_fortran_cases.py</file></path><path><editType>add</editType><file>utilities/flag_sets.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/README</affectedPath><affectedPath>tests/pytests/test_column_mirror.py</affectedPath><affectedPath>jenkins_tests/clubb_column_mirror_test/Jenkinsfile</affectedPath><affectedPath>tests/check_mirrored_multi_col_output.py</affectedPath><commitId>e2f38c22369792200d556168276e492b5bff6717</commitId><timestamp>1789627411000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Consolidating column mirror test functionality into the test script itself - now the script does it all, no need to configure/build/run anymore. Also hugely improving comments and explainations
</comment><date>2026-09-17 01:43:31 -0500</date><id>e2f38c22369792200d556168276e492b5bff6717</id><msg>Consolidating column mirror test functionality into the test script itself - now the script does it all, no need to configure/build/run anymore. Also hugely improving comments and explainations</msg><path><editType>edit</editType><file>tests/README</file></path><path><editType>add</editType><file>tests/pytests/test_column_mirror.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_column_mirror_test/Jenkinsfile</file></path><path><editType>edit</editType><file>tests/check_mirrored_multi_col_output.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>575</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/575/</url></nextBuild><previousBuild><number>573</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/573/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>573</buildNumber><marked><SHA1>37da5d26c1a8137c484f3b8b0eb1a5d79ac011b8</SHA1><branch><SHA1>37da5d26c1a8137c484f3b8b0eb1a5d79ac011b8</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>37da5d26c1a8137c484f3b8b0eb1a5d79ac011b8</SHA1><branch><SHA1>37da5d26c1a8137c484f3b8b0eb1a5d79ac011b8</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>37da5d26c1a8137c484f3b8b0eb1a5d79ac011b8</SHA1><branch><SHA1>37da5d26c1a8137c484f3b8b0eb1a5d79ac011b8</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#573</displayName><duration>1467512</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #573</fullDisplayName><id>573</id><keepLog>false</keepLog><number>573</number><queueId>8344</queueId><result>SUCCESS</result><timestamp>1789547229652</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/573/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/README</affectedPath><affectedPath>jenkins_tests/clubb_nvhpc_gpu_column_mirror_test/Jenkinsfile</affectedPath><affectedPath>tests/check_mirrored_multi_col_output.py</affectedPath><commitId>9baabf2f36b5f7b9c88b719954598e278be24a1a</commitId><timestamp>1789512567000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Making column mirror test work by comparing two different output files rather than one. This test now runs once with 3 different columns in a certain order, say ABC, and again with reverse order CBA, then ensures that A=A B=B and C=C (bit-for-bit equivalence) in both files. This should fail now actually, as there is currently a bug, and this update is intented to improve this test so that it fails before we fix the bug
</comment><date>2026-09-15 17:49:27 -0500</date><id>9baabf2f36b5f7b9c88b719954598e278be24a1a</id><msg>Making column mirror test work by comparing two different output files rather than one. This test now runs once with 3 different columns in a certain order, say ABC, and again with reverse order CBA, then ensures that A=A B=B and C=C (bit-for-bit equivalence) in both files. This should fail now actually, as there is currently a bug, and this update is intented to improve this test so that it fails before we fix the bug</msg><path><editType>edit</editType><file>jenkins_tests/clubb_nvhpc_gpu_column_mirror_test/Jenkinsfile</file></path><path><editType>edit</editType><file>tests/README</file></path><path><editType>edit</editType><file>tests/check_mirrored_multi_col_output.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_column_mirror_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_nvhpc_gpu_column_mirror_test/Jenkinsfile</affectedPath><commitId>26cfce3b9083a3d32fe4fbec9d4294c2cbafdc27</commitId><timestamp>1789521623000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Making column mirror test use CPU. This makes it much faster and doesn't change the test at all - not sure why I made it use GPU originally.
</comment><date>2026-09-15 20:20:23 -0500</date><id>26cfce3b9083a3d32fe4fbec9d4294c2cbafdc27</id><msg>Making column mirror test use CPU. This makes it much faster and doesn't change the test at all - not sure why I made it use GPU originally.</msg><path><editType>delete</editType><file>jenkins_tests/clubb_nvhpc_gpu_column_mirror_test/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_column_mirror_test/Jenkinsfile</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/Microphys/microphys_driver.F90</affectedPath><affectedPath>src/SILHS/est_kessler_microphys_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xp2_xpyp_module.F90</affectedPath><affectedPath>src/Microphys/mixed_moment_PDF_integrals.F90</affectedPath><commitId>37da5d26c1a8137c484f3b8b0eb1a5d79ac011b8</commitId><timestamp>1789524301000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Fixing microphys bug that has been around for quite a while. This happened when making clubb standalone use multiple columns, and only affects columns other than the first. This is BIT_CHANGING, but only for microphysics cases using multiple columns (#1358)
</comment><date>2026-09-15 21:05:01 -0500</date><id>37da5d26c1a8137c484f3b8b0eb1a5d79ac011b8</id><msg>Fixing microphys bug that has been around for quite a while. This happened when making clubb standalone use multiple columns, and only affects columns other than the first. This is BIT_CHANGING, but only for microphysics cases using multiple columns (#1358)</msg><path><editType>edit</editType><file>src/CLUBB_core/advance_xp2_xpyp_module.F90</file></path><path><editType>edit</editType><file>src/Microphys/microphys_driver.F90</file></path><path><editType>edit</editType><file>src/Microphys/mixed_moment_PDF_integrals.F90</file></path><path><editType>edit</editType><file>src/SILHS/est_kessler_microphys_module.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>574</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/574/</url></nextBuild><previousBuild><number>572</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/572/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>572</buildNumber><marked><SHA1>ff0eeed50d1271837294a505a65d5848a79f2ec8</SHA1><branch><SHA1>ff0eeed50d1271837294a505a65d5848a79f2ec8</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>ff0eeed50d1271837294a505a65d5848a79f2ec8</SHA1><branch><SHA1>ff0eeed50d1271837294a505a65d5848a79f2ec8</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>ff0eeed50d1271837294a505a65d5848a79f2ec8</SHA1><branch><SHA1>ff0eeed50d1271837294a505a65d5848a79f2ec8</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#572</displayName><duration>95941</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #572</fullDisplayName><id>572</id><keepLog>false</keepLog><number>572</number><queueId>8244</queueId><result>SUCCESS</result><timestamp>1788942429721</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/572/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_jax_tests/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/compare_jax_vs_fortran/Jenkinsfile</affectedPath><commitId>ff0eeed50d1271837294a505a65d5848a79f2ec8</commitId><timestamp>1788879890000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/ebel</absoluteUrl><fullName>Daniel Ebel</fullName></author><authorEmail>debel@uwm.edu</authorEmail><comment>renamed jax jenkins test to clubb_jax_tests
</comment><date>2026-09-08 10:04:50 -0500</date><id>ff0eeed50d1271837294a505a65d5848a79f2ec8</id><msg>renamed jax jenkins test to clubb_jax_tests</msg><path><editType>delete</editType><file>jenkins_tests/compare_jax_vs_fortran/Jenkinsfile</file></path><path><editType>add</editType><file>jenkins_tests/clubb_jax_tests/Jenkinsfile</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/ebel</absoluteUrl><fullName>Daniel Ebel</fullName></culprit><inProgress>false</inProgress><nextBuild><number>573</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/573/</url></nextBuild><previousBuild><number>571</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/571/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>571</buildNumber><marked><SHA1>ed96b2092885108caaea1b8aba3b4211b245ff7a</SHA1><branch><SHA1>ed96b2092885108caaea1b8aba3b4211b245ff7a</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>ed96b2092885108caaea1b8aba3b4211b245ff7a</SHA1><branch><SHA1>ed96b2092885108caaea1b8aba3b4211b245ff7a</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>ed96b2092885108caaea1b8aba3b4211b245ff7a</SHA1><branch><SHA1>ed96b2092885108caaea1b8aba3b4211b245ff7a</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#571</displayName><duration>679189</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #571</fullDisplayName><id>571</id><keepLog>false</keepLog><number>571</number><queueId>8154</queueId><result>SUCCESS</result><timestamp>1788856026720</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/571/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/Microphys/estimate_scm_microphys_module.F90</affectedPath><affectedPath>src/CLUBB_core/stats_clubb_utilities.F90</affectedPath><affectedPath>src/Microphys/advance_microphys_module.F90</affectedPath><affectedPath>src/Microphys/KK_microphys_module.F90</affectedPath><commitId>ed96b2092885108caaea1b8aba3b4211b245ff7a</commitId><timestamp>1788832457000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Little OpenACC fixes for microphys code RESOLVED:900681c91bdbdf8d6cd069bab01663ebac1a3279
</comment><date>2026-09-07 20:54:17 -0500</date><id>ed96b2092885108caaea1b8aba3b4211b245ff7a</id><msg>Little OpenACC fixes for microphys code RESOLVED:900681c91bdbdf8d6cd069bab01663ebac1a3279</msg><path><editType>edit</editType><file>src/Microphys/advance_microphys_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_clubb_utilities.F90</file></path><path><editType>edit</editType><file>src/Microphys/estimate_scm_microphys_module.F90</file></path><path><editType>edit</editType><file>src/Microphys/KK_microphys_module.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>572</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/572/</url></nextBuild><previousBuild><number>570</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/570/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>570</buildNumber><marked><SHA1>900681c91bdbdf8d6cd069bab01663ebac1a3279</SHA1><branch><SHA1>900681c91bdbdf8d6cd069bab01663ebac1a3279</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>900681c91bdbdf8d6cd069bab01663ebac1a3279</SHA1><branch><SHA1>900681c91bdbdf8d6cd069bab01663ebac1a3279</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>900681c91bdbdf8d6cd069bab01663ebac1a3279</SHA1><branch><SHA1>900681c91bdbdf8d6cd069bab01663ebac1a3279</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#570</displayName><duration>382920</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #570</fullDisplayName><id>570</id><keepLog>false</keepLog><number>570</number><queueId>8058</queueId><result>SUCCESS</result><timestamp>1788683229563</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/570/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/Microphys/KK_microphys/CMakeLists.txt</affectedPath><affectedPath>src/Microphys/KK_microphys/KK_upscaled_turbulent_sed.F90</affectedPath><affectedPath>src/Microphys/Microphys_utils/microphys_stats_vars_module.F90</affectedPath><affectedPath>src/Microphys/KK_microphys_module.F90</affectedPath><affectedPath>src/SILHS/CMakeLists.txt</affectedPath><affectedPath>src/CLUBB_core/stats_netcdf.F90</affectedPath><affectedPath>src/Microphys/pdf_hydromet_microphys_wrapper.F90</affectedPath><affectedPath>src/Microphys/advance_microphys_module.F90</affectedPath><affectedPath>src/Microphys/lh_microphys_driver_module.F90</affectedPath><affectedPath>src/Microphys/KK_microphys/KK_upscaled_covariances.F90</affectedPath><affectedPath>src/Microphys/ice_dfsn_module.F90</affectedPath><affectedPath>src/SILHS/est_kessler_microphys_module.F90</affectedPath><affectedPath>src/Microphys/cloud_sed_module.F90</affectedPath><affectedPath>src/Microphys/microphys_interface.inc</affectedPath><affectedPath>src/CLUBB_core/stats_clubb_utilities.F90</affectedPath><affectedPath>src/SILHS/math_utilities.F90</affectedPath><affectedPath>src/Microphys/estimate_scm_microphys_module.F90</affectedPath><affectedPath>src/Microphys/CMakeLists.txt</affectedPath><affectedPath>src/Microphys/Morrison_microphys/CMakeLists.txt</affectedPath><affectedPath>src/SILHS/silhs_api_module.F90</affectedPath><affectedPath>src/Microphys/mixed_moment_PDF_integrals.F90</affectedPath><affectedPath>tests/run_silhs_test.py</affectedPath><affectedPath>src/SILHS/latin_hypercube_driver_module.F90</affectedPath><affectedPath>src/Microphys/morrison_microphys_module.F90</affectedPath><affectedPath>src/Microphys/gfdl_activation.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xp2_xpyp_module.F90</affectedPath><affectedPath>src/SILHS/lh_microphys_var_covar_module.F90</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>src/Microphys/silhs_category_variance_module.F90</affectedPath><affectedPath>src/CLUBB_core/fill_holes.F90</affectedPath><affectedPath>src/Microphys/microphys_driver.F90</affectedPath><affectedPath>src/Radiation/radiation_module.F90</affectedPath><affectedPath>src/Microphys/Microphys_utils/CMakeLists.txt</affectedPath><commitId>900681c91bdbdf8d6cd069bab01663ebac1a3279</commitId><timestamp>1788666832000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Microphys loop push (#1355)

* First set of loop pushes - feature addition to stats too to allow for calling stats_update multiple times in a timestep and averaging the results, which is quite nice for silhs and allows us to get rid of the special microphysics stats type

* More loop pushes

* Tiny changes to restore BFBness

* Pushing loop into advance_microphys

* Little more loop push

* More basic loop pushing

* More loop pushing, also found what seems to be a bug with additional columns, theres code that uses only the first one. Im leaving this in for now to maintain BFBness, but labeled the problem areas with TODOs

* Potentially final batch of loop pushes

* Adding acc fixes for microphys stuff - the 2D versions called are GPUized, so they need acc data statements surrounding them

* Removing unneccesary single col versions of lots of things

* Restoring some comments and formatting

* A little more restoration, maybe unnecceary
</comment><date>2026-09-05 22:53:52 -0500</date><id>900681c91bdbdf8d6cd069bab01663ebac1a3279</id><msg>Microphys loop push (#1355)</msg><path><editType>delete</editType><file>src/Microphys/Microphys_utils/CMakeLists.txt</file></path><path><editType>edit</editType><file>src/Microphys/KK_microphys/CMakeLists.txt</file></path><path><editType>edit</editType><file>src/Microphys/KK_microphys/KK_upscaled_covariances.F90</file></path><path><editType>edit</editType><file>src/Microphys/advance_microphys_module.F90</file></path><path><editType>edit</editType><file>src/Microphys/cloud_sed_module.F90</file></path><path><editType>edit</editType><file>src/Microphys/CMakeLists.txt</file></path><path><editType>edit</editType><file>tests/run_silhs_test.py</file></path><path><editType>edit</editType><file>src/Microphys/morrison_microphys_module.F90</file></path><path><editType>edit</editType><file>src/Microphys/estimate_scm_microphys_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/fill_holes.F90</file></path><path><editType>edit</editType><file>src/Microphys/KK_microphys_module.F90</file></path><path><editType>edit</editType><file>src/SILHS/silhs_api_module.F90</file></path><path><editType>edit</editType><file>src/Microphys/microphys_interface.inc</file></path><path><editType>edit</editType><file>src/Microphys/KK_microphys/KK_upscaled_turbulent_sed.F90</file></path><path><editType>edit</editType><file>src/Microphys/Morrison_microphys/CMakeLists.txt</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_netcdf.F90</file></path><path><editType>edit</editType><file>src/Microphys/mixed_moment_PDF_integrals.F90</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>src/Microphys/ice_dfsn_module.F90</file></path><path><editType>edit</editType><file>src/Microphys/lh_microphys_driver_module.F90</file></path><path><editType>edit</editType><file>src/SILHS/lh_microphys_var_covar_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xp2_xpyp_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_clubb_utilities.F90</file></path><path><editType>edit</editType><file>src/SILHS/latin_hypercube_driver_module.F90</file></path><path><editType>edit</editType><file>src/Microphys/silhs_category_variance_module.F90</file></path><path><editType>edit</editType><file>src/SILHS/est_kessler_microphys_module.F90</file></path><path><editType>edit</editType><file>src/Radiation/radiation_module.F90</file></path><path><editType>edit</editType><file>src/SILHS/math_utilities.F90</file></path><path><editType>edit</editType><file>src/Microphys/gfdl_activation.F90</file></path><path><editType>edit</editType><file>src/SILHS/CMakeLists.txt</file></path><path><editType>edit</editType><file>src/Microphys/pdf_hydromet_microphys_wrapper.F90</file></path><path><editType>delete</editType><file>src/Microphys/Microphys_utils/microphys_stats_vars_module.F90</file></path><path><editType>edit</editType><file>src/Microphys/microphys_driver.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>571</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/571/</url></nextBuild><previousBuild><number>569</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/569/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>569</buildNumber><marked><SHA1>53920ce2095c4b721f59936d5933dd6da8bcb590</SHA1><branch><SHA1>53920ce2095c4b721f59936d5933dd6da8bcb590</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>53920ce2095c4b721f59936d5933dd6da8bcb590</SHA1><branch><SHA1>53920ce2095c4b721f59936d5933dd6da8bcb590</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>53920ce2095c4b721f59936d5933dd6da8bcb590</SHA1><branch><SHA1>53920ce2095c4b721f59936d5933dd6da8bcb590</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#569</displayName><duration>1192431</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #569</fullDisplayName><id>569</id><keepLog>false</keepLog><number>569</number><queueId>7920</queueId><result>SUCCESS</result><timestamp>1788424025999</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/569/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/src/CLUBB_core/sigma_sqd_w_module.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/parameter_indices.py</affectedPath><affectedPath>clubb_jax/tests/test_kk_local_means.py</affectedPath><affectedPath>clubb_jax/tests/test_hydrometeor_mixed_moments.py</affectedPath><affectedPath>clubb_jax/tests/test_diagnose_correlations.py</affectedPath><affectedPath>clubb_jax/src/Input_fields/hydrostatic_module.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/model_flags.py</affectedPath><affectedPath>clubb_jax/src/Microphys/cloud_sed_module.py</affectedPath><affectedPath>clubb_jax/src/Input_fields/namelist.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/advance_xp3_module.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/two_rt_sw.py</affectedPath><affectedPath>clubb_jax/src/Microphys/ice_dfsn_module.py</affectedPath><affectedPath>clubb_jax/tests/test_KK_Nrm_tendencies.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_xprcp_component.py</affectedPath><affectedPath>clubb_jax/tests/test_pdf_utilities.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_wp3_on_wp2.py</affectedPath><affectedPath>clubb_jax/tests/test_penta_faithful.py</affectedPath><affectedPath>clubb_jax/src/Microphys/morrison_microphys_step.py</affectedPath><affectedPath>clubb_jax/tests/test_solver.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/lba.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/comscp1.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/KK_upscaled_variances.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/turbulent_adv_pdf.py</affectedPath><affectedPath>clubb_jax/src/clubb_case_initalization.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/spec_hum_to_mixing_ratio.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/nu_vert_res_dep.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/tridiag_lu_solver.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/mixing_length.py</affectedPath><affectedPath>clubb_python_api/tests/test_udt_return_contract.py</affectedPath><affectedPath>clubb_jax/tests/test_read_surface_var_for_bc.py</affectedPath><affectedPath>clubb_jax/tests/test_constants.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_pdf_skewness_diagnostics.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/dycoms2_rf01.py</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/err_info.py</affectedPath><affectedPath>clubb_jax/tests/test_diffusion.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/arm_3year.py</affectedPath><affectedPath>clubb_jax/tests/test_differentiability.py</affectedPath><affectedPath>clubb_jax/tests/test_mixing_length.py</affectedPath><affectedPath>clubb_jax/src/Radiation/soil_vegetation.py</affectedPath><affectedPath>clubb_jax/tests/test_NNL_covar_vs_MM.py</affectedPath><affectedPath>clubb_python_driver/clubb_case_initalization.py</affectedPath><affectedPath>clubb_jax/tests/test_adg1_adg2_responder_params.py</affectedPath><affectedPath>clubb_jax/tests/test_penta_solver.py</affectedPath><affectedPath>clubb_jax/tests/test_liq_water_path.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/prescribe_forcings.py</affectedPath><affectedPath>clubb_jax/io/__init__.py</affectedPath><affectedPath>clubb_jax/tests/test_kk_autoconversion.py</affectedPath><affectedPath>clubb_jax/tests/test_compute_gamma_skw.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_corr_w_hm_n.py</affectedPath><affectedPath>clubb_jax/tests/test_mean_adv.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/pos_definite_module.py</affectedPath><affectedPath>clubb_jax/tests/test_compute_xp3.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/matrix_solver_wrapper.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/pdf_utilities.py</affectedPath><affectedPath>clubb_jax/tests/test_update_xp2_mc.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/tests/test_trivar_NNL_covar_eq.py</affectedPath><affectedPath>clubb_jax/src/Radiation/radiation_module.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/sfc_varnce_module.py</affectedPath><affectedPath>clubb_jax/tests/test_stats_output_time.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/gabls3.py</affectedPath><affectedPath>clubb_jax/src/clubb_standalone.py</affectedPath><affectedPath>clubb_jax/src/Radiation/rad_lwsw_module.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_roots.py</affectedPath><affectedPath>clubb_jax/src/Input_fields/input_reader.py</affectedPath><affectedPath>clubb_jax/tests/test_spurious_source.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/cloud_correlate.py</affectedPath><affectedPath>clubb_jax/tests/test_corr_varnce.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/index_mapping.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/parameters_tunable.py</affectedPath><affectedPath>clubb_jax/src/Input_fields/surface.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/jax_stats.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/T_in_K_module.py</affectedPath><affectedPath>clubb_jax/tests/test_cloud_feedback_sfclyr.py</affectedPath><affectedPath>clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/nov11.py</affectedPath><affectedPath>clubb_jax/tests/test_bivar_LL_covar_partial.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/time_dependent_input.py</affectedPath><affectedPath>clubb_jax/tests/test_mean_vert_vel_up_down.py</affectedPath><affectedPath>clubb_jax/tests/test_cloud_drop_sed.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/grid_class.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/advance_clubb_core_module.py</affectedPath><affectedPath>clubb_jax/tests/test_xm_wpxp_terms.py</affectedPath><affectedPath>clubb_jax/tests/test_soil_vegetation.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/advance_xm_wpxp_module.py</affectedPath><affectedPath>clubb_jax/tests/test_bivar_LL_mean_const.py</affectedPath><affectedPath>clubb_jax/tests/test_bivar_LL_covar_partial_rr_Nr.py</affectedPath><affectedPath>clubb_jax/tests/test_sponge_damp_xp23.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/kk_microphys_driver.py</affectedPath><affectedPath>clubb_jax/tests/test_hydromet_pdf_parameter.py</affectedPath><affectedPath>clubb_jax/tests/test_remapping_ppm.py</affectedPath><affectedPath>clubb_jax/tests/test_new_pdf_main.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/err_info.py</affectedPath><affectedPath>clubb_jax/tests/test_config_flags_complete.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_mono_flux.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/new_pdf_main.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/clubb_precision.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/__init__.py</affectedPath><affectedPath>clubb_jax/src/Microphys/morrison_microphys_module.py</affectedPath><affectedPath>clubb_jax/tests/test_w_up_in_cloud.py</affectedPath><affectedPath>clubb_jax/tests/test_simple_rad_lba.py</affectedPath><affectedPath>clubb_jax/tests/test_index_mapping.py</affectedPath><affectedPath>clubb_jax/io/sounding.py</affectedPath><affectedPath>clubb_jax/tests/test_standalone_jax.py</affectedPath><affectedPath>clubb_jax/tests/test_cloud_correlate.py</affectedPath><affectedPath>clubb_jax/tests/test_cholesky_factor.py</affectedPath><affectedPath>clubb_jax/tests/test_morrison_rates.py</affectedPath><affectedPath>clubb_jax/tests/test_clip_covar.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/numerical_check.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/bugs_lwr.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/two_rt_lw.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/err_info_codes.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/atex_long.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/parameters_KK.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/cobra.py</affectedPath><affectedPath>clubb_jax/tests/test_time_select.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/adg1_adg2_3d_luhar_pdf.py</affectedPath><affectedPath>clubb_jax/src/Microphys/__init__.py</affectedPath><affectedPath>clubb_python_api/README.md</affectedPath><affectedPath>clubb_jax/tests/test_pdf_params_pack_roundtrip.py</affectedPath><affectedPath>clubb_jax/tests/test_quadrivar_NNLL_covar_eq_swap.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/dycoms2_rf02.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/rayle.py</affectedPath><affectedPath>clubb_jax/tests/test_responder_params.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/Nc_Ncn_eqns.py</affectedPath><affectedPath>clubb_jax/tests/test_component_precip_frac_specify.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/astex_a209.py</affectedPath><affectedPath>clubb_jax/tests/test_rad_extended_atmosphere.py</affectedPath><affectedPath>clubb_jax/tests/test_gabls3_night_stability.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/hydromet_pdf_parameter_module.py</affectedPath><affectedPath>clubb_jax/tests/test_diagnostic_cache.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/PDF_integrals_covar.py</affectedPath><affectedPath>clubb_python_driver/advance_clubb_core.py</affectedPath><affectedPath>clubb_jax/src/__init__.py</affectedPath><affectedPath>clubb_jax/tests/test_bivar_NL_mean_eq.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/calc_roots.py</affectedPath><affectedPath>tests/run_jax_vs_fortran_cases.py</affectedPath><affectedPath>clubb_jax/tests/test_set_sfc_value_of_flux_profiles.py</affectedPath><affectedPath>clubb_jax/tests/test_wp2_wp3_terms.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/stats_netcdf.py</affectedPath><affectedPath>clubb_jax/tests/test_wp2_wp3_lhs_terms.py</affectedPath><affectedPath>clubb_jax/run_jax_wrapper.sh</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/matrix_solver_wrapper.py</affectedPath><affectedPath>clubb_jax/src/Input_fields/__init__.py</affectedPath><affectedPath>clubb_jax/tests/test_cholesky_corr_mtx_approx.py</affectedPath><affectedPath>clubb_jax/tests/test_sfc_flux.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/sclr_idx.py</affectedPath><affectedPath>clubb_jax/tests/test_saturation.py</affectedPath><affectedPath>clubb_python_api/tests/test_stats.py</affectedPath><affectedPath>clubb_jax/tests/test_interpolation.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/gabls3_night.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_comp_mu_sigma_hm.py</affectedPath><affectedPath>clubb_jax/tests/test_mono_flux_limiter.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/calc_pressure.py</affectedPath><affectedPath>clubb_jax/tests/test_pdf_integrals_all_mm.py</affectedPath><affectedPath>clubb_jax/tests/test_lba_sfclyr.py</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>clubb_jax/advance_clubb_core.py</affectedPath><affectedPath>clubb_jax/tests/test_precip_fraction.py</affectedPath><affectedPath>clubb_jax/tests/test_adg2_driver.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/stats_metadata.py</affectedPath><affectedPath>clubb_jax/tests/test_pressure_sounding_z.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/clip_explicit.py</affectedPath><affectedPath>clubb_jax/src/Microphys/advance_microphys_module.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/interpolation.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/setup_clubb_pdf_params.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/advance_windm_edsclrm_module.py</affectedPath><affectedPath>clubb_jax/src/Input_fields/grid_file.py</affectedPath><affectedPath>clubb_jax/tests/test_calendar.py</affectedPath><affectedPath>clubb_jax/io/grid_file.py</affectedPath><affectedPath>clubb_jax/tests/test_rcm_sat_adj.py</affectedPath><affectedPath>LLM_prompts/port_underlying_fortran_to_other_languages.md</affectedPath><affectedPath>clubb_jax/tests/test_coefs_semiimpl.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/bugsrad_physconst.py</affectedPath><affectedPath>clubb_jax/tests/test_mirror_lower_triangular.py</affectedPath><affectedPath>clubb_jax/__init__.py</affectedPath><affectedPath>clubb_jax/tests/test_new_tsdadg_pdf.py</affectedPath><affectedPath>clubb_jax/tests/test_radiation_module.py</affectedPath><affectedPath>clubb_jax/tests/test_max_cubic_root.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_wpxpyp_pdf.py</affectedPath><affectedPath>clubb_jax/tests/test_validation_checks.py</affectedPath><affectedPath>clubb_jax/tests/test_skx_func.py</affectedPath><affectedPath>clubb_jax/tests/test_fill_holes_sliding_window.py</affectedPath><affectedPath>LLM_prompts/SHORTCUTS.md</affectedPath><affectedPath>clubb_jax/clubb_case_initalization.py</affectedPath><affectedPath>clubb_jax/tests/test_spec_hum_to_mixing_ratio.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/advance_xp2_xpyp_module.py</affectedPath><affectedPath>clubb_jax/requirements-cuda13.txt</affectedPath><affectedPath>clubb_jax/tests/test_calc_pdf_chi_mean_var.py</affectedPath><affectedPath>clubb_jax/src/Input_fields/input_names.py</affectedPath><affectedPath>clubb_jax/tests/test_morrison_differentiable.py</affectedPath><affectedPath>clubb_jax/tests/test_hydrostatic.py</affectedPath><affectedPath>clubb_jax/tests/test_binormal_moments.py</affectedPath><affectedPath>clubb_jax/tests/test_denorm_transform_corr.py</affectedPath><affectedPath>LLM_prompts/update_python_api_and_drivers.md</affectedPath><affectedPath>clubb_jax/tests/test_new_hybrid_pdf_main.py</affectedPath><affectedPath>clubb_jax/tests/test_forcing_port_structure.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/bugsrad_planck.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_comp_corrs_binormal.py</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>clubb_jax/tests/test_luhar_3d_driver.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/mono_flux_limiter.py</affectedPath><affectedPath>clubb_jax/src/Radiation/__init__.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/sponge_layer_damping.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/jun25.py</affectedPath><affectedPath>clubb_jax/tests/test_ly93_pdf.py</affectedPath><affectedPath>clubb_jax/src/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/arm_0003.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/corr_varnce_module.py</affectedPath><affectedPath>clubb_jax/tests/test_T_in_K.py</affectedPath><affectedPath>clubb_jax/tests/test_covar_KK_mixt_frac_linearity.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_xpthvp_terms.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/cloudg.py</affectedPath><affectedPath>clubb_jax/tests/test_no_dead_functions.py</affectedPath><affectedPath>clubb_jax/tests/test_pdf_params_init.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/new_hybrid_pdf.py</affectedPath><affectedPath>clubb_jax/tests/test_grid_operators.py</affectedPath><affectedPath>clubb_jax/tests/test_diagnose_upxp.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_wp4_pdf.py</affectedPath><affectedPath>clubb_jax/tests/test_windm_edsclrm_rhs.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/precipitation_fraction.py</affectedPath><affectedPath>clubb_jax/tests/test_pdf_moment_integrals.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/advance_wp2_wp3_module.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/constants_clubb.py</affectedPath><affectedPath>clubb_jax/tests/test_xp2_xpyp_terms.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_liquid_cloud_frac_component.py</affectedPath><affectedPath>clubb_jax/tests/test_calculate_thvm.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/mean_adv.py</affectedPath><affectedPath>clubb_jax/src/Input_fields/sounding.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/PDF_integrals_means.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/__init__.py</affectedPath><affectedPath>clubb_jax/tests/test_transform_pdf_chi_eta_component.py</affectedPath><affectedPath>clubb_jax/tests/test_hydrometp2_zt.py</affectedPath><affectedPath>clubb_jax/tests/test_quadrivar_covar_const_limits.py</affectedPath><affectedPath>clubb_jax/JAX_CONVERSION_PLAN.md</affectedPath><affectedPath>clubb_python_api/JAX_INTEROPERABILITY_PROPOSAL.md</affectedPath><affectedPath>clubb_jax/tests/test_unsupported_config_guards.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/diag_ustar_module.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/fill_holes.py</affectedPath><affectedPath>clubb_jax/tests/test_mixed_moment_pdf_integrals.py</affectedPath><affectedPath>clubb_jax/tests/test_xpyp_term_ta_pdf.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/parabolic_cylinder.py</affectedPath><affectedPath>clubb_jax/tests/test_smooth_heaviside.py</affectedPath><affectedPath>clubb_jax/tests/test_cobra_sfclyr.py</affectedPath><affectedPath>clubb_jax/tests/test_pos_definite.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/error_code.py</affectedPath><affectedPath>clubb_jax/tests/test_pressure_coord_forcing.py</affectedPath><affectedPath>clubb_jax/tests/test_advance_xp3_simplified.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/diffusion.py</affectedPath><affectedPath>clubb_jax/tests/test_simple_rad.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/bomex.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/cloud_feedback.py</affectedPath><affectedPath>clubb_jax/tests/test_kk_upscaled_variances.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/mpace_a.py</affectedPath><affectedPath>clubb_jax/src/Radiation/extended_atmosphere_module.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/sfc_flux.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/error_code.py</affectedPath><affectedPath>clubb_jax/tests/test_calculate_w_responder_params.py</affectedPath><affectedPath>clubb_jax/requirements.txt</affectedPath><affectedPath>clubb_jax/tests/test_radiation_port_structure.py</affectedPath><affectedPath>src/CLUBB_core/stats_netcdf.F90</affectedPath><affectedPath>clubb_jax/src/Radiation/cos_solar_zen_module.py</affectedPath><affectedPath>clubb_jax/src/Microphys/gfdl_activation.py</affectedPath><affectedPath>clubb_jax/src/Microphys/microphys_driver.py</affectedPath><affectedPath>jenkins_tests/compare_jax_vs_fortran/Jenkinsfile</affectedPath><affectedPath>clubb_jax/tests/test_silhs_surface_schemes.py</affectedPath><affectedPath>clubb_jax/tests/test_luhar_params.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/file_functions.py</affectedPath><affectedPath>clubb_jax/tests/test_close_luhar_pdf.py</affectedPath><affectedPath>clubb_jax/tests/test_clip_variance.py</affectedPath><affectedPath>clubb_jax/src/Radiation/parameters_radiation.py</affectedPath><affectedPath>clubb_jax/src/Radiation/simple_rad_module.py</affectedPath><affectedPath>clubb_jax/tests/test_kk_rico_oracle.py</affectedPath><affectedPath>clubb_jax/clubb_standalone.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/atex.py</affectedPath><affectedPath>clubb_jax/tests/test_NNL_covar_const_vs_MM.py</affectedPath><affectedPath>clubb_python_api/tests/test_init_sequence.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/wangara.py</affectedPath><affectedPath>clubb_jax/tests/test_fill_holes_mean.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/KK_Nrm_tendencies.py</affectedPath><affectedPath>clubb_jax/tests/test_sfc_varnce.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/Skx_module.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/pdf_params.py</affectedPath><affectedPath>clubb_jax/tests/test_component_corr_ip.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/remapping_module.py</affectedPath><affectedPath>clubb_jax/tests/test_remapping_module.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/new_pdf.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/matrix_operations.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/pdf_closure_module.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/stats_clubb_utilities.py</affectedPath><affectedPath>clubb_jax/src/Microphys/mixed_moment_PDF_integrals.py</affectedPath><affectedPath>clubb_jax/io/namelist.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/tracer_numpy.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/diagnose_correlations_module.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/LY93_pdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/clubb_api.py</affectedPath><affectedPath>clubb_jax/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/penta_lu_solver.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/new_hybrid_pdf_main.py</affectedPath><affectedPath>clubb_jax/tests/test_inverse_hydrostatic.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/calendar.py</affectedPath><affectedPath>clubb_jax/tests/test_no_dead_imports.py</affectedPath><affectedPath>clubb_jax/tests/test_fill_holes_global.py</affectedPath><affectedPath>clubb_jax/clubb_constants.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/arm.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/twp_ice.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys_module.py</affectedPath><affectedPath>clubb_jax/tests/test_NNL_covar_const_limits.py</affectedPath><affectedPath>clubb_jax/tests/test_morrison_special.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/PDF_integrals_all_MM.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/fire.py</affectedPath><affectedPath>clubb_jax/tests/test_new_pdf.py</affectedPath><affectedPath>clubb_jax/tests/test_jit_compile.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/mpace_b.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/mono_flux_limiter.py</affectedPath><affectedPath>clubb_jax/tests/test_Nc_Ncn_eqns.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/neutral_case.py</affectedPath><affectedPath>clubb_jax/tests/test_pvertinterp.py</affectedPath><affectedPath>clubb_jax/tests/test_sunray_sw.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/gascon.py</affectedPath><affectedPath>clubb_jax/tests/test_numerical_check_setters.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/bugs_swr.py</affectedPath><affectedPath>clubb_jax/tests/test_clip_skewness.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/comscp2.py</affectedPath><affectedPath>clubb_jax/radiation.py</affectedPath><affectedPath>clubb_jax/tests/test_calc_ice_cloud_frac_component.py</affectedPath><affectedPath>clubb_jax/tests/test_advance_helper_extras.py</affectedPath><affectedPath>tests/run_python_vs_fortran_cases.py</affectedPath><affectedPath>clubb_jax/tests/test_error_code.py</affectedPath><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>clubb_jax/tests/test_calc_corr_norm_cholesky.py</affectedPath><affectedPath>clubb_jax/tests/test_routine_placement.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/new_tsdadg_pdf.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/advance_helper_module.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/KK_local_means.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/error_code_wrapper.F90</affectedPath><affectedPath>clubb_jax/tests/test_limits_f_x_responder.py</affectedPath><affectedPath>clubb_jax/tests/test_windm_edsclrm_lhs.py</affectedPath><affectedPath>clubb_jax/tests/test_xpyp_term_ta_godunov.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/newexp.py</affectedPath><affectedPath>clubb_jax/tests/test_f2py_advance_xm_wpxp.py</affectedPath><affectedPath>clubb_jax/tests/test_trivar_NLL_mean_eq.py</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/err_info_converter.py</affectedPath><affectedPath>clubb_jax/tests/test_cos_solar_zen.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/__init__.py</affectedPath><affectedPath>clubb_jax/tests/test_mpace_b_lba_tndcy.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/ekman.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/KK_upscaled_covariances.py</affectedPath><affectedPath>clubb_jax/src/Microphys/Morrison_microphys/__init__.py</affectedPath><affectedPath>clubb_jax/tests/test_nov11.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/saturation.py</affectedPath><affectedPath>clubb_jax/tests/test_setter_var_params.py</affectedPath><affectedPath>clubb_jax/tests/test_param_names.py</affectedPath><affectedPath>clubb_jax/tests/test_stats_writer.py</affectedPath><affectedPath>clubb_jax/tests/test_xm_correction_wpxp_cl.py</affectedPath><affectedPath>clubb_jax/tests/test_compute_sigma_sqd_w.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/gases_ckd.py</affectedPath><affectedPath>clubb_jax/io/surface.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/rico.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/__init__.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/KK_upscaled_turbulent_sed.py</affectedPath><affectedPath>clubb_jax/tests/test_bugsrad.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/bugs_rad.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/clip_explicit.py</affectedPath><affectedPath>clubb_jax/src/Microphys/Morrison_microphys/module_mp_graupel.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/arm_97.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/config_flags.py</affectedPath><affectedPath>clubb_jax/src/Benchmark_cases/gabls2.py</affectedPath><affectedPath>clubb_jax/tests/test_ice_dfsn.py</affectedPath><affectedPath>clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py</affectedPath><affectedPath>clubb_jax/src/Radiation/bugsrad_driver.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/KK_upscaled_means.py</affectedPath><affectedPath>clubb_jax/src/Microphys/KK_microphys/KK_utilities.py</affectedPath><affectedPath>clubb_jax/tests/test_comp_corr_norm.py</affectedPath><affectedPath>clubb_jax/tests/test_pdf_binormal_moments.py</affectedPath><affectedPath>clubb_jax/tests/test_gfdl_activation.py</affectedPath><affectedPath>clubb_jax/tests/test_compute_uv_tndcy.py</affectedPath><affectedPath>clubb_jax/src/Microphys/kk_microphys_step.py</affectedPath><affectedPath>clubb_jax/tests/test_compute_rtp2_from_chi.py</affectedPath><commitId>53920ce2095c4b721f59936d5933dd6da8bcb590</commitId><timestamp>1788372901000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Clubb JAX (#1351)

* Testing new porting shortcut by creating a jax version of advance_xm_wpxp.py - it wen't well. Also updating the porting shortcut with more tips.

* Small update to porting shortcut

* Iterative improvements to porting shortcut

* Using porting script to port advance_xp2_xpyp in one go - still some issues that seems to require rerunning to fix issues, which is sad but maybe the best we can do with such a simple method

* Little bug fixes

* Updates to make the ports create better jax in the sense that it is more jit-ready

* Adding a more general plan to also use CLUBB-JAX and using it on advance_xm_wpxp

* Cleanup

* More properly jax-izing the current jax ports

* More formatting of ported jax code

* More formatting of ported jax code

* Updates in pursuit of full jit-compatibility

* Adding jit compile test

* Fully jitting advance_xp2_xpyp

* Copying parameter_indices from CLUBB-JAX but subtracting 1 to avoid -1 in code

* Little update to port shortcut

* Jitting and formatting CLUBB-JAX

* Mostly formatting

* Updating jax code

* Improving stats outputting

* Compile mono flux range loops with JAX

* Improvement to jax mixing length port

* Organizing stats code

* Making jax work on GPU

* Improvements to prescribe forcings code

* Mainly prescribe forcings formatting work

* Small improvements, getting rid of unneccesary weird jit statement

* Radiation porting completed. Bugsrad and silhs radiation were
intentionally left out for now.

* Removing stale code and adding a proposal.md file detailing a potential future feature to make the python_api work with current jax code

* Proper port of model flags and parameters and constants and such - those there were all kinda put into one file before

* new jenkinsfile added

* Tiny cleanup and adding back some stats outputs for microphysics that we need for some reason

* limited to only one process. Find out built time

* made jenkins jax tests faster by running them not so extensively

* Mainly working on README, also some other tiny things: changing default test stats list to standard instead of all_stats, and renaming run_jax.sh to run_jax_wrapper.sh

---------

Co-authored-by: Daniel Ebel &lt;debel@uwm.edu&gt;
</comment><date>2026-09-02 13:15:01 -0500</date><id>53920ce2095c4b721f59936d5933dd6da8bcb590</id><msg>Clubb JAX (#1351)</msg><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/arm_0003.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_cholesky_factor.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/diffusion.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/arm.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calc_xprcp_component.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_time_select.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calendar.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_transform_pdf_chi_eta_component.py</file></path><path><editType>edit</editType><file>clubb_python_api/README.md</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/numerical_check.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_morrison_special.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/clubb_precision.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/mixed_moment_PDF_integrals.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_T_in_K.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/saturation.py</file></path><path><editType>add</editType><file>clubb_jax/src/__init__.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/cloud_correlate.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/KK_microphys/__init__.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/wangara.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_responder_params.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_pressure_sounding_z.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/mono_flux_limiter.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_cholesky_corr_mtx_approx.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_kk_rico_oracle.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/corr_varnce_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_close_luhar_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/bugs_swr.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/two_rt_sw.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calc_wp4_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/advance_microphys_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/adg1_adg2_3d_luhar_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_param_names.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/clubb_api.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/err_info.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/comscp2.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/constants_clubb.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_clip_covar.py</file></path><path><editType>add</editType><file>clubb_jax/src/Input_fields/input_reader.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/jun25.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_advance_xp3_simplified.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calc_pdf_skewness_diagnostics.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_sfc_varnce.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/tridiag_lu_solver.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/KK_microphys/parameters_KK.py</file></path><path><editType>edit</editType><file>tests/run_python_vs_fortran_cases.py</file></path><path><editType>add</editType><file>clubb_jax/src/Input_fields/input_names.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_comp_corr_norm.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calc_wpxpyp_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_inverse_hydrostatic.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/KK_microphys/KK_upscaled_means.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_w_up_in_cloud.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_Nc_Ncn_eqns.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calculate_thvm.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_radiation_port_structure.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/pos_definite_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/pdf_params.py</file></path><path><editType>delete</editType><file>clubb_jax/io/__init__.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>add</editType><file>clubb_jax/tests/test_spurious_source.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/precipitation_fraction.py</file></path><path><editType>delete</editType><file>clubb_jax/io/sounding.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/bugsrad_planck.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_penta_faithful.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_windm_edsclrm_rhs.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/cloudg.py</file></path><path><editType>delete</editType><file>clubb_jax/advance_clubb_to_end.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_gfdl_activation.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/new_hybrid_pdf.py</file></path><path><editType>delete</editType><file>clubb_jax/io/surface.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_diagnostic_cache.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/KK_microphys/parabolic_cylinder.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/nu_vert_res_dep.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/bugsrad_driver.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_grid_operators.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_cobra_sfclyr.py</file></path><path><editType>add</editType><file>clubb_jax/src/Input_fields/namelist.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/two_rt_lw.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/__init__.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/jax_stats.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/morrison_microphys_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_jit_compile.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_standalone_jax.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/bugsrad_physconst.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_adg1_adg2_responder_params.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calc_corr_norm_cholesky.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/spec_hum_to_mixing_ratio.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_hydromet_pdf_parameter.py</file></path><path><editType>edit</editType><file>clubb_jax/__init__.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_compute_sigma_sqd_w.py</file></path><path><editType>add</editType><file>clubb_jax/src/Input_fields/sounding.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_simple_rad.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/T_in_K_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_xm_correction_wpxp_cl.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_differentiability.py</file></path><path><editType>add</editType><file>clubb_jax/requirements-cuda13.txt</file></path><path><editType>add</editType><file>clubb_jax/tests/test_coefs_semiimpl.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_init_sequence.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/KK_microphys/KK_local_means.py</file></path><path><editType>add</editType><file>clubb_jax/src/advance_clubb_to_end.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_stats_output_time.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calc_wp3_on_wp2.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/Skx_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_morrison_differentiable.py</file></path><path><editType>edit</editType><file>LLM_prompts/port_underlying_fortran_to_other_languages.md</file></path><path><editType>add</editType><file>clubb_jax/tests/test_luhar_params.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_sfc_flux.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/derived_types/err_info.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/kk_microphys_step.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_kk_autoconversion.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/KK_microphys/KK_upscaled_variances.py</file></path><path><editType>delete</editType><file>clubb_jax/clubb_constants.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_NNL_covar_vs_MM.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/error_code.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/sigma_sqd_w_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/nov11.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_compute_rtp2_from_chi.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_nov11.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_routine_placement.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/advance_helper_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_NNL_covar_const_vs_MM.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_soil_vegetation.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/config_flags.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_component_corr_ip.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_rcm_sat_adj.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/time_dependent_input.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/rayle.py</file></path><path><editType>add</editType><file>clubb_jax/src/Input_fields/surface.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/calc_roots.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/sfc_flux.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/matrix_solver_wrapper.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calc_roots.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_cloud_correlate.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_clip_skewness.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/Nc_Ncn_eqns.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_kk_local_means.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/KK_microphys/KK_upscaled_turbulent_sed.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/bugs_lwr.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/ice_dfsn_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_bivar_LL_covar_partial.py</file></path><path><editType>delete</editType><file>clubb_jax/clubb_standalone.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/new_hybrid_pdf_main.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/pdf_utilities.py</file></path><path><editType>edit</editType><file>LLM_prompts/update_python_api_and_drivers.md</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_netcdf.F90</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/ekman.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/derived_types/err_info_converter.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/Morrison_microphys/module_mp_graupel.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_clip_variance.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_mixing_length.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_quadrivar_NNLL_covar_eq_swap.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_simple_rad_lba.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/KK_microphys/kk_microphys_driver.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/KK_microphys/KK_utilities.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/calc_pressure.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_unsupported_config_guards.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/atex.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_trivar_NNL_covar_eq.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/matrix_solver_wrapper.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/soil_vegetation.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_udt_return_contract.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/lba.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calc_corr_w_hm_n.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/rico.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calc_comp_corrs_binormal.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_pdf_binormal_moments.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/dycoms2_rf01.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_xm_wpxp_terms.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/mixing_length.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_xpyp_term_ta_godunov.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_compute_xp3.py</file></path><path><editType>add</editType><file>clubb_jax/requirements.txt</file></path><path><editType>add</editType><file>clubb_jax/tests/test_ice_dfsn.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calc_ice_cloud_frac_component.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_mixed_moment_pdf_integrals.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_pdf_utilities.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_error_code.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_smooth_heaviside.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/newexp.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_xpyp_term_ta_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_bivar_NL_mean_eq.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_stats.py</file></path><path><editType>add</editType><file>clubb_python_api/JAX_INTEROPERABILITY_PROPOSAL.md</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/neutral_case.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/grid_class.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_diagnose_upxp.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_quadrivar_covar_const_limits.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_mirror_lower_triangular.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_diffusion.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/advance_clubb_core_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_pressure_coord_forcing.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_index_mapping.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_read_surface_var_for_bc.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/advance_xp3_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/Input_fields/hydrostatic_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_denorm_transform_corr.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_lba_sfclyr.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/error_code_wrapper.F90</file></path><path><editType>add</editType><file>clubb_jax/tests/test_advance_helper_extras.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_config_flags_complete.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_pdf_params_pack_roundtrip.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/rad_lwsw_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/cloud_sed_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_constants.py</file></path><path><editType>edit</editType><file>.gitignore</file></path><path><editType>add</editType><file>clubb_jax/tests/test_remapping_ppm.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/sclr_idx.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_ly93_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/src/clubb_standalone.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_hydrostatic.py</file></path><path><editType>edit</editType><file>LLM_prompts/SHORTCUTS.md</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/KK_microphys/PDF_integrals_all_MM.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_no_dead_imports.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calc_liquid_cloud_frac_component.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/mean_adv.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/new_tsdadg_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/src/Input_fields/grid_file.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_f2py_advance_xm_wpxp.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/matrix_operations.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/atex_long.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/new_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_corr_varnce.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/dycoms2_rf02.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/file_functions.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/index_mapping.py</file></path><path><editType>delete</editType><file>clubb_jax/clubb_case_initalization.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_morrison_rates.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/setup_clubb_pdf_params.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_forcing_port_structure.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_silhs_surface_schemes.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_covar_KK_mixt_frac_linearity.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/gases_ckd.py</file></path><path><editType>add</editType><file>clubb_jax/src/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/error_code.py</file></path><path><editType>add</editType><file>clubb_jax/run_jax_wrapper.sh</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/astex_a209.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_cos_solar_zen.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/gfdl_activation.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_stats_writer.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_fill_holes_sliding_window.py</file></path><path><editType>delete</editType><file>clubb_jax/advance_clubb_core.py</file></path><path><editType>delete</editType><file>clubb_jax/radiation.py</file></path><path><editType>edit</editType><file>clubb_jax/JAX_CONVERSION_PLAN.md</file></path><path><editType>add</editType><file>clubb_jax/tests/test_fill_holes_mean.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/cloud_feedback.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_setter_var_params.py</file></path><path><editType>add</editType><file>clubb_jax/src/Input_fields/__init__.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/__init__.py</file></path><path><editType>edit</editType><file>clubb_python_driver/clubb_case_initalization.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_update_xp2_mc.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_trivar_NLL_mean_eq.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/parameters_radiation.py</file></path><path><editType>delete</editType><file>clubb_jax/io/namelist.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/gabls2.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/gabls3.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_limits_f_x_responder.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/simple_rad_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_new_pdf_main.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_sunray_sw.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/cobra.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/KK_microphys/PDF_integrals_covar.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_fill_holes_global.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_pvertinterp.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_interpolation.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/extended_atmosphere_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/arm_3year.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/mpace_a.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/KK_microphys/PDF_integrals_means.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/comscp1.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_liq_water_path.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_sponge_damp_xp23.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/diag_ustar_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/parameters_tunable.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/gascon.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/interpolation.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_saturation.py</file></path><path><editType>add</editType><file>jenkins_tests/compare_jax_vs_fortran/Jenkinsfile</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/__init__.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/advance_xp2_xpyp_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_bivar_LL_mean_const.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/pdf_closure_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_validation_checks.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_luhar_3d_driver.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_rad_extended_atmosphere.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/turbulent_adv_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/stats_clubb_utilities.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/cos_solar_zen_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_compute_uv_tndcy.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/BUGSrad/bugs_rad.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/advance_xm_wpxp_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_mono_flux_limiter.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calc_pdf_chi_mean_var.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/arm_97.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/parameter_indices.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/clip_explicit.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_new_tsdadg_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_binormal_moments.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/stats_netcdf.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/KK_microphys_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/tracer_numpy.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_radiation_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/remapping_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_max_cubic_root.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/mono_flux_limiter.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_mean_adv.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/model_flags.py</file></path><path><editType>add</editType><file>clubb_jax/src/Radiation/radiation_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calculate_w_responder_params.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/__init__.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/clip_explicit.py</file></path><path><editType>delete</editType><file>clubb_jax/io/grid_file.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/penta_lu_solver.py</file></path><path><editType>edit</editType><file>tests/run_jax_vs_fortran_cases.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/err_info_codes.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_bivar_LL_covar_partial_rr_Nr.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/diagnose_correlations_module.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_wp2_wp3_terms.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_adg2_driver.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/gabls3_night.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_xp2_xpyp_terms.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_pos_definite.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_diagnose_correlations.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/morrison_microphys_step.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/fire.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_wp2_wp3_lhs_terms.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_kk_upscaled_variances.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_no_dead_functions.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/prescribe_forcings.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_KK_Nrm_tendencies.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_mpace_b_lba_tndcy.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_gabls3_night_stability.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_new_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_skx_func.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/Morrison_microphys/__init__.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_windm_edsclrm_lhs.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/calendar.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/sfc_varnce_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/new_pdf_main.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_pdf_moment_integrals.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_remapping_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/KK_microphys/KK_upscaled_covariances.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/advance_wp2_wp3_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/KK_microphys/KK_Nrm_tendencies.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_hydrometp2_zt.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/sponge_layer_damping.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/__init__.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_bugsrad.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_solver.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_precip_fraction.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calc_comp_mu_sigma_hm.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/twp_ice.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_hydrometeor_mixed_moments.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_set_sfc_value_of_flux_profiles.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_cloud_feedback_sfclyr.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/mpace_b.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_component_precip_frac_specify.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_mono_flux.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_NNL_covar_const_limits.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_new_hybrid_pdf_main.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_mean_vert_vel_up_down.py</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_core.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_cloud_drop_sed.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/fill_holes.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_pdf_integrals_all_mm.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_penta_solver.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/advance_windm_edsclrm_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/Microphys/microphys_driver.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/hydromet_pdf_parameter_module.py</file></path><path><editType>add</editType><file>clubb_jax/src/Benchmark_cases/bomex.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_compute_gamma_skw.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_numerical_check_setters.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/LY93_pdf.py</file></path><path><editType>add</editType><file>clubb_jax/src/CLUBB_core/stats_metadata.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_calc_xpthvp_terms.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_pdf_params_init.py</file></path><path><editType>add</editType><file>clubb_jax/tests/test_spec_hum_to_mixing_ratio.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>570</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/570/</url></nextBuild><previousBuild><number>568</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/568/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>568</buildNumber><marked><SHA1>2cd63f391364ece6bd63ccffa31f7c4b421ee531</SHA1><branch><SHA1>2cd63f391364ece6bd63ccffa31f7c4b421ee531</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>2cd63f391364ece6bd63ccffa31f7c4b421ee531</SHA1><branch><SHA1>2cd63f391364ece6bd63ccffa31f7c4b421ee531</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>2cd63f391364ece6bd63ccffa31f7c4b421ee531</SHA1><branch><SHA1>2cd63f391364ece6bd63ccffa31f7c4b421ee531</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#568</displayName><duration>222106</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #568</fullDisplayName><id>568</id><keepLog>false</keepLog><number>568</number><queueId>7815</queueId><result>SUCCESS</result><timestamp>1787992026087</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/568/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/run_bindiff_w_varying_flags_against_master/Jenkinsfile</affectedPath><commitId>2cd63f391364ece6bd63ccffa31f7c4b421ee531</commitId><timestamp>1787963911000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Adding -debug to branch vs master bindiff test, this is to turn off compiler optimizations that can cause innocent changes to cause tiny differences
</comment><date>2026-08-28 19:38:31 -0500</date><id>2cd63f391364ece6bd63ccffa31f7c4b421ee531</id><msg>Adding -debug to branch vs master bindiff test, this is to turn off compiler optimizations that can cause innocent changes to cause tiny differences</msg><path><editType>edit</editType><file>jenkins_tests/run_bindiff_w_varying_flags_against_master/Jenkinsfile</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>569</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/569/</url></nextBuild><previousBuild><number>567</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/567/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>567</buildNumber><marked><SHA1>3a5ea18d3acadfec92c6af657031dddb5c1cb662</SHA1><branch><SHA1>3a5ea18d3acadfec92c6af657031dddb5c1cb662</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>3a5ea18d3acadfec92c6af657031dddb5c1cb662</SHA1><branch><SHA1>3a5ea18d3acadfec92c6af657031dddb5c1cb662</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>3a5ea18d3acadfec92c6af657031dddb5c1cb662</SHA1><branch><SHA1>3a5ea18d3acadfec92c6af657031dddb5c1cb662</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#567</displayName><duration>157260</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #567</fullDisplayName><id>567</id><keepLog>false</keepLog><number>567</number><queueId>7734</queueId><result>SUCCESS</result><timestamp>1787819226677</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/567/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_scm_all.py</affectedPath><commitId>3a5ea18d3acadfec92c6af657031dddb5c1cb662</commitId><timestamp>1787754687000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></author><authorEmail>hancoct@uwm.edu</authorEmail><comment>Attempted fix for Jenkins clubb_BFB_gfortran_test to include "bomex_5day_4scam" (#1349)
</comment><date>2026-08-26 09:31:27 -0500</date><id>3a5ea18d3acadfec92c6af657031dddb5c1cb662</id><msg>Attempted fix for Jenkins clubb_BFB_gfortran_test to include "bomex_5day_4scam" (#1349)</msg><path><editType>edit</editType><file>run_scripts/run_scm_all.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></culprit><inProgress>false</inProgress><nextBuild><number>568</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/568/</url></nextBuild><previousBuild><number>566</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/566/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>566</buildNumber><marked><SHA1>639e840b79fd413417d16751d1556da5ebc0e5e0</SHA1><branch><SHA1>639e840b79fd413417d16751d1556da5ebc0e5e0</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>639e840b79fd413417d16751d1556da5ebc0e5e0</SHA1><branch><SHA1>639e840b79fd413417d16751d1556da5ebc0e5e0</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>639e840b79fd413417d16751d1556da5ebc0e5e0</SHA1><branch><SHA1>639e840b79fd413417d16751d1556da5ebc0e5e0</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#566</displayName><duration>155837</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #566</fullDisplayName><id>566</id><keepLog>false</keepLog><number>566</number><queueId>7658</queueId><result>SUCCESS</result><timestamp>1787732826869</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/566/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_scm_all.py</affectedPath><commitId>49b28e58b3463c7c376bc4a49c6ba92b13c38739</commitId><timestamp>1787681276000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></author><authorEmail>hancoct@uwm.edu</authorEmail><comment>Adding 'bomex_5day_4scam' to MIN_CASES for Jenkins clubb_BFB_gfortran_test. This is BIT_CHANGING.
</comment><date>2026-08-25 13:07:56 -0500</date><id>49b28e58b3463c7c376bc4a49c6ba92b13c38739</id><msg>Adding 'bomex_5day_4scam' to MIN_CASES for Jenkins clubb_BFB_gfortran_test. This is BIT_CHANGING.</msg><path><editType>edit</editType><file>run_scripts/run_scm_all.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_scm_all.py</affectedPath><commitId>313fc4213b88e04bcd664f3155adb4fbaa04a3f1</commitId><timestamp>1787685286000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></author><authorEmail>hancoct@uwm.edu</authorEmail><comment>Added blank line in order to run Jenkins test
</comment><date>2026-08-25 14:14:46 -0500</date><id>313fc4213b88e04bcd664f3155adb4fbaa04a3f1</id><msg>Added blank line in order to run Jenkins test</msg><path><editType>edit</editType><file>run_scripts/run_scm_all.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_scm_all.py</affectedPath><commitId>55a6f491250c667eb115fb97202275c81c6a5cdd</commitId><timestamp>1787692415000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Add blank line in order to trigger Jenkins tests
</comment><date>2026-08-25 16:13:35 -0500</date><id>55a6f491250c667eb115fb97202275c81c6a5cdd</id><msg>Add blank line in order to trigger Jenkins tests</msg><path><editType>edit</editType><file>run_scripts/run_scm_all.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/Benchmark_cases/time_dependent_input.F90</affectedPath><commitId>639e840b79fd413417d16751d1556da5ebc0e5e0</commitId><timestamp>1787697926000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Bug fix: the i in rho is the column dimension, not time dimension. Since this fixes a bug, it is technically BIT_CHANGING
</comment><date>2026-08-25 17:45:26 -0500</date><id>639e840b79fd413417d16751d1556da5ebc0e5e0</id><msg>Bug fix: the i in rho is the column dimension, not time dimension. Since this fixes a bug, it is technically BIT_CHANGING</msg><path><editType>edit</editType><file>src/Benchmark_cases/time_dependent_input.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>567</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/567/</url></nextBuild><previousBuild><number>565</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/565/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>565</buildNumber><marked><SHA1>b2993e0082ef3958bb215698697b34655a20b1af</SHA1><branch><SHA1>b2993e0082ef3958bb215698697b34655a20b1af</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>b2993e0082ef3958bb215698697b34655a20b1af</SHA1><branch><SHA1>b2993e0082ef3958bb215698697b34655a20b1af</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>b2993e0082ef3958bb215698697b34655a20b1af</SHA1><branch><SHA1>b2993e0082ef3958bb215698697b34655a20b1af</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#565</displayName><duration>1929078</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #565</fullDisplayName><id>565</id><keepLog>false</keepLog><number>565</number><queueId>7563</queueId><result>SUCCESS</result><timestamp>1787646426774</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/565/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>clubb_python_api/clubb_python/prescribe_forcings.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/prescribe_forcings_module_wrapper.F90</affectedPath><affectedPath>clubb_python_driver/advance_clubb_to_end.py</affectedPath><commitId>d7fa9a72d2b8d10690060876afe44fd1c9677131</commitId><timestamp>1787602115000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Fixed clubb python (#1346)

- Necessary changes to get 'clubb_python_test_branch' jenkins test to pass
</comment><date>2026-08-24 15:08:35 -0500</date><id>d7fa9a72d2b8d10690060876afe44fd1c9677131</id><msg>Fixed clubb python (#1346)</msg><path><editType>edit</editType><file>clubb_python_api/clubb_python/prescribe_forcings.py</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_to_end.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/prescribe_forcings_module_wrapper.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><commitId>b2993e0082ef3958bb215698697b34655a20b1af</commitId><timestamp>1787604006000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Remove a blank line in order to trigger nightly tests

Removed unnecessary blank line at the beginning of the module.
</comment><date>2026-08-24 15:40:06 -0500</date><id>b2993e0082ef3958bb215698697b34655a20b1af</id><msg>Remove a blank line in order to trigger nightly tests</msg><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>566</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/566/</url></nextBuild><previousBuild><number>564</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/564/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>564</buildNumber><marked><SHA1>0c90d7040b1f163985b1f884eaf431e1c356cdf0</SHA1><branch><SHA1>0c90d7040b1f163985b1f884eaf431e1c356cdf0</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>0c90d7040b1f163985b1f884eaf431e1c356cdf0</SHA1><branch><SHA1>0c90d7040b1f163985b1f884eaf431e1c356cdf0</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>0c90d7040b1f163985b1f884eaf431e1c356cdf0</SHA1><branch><SHA1>0c90d7040b1f163985b1f884eaf431e1c356cdf0</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#564</displayName><duration>311866</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #564</fullDisplayName><id>564</id><keepLog>false</keepLog><number>564</number><queueId>7457</queueId><result>SUCCESS</result><timestamp>1787387228631</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/564/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>readiopdata_core_module.F90</affectedPath><commitId>bc3376036f8b43c5386c1b184bce90015fb8b153</commitId><timestamp>1630365994000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/isenfireldc</absoluteUrl><fullName>isenfireldc</fullName></author><authorEmail>isenfireldc@gmail.com</authorEmail><comment>Move readiopdata_core_module.F90 to a subdirectory for use with git-subtree
</comment><date>2021-08-30 18:26:34 -0500</date><id>bc3376036f8b43c5386c1b184bce90015fb8b153</id><msg>Move readiopdata_core_module.F90 to a subdirectory for use with git-subtree</msg><path><editType>add</editType><file>readiopdata_core_module.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>readiopdata_core_module.F90</affectedPath><commitId>7e7eac0320dbba47bc1ce08f1158fd9b55be22ed</commitId><timestamp>1787332097000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Updates to readiopdata_core and corresponding calls (#178)

 - readiopdata can now take in w or omega

* Necessary fixes and changes to work as well as be identical to clubb readiopdata_core_module
</comment><date>2026-08-21 12:08:17 -0500</date><id>7e7eac0320dbba47bc1ce08f1158fd9b55be22ed</id><msg>Updates to readiopdata_core and corresponding calls (#178)</msg><path><editType>edit</editType><file>readiopdata_core_module.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/Benchmark_cases/arm_0003.F90</affectedPath><affectedPath>input/case_setups/bomex_model.in</affectedPath><affectedPath>src/Input_fields/CMakeLists.txt</affectedPath><affectedPath>src/Benchmark_cases/arm_3year.F90</affectedPath><affectedPath>src/Input_fields/hydrostatic_module.F90</affectedPath><affectedPath>input/case_setups/BOMEX_5day_4scam.nc</affectedPath><affectedPath>src/Input_fields/input_interpret.F90</affectedPath><affectedPath>clubb_python_driver/io/sounding.py</affectedPath><affectedPath>src/Benchmark_cases/time_dependent_input.F90</affectedPath><affectedPath>input/case_setups/bomex_5day_4scam_model.in</affectedPath><affectedPath>src/readiopdata_module.F90</affectedPath><affectedPath>src/readiopdata_core/readiopdata_core_module.F90</affectedPath><affectedPath>clubb_python_driver/clubb_case_initalization.py</affectedPath><affectedPath>src/Benchmark_cases/bomex.F90</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>cmake/utils/CPPDefinitions.cmake</affectedPath><affectedPath>clubb_jax/io/sounding.py</affectedPath><affectedPath>src/Benchmark_cases/sfc_flux.F90</affectedPath><affectedPath>src/Input_fields/sounding.F90</affectedPath><affectedPath>utilities/case_setup/sclr_sounding_conversion.F90</affectedPath><affectedPath>src/Benchmark_cases/prescribe_forcings.F90</affectedPath><affectedPath>clubb_jax/clubb_case_initalization.py</affectedPath><affectedPath>src/Benchmark_cases/arm.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/prescribe_forcings_module_wrapper.F90</affectedPath><commitId>4aa411aa309abec014934f1589d435a83a9a4bec</commitId><timestamp>1787333459000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Bring readiopdata changes into master (#1343)

* Brought changes from readiopdata2 onto modern master branch

 - Currently code successfully compiles but fails to run

* Fixed errors, allowing for both cases to be run and plotted!

 - fixed variable names in .in files

* Fixes, add ifdef UWM_MISC statements, and changed alt_type/theta_type

* Added l_readiopdata into ALL bomex model.in files

* Code improvements

 - Fixed source code compilation check warnings

 - Checked and updated parameter order

 - All code I changed now has intent in/out labeled on calls

 - Found more instances of alt_type and theta_type to be renamed in clubb_jax and clubb_python

 - readiopdata_core_module.F90 moved into a folder to prepare for git subtrees

* Change to be identical to sam_clubb readiopdata_core_module and a fix in arm_0003

* Fix order of operations to fix cgils cases
</comment><date>2026-08-21 12:30:59 -0500</date><id>4aa411aa309abec014934f1589d435a83a9a4bec</id><msg>Bring readiopdata changes into master (#1343)</msg><path><editType>edit</editType><file>src/Benchmark_cases/sfc_flux.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/bomex.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/arm.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/prescribe_forcings_module_wrapper.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/arm_0003.F90</file></path><path><editType>edit</editType><file>src/Input_fields/CMakeLists.txt</file></path><path><editType>edit</editType><file>clubb_jax/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>src/Input_fields/hydrostatic_module.F90</file></path><path><editType>add</editType><file>src/readiopdata_module.F90</file></path><path><editType>add</editType><file>input/case_setups/bomex_5day_4scam_model.in</file></path><path><editType>edit</editType><file>src/Benchmark_cases/arm_3year.F90</file></path><path><editType>edit</editType><file>src/Input_fields/input_interpret.F90</file></path><path><editType>edit</editType><file>clubb_python_driver/io/sounding.py</file></path><path><editType>edit</editType><file>src/Benchmark_cases/prescribe_forcings.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/time_dependent_input.F90</file></path><path><editType>add</editType><file>src/readiopdata_core/readiopdata_core_module.F90</file></path><path><editType>edit</editType><file>input/case_setups/bomex_model.in</file></path><path><editType>edit</editType><file>src/Input_fields/sounding.F90</file></path><path><editType>add</editType><file>input/case_setups/BOMEX_5day_4scam.nc</file></path><path><editType>edit</editType><file>utilities/case_setup/sclr_sounding_conversion.F90</file></path><path><editType>edit</editType><file>clubb_python_driver/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>clubb_jax/io/sounding.py</file></path><path><editType>edit</editType><file>cmake/utils/CPPDefinitions.cmake</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/run_silhs_test.py</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>utilities/pytests/test_create_case_namelist.py</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><commitId>1f4ec8993842ad7859cefecdfab5e067b07c53fa</commitId><timestamp>1787333808000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Previous commit improved the robustness of -override option and teased out a couple bugs in tests, causing them to fail. This adds the ability to specify which namelist an override goes in if there's no associated key to replace, the failing tests can be fixed by making use of this. One test is fixed here, and the other needed a change in a BFB config hosted on the jenkins server.
</comment><date>2026-08-21 12:36:48 -0500</date><id>1f4ec8993842ad7859cefecdfab5e067b07c53fa</id><msg>Previous commit improved the robustness of -override option and teased out a couple bugs in tests, causing them to fail. This adds the ability to specify which namelist an override goes in if there's no associated key to replace, the failing tests can be fixed by making use of this. One test is fixed here, and the other needed a change in a BFB config hosted on the jenkins server.</msg><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>edit</editType><file>tests/run_silhs_test.py</file></path><path><editType>add</editType><file>utilities/pytests/test_create_case_namelist.py</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/readiopdata_module.F90</affectedPath><commitId>1b17c7eb82913aa29b80cb94f5280c9a81fb162f</commitId><timestamp>1787335615000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Removing unused dependency that can cause compilation to fail - seems compiler/build system dependent
</comment><date>2026-08-21 13:06:55 -0500</date><id>1b17c7eb82913aa29b80cb94f5280c9a81fb162f</id><msg>Removing unused dependency that can cause compilation to fail - seems compiler/build system dependent</msg><path><editType>edit</editType><file>src/readiopdata_module.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/readiopdata_core/readiopdata_core_module.F90</affectedPath><commitId>ec70668f175a08f982ca25797a9c7367f10e03d6</commitId><timestamp>1787335778000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></author><authorEmail>hancoct@uwm.edu</authorEmail><comment>Removed readiopdata_core to prepare for git subtrees
</comment><date>2026-08-21 13:09:38 -0500</date><id>ec70668f175a08f982ca25797a9c7367f10e03d6</id><msg>Removed readiopdata_core to prepare for git subtrees</msg><path><editType>delete</editType><file>src/readiopdata_core/readiopdata_core_module.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>readiopdata_core_module.F90</affectedPath><commitId>e49f15da4a620fb2c6af3b83858ca3a692847f54</commitId><timestamp>1787339796000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Add blank line to trigger gitUpdateScripts
</comment><date>2026-08-21 14:16:36 -0500</date><id>e49f15da4a620fb2c6af3b83858ca3a692847f54</id><msg>Add blank line to trigger gitUpdateScripts</msg><path><editType>edit</editType><file>readiopdata_core_module.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><commitId>1e0e2db32c6deda3a17097f6bd47ca31bed9c749</commitId><timestamp>1787339851000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Remove blank line to trigger nightly tests and gitUpdateScripts
</comment><date>2026-08-21 14:17:31 -0500</date><id>1e0e2db32c6deda3a17097f6bd47ca31bed9c749</id><msg>Remove blank line to trigger nightly tests and gitUpdateScripts</msg></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/isenfireldc</absoluteUrl><fullName>isenfireldc</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></culprit><inProgress>false</inProgress><nextBuild><number>565</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/565/</url></nextBuild><previousBuild><number>563</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/563/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>563</buildNumber><marked><SHA1>1db1e01971bca05b2e95037f97c94aae0a827a50</SHA1><branch><SHA1>1db1e01971bca05b2e95037f97c94aae0a827a50</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>1db1e01971bca05b2e95037f97c94aae0a827a50</SHA1><branch><SHA1>1db1e01971bca05b2e95037f97c94aae0a827a50</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>1db1e01971bca05b2e95037f97c94aae0a827a50</SHA1><branch><SHA1>1db1e01971bca05b2e95037f97c94aae0a827a50</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#563</displayName><duration>1765046</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #563</fullDisplayName><id>563</id><keepLog>false</keepLog><number>563</number><queueId>7324</queueId><result>SUCCESS</result><timestamp>1787300827118</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/563/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>dash_app/run_tab/tab.py</affectedPath><affectedPath>dash_app/pytests/test_agent_plot_actions.py</affectedPath><affectedPath>dash_app/services/jobs.py</affectedPath><affectedPath>tuner/enhanced_simann_strategy.py</affectedPath><affectedPath>dash_app/profile_tab/callbacks.py</affectedPath><affectedPath>dash_app/pytests/test_agent_tab_registry.py</affectedPath><affectedPath>dash_app/shared/activity.py</affectedPath><affectedPath>dash_app/tune_tab/callbacks_display.py</affectedPath><affectedPath>dash_app/assets/13_tab_tune_theme.css</affectedPath><affectedPath>input/flag_sets/run_bindiff_w_flags_config_core_flags.json</affectedPath><affectedPath>utilities/pytests/test_time_clubb.py</affectedPath><affectedPath>dash_app/run_tab/callbacks_console.py</affectedPath><affectedPath>dash_app/run_tab/config_state.py</affectedPath><affectedPath>dash_app/pytests/test_selected_build.py</affectedPath><affectedPath>dash_app/pytests/test_dashboard_activity_labels.py</affectedPath><affectedPath>dash_app/assets/38_plots_pyplotgen.js</affectedPath><affectedPath>dash_app/pytests/test_tunable_config_save.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/help_content.py</affectedPath><affectedPath>dash_app/pytests/test_output_directory_picker.py</affectedPath><affectedPath>dash_app/tune_tab/tab.py</affectedPath><affectedPath>dash_app/assets/37_workspace_persistence.js</affectedPath><affectedPath>utilities/pytests/test_timing_profiles.py</affectedPath><affectedPath>dash_app/persistence.py</affectedPath><affectedPath>dash_app/pytests/test_agent_tuning.py</affectedPath><affectedPath>dash_app/profile_tab/layout.py</affectedPath><affectedPath>src/SILHS/latin_hypercube_driver_module.F90</affectedPath><affectedPath>tuner/status.py</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>dash_app/plot_tab/static.py</affectedPath><affectedPath>dash_app/profile_tab/library.py</affectedPath><affectedPath>dash_app/pytests/test_dashboard_manager.py</affectedPath><affectedPath>dash_app/tune_tab/callbacks_runs.py</affectedPath><affectedPath>dash_app/tune_tab/layout.py</affectedPath><affectedPath>dash_app/pytests/test_run_broker_simplification.py</affectedPath><affectedPath>dash_app/agent_integration/mcp_server.py</affectedPath><affectedPath>dash_app/run_tab/callbacks_runs.py</affectedPath><affectedPath>run_scripts/run_tuner_job.py</affectedPath><affectedPath>dash_app/shared/selected_build.py</affectedPath><affectedPath>src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90</affectedPath><affectedPath>dash_app/tune_tab/callbacks_settings.py</affectedPath><affectedPath>dash_app/pytests/test_pyplotgen_output_handler.py</affectedPath><affectedPath>dash_app/run_tab/namelist.py</affectedPath><affectedPath>utilities/save_tunable_config.py</affectedPath><affectedPath>dash_app/profile_tab/runtime.py</affectedPath><affectedPath>dash_app/run_tab/callbacks_settings.py</affectedPath><affectedPath>dash_app/pytests/test_compile_tab_build_status.py</affectedPath><affectedPath>dash_app/agent_integration/handoff.py</affectedPath><affectedPath>dash_app/pytests/test_run_runtime.py</affectedPath><affectedPath>tuner/adam_spsa_strategy.py</affectedPath><affectedPath>dash_app/pytests/test_sam_3d_reference.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_params.py</affectedPath><affectedPath>dash_app/app.py</affectedPath><affectedPath>dash_app/run_tab/runtime.py</affectedPath><affectedPath>postprocessing/pyplotgen/src/OutputHandler.py</affectedPath><affectedPath>dash_app/run_tab/callbacks_selection.py</affectedPath><affectedPath>dash_app/pytests/test_activity.py</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>dash_app/DEVELOPMENT.md</affectedPath><affectedPath>dash_app/pytests/test_callbacks_runs.py</affectedPath><affectedPath>dash_app/pytests/test_scm_override.py</affectedPath><affectedPath>tuner/pytests/test_tuning_strategy.py</affectedPath><affectedPath>tuner/README.md</affectedPath><affectedPath>dash_app/plot_tab/callbacks_case.py</affectedPath><affectedPath>dash_app/pytests/test_persistence.py</affectedPath><affectedPath>dash_app/manager.py</affectedPath><affectedPath>dash_app/shared/broker.py</affectedPath><affectedPath>dash_app/pytests/test_run_callbacks_settings.py</affectedPath><affectedPath>src/CLUBB_core/pdf_closure_module.F90</affectedPath><affectedPath>dash_app/assets/37_run_console_state.js</affectedPath><affectedPath>dash_app/assets/09_selected_build_badge.css</affectedPath><affectedPath>tests/run_clubb_conv_test.py</affectedPath><affectedPath>dash_app/compile_tab/callbacks.py</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>utilities/time_clubb.py</affectedPath><affectedPath>dash_app/run_tab/telemetry.py</affectedPath><affectedPath>dash_app/assets/10_build_selector.js</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>dash_app/shared/broker_protocol.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/pdf_contour_plot.py</affectedPath><affectedPath>dash_app/pytests/test_pyplotgen_export.py</affectedPath><affectedPath>src/SILHS/silhs_importance_sample_module.F90</affectedPath><affectedPath>dash_app/pytests/test_analysis.py</affectedPath><affectedPath>dash_app/tune_tab/runtime.py</affectedPath><affectedPath>tuner/tuning_worker.py</affectedPath><affectedPath>dash_app/pytests/test_taylor_window_display.py</affectedPath><affectedPath>dash_app/compile_tab/tab.py</affectedPath><affectedPath>dash_app/services/models.py</affectedPath><affectedPath>dash_app/pytests/test_agent_services.py</affectedPath><affectedPath>dash_app/assets/20_autoscroll.js</affectedPath><affectedPath>postprocessing/pyplotgen/pyplotgen.py</affectedPath><affectedPath>src/CLUBB_core/setup_clubb_pdf_params.F90</affectedPath><affectedPath>dash_app/plot_tab/tab.py</affectedPath><affectedPath>dash_app/compile_tab/build_selector.py</affectedPath><affectedPath>utilities/timing_profiles.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_pyplotgen.py</affectedPath><affectedPath>dash_app/assets/15_tab_profile_theme.css</affectedPath><affectedPath>dash_app/misc_tab/mixing_length_trajectories/analysis.py</affectedPath><affectedPath>dash_app/pytests/test_profile_tab.py</affectedPath><affectedPath>dash_app/shared/gateway.py</affectedPath><affectedPath>dash_app/pytests/test_tune_callbacks_settings.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>tuner/pytests/test_adam_baselines.py</affectedPath><affectedPath>tuner/tuning_strategy.py</affectedPath><affectedPath>tuner/request.py</affectedPath><affectedPath>dash_app/pytests/test_runtime_loss_batches.py</affectedPath><affectedPath>dash_app/assets/11_tab_run_theme.css</affectedPath><affectedPath>dash_app/shared/runtime.py</affectedPath><affectedPath>dash_app/plot_tab/layout.py</affectedPath><affectedPath>dash_app/pytests/test_profiles.py</affectedPath><affectedPath>dash_app/plot_tab/pyplotgen_runtime.py</affectedPath><affectedPath>dash_app/assets/32_plots_output_menu.js</affectedPath><affectedPath>utilities/sam_3d_reference.py</affectedPath><affectedPath>dash_app/profile_tab/tab.py</affectedPath><affectedPath>dash_app/profile_tab/figures.py</affectedPath><affectedPath>dash_app/run_tab/state.py</affectedPath><affectedPath>dash_app/services/profiles.py</affectedPath><affectedPath>tests/pytests/test_run_clubb_conv_test.py</affectedPath><affectedPath>dash_app/pytests/test_param_disclosures.py</affectedPath><affectedPath>tuner/tuning_scheduler.py</affectedPath><affectedPath>dash_app/assets/12_tab_plots_theme.css</affectedPath><affectedPath>dash_app/assets/34_run_param_clientside.js</affectedPath><affectedPath>src/clubb_loss_driver.F90</affectedPath><affectedPath>dash_app/pytests/test_state_persistence.py</affectedPath><affectedPath>dash_app/pytests/test_pdf_contour_plot.py</affectedPath><commitId>1db1e01971bca05b2e95037f97c94aae0a827a50</commitId><timestamp>1787260825000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Improve Dash workflows and broker services (#1342)

* Improve Dash workflows and broker services

Streamline run telemetry and output-scoped admission, add build selection and pyplotgen export support, improve profile and tuning workflows, and make Tune failures column-local and recoverable.

* A little cleanup

* Simplification in SILHS to keep errors silent in debug=-1 mode, and removing accidental change in advance_clubb_core.F90

* Little dash fix and comment improvement

* Replacing scipy usage in the adam initial point choosing with numpy

* Removing l_rtm_nudge from flag set file used by run_bindiff_w_flags tests. This is technically a model_setting, so it shouldn't be here, and is already enabled by cgils_s12, so will remain tested in at least one case.
</comment><date>2026-08-20 16:20:25 -0500</date><id>1db1e01971bca05b2e95037f97c94aae0a827a50</id><msg>Improve Dash workflows and broker services (#1342)</msg><path><editType>edit</editType><file>utilities/sam_3d_reference.py</file></path><path><editType>edit</editType><file>tuner/tuning_scheduler.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_display.py</file></path><path><editType>delete</editType><file>dash_app/shared/selected_build.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/tab.py</file></path><path><editType>edit</editType><file>dash_app/persistence.py</file></path><path><editType>edit</editType><file>dash_app/agent_integration/handoff.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/layout.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/help_content.py</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>add</editType><file>dash_app/assets/38_plots_pyplotgen.js</file></path><path><editType>edit</editType><file>dash_app/pytests/test_runtime_loss_batches.py</file></path><path><editType>edit</editType><file>tests/run_clubb_conv_test.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_run_runtime.py</file></path><path><editType>edit</editType><file>dash_app/services/profiles.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_case.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_params.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_profiles.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_run_callbacks_settings.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_analysis.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_profile_tab.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/runtime.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_pyplotgen_export.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/pyplotgen_runtime.py</file></path><path><editType>edit</editType><file>run_scripts/run_tuner_job.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/tab.py</file></path><path><editType>edit</editType><file>dash_app/assets/11_tab_run_theme.css</file></path><path><editType>add</editType><file>dash_app/pytests/test_pyplotgen_output_handler.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_settings.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/callbacks.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/pdf_closure_module.F90</file></path><path><editType>edit</editType><file>dash_app/shared/gateway.py</file></path><path><editType>edit</editType><file>src/clubb_loss_driver.F90</file></path><path><editType>edit</editType><file>tuner/enhanced_simann_strategy.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/callbacks.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_scm_override.py</file></path><path><editType>edit</editType><file>dash_app/shared/runtime.py</file></path><path><editType>edit</editType><file>dash_app/shared/activity.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_taylor_window_display.py</file></path><path><editType>edit</editType><file>dash_app/shared/broker.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_persistence.py</file></path><path><editType>edit</editType><file>dash_app/manager.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/tab.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/layout.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_pdf_contour_plot.py</file></path><path><editType>edit</editType><file>src/SILHS/silhs_importance_sample_module.F90</file></path><path><editType>edit</editType><file>dash_app/services/models.py</file></path><path><editType>add</editType><file>dash_app/assets/10_build_selector.js</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>add</editType><file>dash_app/plot_tab/callbacks_pyplotgen.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/tab.py</file></path><path><editType>edit</editType><file>dash_app/assets/20_autoscroll.js</file></path><path><editType>edit</editType><file>dash_app/run_tab/config_state.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_agent_plot_actions.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/static.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/layout.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/library.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/tab.py</file></path><path><editType>edit</editType><file>tuner/tuning_worker.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_tunable_config_save.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/pdf_contour_plot.py</file></path><path><editType>edit</editType><file>dash_app/assets/15_tab_profile_theme.css</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_selection.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/figures.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_console.py</file></path><path><editType>add</editType><file>tests/pytests/test_run_clubb_conv_test.py</file></path><path><editType>edit</editType><file>tuner/README.md</file></path><path><editType>edit</editType><file>dash_app/pytests/test_tune_callbacks_settings.py</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/src/OutputHandler.py</file></path><path><editType>edit</editType><file>dash_app/shared/actions.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_run_broker_simplification.py</file></path><path><editType>edit</editType><file>dash_app/app.py</file></path><path><editType>edit</editType><file>dash_app/shared/broker_protocol.py</file></path><path><editType>add</editType><file>tuner/pytests/test_adam_baselines.py</file></path><path><editType>edit</editType><file>dash_app/assets/34_run_param_clientside.js</file></path><path><editType>edit</editType><file>dash_app/agent_integration/mcp_server.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90</file></path><path><editType>delete</editType><file>dash_app/assets/32_plots_output_menu.js</file></path><path><editType>edit</editType><file>src/SILHS/latin_hypercube_driver_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/setup_clubb_pdf_params.F90</file></path><path><editType>edit</editType><file>dash_app/services/jobs.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_dashboard_activity_labels.py</file></path><path><editType>edit</editType><file>tuner/status.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/runtime.py</file></path><path><editType>edit</editType><file>tuner/tuning_strategy.py</file></path><path><editType>edit</editType><file>utilities/time_clubb.py</file></path><path><editType>edit</editType><file>utilities/pytests/test_time_clubb.py</file></path><path><editType>edit</editType><file>dash_app/assets/37_workspace_persistence.js</file></path><path><editType>add</editType><file>dash_app/run_tab/telemetry.py</file></path><path><editType>edit</editType><file>dash_app/assets/09_selected_build_badge.css</file></path><path><editType>edit</editType><file>tuner/pytests/test_tuning_strategy.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_agent_tab_registry.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_settings.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_output_directory_picker.py</file></path><path><editType>edit</editType><file>tuner/request.py</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_runs.py</file></path><path><editType>add</editType><file>tuner/adam_spsa_strategy.py</file></path><path><editType>edit</editType><file>dash_app/assets/37_run_console_state.js</file></path><path><editType>edit</editType><file>utilities/pytests/test_timing_profiles.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_state_persistence.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_dashboard_manager.py</file></path><path><editType>edit</editType><file>dash_app/misc_tab/mixing_length_trajectories/analysis.py</file></path><path><editType>edit</editType><file>utilities/save_tunable_config.py</file></path><path><editType>edit</editType><file>input/flag_sets/run_bindiff_w_flags_config_core_flags.json</file></path><path><editType>edit</editType><file>dash_app/run_tab/namelist.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_runs.py</file></path><path><editType>edit</editType><file>dash_app/DEVELOPMENT.md</file></path><path><editType>add</editType><file>dash_app/pytests/test_sam_3d_reference.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_param_disclosures.py</file></path><path><editType>edit</editType><file>dash_app/assets/13_tab_tune_theme.css</file></path><path><editType>edit</editType><file>dash_app/pytests/test_agent_services.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_agent_tuning.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_selected_build.py</file></path><path><editType>edit</editType><file>dash_app/assets/12_tab_plots_theme.css</file></path><path><editType>edit</editType><file>dash_app/tune_tab/runtime.py</file></path><path><editType>add</editType><file>dash_app/compile_tab/build_selector.py</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/pyplotgen.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_compile_tab_build_status.py</file></path><path><editType>edit</editType><file>utilities/timing_profiles.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_activity.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_callbacks_runs.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/state.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>564</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/564/</url></nextBuild><previousBuild><number>562</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/562/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>562</buildNumber><marked><SHA1>e0ffe41f4e282a8f1686d43a2d7c881327408fe1</SHA1><branch><SHA1>e0ffe41f4e282a8f1686d43a2d7c881327408fe1</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>e0ffe41f4e282a8f1686d43a2d7c881327408fe1</SHA1><branch><SHA1>e0ffe41f4e282a8f1686d43a2d7c881327408fe1</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>e0ffe41f4e282a8f1686d43a2d7c881327408fe1</SHA1><branch><SHA1>e0ffe41f4e282a8f1686d43a2d7c881327408fe1</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#562</displayName><duration>93718</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #562</fullDisplayName><id>562</id><keepLog>false</keepLog><number>562</number><queueId>7207</queueId><result>SUCCESS</result><timestamp>1786696027564</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/562/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>dash_app/shared/broker.py</affectedPath><affectedPath>dash_app/shared/selected_build.py</affectedPath><affectedPath>dash_app/profile_tab/callbacks.py</affectedPath><affectedPath>dash_app/pytests/test_agent_tab_registry.py</affectedPath><affectedPath>dash_app/shared/activity.py</affectedPath><affectedPath>utilities/pytests/test_time_clubb.py</affectedPath><affectedPath>dash_app/assets/09_selected_build_badge.css</affectedPath><affectedPath>dash_app/profile_tab/__init__.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>dash_app/pytests/test_selected_build.py</affectedPath><affectedPath>dash_app/compile_tab/callbacks.py</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>dash_app/profile_tab/discovery.py</affectedPath><affectedPath>utilities/time_clubb.py</affectedPath><affectedPath>dash_app/profile_tab/runtime.py</affectedPath><affectedPath>dash_app/shared/broker_protocol.py</affectedPath><affectedPath>dash_app/pytests/test_compile_tab_build_status.py</affectedPath><affectedPath>utilities/pytests/test_timing_profiles.py</affectedPath><affectedPath>dash_app/app.py</affectedPath><affectedPath>dash_app/pytests/test_agent_integration.py</affectedPath><affectedPath>dash_app/profile_tab/layout.py</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>dash_app/profile_tab/tab.py</affectedPath><affectedPath>dash_app/profile_tab/figures.py</affectedPath><affectedPath>dash_app/pytests/test_activity.py</affectedPath><affectedPath>dash_app/profile_tab/library.py</affectedPath><affectedPath>dash_app/pytests/test_dashboard_manager.py</affectedPath><affectedPath>dash_app/tune_tab/layout.py</affectedPath><affectedPath>utilities/timing_profiles.py</affectedPath><affectedPath>dash_app/assets/15_tab_profile_theme.css</affectedPath><affectedPath>dash_app/manager.py</affectedPath><affectedPath>dash_app/pytests/test_profile_tab.py</affectedPath><commitId>e0ffe41f4e282a8f1686d43a2d7c881327408fe1</commitId><timestamp>1786669030000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Dash profiling tab (#1340)

* Adding dash time to profile code

* Little fix to benchmark output
</comment><date>2026-08-13 19:57:10 -0500</date><id>e0ffe41f4e282a8f1686d43a2d7c881327408fe1</id><msg>Dash profiling tab (#1340)</msg><path><editType>add</editType><file>utilities/pytests/test_timing_profiles.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_profile_tab.py</file></path><path><editType>add</editType><file>dash_app/assets/09_selected_build_badge.css</file></path><path><editType>add</editType><file>dash_app/shared/selected_build.py</file></path><path><editType>add</editType><file>utilities/timing_profiles.py</file></path><path><editType>edit</editType><file>dash_app/manager.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/callbacks.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_dashboard_manager.py</file></path><path><editType>add</editType><file>dash_app/profile_tab/runtime.py</file></path><path><editType>add</editType><file>dash_app/profile_tab/discovery.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_agent_tab_registry.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_activity.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_compile_tab_build_status.py</file></path><path><editType>add</editType><file>utilities/pytests/test_time_clubb.py</file></path><path><editType>add</editType><file>dash_app/assets/15_tab_profile_theme.css</file></path><path><editType>edit</editType><file>dash_app/pytests/test_agent_integration.py</file></path><path><editType>edit</editType><file>dash_app/shared/actions.py</file></path><path><editType>add</editType><file>dash_app/profile_tab/layout.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_selected_build.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>add</editType><file>dash_app/profile_tab/__init__.py</file></path><path><editType>add</editType><file>dash_app/profile_tab/tab.py</file></path><path><editType>edit</editType><file>dash_app/app.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/layout.py</file></path><path><editType>add</editType><file>utilities/time_clubb.py</file></path><path><editType>add</editType><file>dash_app/profile_tab/callbacks.py</file></path><path><editType>add</editType><file>dash_app/profile_tab/library.py</file></path><path><editType>edit</editType><file>dash_app/shared/broker_protocol.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>add</editType><file>dash_app/profile_tab/figures.py</file></path><path><editType>edit</editType><file>dash_app/shared/activity.py</file></path><path><editType>edit</editType><file>dash_app/shared/broker.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>563</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/563/</url></nextBuild><previousBuild><number>561</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/561/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>561</buildNumber><marked><SHA1>992b33894af364d6a4b1d73923529dde389015b9</SHA1><branch><SHA1>992b33894af364d6a4b1d73923529dde389015b9</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>992b33894af364d6a4b1d73923529dde389015b9</SHA1><branch><SHA1>992b33894af364d6a4b1d73923529dde389015b9</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>992b33894af364d6a4b1d73923529dde389015b9</SHA1><branch><SHA1>992b33894af364d6a4b1d73923529dde389015b9</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#561</displayName><duration>94425</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #561</fullDisplayName><id>561</id><keepLog>false</keepLog><number>561</number><queueId>7137</queueId><result>SUCCESS</result><timestamp>1786523229096</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/561/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>dash_app/shared/gateway.py</affectedPath><affectedPath>dash_app/shared/broker.py</affectedPath><affectedPath>dash_app/shared/manager_lease.py</affectedPath><affectedPath>dash_app/shared/runtime_logging.py</affectedPath><affectedPath>dash_app/pytests/test_tune_callbacks_settings.py</affectedPath><affectedPath>dash_app/tune_tab/callbacks_display.py</affectedPath><affectedPath>dash_app/tune_tab/callbacks_settings.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>dash_app/pytests/test_runtime_logging.py</affectedPath><affectedPath>dash_app/pytests/test_tunable_config_save.py</affectedPath><affectedPath>launch_dashboard.sh</affectedPath><affectedPath>utilities/save_tunable_config.py</affectedPath><affectedPath>dash_app/assets/11_tab_run_theme.css</affectedPath><affectedPath>dash_app/shared/broker_protocol.py</affectedPath><affectedPath>dash_app/run_tab/callbacks_settings.py</affectedPath><affectedPath>dash_app/assets/37_workspace_persistence.js</affectedPath><affectedPath>dash_app/pytests/test_analysis.py</affectedPath><affectedPath>dash_app/app.py</affectedPath><affectedPath>dash_app/assets/38_dashboard_generation.js</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>LLM_prompts/dash_app_workflow.md</affectedPath><affectedPath>dash_app/misc_tab/mixing_length_trajectories/callbacks.py</affectedPath><affectedPath>dash_app/pytests/test_dashboard_manager.py</affectedPath><affectedPath>dash_app/DEVELOPMENT.md</affectedPath><affectedPath>dash_app/misc_tab/mixing_length_trajectories/analysis.py</affectedPath><affectedPath>dash_app/manager.py</affectedPath><affectedPath>dash_app/pytests/test_app_startup.py</affectedPath><commitId>a2e1a527c4dec20d8256987ca0f93d97b40e2515</commitId><timestamp>1786469328000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Dash improvement to how dash+broker is managed, also adding config save button to run tab
</comment><date>2026-08-11 12:28:48 -0500</date><id>a2e1a527c4dec20d8256987ca0f93d97b40e2515</id><msg>Dash improvement to how dash+broker is managed, also adding config save button to run tab</msg><path><editType>edit</editType><file>dash_app/assets/37_workspace_persistence.js</file></path><path><editType>add</editType><file>dash_app/manager.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_runtime_logging.py</file></path><path><editType>edit</editType><file>dash_app/app.py</file></path><path><editType>edit</editType><file>dash_app/shared/broker_protocol.py</file></path><path><editType>add</editType><file>dash_app/assets/38_dashboard_generation.js</file></path><path><editType>add</editType><file>dash_app/pytests/test_dashboard_manager.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_display.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/shared/gateway.py</file></path><path><editType>edit</editType><file>dash_app/shared/runtime_logging.py</file></path><path><editType>edit</editType><file>LLM_prompts/dash_app_workflow.md</file></path><path><editType>edit</editType><file>dash_app/misc_tab/mixing_length_trajectories/callbacks.py</file></path><path><editType>edit</editType><file>launch_dashboard.sh</file></path><path><editType>add</editType><file>dash_app/shared/manager_lease.py</file></path><path><editType>edit</editType><file>dash_app/DEVELOPMENT.md</file></path><path><editType>edit</editType><file>dash_app/misc_tab/mixing_length_trajectories/analysis.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_settings.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_settings.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_tune_callbacks_settings.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_tunable_config_save.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_app_startup.py</file></path><path><editType>edit</editType><file>dash_app/shared/broker.py</file></path><path><editType>add</editType><file>utilities/save_tunable_config.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>edit</editType><file>dash_app/assets/11_tab_run_theme.css</file></path><path><editType>edit</editType><file>dash_app/shared/actions.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_analysis.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>dash_app/run_tab/callbacks_settings.py</affectedPath><affectedPath>dash_app/pytests/test_tunable_config_save.py</affectedPath><affectedPath>dash_app/assets/37_workspace_persistence.js</affectedPath><commitId>bdb4814bde210083394109eeecd6f61abf184bb2</commitId><timestamp>1786470282000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Little bug fix for new save config feature
</comment><date>2026-08-11 12:44:42 -0500</date><id>bdb4814bde210083394109eeecd6f61abf184bb2</id><msg>Little bug fix for new save config feature</msg><path><editType>edit</editType><file>dash_app/run_tab/callbacks_settings.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_tunable_config_save.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>edit</editType><file>dash_app/assets/37_workspace_persistence.js</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/run_clubb_conv_test.py</affectedPath><affectedPath>tests/README</affectedPath><commitId>992b33894af364d6a4b1d73923529dde389015b9</commitId><timestamp>1786471215000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Little improvement to convergence test - it makes nicer plots and reports the 4 and 8 point fitted slopes. The pass/fail criteria remains unchanged, so this is just a diagnostic improvement
</comment><date>2026-08-11 13:00:15 -0500</date><id>992b33894af364d6a4b1d73923529dde389015b9</id><msg>Little improvement to convergence test - it makes nicer plots and reports the 4 and 8 point fitted slopes. The pass/fail criteria remains unchanged, so this is just a diagnostic improvement</msg><path><editType>edit</editType><file>tests/run_clubb_conv_test.py</file></path><path><editType>edit</editType><file>tests/README</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>562</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/562/</url></nextBuild><previousBuild><number>560</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/560/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>560</buildNumber><marked><SHA1>c292c6c30e74faab2dc44ba5185d8885aa2f29d6</SHA1><branch><SHA1>c292c6c30e74faab2dc44ba5185d8885aa2f29d6</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>c292c6c30e74faab2dc44ba5185d8885aa2f29d6</SHA1><branch><SHA1>c292c6c30e74faab2dc44ba5185d8885aa2f29d6</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>c292c6c30e74faab2dc44ba5185d8885aa2f29d6</SHA1><branch><SHA1>c292c6c30e74faab2dc44ba5185d8885aa2f29d6</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#560</displayName><duration>1521413</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #560</fullDisplayName><id>560</id><keepLog>false</keepLog><number>560</number><queueId>7048</queueId><result>SUCCESS</result><timestamp>1786436827178</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/560/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>dash_app/pytests/test_fill_holes_viewer.py</affectedPath><affectedPath>src/CLUBB_core/advance_xm_wpxp_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_wp2_wp3_module.F90</affectedPath><affectedPath>dash_app/misc_tab/fill_holes_viewer/callbacks.py</affectedPath><affectedPath>input/stats/all_stats.in</affectedPath><affectedPath>dash_app/misc_tab/fill_holes_viewer/figures.py</affectedPath><affectedPath>dash_app/misc_tab/fill_holes_viewer/__init__.py</affectedPath><affectedPath>dash_app/misc_tab/fill_holes_viewer/analysis.py</affectedPath><affectedPath>dash_app/fill_holes.py</affectedPath><affectedPath>dash_app/misc_tab/fill_holes_viewer/layout.py</affectedPath><affectedPath>dash_app/assets/23_fill_holes_viewer.css</affectedPath><affectedPath>src/CLUBB_core/advance_xp2_xpyp_module.F90</affectedPath><commitId>c292c6c30e74faab2dc44ba5185d8885aa2f29d6</commitId><timestamp>1786417963000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Fill holes tab (#1339)

* New fill holes misc tab, requires some new stats outputs, but I think we can remove some

* Small UI improvements and removing unnecessary new stats

* Removing old fill holes dash file
</comment><date>2026-08-10 22:12:43 -0500</date><id>c292c6c30e74faab2dc44ba5185d8885aa2f29d6</id><msg>Fill holes tab (#1339)</msg><path><editType>edit</editType><file>src/CLUBB_core/advance_xp2_xpyp_module.F90</file></path><path><editType>add</editType><file>dash_app/misc_tab/fill_holes_viewer/analysis.py</file></path><path><editType>add</editType><file>dash_app/misc_tab/fill_holes_viewer/figures.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_fill_holes_viewer.py</file></path><path><editType>add</editType><file>dash_app/misc_tab/fill_holes_viewer/callbacks.py</file></path><path><editType>add</editType><file>dash_app/misc_tab/fill_holes_viewer/__init__.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xm_wpxp_module.F90</file></path><path><editType>add</editType><file>dash_app/assets/23_fill_holes_viewer.css</file></path><path><editType>edit</editType><file>input/stats/all_stats.in</file></path><path><editType>delete</editType><file>dash_app/fill_holes.py</file></path><path><editType>add</editType><file>dash_app/misc_tab/fill_holes_viewer/layout.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_wp2_wp3_module.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>561</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/561/</url></nextBuild><previousBuild><number>559</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/559/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>559</buildNumber><marked><SHA1>110ac18b98f0f290b51ea65fa6d452a4a6b12284</SHA1><branch><SHA1>110ac18b98f0f290b51ea65fa6d452a4a6b12284</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>110ac18b98f0f290b51ea65fa6d452a4a6b12284</SHA1><branch><SHA1>110ac18b98f0f290b51ea65fa6d452a4a6b12284</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>110ac18b98f0f290b51ea65fa6d452a4a6b12284</SHA1><branch><SHA1>110ac18b98f0f290b51ea65fa6d452a4a6b12284</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#559</displayName><duration>96031</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #559</fullDisplayName><id>559</id><keepLog>false</keepLog><number>559</number><queueId>6950</queueId><result>SUCCESS</result><timestamp>1786004829966</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/559/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>dash_app/agent_integration/handoff.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/shared.py</affectedPath><affectedPath>dash_app/app.py</affectedPath><affectedPath>dash_app/shared/output_discovery.py</affectedPath><affectedPath>dash_app/pytests/test_profiles.py</affectedPath><affectedPath>dash_app/shared/activity.py</affectedPath><affectedPath>dash_app/assets/32_plots_output_menu.js</affectedPath><affectedPath>dash_app/assets/33_dashboard_title.js</affectedPath><affectedPath>dash_app/pytests/test_activity.py</affectedPath><affectedPath>dash_app/services/profiles.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_grid.py</affectedPath><affectedPath>dash_app/pytests/test_callbacks_runs.py</affectedPath><affectedPath>dash_app/pytests/test_plot_grid_updates.py</affectedPath><affectedPath>dash_app/pytests/test_output_discovery.py</affectedPath><affectedPath>dash_app/assets/12_tab_plots_theme.css</affectedPath><affectedPath>dash_app/run_tab/callbacks_runs.py</affectedPath><affectedPath>dash_app/plot_tab/layout.py</affectedPath><affectedPath>dash_app/pytests/test_output_directory_picker.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_case.py</affectedPath><affectedPath>dash_app/pytests/test_state_persistence.py</affectedPath><commitId>110ac18b98f0f290b51ea65fa6d452a4a6b12284</commitId><timestamp>1785964126000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Small improvements to dash app, mainly plots tab output picker
</comment><date>2026-08-05 16:08:46 -0500</date><id>110ac18b98f0f290b51ea65fa6d452a4a6b12284</id><msg>Small improvements to dash app, mainly plots tab output picker</msg><path><editType>add</editType><file>dash_app/assets/32_plots_output_menu.js</file></path><path><editType>edit</editType><file>dash_app/plot_tab/layout.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_output_directory_picker.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_runs.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_profiles.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_state_persistence.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_plot_grid_updates.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_activity.py</file></path><path><editType>edit</editType><file>dash_app/app.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_output_discovery.py</file></path><path><editType>edit</editType><file>dash_app/services/profiles.py</file></path><path><editType>edit</editType><file>dash_app/agent_integration/handoff.py</file></path><path><editType>edit</editType><file>dash_app/assets/12_tab_plots_theme.css</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_grid.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_callbacks_runs.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_case.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/shared.py</file></path><path><editType>add</editType><file>dash_app/assets/33_dashboard_title.js</file></path><path><editType>edit</editType><file>dash_app/shared/activity.py</file></path><path><editType>edit</editType><file>dash_app/shared/output_discovery.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>560</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/560/</url></nextBuild><previousBuild><number>558</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/558/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>558</buildNumber><marked><SHA1>4b6a1f233bafc1d0a52abf1924d830b2391a7407</SHA1><branch><SHA1>4b6a1f233bafc1d0a52abf1924d830b2391a7407</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>4b6a1f233bafc1d0a52abf1924d830b2391a7407</SHA1><branch><SHA1>4b6a1f233bafc1d0a52abf1924d830b2391a7407</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>4b6a1f233bafc1d0a52abf1924d830b2391a7407</SHA1><branch><SHA1>4b6a1f233bafc1d0a52abf1924d830b2391a7407</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#558</displayName><duration>2118612</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #558</fullDisplayName><id>558</id><keepLog>false</keepLog><number>558</number><queueId>6864</queueId><result>SUCCESS</result><timestamp>1785918429479</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/558/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_python_driver/README.md</affectedPath><affectedPath>dash_app/pytests/test_custom_plot.py</affectedPath><affectedPath>dash_app/run_tab/tab.py</affectedPath><affectedPath>dash_app/services/jobs.py</affectedPath><affectedPath>tuner/parameter_ranges.py</affectedPath><affectedPath>tuner/enhanced_simann_strategy.py</affectedPath><affectedPath>dash_app/shared/background.py</affectedPath><affectedPath>dash_app/tune_tab/callbacks_display.py</affectedPath><affectedPath>doc/reports/resize_raster_assets.py</affectedPath><affectedPath>dash_app/assets/13_tab_tune_theme.css</affectedPath><affectedPath>dash_app/pytests/test_runtime.py</affectedPath><affectedPath>dash_app/assets/14_tab_compile_theme.css</affectedPath><affectedPath>doc/reports/index.json</affectedPath><affectedPath>dash_app/run_tab/config_state.py</affectedPath><affectedPath>dash_app/misc_tab/registry.py</affectedPath><affectedPath>doc/reports/sam-heatmap-coloring-examples-20h30/figures/raw-sam-wrt-color-signals.png</affectedPath><affectedPath>launch_dashboard.sh</affectedPath><affectedPath>dash_app/tune_tab/tab.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</affectedPath><affectedPath>dash_app/pytests/test_bivariate_heatmap.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/shared.py</affectedPath><affectedPath>dash_app/persistence.py</affectedPath><affectedPath>tuner/workspaces.py</affectedPath><affectedPath>dash_app/pytests/test_agent_tuning.py</affectedPath><affectedPath>tuner/status.py</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>src/CLUBB_core/advance_xp2_xpyp_module.F90</affectedPath><affectedPath>clubb_python_driver/clubb_case_initalization.py</affectedPath><affectedPath>dash_app/shared/reporting.py</affectedPath><affectedPath>dash_app/agent_integration/endpoint.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_grid.py</affectedPath><affectedPath>dash_app/pytests/test_reports_tab.py</affectedPath><affectedPath>dash_app/shared/netcdf.py</affectedPath><affectedPath>dash_app/agent_integration/mcp_server.py</affectedPath><affectedPath>dash_app/shared/tab_registry.py</affectedPath><affectedPath>dash_app/run_tab/callbacks_runs.py</affectedPath><affectedPath>dash_app/requirements.txt</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>tuner/presets.py</affectedPath><affectedPath>dash_app/assets/36_tune_ui_resize.js</affectedPath><affectedPath>dash_app/plot_tab/state.py</affectedPath><affectedPath>dash_app/assets/26_tab_reports.css</affectedPath><affectedPath>dash_app/tune_tab/callbacks_settings.py</affectedPath><affectedPath>jenkins_tests/clubb_driver_test/Jenkinsfile</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/numerical_check.py</affectedPath><affectedPath>tests/run_benchmark_converter_test.py</affectedPath><affectedPath>dash_app/reports_tab/publisher.py</affectedPath><affectedPath>doc/reports/sam-heatmap-coloring-examples-20h30/data/raw-sam-wrt-rc-vs-rt.json</affectedPath><affectedPath>dash_app/run_tab/callbacks_settings.py</affectedPath><affectedPath>dash_app/assets/31_plots_ui_resize.js</affectedPath><affectedPath>dash_app/reports_tab/layout.py</affectedPath><affectedPath>dash_app/pytests/test_run_runtime.py</affectedPath><affectedPath>dash_app/agent_integration/broker_endpoint.py</affectedPath><affectedPath>utilities/pytests/test_create_multi_col_params.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_params.py</affectedPath><affectedPath>tuner/sample_history.py</affectedPath><affectedPath>dash_app/app.py</affectedPath><affectedPath>dash_app/run_tab/runtime.py</affectedPath><affectedPath>dash_app/run_tab/callbacks_selection.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/profile_plot.py</affectedPath><affectedPath>tests/analyze_tuner_sample_history.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/subcolumn_plot.py</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>dash_app/tune_tab/callbacks_workspaces.py</affectedPath><affectedPath>README</affectedPath><affectedPath>dash_app/reports_tab/tab.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_case.py</affectedPath><affectedPath>tuner/pytests/test_presets.py</affectedPath><affectedPath>dash_app/pytests/test_app_startup.py</affectedPath><affectedPath>dash_app/pytests/test_tutorial_tab.py</affectedPath><affectedPath>dash_app/assets/33_run_param_rows.js</affectedPath><affectedPath>dash_app/assets/05_shared_modal.css</affectedPath><affectedPath>doc/reports/sam-heatmap-coloring-examples-20h30/manifest.json</affectedPath><affectedPath>dash_app/pytests/test_run_callbacks_settings.py</affectedPath><affectedPath>dash_app/shared/runtime_logging.py</affectedPath><affectedPath>dash_app/shared/provenance.py</affectedPath><affectedPath>dash_app/tutorial_tab/clubb_equations_demo/content.py</affectedPath><affectedPath>run_scripts/README.md</affectedPath><affectedPath>dash_app/services/__init__.py</affectedPath><affectedPath>dash_app/shared/components.py</affectedPath><affectedPath>dash_app/agent_integration/client.py</affectedPath><affectedPath>utilities/pytests/test_clubb_settings_resolution.py</affectedPath><affectedPath>tuner/pytests/test_parameter_ranges.py</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>dash_app/compile_tab/layout.py</affectedPath><affectedPath>dash_app/misc_tab/mixing_length_trajectories/figures.py</affectedPath><affectedPath>tuner/case_defaults.json</affectedPath><affectedPath>tests/run_jax_vs_fortran_cases.py</affectedPath><affectedPath>dash_app/pytests/test_analysis.py</affectedPath><affectedPath>dash_app/tune_tab/runtime.py</affectedPath><affectedPath>tuner/presets.json</affectedPath><affectedPath>tuner/tuning_worker.py</affectedPath><affectedPath>dash_app/tutorial_tab/clubb_equations_demo/components.py</affectedPath><affectedPath>dash_app/pytests/test_taylor_window_display.py</affectedPath><affectedPath>dash_app/plot_tab/benchmark_overlay.py</affectedPath><affectedPath>dash_app/services/models.py</affectedPath><affectedPath>utilities/clubb_settings_validation.py</affectedPath><affectedPath>dash_app/pytests/test_two_gaussian_model.py</affectedPath><affectedPath>dash_app/shared/gateway.py</affectedPath><affectedPath>dash_app/pytests/test_atlas.py</affectedPath><affectedPath>tuner/job_runtime.py</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>dash_app/pytests/test_tune_callbacks_settings.py</affectedPath><affectedPath>dash_app/tutorial_tab/clubb_equations_demo/app.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/parameters_tunable.py</affectedPath><affectedPath>dash_app/misc_tab/tab.py</affectedPath><affectedPath>tuner/request.py</affectedPath><affectedPath>jenkins_tests/clubb_gpu_async_output_matching/Jenkinsfile</affectedPath><affectedPath>utilities/benchmark_converter.py</affectedPath><affectedPath>dash_app/pytests/test_netcdf.py</affectedPath><affectedPath>dash_app/tutorial_tab/clubb_equations_demo/__init__.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/base_plot.py</affectedPath><affectedPath>dash_app/tutorial_tab/callbacks.py</affectedPath><affectedPath>dash_app/pytests/test_mcp_endpoint.py</affectedPath><affectedPath>dash_app/assets/11_tab_run_theme.css</affectedPath><affectedPath>clubb_jax/clubb_case_initalization.py</affectedPath><affectedPath>LLM_prompts/SHORTCUTS.md</affectedPath><affectedPath>dash_app/misc_tab/mixing_length_trajectories/layout.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_controls.py</affectedPath><affectedPath>dash_app/tutorial_tab/clubb_equations.py</affectedPath><affectedPath>dash_app/misc_tab/sam_w_rt_neighborhood/generation.py</affectedPath><affectedPath>dash_app/pytests/test_agent_integration.py</affectedPath><affectedPath>utilities/sam_3d_reference.py</affectedPath><affectedPath>dash_app/shared/tunable_configs.py</affectedPath><affectedPath>dash_app/misc_tab/sam_w_rt_neighborhood/__init__.py</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>dash_app/shared/notecard.py</affectedPath><affectedPath>dash_app/assets/25_tab_misc.css</affectedPath><affectedPath>utilities/create_multi_col_params.py</affectedPath><affectedPath>utilities/pytests/test_settings_rules.py</affectedPath><affectedPath>tuner/tuning_scheduler.py</affectedPath><affectedPath>dash_app/assets/12_tab_plots_theme.css</affectedPath><affectedPath>dash_app/reports_tab/__init__.py</affectedPath><affectedPath>dash_app/pytests/test_state_persistence.py</affectedPath><affectedPath>dash_app/pytests/test_pdf_contour_plot.py</affectedPath><affectedPath>run_scripts/run_tuner.py</affectedPath><affectedPath>dash_app/pytests/test_agent_plot_actions.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/parameters_tunable_wrapper.F90</affectedPath><affectedPath>dash_app/pytests/test_agent_tab_registry.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/stats_netcdf_wrapper.F90</affectedPath><affectedPath>dash_app/shared/activity.py</affectedPath><affectedPath>doc/reports/README.md</affectedPath><affectedPath>utilities/output_paths.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/registry.py</affectedPath><affectedPath>run_scripts/run_scm_loss.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/custom_plot.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/help_content.py</affectedPath><affectedPath>dash_app/pytests/test_output_directory_picker.py</affectedPath><affectedPath>dash_app/assets/37_workspace_persistence.js</affectedPath><affectedPath>dash_app/assets/17_workspace_persistence.css</affectedPath><affectedPath>src/CLUBB_core/parameters_tunable.F90</affectedPath><affectedPath>dash_app/assets/30_run_ui_resize.js</affectedPath><affectedPath>src/CLUBB_core/clubb_api_module.F90</affectedPath><affectedPath>dash_app/assets/22_tab_misc_labs.css</affectedPath><affectedPath>tests/run_clubb_settings_validation_test.py</affectedPath><affectedPath>dash_app/tune_tab/callbacks_runs.py</affectedPath><affectedPath>jenkins_tests/clubb_plot_solver_compare/Jenkinsfile</affectedPath><affectedPath>dash_app/tune_tab/layout.py</affectedPath><affectedPath>dash_app/assets/32_plots_constant_param_rows.js</affectedPath><affectedPath>dash_app/tune_tab/discovery.py</affectedPath><affectedPath>run_scripts/run_tuner_job.py</affectedPath><affectedPath>dash_app/tunable_configs.py</affectedPath><affectedPath>dash_app/assets/39_dashboard_tab_scroll.js</affectedPath><affectedPath>dash_app/assets/28_misc_mixing_length_trajectories.css</affectedPath><affectedPath>tuner/test_tuning_strategy.py</affectedPath><affectedPath>dash_app/assets/18_tab_tutorial_theme.css</affectedPath><affectedPath>dash_app/pytests/test_plot_transitions.py</affectedPath><affectedPath>dash_app/misc_tab/__init__.py</affectedPath><affectedPath>dash_app/run_tab/namelist.py</affectedPath><affectedPath>dash_app/pytests/test_runtime_logging.py</affectedPath><affectedPath>dash_app/reports_tab/static.py</affectedPath><affectedPath>LLM_prompts/update_host_models_after_clubb_changes.md</affectedPath><affectedPath>dash_app/pytests/test_compile_tab_build_status.py</affectedPath><affectedPath>dash_app/agent_integration/handoff.py</affectedPath><affectedPath>dash_app/shared/dashboard_registry.py</affectedPath><affectedPath>dash_app/tutorial_tab/layout.py</affectedPath><affectedPath>clubb_python_api/tests/test_init_sequence.py</affectedPath><affectedPath>dash_app/agent_integration/__init__.py</affectedPath><affectedPath>dash_app/tutorial_tab/welcome.py</affectedPath><affectedPath>dash_app/compile_tab/test_compile_tab_build_status.py</affectedPath><affectedPath>src/CLUBB_core/numerical_check.F90</affectedPath><affectedPath>dash_app/pytests/test_activity.py</affectedPath><affectedPath>doc/reports/sam-heatmap-coloring-examples-20h30/data/raw-sam-wrt-color-signals.json</affectedPath><affectedPath>doc/reports/sam-heatmap-coloring-examples-20h30/figures/raw-sam-wrt-rc-vs-rt.png</affectedPath><affectedPath>dash_app/pytests/test_callbacks_runs.py</affectedPath><affectedPath>dash_app/DEVELOPMENT.md</affectedPath><affectedPath>dash_app/pytests/test_scm_override.py</affectedPath><affectedPath>dash_app/shared/two_gaussian_model.py</affectedPath><affectedPath>dash_app/shared/broker_client.py</affectedPath><affectedPath>tuner/pytests/test_tuning_strategy.py</affectedPath><affectedPath>tuner/README.md</affectedPath><affectedPath>tuner/pytests/test_workspaces.py</affectedPath><affectedPath>dash_app/tune_tab/state.py</affectedPath><affectedPath>dash_app/pytests/test_persistence.py</affectedPath><affectedPath>dash_app/shared/broker.py</affectedPath><affectedPath>dash_app/shared/bivariate_heatmap.py</affectedPath><affectedPath>clubb_python_api/clubb_python/clubb_api.py</affectedPath><affectedPath>dash_app/assets/37_run_console_state.js</affectedPath><affectedPath>dash_app/agent_integration/dashboard_lifecycle.py</affectedPath><affectedPath>utilities/les_chi_moments.py</affectedPath><affectedPath>dash_app/tutorial_tab/__init__.py</affectedPath><affectedPath>doc/reports/sam-heatmap-coloring-examples-20h30/generate_color_signal_examples.py</affectedPath><affectedPath>dash_app/pytests/test_dashboard_lifecycle.py</affectedPath><affectedPath>dash_app/compile_tab/callbacks.py</affectedPath><affectedPath>tuner/taylor_metrics.py</affectedPath><affectedPath>dash_app/misc_tab/layout.py</affectedPath><affectedPath>dash_app/services/plots.py</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>dash_app/shared/broker_protocol.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/pdf_contour_plot.py</affectedPath><affectedPath>dash_app/misc_tab/sam_w_rt_neighborhood/atlas.py</affectedPath><affectedPath>tests/README</affectedPath><affectedPath>dash_app/shared/output_discovery.py</affectedPath><affectedPath>dash_app/compile_tab/runtime.py</affectedPath><affectedPath>dash_app/pytests/test_equations.py</affectedPath><affectedPath>jenkins_tests/clubb_python_test/Jenkinsfile</affectedPath><affectedPath>LLM_prompts/dash_app_workflow.md</affectedPath><affectedPath>dash_app/misc_tab/mixing_length_trajectories/callbacks.py</affectedPath><affectedPath>dash_app/pytests/test_agent_services.py</affectedPath><affectedPath>dash_app/pytests/test_misc_tab.py</affectedPath><affectedPath>dash_app/misc_tab/sam_w_rt_neighborhood/tab.py</affectedPath><affectedPath>AGENTS.md</affectedPath><affectedPath>tests/run_python_vs_fortran_cases.py</affectedPath><affectedPath>dash_app/pytests/test_output_discovery.py</affectedPath><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>jenkins_tests/clubb_new_tuner_test/Jenkinsfile</affectedPath><affectedPath>utilities/pytests/test_output_paths.py</affectedPath><affectedPath>dash_app/misc_tab/mixing_length_trajectories/analysis.py</affectedPath><affectedPath>dash_app/misc_tab/mixing_length_trajectories/__init__.py</affectedPath><affectedPath>dash_app/tutorial_tab/adg1_gaussian_explorer.py</affectedPath><affectedPath>tests/run_pytests.sh</affectedPath><affectedPath>tuner/tuning_strategy.py</affectedPath><affectedPath>dash_app/shared/__init__.py</affectedPath><affectedPath>dash_app/pytests/test_runtime_loss_batches.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/budget_plot.py</affectedPath><affectedPath>doc/reports/sam-heatmap-coloring-examples-20h30/report.html</affectedPath><affectedPath>dash_app/shared/runtime.py</affectedPath><affectedPath>dash_app/plot_tab/layout.py</affectedPath><affectedPath>dash_app/tutorial_tab/tab.py</affectedPath><affectedPath>clubb_python_api/CMakeLists.txt</affectedPath><affectedPath>doc/reports/sam-heatmap-coloring-examples-20h30/generate_rc_vs_rt_example.py</affectedPath><affectedPath>dash_app/pytests/test_workspace_selection.py</affectedPath><affectedPath>dash_app/assets/10_theme.css</affectedPath><affectedPath>dash_app/pytests/test_profiles.py</affectedPath><affectedPath>dash_app/services/profiles.py</affectedPath><affectedPath>dash_app/pytests/test_plot_help.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/specs.py</affectedPath><affectedPath>dash_app/assets/19_tutorial_equations.css</affectedPath><affectedPath>dash_app/pytests/test_param_disclosures.py</affectedPath><affectedPath>dash_app/assets/34_run_param_clientside.js</affectedPath><affectedPath>dash_app/reports_tab/catalog.py</affectedPath><commitId>4b6a1f233bafc1d0a52abf1924d830b2391a7407</commitId><timestamp>1785865819000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Mainly dash updates and a little source changes to improve parameter/flag checking. See https://github.com/larson-group/clubb/pull/1336 for details
</comment><date>2026-08-04 12:50:19 -0500</date><id>4b6a1f233bafc1d0a52abf1924d830b2391a7407</id><msg>Mainly dash updates and a little source changes to improve parameter/flag checking. See https://github.com/larson-group/clubb/pull/1336 for details</msg><path><editType>add</editType><file>dash_app/pytests/test_workspace_selection.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xp2_xpyp_module.F90</file></path><path><editType>add</editType><file>dash_app/tutorial_tab/clubb_equations.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_case.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_activity.py</file></path><path><editType>edit</editType><file>utilities/create_multi_col_params.py</file></path><path><editType>edit</editType><file>tuner/request.py</file></path><path><editType>add</editType><file>dash_app/tutorial_tab/clubb_equations_demo/app.py</file></path><path><editType>add</editType><file>dash_app/assets/17_workspace_persistence.css</file></path><path><editType>add</editType><file>dash_app/pytests/test_mcp_endpoint.py</file></path><path><editType>add</editType><file>dash_app/reports_tab/publisher.py</file></path><path><editType>edit</editType><file>tuner/README.md</file></path><path><editType>add</editType><file>dash_app/misc_tab/sam_w_rt_neighborhood/atlas.py</file></path><path><editType>edit</editType><file>tuner/tuning_scheduler.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_reports_tab.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_controls.py</file></path><path><editType>add</editType><file>dash_app/tutorial_tab/tab.py</file></path><path><editType>add</editType><file>doc/reports/sam-heatmap-coloring-examples-20h30/manifest.json</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_display.py</file></path><path><editType>edit</editType><file>dash_app/assets/11_tab_run_theme.css</file></path><path><editType>add</editType><file>tuner/pytests/test_workspaces.py</file></path><path><editType>edit</editType><file>clubb_python_driver/README.md</file></path><path><editType>add</editType><file>dash_app/pytests/test_tune_callbacks_settings.py</file></path><path><editType>add</editType><file>utilities/output_paths.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_callbacks_runs.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_pdf_contour_plot.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_plot_transitions.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>add</editType><file>dash_app/tutorial_tab/callbacks.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_agent_tab_registry.py</file></path><path><editType>add</editType><file>dash_app/shared/netcdf.py</file></path><path><editType>add</editType><file>tuner/pytests/test_presets.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_init_sequence.py</file></path><path><editType>add</editType><file>dash_app/shared/notecard.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>dash_app/assets/12_tab_plots_theme.css</file></path><path><editType>add</editType><file>dash_app/pytests/test_atlas.py</file></path><path><editType>add</editType><file>doc/reports/index.json</file></path><path><editType>add</editType><file>dash_app/services/plots.py</file></path><path><editType>add</editType><file>dash_app/shared/reporting.py</file></path><path><editType>add</editType><file>dash_app/assets/18_tab_tutorial_theme.css</file></path><path><editType>add</editType><file>dash_app/assets/22_tab_misc_labs.css</file></path><path><editType>add</editType><file>dash_app/reports_tab/tab.py</file></path><path><editType>add</editType><file>dash_app/tutorial_tab/clubb_equations_demo/content.py</file></path><path><editType>add</editType><file>dash_app/misc_tab/__init__.py</file></path><path><editType>add</editType><file>dash_app/shared/broker.py</file></path><path><editType>edit</editType><file>clubb_python_api/CMakeLists.txt</file></path><path><editType>add</editType><file>dash_app/reports_tab/catalog.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/numerical_check.py</file></path><path><editType>add</editType><file>LLM_prompts/dash_app_workflow.md</file></path><path><editType>add</editType><file>dash_app/misc_tab/registry.py</file></path><path><editType>edit</editType><file>tuner/enhanced_simann_strategy.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_custom_plot.py</file></path><path><editType>add</editType><file>dash_app/shared/gateway.py</file></path><path><editType>add</editType><file>dash_app/assets/26_tab_reports.css</file></path><path><editType>add</editType><file>dash_app/pytests/test_app_startup.py</file></path><path><editType>edit</editType><file>dash_app/assets/30_run_ui_resize.js</file></path><path><editType>delete</editType><file>dash_app/assets/33_run_param_rows.js</file></path><path><editType>add</editType><file>dash_app/shared/bivariate_heatmap.py</file></path><path><editType>add</editType><file>dash_app/shared/tab_registry.py</file></path><path><editType>edit</editType><file>tests/run_benchmark_converter_test.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_runtime_loss_batches.py</file></path><path><editType>edit</editType><file>README</file></path><path><editType>add</editType><file>tuner/presets.py</file></path><path><editType>add</editType><file>doc/reports/sam-heatmap-coloring-examples-20h30/figures/raw-sam-wrt-rc-vs-rt.png</file></path><path><editType>edit</editType><file>dash_app/tune_tab/runtime.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/clubb_api_module.F90</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/shared.py</file></path><path><editType>add</editType><file>dash_app/shared/two_gaussian_model.py</file></path><path><editType>add</editType><file>dash_app/assets/19_tutorial_equations.css</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/parameters_tunable_wrapper.F90</file></path><path><editType>add</editType><file>dash_app/shared/provenance.py</file></path><path><editType>add</editType><file>dash_app/shared/actions.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_gpu_async_output_matching/Jenkinsfile</file></path><path><editType>delete</editType><file>dash_app/tunable_configs.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_compile_tab_build_status.py</file></path><path><editType>add</editType><file>dash_app/shared/broker_client.py</file></path><path><editType>add</editType><file>doc/reports/resize_raster_assets.py</file></path><path><editType>edit</editType><file>tuner/status.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_persistence.py</file></path><path><editType>add</editType><file>dash_app/agent_integration/handoff.py</file></path><path><editType>add</editType><file>utilities/pytests/test_settings_rules.py</file></path><path><editType>edit</editType><file>tuner/tuning_worker.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/numerical_check.F90</file></path><path><editType>edit</editType><file>dash_app/assets/36_tune_ui_resize.js</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_settings.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/parameters_tunable.py</file></path><path><editType>edit</editType><file>tests/analyze_tuner_sample_history.py</file></path><path><editType>add</editType><file>dash_app/reports_tab/__init__.py</file></path><path><editType>add</editType><file>dash_app/assets/28_misc_mixing_length_trajectories.css</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_selection.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_output_discovery.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/stats_netcdf_wrapper.F90</file></path><path><editType>add</editType><file>utilities/sam_3d_reference.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_two_gaussian_model.py</file></path><path><editType>add</editType><file>tests/run_pytests.sh</file></path><path><editType>add</editType><file>dash_app/shared/activity.py</file></path><path><editType>add</editType><file>dash_app/shared/broker_protocol.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/state.py</file></path><path><editType>add</editType><file>dash_app/misc_tab/sam_w_rt_neighborhood/__init__.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/registry.py</file></path><path><editType>edit</editType><file>tuner/tuning_strategy.py</file></path><path><editType>add</editType><file>tuner/pytests/test_tuning_strategy.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_analysis.py</file></path><path><editType>add</editType><file>dash_app/assets/39_dashboard_tab_scroll.js</file></path><path><editType>add</editType><file>doc/reports/sam-heatmap-coloring-examples-20h30/figures/raw-sam-wrt-color-signals.png</file></path><path><editType>add</editType><file>dash_app/pytests/test_plot_help.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_netcdf.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_profiles.py</file></path><path><editType>edit</editType><file>dash_app/assets/10_theme.css</file></path><path><editType>add</editType><file>dash_app/plot_tab/plot_types/help_content.py</file></path><path><editType>add</editType><file>doc/reports/sam-heatmap-coloring-examples-20h30/generate_color_signal_examples.py</file></path><path><editType>edit</editType><file>run_scripts/run_tuner_job.py</file></path><path><editType>delete</editType><file>tuner/test_tuning_strategy.py</file></path><path><editType>add</editType><file>dash_app/agent_integration/broker_endpoint.py</file></path><path><editType>add</editType><file>dash_app/reports_tab/layout.py</file></path><path><editType>edit</editType><file>dash_app/assets/37_run_console_state.js</file></path><path><editType>add</editType><file>dash_app/plot_tab/plot_types/pdf_contour_plot.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_plot_solver_compare/Jenkinsfile</file></path><path><editType>add</editType><file>dash_app/agent_integration/__init__.py</file></path><path><editType>add</editType><file>dash_app/agent_integration/endpoint.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/subcolumn_plot.py</file></path><path><editType>add</editType><file>dash_app/services/models.py</file></path><path><editType>add</editType><file>dash_app/shared/background.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_runtime_logging.py</file></path><path><editType>edit</editType><file>tests/run_jax_vs_fortran_cases.py</file></path><path><editType>edit</editType><file>tuner/sample_history.py</file></path><path><editType>edit</editType><file>dash_app/assets/34_run_param_clientside.js</file></path><path><editType>add</editType><file>dash_app/pytests/test_runtime.py</file></path><path><editType>add</editType><file>utilities/pytests/test_create_multi_col_params.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm_loss.py</file></path><path><editType>add</editType><file>dash_app/misc_tab/sam_w_rt_neighborhood/tab.py</file></path><path><editType>edit</editType><file>run_scripts/README.md</file></path><path><editType>add</editType><file>dash_app/misc_tab/mixing_length_trajectories/figures.py</file></path><path><editType>add</editType><file>dash_app/tune_tab/callbacks_workspaces.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_run_callbacks_settings.py</file></path><path><editType>edit</editType><file>launch_dashboard.sh</file></path><path><editType>add</editType><file>dash_app/reports_tab/static.py</file></path><path><editType>add</editType><file>dash_app/shared/dashboard_registry.py</file></path><path><editType>add</editType><file>dash_app/agent_integration/client.py</file></path><path><editType>add</editType><file>dash_app/misc_tab/mixing_length_trajectories/analysis.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/state.py</file></path><path><editType>edit</editType><file>dash_app/assets/31_plots_ui_resize.js</file></path><path><editType>add</editType><file>dash_app/shared/__init__.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_runs.py</file></path><path><editType>edit</editType><file>utilities/benchmark_converter.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>add</editType><file>dash_app/pytests/test_dashboard_lifecycle.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_new_tuner_test/Jenkinsfile</file></path><path><editType>add</editType><file>dash_app/plot_tab/plot_types/custom_plot.py</file></path><path><editType>add</editType><file>dash_app/shared/tunable_configs.py</file></path><path><editType>edit</editType><file>AGENTS.md</file></path><path><editType>add</editType><file>doc/reports/sam-heatmap-coloring-examples-20h30/generate_rc_vs_rt_example.py</file></path><path><editType>add</editType><file>dash_app/shared/runtime_logging.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/layout.py</file></path><path><editType>add</editType><file>tests/run_clubb_settings_validation_test.py</file></path><path><editType>add</editType><file>dash_app/tutorial_tab/adg1_gaussian_explorer.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/callbacks.py</file></path><path><editType>add</editType><file>tuner/workspaces.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/tab.py</file></path><path><editType>edit</editType><file>clubb_jax/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>add</editType><file>utilities/clubb_settings_validation.py</file></path><path><editType>add</editType><file>dash_app/assets/37_workspace_persistence.js</file></path><path><editType>edit</editType><file>.gitignore</file></path><path><editType>add</editType><file>utilities/pytests/test_clubb_settings_resolution.py</file></path><path><editType>edit</editType><file>clubb_python_driver/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>dash_app/assets/32_plots_constant_param_rows.js</file></path><path><editType>add</editType><file>dash_app/misc_tab/tab.py</file></path><path><editType>add</editType><file>dash_app/misc_tab/mixing_length_trajectories/callbacks.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/budget_plot.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_taylor_window_display.py</file></path><path><editType>add</editType><file>tuner/pytests/test_parameter_ranges.py</file></path><path><editType>add</editType><file>dash_app/agent_integration/dashboard_lifecycle.py</file></path><path><editType>add</editType><file>dash_app/tutorial_tab/clubb_equations_demo/__init__.py</file></path><path><editType>add</editType><file>dash_app/tutorial_tab/welcome.py</file></path><path><editType>add</editType><file>tuner/parameter_ranges.py</file></path><path><editType>add</editType><file>dash_app/shared/components.py</file></path><path><editType>add</editType><file>tuner/presets.json</file></path><path><editType>edit</editType><file>dash_app/tune_tab/tab.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/assets/13_tab_tune_theme.css</file></path><path><editType>add</editType><file>dash_app/pytests/test_scm_override.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/profile_plot.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_param_disclosures.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_settings.py</file></path><path><editType>edit</editType><file>tuner/taylor_metrics.py</file></path><path><editType>add</editType><file>dash_app/assets/05_shared_modal.css</file></path><path><editType>add</editType><file>dash_app/tutorial_tab/layout.py</file></path><path><editType>edit</editType><file>tests/run_python_vs_fortran_cases.py</file></path><path><editType>edit</editType><file>tuner/job_runtime.py</file></path><path><editType>add</editType><file>dash_app/services/__init__.py</file></path><path><editType>add</editType><file>dash_app/services/profiles.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_agent_services.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_agent_integration.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_bivariate_heatmap.py</file></path><path><editType>add</editType><file>dash_app/assets/25_tab_misc.css</file></path><path><editType>edit</editType><file>dash_app/run_tab/namelist.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/config_state.py</file></path><path><editType>edit</editType><file>tests/README</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_runs.py</file></path><path><editType>edit</editType><file>dash_app/app.py</file></path><path><editType>add</editType><file>dash_app/misc_tab/mixing_length_trajectories/__init__.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/layout.py</file></path><path><editType>add</editType><file>doc/reports/README.md</file></path><path><editType>add</editType><file>dash_app/pytests/test_misc_tab.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_output_directory_picker.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/runtime.py</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>LLM_prompts/update_host_models_after_clubb_changes.md</file></path><path><editType>add</editType><file>dash_app/misc_tab/layout.py</file></path><path><editType>add</editType><file>utilities/les_chi_moments.py</file></path><path><editType>add</editType><file>utilities/pytests/test_output_paths.py</file></path><path><editType>add</editType><file>doc/reports/sam-heatmap-coloring-examples-20h30/report.html</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/specs.py</file></path><path><editType>delete</editType><file>dash_app/compile_tab/test_compile_tab_build_status.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_run_runtime.py</file></path><path><editType>add</editType><file>doc/reports/sam-heatmap-coloring-examples-20h30/data/raw-sam-wrt-rc-vs-rt.json</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/clubb_api.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_driver_test/Jenkinsfile</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/base_plot.py</file></path><path><editType>add</editType><file>dash_app/shared/output_discovery.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/benchmark_overlay.py</file></path><path><editType>add</editType><file>dash_app/shared/runtime.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_state_persistence.py</file></path><path><editType>add</editType><file>dash_app/misc_tab/sam_w_rt_neighborhood/generation.py</file></path><path><editType>edit</editType><file>dash_app/DEVELOPMENT.md</file></path><path><editType>edit</editType><file>dash_app/tune_tab/discovery.py</file></path><path><editType>edit</editType><file>dash_app/requirements.txt</file></path><path><editType>add</editType><file>dash_app/agent_integration/mcp_server.py</file></path><path><editType>add</editType><file>dash_app/persistence.py</file></path><path><editType>add</editType><file>dash_app/services/jobs.py</file></path><path><editType>edit</editType><file>dash_app/assets/14_tab_compile_theme.css</file></path><path><editType>add</editType><file>dash_app/misc_tab/mixing_length_trajectories/layout.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/parameters_tunable.F90</file></path><path><editType>add</editType><file>dash_app/tutorial_tab/__init__.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_params.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/runtime.py</file></path><path><editType>edit</editType><file>run_scripts/run_tuner.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_grid.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_agent_tuning.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_equations.py</file></path><path><editType>add</editType><file>doc/reports/sam-heatmap-coloring-examples-20h30/data/raw-sam-wrt-color-signals.json</file></path><path><editType>edit</editType><file>tuner/case_defaults.json</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_agent_plot_actions.py</file></path><path><editType>add</editType><file>dash_app/pytests/test_tutorial_tab.py</file></path><path><editType>add</editType><file>dash_app/tutorial_tab/clubb_equations_demo/components.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/layout.py</file></path><path><editType>edit</editType><file>LLM_prompts/SHORTCUTS.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_python_test/Jenkinsfile</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>559</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/559/</url></nextBuild><previousBuild><number>557</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/557/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>557</buildNumber><marked><SHA1>034f61908b84f2574a06cc7da3db70d50696e69d</SHA1><branch><SHA1>034f61908b84f2574a06cc7da3db70d50696e69d</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>034f61908b84f2574a06cc7da3db70d50696e69d</SHA1><branch><SHA1>034f61908b84f2574a06cc7da3db70d50696e69d</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>034f61908b84f2574a06cc7da3db70d50696e69d</SHA1><branch><SHA1>034f61908b84f2574a06cc7da3db70d50696e69d</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#557</displayName><duration>109342</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #557</fullDisplayName><id>557</id><keepLog>false</keepLog><number>557</number><queueId>6711</queueId><result>SUCCESS</result><timestamp>1785313626333</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/557/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>README</affectedPath><commitId>c15480a71ed50936412eb66827a86bf69c490a37</commitId><timestamp>1785258857000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Recently a commit removed the l_tke_aniso flag, which is BFB unless that flag is enabled. That flag was used in the clubb_BFB_varying_flags_gfortran_test, causing it to fail even though we don't care since it only failed for a removed flag, so RESOLVED:8ab3902e812c2883976b4f1f57c085d682666d92
</comment><date>2026-07-28 12:14:17 -0500</date><id>c15480a71ed50936412eb66827a86bf69c490a37</id><msg>Recently a commit removed the l_tke_aniso flag, which is BFB unless that flag is enabled. That flag was used in the clubb_BFB_varying_flags_gfortran_test, causing it to fail even though we don't care since it only failed for a removed flag, so RESOLVED:8ab3902e812c2883976b4f1f57c085d682666d92</msg><path><editType>edit</editType><file>README</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_plot_solver_compare/Jenkinsfile</affectedPath><commitId>034f61908b84f2574a06cc7da3db70d50696e69d</commitId><timestamp>1785260769000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>The old mixing length calculation seems to be making dycoms2_rf02 fail when using the bicgstab solver. This case was always unstable with bicgstab, so it seemed more like luck before that it was passing. This change just removes the failed output data to prevent pyplotgen from crashing
</comment><date>2026-07-28 12:46:09 -0500</date><id>034f61908b84f2574a06cc7da3db70d50696e69d</id><msg>The old mixing length calculation seems to be making dycoms2_rf02 fail when using the bicgstab solver. This case was always unstable with bicgstab, so it seemed more like luck before that it was passing. This change just removes the failed output data to prevent pyplotgen from crashing</msg><path><editType>edit</editType><file>jenkins_tests/clubb_plot_solver_compare/Jenkinsfile</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>558</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/558/</url></nextBuild><previousBuild><number>556</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/556/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>556</buildNumber><marked><SHA1>765ae7c30cda88e01b27cd1ee4277d54e4fcb752</SHA1><branch><SHA1>765ae7c30cda88e01b27cd1ee4277d54e4fcb752</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>765ae7c30cda88e01b27cd1ee4277d54e4fcb752</SHA1><branch><SHA1>765ae7c30cda88e01b27cd1ee4277d54e4fcb752</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>765ae7c30cda88e01b27cd1ee4277d54e4fcb752</SHA1><branch><SHA1>765ae7c30cda88e01b27cd1ee4277d54e4fcb752</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#556</displayName><duration>1232138</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #556</fullDisplayName><id>556</id><keepLog>false</keepLog><number>556</number><queueId>6622</queueId><result>SUCCESS</result><timestamp>1785227229682</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/556/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>experimental/experimental_pdfs/doc/trivariate_transport_method_report.md</affectedPath><affectedPath>experimental/experimental_pdfs/python/report_scripts/pdf10_arm_rt_thl_structure/generate_report.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_mixed_moment_allocation.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/report_scripts/directional_lscale_pdf_coherence/generate_report.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/report_scripts/generate_pdf10_arm_noise_report.py</affectedPath><affectedPath>experimental/experimental_pdfs/README.md</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_refresh_pdf9_parcel_ensemble_lab.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_transport_2g_prototype.py</affectedPath><affectedPath>experimental/experimental_pdfs/src/CLUBB_core/pdf_closure_module.F90</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/utilities/refresh_pdf9_parcel_ensemble_lab.py</affectedPath><affectedPath>experimental/experimental_pdfs/doc/pdf_method_investigation_report.md</affectedPath><affectedPath>experimental/experimental_pdfs/src/G_unit_test_types/trivariate_transport_pdf_tests.F90</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/utilities/generate_pdf9_parcel_ensemble_diagnostics.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/report_scripts/pdf10_mixed_third_moment_decision/generate_report.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_vertical_coherence.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/report_scripts/pdf10_flux_alignment_effect/generate_report.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/trivariate_transport_sam_lab.py</affectedPath><affectedPath>experimental/experimental_pdfs/src/CLUBB_core/trivariate_transport_pdf.F90</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/vertical_coherence.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/pdf9_parcel_ensemble.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/sam_lscale.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/transport_2g_prototype.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/report_scripts/pdf10_arm_xp3_budget_audit/generate_pdf10_arm_xp3_budget_report.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/vertically_coherent_transport_sam_lab.py</affectedPath><affectedPath>experimental/experimental_pdfs/src/CLUBB_core/pdf_9_module.F90</affectedPath><affectedPath>experimental/experimental_pdfs/python/report_scripts/pdf10_arm_scalar_third_moment_noise_audit/generate_pdf10_arm_noise_report.py</affectedPath><affectedPath>experimental/experimental_pdfs/src/CLUBB_core/advance_xp3_module.F90</affectedPath><affectedPath>experimental/experimental_pdfs/python/report_scripts/generate_pdf10_arm_xp3_budget_report.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/src/pdf_9_module.F90</affectedPath><affectedPath>experimental/experimental_pdfs/doc/vertically_coherent_pdf_diagnosis.md</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_pdf9_parcel_ensemble_report.py</affectedPath><affectedPath>experimental/experimental_pdfs/python/dash_additions/misc_labs/__init__.py</affectedPath><commitId>bf9986a7c169085e4f89733f84407bd222075934</commitId><timestamp>1785203996000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Archiving experimental files that were used to explore some crazy PDF diagnosis methods. Much of this is sporatic LLM generated code and reports. These two methods were tested and did work well when using LES input to model the PDF, but were extemely noisy and unstable in free running clubb. The 'parcel tracking' one performs a mixing-length-like calculation to evolve a persistent 3rd gaussian, then computes a residual ADG1 pair to balance everything out and adhere to clubbs predicted moments. The second one (dubbed trivariate even though they're technically all trivariate) is a 2 Gaussian method that allows for many more degrees of freedom in how we place Gaussian centers and allocate covariance - it does this in part by taking into account rt and thl skewness, which require calculating rtp3 and thlp3. This trivate actually does really well when modelled using LES data, but it's heavy reliance on xp3 terms makes it extremely noisy and bad in clubb - this is why this code also includes a much more sophisticated (and barely tested) advance_xp3_module.F90, as an attempt to make this less worse for the trivariate pdf.
</comment><date>2026-07-27 20:59:56 -0500</date><id>bf9986a7c169085e4f89733f84407bd222075934</id><msg>Archiving experimental files that were used to explore some crazy PDF diagnosis methods. Much of this is sporatic LLM generated code and reports. These two methods were tested and did work well when using LES input to model the PDF, but were extemely noisy and unstable in free running clubb. The 'parcel tracking' one performs a mixing-length-like calculation to evolve a persistent 3rd gaussian, then computes a residual ADG1 pair to balance everything out and adhere to clubbs predicted moments. The second one (dubbed trivariate even though they're technically all trivariate) is a 2 Gaussian method that allows for many more degrees of freedom in how we place Gaussian centers and allocate covariance - it does this in part by taking into account rt and thl skewness, which require calculating rtp3 and thlp3. This trivate actually does really well when modelled using LES data, but it's heavy reliance on xp3 terms makes it extremely noisy and bad in clubb - this is why this code also includes a much more sophisticated (and barely tested) advance_xp3_module.F90, as an attempt to make this less worse for the trivariate pdf.</msg><path><editType>add</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_vertical_coherence.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/report_scripts/generate_pdf10_arm_xp3_budget_report.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/__init__.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/src/CLUBB_core/pdf_9_module.F90</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/dash_additions/utilities/generate_pdf9_parcel_ensemble_diagnostics.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/report_scripts/pdf10_arm_scalar_third_moment_noise_audit/generate_pdf10_arm_noise_report.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_pdf9_parcel_ensemble_report.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/trivariate_transport_sam_lab.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/src/CLUBB_core/pdf_closure_module.F90</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/report_scripts/directional_lscale_pdf_coherence/generate_report.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/report_scripts/pdf10_arm_rt_thl_structure/generate_report.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_refresh_pdf9_parcel_ensemble_lab.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/src/G_unit_test_types/trivariate_transport_pdf_tests.F90</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/doc/trivariate_transport_method_report.md</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/sam_lscale.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/doc/pdf_method_investigation_report.md</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/dash_additions/utilities/refresh_pdf9_parcel_ensemble_lab.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_transport_2g_prototype.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/src/CLUBB_core/trivariate_transport_pdf.F90</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/src/CLUBB_core/advance_xp3_module.F90</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/doc/vertically_coherent_pdf_diagnosis.md</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/report_scripts/pdf10_arm_xp3_budget_audit/generate_pdf10_arm_xp3_budget_report.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/report_scripts/generate_pdf10_arm_noise_report.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/transport_2g_prototype.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/tests/test_mixed_moment_allocation.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/report_scripts/pdf10_mixed_third_moment_decision/generate_report.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/README.md</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/pdf9_parcel_ensemble.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/dash_additions/src/pdf_9_module.F90</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/vertical_coherence.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/report_scripts/pdf10_flux_alignment_effect/generate_report.py</file></path><path><editType>add</editType><file>experimental/experimental_pdfs/python/dash_additions/misc_labs/vertically_coherent_transport_sam_lab.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/advance_xp3_module.F90</affectedPath><commitId>765ae7c30cda88e01b27cd1ee4277d54e4fcb752</commitId><timestamp>1785204361000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Fixing bug in advance_xp3 code. This is BFB because advance_xp3 is hardcoded to false.
</comment><date>2026-07-27 21:06:01 -0500</date><id>765ae7c30cda88e01b27cd1ee4277d54e4fcb752</id><msg>Fixing bug in advance_xp3 code. This is BFB because advance_xp3 is hardcoded to false.</msg><path><editType>edit</editType><file>src/CLUBB_core/advance_xp3_module.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>557</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/557/</url></nextBuild><previousBuild><number>555</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/555/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>555</buildNumber><marked><SHA1>7e9b710922cae26f2bcaf92b858ba00bc6b5f040</SHA1><branch><SHA1>7e9b710922cae26f2bcaf92b858ba00bc6b5f040</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>7e9b710922cae26f2bcaf92b858ba00bc6b5f040</SHA1><branch><SHA1>7e9b710922cae26f2bcaf92b858ba00bc6b5f040</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>7e9b710922cae26f2bcaf92b858ba00bc6b5f040</SHA1><branch><SHA1>7e9b710922cae26f2bcaf92b858ba00bc6b5f040</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#555</displayName><duration>1416597</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #555</fullDisplayName><id>555</id><keepLog>false</keepLog><number>555</number><queueId>6524</queueId><result>SUCCESS</result><timestamp>1785054427669</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/555/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>input/parameter_and_flag_configs/default/configurable_model_flags.in</affectedPath><affectedPath>src/CLUBB_core/model_flags.F90</affectedPath><affectedPath>input/flag_sets/run_bindiff_w_flags_config_core_flags.json</affectedPath><commitId>02babc6b5a46bda3075bf071426fa20bf200a43b</commitId><timestamp>1785002743000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Setting l_diag_Lscale_from_tau to false by default, and changing it to true in the flag set list the run_bindiff_w_flags test uses so that we keep testing the tau code nightly. This flag changes answers, so this is BIT_CHANGING.
</comment><date>2026-07-25 13:05:43 -0500</date><id>02babc6b5a46bda3075bf071426fa20bf200a43b</id><msg>Setting l_diag_Lscale_from_tau to false by default, and changing it to true in the flag set list the run_bindiff_w_flags test uses so that we keep testing the tau code nightly. This flag changes answers, so this is BIT_CHANGING.</msg><path><editType>edit</editType><file>src/CLUBB_core/model_flags.F90</file></path><path><editType>edit</editType><file>input/parameter_and_flag_configs/default/configurable_model_flags.in</file></path><path><editType>edit</editType><file>input/flag_sets/run_bindiff_w_flags_config_core_flags.json</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/run_python_vs_fortran_cases.py</affectedPath><commitId>afbbe1126523c6ff7a4bb8091f72a242280490ba</commitId><timestamp>1785004898000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Setting l_diag_Lscale_from_tau to false caused dycoms2_rf01_fixed_sst to start failing the python vs fortran test. The differences were small and occured at a late timestep, so to fix the test I put a limiter on the number of timesteps the test runs.
</comment><date>2026-07-25 13:41:38 -0500</date><id>afbbe1126523c6ff7a4bb8091f72a242280490ba</id><msg>Setting l_diag_Lscale_from_tau to false caused dycoms2_rf01_fixed_sst to start failing the python vs fortran test. The differences were small and occured at a late timestep, so to fix the test I put a limiter on the number of timesteps the test runs.</msg><path><editType>edit</editType><file>tests/run_python_vs_fortran_cases.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>input/parameter_and_flag_configs/coriolis_cases/atex_long_parameters.in</affectedPath><affectedPath>input/parameter_and_flag_configs/e3sm_maint32/tunable_parameters.in</affectedPath><affectedPath>src/CLUBB_core/advance_wp2_wp3_module.F90</affectedPath><affectedPath>input/flag_sets/run_bindiff_w_flags_config_core_flags.json</affectedPath><affectedPath>input/parameter_and_flag_configs/coriolis_cases/coriolis_test_parameters.in</affectedPath><affectedPath>src/clubb_tuner.F90</affectedPath><affectedPath>input/parameter_and_flag_configs/Lscale/configurable_model_flags.in</affectedPath><affectedPath>src/CLUBB_core/advance_windm_edsclrm_module.F90</affectedPath><affectedPath>src/CLUBB_core/model_flags.F90</affectedPath><affectedPath>clubb_python_driver/advance_clubb_core.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_windm_edsclrm_module_wrapper.F90</affectedPath><affectedPath>src/G_unit_test_types/pdf_parameter_tests.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xm_wpxp.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_windm_edsclrm.py</affectedPath><affectedPath>src/CLUBB_core/parameters_tunable.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_nd_model.LR.in</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_xm_wpxp_module_wrapper.F90</affectedPath><affectedPath>src/CLUBB_core/clip_explicit.F90</affectedPath><affectedPath>input/parameter_and_flag_configs/tauMatchLscale/configurable_model_flags.in</affectedPath><affectedPath>input/parameter_and_flag_configs/e3sm_maint32/maint32_defaults_report.md</affectedPath><affectedPath>src/CLUBB_core/advance_xm_wpxp_module.F90</affectedPath><affectedPath>clubb_python_driver/clubb_case_initalization.py</affectedPath><affectedPath>clubb_python_api/tests/test_advance_core_subs.py</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_so_model.LR.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_ds_model.HR.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_do_model.HR.in</affectedPath><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_do_model.LR.in</affectedPath><affectedPath>input/parameter_and_flag_configs/e3sm_maint32/configurable_model_flags.in</affectedPath><affectedPath>input/parameter_and_flag_configs/default/configurable_model_flags.in</affectedPath><affectedPath>clubb_jax/advance_clubb_core.py</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_so_model.HR.in</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/clip_explicit.py</affectedPath><affectedPath>input/parameter_and_flag_configs/compatible_r8029/configurable_model_flags.in</affectedPath><affectedPath>src/Microphys/pdf_hydromet_microphys_wrapper.F90</affectedPath><affectedPath>input/parameter_and_flag_configs/e3sm/configurable_model_flags.in</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90</affectedPath><affectedPath>input/flag_sets/run_bindiff_w_flags_config_host_flags.json</affectedPath><affectedPath>clubb_jax/clubb_case_initalization.py</affectedPath><affectedPath>input/case_setups/README</affectedPath><affectedPath>input/parameter_and_flag_configs/e3sm/tunable_parameters.in</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/clip_explicit_wrapper.F90</affectedPath><affectedPath>src/G_unit_test_types/spurious_source_test.F90</affectedPath><affectedPath>input/parameter_and_flag_configs/default/tunable_parameters.in</affectedPath><affectedPath>clubb_python_api/tests/test_init_sequence.py</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_nd_model.HR.in</affectedPath><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><affectedPath>input/parameter_and_flag_configs/coriolis_cases/ekman_parameters.in</affectedPath><affectedPath>src/CLUBB_core/constants_clubb.F90</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_ds_model.LR.in</affectedPath><affectedPath>input/parameter_and_flag_configs/Lscale/tunable_parameters.in</affectedPath><affectedPath>input/parameter_and_flag_configs/compatible_r8029/tunable_parameters.in</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/config_flags.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/model_flags_wrapper.F90</affectedPath><commitId>8ab3902e812c2883976b4f1f57c085d682666d92</commitId><timestamp>1785005093000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Removing the l_tke_aniso flag
</comment><date>2026-07-25 13:44:53 -0500</date><id>8ab3902e812c2883976b4f1f57c085d682666d92</id><msg>Removing the l_tke_aniso flag</msg><path><editType>edit</editType><file>src/CLUBB_core/advance_wp2_wp3_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/clip_explicit.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/model_flags.F90</file></path><path><editType>edit</editType><file>input/parameter_and_flag_configs/e3sm_maint32/maint32_defaults_report.md</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_do_model.LR.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_so_model.HR.in</file></path><path><editType>edit</editType><file>input/flag_sets/run_bindiff_w_flags_config_host_flags.json</file></path><path><editType>edit</editType><file>input/parameter_and_flag_configs/compatible_r8029/tunable_parameters.in</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path><path><editType>edit</editType><file>clubb_jax/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_ds_model.HR.in</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>edit</editType><file>src/clubb_tuner.F90</file></path><path><editType>edit</editType><file>clubb_jax/advance_clubb_core.py</file></path><path><editType>edit</editType><file>input/case_setups/README</file></path><path><editType>edit</editType><file>input/parameter_and_flag_configs/coriolis_cases/ekman_parameters.in</file></path><path><editType>edit</editType><file>src/Microphys/pdf_hydromet_microphys_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xm_wpxp_module.F90</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_windm_edsclrm_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/parameters_tunable.F90</file></path><path><editType>edit</editType><file>input/parameter_and_flag_configs/e3sm/tunable_parameters.in</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_windm_edsclrm_module_wrapper.F90</file></path><path><editType>edit</editType><file>input/parameter_and_flag_configs/Lscale/configurable_model_flags.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_so_model.LR.in</file></path><path><editType>edit</editType><file>input/parameter_and_flag_configs/default/tunable_parameters.in</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_xm_wpxp_module_wrapper.F90</file></path><path><editType>edit</editType><file>input/parameter_and_flag_configs/tauMatchLscale/configurable_model_flags.in</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/derived_types/config_flags.py</file></path><path><editType>edit</editType><file>input/parameter_and_flag_configs/compatible_r8029/configurable_model_flags.in</file></path><path><editType>edit</editType><file>input/parameter_and_flag_configs/e3sm/configurable_model_flags.in</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>input/parameter_and_flag_configs/default/configurable_model_flags.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_ds_model.LR.in</file></path><path><editType>edit</editType><file>clubb_python_driver/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_windm_edsclrm.py</file></path><path><editType>edit</editType><file>input/parameter_and_flag_configs/Lscale/tunable_parameters.in</file></path><path><editType>edit</editType><file>input/parameter_and_flag_configs/e3sm_maint32/configurable_model_flags.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_nd_model.LR.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_do_model.HR.in</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/clip_explicit.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_advance_core_subs.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</file></path><path><editType>edit</editType><file>src/G_unit_test_types/pdf_parameter_tests.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_init_sequence.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/clip_explicit_wrapper.F90</file></path><path><editType>edit</editType><file>src/G_unit_test_types/spurious_source_test.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/model_flags_wrapper.F90</file></path><path><editType>edit</editType><file>input/parameter_and_flag_configs/coriolis_cases/coriolis_test_parameters.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_nd_model.HR.in</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xm_wpxp.py</file></path><path><editType>edit</editType><file>input/parameter_and_flag_configs/coriolis_cases/atex_long_parameters.in</file></path><path><editType>edit</editType><file>input/parameter_and_flag_configs/e3sm_maint32/tunable_parameters.in</file></path><path><editType>edit</editType><file>input/flag_sets/run_bindiff_w_flags_config_core_flags.json</file></path><path><editType>edit</editType><file>src/CLUBB_core/constants_clubb.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>input/case_setups/bomex_model.in</affectedPath><affectedPath>input/case_setups/fire_model.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf01_model.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_ds_model.in</affectedPath><affectedPath>input/case_setups/rico_silhs_model.in</affectedPath><affectedPath>input/case_setups/gabls2_model.in</affectedPath><affectedPath>input/case_setups/cgils_s12_model.in</affectedPath><affectedPath>input/case_setups/rico_model.in</affectedPath><affectedPath>input/case_setups/cgils_s11_model.in</affectedPath><affectedPath>input/case_setups/arm_model.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_do_model.in</affectedPath><affectedPath>input/case_setups/neutral_model.in</affectedPath><affectedPath>input/case_setups/mpace_b_model.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_nd_model.in</affectedPath><affectedPath>input/case_setups/cgils_s6_model.in</affectedPath><affectedPath>input/case_setups/twp_ice_model.in</affectedPath><affectedPath>input/case_setups/arm_97_model.in</affectedPath><affectedPath>input/case_setups/atex_long_model.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_so_model.in</affectedPath><affectedPath>input/case_setups/lba_model.in</affectedPath><affectedPath>input/case_setups/atex_model.in</affectedPath><affectedPath>input/case_setups/gabls3_night_model.in</affectedPath><affectedPath>input/case_setups/wangara_model.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf01_fixed_sst_model.in</affectedPath><commitId>c743a1427c73d47a5515a8d34c6de40cc266a3fd</commitId><timestamp>1785011358000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Making les paths in _model.in files correct
</comment><date>2026-07-25 15:29:18 -0500</date><id>c743a1427c73d47a5515a8d34c6de40cc266a3fd</id><msg>Making les paths in _model.in files correct</msg><path><editType>edit</editType><file>input/case_setups/cgils_s11_model.in</file></path><path><editType>edit</editType><file>input/case_setups/fire_model.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_do_model.in</file></path><path><editType>edit</editType><file>input/case_setups/neutral_model.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_ds_model.in</file></path><path><editType>edit</editType><file>input/case_setups/mpace_b_model.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf01_model.in</file></path><path><editType>edit</editType><file>input/case_setups/rico_silhs_model.in</file></path><path><editType>edit</editType><file>input/case_setups/atex_long_model.in</file></path><path><editType>edit</editType><file>input/case_setups/atex_model.in</file></path><path><editType>edit</editType><file>input/case_setups/bomex_model.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf01_fixed_sst_model.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_nd_model.in</file></path><path><editType>edit</editType><file>input/case_setups/gabls2_model.in</file></path><path><editType>edit</editType><file>input/case_setups/arm_97_model.in</file></path><path><editType>edit</editType><file>input/case_setups/cgils_s6_model.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_so_model.in</file></path><path><editType>edit</editType><file>input/case_setups/lba_model.in</file></path><path><editType>edit</editType><file>input/case_setups/twp_ice_model.in</file></path><path><editType>edit</editType><file>input/case_setups/wangara_model.in</file></path><path><editType>edit</editType><file>input/case_setups/rico_model.in</file></path><path><editType>edit</editType><file>input/case_setups/gabls3_night_model.in</file></path><path><editType>edit</editType><file>input/case_setups/cgils_s12_model.in</file></path><path><editType>edit</editType><file>input/case_setups/arm_model.in</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>LLM_prompts/update_host_models_after_clubb_changes.md</affectedPath><affectedPath>LLM_prompts/SHORTCUTS.md</affectedPath><commitId>7e9b710922cae26f2bcaf92b858ba00bc6b5f040</commitId><timestamp>1785030901000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Adding prompt to automate updating host models
</comment><date>2026-07-25 20:55:01 -0500</date><id>7e9b710922cae26f2bcaf92b858ba00bc6b5f040</id><msg>Adding prompt to automate updating host models</msg><path><editType>edit</editType><file>LLM_prompts/SHORTCUTS.md</file></path><path><editType>add</editType><file>LLM_prompts/update_host_models_after_clubb_changes.md</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>556</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/556/</url></nextBuild><previousBuild><number>554</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/554/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>554</buildNumber><marked><SHA1>0ccbf4f61f326437ea971ff5eca1eb570e8e4711</SHA1><branch><SHA1>0ccbf4f61f326437ea971ff5eca1eb570e8e4711</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>0ccbf4f61f326437ea971ff5eca1eb570e8e4711</SHA1><branch><SHA1>0ccbf4f61f326437ea971ff5eca1eb570e8e4711</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>0ccbf4f61f326437ea971ff5eca1eb570e8e4711</SHA1><branch><SHA1>0ccbf4f61f326437ea971ff5eca1eb570e8e4711</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#554</displayName><duration>88723</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #554</fullDisplayName><id>554</id><keepLog>false</keepLog><number>554</number><queueId>6427</queueId><result>SUCCESS</result><timestamp>1784622430999</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/554/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>CMakeLists.txt</affectedPath><commitId>0ccbf4f61f326437ea971ff5eca1eb570e8e4711</commitId><timestamp>1784573250000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Clarify that the SILHS preprocessor flag in CLUBB is connected to the same flag in sam_clubb.
</comment><date>2026-07-20 13:47:30 -0500</date><id>0ccbf4f61f326437ea971ff5eca1eb570e8e4711</id><msg>Clarify that the SILHS preprocessor flag in CLUBB is connected to the same flag in sam_clubb.</msg><path><editType>edit</editType><file>CMakeLists.txt</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>555</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/555/</url></nextBuild><previousBuild><number>553</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/553/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>553</buildNumber><marked><SHA1>5d01201f199f1883ab7f835dc441fbafdb686d67</SHA1><branch><SHA1>5d01201f199f1883ab7f835dc441fbafdb686d67</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>5d01201f199f1883ab7f835dc441fbafdb686d67</SHA1><branch><SHA1>5d01201f199f1883ab7f835dc441fbafdb686d67</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>5d01201f199f1883ab7f835dc441fbafdb686d67</SHA1><branch><SHA1>5d01201f199f1883ab7f835dc441fbafdb686d67</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#553</displayName><duration>316017</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #553</fullDisplayName><id>553</id><keepLog>false</keepLog><number>553</number><queueId>6353</queueId><result>SUCCESS</result><timestamp>1784104026472</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/553/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>CMakeLists.txt</affectedPath><commitId>84b8d6700a274f2dcec4df60a67207e2808308e4</commitId><timestamp>1784054609000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></author><authorEmail>hancoct@uwm.edu</authorEmail><comment>Fixing SILHS usage so clubb/sam_clubb are compatible
</comment><date>2026-07-14 13:43:29 -0500</date><id>84b8d6700a274f2dcec4df60a67207e2808308e4</id><msg>Fixing SILHS usage so clubb/sam_clubb are compatible</msg><path><editType>edit</editType><file>CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/Microphys/Morrison_microphys/microphysics.F90</affectedPath><commitId>5d01201f199f1883ab7f835dc441fbafdb686d67</commitId><timestamp>1784065113000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></author><authorEmail>hancoct@uwm.edu</authorEmail><comment>Fixing error/diff with morrison microphysics
</comment><date>2026-07-14 16:38:33 -0500</date><id>5d01201f199f1883ab7f835dc441fbafdb686d67</id><msg>Fixing error/diff with morrison microphysics</msg><path><editType>edit</editType><file>src/Microphys/Morrison_microphys/microphysics.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></culprit><inProgress>false</inProgress><nextBuild><number>554</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/554/</url></nextBuild><previousBuild><number>552</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/552/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>552</buildNumber><marked><SHA1>406c3636fd5626566f8c184c71152f19157606b5</SHA1><branch><SHA1>406c3636fd5626566f8c184c71152f19157606b5</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>406c3636fd5626566f8c184c71152f19157606b5</SHA1><branch><SHA1>406c3636fd5626566f8c184c71152f19157606b5</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>406c3636fd5626566f8c184c71152f19157606b5</SHA1><branch><SHA1>406c3636fd5626566f8c184c71152f19157606b5</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#552</displayName><duration>98409</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #552</fullDisplayName><id>552</id><keepLog>false</keepLog><number>552</number><queueId>6269</queueId><result>SUCCESS</result><timestamp>1784017626681</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/552/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>microphysics.F90</affectedPath><commitId>53dc29afa7900265d39acc9ed78e302153d2e918</commitId><timestamp>1783949205000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></author><authorEmail>hancoct@uwm.edu</authorEmail><comment>Removed option to disable silhs
</comment><date>2026-07-13 08:26:45 -0500</date><id>53dc29afa7900265d39acc9ed78e302153d2e918</id><msg>Removed option to disable silhs</msg><path><editType>edit</editType><file>microphysics.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/Microphys/Morrison_microphys/microphysics.F90</affectedPath><commitId>c75d8e56d95be1eb4a5374351e1196ccb4aaa728</commitId><timestamp>1783949393000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></author><authorEmail>hancoct@uwm.edu</authorEmail><comment>Revert changes to src/Microphys/Morrison_microphys/microphysics.F90

 - Changes to this file are supposed to be made in sam_clubb
</comment><date>2026-07-13 08:29:53 -0500</date><id>c75d8e56d95be1eb4a5374351e1196ccb4aaa728</id><msg>Revert changes to src/Microphys/Morrison_microphys/microphysics.F90</msg><path><editType>edit</editType><file>src/Microphys/Morrison_microphys/microphysics.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></culprit><inProgress>false</inProgress><nextBuild><number>553</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/553/</url></nextBuild><previousBuild><number>551</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/551/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>551</buildNumber><marked><SHA1>8e88e823c01ff67c119c389266848c925611c3ca</SHA1><branch><SHA1>8e88e823c01ff67c119c389266848c925611c3ca</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>8e88e823c01ff67c119c389266848c925611c3ca</SHA1><branch><SHA1>8e88e823c01ff67c119c389266848c925611c3ca</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>8e88e823c01ff67c119c389266848c925611c3ca</SHA1><branch><SHA1>8e88e823c01ff67c119c389266848c925611c3ca</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#551</displayName><duration>1724403</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #551</fullDisplayName><id>551</id><keepLog>false</keepLog><number>551</number><queueId>6176</queueId><result>SUCCESS</result><timestamp>1783758430573</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/551/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>dash_app/compile_tab/layout.py</affectedPath><affectedPath>cmake/utils/CPPDefinitions.cmake</affectedPath><affectedPath>src/Radiation/BUGSrad/kinds.F90</affectedPath><affectedPath>dash_app/compile_tab/runtime.py</affectedPath><affectedPath>compile.py</affectedPath><commitId>2ed4d5c1c4a025e8245056b860266cab832fc532</commitId><timestamp>1783712644000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Removed quad precision option (#1330)
</comment><date>2026-07-10 14:44:04 -0500</date><id>2ed4d5c1c4a025e8245056b860266cab832fc532</id><msg>Removed quad precision option (#1330)</msg><path><editType>edit</editType><file>src/Radiation/BUGSrad/kinds.F90</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>edit</editType><file>cmake/utils/CPPDefinitions.cmake</file></path><path><editType>edit</editType><file>dash_app/compile_tab/runtime.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/layout.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/Input_fields/stat_file_utils.F90</affectedPath><affectedPath>dash_app/compile_tab/discovery.py</affectedPath><affectedPath>src/Input_fields/CMakeLists.txt</affectedPath><affectedPath>dash_app/compile_tab/runtime.py</affectedPath><affectedPath>BUILD.md</affectedPath><affectedPath>dash_app/compile_tab/test_compile_tab_build_status.py</affectedPath><affectedPath>src/Input_fields/input_fields.F90</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>src/Input_fields/input_netcdf.F90</affectedPath><affectedPath>cmake/utils/CPPDefinitions.cmake</affectedPath><affectedPath>src/CLUBB_core/CMakeLists.txt</affectedPath><affectedPath>README</affectedPath><affectedPath>src/CMakeLists.txt</affectedPath><affectedPath>src/error.F90</affectedPath><affectedPath>clubb_python_api/CMakeLists.txt</affectedPath><affectedPath>compile.py</affectedPath><commitId>a9a078699bbeabdded46e97e0948f40331321866</commitId><timestamp>1783712742000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Removed option to disable netcdf (#1331)
</comment><date>2026-07-10 14:45:42 -0500</date><id>a9a078699bbeabdded46e97e0948f40331321866</id><msg>Removed option to disable netcdf (#1331)</msg><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>src/CMakeLists.txt</file></path><path><editType>edit</editType><file>dash_app/compile_tab/runtime.py</file></path><path><editType>edit</editType><file>src/Input_fields/input_netcdf.F90</file></path><path><editType>edit</editType><file>src/Input_fields/stat_file_utils.F90</file></path><path><editType>edit</editType><file>dash_app/compile_tab/test_compile_tab_build_status.py</file></path><path><editType>edit</editType><file>src/Input_fields/CMakeLists.txt</file></path><path><editType>edit</editType><file>clubb_python_api/CMakeLists.txt</file></path><path><editType>edit</editType><file>cmake/utils/CPPDefinitions.cmake</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>edit</editType><file>BUILD.md</file></path><path><editType>edit</editType><file>src/Input_fields/input_fields.F90</file></path><path><editType>edit</editType><file>src/error.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/CMakeLists.txt</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>README</file></path><path><editType>edit</editType><file>dash_app/compile_tab/discovery.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/generalized_grid_test.F90</affectedPath><affectedPath>src/Microphys/Morrison_microphys/microphysics.F90</affectedPath><affectedPath>dash_app/compile_tab/runtime.py</affectedPath><affectedPath>src/SILHS/silhs_api_module.F90</affectedPath><affectedPath>BUILD.md</affectedPath><affectedPath>dash_app/compile_tab/test_compile_tab_build_status.py</affectedPath><affectedPath>src/SILHS/latin_hypercube_driver_module.F90</affectedPath><affectedPath>src/Microphys/pdf_hydromet_microphys_wrapper.F90</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>src/Microphys/lh_microphys_driver_module.F90</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>cmake/utils/CPPDefinitions.cmake</affectedPath><affectedPath>src/Microphys/microphys_driver.F90</affectedPath><affectedPath>compile.py</affectedPath><commitId>8e88e823c01ff67c119c389266848c925611c3ca</commitId><timestamp>1783713054000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Removed option to disable silhs (#1332)
</comment><date>2026-07-10 14:50:54 -0500</date><id>8e88e823c01ff67c119c389266848c925611c3ca</id><msg>Removed option to disable silhs (#1332)</msg><path><editType>edit</editType><file>dash_app/compile_tab/runtime.py</file></path><path><editType>edit</editType><file>src/Microphys/microphys_driver.F90</file></path><path><editType>edit</editType><file>src/SILHS/silhs_api_module.F90</file></path><path><editType>edit</editType><file>src/Microphys/Morrison_microphys/microphysics.F90</file></path><path><editType>edit</editType><file>src/Microphys/pdf_hydromet_microphys_wrapper.F90</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>src/Microphys/lh_microphys_driver_module.F90</file></path><path><editType>edit</editType><file>cmake/utils/CPPDefinitions.cmake</file></path><path><editType>edit</editType><file>dash_app/compile_tab/test_compile_tab_build_status.py</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>edit</editType><file>BUILD.md</file></path><path><editType>edit</editType><file>src/SILHS/latin_hypercube_driver_module.F90</file></path><path><editType>edit</editType><file>src/generalized_grid_test.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>552</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/552/</url></nextBuild><previousBuild><number>550</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/550/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>550</buildNumber><marked><SHA1>488f449568c63db426704905c4900f5fad8bc25e</SHA1><branch><SHA1>488f449568c63db426704905c4900f5fad8bc25e</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>488f449568c63db426704905c4900f5fad8bc25e</SHA1><branch><SHA1>488f449568c63db426704905c4900f5fad8bc25e</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>488f449568c63db426704905c4900f5fad8bc25e</SHA1><branch><SHA1>488f449568c63db426704905c4900f5fad8bc25e</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#550</displayName><duration>3823399</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #550</fullDisplayName><id>550</id><keepLog>false</keepLog><number>550</number><queueId>6067</queueId><result>SUCCESS</result><timestamp>1783499228759</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/550/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_tuner.py</affectedPath><affectedPath>tests/run_thread_test.py</affectedPath><commitId>b85bec98009c70ae215ecc3eeb67e1c30d77f683</commitId><timestamp>1783442757000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Fixing little path bug in the old tuner script and the thread test script
</comment><date>2026-07-07 11:45:57 -0500</date><id>b85bec98009c70ae215ecc3eeb67e1c30d77f683</id><msg>Fixing little path bug in the old tuner script and the thread test script</msg><path><editType>edit</editType><file>tests/run_thread_test.py</file></path><path><editType>edit</editType><file>run_scripts/run_tuner.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>dash_app/README.md</affectedPath><commitId>085d80ee0d2911eaf1df8845d1ab9f54a1e1bf6a</commitId><timestamp>1783452800000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Update dash app README with alternative run command
</comment><date>2026-07-07 14:33:20 -0500</date><id>085d80ee0d2911eaf1df8845d1ab9f54a1e1bf6a</id><msg>Update dash app README with alternative run command</msg><path><editType>edit</editType><file>dash_app/README.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>dash_app/plot_tab/state.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_controls.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/shared.py</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>dash_app/compile_tab/discovery.py</affectedPath><affectedPath>dash_app/app.py</affectedPath><affectedPath>dash_app/compile_tab/runtime.py</affectedPath><affectedPath>dash_app/assets/35_plot_slider_tooltips.js</affectedPath><affectedPath>dash_app/compile_tab/test_compile_tab_build_status.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/profile_plot.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>dash_app/assets/14_tab_compile_theme.css</affectedPath><affectedPath>dash_app/plot_tab/plot_types/subcolumn_plot.py</affectedPath><affectedPath>dash_app/compile_tab/callbacks.py</affectedPath><affectedPath>dash_app/compile_tab/layout.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/budget_plot.py</affectedPath><affectedPath>README</affectedPath><affectedPath>dash_app/assets/12_tab_plots_theme.css</affectedPath><affectedPath>launch_dashboard.sh</affectedPath><affectedPath>dash_app/requirements.txt</affectedPath><affectedPath>dash_app/plot_tab/layout.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_case.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/timeheight_plot.py</affectedPath><affectedPath>compile.py</affectedPath><commitId>488f449568c63db426704905c4900f5fad8bc25e</commitId><timestamp>1783483991000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Local python venv for dash app (#1329)

* Little UI improvements to compile tab, and adding a dashboard launch script that installs the python dependencies for you in a local python venv

* Little dash fixes to compile tab

* Fixing little path bug in the old tuner script and the thread test script

* Update dash app README with alternative run command

* Little UI improvements to compile tab, and adding a dashboard launch script that installs the python dependencies for you in a local python venv

* Little compile tab stlying and adding UI element to warn user of violated coding standards. Also improving README

* Making the standards check error log viewable from the dash app

* Little fix for mac

* Plot updates, mainly default settings but a little slider UI

* One more little default setting update

---------

Co-authored-by: Vincent Larson &lt;vlarson@users.noreply.github.com&gt;
</comment><date>2026-07-07 23:13:11 -0500</date><id>488f449568c63db426704905c4900f5fad8bc25e</id><msg>Local python venv for dash app (#1329)</msg><path><editType>edit</editType><file>dash_app/assets/14_tab_compile_theme.css</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/budget_plot.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/subcolumn_plot.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/timeheight_plot.py</file></path><path><editType>edit</editType><file>dash_app/app.py</file></path><path><editType>add</editType><file>dash_app/assets/35_plot_slider_tooltips.js</file></path><path><editType>edit</editType><file>dash_app/compile_tab/test_compile_tab_build_status.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/runtime.py</file></path><path><editType>edit</editType><file>README</file></path><path><editType>edit</editType><file>dash_app/plot_tab/layout.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/layout.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/state.py</file></path><path><editType>edit</editType><file>.gitignore</file></path><path><editType>edit</editType><file>dash_app/assets/12_tab_plots_theme.css</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/profile_plot.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_controls.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/compile_tab/callbacks.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/discovery.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_case.py</file></path><path><editType>edit</editType><file>dash_app/requirements.txt</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/shared.py</file></path><path><editType>add</editType><file>launch_dashboard.sh</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>551</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/551/</url></nextBuild><previousBuild><number>549</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/549/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>549</buildNumber><marked><SHA1>d2415bd01044655b03328e22070af55f99511a59</SHA1><branch><SHA1>d2415bd01044655b03328e22070af55f99511a59</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>d2415bd01044655b03328e22070af55f99511a59</SHA1><branch><SHA1>d2415bd01044655b03328e22070af55f99511a59</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>d2415bd01044655b03328e22070af55f99511a59</SHA1><branch><SHA1>d2415bd01044655b03328e22070af55f99511a59</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#549</displayName><duration>1537179</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #549</fullDisplayName><id>549</id><keepLog>false</keepLog><number>549</number><queueId>5964</queueId><result>SUCCESS</result><timestamp>1783412830742</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/549/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>input/parameter_and_flag_configs/default/tunable_parameters.in</affectedPath><commitId>0b2206b6fec8e02c7539b444e1ac3b9aabb04ac5</commitId><timestamp>1783362268000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Remove old SVN version control identifier ($Id$) from tunable_parameters.in
</comment><date>2026-07-06 13:24:28 -0500</date><id>0b2206b6fec8e02c7539b444e1ac3b9aabb04ac5</id><msg>Remove old SVN version control identifier ($Id$) from tunable_parameters.in</msg><path><editType>edit</editType><file>input/parameter_and_flag_configs/default/tunable_parameters.in</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>input/parameter_and_flag_configs/compatible_r8029/tunable_parameters.in</affectedPath><commitId>1ebd57b3c3499139dc2d3424417ecd9edbf31e11</commitId><timestamp>1783362399000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Remove old SVN version control identifier from compatible_r8029/tunable_parameters.in

Removed the version control identifier from the file.
</comment><date>2026-07-06 13:26:39 -0500</date><id>1ebd57b3c3499139dc2d3424417ecd9edbf31e11</id><msg>Remove old SVN version control identifier from compatible_r8029/tunable_parameters.in</msg><path><editType>edit</editType><file>input/parameter_and_flag_configs/compatible_r8029/tunable_parameters.in</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/CMakeLists.txt</affectedPath><commitId>15e88d15a1d7fa8d7ab5761e084ebc1874e0bf29</commitId><timestamp>1783372173000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Remove blank line to test git update scripts
</comment><date>2026-07-06 16:09:33 -0500</date><id>15e88d15a1d7fa8d7ab5761e084ebc1874e0bf29</id><msg>Remove blank line to test git update scripts</msg><path><editType>edit</editType><file>src/CLUBB_core/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/generalized_grid_test.F90</affectedPath><affectedPath>dash_app/compile_tab/runtime.py</affectedPath><affectedPath>cmake/deps/GPTLDependency.cmake</affectedPath><affectedPath>src/CLUBB_core/stats_netcdf.F90</affectedPath><affectedPath>src/Microphys/pdf_hydromet_microphys_wrapper.F90</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>src/CLUBB_core/code_timer_module.F90</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>src/CLUBB_core/CMakeLists.txt</affectedPath><affectedPath>clubb_python_api/run_pytests.sh</affectedPath><affectedPath>README</affectedPath><affectedPath>dash_app/DEVELOPMENT.md</affectedPath><affectedPath>src/CMakeLists.txt</affectedPath><affectedPath>dash_app/run_tab/callbacks_runs.py</affectedPath><affectedPath>cmake/toolchains/linux_x86_64_nvhpc.cmake</affectedPath><affectedPath>clubb_python_api/CMakeLists.txt</affectedPath><affectedPath>compile.py</affectedPath><commitId>d2415bd01044655b03328e22070af55f99511a59</commitId><timestamp>1783400577000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Clubb timer upgrade (#1328)

* Upgrading CLUBBs timer system. Now we either can use gptl just by compiling with it, or we use a cpu_time based fallback that was designed to be a crude copy

* Giving up on using the build system to detect stale build, switching to a method that just compares timestamps on directories

* Fixing small UI bug and removing a bit of dead code in the dash app, also fixing a gptl compiling issue on mac

* Little fix for python

* Adding a bit about the new timing output in the output section of the README

* Improving print statements and disabling timing and iteration prints when debug=-1

---------

Co-authored-by: Gunther Huebler &lt;guntherhuebler@frankie.uits.uwm.edu&gt;
</comment><date>2026-07-07 00:02:57 -0500</date><id>d2415bd01044655b03328e22070af55f99511a59</id><msg>Clubb timer upgrade (#1328)</msg><path><editType>edit</editType><file>src/Microphys/pdf_hydromet_microphys_wrapper.F90</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>edit</editType><file>cmake/deps/GPTLDependency.cmake</file></path><path><editType>edit</editType><file>src/CMakeLists.txt</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/CMakeLists.txt</file></path><path><editType>edit</editType><file>clubb_python_api/run_pytests.sh</file></path><path><editType>edit</editType><file>README</file></path><path><editType>edit</editType><file>dash_app/compile_tab/runtime.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_netcdf.F90</file></path><path><editType>edit</editType><file>src/generalized_grid_test.F90</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_runs.py</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/code_timer_module.F90</file></path><path><editType>add</editType><file>dash_app/DEVELOPMENT.md</file></path><path><editType>edit</editType><file>clubb_python_api/CMakeLists.txt</file></path><path><editType>edit</editType><file>cmake/toolchains/linux_x86_64_nvhpc.cmake</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>550</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/550/</url></nextBuild><previousBuild><number>548</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/548/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>548</buildNumber><marked><SHA1>be5e217cd91196f514fb60f9668106e072c14c1b</SHA1><branch><SHA1>be5e217cd91196f514fb60f9668106e072c14c1b</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>be5e217cd91196f514fb60f9668106e072c14c1b</SHA1><branch><SHA1>be5e217cd91196f514fb60f9668106e072c14c1b</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>be5e217cd91196f514fb60f9668106e072c14c1b</SHA1><branch><SHA1>be5e217cd91196f514fb60f9668106e072c14c1b</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#548</displayName><duration>299385</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #548</fullDisplayName><id>548</id><keepLog>false</keepLog><number>548</number><queueId>5855</queueId><result>SUCCESS</result><timestamp>1783240030465</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/548/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>input_misc/tuner/error_rico.in</affectedPath><affectedPath>input_misc/tuner/error_gabls3_night.in</affectedPath><affectedPath>dash_app/plot_tab/case_definitions.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/lapack_interfaces.py</affectedPath><affectedPath>utilities/read_sam_moments/netcdf_var_collector.py</affectedPath><affectedPath>input_misc/tuner/error_nov11_altocu.in</affectedPath><affectedPath>dash_app/assets/14_tab_compile_theme.css</affectedPath><affectedPath>input_misc/tuner/error_dycoms2_rf02_ds.in</affectedPath><affectedPath>input_misc/tuner/error_dycoms2_rf01.in</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/grid_class.py</affectedPath><affectedPath>dash_app/compile_tab/callbacks.py</affectedPath><affectedPath>input_misc/tuner/error_wangara.in</affectedPath><affectedPath>tuner/case_defaults.json</affectedPath><affectedPath>input_misc/tuner/error_dycoms2_rf02_do.in</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>input_misc/tuner/error_dycoms2_rf02_nd.in</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</affectedPath><affectedPath>input_misc/tuner/error_arm.in</affectedPath><affectedPath>dash_app/compile_tab/runtime.py</affectedPath><affectedPath>cmake/deps/GPTLDependency.cmake</affectedPath><affectedPath>clubb_python_api/tests/test_udt_return_contract.py</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>clubb_python_driver/io/sounding.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/remapping_module.py</affectedPath><affectedPath>input_misc/tuner/error_arm_97.in</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/err_info_type_module.py</affectedPath><affectedPath>dash_app/tune_tab/layout.py</affectedPath><affectedPath>input_misc/tuner/error_fire.in</affectedPath><affectedPath>input_misc/tuner/error_gabls2.in</affectedPath><affectedPath>tuner/case_defaults.py</affectedPath><affectedPath>input_misc/tuner/error_atex.in</affectedPath><affectedPath>tuner/job_runtime.py</affectedPath><affectedPath>dash_app/compile_tab/discovery.py</affectedPath><affectedPath>clubb_python_api/clubb_python/prescribe_forcings.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>input_misc/tuner/error_four_cases.in</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/parameters_tunable.py</affectedPath><affectedPath>postprocessing/pyplotgen/config/Case_definitions.py</affectedPath><affectedPath>dash_app/assets/11_tab_run_theme.css</affectedPath><affectedPath>clubb_python_api/CMakeLists.txt</affectedPath><affectedPath>input_misc/tuner/error_bomex.in</affectedPath><affectedPath>input_misc/tuner/error_bomex_fire.in</affectedPath><affectedPath>dash_app/compile_tab/test_compile_tab_build_status.py</affectedPath><affectedPath>input/les_and_clubb_benchmark_runs</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>input_misc/tuner/error_all.in</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>input_misc/tuner/error_lba.in</affectedPath><affectedPath>README</affectedPath><affectedPath>input_misc/tuner/error_ticket_756.in</affectedPath><commitId>be5e217cd91196f514fb60f9668106e072c14c1b</commitId><timestamp>1783222022000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Tiny dash updates (#1327)

* Cross-platform updates to help with running on Macs mainly. The biggest difference is that now our code expects the les data in input/, and I've added a symlink that points to the normal pub directory for it. This makes everything work the same, but also makes it so someone can download the les data and store it anywhere, then just change the symlink.

* Little UI improvements

* Small UI fix

* Small fix needed for a different python version and a little UI update

* Another tiny cross platform fix

* Updating build removal method and adding a mac specific bit for GPTL compiling that fixes environment issues

* Removing accidentally added file
</comment><date>2026-07-04 22:27:02 -0500</date><id>be5e217cd91196f514fb60f9668106e072c14c1b</id><msg>Tiny dash updates (#1327)</msg><path><editType>edit</editType><file>input_misc/tuner/error_atex.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_nov11_altocu.in</file></path><path><editType>edit</editType><file>dash_app/compile_tab/discovery.py</file></path><path><editType>edit</editType><file>utilities/read_sam_moments/netcdf_var_collector.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/case_definitions.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/prescribe_forcings.py</file></path><path><editType>edit</editType><file>input_misc/tuner/error_bomex_fire.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_gabls2.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_dycoms2_rf02_ds.in</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/lapack_interfaces.py</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/config/Case_definitions.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_udt_return_contract.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/grid_class.py</file></path><path><editType>edit</editType><file>dash_app/assets/14_tab_compile_theme.css</file></path><path><editType>edit</editType><file>cmake/deps/GPTLDependency.cmake</file></path><path><editType>edit</editType><file>clubb_python_driver/io/sounding.py</file></path><path><editType>edit</editType><file>input_misc/tuner/error_dycoms2_rf02_nd.in</file></path><path><editType>edit</editType><file>dash_app/compile_tab/callbacks.py</file></path><path><editType>edit</editType><file>input_misc/tuner/error_fire.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_wangara.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_gabls3_night.in</file></path><path><editType>edit</editType><file>dash_app/compile_tab/runtime.py</file></path><path><editType>edit</editType><file>input_misc/tuner/error_arm_97.in</file></path><path><editType>edit</editType><file>README</file></path><path><editType>edit</editType><file>input_misc/tuner/error_rico.in</file></path><path><editType>edit</editType><file>tuner/job_runtime.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/remapping_module.py</file></path><path><editType>edit</editType><file>input_misc/tuner/error_lba.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_all.in</file></path><path><editType>edit</editType><file>tuner/case_defaults.json</file></path><path><editType>add</editType><file>dash_app/compile_tab/test_compile_tab_build_status.py</file></path><path><editType>edit</editType><file>input_misc/tuner/error_arm.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_dycoms2_rf01.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_four_cases.in</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>edit</editType><file>input_misc/tuner/error_bomex.in</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/err_info_type_module.py</file></path><path><editType>edit</editType><file>clubb_python_api/CMakeLists.txt</file></path><path><editType>edit</editType><file>input_misc/tuner/error_dycoms2_rf02_do.in</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/parameters_tunable.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>add</editType><file>input/les_and_clubb_benchmark_runs</file></path><path><editType>edit</editType><file>dash_app/assets/11_tab_run_theme.css</file></path><path><editType>edit</editType><file>input_misc/tuner/error_ticket_756.in</file></path><path><editType>edit</editType><file>tuner/case_defaults.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/tune_tab/layout.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>549</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/549/</url></nextBuild><previousBuild><number>547</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/547/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Gunther Huebler</shortDescription><userId>huebler</userId><userName>Gunther Huebler</userName></cause></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>547</buildNumber><marked><SHA1>95d5d12aef49035170773f0714a97f4109bcccdd</SHA1><branch><SHA1>95d5d12aef49035170773f0714a97f4109bcccdd</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>95d5d12aef49035170773f0714a97f4109bcccdd</SHA1><branch><SHA1>95d5d12aef49035170773f0714a97f4109bcccdd</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>95d5d12aef49035170773f0714a97f4109bcccdd</SHA1><branch><SHA1>95d5d12aef49035170773f0714a97f4109bcccdd</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#547</displayName><duration>21459</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #547</fullDisplayName><id>547</id><keepLog>false</keepLog><number>547</number><queueId>5793</queueId><result>SUCCESS</result><timestamp>1783184026114</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/547/</url><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>548</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/548/</url></nextBuild><previousBuild><number>546</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/546/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>546</buildNumber><marked><SHA1>95d5d12aef49035170773f0714a97f4109bcccdd</SHA1><branch><SHA1>95d5d12aef49035170773f0714a97f4109bcccdd</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>95d5d12aef49035170773f0714a97f4109bcccdd</SHA1><branch><SHA1>95d5d12aef49035170773f0714a97f4109bcccdd</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>95d5d12aef49035170773f0714a97f4109bcccdd</SHA1><branch><SHA1>95d5d12aef49035170773f0714a97f4109bcccdd</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#546</displayName><duration>86361</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #546</fullDisplayName><id>546</id><keepLog>false</keepLog><number>546</number><queueId>5786</queueId><result>FAILURE</result><timestamp>1783153626321</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/546/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_tuner.py</affectedPath><affectedPath>dash_app/run_tab/tab.py</affectedPath><affectedPath>tuner/enhanced_simann_strategy.py</affectedPath><affectedPath>ens_tune/mytuner_movingfoot.bash</affectedPath><affectedPath>tests/test_monoflux_limiter_GPU.py</affectedPath><affectedPath>dash_app/tune_tab/callbacks_display.py</affectedPath><affectedPath>input/tunable_parameters_coriolis_cases/ekman_parameters.in</affectedPath><affectedPath>dash_app/assets/13_tab_tune_theme.css</affectedPath><affectedPath>input/tunable_parameters_coriolis_cases/atex_long_parameters.in</affectedPath><affectedPath>input/parameter_and_flag_configs/coriolis_cases/coriolis_test_parameters.in</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>dash_app/assets/14_tab_compile_theme.css</affectedPath><affectedPath>dash_app/run_tab/config_state.py</affectedPath><affectedPath>run_scripts/run_scm_loss.py</affectedPath><affectedPath>tests/run_loss_metrics_test.py</affectedPath><affectedPath>input/tunable_parameters_tauMatchLscale/tunable_parameters.in</affectedPath><affectedPath>postprocessing/output_scripts/cloud_feedback/README</affectedPath><affectedPath>dash_app/tune_tab/tab.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/shared.py</affectedPath><affectedPath>src/generalized_grid_test.F90</affectedPath><affectedPath>cmake/deps/GPTLDependency.cmake</affectedPath><affectedPath>tuner/paths.py</affectedPath><affectedPath>tests/run_thread_test.py</affectedPath><affectedPath>input/tunable_parameters_compatible_r8029/configurable_model_flags.in</affectedPath><affectedPath>tuner/status.py</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>input/parameter_and_flag_configs/e3sm_maint32/maint32_defaults_report.md</affectedPath><affectedPath>input/case_setups/coriolis_test_model.in</affectedPath><affectedPath>run_scripts/convergence_run/convergence_config.py</affectedPath><affectedPath>dash_app/tune_tab/callbacks_runs.py</affectedPath><affectedPath>jenkins_tests/clubb_plot_solver_compare/Jenkinsfile</affectedPath><affectedPath>dash_app/tune_tab/layout.py</affectedPath><affectedPath>dash_app/tune_tab/discovery.py</affectedPath><affectedPath>dash_app/run_tab/callbacks_runs.py</affectedPath><affectedPath>input/tunable_parameters_tauMatchLscale/configurable_model_flags.in</affectedPath><affectedPath>input/tunable_parameters/configurable_model_flags.in</affectedPath><affectedPath>jenkins_tests/clubb_nvhpc_gpu_column_mirror_test/Jenkinsfile</affectedPath><affectedPath>input/parameter_and_flag_configs/tauMatchLscale/tunable_parameters.in</affectedPath><affectedPath>run_scripts/run_tuner_job.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/timeheight_plot.py</affectedPath><affectedPath>tests/run_loss_output_consistency.py</affectedPath><affectedPath>dash_app/plot_tab/state.py</affectedPath><affectedPath>dash_app/tunable_configs.py</affectedPath><affectedPath>input/parameter_and_flag_configs/default/configurable_model_flags.in</affectedPath><affectedPath>tuner/test_tuning_strategy.py</affectedPath><affectedPath>dash_app/tune_tab/callbacks_settings.py</affectedPath><affectedPath>input/parameter_and_flag_configs/e3sm/configurable_model_flags.in</affectedPath><affectedPath>tuner/system_defaults.py</affectedPath><affectedPath>jenkins_tests/clubb_driver_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_plot_nvhpc_gpu_vs_cpu/Jenkinsfile</affectedPath><affectedPath>input/parameter_and_flag_configs/default/silhs_parameters.in</affectedPath><affectedPath>tests/run_benchmark_converter_test.py</affectedPath><affectedPath>dash_app/run_tab/namelist.py</affectedPath><affectedPath>input/tunable_parameters_compatible_r8029/tunable_parameters.in</affectedPath><affectedPath>dash_app/run_tab/callbacks_settings.py</affectedPath><affectedPath>tests/run_stats_output_consistency.py</affectedPath><affectedPath>input/case_setups/README</affectedPath><affectedPath>compile.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_params.py</affectedPath><affectedPath>tuner/sample_history.py</affectedPath><affectedPath>dash_app/run_tab/runtime.py</affectedPath><affectedPath>input/parameter_and_flag_configs/default/tunable_parameters.in</affectedPath><affectedPath>dash_app/plot_tab/plot_types/profile_plot.py</affectedPath><affectedPath>jenkins_tests/clubb_nvhpc_gpu_vs_cpu_diffness/Jenkinsfile</affectedPath><affectedPath>tests/analyze_tuner_sample_history.py</affectedPath><affectedPath>input/parameter_and_flag_configs/coriolis_cases/ekman_parameters.in</affectedPath><affectedPath>input/parameter_and_flag_configs/e3sm_maint32/silhs_parameters.in</affectedPath><affectedPath>dash_app/plot_tab/plot_types/subcolumn_plot.py</affectedPath><affectedPath>README</affectedPath><affectedPath>input/tunable_parameters_e3sm/configurable_model_flags.in</affectedPath><affectedPath>dash_app/plot_tab/callbacks_case.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/timeseries_plot.py</affectedPath><affectedPath>dash_app/tune_tab/state.py</affectedPath><affectedPath>input/parameter_and_flag_configs/coriolis_cases/atex_long_parameters.in</affectedPath><affectedPath>input/parameter_and_flag_configs/e3sm_maint32/tunable_parameters.in</affectedPath><affectedPath>input/tunable_parameters/silhs_parameters.in</affectedPath><affectedPath>run_scripts/README.md</affectedPath><affectedPath>src/clubb_loss_driver_test.F90</affectedPath><affectedPath>src/clubb_tuner.F90</affectedPath><affectedPath>input/parameter_and_flag_configs/Lscale/configurable_model_flags.in</affectedPath><affectedPath>dash_app/compile_tab/callbacks.py</affectedPath><affectedPath>dash_app/compile_tab/layout.py</affectedPath><affectedPath>tuner/case_defaults.json</affectedPath><affectedPath>run_scripts/README</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>jenkins_tests/clubb_backwards_compatibility_gfortran_test/Jenkinsfile</affectedPath><affectedPath>dash_app/tune_tab/runtime.py</affectedPath><affectedPath>input/tunable_parameters_e3sm/tunable_parameters.in</affectedPath><affectedPath>tests/README</affectedPath><affectedPath>input/stats/all_tuning_stats.in</affectedPath><affectedPath>utilities/loss_metrics.py</affectedPath><affectedPath>tuner/tuning_worker.py</affectedPath><affectedPath>input/parameter_and_flag_configs/tauMatchLscale/configurable_model_flags.in</affectedPath><affectedPath>input/tunable_parameters_coriolis_cases/coriolis_test_parameters.in</affectedPath><affectedPath>input/tunable_parameters_Lscale/configurable_model_flags.in</affectedPath><affectedPath>jenkins_tests/clubb_new_tuner_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_rev_grid_matrix_solve_test/Jenkinsfile</affectedPath><affectedPath>input/parameter_and_flag_configs/e3sm_maint32/configurable_model_flags.in</affectedPath><affectedPath>tuner/job_runtime.py</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>input/case_setups/ekman_model.in</affectedPath><affectedPath>input/parameter_and_flag_configs/compatible_r8029/configurable_model_flags.in</affectedPath><affectedPath>input/tunable_parameters_compatible_r8029/silhs_parameters.in</affectedPath><affectedPath>tuner/tuning_strategy.py</affectedPath><affectedPath>tuner/request.py</affectedPath><affectedPath>utilities/benchmark_converter.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/budget_plot.py</affectedPath><affectedPath>input/case_setups/atex_long_model.in</affectedPath><affectedPath>input/tunable_parameters/tunable_parameters.in</affectedPath><affectedPath>dash_app/assets/11_tab_run_theme.css</affectedPath><affectedPath>dash_app/plot_tab/layout.py</affectedPath><affectedPath>input/parameter_and_flag_configs/e3sm/tunable_parameters.in</affectedPath><affectedPath>dash_app/plot_tab/callbacks_controls.py</affectedPath><affectedPath>dash_app/assets/10_theme.css</affectedPath><affectedPath>dash_app/run_tab/state.py</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>input/parameter_and_flag_configs/compatible_r8029/silhs_parameters.in</affectedPath><affectedPath>input/tunable_parameters_Lscale/tunable_parameters.in</affectedPath><affectedPath>utilities/create_multi_col_params.py</affectedPath><affectedPath>ens_tune/mytuner_sequential.bash</affectedPath><affectedPath>tuner/tuning_scheduler.py</affectedPath><affectedPath>dash_app/assets/12_tab_plots_theme.css</affectedPath><affectedPath>input/parameter_and_flag_configs/Lscale/tunable_parameters.in</affectedPath><affectedPath>src/clubb_loss_driver.F90</affectedPath><affectedPath>input/parameter_and_flag_configs/compatible_r8029/tunable_parameters.in</affectedPath><commitId>95d5d12aef49035170773f0714a97f4109bcccdd</commitId><timestamp>1783051574000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Tuner additions (#1324)

* Starting new additions for tuner - specifically an overall history of all samples and loss metrics with the eventual goal of having fancy SVD and spline things we can do with that

* Adding plots to tune tab to visualize data in the overall sample outputs

* Adding the enhanced simulated annealed to the tuner. Only real tweak it that it runs workers x batch_size chains independently so that we can utilize the CPU fully

* Filtering big values in parameter plot view and making default window length 3600s (1 hour)

* Bug fix to metric report - a 0 correlation was able to throw things off, which could occur when a field from either result (clubb or LES) is all 0 without the other one being all zero. Also some small display improvements

* Adding sensitivity plots

* Updating flag/param selecting method by created a general input/tunable_parameters directory that contains subdirectories for different flag set combos. These can be used by passing in their name to run_scm.py with -config. Also updating references to these files since they moved and also making tests and scripts default to using -override instead of editting files with sed.

* Adding buttons to select param/flag config in the tuner

* Quality of life improvements for plot tab - now view settings and UI settings are retained when reloading the same case

* Fixing missed comment change

* Various small UI improvements

* Improving tuner history check and little UI fix in run_tab

* Fixing tuner environment setup

* Fixing little netcdf version issue and adding new test for loss metrics consistency check

* Renaming tunable_parameters to parameter_and_flag_configs, also adding -config example to run_scripts README
</comment><date>2026-07-02 23:06:14 -0500</date><id>95d5d12aef49035170773f0714a97f4109bcccdd</id><msg>Tuner additions (#1324)</msg><path><editType>edit</editType><file>dash_app/plot_tab/state.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/subcolumn_plot.py</file></path><path><editType>edit</editType><file>input/case_setups/coriolis_test_model.in</file></path><path><editType>edit</editType><file>dash_app/tune_tab/discovery.py</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/compatible_r8029/configurable_model_flags.in</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/coriolis_cases/atex_long_parameters.in</file></path><path><editType>edit</editType><file>tests/run_benchmark_converter_test.py</file></path><path><editType>add</editType><file>tests/analyze_tuner_sample_history.py</file></path><path><editType>add</editType><file>tests/run_loss_metrics_test.py</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>delete</editType><file>input/tunable_parameters/tunable_parameters.in</file></path><path><editType>edit</editType><file>dash_app/assets/14_tab_compile_theme.css</file></path><path><editType>add</editType><file>dash_app/tunable_configs.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/runtime.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_display.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/namelist.py</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/Lscale/configurable_model_flags.in</file></path><path><editType>delete</editType><file>input/tunable_parameters_Lscale/tunable_parameters.in</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_runs.py</file></path><path><editType>edit</editType><file>run_scripts/run_tuner_job.py</file></path><path><editType>add</editType><file>tuner/enhanced_simann_strategy.py</file></path><path><editType>edit</editType><file>dash_app/assets/10_theme.css</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/coriolis_cases/ekman_parameters.in</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/e3sm/configurable_model_flags.in</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/e3sm_maint32/silhs_parameters.in</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/layout.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_rev_grid_matrix_solve_test/Jenkinsfile</file></path><path><editType>edit</editType><file>dash_app/assets/12_tab_plots_theme.css</file></path><path><editType>edit</editType><file>run_scripts/convergence_run/convergence_config.py</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/default/configurable_model_flags.in</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_runs.py</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>delete</editType><file>input/tunable_parameters_coriolis_cases/ekman_parameters.in</file></path><path><editType>delete</editType><file>run_scripts/README</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/e3sm/tunable_parameters.in</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/timeseries_plot.py</file></path><path><editType>edit</editType><file>tuner/status.py</file></path><path><editType>edit</editType><file>tuner/tuning_strategy.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_backwards_compatibility_gfortran_test/Jenkinsfile</file></path><path><editType>delete</editType><file>input/tunable_parameters_compatible_r8029/silhs_parameters.in</file></path><path><editType>edit</editType><file>dash_app/tune_tab/tab.py</file></path><path><editType>delete</editType><file>input/tunable_parameters_Lscale/configurable_model_flags.in</file></path><path><editType>edit</editType><file>src/clubb_loss_driver.F90</file></path><path><editType>edit</editType><file>tests/test_monoflux_limiter_GPU.py</file></path><path><editType>edit</editType><file>README</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_plot_solver_compare/Jenkinsfile</file></path><path><editType>edit</editType><file>tuner/tuning_scheduler.py</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/e3sm_maint32/configurable_model_flags.in</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/e3sm_maint32/maint32_defaults_report.md</file></path><path><editType>edit</editType><file>tuner/case_defaults.json</file></path><path><editType>delete</editType><file>input/tunable_parameters_tauMatchLscale/tunable_parameters.in</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_case.py</file></path><path><editType>edit</editType><file>utilities/loss_metrics.py</file></path><path><editType>edit</editType><file>tuner/test_tuning_strategy.py</file></path><path><editType>edit</editType><file>tuner/request.py</file></path><path><editType>edit</editType><file>tests/run_stats_output_consistency.py</file></path><path><editType>delete</editType><file>input/tunable_parameters/silhs_parameters.in</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_nvhpc_gpu_column_mirror_test/Jenkinsfile</file></path><path><editType>edit</editType><file>src/generalized_grid_test.F90</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/tauMatchLscale/tunable_parameters.in</file></path><path><editType>delete</editType><file>input/tunable_parameters_tauMatchLscale/configurable_model_flags.in</file></path><path><editType>edit</editType><file>utilities/create_multi_col_params.py</file></path><path><editType>edit</editType><file>tests/run_loss_output_consistency.py</file></path><path><editType>edit</editType><file>dash_app/assets/13_tab_tune_theme.css</file></path><path><editType>edit</editType><file>src/clubb_tuner.F90</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/shared.py</file></path><path><editType>edit</editType><file>run_scripts/run_tuner.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_params.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/timeheight_plot.py</file></path><path><editType>edit</editType><file>input/case_setups/README</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_driver_test/Jenkinsfile</file></path><path><editType>edit</editType><file>input/case_setups/ekman_model.in</file></path><path><editType>edit</editType><file>dash_app/tune_tab/runtime.py</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/compatible_r8029/silhs_parameters.in</file></path><path><editType>edit</editType><file>postprocessing/output_scripts/cloud_feedback/README</file></path><path><editType>edit</editType><file>cmake/deps/GPTLDependency.cmake</file></path><path><editType>add</editType><file>dash_app/run_tab/config_state.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_plot_nvhpc_gpu_vs_cpu/Jenkinsfile</file></path><path><editType>add</editType><file>input/stats/all_tuning_stats.in</file></path><path><editType>edit</editType><file>run_scripts/run_scm_loss.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_new_tuner_test/Jenkinsfile</file></path><path><editType>edit</editType><file>dash_app/tune_tab/layout.py</file></path><path><editType>delete</editType><file>input/tunable_parameters_compatible_r8029/tunable_parameters.in</file></path><path><editType>edit</editType><file>dash_app/assets/11_tab_run_theme.css</file></path><path><editType>edit</editType><file>dash_app/compile_tab/callbacks.py</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/default/tunable_parameters.in</file></path><path><editType>delete</editType><file>input/tunable_parameters/configurable_model_flags.in</file></path><path><editType>delete</editType><file>input/tunable_parameters_e3sm/tunable_parameters.in</file></path><path><editType>edit</editType><file>tests/README</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/budget_plot.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/state.py</file></path><path><editType>edit</editType><file>tuner/paths.py</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/default/silhs_parameters.in</file></path><path><editType>add</editType><file>run_scripts/README.md</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>edit</editType><file>tuner/job_runtime.py</file></path><path><editType>delete</editType><file>input/tunable_parameters_coriolis_cases/atex_long_parameters.in</file></path><path><editType>edit</editType><file>utilities/benchmark_converter.py</file></path><path><editType>delete</editType><file>input/tunable_parameters_coriolis_cases/coriolis_test_parameters.in</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>edit</editType><file>ens_tune/mytuner_sequential.bash</file></path><path><editType>edit</editType><file>dash_app/run_tab/state.py</file></path><path><editType>edit</editType><file>.gitignore</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_controls.py</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/coriolis_cases/coriolis_test_parameters.in</file></path><path><editType>edit</editType><file>tests/run_thread_test.py</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/tauMatchLscale/configurable_model_flags.in</file></path><path><editType>add</editType><file>tuner/sample_history.py</file></path><path><editType>edit</editType><file>dash_app/compile_tab/layout.py</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/compatible_r8029/tunable_parameters.in</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_settings.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/tab.py</file></path><path><editType>add</editType><file>tuner/system_defaults.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_settings.py</file></path><path><editType>delete</editType><file>input/tunable_parameters_e3sm/configurable_model_flags.in</file></path><path><editType>edit</editType><file>src/clubb_loss_driver_test.F90</file></path><path><editType>delete</editType><file>input/tunable_parameters_compatible_r8029/configurable_model_flags.in</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/Lscale/tunable_parameters.in</file></path><path><editType>edit</editType><file>tuner/tuning_worker.py</file></path><path><editType>edit</editType><file>ens_tune/mytuner_movingfoot.bash</file></path><path><editType>edit</editType><file>input/case_setups/atex_long_model.in</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_nvhpc_gpu_vs_cpu_diffness/Jenkinsfile</file></path><path><editType>add</editType><file>input/parameter_and_flag_configs/e3sm_maint32/tunable_parameters.in</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/profile_plot.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>547</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/547/</url></nextBuild><previousBuild><number>545</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/545/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>545</buildNumber><marked><SHA1>31446891daef22d1f1ac63262df21583933565b9</SHA1><branch><SHA1>31446891daef22d1f1ac63262df21583933565b9</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>31446891daef22d1f1ac63262df21583933565b9</SHA1><branch><SHA1>31446891daef22d1f1ac63262df21583933565b9</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>31446891daef22d1f1ac63262df21583933565b9</SHA1><branch><SHA1>31446891daef22d1f1ac63262df21583933565b9</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#545</displayName><duration>266490</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #545</fullDisplayName><id>545</id><keepLog>false</keepLog><number>545</number><queueId>5542</queueId><result>SUCCESS</result><timestamp>1782980826227</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/545/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>dash_app/run_tab/tab.py</affectedPath><affectedPath>dash_app/compile_tab/discovery.py</affectedPath><affectedPath>dash_app/app.py</affectedPath><affectedPath>dash_app/compile_tab/runtime.py</affectedPath><affectedPath>dash_app/assets/10_theme.css</affectedPath><affectedPath>clubb_python_api/README.md</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>dash_app/assets/30_run_ui_resize.js</affectedPath><affectedPath>dash_app/compile_tab/tab.py</affectedPath><affectedPath>dash_app/assets/14_tab_compile_theme.css</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>dash_app/assets/20_autoscroll.js</affectedPath><affectedPath>dash_app/compile_tab/callbacks.py</affectedPath><affectedPath>run_scripts/run_scm_loss.py</affectedPath><affectedPath>dash_app/compile_tab/layout.py</affectedPath><affectedPath>clubb_python_api/run_pytests.sh</affectedPath><affectedPath>dash_app/plot_tab/plot_types/base_plot.py</affectedPath><affectedPath>dash_app/tune_tab/layout.py</affectedPath><affectedPath>dash_app/assets/11_tab_run_theme.css</affectedPath><affectedPath>dash_app/compile_tab/state.py</affectedPath><affectedPath>clubb_python_api/CMakeLists.txt</affectedPath><affectedPath>dash_app/compile_tab/__init__.py</affectedPath><commitId>31446891daef22d1f1ac63262df21583933565b9</commitId><timestamp>1782963365000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Dash compile tab (#1323)

* Fixing small UI issues and adding tab that currently only can compile, but the plan is to have to be compile + run tests

* Improving compile tab - mainly implementing the ability to select existing builds to use as the version to run with.

* Tiny fixes to run tab UI

* Improvements to rebuilding - there were tiny bugs.

* Updating method of installing python compiles - now we package the python .so libraries with the install build. This makes things simple to import and fixes compilation issues when switching between compilers

* Cleanup - reverting various unneccesary things

---------

Co-authored-by: Gunther Huebler &lt;guntherhuebler@Gunthers-MacBook-Pro-2.local&gt;
</comment><date>2026-07-01 22:36:05 -0500</date><id>31446891daef22d1f1ac63262df21583933565b9</id><msg>Dash compile tab (#1323)</msg><path><editType>edit</editType><file>dash_app/assets/20_autoscroll.js</file></path><path><editType>edit</editType><file>run_scripts/run_scm_loss.py</file></path><path><editType>add</editType><file>dash_app/compile_tab/tab.py</file></path><path><editType>edit</editType><file>clubb_python_api/run_pytests.sh</file></path><path><editType>add</editType><file>dash_app/compile_tab/state.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/layout.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/tab.py</file></path><path><editType>edit</editType><file>clubb_python_api/CMakeLists.txt</file></path><path><editType>add</editType><file>dash_app/compile_tab/layout.py</file></path><path><editType>edit</editType><file>clubb_python_api/README.md</file></path><path><editType>add</editType><file>dash_app/compile_tab/__init__.py</file></path><path><editType>add</editType><file>dash_app/compile_tab/discovery.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/base_plot.py</file></path><path><editType>add</editType><file>dash_app/assets/14_tab_compile_theme.css</file></path><path><editType>edit</editType><file>dash_app/assets/30_run_ui_resize.js</file></path><path><editType>add</editType><file>dash_app/compile_tab/callbacks.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>edit</editType><file>dash_app/assets/11_tab_run_theme.css</file></path><path><editType>edit</editType><file>dash_app/app.py</file></path><path><editType>add</editType><file>dash_app/compile_tab/runtime.py</file></path><path><editType>edit</editType><file>dash_app/assets/10_theme.css</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>546</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/546/</url></nextBuild><previousBuild><number>544</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/544/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>544</buildNumber><marked><SHA1>7c083496c42caa1b7d18c781134f0cc18ae94748</SHA1><branch><SHA1>7c083496c42caa1b7d18c781134f0cc18ae94748</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>7c083496c42caa1b7d18c781134f0cc18ae94748</SHA1><branch><SHA1>7c083496c42caa1b7d18c781134f0cc18ae94748</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>7c083496c42caa1b7d18c781134f0cc18ae94748</SHA1><branch><SHA1>7c083496c42caa1b7d18c781134f0cc18ae94748</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#544</displayName><duration>91538</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #544</fullDisplayName><id>544</id><keepLog>false</keepLog><number>544</number><queueId>5432</queueId><result>SUCCESS</result><timestamp>1782548826103</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/544/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/advance_clubb_core.py</affectedPath><affectedPath>clubb_jax/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/stats_clubb_utilities.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_xp3_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/numerical_check.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90</affectedPath><affectedPath>clubb_python_driver/advance_clubb_core.py</affectedPath><affectedPath>LLM_prompts/python_api_audit_handoff.md</affectedPath><affectedPath>clubb_python_api/tests/test_argument_contract_audit.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xm_wpxp.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_clubb_core.py</affectedPath><affectedPath>clubb_jax/clubb_case_initalization.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/stats_clubb_utilities_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_xm_wpxp_module_wrapper.F90</affectedPath><affectedPath>LLM_prompts/update_python_api_and_drivers.md</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_xp2_xpyp_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp3.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</affectedPath><affectedPath>clubb_python_driver/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_python_driver/clubb_case_initalization.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xp3.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_stats_accumulate.py</affectedPath><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_core.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py</affectedPath><commitId>1ba1f81f6b41e649dfe497947dc4c22c69f38f6c</commitId><timestamp>1782446549000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Updating python contract audit to better detect API arg list discrepancies from the underlying fortran arg lists. Also adding a temporary handoff file and improving the python api fix shortcut

(cherry picked from commit 47106db56945d6d0c1f962cc77d205db99d60f4f)
</comment><date>2026-06-25 23:02:29 -0500</date><id>1ba1f81f6b41e649dfe497947dc4c22c69f38f6c</id><msg>Updating python contract audit to better detect API arg list discrepancies from the underlying fortran arg lists. Also adding a temporary handoff file and improving the python api fix shortcut</msg><path><editType>edit</editType><file>LLM_prompts/update_python_api_and_drivers.md</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_to_end.py</file></path><path><editType>add</editType><file>LLM_prompts/python_api_audit_handoff.md</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xp3.py</file></path><path><editType>edit</editType><file>clubb_jax/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_xp2_xpyp_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xp3.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_argument_contract_audit.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/numerical_check.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_stats_accumulate.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_xp3_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_jax/advance_clubb_to_end.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_xm_wpxp_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xm_wpxp.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</file></path><path><editType>edit</editType><file>clubb_python_driver/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/stats_clubb_utilities_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/stats_clubb_utilities.py</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_core.py</file></path><path><editType>edit</editType><file>clubb_jax/advance_clubb_core.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_python_api/clubb_python/CLUBB_core/sigma_sqd_w_module.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_corr_varnce_module.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/stats_clubb_utilities.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_mixing_length.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/mixing_length.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/ly93_pdf_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/adg1_adg2_3d_luhar_pdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/penta_bicgstab_solver.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/new_tsdadg_pdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/grid_class.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf_main.py</affectedPath><affectedPath>clubb_python_driver/radiation.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xm_wpxp.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_windm_edsclrm.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/saturation.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/radiation_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/matrix_solver_wrapper.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/adg1_adg2_3d_luhar_pdf_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/remapping_module.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/diffusion.py</affectedPath><affectedPath>clubb_python_api/tests/test_advance_core_subs.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/err_info_type_module.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_numerical_check.py</affectedPath><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/pos_definite_module.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/turbulent_adv_pdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/calc_pressure.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/new_tsdadg_pdf_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/clip_explicit.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_splat.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/sponge_layer_damping.py</affectedPath><affectedPath>clubb_python_api/clubb_python/prescribe_forcings.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/pdf_closure.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/sfc_varnce_module.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/parameters_tunable.py</affectedPath><affectedPath>clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/numerical_check.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/pdf_parameter_module.py</affectedPath><affectedPath>clubb_python_api/tests/test_argument_contract_audit.py</affectedPath><affectedPath>LLM_prompts/python_api_audit_handoff.md</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_helper.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/corr_varnce_module.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/new_pdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_clubb_core.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/new_hybrid_pdf_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/new_pdf_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_turbulent_adv_pdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/radiation.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/ly93_pdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/mono_flux_limiter.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xp3.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/sponge_layer_damping_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/new_pdf_main.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/skx_module.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py</affectedPath><commitId>0da14a07a2ef02d9517c80c18d0a3a285dc08d04</commitId><timestamp>1782446642000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Our argument_contract_audit.py script checks if the python_api matches the underlying fortran - this makes it more strict, and fixes many of the inconsistencies it found.

(cherry picked from commit f5c3b99d56499acc2a706cf024dd802f73030dd2)
</comment><date>2026-06-25 23:04:02 -0500</date><id>0da14a07a2ef02d9517c80c18d0a3a285dc08d04</id><msg>Our argument_contract_audit.py script checks if the python_api matches the underlying fortran - this makes it more strict, and fixes many of the inconsistencies it found.</msg><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/new_hybrid_pdf_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xp3.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/sigma_sqd_w_module.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/mono_flux_limiter.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/sfc_varnce_module.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_mixing_length.py</file></path><path><editType>edit</editType><file>clubb_python_driver/radiation.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/radiation_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/matrix_solver_wrapper.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/pdf_parameter_module.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/mixing_length.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/remapping_module.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/new_pdf_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_argument_contract_audit.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/corr_varnce_module.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/grid_class.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/err_info_type_module.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/parameters_tunable.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_splat.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/new_tsdadg_pdf_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/calc_pressure.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/numerical_check.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_corr_varnce_module.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/skx_module.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_windm_edsclrm.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf_main.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_turbulent_adv_pdf.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/radiation.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_numerical_check.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/penta_bicgstab_solver.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/ly93_pdf_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/prescribe_forcings.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/adg1_adg2_3d_luhar_pdf.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/clip_explicit.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/stats_clubb_utilities.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/new_pdf.py</file></path><path><editType>delete</editType><file>LLM_prompts/python_api_audit_handoff.md</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/sponge_layer_damping_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/new_tsdadg_pdf.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_advance_core_subs.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/pdf_closure.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/saturation.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/ly93_pdf.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xm_wpxp.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/sponge_layer_damping.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/diffusion.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/pos_definite_module.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/adg1_adg2_3d_luhar_pdf_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/new_pdf_main.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_helper.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/turbulent_adv_pdf.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_python_api/clubb_python/clubb_api.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_mixing_length.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/mixing_length.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/adg1_adg2_3d_luhar_pdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/new_tsdadg_pdf.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_transport.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf_main.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/mixing_length_wrapper.F90</affectedPath><affectedPath>clubb_python_driver/advance_clubb_core.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/pdf_closure_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_udt_return_contract.py</affectedPath><affectedPath>clubb_python_api/tests/test_init_pressure.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/matrix_solver_wrapper.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/remapping_module.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/diffusion.py</affectedPath><affectedPath>clubb_python_driver/clubb_case_initalization.py</affectedPath><affectedPath>clubb_python_api/tests/test_advance_core_subs.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/err_info_type_module.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_stats_accumulate.py</affectedPath><affectedPath>clubb_python_api/tests/test_stats.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_precipitation_fraction.py</affectedPath><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/calc_pressure.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_ly93.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_sponge.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/sponge_layer_damping.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_luhar.py</affectedPath><affectedPath>clubb_python_api/clubb_python/prescribe_forcings.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/pdf_closure.py</affectedPath><affectedPath>clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/pdf_parameter_module.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_helper.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/new_pdf.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_skx.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_new_pdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_clubb_core.py</affectedPath><affectedPath>clubb_jax/clubb_case_initalization.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_new_hybrid_pdf.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_mono_flux.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp3.py</affectedPath><affectedPath>clubb_python_driver/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_python_api/clubb_python/radiation.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/ly93_pdf.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/new_hybrid_pdf_main_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_new_tsdadg.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_core.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_remap.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/skx_module.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py</affectedPath><commitId>e73f5d17f344ccfbf4741d978a7e0dd60a06fb25</commitId><timestamp>1782446735000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>advance_clubb_core.py cleanup and removing strange compat_kwargs usages that seem like artifacts of laziness

(cherry picked from commit 9056400901e270333b80ee8f66af055d395b8020)
</comment><date>2026-06-25 23:05:35 -0500</date><id>e73f5d17f344ccfbf4741d978a7e0dd60a06fb25</id><msg>advance_clubb_core.py cleanup and removing strange compat_kwargs usages that seem like artifacts of laziness</msg><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_skx.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_udt_return_contract.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/err_info_type_module.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_advance_core_subs.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/clubb_api.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/new_tsdadg_pdf.py</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_to_end.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_stats.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_new_tsdadg.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/mixing_length_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_new_pdf.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/diffusion.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/sponge_layer_damping.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/remapping_module.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/skx_module.py</file></path><path><editType>edit</editType><file>clubb_python_driver/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_helper.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_new_hybrid_pdf.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/prescribe_forcings.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/new_pdf.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_ly93.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_stats_accumulate.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/radiation.py</file></path><path><editType>edit</editType><file>clubb_jax/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_precipitation_fraction.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/adg1_adg2_3d_luhar_pdf.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xp3.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_luhar.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf_main.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_sponge.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_init_pressure.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_mixing_length.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/pdf_closure_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_transport.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/calc_pressure.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/new_hybrid_pdf_main_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_mono_flux.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_remap.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/ly93_pdf.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/mixing_length.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/pdf_closure.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/pdf_parameter_module.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/matrix_solver_wrapper.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/advance_clubb_core.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/error_code.py</affectedPath><affectedPath>clubb_python_api/clubb_python/clubb_api.py</affectedPath><affectedPath>clubb_jax/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/sponge_layer_damping.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_luhar.py</affectedPath><affectedPath>clubb_python_api/clubb_python/prescribe_forcings.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_mixing_length.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/mixing_length.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/pdf_closure.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/parameters_tunable.py</affectedPath><affectedPath>clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/adg1_adg2_3d_luhar_pdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/pdf_parameter_module.py</affectedPath><affectedPath>LLM_prompts/port_underlying_fortran_to_other_languages.md</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf_main.py</affectedPath><affectedPath>clubb_python_driver/advance_clubb_core.py</affectedPath><affectedPath>clubb_python_api/tests/test_argument_contract_audit.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_clubb_core.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_new_pdf.py</affectedPath><affectedPath>clubb_jax/clubb_case_initalization.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/loss_driver.py</affectedPath><affectedPath>LLM_prompts/SHORTCUTS.md</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/clubb_loss_driver_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_pdf_closure_driver.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_mono_flux.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp3.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/matrix_solver_wrapper.py</affectedPath><affectedPath>clubb_python_driver/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/remapping_module.py</affectedPath><affectedPath>clubb_python_driver/clubb_case_initalization.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/diffusion.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/mono_flux_limiter.py</affectedPath><affectedPath>clubb_python_api/tests/test_advance_core_subs.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_matrix_solver_wrapper.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_stats_accumulate.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/new_pdf_main.py</affectedPath><affectedPath>clubb_python_api/tests/test_stats.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_precipitation_fraction.py</affectedPath><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py</affectedPath><commitId>1fa8fdebc019e2807e0031f7233ef85243f80ad6</commitId><timestamp>1782449396000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Improving audit script even more, fixing issues it found. Also making advance_clubb_core.py nice and making an LLM shortcut for how to repeat the process

(cherry picked from commit 25b41435d7bfbbe03f2736440bdcbf4330f863ab)
</comment><date>2026-06-25 23:49:56 -0500</date><id>1fa8fdebc019e2807e0031f7233ef85243f80ad6</id><msg>Improving audit script even more, fixing issues it found. Also making advance_clubb_core.py nice and making an LLM shortcut for how to repeat the process</msg><path><editType>edit</editType><file>clubb_jax/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/pdf_parameter_module.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_mono_flux.py</file></path><path><editType>edit</editType><file>clubb_python_driver/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/loss_driver.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/remapping_module.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_precipitation_fraction.py</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_to_end.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xp3.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/mixing_length.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/mono_flux_limiter.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_matrix_solver_wrapper.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/prescribe_forcings.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/new_pdf_main.py</file></path><path><editType>add</editType><file>LLM_prompts/port_underlying_fortran_to_other_languages.md</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_argument_contract_audit.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/matrix_solver_wrapper.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/parameters_tunable.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py</file></path><path><editType>edit</editType><file>LLM_prompts/SHORTCUTS.md</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/clubb_loss_driver_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_stats_accumulate.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/clubb_api.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_new_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_advance_core_subs.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_stats.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/diffusion.py</file></path><path><editType>edit</editType><file>clubb_jax/advance_clubb_to_end.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/error_code.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/sponge_layer_damping.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_pdf_closure_driver.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_luhar.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf_main.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/pdf_closure.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_mixing_length.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/adg1_adg2_3d_luhar_pdf.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/README</affectedPath><affectedPath>tests/README</affectedPath><affectedPath>run_scripts/run_bindiff_all.py</affectedPath><affectedPath>tests/run_bindiff_w_flags.py</affectedPath><commitId>7c083496c42caa1b7d18c781134f0cc18ae94748</commitId><timestamp>1782494071000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Building varying flags bindiff into run_bindiff_all.py, this just makes sense and helps fix the varying flags BFB test
</comment><date>2026-06-26 12:14:31 -0500</date><id>7c083496c42caa1b7d18c781134f0cc18ae94748</id><msg>Building varying flags bindiff into run_bindiff_all.py, this just makes sense and helps fix the varying flags BFB test</msg><path><editType>edit</editType><file>run_scripts/README</file></path><path><editType>edit</editType><file>tests/README</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_all.py</file></path><path><editType>edit</editType><file>tests/run_bindiff_w_flags.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>545</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/545/</url></nextBuild><previousBuild><number>543</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/543/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Gunther Huebler</shortDescription><userId>huebler</userId><userName>Gunther Huebler</userName></cause></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>543</buildNumber><marked><SHA1>955aa780e3a47b6accf7af68d85f76ad53baff39</SHA1><branch><SHA1>955aa780e3a47b6accf7af68d85f76ad53baff39</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>955aa780e3a47b6accf7af68d85f76ad53baff39</SHA1><branch><SHA1>955aa780e3a47b6accf7af68d85f76ad53baff39</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>955aa780e3a47b6accf7af68d85f76ad53baff39</SHA1><branch><SHA1>955aa780e3a47b6accf7af68d85f76ad53baff39</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#543</displayName><duration>96905</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #543</fullDisplayName><id>543</id><keepLog>false</keepLog><number>543</number><queueId>5287</queueId><result>SUCCESS</result><timestamp>1782454188436</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/543/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_tuner.py</affectedPath><affectedPath>run_scripts/run_clubb_w_varying_flags.py</affectedPath><affectedPath>jenkins_tests/clubb_restart_silhs_gfortran_test/Jenkinsfile</affectedPath><affectedPath>clubb_python_driver/README.md</affectedPath><affectedPath>run_scripts/time_scm_all.bash</affectedPath><affectedPath>tests/test_monoflux_limiter_GPU.py</affectedPath><affectedPath>input/flag_sets/run_bindiff_w_flags_config_core_flags.json</affectedPath><affectedPath>input/flag_sets/run_bindiff_w_flags_config_example.json</affectedPath><affectedPath>run_scripts/generate_seed.bash</affectedPath><affectedPath>jenkins_tests/clubb_timestep_convergence_gfortran_test/Jenkinsfile</affectedPath><affectedPath>run_scripts/run_scm_loss.py</affectedPath><affectedPath>run_scripts/run_G_unit_tests.bash</affectedPath><affectedPath>clubb_jax/JAX_CONVERSION_PLAN.md</affectedPath><affectedPath>jenkins_tests/clubb_monoflux_CPU_vs_GPU_diff/Jenkinsfile</affectedPath><affectedPath>src/generalized_grid_test.F90</affectedPath><affectedPath>run_scripts/create_case_namelist.py</affectedPath><affectedPath>run_scripts/ensemble_run/ensembles/.gitignore</affectedPath><affectedPath>tuner/paths.py</affectedPath><affectedPath>tests/run_thread_test.py</affectedPath><affectedPath>jenkins_tests/clubb_generalized_vertical_grid_test/Jenkinsfile</affectedPath><affectedPath>run_scripts/run_scm.bash</affectedPath><affectedPath>run_scripts/check_budget_balance.py</affectedPath><affectedPath>jenkins_tests/clubb_restart_gfortran_test/Jenkinsfile</affectedPath><affectedPath>run_scripts/run_scm_collect_suite.bash</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>jenkins_tests/clubb_nvhpc_gpu_column_mirror_test/Jenkinsfile</affectedPath><affectedPath>run_scripts/run_scm_collect.bash</affectedPath><affectedPath>tests/run_restart_test.py</affectedPath><affectedPath>run_scripts/run_silhs_test.bash</affectedPath><affectedPath>run_scripts/ensemble_run/create_output.bash</affectedPath><affectedPath>tests/run_loss_output_consistency.py</affectedPath><affectedPath>run_scripts/run_bindiff_w_flags_config_core_flags.json</affectedPath><affectedPath>tuner/test_tuning_strategy.py</affectedPath><affectedPath>run_scripts/run_scm_debug.bash</affectedPath><affectedPath>run_scripts/test_fatal_error_handling.bash</affectedPath><affectedPath>run_scripts/run_stats_output_consistency.py</affectedPath><affectedPath>run_scripts/run_python_vs_fortran_cases.py</affectedPath><affectedPath>tests/run_benchmark_converter_test.py</affectedPath><affectedPath>run_scripts/run_bindiff_w_flags.py</affectedPath><affectedPath>run_scripts/run_clubb_and_pyplotgen.py</affectedPath><affectedPath>run_scripts/run_clubb_conv_test.bash</affectedPath><affectedPath>tests/run_stats_output_consistency.py</affectedPath><affectedPath>jenkins_tests/clubb_silhs_convergence_gfortran/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_stats_output_consistency_gfortran_test/Jenkinsfile</affectedPath><affectedPath>run_scripts/run_G_unit_tests.py</affectedPath><affectedPath>jenkins_tests/clubb_error_handling_gfortran_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_nvhpc_gpu_vs_cpu_diffness/Jenkinsfile</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>run_scripts/test_fatal_error_handling.py</affectedPath><affectedPath>README</affectedPath><affectedPath>tuner/README.md</affectedPath><affectedPath>run_scripts/run_silhs_test.py</affectedPath><affectedPath>postprocessing/timestep_convergence_test.bash</affectedPath><affectedPath>tests/test_fatal_error_handling.py</affectedPath><affectedPath>jenkins_tests/clubb_G_unit_gfortran_tests/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_cmake_output_matching/Jenkinsfile</affectedPath><affectedPath>tests/run_timestep_tests.py</affectedPath><affectedPath>tests/run_clubb_conv_test.py</affectedPath><affectedPath>run_scripts/run_bindiff_all.bash</affectedPath><affectedPath>postprocessing/latin_hypercube_plotting/variance_analysis_scripts/rms_vs_sample_points/silhs_varying_sp_output.sh</affectedPath><affectedPath>tests/check_budget_balance.py</affectedPath><affectedPath>run_scripts/ensemble_run/README</affectedPath><affectedPath>run_scripts/ensemble_run/ensemble_run.bash</affectedPath><affectedPath>run_scripts/ensemble_run/submission/.gitignore</affectedPath><affectedPath>run_scripts/README</affectedPath><affectedPath>jenkins_tests/clubb_openmp_gfortran_test/Jenkinsfile</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>run_scripts/run_benchmark_converter_test.py</affectedPath><affectedPath>tests/run_jax_vs_fortran_cases.py</affectedPath><affectedPath>tests/README</affectedPath><affectedPath>tests/test_fire_tuner.py</affectedPath><affectedPath>tuner/tuning_worker.py</affectedPath><affectedPath>run_scripts/run_scm_all.bash</affectedPath><affectedPath>run_scripts/run_bindiff_w_flags_config_host_flags.json</affectedPath><affectedPath>jenkins_tests/clubb_python_test/Jenkinsfile</affectedPath><affectedPath>tests/check_mirrored_multi_col_output.py</affectedPath><affectedPath>run_scripts/run_bindiff_w_flags_requirements.txt</affectedPath><affectedPath>run_scripts/create_multi_col_params.py</affectedPath><affectedPath>run_scripts/run_loss_output_consistency.py</affectedPath><affectedPath>jenkins_tests/clubb_generalized_vert_grid_host_flags/Jenkinsfile</affectedPath><affectedPath>tests/run_G_unit_tests.py</affectedPath><affectedPath>run_scripts/fire_tuner.py</affectedPath><affectedPath>src/int2txt.F90</affectedPath><affectedPath>postprocessing/pyplotgen/pyplotgen.py</affectedPath><affectedPath>run_scripts/run_bindiff_w_flags_config_example.json</affectedPath><affectedPath>tests/run_python_vs_fortran_cases.py</affectedPath><affectedPath>run_scripts/run_clubb_conv_test.py</affectedPath><affectedPath>run_scripts/run_thread_test.bash</affectedPath><affectedPath>run_scripts/fill_holes.py</affectedPath><affectedPath>run_scripts/check_mirrored_multi_col_output.py</affectedPath><affectedPath>run_scripts/ensemble_run/input/.gitignore</affectedPath><affectedPath>run_scripts/RUN_CASES</affectedPath><affectedPath>jenkins_tests/clubb_fire_tuning_gfortran_test/Jenkinsfile</affectedPath><affectedPath>tests/run_bindiff_w_flags.py</affectedPath><affectedPath>run_scripts/run_clubb_and_pyplotgen.bash</affectedPath><affectedPath>jenkins_tests/run_bindiff_w_varying_flags_against_master/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_G_unit_reverse_dir_grid_test/Jenkinsfile</affectedPath><affectedPath>run_scripts/run_timestep_tests.bash</affectedPath><affectedPath>input/flag_sets/run_bindiff_w_flags_config_host_flags.json</affectedPath><affectedPath>jenkins_tests/clubb_uninit_var_oracle_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_check_budget_balance_gfortran/Jenkinsfile</affectedPath><affectedPath>run_scripts/run_timestep_tests.py</affectedPath><affectedPath>jenkins_tests/clubb_timestep_gfortran_tests/Jenkinsfile</affectedPath><affectedPath>run_scripts/ensemble_run/output/.gitignore</affectedPath><affectedPath>run_scripts/run_tuner.bash</affectedPath><affectedPath>LLM_prompts/update_python_api_and_drivers.md</affectedPath><affectedPath>tests/run_silhs_test.py</affectedPath><affectedPath>run_scripts/diff_netcdf_outputs.py</affectedPath><affectedPath>dash_app/fill_holes.py</affectedPath><affectedPath>run_scripts/run_jax_vs_fortran_cases.py</affectedPath><affectedPath>run_scripts/run_restart_test.py</affectedPath><affectedPath>run_scripts/ensemble_run/ensemble_setup.bash</affectedPath><affectedPath>run_scripts/run_bindiff_varying_flags_output.py</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>run_scripts/run_bindiff_all.py</affectedPath><affectedPath>utilities/create_multi_col_params.py</affectedPath><affectedPath>run_scripts/run_thread_test.py</affectedPath><affectedPath>run_scripts/test_monoflux_limiter_GPU.py</affectedPath><affectedPath>src/CMakeLists.txt</affectedPath><affectedPath>src/error.F90</affectedPath><affectedPath>run_scripts/check_multi_col_error.py</affectedPath><commitId>e04956358685c2869358db8b6d46d16cf9744b03</commitId><timestamp>1782439617000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Cleaning up run_scripts (#1320)

* Cleaning up run_scripts by removing old bash files, also moving many scripts into a new tests/ directory, since those are tests. Fixing a small bug in clubb_driver as well, just needed to move a print statement, otherwise it tries writing to a closed file.

* A little cleanup and better READMEs for run_scripts and tests
</comment><date>2026-06-25 21:06:57 -0500</date><id>e04956358685c2869358db8b6d46d16cf9744b03</id><msg>Cleaning up run_scripts (#1320)</msg><path><editType>delete</editType><file>run_scripts/ensemble_run/ensembles/.gitignore</file></path><path><editType>delete</editType><file>run_scripts/run_G_unit_tests.py</file></path><path><editType>delete</editType><file>run_scripts/RUN_CASES</file></path><path><editType>delete</editType><file>run_scripts/diff_netcdf_outputs.py</file></path><path><editType>edit</editType><file>run_scripts/run_tuner.py</file></path><path><editType>add</editType><file>tests/run_silhs_test.py</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_all.py</file></path><path><editType>add</editType><file>tests/test_fatal_error_handling.py</file></path><path><editType>edit</editType><file>LLM_prompts/update_python_api_and_drivers.md</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_uninit_var_oracle_test/Jenkinsfile</file></path><path><editType>delete</editType><file>run_scripts/check_mirrored_multi_col_output.py</file></path><path><editType>delete</editType><file>run_scripts/run_stats_output_consistency.py</file></path><path><editType>add</editType><file>tests/run_G_unit_tests.py</file></path><path><editType>delete</editType><file>run_scripts/run_scm_all.bash</file></path><path><editType>add</editType><file>tests/run_bindiff_w_flags.py</file></path><path><editType>edit</editType><file>clubb_jax/JAX_CONVERSION_PLAN.md</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>add</editType><file>tests/run_stats_output_consistency.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_error_handling_gfortran_test/Jenkinsfile</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_G_unit_gfortran_tests/Jenkinsfile</file></path><path><editType>delete</editType><file>run_scripts/run_timestep_tests.py</file></path><path><editType>add</editType><file>dash_app/fill_holes.py</file></path><path><editType>delete</editType><file>run_scripts/fire_tuner.py</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>delete</editType><file>run_scripts/check_budget_balance.py</file></path><path><editType>delete</editType><file>run_scripts/run_bindiff_w_flags_config_core_flags.json</file></path><path><editType>delete</editType><file>run_scripts/run_scm.bash</file></path><path><editType>delete</editType><file>run_scripts/ensemble_run/create_output.bash</file></path><path><editType>delete</editType><file>run_scripts/run_bindiff_w_flags_config_host_flags.json</file></path><path><editType>edit</editType><file>README</file></path><path><editType>edit</editType><file>postprocessing/timestep_convergence_test.bash</file></path><path><editType>delete</editType><file>src/int2txt.F90</file></path><path><editType>add</editType><file>tests/run_timestep_tests.py</file></path><path><editType>add</editType><file>input/flag_sets/run_bindiff_w_flags_config_core_flags.json</file></path><path><editType>edit</editType><file>src/CMakeLists.txt</file></path><path><editType>edit</editType><file>tuner/test_tuning_strategy.py</file></path><path><editType>delete</editType><file>run_scripts/run_jax_vs_fortran_cases.py</file></path><path><editType>add</editType><file>utilities/create_multi_col_params.py</file></path><path><editType>delete</editType><file>run_scripts/run_bindiff_w_flags_config_example.json</file></path><path><editType>edit</editType><file>jenkins_tests/run_bindiff_w_varying_flags_against_master/Jenkinsfile</file></path><path><editType>delete</editType><file>run_scripts/run_thread_test.py</file></path><path><editType>add</editType><file>tests/test_monoflux_limiter_GPU.py</file></path><path><editType>delete</editType><file>run_scripts/run_clubb_conv_test.py</file></path><path><editType>delete</editType><file>run_scripts/create_multi_col_params.py</file></path><path><editType>add</editType><file>tests/test_fire_tuner.py</file></path><path><editType>add</editType><file>tests/README</file></path><path><editType>add</editType><file>tests/run_thread_test.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_timestep_convergence_gfortran_test/Jenkinsfile</file></path><path><editType>edit</editType><file>run_scripts/README</file></path><path><editType>add</editType><file>tests/run_jax_vs_fortran_cases.py</file></path><path><editType>add</editType><file>run_scripts/run_clubb_and_pyplotgen.py</file></path><path><editType>edit</editType><file>run_scripts/run_clubb_w_varying_flags.py</file></path><path><editType>delete</editType><file>run_scripts/run_scm_collect_suite.bash</file></path><path><editType>delete</editType><file>run_scripts/run_benchmark_converter_test.py</file></path><path><editType>delete</editType><file>run_scripts/run_python_vs_fortran_cases.py</file></path><path><editType>add</editType><file>input/flag_sets/run_bindiff_w_flags_config_host_flags.json</file></path><path><editType>add</editType><file>tests/check_mirrored_multi_col_output.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_monoflux_CPU_vs_GPU_diff/Jenkinsfile</file></path><path><editType>add</editType><file>tests/run_loss_output_consistency.py</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/pyplotgen.py</file></path><path><editType>add</editType><file>tests/run_restart_test.py</file></path><path><editType>add</editType><file>input/flag_sets/run_bindiff_w_flags_config_example.json</file></path><path><editType>edit</editType><file>tuner/tuning_worker.py</file></path><path><editType>edit</editType><file>tuner/paths.py</file></path><path><editType>delete</editType><file>run_scripts/run_thread_test.bash</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_stats_output_consistency_gfortran_test/Jenkinsfile</file></path><path><editType>delete</editType><file>run_scripts/run_clubb_conv_test.bash</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_nvhpc_gpu_column_mirror_test/Jenkinsfile</file></path><path><editType>delete</editType><file>run_scripts/run_scm_debug.bash</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_generalized_vert_grid_host_flags/Jenkinsfile</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_check_budget_balance_gfortran/Jenkinsfile</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_cmake_output_matching/Jenkinsfile</file></path><path><editType>delete</editType><file>run_scripts/run_G_unit_tests.bash</file></path><path><editType>add</editType><file>utilities/create_case_namelist.py</file></path><path><editType>delete</editType><file>run_scripts/time_scm_all.bash</file></path><path><editType>add</editType><file>tests/run_benchmark_converter_test.py</file></path><path><editType>delete</editType><file>run_scripts/ensemble_run/input/.gitignore</file></path><path><editType>delete</editType><file>run_scripts/test_fatal_error_handling.py</file></path><path><editType>delete</editType><file>run_scripts/run_restart_test.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_fire_tuning_gfortran_test/Jenkinsfile</file></path><path><editType>delete</editType><file>run_scripts/test_fatal_error_handling.bash</file></path><path><editType>add</editType><file>tests/run_clubb_conv_test.py</file></path><path><editType>delete</editType><file>run_scripts/ensemble_run/ensemble_setup.bash</file></path><path><editType>edit</editType><file>tuner/README.md</file></path><path><editType>delete</editType><file>run_scripts/fill_holes.py</file></path><path><editType>delete</editType><file>run_scripts/create_case_namelist.py</file></path><path><editType>delete</editType><file>run_scripts/run_bindiff_all.bash</file></path><path><editType>delete</editType><file>run_scripts/run_tuner.bash</file></path><path><editType>edit</editType><file>run_scripts/run_scm_loss.py</file></path><path><editType>delete</editType><file>run_scripts/test_monoflux_limiter_GPU.py</file></path><path><editType>delete</editType><file>run_scripts/run_clubb_and_pyplotgen.bash</file></path><path><editType>delete</editType><file>run_scripts/check_multi_col_error.py</file></path><path><editType>edit</editType><file>clubb_python_driver/README.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_generalized_vertical_grid_test/Jenkinsfile</file></path><path><editType>add</editType><file>tests/check_budget_balance.py</file></path><path><editType>delete</editType><file>run_scripts/run_silhs_test.py</file></path><path><editType>delete</editType><file>run_scripts/run_timestep_tests.bash</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_restart_silhs_gfortran_test/Jenkinsfile</file></path><path><editType>delete</editType><file>run_scripts/generate_seed.bash</file></path><path><editType>edit</editType><file>src/error.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_G_unit_reverse_dir_grid_test/Jenkinsfile</file></path><path><editType>edit</editType><file>postprocessing/latin_hypercube_plotting/variance_analysis_scripts/rms_vs_sample_points/silhs_varying_sp_output.sh</file></path><path><editType>delete</editType><file>run_scripts/ensemble_run/README</file></path><path><editType>delete</editType><file>run_scripts/run_bindiff_varying_flags_output.py</file></path><path><editType>delete</editType><file>run_scripts/run_bindiff_w_flags.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_restart_gfortran_test/Jenkinsfile</file></path><path><editType>delete</editType><file>run_scripts/run_loss_output_consistency.py</file></path><path><editType>delete</editType><file>run_scripts/run_silhs_test.bash</file></path><path><editType>add</editType><file>tests/run_python_vs_fortran_cases.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_openmp_gfortran_test/Jenkinsfile</file></path><path><editType>delete</editType><file>run_scripts/run_bindiff_w_flags_requirements.txt</file></path><path><editType>delete</editType><file>run_scripts/run_scm_collect.bash</file></path><path><editType>delete</editType><file>run_scripts/ensemble_run/submission/.gitignore</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_nvhpc_gpu_vs_cpu_diffness/Jenkinsfile</file></path><path><editType>delete</editType><file>run_scripts/ensemble_run/ensemble_run.bash</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_python_test/Jenkinsfile</file></path><path><editType>edit</editType><file>src/generalized_grid_test.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_silhs_convergence_gfortran/Jenkinsfile</file></path><path><editType>delete</editType><file>run_scripts/ensemble_run/output/.gitignore</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_timestep_gfortran_tests/Jenkinsfile</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/README</affectedPath><affectedPath>src/CMakeLists.txt</affectedPath><affectedPath>src/jacobian.F90</affectedPath><affectedPath>input_misc/jacobian.in</affectedPath><affectedPath>README</affectedPath><affectedPath>run_scripts/run_jacobian.bash</affectedPath><commitId>5512bff0caa1b179b2a03a5512fc3de2c866b0cb</commitId><timestamp>1782441296000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Removing jacobian code - it has not worked in a long time
</comment><date>2026-06-25 21:34:56 -0500</date><id>5512bff0caa1b179b2a03a5512fc3de2c866b0cb</id><msg>Removing jacobian code - it has not worked in a long time</msg><path><editType>edit</editType><file>run_scripts/README</file></path><path><editType>delete</editType><file>input_misc/jacobian.in</file></path><path><editType>edit</editType><file>README</file></path><path><editType>delete</editType><file>run_scripts/run_jacobian.bash</file></path><path><editType>edit</editType><file>src/CMakeLists.txt</file></path><path><editType>delete</editType><file>src/jacobian.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/Input_fields/recl.inc</affectedPath><commitId>e1ca53920f7095d09c5dde5b9502f4056c481b48</commitId><timestamp>1782441838000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Removing recl.inc, just dead code for an outdated issue
</comment><date>2026-06-25 21:43:58 -0500</date><id>e1ca53920f7095d09c5dde5b9502f4056c481b48</id><msg>Removing recl.inc, just dead code for an outdated issue</msg><path><editType>delete</editType><file>src/Input_fields/recl.inc</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/lapack_wrap.F90</affectedPath><commitId>0ed15803474cd7d3d8228a642e9e2599a840707d</commitId><timestamp>1782442179000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Removing ifdefs that are only for E3SM and only on a specific machine
</comment><date>2026-06-25 21:49:39 -0500</date><id>0ed15803474cd7d3d8228a642e9e2599a840707d</id><msg>Removing ifdefs that are only for E3SM and only on a specific machine</msg><path><editType>edit</editType><file>src/CLUBB_core/lapack_wrap.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><affectedPath>src/generalized_grid_test.F90</affectedPath><affectedPath>src/CLUBB_core/clubb_api_module.F90</affectedPath><affectedPath>src/CLUBB_core/mixing_length.F90</affectedPath><commitId>86f7a6081cc525e6d953cebc42d4e5962d7e24f2</commitId><timestamp>1782443428000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Removing the CLUBBND_CAM option, not sure what it was for, it's not defined in this repo or any of our host model repos
</comment><date>2026-06-25 22:10:28 -0500</date><id>86f7a6081cc525e6d953cebc42d4e5962d7e24f2</id><msg>Removing the CLUBBND_CAM option, not sure what it was for, it's not defined in this repo or any of our host model repos</msg><path><editType>edit</editType><file>src/CLUBB_core/mixing_length.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/clubb_api_module.F90</file></path><path><editType>edit</editType><file>src/generalized_grid_test.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/generalized_grid_test.F90</affectedPath><affectedPath>src/CLUBB_core/pdf_closure_module.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/pdf_closure_module_wrapper.F90</affectedPath><affectedPath>src/Input_fields/input_fields.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_pdf_closure_driver.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/pdf_closure.py</affectedPath><affectedPath>src/Microphys/pdf_hydromet_microphys_wrapper.F90</affectedPath><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_windm_edsclrm_module.F90</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>clubb_python_driver/advance_clubb_core.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_windm_edsclrm_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_windm_edsclrm.py</affectedPath><commitId>955aa780e3a47b6accf7af68d85f76ad53baff39</commitId><timestamp>1782445585000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Removing unused variables
</comment><date>2026-06-25 22:46:25 -0500</date><id>955aa780e3a47b6accf7af68d85f76ad53baff39</id><msg>Removing unused variables</msg><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_windm_edsclrm_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/pdf_closure_module.F90</file></path><path><editType>edit</editType><file>src/generalized_grid_test.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_pdf_closure_driver.py</file></path><path><editType>edit</editType><file>src/Input_fields/input_fields.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/pdf_closure_module_wrapper.F90</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>src/Microphys/pdf_hydromet_microphys_wrapper.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/pdf_closure.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_windm_edsclrm_module.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_windm_edsclrm.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>544</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/544/</url></nextBuild><previousBuild><number>542</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/542/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>542</buildNumber><marked><SHA1>2ca3ddc3ece9ae81f9b9acc08d3be93c4aab01fb</SHA1><branch><SHA1>2ca3ddc3ece9ae81f9b9acc08d3be93c4aab01fb</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>2ca3ddc3ece9ae81f9b9acc08d3be93c4aab01fb</SHA1><branch><SHA1>2ca3ddc3ece9ae81f9b9acc08d3be93c4aab01fb</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>2ca3ddc3ece9ae81f9b9acc08d3be93c4aab01fb</SHA1><branch><SHA1>2ca3ddc3ece9ae81f9b9acc08d3be93c4aab01fb</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#542</displayName><duration>88504</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #542</fullDisplayName><id>542</id><keepLog>false</keepLog><number>542</number><queueId>5166</queueId><result>SUCCESS</result><timestamp>1782289630480</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/542/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>README</affectedPath><commitId>2ca3ddc3ece9ae81f9b9acc08d3be93c4aab01fb</commitId><timestamp>1782247864000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Recently clubb_BFB_varying_flags_gfortran_test failed due to a script bug, dispite it being BFB. RESOLVED:2a334f87922dfaceb7d3a37b1924d374f1b986d5
</comment><date>2026-06-23 15:51:04 -0500</date><id>2ca3ddc3ece9ae81f9b9acc08d3be93c4aab01fb</id><msg>Recently clubb_BFB_varying_flags_gfortran_test failed due to a script bug, dispite it being BFB. RESOLVED:2a334f87922dfaceb7d3a37b1924d374f1b986d5</msg><path><editType>edit</editType><file>README</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>543</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/543/</url></nextBuild><previousBuild><number>541</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/541/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>541</buildNumber><marked><SHA1>2a334f87922dfaceb7d3a37b1924d374f1b986d5</SHA1><branch><SHA1>2a334f87922dfaceb7d3a37b1924d374f1b986d5</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>2a334f87922dfaceb7d3a37b1924d374f1b986d5</SHA1><branch><SHA1>2a334f87922dfaceb7d3a37b1924d374f1b986d5</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>2a334f87922dfaceb7d3a37b1924d374f1b986d5</SHA1><branch><SHA1>2a334f87922dfaceb7d3a37b1924d374f1b986d5</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#541</displayName><duration>197591</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #541</fullDisplayName><id>541</id><keepLog>false</keepLog><number>541</number><queueId>5048</queueId><result>SUCCESS</result><timestamp>1781771230355</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/541/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_python_api/clubb_python/clubb_api.py</affectedPath><affectedPath>src/CLUBB_core/pdf_closure_module.F90</affectedPath><affectedPath>dash_app/assets/37_run_console_state.js</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/stats_netcdf_wrapper.F90</affectedPath><affectedPath>dash_app/tune_tab/__init__.py</affectedPath><affectedPath>dash_app/assets/13_tab_tune_theme.css</affectedPath><affectedPath>src/clubb_loss_driver_test.F90</affectedPath><affectedPath>dash_app/tune_tab/callbacks_display.py</affectedPath><affectedPath>dash_app/run_tab/callbacks_console.py</affectedPath><affectedPath>src/CLUBB_core/error_code.F90</affectedPath><affectedPath>tuner/clubb_loss_driver.py</affectedPath><affectedPath>dash_app/plot_tab/profile_loss.py</affectedPath><affectedPath>tuner/taylor_metrics.py</affectedPath><affectedPath>run_scripts/run_scm_loss.py</affectedPath><affectedPath>src/clubb_driver_test.F90</affectedPath><affectedPath>tuner/case_defaults.json</affectedPath><affectedPath>run_scripts/run_benchmark_converter_test.py</affectedPath><affectedPath>dash_app/tune_tab/tab.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</affectedPath><affectedPath>dash_app/tune_tab/runtime.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/shared.py</affectedPath><affectedPath>tuner/clubb_loss_driver_test.py</affectedPath><affectedPath>tuner/tune_clubb.py</affectedPath><affectedPath>tuner/tuning_worker.py</affectedPath><affectedPath>utilities/loss_metrics.py</affectedPath><affectedPath>run_scripts/create_case_namelist.py</affectedPath><affectedPath>jenkins_tests/LLM_FAILURE_AUTOMATION_DESIGN.md</affectedPath><affectedPath>tuner/paths.py</affectedPath><affectedPath>src/SILHS/latin_hypercube_driver_module.F90</affectedPath><affectedPath>tuner/status.py</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>dash_app/plot_tab/benchmark_overlay.py</affectedPath><affectedPath>clubb_python_driver/clubb_case_initalization.py</affectedPath><affectedPath>run_scripts/run_loss_output_consistency.py</affectedPath><affectedPath>run_scripts/create_multi_col_params.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_grid.py</affectedPath><affectedPath>src/CLUBB_core/clubb_api_module.F90</affectedPath><affectedPath>dash_app/tune_tab/callbacks_runs.py</affectedPath><affectedPath>dash_app/tune_tab/layout.py</affectedPath><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>dash_app/requirements.txt</affectedPath><affectedPath>dash_app/tune_tab/discovery.py</affectedPath><affectedPath>jenkins_tests/clubb_new_tuner_test/Jenkinsfile</affectedPath><affectedPath>run_scripts/run_tuner_job.py</affectedPath><affectedPath>tuner/case_defaults.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/timeheight_plot.py</affectedPath><affectedPath>dash_app/assets/36_tune_ui_resize.js</affectedPath><affectedPath>dash_app/plot_tab/state.py</affectedPath><affectedPath>tuner/job_runtime.py</affectedPath><affectedPath>utilities/__init__.py</affectedPath><affectedPath>tuner/test_tuning_strategy.py</affectedPath><affectedPath>tuner/__init__.py</affectedPath><affectedPath>src/CLUBB_core/stats_netcdf.F90</affectedPath><affectedPath>dash_app/tune_tab/callbacks_settings.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>tuner/tuning_strategy.py</affectedPath><affectedPath>run_scripts/run_stats_output_consistency.py</affectedPath><affectedPath>tuner/request.py</affectedPath><affectedPath>utilities/benchmark_converter.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/budget_plot.py</affectedPath><affectedPath>clubb_python_api/clubb_python/_runtime_loader.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/loss_driver.py</affectedPath><affectedPath>dash_app/plot_tab/layout.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_controls.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_params.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/clubb_loss_driver_wrapper.F90</affectedPath><affectedPath>dash_app/app.py</affectedPath><affectedPath>jenkins_tests/clubb_stats_output_consistency_gfortran_test/Jenkinsfile</affectedPath><affectedPath>clubb_python_api/clubb_python/__init__.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/profile_plot.py</affectedPath><affectedPath>clubb_python_driver/advance_clubb_to_end.py</affectedPath><affectedPath>src/clubb_standalone_loss.F90</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>run_scripts/run_bindiff_all.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/subcolumn_plot.py</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>README</affectedPath><affectedPath>tuner/tuning_scheduler.py</affectedPath><affectedPath>src/CMakeLists.txt</affectedPath><affectedPath>dash_app/assets/12_tab_plots_theme.css</affectedPath><affectedPath>tuner/README.md</affectedPath><affectedPath>dash_app/plot_tab/callbacks_case.py</affectedPath><affectedPath>src/clubb_loss_driver.F90</affectedPath><affectedPath>dash_app/tune_tab/state.py</affectedPath><commitId>2a334f87922dfaceb7d3a37b1924d374f1b986d5</commitId><timestamp>1781756186000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Clubb loss driver (#1303)

* First set of commits for the new loss driver.

* Improvements

* Batching capabilities

* Lot's of cleanup, simplifications, and consolidation

* More testing

* Python interfaces for the loss driver

* Interface for tuner and tuner with modes.

* Nice updates

* Missed file

* Little updates to fix inconsistencies in the plots and averaging ranges

* Adding a script that converts sam and coamps netcdf files to a clubb named version, including things that need to be calculated. This fixes a bug where fields were being averaged before being calculated, see https://github.com/larson-group/clubb/issues/1284, but is currently only wired up in the new tuner and the dash app plotter

* Making some things public for nvhpc

* Organization and consistency test fix

* Adding taylor diagram to tune tab, this needs taylor metrics to be computed so the loss driver needed to output this info.

* Adding more fancy loss functions based on Taylor metrics and a way to switch how the loss is computed in the dash tuner

* Making NaN in code not an issue

* Mostly dash app improvements to plotting, also made subwindows for tuning

* Tuner tracking by case

* Removing stats time-variance code

* Simplifying loss driver output - now loss metrics are output explicitly rather than as packaged taylor_metrics and having different versions for subwindows and such

* Mainly ui updates and small simplifications

* Improving comments and cleaning things up a bit

* Removing strictness on stats window vs output interval, and adding a stats consistency test to tests for issues with batch size and output frequency and the windowing mode

* Fixing openmp bug and making incomplete stats intervals not output, as it was before

* Making jenkins test use standard stats, and fixing tiny bug that caused error running with debug+no rcp2 stats

* Adding gate around bindiff, there's an edge case where a cosmetic diff can trigger a full-diff even in a failed case, which should otherwise be considered BFB and skipped.

* Adding some README entries for the dash app and a python requirements file

* Adding comments and little bug fix to dash app

* Update to loss consistency test, making it simpler since stats consistency test covers most things. Also adding it to the stats consistency jenkins test since it is still similar

* Cleanup and code consolidation, new jenkins test for tuner

* Adding comments

* Fixing little bugs

* Slight improvement to stats_api

* Small bug fix

* Consolidating stats time setting
</comment><date>2026-06-17 23:16:26 -0500</date><id>2a334f87922dfaceb7d3a37b1924d374f1b986d5</id><msg>Clubb loss driver (#1303)</msg><path><editType>add</editType><file>dash_app/tune_tab/callbacks_settings.py</file></path><path><editType>edit</editType><file>src/clubb_driver_test.F90</file></path><path><editType>add</editType><file>tuner/__init__.py</file></path><path><editType>add</editType><file>tuner/clubb_loss_driver.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/stats_netcdf_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/clubb_api.py</file></path><path><editType>add</editType><file>dash_app/README.md</file></path><path><editType>add</editType><file>tuner/job_runtime.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_params.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/clubb_api_module.F90</file></path><path><editType>edit</editType><file>src/CMakeLists.txt</file></path><path><editType>add</editType><file>run_scripts/run_loss_output_consistency.py</file></path><path><editType>add</editType><file>dash_app/tune_tab/tab.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_case.py</file></path><path><editType>add</editType><file>dash_app/tune_tab/runtime.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/state.py</file></path><path><editType>add</editType><file>run_scripts/run_tuner_job.py</file></path><path><editType>add</editType><file>tuner/tuning_scheduler.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/benchmark_overlay.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/pdf_closure_module.F90</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_all.py</file></path><path><editType>edit</editType><file>clubb_python_driver/clubb_case_initalization.py</file></path><path><editType>edit</editType><file>dash_app/app.py</file></path><path><editType>add</editType><file>tuner/test_tuning_strategy.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/profile_plot.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/profile_loss.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_console.py</file></path><path><editType>add</editType><file>dash_app/requirements.txt</file></path><path><editType>add</editType><file>dash_app/assets/13_tab_tune_theme.css</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>add</editType><file>run_scripts/run_scm_loss.py</file></path><path><editType>add</editType><file>src/clubb_loss_driver_test.F90</file></path><path><editType>add</editType><file>run_scripts/create_case_namelist.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_to_end.py</file></path><path><editType>add</editType><file>dash_app/tune_tab/discovery.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/_runtime_loader.py</file></path><path><editType>add</editType><file>tuner/tuning_worker.py</file></path><path><editType>add</editType><file>utilities/loss_metrics.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/budget_plot.py</file></path><path><editType>add</editType><file>run_scripts/run_stats_output_consistency.py</file></path><path><editType>edit</editType><file>README</file></path><path><editType>add</editType><file>dash_app/tune_tab/state.py</file></path><path><editType>add</editType><file>src/clubb_standalone_loss.F90</file></path><path><editType>add</editType><file>utilities/benchmark_converter.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_grid.py</file></path><path><editType>add</editType><file>tuner/README.md</file></path><path><editType>add</editType><file>run_scripts/run_benchmark_converter_test.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/__init__.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/loss_driver.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/subcolumn_plot.py</file></path><path><editType>add</editType><file>tuner/status.py</file></path><path><editType>edit</editType><file>src/SILHS/latin_hypercube_driver_module.F90</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/timeheight_plot.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/plot_types/shared.py</file></path><path><editType>add</editType><file>tuner/tuning_strategy.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>edit</editType><file>dash_app/assets/12_tab_plots_theme.css</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_netcdf.F90</file></path><path><editType>edit</editType><file>dash_app/plot_tab/layout.py</file></path><path><editType>add</editType><file>jenkins_tests/clubb_new_tuner_test/Jenkinsfile</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/clubb_loss_driver_wrapper.F90</file></path><path><editType>add</editType><file>jenkins_tests/clubb_stats_output_consistency_gfortran_test/Jenkinsfile</file></path><path><editType>add</editType><file>tuner/tune_clubb.py</file></path><path><editType>add</editType><file>tuner/paths.py</file></path><path><editType>add</editType><file>tuner/case_defaults.json</file></path><path><editType>add</editType><file>jenkins_tests/LLM_FAILURE_AUTOMATION_DESIGN.md</file></path><path><editType>add</editType><file>utilities/__init__.py</file></path><path><editType>add</editType><file>dash_app/tune_tab/callbacks_runs.py</file></path><path><editType>add</editType><file>dash_app/assets/36_tune_ui_resize.js</file></path><path><editType>add</editType><file>dash_app/assets/37_run_console_state.js</file></path><path><editType>edit</editType><file>run_scripts/create_multi_col_params.py</file></path><path><editType>add</editType><file>src/clubb_loss_driver.F90</file></path><path><editType>add</editType><file>dash_app/tune_tab/__init__.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_controls.py</file></path><path><editType>add</editType><file>tuner/taylor_metrics.py</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>add</editType><file>tuner/request.py</file></path><path><editType>add</editType><file>dash_app/tune_tab/callbacks_display.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/error_code.F90</file></path><path><editType>add</editType><file>dash_app/tune_tab/layout.py</file></path><path><editType>add</editType><file>tuner/clubb_loss_driver_test.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>add</editType><file>tuner/case_defaults.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>542</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/542/</url></nextBuild><previousBuild><number>540</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/540/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>540</buildNumber><marked><SHA1>d4fbf466f74b11ca7b5a81575427768beebc3f5b</SHA1><branch><SHA1>d4fbf466f74b11ca7b5a81575427768beebc3f5b</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>d4fbf466f74b11ca7b5a81575427768beebc3f5b</SHA1><branch><SHA1>d4fbf466f74b11ca7b5a81575427768beebc3f5b</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>d4fbf466f74b11ca7b5a81575427768beebc3f5b</SHA1><branch><SHA1>d4fbf466f74b11ca7b5a81575427768beebc3f5b</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#540</displayName><duration>89381</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #540</fullDisplayName><id>540</id><keepLog>false</keepLog><number>540</number><queueId>4903</queueId><result>SUCCESS</result><timestamp>1781684828805</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/540/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/clubb_driver.F90</affectedPath><commitId>d4fbf466f74b11ca7b5a81575427768beebc3f5b</commitId><timestamp>1781661933000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Fixing bug that caused incorrect times to be written to netcdf in cases where stats_tout (output interval) &gt; dt_main (timestep). This is BIT_CHANGING because of that, but only for the time variable (no field differences), and only for cases where we don't output each timestep.
</comment><date>2026-06-16 21:05:33 -0500</date><id>d4fbf466f74b11ca7b5a81575427768beebc3f5b</id><msg>Fixing bug that caused incorrect times to be written to netcdf in cases where stats_tout (output interval) &gt; dt_main (timestep). This is BIT_CHANGING because of that, but only for the time variable (no field differences), and only for cases where we don't output each timestep.</msg><path><editType>edit</editType><file>src/clubb_driver.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>541</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/541/</url></nextBuild><previousBuild><number>539</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/539/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>539</buildNumber><marked><SHA1>a38df744233769a1888462f2616bd9d8c007fcf5</SHA1><branch><SHA1>a38df744233769a1888462f2616bd9d8c007fcf5</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>a38df744233769a1888462f2616bd9d8c007fcf5</SHA1><branch><SHA1>a38df744233769a1888462f2616bd9d8c007fcf5</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>a38df744233769a1888462f2616bd9d8c007fcf5</SHA1><branch><SHA1>a38df744233769a1888462f2616bd9d8c007fcf5</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#539</displayName><duration>109710</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #539</fullDisplayName><id>539</id><keepLog>false</keepLog><number>539</number><queueId>4785</queueId><result>SUCCESS</result><timestamp>1781252827556</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/539/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_nvhpc_gpu_vs_cpu_diffness/Jenkinsfile</affectedPath><commitId>a38df744233769a1888462f2616bd9d8c007fcf5</commitId><timestamp>1781191186000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Update Jenkinsfile to match moved file

- utilities/convert_acc_to_omp.bash
</comment><date>2026-06-11 10:19:46 -0500</date><id>a38df744233769a1888462f2616bd9d8c007fcf5</id><msg>Update Jenkinsfile to match moved file</msg><path><editType>edit</editType><file>jenkins_tests/clubb_nvhpc_gpu_vs_cpu_diffness/Jenkinsfile</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>540</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/540/</url></nextBuild><previousBuild><number>538</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/538/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>538</buildNumber><marked><SHA1>f6b2bf7d9b01b55a68c5101649d8a157ee17921f</SHA1><branch><SHA1>f6b2bf7d9b01b55a68c5101649d8a157ee17921f</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>f6b2bf7d9b01b55a68c5101649d8a157ee17921f</SHA1><branch><SHA1>f6b2bf7d9b01b55a68c5101649d8a157ee17921f</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>f6b2bf7d9b01b55a68c5101649d8a157ee17921f</SHA1><branch><SHA1>f6b2bf7d9b01b55a68c5101649d8a157ee17921f</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#538</displayName><duration>183658</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #538</fullDisplayName><id>538</id><keepLog>false</keepLog><number>538</number><queueId>4705</queueId><result>SUCCESS</result><timestamp>1781166427999</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/538/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>compile/config/linux_x86_64_ifort_compy.bash</affectedPath><affectedPath>compile/file_list/clubb_parabolic_files</affectedPath><affectedPath>utilities/convert_acc_to_omp.bash</affectedPath><affectedPath>compile/file_list/jacobian_files</affectedPath><affectedPath>docs/license.html</affectedPath><affectedPath>compile/config/README</affectedPath><affectedPath>compile/config/linux_x86_64_ifort_optimizing.bash</affectedPath><affectedPath>compile/clean_all.bash</affectedPath><affectedPath>compile/config/linux_x86_64_ifort_r4.bash</affectedPath><affectedPath>compile/config/linux_x86_64_gfortran_ubuntu.bash</affectedPath><affectedPath>compile/config/linux_ia64_ifort.bash</affectedPath><affectedPath>compile/Makefile</affectedPath><affectedPath>compile/file_list/clubb_morrison_files</affectedPath><affectedPath>compile/file_list/clubb_KK_microphys_files</affectedPath><affectedPath>compile/compiler_tests.bash</affectedPath><affectedPath>obj/.gitignore</affectedPath><affectedPath>compile/config/linux_x86_64_nvhpc.bash</affectedPath><affectedPath>docs/about.html</affectedPath><affectedPath>compile/mkmf</affectedPath><affectedPath>compile/config/linux_x86_64_oracle_debug.bash</affectedPath><affectedPath>compile/config/linux_x86_64_ifort_debug.bash</affectedPath><affectedPath>docs/images/static/pgbk.gif</affectedPath><affectedPath>compile/config/linux_x86_64_ifort_anvil.bash</affectedPath><affectedPath>compile/file_list/clubb_bugsrad_files</affectedPath><affectedPath>docs/images/dynamic/buttonset1/subnav1hover.gif</affectedPath><affectedPath>compile/config/macosx_x86_64_gfortran.bash</affectedPath><affectedPath>compile/file_list/int2txt_files</affectedPath><affectedPath>compile/config/linux_x86_64_open64_debug.bash</affectedPath><affectedPath>compile/config/linux_x86_64_gfortran_NCAR.bash</affectedPath><affectedPath>compile/config/linux_x86_64_ifort_hd1.bash</affectedPath><affectedPath>compile/README</affectedPath><affectedPath>compile/config/linux_x86_64_gfortran.bash</affectedPath><affectedPath>compile/config/linux_x86_64_nvhpc_debug.bash</affectedPath><affectedPath>docs/index.html</affectedPath><affectedPath>compile/config/linux_x86_64_gfortran_debug.bash</affectedPath><affectedPath>compile/file_list/G_unit_tests_files</affectedPath><affectedPath>lib/.gitignore</affectedPath><affectedPath>docs/images/dynamic/key_visual1.jpg</affectedPath><affectedPath>compile/config/linux_x86_64_ifort_r4_debug.bash</affectedPath><affectedPath>compile/config/linux_x86_64_absoft.bash</affectedPath><affectedPath>compile/convert_acc_to_omp.bash</affectedPath><affectedPath>compile/config/linux_x86_64_nvhpc_gpu_openmp.bash</affectedPath><affectedPath>compile/config/linux_x86_64_ifort_hd1_debug.bash</affectedPath><affectedPath>docs/_config.yml</affectedPath><affectedPath>compile/config/mswin_mingw_x86_gfortran.bash</affectedPath><affectedPath>bin/.gitignore</affectedPath><affectedPath>docs/images/dynamic/buttonset1/subnav1.gif</affectedPath><affectedPath>compile/config/mswin_cygwin_i686_gfortran.bash</affectedPath><affectedPath>compile/config/linux_x86_64_cray_frontier.bash</affectedPath><affectedPath>compile/config/linux_x86_64_oracle_optimize.bash</affectedPath><affectedPath>docs/style/style.css</affectedPath><affectedPath>docs/faq.html</affectedPath><affectedPath>compile/file_list/clubb_tuner_files</affectedPath><affectedPath>compile/config/linux_x86_64_ifort.bash</affectedPath><affectedPath>compile/config/linux_x86_64_open64.bash</affectedPath><affectedPath>docs/images/dynamic/buttonset1/n1activeitem.gif</affectedPath><affectedPath>compile/config/linux_x86_64_ifort_gpu_openmp.bash</affectedPath><affectedPath>compile/config/gfdl_wks.bash</affectedPath><affectedPath>compile/config/linux_x86_64_gfortran_compy.bash</affectedPath><affectedPath>compile/file_list/clubb_model_files</affectedPath><affectedPath>docs/style/colorscheme.css</affectedPath><affectedPath>compile/config/linux_x86_64_gfortran_hd1.bash</affectedPath><affectedPath>compile/config/solaris_generic_oracle.bash</affectedPath><affectedPath>compile/config/linux_x86_64_nvhpc_gpu_openacc.bash</affectedPath><affectedPath>docs/style/main.css</affectedPath><affectedPath>compile/file_list/clubb_thread_test_files</affectedPath><affectedPath>compile/compile.bash</affectedPath><affectedPath>compile/config/linux_x86_64_gfortran_r4.bash</affectedPath><affectedPath>compile/file_list/clubb_standalone_files</affectedPath><commitId>beffd89a659bcbddc72da2c23fa57ff0bd34a424</commitId><timestamp>1781117467000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Deleted the old compile directory and docs directory (#1315)

- The old mkmf/make compile directory, the bash based compile scripts are no longer needed now that we have CMake
- Moved `convert_acc_to_omp.bash` to utilities/ directory
- The docs directory had an old copy of the website, but the website is backed up to a local drive on Carson
</comment><date>2026-06-10 13:51:07 -0500</date><id>beffd89a659bcbddc72da2c23fa57ff0bd34a424</id><msg>Deleted the old compile directory and docs directory (#1315)</msg><path><editType>delete</editType><file>compile/config/linux_x86_64_oracle_optimize.bash</file></path><path><editType>delete</editType><file>docs/images/dynamic/buttonset1/n1activeitem.gif</file></path><path><editType>delete</editType><file>compile/file_list/clubb_tuner_files</file></path><path><editType>delete</editType><file>docs/images/static/pgbk.gif</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_gfortran_ubuntu.bash</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_ifort_r4_debug.bash</file></path><path><editType>delete</editType><file>compile/file_list/clubb_thread_test_files</file></path><path><editType>delete</editType><file>compile/config/README</file></path><path><editType>delete</editType><file>compile/file_list/clubb_bugsrad_files</file></path><path><editType>delete</editType><file>compile/config/linux_ia64_ifort.bash</file></path><path><editType>delete</editType><file>docs/images/dynamic/key_visual1.jpg</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_gfortran_hd1.bash</file></path><path><editType>delete</editType><file>compile/config/mswin_mingw_x86_gfortran.bash</file></path><path><editType>delete</editType><file>compile/config/solaris_generic_oracle.bash</file></path><path><editType>delete</editType><file>docs/_config.yml</file></path><path><editType>delete</editType><file>docs/images/dynamic/buttonset1/subnav1hover.gif</file></path><path><editType>delete</editType><file>compile/Makefile</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_gfortran_NCAR.bash</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_gfortran_debug.bash</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_ifort_compy.bash</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_nvhpc_gpu_openmp.bash</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_ifort_anvil.bash</file></path><path><editType>delete</editType><file>compile/file_list/clubb_KK_microphys_files</file></path><path><editType>delete</editType><file>compile/config/gfdl_wks.bash</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_nvhpc_debug.bash</file></path><path><editType>delete</editType><file>docs/about.html</file></path><path><editType>delete</editType><file>docs/license.html</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_gfortran.bash</file></path><path><editType>delete</editType><file>compile/compiler_tests.bash</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_ifort_hd1_debug.bash</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_gfortran_compy.bash</file></path><path><editType>delete</editType><file>docs/faq.html</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_oracle_debug.bash</file></path><path><editType>delete</editType><file>obj/.gitignore</file></path><path><editType>delete</editType><file>compile/compile.bash</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_ifort_hd1.bash</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_gfortran_r4.bash</file></path><path><editType>delete</editType><file>compile/file_list/clubb_parabolic_files</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_ifort_debug.bash</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_ifort_optimizing.bash</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_ifort_gpu_openmp.bash</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_ifort.bash</file></path><path><editType>delete</editType><file>compile/file_list/clubb_morrison_files</file></path><path><editType>delete</editType><file>docs/images/dynamic/buttonset1/subnav1.gif</file></path><path><editType>delete</editType><file>compile/README</file></path><path><editType>delete</editType><file>compile/clean_all.bash</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_absoft.bash</file></path><path><editType>delete</editType><file>lib/.gitignore</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_cray_frontier.bash</file></path><path><editType>delete</editType><file>compile/file_list/clubb_model_files</file></path><path><editType>delete</editType><file>bin/.gitignore</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_nvhpc.bash</file></path><path><editType>add</editType><file>utilities/convert_acc_to_omp.bash</file></path><path><editType>delete</editType><file>compile/file_list/G_unit_tests_files</file></path><path><editType>delete</editType><file>compile/config/macosx_x86_64_gfortran.bash</file></path><path><editType>delete</editType><file>compile/config/mswin_cygwin_i686_gfortran.bash</file></path><path><editType>delete</editType><file>compile/file_list/clubb_standalone_files</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_ifort_r4.bash</file></path><path><editType>delete</editType><file>docs/style/style.css</file></path><path><editType>delete</editType><file>compile/mkmf</file></path><path><editType>delete</editType><file>docs/style/main.css</file></path><path><editType>delete</editType><file>compile/convert_acc_to_omp.bash</file></path><path><editType>delete</editType><file>compile/file_list/jacobian_files</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_open64.bash</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_open64_debug.bash</file></path><path><editType>delete</editType><file>compile/file_list/int2txt_files</file></path><path><editType>delete</editType><file>docs/index.html</file></path><path><editType>delete</editType><file>docs/style/colorscheme.css</file></path><path><editType>delete</editType><file>compile/config/linux_x86_64_nvhpc_gpu_openacc.bash</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>BUILD.md</affectedPath><affectedPath>postprocessing/pyplotgen/README.md</affectedPath><affectedPath>compile.py</affectedPath><affectedPath>README</affectedPath><commitId>f6b2bf7d9b01b55a68c5101649d8a157ee17921f</commitId><timestamp>1781120524000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Update README, BUILD.md, and pyplotgen README.md (#1309)
</comment><date>2026-06-10 14:42:04 -0500</date><id>f6b2bf7d9b01b55a68c5101649d8a157ee17921f</id><msg>Update README, BUILD.md, and pyplotgen README.md (#1309)</msg><path><editType>edit</editType><file>BUILD.md</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/README.md</file></path><path><editType>edit</editType><file>README</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>539</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/539/</url></nextBuild><previousBuild><number>537</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/537/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>537</buildNumber><marked><SHA1>7945eaacac73eb9bbf7dc2b21dd6187c724a8fbf</SHA1><branch><SHA1>7945eaacac73eb9bbf7dc2b21dd6187c724a8fbf</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>7945eaacac73eb9bbf7dc2b21dd6187c724a8fbf</SHA1><branch><SHA1>7945eaacac73eb9bbf7dc2b21dd6187c724a8fbf</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>7945eaacac73eb9bbf7dc2b21dd6187c724a8fbf</SHA1><branch><SHA1>7945eaacac73eb9bbf7dc2b21dd6187c724a8fbf</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#537</displayName><duration>1659008</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #537</fullDisplayName><id>537</id><keepLog>false</keepLog><number>537</number><queueId>4621</queueId><result>SUCCESS</result><timestamp>1781080026617</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/537/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>postprocessing/Cost_function/starter_each_case.m</affectedPath><affectedPath>postprocessing/budget_plotter/header_read.m</affectedPath><affectedPath>postprocessing/jacobian_matlab/Calculate_Impact.m</affectedPath><affectedPath>postprocessing/Cost_function/read_grads_hoc_endian.m</affectedPath><affectedPath>postprocessing/run_comparisons/find_grads_differences.m</affectedPath><affectedPath>postprocessing/jacobian_matlab/GraphImpactDiff.m</affectedPath><affectedPath>postprocessing/matlab_include/header_read.m</affectedPath><affectedPath>postprocessing/budget_plotter/check_balance.m</affectedPath><affectedPath>postprocessing/Cost_function/mean_sqr_diff_2_zt.m</affectedPath><affectedPath>postprocessing/budget_plotter/make_plot.m</affectedPath><affectedPath>postprocessing/latin_hypercube_plotting/spaghetti_plotter/spaghetti_driver.m</affectedPath><affectedPath>postprocessing/latin_hypercube_plotting/spaghetti_plotter/README</affectedPath><affectedPath>postprocessing/matlab_include/README</affectedPath><affectedPath>postprocessing/Cost_function/starter.m</affectedPath><affectedPath>postprocessing/Cost_function/header_read_expanded.m</affectedPath><affectedPath>postprocessing/Cost_function/mean_sqr_diff_zt.m</affectedPath><affectedPath>postprocessing/matlab_include/get_profile.m</affectedPath><affectedPath>postprocessing/budget_plotter/make_multi_plot.m</affectedPath><affectedPath>postprocessing/jacobian_matlab/GraphImpact.m</affectedPath><affectedPath>utilities/make_nc_grads_readable.m</affectedPath><affectedPath>postprocessing/Cost_function/min_les_hoc_diff.m</affectedPath><affectedPath>postprocessing/run_comparisons/README</affectedPath><affectedPath>postprocessing/budget_plotter/budget_plotter.m</affectedPath><affectedPath>postprocessing/run_comparisons/netcdf_reader.m</affectedPath><affectedPath>postprocessing/budget_plotter/read_grads_hoc_endian.m</affectedPath><affectedPath>postprocessing/jacobian_matlab/GraphJacobian.m</affectedPath><affectedPath>postprocessing/latin_hypercube_plotting/spaghetti_plotter/plot_spaghetti.m</affectedPath><affectedPath>postprocessing/matlab_include/read_grads_clubb_endian.m</affectedPath><affectedPath>postprocessing/Cost_function/read_grads_hoc_endian_2.m</affectedPath><commitId>e969f3be4e23a0ed4932c6c7c34baa05cca9e136</commitId><timestamp>1781033435000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Removed/deleted outdated Matlab files (#1313)

- Removed plotting, utility, and post-processing Matlab scripts
</comment><date>2026-06-09 14:30:35 -0500</date><id>e969f3be4e23a0ed4932c6c7c34baa05cca9e136</id><msg>Removed/deleted outdated Matlab files (#1313)</msg><path><editType>delete</editType><file>postprocessing/Cost_function/read_grads_hoc_endian_2.m</file></path><path><editType>delete</editType><file>postprocessing/budget_plotter/make_multi_plot.m</file></path><path><editType>delete</editType><file>postprocessing/latin_hypercube_plotting/spaghetti_plotter/plot_spaghetti.m</file></path><path><editType>delete</editType><file>postprocessing/matlab_include/README</file></path><path><editType>delete</editType><file>postprocessing/matlab_include/read_grads_clubb_endian.m</file></path><path><editType>delete</editType><file>postprocessing/jacobian_matlab/Calculate_Impact.m</file></path><path><editType>delete</editType><file>postprocessing/budget_plotter/header_read.m</file></path><path><editType>delete</editType><file>postprocessing/jacobian_matlab/GraphJacobian.m</file></path><path><editType>delete</editType><file>postprocessing/jacobian_matlab/GraphImpactDiff.m</file></path><path><editType>delete</editType><file>postprocessing/run_comparisons/find_grads_differences.m</file></path><path><editType>delete</editType><file>postprocessing/budget_plotter/make_plot.m</file></path><path><editType>delete</editType><file>postprocessing/budget_plotter/read_grads_hoc_endian.m</file></path><path><editType>delete</editType><file>postprocessing/latin_hypercube_plotting/spaghetti_plotter/spaghetti_driver.m</file></path><path><editType>delete</editType><file>postprocessing/latin_hypercube_plotting/spaghetti_plotter/README</file></path><path><editType>delete</editType><file>utilities/make_nc_grads_readable.m</file></path><path><editType>delete</editType><file>postprocessing/budget_plotter/check_balance.m</file></path><path><editType>delete</editType><file>postprocessing/matlab_include/get_profile.m</file></path><path><editType>delete</editType><file>postprocessing/Cost_function/starter.m</file></path><path><editType>delete</editType><file>postprocessing/Cost_function/starter_each_case.m</file></path><path><editType>delete</editType><file>postprocessing/run_comparisons/netcdf_reader.m</file></path><path><editType>delete</editType><file>postprocessing/budget_plotter/budget_plotter.m</file></path><path><editType>delete</editType><file>postprocessing/Cost_function/mean_sqr_diff_zt.m</file></path><path><editType>delete</editType><file>postprocessing/Cost_function/read_grads_hoc_endian.m</file></path><path><editType>delete</editType><file>postprocessing/matlab_include/header_read.m</file></path><path><editType>delete</editType><file>postprocessing/Cost_function/header_read_expanded.m</file></path><path><editType>delete</editType><file>postprocessing/run_comparisons/README</file></path><path><editType>delete</editType><file>postprocessing/jacobian_matlab/GraphImpact.m</file></path><path><editType>delete</editType><file>postprocessing/Cost_function/min_les_hoc_diff.m</file></path><path><editType>delete</editType><file>postprocessing/Cost_function/mean_sqr_diff_2_zt.m</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/Input_fields/stat_file_utils.F90</affectedPath><affectedPath>ens_tune/mytuner_movingfoot.bash</affectedPath><affectedPath>input/case_setups/cgils_s12_model.in</affectedPath><affectedPath>input_misc/tuner/error_dycoms2_rf01.in</affectedPath><affectedPath>input_misc/tuner/error_dycoms2_rf02_ds.in</affectedPath><affectedPath>src/CLUBB_core/model_flags.F90</affectedPath><affectedPath>postprocessing/check_budgets_balance/README</affectedPath><affectedPath>input_misc/tuner/error_wangara.in</affectedPath><affectedPath>input/case_setups/cobra_model.in</affectedPath><affectedPath>input/case_setups/arm_97_model.in</affectedPath><affectedPath>input/case_setups/lba_model.in</affectedPath><affectedPath>postprocessing/output_scripts/cloud_feedback/README</affectedPath><affectedPath>input_misc/tuner/error_dycoms2_rf02_nd.in</affectedPath><affectedPath>input/case_setups/atex_model.in</affectedPath><affectedPath>input/case_setups/gabls3_model.in</affectedPath><affectedPath>utilities/differences_binary_casefiles.sh</affectedPath><affectedPath>input_misc/tuner/error_arm.in</affectedPath><affectedPath>input/case_setups/nov11_altocu_model.in</affectedPath><affectedPath>input/case_setups/cgils_s11_model.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_so_model.LR.in</affectedPath><affectedPath>input/case_setups/coriolis_test_model.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_do_model.HR.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_ds_model.HR.in</affectedPath><affectedPath>input_misc/tuner/error_atex.in</affectedPath><affectedPath>input/case_setups/bomex_model.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf01_model.in</affectedPath><affectedPath>input/case_setups/cgils_s6_p2k_model.in</affectedPath><affectedPath>input/case_setups/rico_model.in</affectedPath><affectedPath>input/case_setups/cloud_feedback_s6_model.in</affectedPath><affectedPath>input_misc/tuner/error_four_cases.in</affectedPath><affectedPath>input/case_setups/arm_model.in</affectedPath><affectedPath>input/case_setups/neutral_model.in</affectedPath><affectedPath>src/Input_fields/input_grads.F90</affectedPath><affectedPath>input/case_setups/twp_ice_model.in</affectedPath><affectedPath>input/case_setups/README</affectedPath><affectedPath>input/case_setups/clex9_nov02_model.in</affectedPath><affectedPath>input/case_setups/jun25_altocu_model.in</affectedPath><affectedPath>src/Input_fields/CMakeLists.txt</affectedPath><affectedPath>utilities/README</affectedPath><affectedPath>input/case_setups/arm_3year_model.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_nd_model.HR.in</affectedPath><affectedPath>input/case_setups/cloud_feedback_s11_p2k_model.in</affectedPath><affectedPath>compile/file_list/clubb_model_files</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_do_model.in</affectedPath><affectedPath>input_misc/tuner/error_all.in</affectedPath><affectedPath>src/jacobian.F90</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_morr_model.in</affectedPath><affectedPath>input_misc/tuner/error_lba.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_nd_model.in</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>src/Input_fields/recl.inc</affectedPath><affectedPath>input_misc/tuner/README</affectedPath><affectedPath>input/case_setups/cgils_s12_p2k_model.in</affectedPath><affectedPath>input_misc/tuner/error_ticket_756.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf01_fixed_sst_model.in</affectedPath><affectedPath>input/case_setups/cloud_feedback_s6_p2k_model.in</affectedPath><affectedPath>input_misc/tuner/error_rico.in</affectedPath><affectedPath>input_misc/tuner/error_gabls3_night.in</affectedPath><affectedPath>input_misc/tuner/error_nov11_altocu.in</affectedPath><affectedPath>input/case_setups/mc3e_model.in</affectedPath><affectedPath>input/case_setups/cgils_s6_model.in</affectedPath><affectedPath>run_scripts/ensemble_run/ensemble_run.bash</affectedPath><affectedPath>input_misc/tuner/error_dycoms2_rf02_do.in</affectedPath><affectedPath>input/case_setups/mpace_b_silhs_model.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_nd_model.LR.in</affectedPath><affectedPath>postprocessing/check_budgets_balance/checkBudget.py</affectedPath><affectedPath>input/case_setups/rico_silhs_model.in</affectedPath><affectedPath>input/case_setups/mpace_a_model.in</affectedPath><affectedPath>ens_tune/error_combined_001.in</affectedPath><affectedPath>input/case_setups/mpace_b_model.in</affectedPath><affectedPath>input/case_setups/cloud_feedback_s11_model.in</affectedPath><affectedPath>input_misc/tuner/error_arm_97.in</affectedPath><affectedPath>src/Input_fields/stat_file_module.F90</affectedPath><affectedPath>input/case_setups/arm_0003_model.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_so_model.in</affectedPath><affectedPath>input_misc/tuner/error_fire.in</affectedPath><affectedPath>input_misc/tuner/error_gabls2.in</affectedPath><affectedPath>input/case_setups/astex_a209_model.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_do_model.LR.in</affectedPath><affectedPath>input/case_setups/cloud_feedback_s12_model.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_so_model.HR.in</affectedPath><affectedPath>input/case_setups/ekman_model.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_ds_model.in</affectedPath><affectedPath>input/case_setups/gabls2_model.in</affectedPath><affectedPath>input/case_setups/atex_long_model.in</affectedPath><affectedPath>ens_tune/README</affectedPath><affectedPath>input/case_setups/fire_model.in</affectedPath><affectedPath>input_misc/tuner/error_bomex.in</affectedPath><affectedPath>input_misc/tuner/error_bomex_fire.in</affectedPath><affectedPath>src/Input_fields/input_fields.F90</affectedPath><affectedPath>input/case_setups/cloud_feedback_s12_p2k_model.in</affectedPath><affectedPath>ens_tune/mytuner_sequential.bash</affectedPath><affectedPath>input/case_setups/cgils_s11_p2k_model.in</affectedPath><affectedPath>input/case_setups/dycoms2_rf02_ds_model.LR.in</affectedPath><affectedPath>src/error.F90</affectedPath><affectedPath>input/case_setups/gabls3_night_model.in</affectedPath><affectedPath>input/case_setups/wangara_model.in</affectedPath><affectedPath>input/case_setups/clex9_oct14_model.in</affectedPath><commitId>7945eaacac73eb9bbf7dc2b21dd6187c724a8fbf</commitId><timestamp>1781034483000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Removed/Deleted GrADS (.ctl, .dat) file format and reference to it (#1310)

- Made updates to Input Fields to remove GrADS. Master branch only worked for a small number of input variables, and after the changes when testing, worked just as well as the master branch. 
</comment><date>2026-06-09 14:48:03 -0500</date><id>7945eaacac73eb9bbf7dc2b21dd6187c724a8fbf</id><msg>Removed/Deleted GrADS (.ctl, .dat) file format and reference to it (#1310)</msg><path><editType>edit</editType><file>input/case_setups/clex9_nov02_model.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_bomex_fire.in</file></path><path><editType>edit</editType><file>input/case_setups/arm_97_model.in</file></path><path><editType>edit</editType><file>input/case_setups/arm_3year_model.in</file></path><path><editType>edit</editType><file>input/case_setups/mpace_b_model.in</file></path><path><editType>edit</editType><file>src/Input_fields/recl.inc</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_so_model.in</file></path><path><editType>edit</editType><file>postprocessing/output_scripts/cloud_feedback/README</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_nd_model.HR.in</file></path><path><editType>edit</editType><file>input/case_setups/neutral_model.in</file></path><path><editType>edit</editType><file>input/case_setups/mc3e_model.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_four_cases.in</file></path><path><editType>edit</editType><file>input/case_setups/fire_model.in</file></path><path><editType>edit</editType><file>input/case_setups/wangara_model.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_do_model.LR.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_wangara.in</file></path><path><editType>edit</editType><file>input/case_setups/atex_long_model.in</file></path><path><editType>edit</editType><file>src/Input_fields/CMakeLists.txt</file></path><path><editType>edit</editType><file>ens_tune/mytuner_sequential.bash</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf01_fixed_sst_model.in</file></path><path><editType>edit</editType><file>input/case_setups/cgils_s12_p2k_model.in</file></path><path><editType>edit</editType><file>ens_tune/mytuner_movingfoot.bash</file></path><path><editType>edit</editType><file>input/case_setups/cgils_s12_model.in</file></path><path><editType>edit</editType><file>postprocessing/check_budgets_balance/README</file></path><path><editType>edit</editType><file>src/CLUBB_core/model_flags.F90</file></path><path><editType>edit</editType><file>postprocessing/check_budgets_balance/checkBudget.py</file></path><path><editType>edit</editType><file>input_misc/tuner/README</file></path><path><editType>edit</editType><file>input/case_setups/bomex_model.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_dycoms2_rf02_do.in</file></path><path><editType>edit</editType><file>input/case_setups/cgils_s11_model.in</file></path><path><editType>edit</editType><file>input/case_setups/mpace_a_model.in</file></path><path><editType>edit</editType><file>input/case_setups/mpace_b_silhs_model.in</file></path><path><editType>edit</editType><file>input/case_setups/coriolis_test_model.in</file></path><path><editType>edit</editType><file>input/case_setups/cgils_s6_model.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_do_model.in</file></path><path><editType>edit</editType><file>compile/file_list/clubb_model_files</file></path><path><editType>edit</editType><file>input_misc/tuner/error_bomex.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_dycoms2_rf01.in</file></path><path><editType>edit</editType><file>input/case_setups/arm_0003_model.in</file></path><path><editType>edit</editType><file>input/case_setups/cloud_feedback_s12_model.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_nd_model.LR.in</file></path><path><editType>edit</editType><file>input/case_setups/lba_model.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_ds_model.in</file></path><path><editType>edit</editType><file>src/Input_fields/stat_file_utils.F90</file></path><path><editType>edit</editType><file>input/case_setups/twp_ice_model.in</file></path><path><editType>edit</editType><file>run_scripts/ensemble_run/ensemble_run.bash</file></path><path><editType>edit</editType><file>input/case_setups/cobra_model.in</file></path><path><editType>edit</editType><file>src/Input_fields/stat_file_module.F90</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_so_model.HR.in</file></path><path><editType>edit</editType><file>src/Input_fields/input_fields.F90</file></path><path><editType>edit</editType><file>input/case_setups/cloud_feedback_s11_p2k_model.in</file></path><path><editType>edit</editType><file>input/case_setups/gabls3_model.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_lba.in</file></path><path><editType>edit</editType><file>input/case_setups/cloud_feedback_s6_model.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_arm_97.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_gabls2.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_dycoms2_rf02_nd.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_fire.in</file></path><path><editType>edit</editType><file>input/case_setups/rico_model.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_nd_model.in</file></path><path><editType>edit</editType><file>input/case_setups/atex_model.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_do_model.HR.in</file></path><path><editType>edit</editType><file>input/case_setups/cloud_feedback_s6_p2k_model.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_gabls3_night.in</file></path><path><editType>edit</editType><file>input/case_setups/nov11_altocu_model.in</file></path><path><editType>edit</editType><file>input/case_setups/gabls2_model.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_all.in</file></path><path><editType>edit</editType><file>input/case_setups/gabls3_night_model.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_rico.in</file></path><path><editType>edit</editType><file>input/case_setups/clex9_oct14_model.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_ticket_756.in</file></path><path><editType>edit</editType><file>input/case_setups/rico_silhs_model.in</file></path><path><editType>edit</editType><file>src/jacobian.F90</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_morr_model.in</file></path><path><editType>edit</editType><file>input/case_setups/cgils_s11_p2k_model.in</file></path><path><editType>edit</editType><file>input/case_setups/arm_model.in</file></path><path><editType>edit</editType><file>ens_tune/README</file></path><path><editType>delete</editType><file>src/Input_fields/input_grads.F90</file></path><path><editType>edit</editType><file>input_misc/tuner/error_dycoms2_rf02_ds.in</file></path><path><editType>edit</editType><file>input/case_setups/cloud_feedback_s12_p2k_model.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf01_model.in</file></path><path><editType>edit</editType><file>utilities/README</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_ds_model.LR.in</file></path><path><editType>edit</editType><file>input/case_setups/README</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_so_model.LR.in</file></path><path><editType>edit</editType><file>input/case_setups/cgils_s6_p2k_model.in</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>input_misc/tuner/error_atex.in</file></path><path><editType>edit</editType><file>ens_tune/error_combined_001.in</file></path><path><editType>edit</editType><file>input/case_setups/dycoms2_rf02_ds_model.HR.in</file></path><path><editType>edit</editType><file>input/case_setups/jun25_altocu_model.in</file></path><path><editType>edit</editType><file>input/case_setups/astex_a209_model.in</file></path><path><editType>edit</editType><file>input/case_setups/ekman_model.in</file></path><path><editType>delete</editType><file>utilities/differences_binary_casefiles.sh</file></path><path><editType>edit</editType><file>input/case_setups/cloud_feedback_s11_model.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_arm.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_nov11_altocu.in</file></path><path><editType>edit</editType><file>src/error.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>538</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/538/</url></nextBuild><previousBuild><number>536</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/536/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Trevor Hancock</shortDescription><userId>hancock</userId><userName>Trevor Hancock</userName></cause></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>536</buildNumber><marked><SHA1>039f9da10548eff43e3aa9c2d928cbed34689600</SHA1><branch><SHA1>039f9da10548eff43e3aa9c2d928cbed34689600</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>039f9da10548eff43e3aa9c2d928cbed34689600</SHA1><branch><SHA1>039f9da10548eff43e3aa9c2d928cbed34689600</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>039f9da10548eff43e3aa9c2d928cbed34689600</SHA1><branch><SHA1>039f9da10548eff43e3aa9c2d928cbed34689600</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#536</displayName><duration>487856</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #536</fullDisplayName><id>536</id><keepLog>false</keepLog><number>536</number><queueId>4467</queueId><result>SUCCESS</result><timestamp>1780693586941</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/536/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>utilities/README</affectedPath><affectedPath>utilities/CLUBBStandardsCheck.pl</affectedPath><commitId>039f9da10548eff43e3aa9c2d928cbed34689600</commitId><timestamp>1780693246000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Removed perl and references to it (#1311)

* Removed perl and references to it

* Reverting changes to files/directories as requested
</comment><date>2026-06-05 16:00:46 -0500</date><id>039f9da10548eff43e3aa9c2d928cbed34689600</id><msg>Removed perl and references to it (#1311)</msg><path><editType>edit</editType><file>utilities/README</file></path><path><editType>delete</editType><file>utilities/CLUBBStandardsCheck.pl</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>537</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/537/</url></nextBuild><previousBuild><number>535</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/535/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>535</buildNumber><marked><SHA1>53893cabfda88eccc92204a3471b3855a4716aa6</SHA1><branch><SHA1>53893cabfda88eccc92204a3471b3855a4716aa6</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>53893cabfda88eccc92204a3471b3855a4716aa6</SHA1><branch><SHA1>53893cabfda88eccc92204a3471b3855a4716aa6</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>53893cabfda88eccc92204a3471b3855a4716aa6</SHA1><branch><SHA1>53893cabfda88eccc92204a3471b3855a4716aa6</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#535</displayName><duration>258435</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #535</fullDisplayName><id>535</id><keepLog>false</keepLog><number>535</number><queueId>4400</queueId><result>SUCCESS</result><timestamp>1780648031047</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/535/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>postprocessing/python_sam_budgets_plotter/README</affectedPath><commitId>0d30e05f0411c43c5b0eecb8734433dd9a29deda</commitId><timestamp>1780587482000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Create README for python_sam_budgets_plotter folder
</comment><date>2026-06-04 10:38:02 -0500</date><id>0d30e05f0411c43c5b0eecb8734433dd9a29deda</id><msg>Create README for python_sam_budgets_plotter folder</msg><path><editType>add</editType><file>postprocessing/python_sam_budgets_plotter/README</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_morr_budgets_late.case</affectedPath><affectedPath>postprocessing/plotgen/ParseColorFromExpression.m</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/templates/template_simple.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cloud_feedback_s06_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/cloud_feedback_s6_p2k_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf02_ds_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cloud_feedback_s06.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/arm.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cgils_s11_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/templates/template_morr_budget.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/ne_pac_lo_iop_clubb.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/bomex_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf01_fixed_sst_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/rico_silhs_inter_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/gfdl/dycoms2_rf01_fixed_sst.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/templates/template_budget.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/mc3e_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/ne_pac_lo_iop_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/arm_97.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf02_nd_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/read_netcdf_hoc.m</affectedPath><affectedPath>postprocessing/plotgen/header_read_expanded_netcdf.m</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/astex_a209.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/rico_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/bomex.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/arm_97.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/rico.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/twpice_sam_standalone.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cloud_feedback_s06_p2k.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf02_ds_lh.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/templates/template_all.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cgils_s06.case</affectedPath><affectedPath>postprocessing/plotgen/Term/ANSIColor.pm</affectedPath><affectedPath>postprocessing/plotgen/ConsoleOutput.m</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf02_ds_coamps_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/templates/template_all_coamps.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf02_do.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_budgets_late.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/bomex.case</affectedPath><affectedPath>postprocessing/plotgen/cases/wrf/wangara.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/atex_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/wrf/atex.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf02_nd_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/ne_pac_hi_iop.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/mpace_b_silhs.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_morr_budgets_middle.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/ne_pac_lo_iop.case</affectedPath><affectedPath>postprocessing/plotgen/read_grads_hoc_endian.m</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/clex9_oct14_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/gfdl/dycoms2_rf02_ds.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_middle.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/atex_coamps_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/ParseVariablesFromExpression.m</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/twp_ice_morr_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/ne_pac_hi_iop_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/astex_a209_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/wrf/fire.case</affectedPath><affectedPath>postprocessing/plotgen/cases/gfdl/arm97.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_budgets_middle.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/templates/template_all_sam.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cgils_s11_p2k_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf02_ds_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/nov11_altocu_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/jun25_altocu_qc3_coamps_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/clex9_nov02_coamps_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/lba_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf02_do_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cgils_s12.case</affectedPath><affectedPath>postprocessing/plotgen/CaseReader.pm</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/arm_97_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/gate_shear_rlsf_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/arm_97_morr_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/fire_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/arm_97_sam_standalone.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/lba_sam_standalone.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_budgets_early.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_late.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/iop_clubb.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf02_so_budgets.case</affectedPath><affectedPath>ens_tune/analyze_results.py</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cloud_feedback_s11_p2k.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/arm_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/mpace_b.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/nov11_altocu.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/atex.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf01_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cloud_feedback_s11_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/rico_silhs_noninter.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/arm_97_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/twp_ice_scidac.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/twp_ice.case</affectedPath><affectedPath>postprocessing/plotgen/PlotCreator.m</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/lba_morr_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cloud_feedback_s12_p2k.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cgils_s06_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/VariableReadNC.m</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/rico_coamps_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/se_atl_hi_iop_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/wrf/arm.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/fire.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/mpace_b_silhs_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_budgets_deep.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/cloud_feedback_s6_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cgils_s12_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf01_fixed_sst_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/gfdl/mpace_b.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cloud_feedback_s11.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cgils_s06_p2k_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cloud_feedback_s12.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/se_pac_lo_iop.case</affectedPath><affectedPath>postprocessing/plotgen/ProfileFunctions.m</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/mpace_a_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/gabls2_nightly.case</affectedPath><affectedPath>postprocessing/plotgen/File/Copy/Recursive.pm</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/fire_coamps_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cgils_s06_p2k.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/se_atl_lo_iop_clubb.case</affectedPath><affectedPath>ens_tune/README</affectedPath><affectedPath>postprocessing/plotgen/read_grads_hoc_sfc_endian.m</affectedPath><affectedPath>postprocessing/plotgen/header_read_expanded.m</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cgils_s12_p2k.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/cloud_feedback_s12_p2k_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/se_atl_lo_iop_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/README</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/mc3e_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/rico.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/cam_sam_forcings/cam_sam_forcings.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/jun25_altocu_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/arm_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cloud_feedback_s11_p2k_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/clex9_oct14.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cgils_s12_p2k_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/mpace_a_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf01_coamps_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cobra_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/wangara_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf02_ds_nightly.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/cloud_feedback_s12_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/gabls3_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/bomex_coamps_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf02_so_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf02_so.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/clex9_nov02_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/twp_ice_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/lba_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf02_nd.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/gabls2_coamps_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf02_ds.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/arm_coamps_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_early.case</affectedPath><affectedPath>postprocessing/plotgen/cases/gfdl/dycoms2_rf01.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/gabls3_night.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/nov11_altocu_coamps_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cobra.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/iop_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf02_do_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/atex.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/twp_ice.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf02_nd_coamps_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/rico_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/clex9_oct14_coamps_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/se_pac_hi_iop_clubb.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cgils_s11_p2k.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/lba_subperiods/README</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_early.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/cloud_feedback_s11_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/se_atl_hi_iop.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf01_fixed_sst.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/gabls2_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/se_atl_lo_iop.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/bomex_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/rico_silhs_inter.case</affectedPath><affectedPath>postprocessing/plotgen/CaseFunctions/UseFirstArgIfExist.m</affectedPath><affectedPath>postprocessing/plotgen/OutputWriter.py</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/cloud_feedback_s11_p2k_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_morr_budgets_deep.case</affectedPath><affectedPath>postprocessing/plotgen/OutputWriter.pm</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/gabls3_night_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_budgets_early.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf02_ds_nightly_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/wangara.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/gabls3.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/mc3e.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cloud_feedback_s06_p2k_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/jun25_altocu.case</affectedPath><affectedPath>postprocessing/plotgen/README</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/templates/template_all_rams.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/mpace_a.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/arm_97_morr_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_morr_budgets_middle.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cloud_feedback_s12_p2k_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/arm_97_scidac.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_middle.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/lba_corr_covars.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/templates/template_simple.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/mpace_b_coamps_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/rico.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/templates/template_budget.case</affectedPath><affectedPath>postprocessing/plotgen/CaseFunctions/UseFirstArgIfNonZero.m</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_budgets_middle.case</affectedPath><affectedPath>postprocessing/plotgen/plotgen.py</affectedPath><affectedPath>postprocessing/plotgen/cases/wrf/bomex.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/gate_shear_rlsf.case</affectedPath><affectedPath>postprocessing/plotgen/cases/gfdl/bomex.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/se_pac_hi_iop.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf01.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf02_ds.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf02_do.case</affectedPath><affectedPath>postprocessing/plotgen/VariableReadGrADS.m</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cloud_feedback_s12_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/read_netcdf_hoc_corr.m</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/iop.case</affectedPath><affectedPath>postprocessing/plotgen/plotgen.pl</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/gabls3_night_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/se_pac_hi_iop_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/arm9707_scidac_check_cam_sam_forcings.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/cgils_s11.case</affectedPath><affectedPath>postprocessing/plotgen/cases/gfdl/rico.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/gabls2.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/arm_97.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/twp_ice_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/se_atl_hi_iop_clubb.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_morr_budgets_early.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/se_pac_lo_iop_clubb.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/mc3e_morr_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/mpace_b_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/gfdl/atex.case</affectedPath><affectedPath>postprocessing/plotgen/cases/README</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/lba.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf02_so.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/twpice_scidac_check_cam_sam_forcings.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/armcc.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/corr_covars_template.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/bomex.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/dycoms2_rf01.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/clex9_nov02.case</affectedPath><affectedPath>postprocessing/plotgen/console_output.pl</affectedPath><affectedPath>postprocessing/plotgen/DetermineExtension.m</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/se_pac_lo_iop_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/cam_sam_forcings/cam_sam_forcings_twpice.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_morr_budgets_early.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf01_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/read_netcdf_hoc_timeseries.m</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/arm97_pnnlbudget.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/dycoms2_rf02_do_coamps_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/sam_clubb/lba.case</affectedPath><affectedPath>postprocessing/plotgen/cases/cam/ne_pac_hi_iop_clubb.case</affectedPath><affectedPath>postprocessing/plotgen/TimeseriesFunctions.m</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/lba_morr_budgets.case</affectedPath><affectedPath>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_deep.case</affectedPath><commitId>53893cabfda88eccc92204a3471b3855a4716aa6</commitId><timestamp>1780598870000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Removed plotgen (#1312)

* Removed entire plotgen directory 
</comment><date>2026-06-04 13:47:50 -0500</date><id>53893cabfda88eccc92204a3471b3855a4716aa6</id><msg>Removed plotgen (#1312)</msg><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/se_atl_hi_iop_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf02_so_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/PlotCreator.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/plotgen.pl</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/arm_coamps_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf01_fixed_sst_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cgils_s12_p2k_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/lba.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/ne_pac_hi_iop_clubb.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/gfdl/dycoms2_rf02_ds.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf01_coamps_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/gfdl/dycoms2_rf01_fixed_sst.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/mc3e_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/arm9707_scidac_check_cam_sam_forcings.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/fire_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/gabls3_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cgils_s12.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/se_atl_lo_iop_clubb.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/se_pac_hi_iop.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/twp_ice_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf02_ds_lh.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/gabls2_coamps_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/File/Copy/Recursive.pm</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/ne_pac_lo_iop_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/rico.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/atex.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf02_ds.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/ParseColorFromExpression.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cobra.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/templates/template_budget.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/se_pac_hi_iop_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/ConsoleOutput.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/twp_ice_morr_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/ne_pac_hi_iop.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/gfdl/arm97.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/rico_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/CaseReader.pm</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/gabls2_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/arm97_pnnlbudget.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/arm_97.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_budgets_deep.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/lba_subperiods/README</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf02_do_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/lba_morr_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/rico.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/clex9_nov02.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cobra_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/Term/ANSIColor.pm</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/templates/template_all_sam.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/bomex_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cgils_s06_p2k.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_morr_budgets_middle.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/bomex.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/rico.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/OutputWriter.py</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/arm_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cgils_s11_p2k_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/read_grads_hoc_sfc_endian.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cloud_feedback_s11_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/fire_coamps_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/console_output.pl</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_budgets_middle.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/wrf/wangara.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cloud_feedback_s11_p2k.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_early.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/clex9_nov02_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/wangara.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/se_atl_hi_iop_clubb.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_middle.case</file></path><path><editType>edit</editType><file>ens_tune/analyze_results.py</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/armcc.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/gfdl/atex.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/se_pac_hi_iop_clubb.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/mc3e_morr_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cgils_s06_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/bomex.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/rico_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/twpice_sam_standalone.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_budgets_middle.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/astex_a209.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cgils_s06_p2k_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/VariableReadNC.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf02_nd.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/atex.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/gate_shear_rlsf_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/arm_97.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cgils_s11_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cloud_feedback_s06_p2k_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/ProfileFunctions.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/twp_ice.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/templates/template_simple.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/arm_97_scidac.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/cam_sam_forcings/cam_sam_forcings.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/se_atl_lo_iop.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/gabls2_nightly.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/rico_silhs_noninter.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/mpace_b_silhs.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/se_pac_lo_iop_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/bomex.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/gfdl/dycoms2_rf01.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/VariableReadGrADS.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf02_do.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_morr_budgets_early.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/arm_97_morr_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/dycoms2_rf01.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cloud_feedback_s06_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/wangara_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf01_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf01_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf02_ds.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_morr_budgets_deep.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/wrf/fire.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/mc3e.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/nov11_altocu_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_budgets_early.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/README</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/gabls3_night.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cgils_s11_p2k.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/cloud_feedback_s12_p2k_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/arm_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/ne_pac_hi_iop_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/arm_97.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/mc3e_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/ParseVariablesFromExpression.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cloud_feedback_s12_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/templates/template_all.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/wrf/arm.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cloud_feedback_s11.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/ne_pac_lo_iop_clubb.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf02_do_coamps_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/lba.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_deep.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_middle.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/ne_pac_lo_iop.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/lba_sam_standalone.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/clex9_nov02_coamps_budgets.case</file></path><path><editType>edit</editType><file>ens_tune/README</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/gabls3.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf02_ds_nightly_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_morr_budgets_middle.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cloud_feedback_s12.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf02_ds_nightly.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/templates/template_all_coamps.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/jun25_altocu_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf02_so_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/lba_corr_covars.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/rico_coamps_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_early.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/twp_ice_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/arm_97_morr_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf02_so.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf02_so.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/jun25_altocu.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/iop.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/templates/template_budget.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_morr_budgets_early.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/arm_97_sam_standalone.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf01_fixed_sst_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf02_nd_coamps_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/lba_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/rico_silhs_inter.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/rico_silhs_inter_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/header_read_expanded_netcdf.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/se_atl_lo_iop_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/corr_covars_template.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/astex_a209_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/arm.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/iop_clubb.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/nov11_altocu_coamps_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/wrf/atex.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/read_netcdf_hoc_timeseries.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/arm_97_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/twp_ice_scidac.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/bomex_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf02_ds_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/mpace_b_coamps_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/cloud_feedback_s12_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/read_netcdf_hoc_corr.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cloud_feedback_s06.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/twp_ice.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/gabls3_night_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/read_grads_hoc_endian.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/jun25_altocu_qc3_coamps_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf02_do.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/gabls2.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/twpice_scidac_check_cam_sam_forcings.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/CaseFunctions/UseFirstArgIfExist.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/mpace_a_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/TimeseriesFunctions.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cgils_s12_p2k.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/cloud_feedback_s11_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/gate_shear_rlsf.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf02_nd_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/gfdl/mpace_b.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/se_atl_hi_iop.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/bomex_coamps_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/mpace_b.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/plotgen.py</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cloud_feedback_s11_p2k_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/lba_morr_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/mpace_b_silhs_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/se_pac_lo_iop_clubb.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_morr_budgets_late.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf02_nd_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/cam_sam_forcings/cam_sam_forcings_twpice.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/dycoms2_rf02_do_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/cloud_feedback_s6_p2k_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/nov11_altocu.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf01_fixed_sst.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/cloud_feedback_s6_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf01.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cgils_s06.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/read_netcdf_hoc.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cgils_s12_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cloud_feedback_s06_p2k.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/mpace_b_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/templates/template_simple.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cloud_feedback_s12_p2k_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf02_ds_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/fire.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/cloud_feedback_s11_p2k_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/templates/template_all_rams.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/DetermineExtension.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/CaseFunctions/UseFirstArgIfNonZero.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/atex_coamps_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/clex9_oct14.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cloud_feedback_s12_p2k.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/lba_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/README</file></path><path><editType>delete</editType><file>postprocessing/plotgen/header_read_expanded.m</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/arm_97_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/mpace_a_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/clex9_oct14_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/iop_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/gabls3_night_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/templates/template_morr_budget.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_budgets_late.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/dycoms2_rf02_ds_coamps_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/atex_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/OutputWriter.pm</file></path><path><editType>delete</editType><file>postprocessing/plotgen/README</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/sam_clubb/lba_subperiods/lba_late.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/cam/se_pac_lo_iop.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/wrf/bomex.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/clex9_oct14_coamps_budgets.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/gfdl/bomex.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/cgils_s11.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/gfdl/rico.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/lba_subperiods/lba_budgets_early.case</file></path><path><editType>delete</editType><file>postprocessing/plotgen/cases/clubb/mpace_a.case</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>536</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/536/</url></nextBuild><previousBuild><number>534</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/534/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>534</buildNumber><marked><SHA1>8164a32e6256c0d21d4ecc9506117d79a7aaf047</SHA1><branch><SHA1>8164a32e6256c0d21d4ecc9506117d79a7aaf047</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>8164a32e6256c0d21d4ecc9506117d79a7aaf047</SHA1><branch><SHA1>8164a32e6256c0d21d4ecc9506117d79a7aaf047</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>8164a32e6256c0d21d4ecc9506117d79a7aaf047</SHA1><branch><SHA1>8164a32e6256c0d21d4ecc9506117d79a7aaf047</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#534</displayName><duration>1602360</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #534</fullDisplayName><id>534</id><keepLog>false</keepLog><number>534</number><queueId>4309</queueId><result>SUCCESS</result><timestamp>1780561629267</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/534/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/new_hybrid_pdf_main.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_helper_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/sigma_sqd_w_module.py</affectedPath><affectedPath>src/CLUBB_core/advance_xp3_module.F90</affectedPath><affectedPath>clubb_jax/advance_clubb_core.py</affectedPath><affectedPath>src/CLUBB_core/pdf_closure_module.F90</affectedPath><affectedPath>clubb_jax/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_python_api/clubb_python/clubb_api.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/stats_clubb_utilities.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_xp3_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/skx_module_wrapper.F90</affectedPath><affectedPath>src/CLUBB_core/mixing_length.F90</affectedPath><affectedPath>src/CLUBB_core/Skx_module.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90</affectedPath><affectedPath>clubb_python_driver/advance_clubb_core.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/mixing_length_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_helper.py</affectedPath><affectedPath>src/CLUBB_core/stats_clubb_utilities.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/sigma_sqd_w_module_wrapper.F90</affectedPath><affectedPath>src/G_unit_test_types/pdf_parameter_tests.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xm_wpxp.py</affectedPath><affectedPath>src/CLUBB_core/advance_helper_module.F90</affectedPath><affectedPath>src/CLUBB_core/sigma_sqd_w_module.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/stats_clubb_utilities_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/pdf_closure_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_xm_wpxp_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_xp2_xpyp_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp3.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</affectedPath><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xm_wpxp_module.F90</affectedPath><affectedPath>clubb_python_api/tests/test_advance_core_subs.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xp3.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_stats_accumulate.py</affectedPath><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_meta.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py</affectedPath><commitId>0be32f96d2f5c4ce974c17fbc82912d516b68baf</commitId><timestamp>1780545147000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Clubb organization part3 (#1306)

* More BFB movements

* Reworking where sigma_sqd_w and gamma_Skw_fnc are computed - this should all be BFB. Also fixing the G_unit test that was failing due to sigma_sqd_w issues

* Correcting arg list

* Fixes after rebase

* Making sigma_sqd_w_zt BFB vs master when using iiPDF_type=7 (new hybrid)

* Fixing python API

* Changing name of compute_xp3 to diagnose_xp3 and moving a1_coef and a3_coef calculation back into advance routines

* Fixes for GPU code
</comment><date>2026-06-03 22:52:27 -0500</date><id>0be32f96d2f5c4ce974c17fbc82912d516b68baf</id><msg>Clubb organization part3 (#1306)</msg><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_helper.py</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/sigma_sqd_w_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_stats_accumulate.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/mixing_length.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_xp2_xpyp_module_wrapper.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_helper_module.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/stats_clubb_utilities_wrapper.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_clubb_utilities.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/sigma_sqd_w_module.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_xp3_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xp3_module.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/stats_clubb_utilities.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path><path><editType>edit</editType><file>clubb_jax/advance_clubb_core.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/new_hybrid_pdf_main.F90</file></path><path><editType>edit</editType><file>src/G_unit_test_types/pdf_parameter_tests.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/pdf_closure_module.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_helper_module_wrapper.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/Skx_module.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xp3.py</file></path><path><editType>edit</editType><file>clubb_jax/advance_clubb_to_end.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_meta.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xp3.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/pdf_closure_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/skx_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/clubb_api.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_xm_wpxp_module_wrapper.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xm_wpxp_module.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/mixing_length_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xm_wpxp.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_advance_core_subs.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/sigma_sqd_w_module.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>utilities/convert_to_async.py</affectedPath><affectedPath>jenkins_tests/clubb_gpu_async_output_matching/Jenkinsfile</affectedPath><commitId>8164a32e6256c0d21d4ecc9506117d79a7aaf047</commitId><timestamp>1780545161000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>GPU async script (#1307)

* Adding script that converts openacc directives to use async clauses and jenkins test to test that adding them does not change BFBness

* Small cleanup - fixing typo and adding comments.
</comment><date>2026-06-03 22:52:41 -0500</date><id>8164a32e6256c0d21d4ecc9506117d79a7aaf047</id><msg>GPU async script (#1307)</msg><path><editType>add</editType><file>utilities/convert_to_async.py</file></path><path><editType>add</editType><file>jenkins_tests/clubb_gpu_async_output_matching/Jenkinsfile</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>535</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/535/</url></nextBuild><previousBuild><number>533</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/533/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>533</buildNumber><marked><SHA1>4f132e2cf1bea29284b46b82a0b5006a2b23249a</SHA1><branch><SHA1>4f132e2cf1bea29284b46b82a0b5006a2b23249a</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>4f132e2cf1bea29284b46b82a0b5006a2b23249a</SHA1><branch><SHA1>4f132e2cf1bea29284b46b82a0b5006a2b23249a</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>4f132e2cf1bea29284b46b82a0b5006a2b23249a</SHA1><branch><SHA1>4f132e2cf1bea29284b46b82a0b5006a2b23249a</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#533</displayName><duration>98695</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #533</fullDisplayName><id>533</id><keepLog>false</keepLog><number>533</number><queueId>4228</queueId><result>SUCCESS</result><timestamp>1780475229908</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/533/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/JAX_CONVERSION_PLAN.md</affectedPath><commitId>4f132e2cf1bea29284b46b82a0b5006a2b23249a</commitId><timestamp>1780435588000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Update JAX conversion plan for clarity and detail

Clarified the role of clubb_python_api in the conversion process and improved the description of the test harness functionality.
</comment><date>2026-06-02 16:26:28 -0500</date><id>4f132e2cf1bea29284b46b82a0b5006a2b23249a</id><msg>Update JAX conversion plan for clarity and detail</msg><path><editType>edit</editType><file>clubb_jax/JAX_CONVERSION_PLAN.md</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>534</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/534/</url></nextBuild><previousBuild><number>532</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/532/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Gunther Huebler</shortDescription><userId>huebler</userId><userName>Gunther Huebler</userName></cause></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>532</buildNumber><marked><SHA1>fb12cc1c0be895d2db030ceed981bc5121277b0e</SHA1><branch><SHA1>fb12cc1c0be895d2db030ceed981bc5121277b0e</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>fb12cc1c0be895d2db030ceed981bc5121277b0e</SHA1><branch><SHA1>fb12cc1c0be895d2db030ceed981bc5121277b0e</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>fb12cc1c0be895d2db030ceed981bc5121277b0e</SHA1><branch><SHA1>fb12cc1c0be895d2db030ceed981bc5121277b0e</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#532</displayName><duration>74305</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #532</fullDisplayName><id>532</id><keepLog>false</keepLog><number>532</number><queueId>4090</queueId><result>SUCCESS</result><timestamp>1779992338350</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/532/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>README</affectedPath><commitId>fb12cc1c0be895d2db030ceed981bc5121277b0e</commitId><timestamp>1779992322000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>The last commit should've been marked as non-BFB since it corrected a crashing bug - so comparing output to no output caused the output to be considered different. This was missed because the BFB checking tests didn't fail, and that was because the commit that caused the crashing was marked non-BFB, so an unusual combo. In general though any commit that fixes crashing behavior should be labelled as bit changing. RESOLVED:73dc365c77ab4bf2405d753f167307ae9be330a0
</comment><date>2026-05-28 13:18:42 -0500</date><id>fb12cc1c0be895d2db030ceed981bc5121277b0e</id><msg>The last commit should've been marked as non-BFB since it corrected a crashing bug - so comparing output to no output caused the output to be considered different. This was missed because the BFB checking tests didn't fail, and that was because the commit that caused the crashing was marked non-BFB, so an unusual combo. In general though any commit that fixes crashing behavior should be labelled as bit changing. RESOLVED:73dc365c77ab4bf2405d753f167307ae9be330a0</msg><path><editType>edit</editType><file>README</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>533</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/533/</url></nextBuild><previousBuild><number>531</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/531/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>531</buildNumber><marked><SHA1>73dc365c77ab4bf2405d753f167307ae9be330a0</SHA1><branch><SHA1>73dc365c77ab4bf2405d753f167307ae9be330a0</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>73dc365c77ab4bf2405d753f167307ae9be330a0</SHA1><branch><SHA1>73dc365c77ab4bf2405d753f167307ae9be330a0</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>73dc365c77ab4bf2405d753f167307ae9be330a0</SHA1><branch><SHA1>73dc365c77ab4bf2405d753f167307ae9be330a0</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#531</displayName><duration>2309468</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #531</fullDisplayName><id>531</id><keepLog>false</keepLog><number>531</number><queueId>4044</queueId><result>FAILURE</result><timestamp>1779956923445</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/531/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><commitId>73dc365c77ab4bf2405d753f167307ae9be330a0</commitId><timestamp>1779907751000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Removing unneccesary wp2_zt conversion that should've been removed already, but was accidentally added back in the last PR when trying to split BFB from non-BFB changes. This was an unused local variable so this does not affect anything.
</comment><date>2026-05-27 13:49:11 -0500</date><id>73dc365c77ab4bf2405d753f167307ae9be330a0</id><msg>Removing unneccesary wp2_zt conversion that should've been removed already, but was accidentally added back in the last PR when trying to split BFB from non-BFB changes. This was an unused local variable so this does not affect anything.</msg><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>532</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/532/</url></nextBuild><previousBuild><number>530</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/530/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>530</buildNumber><marked><SHA1>7b5214a7a0382d3b5d2df0f7b8a8f11bd11f4bdb</SHA1><branch><SHA1>7b5214a7a0382d3b5d2df0f7b8a8f11bd11f4bdb</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>7b5214a7a0382d3b5d2df0f7b8a8f11bd11f4bdb</SHA1><branch><SHA1>7b5214a7a0382d3b5d2df0f7b8a8f11bd11f4bdb</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>7b5214a7a0382d3b5d2df0f7b8a8f11bd11f4bdb</SHA1><branch><SHA1>7b5214a7a0382d3b5d2df0f7b8a8f11bd11f4bdb</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#530</displayName><duration>1275511</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #530</fullDisplayName><id>530</id><keepLog>false</keepLog><number>530</number><queueId>3927</queueId><result>SUCCESS</result><timestamp>1779870429284</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/530/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_helper_module_wrapper.F90</affectedPath><affectedPath>src/CLUBB_core/advance_wp2_wp3_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xp3_module.F90</affectedPath><affectedPath>clubb_jax/advance_clubb_core.py</affectedPath><affectedPath>clubb_python_api/clubb_python/clubb_api.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/stats_clubb_utilities.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90</affectedPath><affectedPath>clubb_python_driver/advance_clubb_core.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_helper.py</affectedPath><affectedPath>src/CLUBB_core/stats_clubb_utilities.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xm_wpxp.py</affectedPath><affectedPath>src/CLUBB_core/advance_helper_module.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</affectedPath><affectedPath>src/G_unit_test_types/spurious_source_test.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/stats_clubb_utilities_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_xm_wpxp_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_xp2_xpyp_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp3.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</affectedPath><affectedPath>src/CLUBB_core/advance_xp2_xpyp_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xm_wpxp_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xp3.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_stats_accumulate.py</affectedPath><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py</affectedPath><commitId>7b5214a7a0382d3b5d2df0f7b8a8f11bd11f4bdb</commitId><timestamp>1779832578000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Clubb organization part2 (#1304)

A number of fields were being calculated in `advance_clubb_core` (`wp2_zt` `wp3_on_wp2` `wp3_on_wp2_zt` `Skw_zm` `Skw_zt) then passed into other routines, however, all these fields depend on `wp2` and were not being updated after `wp2` was being updated by `calc_sfc_varnce`. This commit fixes that by moving where these fields are calculated - instead of computing in `advance_clubb_core` with the incoming `wp2`, we now calculate them "on-demand" where they are needed using the most recent value of `wp2`. 

Using our default flag set, there are no numerical differences caused by this change set, only a few stats differences. There are real differences that occur when `l_upwind_xpyp_ta = .false.` (a clubb_config_flag value) or when `l_explicit_turbulent_adv_xpyp = .true.` (a parameter in model_flags.F90), but these are small differences and do not visually affect plots for our stable cases. Changing the order of the `advance_` routines would also cause this to be BIT_CHANGING, since that also affects the update path for `wp2` - now these values that got moved would be using the newest `wp2` instead of being "stale", also causing small (but real) differences.

* Calculating wp2_zt and wp3_on_wp2 where needed, rather than passing those values around through advance_clubb_core. This is BIT_CHANGING for a handful of stats only variables be default: wp3_on_wp2, wp3_on_wp2_zt, wp3_on_wp2_cfl_num, term_wprtp2_explicit, term_wprtpthlp_explicit, and term_wpthlp2_explicit. Some Skw_ variables when using lmm_stepping, and has actual differences (not just in stats output) when swapping the order of the advance routines

* Moving things around, this seems to all be BFB except for the Skw_ movements, which is BIT_CHANGING if the advance_ order changes

* Fixing python API

* Reverting some BFB changes
</comment><date>2026-05-26 16:56:18 -0500</date><id>7b5214a7a0382d3b5d2df0f7b8a8f11bd11f4bdb</id><msg>Clubb organization part2 (#1304)</msg><path><editType>edit</editType><file>src/CLUBB_core/advance_xp2_xpyp_module.F90</file></path><path><editType>edit</editType><file>clubb_jax/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/clubb_api.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/stats_clubb_utilities.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_helper_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_helper.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_stats_accumulate.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_clubb_utilities.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_xp2_xpyp_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xp3.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_wp2_wp3_module.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_xm_wpxp_module_wrapper.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xm_wpxp_module.F90</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_helper_module.F90</file></path><path><editType>edit</editType><file>src/G_unit_test_types/spurious_source_test.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xp3_module.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/stats_clubb_utilities_wrapper.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xm_wpxp.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xp3.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>531</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/531/</url></nextBuild><previousBuild><number>529</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/529/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>529</buildNumber><marked><SHA1>f6869b072b6d6628b04508169a17c757c2ebddc5</SHA1><branch><SHA1>f6869b072b6d6628b04508169a17c757c2ebddc5</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>f6869b072b6d6628b04508169a17c757c2ebddc5</SHA1><branch><SHA1>f6869b072b6d6628b04508169a17c757c2ebddc5</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>f6869b072b6d6628b04508169a17c757c2ebddc5</SHA1><branch><SHA1>f6869b072b6d6628b04508169a17c757c2ebddc5</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#529</displayName><duration>239940</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #529</fullDisplayName><id>529</id><keepLog>false</keepLog><number>529</number><queueId>3846</queueId><result>SUCCESS</result><timestamp>1779524826013</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/529/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>cmake/toolchains/darwin_arm64_gcc.cmake</affectedPath><affectedPath>BUILD.md</affectedPath><affectedPath>cmake/toolchains/darwin_x86_64_gfortran.cmake</affectedPath><affectedPath>cmake/toolchains/darwin_arm64_gfortran.cmake</affectedPath><affectedPath>compile.py</affectedPath><affectedPath>cmake/deps/NetcdfFortranDependency.cmake</affectedPath><commitId>f6869b072b6d6628b04508169a17c757c2ebddc5</commitId><timestamp>1779480188000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Improvements to get clubb working on mac (#1305)
</comment><date>2026-05-22 15:03:08 -0500</date><id>f6869b072b6d6628b04508169a17c757c2ebddc5</id><msg>Improvements to get clubb working on mac (#1305)</msg><path><editType>delete</editType><file>cmake/toolchains/darwin_arm64_gfortran.cmake</file></path><path><editType>add</editType><file>cmake/toolchains/darwin_arm64_gcc.cmake</file></path><path><editType>edit</editType><file>BUILD.md</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>edit</editType><file>cmake/deps/NetcdfFortranDependency.cmake</file></path><path><editType>delete</editType><file>cmake/toolchains/darwin_x86_64_gfortran.cmake</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>530</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/530/</url></nextBuild><previousBuild><number>528</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/528/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>528</buildNumber><marked><SHA1>8244162bdb14e97ce64bf9b5961dc91e6ba442b4</SHA1><branch><SHA1>8244162bdb14e97ce64bf9b5961dc91e6ba442b4</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>8244162bdb14e97ce64bf9b5961dc91e6ba442b4</SHA1><branch><SHA1>8244162bdb14e97ce64bf9b5961dc91e6ba442b4</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>8244162bdb14e97ce64bf9b5961dc91e6ba442b4</SHA1><branch><SHA1>8244162bdb14e97ce64bf9b5961dc91e6ba442b4</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#528</displayName><duration>1650635</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #528</fullDisplayName><id>528</id><keepLog>false</keepLog><number>528</number><queueId>3764</queueId><result>SUCCESS</result><timestamp>1779265626769</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/528/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/pdf_closure_module.F90</affectedPath><commitId>8244162bdb14e97ce64bf9b5961dc91e6ba442b4</commitId><timestamp>1779217968000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Removing a couple variables from openacc statements to fix the clubb_driver_test - these were causing stats errors on the GPU for chi and chip2. This is technically BIT_CHANGING.
</comment><date>2026-05-19 14:12:48 -0500</date><id>8244162bdb14e97ce64bf9b5961dc91e6ba442b4</id><msg>Removing a couple variables from openacc statements to fix the clubb_driver_test - these were causing stats errors on the GPU for chi and chip2. This is technically BIT_CHANGING.</msg><path><editType>edit</editType><file>src/CLUBB_core/pdf_closure_module.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>529</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/529/</url></nextBuild><previousBuild><number>527</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/527/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>527</buildNumber><marked><SHA1>a1acd2bad4630dc5f48adc31966bc720b915d0e5</SHA1><branch><SHA1>a1acd2bad4630dc5f48adc31966bc720b915d0e5</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>a1acd2bad4630dc5f48adc31966bc720b915d0e5</SHA1><branch><SHA1>a1acd2bad4630dc5f48adc31966bc720b915d0e5</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>a1acd2bad4630dc5f48adc31966bc720b915d0e5</SHA1><branch><SHA1>a1acd2bad4630dc5f48adc31966bc720b915d0e5</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#527</displayName><duration>1711518</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #527</fullDisplayName><id>527</id><keepLog>false</keepLog><number>527</number><queueId>3669</queueId><result>SUCCESS</result><timestamp>1779179230317</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/527/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_python_api/f2py_fortran_wrappers/stats_clubb_utilities_wrapper.F90</affectedPath><affectedPath>clubb_jax/advance_clubb_core.py</affectedPath><affectedPath>src/CLUBB_core/pdf_closure_module.F90</affectedPath><affectedPath>clubb_jax/advance_clubb_to_end.py</affectedPath><affectedPath>run_scripts/run_bindiff_w_flags_config_core_flags.json</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/pdf_closure_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/stats_clubb_utilities.py</affectedPath><affectedPath>LLM_prompts/update_python_api_and_drivers.md</affectedPath><affectedPath>src/CLUBB_core/mixing_length.F90</affectedPath><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_stats_accumulate.py</affectedPath><affectedPath>clubb_python_driver/advance_clubb_core.py</affectedPath><affectedPath>src/CLUBB_core/stats_clubb_utilities.F90</affectedPath><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><commitId>a1acd2bad4630dc5f48adc31966bc720b915d0e5</commitId><timestamp>1779161553000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Clubb organization part1 (#1302)

* More organization. Also moving some stats calls inside of pdf_closure_driver, which is BIT_CHANGING, but only for stats output and only when ipdf_call_placement=ipdf_pre_post_advance_fields

* Adding new flag set for testing

* Fixing python API and updating prompt
</comment><date>2026-05-18 22:32:33 -0500</date><id>a1acd2bad4630dc5f48adc31966bc720b915d0e5</id><msg>Clubb organization part1 (#1302)</msg><path><editType>edit</editType><file>LLM_prompts/update_python_api_and_drivers.md</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_w_flags_config_core_flags.json</file></path><path><editType>edit</editType><file>src/CLUBB_core/mixing_length.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_stats_accumulate.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/pdf_closure_module.F90</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/stats_clubb_utilities_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path><path><editType>edit</editType><file>clubb_jax/advance_clubb_to_end.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_clubb_utilities.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/pdf_closure_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/stats_clubb_utilities.py</file></path><path><editType>edit</editType><file>clubb_jax/advance_clubb_core.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>528</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/528/</url></nextBuild><previousBuild><number>526</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/526/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>526</buildNumber><marked><SHA1>77d989d6d7397187825e263ed404e956c7598749</SHA1><branch><SHA1>77d989d6d7397187825e263ed404e956c7598749</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>77d989d6d7397187825e263ed404e956c7598749</SHA1><branch><SHA1>77d989d6d7397187825e263ed404e956c7598749</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>77d989d6d7397187825e263ed404e956c7598749</SHA1><branch><SHA1>77d989d6d7397187825e263ed404e956c7598749</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#526</displayName><duration>736935</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #526</fullDisplayName><id>526</id><keepLog>false</keepLog><number>526</number><queueId>3568</queueId><result>SUCCESS</result><timestamp>1778833627074</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/526/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/advance_windm_edsclrm_module.F90</affectedPath><commitId>77d989d6d7397187825e263ed404e956c7598749</commitId><timestamp>1778783426000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>This fixes the GPU BFB test that failed due to stats-only differences in rtm_ed and thlm_ed, and as a result is technically BIT_CHANGING. Also, the BFB with varying flags failed because flag set 1 changed to use the lapack solvers since the custom ones it set before are now default. RESOLVED:34c6bb07afb6e445f60ea87dcc632969086f9fa1
</comment><date>2026-05-14 13:30:26 -0500</date><id>77d989d6d7397187825e263ed404e956c7598749</id><msg>This fixes the GPU BFB test that failed due to stats-only differences in rtm_ed and thlm_ed, and as a result is technically BIT_CHANGING. Also, the BFB with varying flags failed because flag set 1 changed to use the lapack solvers since the custom ones it set before are now default. RESOLVED:34c6bb07afb6e445f60ea87dcc632969086f9fa1</msg><path><editType>edit</editType><file>src/CLUBB_core/advance_windm_edsclrm_module.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>527</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/527/</url></nextBuild><previousBuild><number>525</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/525/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>525</buildNumber><marked><SHA1>34c6bb07afb6e445f60ea87dcc632969086f9fa1</SHA1><branch><SHA1>34c6bb07afb6e445f60ea87dcc632969086f9fa1</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>34c6bb07afb6e445f60ea87dcc632969086f9fa1</SHA1><branch><SHA1>34c6bb07afb6e445f60ea87dcc632969086f9fa1</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>34c6bb07afb6e445f60ea87dcc632969086f9fa1</SHA1><branch><SHA1>34c6bb07afb6e445f60ea87dcc632969086f9fa1</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#525</displayName><duration>1838435</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #525</fullDisplayName><id>525</id><keepLog>false</keepLog><number>525</number><queueId>3450</queueId><result>SUCCESS</result><timestamp>1778747227648</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/525/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_helper_module_wrapper.F90</affectedPath><affectedPath>run_scripts/run_clubb_w_varying_flags.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/sigma_sqd_w_module.py</affectedPath><affectedPath>src/Radiation/bugsrad_driver.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xp3_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_wp2_wp3_module.F90</affectedPath><affectedPath>src/CLUBB_core/pdf_closure_module.F90</affectedPath><affectedPath>clubb_jax/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_python_api/clubb_python/clubb_api.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/stats_clubb_utilities.py</affectedPath><affectedPath>src/CLUBB_core/mixing_length.F90</affectedPath><affectedPath>src/CLUBB_core/advance_windm_edsclrm_module.F90</affectedPath><affectedPath>clubb_python_driver/advance_clubb_core.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</affectedPath><affectedPath>src/G_unit_test_types/pdf_parameter_tests.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/sigma_sqd_w_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_windm_edsclrm_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_windm_edsclrm.py</affectedPath><affectedPath>LLM_prompts/fortran_routine_formatting.md</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/stats_clubb_utilities_wrapper.F90</affectedPath><affectedPath>src/CLUBB_core/clip_explicit.F90</affectedPath><affectedPath>src/Microphys/morrison_microphys_module.F90</affectedPath><affectedPath>clubb_python_api/tests/test_advance_core_subs.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_numerical_check.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_stats_accumulate.py</affectedPath><affectedPath>AGENTS.md</affectedPath><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>src/CLUBB_core/grid_adaptation_module.F90</affectedPath><affectedPath>clubb_jax/advance_clubb_core.py</affectedPath><affectedPath>run_scripts/run_bindiff_w_flags_config_core_flags.json</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/clip_explicit.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_splat.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_xp3_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/skx_module_wrapper.F90</affectedPath><affectedPath>src/CLUBB_core/Skx_module.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/numerical_check.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90</affectedPath><affectedPath>jenkins_tests/run_bindiff_w_varying_flags_against_master/Jenkinsfile</affectedPath><affectedPath>run_scripts/run_bindiff_w_flags.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_helper.py</affectedPath><affectedPath>src/CLUBB_core/stats_clubb_utilities.F90</affectedPath><affectedPath>src/CLUBB_core/sigma_sqd_w_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_helper_module.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_skx.py</affectedPath><affectedPath>LLM_prompts/SHORTCUTS.md</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/clip_explicit_wrapper.F90</affectedPath><affectedPath>LLM_prompts/update_python_api_and_drivers.md</affectedPath><affectedPath>src/CLUBB_core/numerical_check.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp3.py</affectedPath><affectedPath>run_scripts/run_bindiff_varying_flags_output.py</affectedPath><affectedPath>clubb_python_driver/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_python_api/tests/test_python_port_api_coverage.py</affectedPath><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xp3.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/numerical_check_wrapper.F90</affectedPath><affectedPath>src/error.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_meta.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/skx_module.py</affectedPath><commitId>34c6bb07afb6e445f60ea87dcc632969086f9fa1</commitId><timestamp>1778702440000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>advance_clubb_core cleanup (#1301)

* BFB cleanup stuff

* Adding some helper routines

* More BFB changes

* More BFB changes

* More BFB changes

* More BFB changes

* Fixing python API and adding an agent file and a prompt to fix python API in the future.

* Updating scripts and improving formatting

* Updating some scripts and adding new jenkins test to compare the current branch vs master with flags

* Restoring BFBness when using l_lmm_stepping=.true. by reimplementing an existing bug...

* Making run_clubb_w_varying_flags.py not remove output, it's just unneccesary

* Simplifying script changes

* Jenkins script update

* Little consolidation of code in pdf_closure_driver

* Fixing python API

* Fixing parameterization_check formatting
</comment><date>2026-05-13 15:00:40 -0500</date><id>34c6bb07afb6e445f60ea87dcc632969086f9fa1</id><msg>advance_clubb_core cleanup (#1301)</msg><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_windm_edsclrm.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_windm_edsclrm_module.F90</file></path><path><editType>add</editType><file>LLM_prompts/fortran_routine_formatting.md</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/sigma_sqd_w_module.py</file></path><path><editType>edit</editType><file>src/Microphys/morrison_microphys_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/mixing_length.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xp3.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xp3_module.F90</file></path><path><editType>edit</editType><file>src/G_unit_test_types/pdf_parameter_tests.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/numerical_check.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/stats_clubb_utilities.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_helper_module_wrapper.F90</file></path><path><editType>add</editType><file>LLM_prompts/update_python_api_and_drivers.md</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/sigma_sqd_w_module_wrapper.F90</file></path><path><editType>edit</editType><file>src/error.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_xp3_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_meta.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/Skx_module.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_advance_core_subs.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/pdf_closure_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/sigma_sqd_w_module.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_python_port_api_coverage.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_varying_flags_output.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_helper.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/skx_module_wrapper.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_clubb_utilities.F90</file></path><path><editType>edit</editType><file>clubb_jax/advance_clubb_to_end.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/clip_explicit.py</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_w_flags_config_core_flags.json</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_helper_module.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_numerical_check.py</file></path><path><editType>add</editType><file>LLM_prompts/SHORTCUTS.md</file></path><path><editType>edit</editType><file>clubb_jax/advance_clubb_core.py</file></path><path><editType>add</editType><file>AGENTS.md</file></path><path><editType>edit</editType><file>src/CLUBB_core/clip_explicit.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</file></path><path><editType>add</editType><file>jenkins_tests/run_bindiff_w_varying_flags_against_master/Jenkinsfile</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/clubb_api.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/stats_clubb_utilities_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/skx_module.py</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_skx.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_windm_edsclrm_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_splat.py</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/numerical_check.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/numerical_check_wrapper.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_wp2_wp3_module.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_stats_accumulate.py</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_to_end.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/clip_explicit_wrapper.F90</file></path><path><editType>edit</editType><file>run_scripts/run_clubb_w_varying_flags.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/grid_adaptation_module.F90</file></path><path><editType>edit</editType><file>src/Radiation/bugsrad_driver.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xp3.py</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_w_flags.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>526</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/526/</url></nextBuild><previousBuild><number>524</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/524/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>524</buildNumber><marked><SHA1>2fe6e56761356da5b20a7fba14c72ec69fdc9d02</SHA1><branch><SHA1>2fe6e56761356da5b20a7fba14c72ec69fdc9d02</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>2fe6e56761356da5b20a7fba14c72ec69fdc9d02</SHA1><branch><SHA1>2fe6e56761356da5b20a7fba14c72ec69fdc9d02</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>2fe6e56761356da5b20a7fba14c72ec69fdc9d02</SHA1><branch><SHA1>2fe6e56761356da5b20a7fba14c72ec69fdc9d02</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#524</displayName><duration>136516</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #524</fullDisplayName><id>524</id><keepLog>false</keepLog><number>524</number><queueId>3346</queueId><result>SUCCESS</result><timestamp>1778228828513</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/524/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_python_driver/advance_clubb_to_end.py</affectedPath><commitId>2fe6e56761356da5b20a7fba14c72ec69fdc9d02</commitId><timestamp>1778175927000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Switching default call to advance_clubb_core in python and jax drivers to use the python api version, rather than the python ported version.
</comment><date>2026-05-07 12:45:27 -0500</date><id>2fe6e56761356da5b20a7fba14c72ec69fdc9d02</id><msg>Switching default call to advance_clubb_core in python and jax drivers to use the python api version, rather than the python ported version.</msg><path><editType>edit</editType><file>clubb_jax/advance_clubb_to_end.py</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_to_end.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>525</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/525/</url></nextBuild><previousBuild><number>523</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/523/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Gunther Huebler</shortDescription><userId>huebler</userId><userName>Gunther Huebler</userName></cause></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>523</buildNumber><marked><SHA1>5e3cfdd6efddf098dbddb41a5848e3ef4189aac8</SHA1><branch><SHA1>5e3cfdd6efddf098dbddb41a5848e3ef4189aac8</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>5e3cfdd6efddf098dbddb41a5848e3ef4189aac8</SHA1><branch><SHA1>5e3cfdd6efddf098dbddb41a5848e3ef4189aac8</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>5e3cfdd6efddf098dbddb41a5848e3ef4189aac8</SHA1><branch><SHA1>5e3cfdd6efddf098dbddb41a5848e3ef4189aac8</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#523</displayName><duration>86865</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #523</fullDisplayName><id>523</id><keepLog>false</keepLog><number>523</number><queueId>3216</queueId><result>SUCCESS</result><timestamp>1778019825112</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/523/</url><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>524</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/524/</url></nextBuild><previousBuild><number>522</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/522/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Gunther Huebler</shortDescription><userId>huebler</userId><userName>Gunther Huebler</userName></cause></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>522</buildNumber><marked><SHA1>5e3cfdd6efddf098dbddb41a5848e3ef4189aac8</SHA1><branch><SHA1>5e3cfdd6efddf098dbddb41a5848e3ef4189aac8</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>5e3cfdd6efddf098dbddb41a5848e3ef4189aac8</SHA1><branch><SHA1>5e3cfdd6efddf098dbddb41a5848e3ef4189aac8</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>5e3cfdd6efddf098dbddb41a5848e3ef4189aac8</SHA1><branch><SHA1>5e3cfdd6efddf098dbddb41a5848e3ef4189aac8</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#522</displayName><duration>22007</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #522</fullDisplayName><id>522</id><keepLog>false</keepLog><number>522</number><queueId>3211</queueId><result>FAILURE</result><timestamp>1778019767004</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/522/</url><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>523</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/523/</url></nextBuild><previousBuild><number>521</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/521/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Gunther Huebler</shortDescription><userId>huebler</userId><userName>Gunther Huebler</userName></cause></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>521</buildNumber><marked><SHA1>abccbb5bc06909c50b6645028674a3461f0bf0ab</SHA1><branch><SHA1>abccbb5bc06909c50b6645028674a3461f0bf0ab</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>abccbb5bc06909c50b6645028674a3461f0bf0ab</SHA1><branch><SHA1>abccbb5bc06909c50b6645028674a3461f0bf0ab</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>abccbb5bc06909c50b6645028674a3461f0bf0ab</SHA1><branch><SHA1>abccbb5bc06909c50b6645028674a3461f0bf0ab</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#521</displayName><duration>102342</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #521</fullDisplayName><id>521</id><keepLog>false</keepLog><number>521</number><queueId>3203</queueId><result>FAILURE</result><timestamp>1778019410402</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/521/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/advance_clubb_core.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/clip_explicit_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/clip_explicit.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_xm_wpxp_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_xp2_xpyp_module_wrapper.F90</affectedPath><affectedPath>jenkins_tests/clubb_BFB_multi_col_gpu_nvhpc_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_driver_test/Jenkinsfile</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</affectedPath><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><affectedPath>clubb_python_api/tests/test_advance_core_subs.py</affectedPath><affectedPath>src/CLUBB_core/advance_windm_edsclrm_module.F90</affectedPath><affectedPath>jenkins_tests/clubb_plot_nvhpc_gpu_vs_cpu/Jenkinsfile</affectedPath><affectedPath>clubb_python_driver/advance_clubb_core.py</affectedPath><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_windm_edsclrm_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xm_wpxp.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_windm_edsclrm.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py</affectedPath><commitId>abccbb5bc06909c50b6645028674a3461f0bf0ab</commitId><timestamp>1778019270000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Fixing python api and python/jax driver. Also fixing bug that caused non-BFBness in stats outputs (only upwp_cl/vpwp_cl) when using l_predict_upwp_vpwp=.false., and adding ulimit -s 8388608 to fix GPU test (though it's unclear why exactly we need this all of a sudden for this test). RESOLVED:643d128a5613019595aecd643f1028e937ad4b76 RESOLVED:f146255f50732c445ccbd012ca45888a9ce44d0b
</comment><date>2026-05-05 17:14:30 -0500</date><id>abccbb5bc06909c50b6645028674a3461f0bf0ab</id><msg>Fixing python api and python/jax driver. Also fixing bug that caused non-BFBness in stats outputs (only upwp_cl/vpwp_cl) when using l_predict_upwp_vpwp=.false., and adding ulimit -s 8388608 to fix GPU test (though it's unclear why exactly we need this all of a sudden for this test). RESOLVED:643d128a5613019595aecd643f1028e937ad4b76 RESOLVED:f146255f50732c445ccbd012ca45888a9ce44d0b</msg><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xm_wpxp.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_driver_test/Jenkinsfile</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_BFB_multi_col_gpu_nvhpc_test/Jenkinsfile</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/clip_explicit.py</file></path><path><editType>edit</editType><file>clubb_jax/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/clip_explicit_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_plot_nvhpc_gpu_vs_cpu/Jenkinsfile</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_xm_wpxp_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_windm_edsclrm.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path><path><editType>edit</editType><file>clubb_python_api/tests/test_advance_core_subs.py</file></path><path><editType>edit</editType><file>clubb_python_driver/advance_clubb_core.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_windm_edsclrm_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_xp2_xpyp_module_wrapper.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_windm_edsclrm_module.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>522</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/522/</url></nextBuild><previousBuild><number>520</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/520/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>520</buildNumber><marked><SHA1>f146255f50732c445ccbd012ca45888a9ce44d0b</SHA1><branch><SHA1>f146255f50732c445ccbd012ca45888a9ce44d0b</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>f146255f50732c445ccbd012ca45888a9ce44d0b</SHA1><branch><SHA1>f146255f50732c445ccbd012ca45888a9ce44d0b</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>f146255f50732c445ccbd012ca45888a9ce44d0b</SHA1><branch><SHA1>f146255f50732c445ccbd012ca45888a9ce44d0b</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#520</displayName><duration>1042249</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #520</fullDisplayName><id>520</id><keepLog>false</keepLog><number>520</number><queueId>3141</queueId><result>FAILURE</result><timestamp>1777969626737</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/520/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xm_wpxp_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_windm_edsclrm_module.F90</affectedPath><affectedPath>src/G_unit_test_types/spurious_source_test.F90</affectedPath><affectedPath>src/CLUBB_core/setup_clubb_pdf_params.F90</affectedPath><affectedPath>src/CLUBB_core/clip_explicit.F90</affectedPath><affectedPath>src/Microphys/pdf_hydromet_microphys_wrapper.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xp2_xpyp_module.F90</affectedPath><commitId>643d128a5613019595aecd643f1028e937ad4b76</commitId><timestamp>1777923494000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Clip covar simplifications (#1297)

* Initial clip covar changes

* Slightly nicer clipping count behavior
</comment><date>2026-05-04 14:38:14 -0500</date><id>643d128a5613019595aecd643f1028e937ad4b76</id><msg>Clip covar simplifications (#1297)</msg><path><editType>edit</editType><file>src/CLUBB_core/advance_xp2_xpyp_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/setup_clubb_pdf_params.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_windm_edsclrm_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/clip_explicit.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xm_wpxp_module.F90</file></path><path><editType>edit</editType><file>src/G_unit_test_types/spurious_source_test.F90</file></path><path><editType>edit</editType><file>src/Microphys/pdf_hydromet_microphys_wrapper.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>README</affectedPath><affectedPath>cmake/deps/NetcdfFortranDependency.cmake</affectedPath><affectedPath>src/CMakeLists.txt</affectedPath><affectedPath>run_scripts/README</affectedPath><affectedPath>postprocessing/plotgen/cases/README</affectedPath><affectedPath>compile.py</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><commitId>f146255f50732c445ccbd012ca45888a9ce44d0b</commitId><timestamp>1777938051000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Cmake netcdf fallback (#1294)

* WIP: Compile w/o NetCDF

- Currently failing from a 'version' error, but actually it's because the fortran cmake is testing a small c program to test functionality, but the C hasn't been built yet

* CMake configuration phase works for netcdf, but build fails

* Compiles almost all the way and has the executable clubb_standalone

* No errors to compile w/o netcdf

- CMake configure and build phase ran with no errors

- Clubb was functional after the build

* Fixed to work as a fresh user

- Worked with no netcdf and a clean clone of this branch

* Added blank line

* Got compile.py to run on gfortran, nvhpc, ifort, ifx

 - Needs testing for with/without netcdf pre-installed

* Fixed compiler logic

 - Basically, if not matching the default (gfortran) netcdf, and can't find a different one, then go from scratch.

* Small bug fixes

* Cleaned up code, all lines less than 100 characters

* Commented through code

* Removing redundancy

* Fixes to make -gptl flag work

* Improved comments, replaced .bash with .py in readme's
</comment><date>2026-05-04 18:40:51 -0500</date><id>f146255f50732c445ccbd012ca45888a9ce44d0b</id><msg>Cmake netcdf fallback (#1294)</msg><path><editType>edit</editType><file>postprocessing/plotgen/cases/README</file></path><path><editType>edit</editType><file>src/CMakeLists.txt</file></path><path><editType>edit</editType><file>run_scripts/README</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>README</file></path><path><editType>edit</editType><file>cmake/deps/NetcdfFortranDependency.cmake</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>521</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/521/</url></nextBuild><previousBuild><number>519</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/519/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>519</buildNumber><marked><SHA1>2bac827cd3b91b3437ca62918583938237c9fd03</SHA1><branch><SHA1>2bac827cd3b91b3437ca62918583938237c9fd03</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>2bac827cd3b91b3437ca62918583938237c9fd03</SHA1><branch><SHA1>2bac827cd3b91b3437ca62918583938237c9fd03</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>2bac827cd3b91b3437ca62918583938237c9fd03</SHA1><branch><SHA1>2bac827cd3b91b3437ca62918583938237c9fd03</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#519</displayName><duration>1720028</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #519</fullDisplayName><id>519</id><keepLog>false</keepLog><number>519</number><queueId>3044</queueId><result>SUCCESS</result><timestamp>1775723227878</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/519/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/string_conversion.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/parameters_tunable.py</affectedPath><commitId>a142b32188f7388ce905ee833c55abff306fb812</commitId><timestamp>1775676953000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Small fix to python api string handling. There was an issue that crept up with this when running on mitch - this should make the string/char array handling more robust
</comment><date>2026-04-08 14:35:53 -0500</date><id>a142b32188f7388ce905ee833c55abff306fb812</id><msg>Small fix to python api string handling. There was an issue that crept up with this when running on mitch - this should make the string/char array handling more robust</msg><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/string_conversion.py</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_python/CLUBB_core/parameters_tunable.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>clubb_python_api/tests/test_hello_world.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/stats_netcdf_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_string_conversion.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_t_in_k_module.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/parameters_tunable_wrapper.F90</affectedPath><commitId>dc7d6ed92e27f14e4e64769a67a09a63b2783310</commitId><timestamp>1775681164000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Python update (#1291)

* Possibly better string fix for python API

* Little test changes
</comment><date>2026-04-08 15:46:04 -0500</date><id>dc7d6ed92e27f14e4e64769a67a09a63b2783310</id><msg>Python update (#1291)</msg><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/parameters_tunable_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_string_conversion.py</file></path><path><editType>delete</editType><file>clubb_python_api/tests/test_hello_world.py</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/stats_netcdf_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_t_in_k_module.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/CMakeLists.txt</affectedPath><commitId>0ab371ba28cf647f279567c04786ddc925aa5a87</commitId><timestamp>1775682381000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Remove line to test python scripts
</comment><date>2026-04-08 16:06:21 -0500</date><id>0ab371ba28cf647f279567c04786ddc925aa5a87</id><msg>Remove line to test python scripts</msg><path><editType>edit</editType><file>src/CLUBB_core/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/CMakeLists.txt</affectedPath><commitId>2bac827cd3b91b3437ca62918583938237c9fd03</commitId><timestamp>1775696339000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Add blank line to test python scripts
</comment><date>2026-04-08 19:58:59 -0500</date><id>2bac827cd3b91b3437ca62918583938237c9fd03</id><msg>Add blank line to test python scripts</msg><path><editType>edit</editType><file>src/CLUBB_core/CMakeLists.txt</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>520</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/520/</url></nextBuild><previousBuild><number>518</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/518/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>518</buildNumber><marked><SHA1>475e7687de4f2ba141334ba0046a2175b611eb75</SHA1><branch><SHA1>475e7687de4f2ba141334ba0046a2175b611eb75</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>475e7687de4f2ba141334ba0046a2175b611eb75</SHA1><branch><SHA1>475e7687de4f2ba141334ba0046a2175b611eb75</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>475e7687de4f2ba141334ba0046a2175b611eb75</SHA1><branch><SHA1>475e7687de4f2ba141334ba0046a2175b611eb75</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#518</displayName><duration>1004334</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #518</fullDisplayName><id>518</id><keepLog>false</keepLog><number>518</number><queueId>2956</queueId><result>SUCCESS</result><timestamp>1775636828404</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/518/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/stats_netcdf.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/stats_netcdf_wrapper.F90</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><commitId>4f6fb3897c84478095520db9d61b33b888711b3d</commitId><timestamp>1775592422000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Adding err_info back to stats_end_timestep_api
</comment><date>2026-04-07 15:07:02 -0500</date><id>4f6fb3897c84478095520db9d61b33b888711b3d</id><msg>Adding err_info back to stats_end_timestep_api</msg><path><editType>edit</editType><file>src/CLUBB_core/stats_netcdf.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/stats_netcdf_wrapper.F90</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/mono_flux_limiter.F90</affectedPath><affectedPath>run_scripts/test_monoflux_limiter_GPU.py</affectedPath><commitId>3f405544d0d3692a822e9f58ae679938d62c6de1</commitId><timestamp>1775594520000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Fixing monoflux limiter test - there was a comment that was split across lines, which broke the test
</comment><date>2026-04-07 15:42:00 -0500</date><id>3f405544d0d3692a822e9f58ae679938d62c6de1</id><msg>Fixing monoflux limiter test - there was a comment that was split across lines, which broke the test</msg><path><editType>edit</editType><file>src/CLUBB_core/mono_flux_limiter.F90</file></path><path><editType>edit</editType><file>run_scripts/test_monoflux_limiter_GPU.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/stats_netcdf.F90</affectedPath><commitId>15adc8422c4d13004afb02c87d35a590361ead7e</commitId><timestamp>1775594819000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Removing unused variable
</comment><date>2026-04-07 15:46:59 -0500</date><id>15adc8422c4d13004afb02c87d35a590361ead7e</id><msg>Removing unused variable</msg><path><editType>edit</editType><file>src/CLUBB_core/stats_netcdf.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>compile.py</affectedPath><commitId>475e7687de4f2ba141334ba0046a2175b611eb75</commitId><timestamp>1775594870000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Adding -fresh flag to compile.py to remove the previous build before compiling
</comment><date>2026-04-07 15:47:50 -0500</date><id>475e7687de4f2ba141334ba0046a2175b611eb75</id><msg>Adding -fresh flag to compile.py to remove the previous build before compiling</msg><path><editType>edit</editType><file>compile.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>519</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/519/</url></nextBuild><previousBuild><number>517</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/517/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>517</buildNumber><marked><SHA1>adfc58ffc5ad4d9bef00fc5e766b6d5a52079d8e</SHA1><branch><SHA1>adfc58ffc5ad4d9bef00fc5e766b6d5a52079d8e</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>adfc58ffc5ad4d9bef00fc5e766b6d5a52079d8e</SHA1><branch><SHA1>adfc58ffc5ad4d9bef00fc5e766b6d5a52079d8e</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>adfc58ffc5ad4d9bef00fc5e766b6d5a52079d8e</SHA1><branch><SHA1>adfc58ffc5ad4d9bef00fc5e766b6d5a52079d8e</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#517</displayName><duration>1197888</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #517</fullDisplayName><id>517</id><keepLog>false</keepLog><number>517</number><queueId>2836</queueId><result>SUCCESS</result><timestamp>1775550428131</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/517/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>License.txt</affectedPath><commitId>9d56b4d0695c86980a6bfaaf9567449dbc4ccabd</commitId><timestamp>1775500093000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Space change for little test
</comment><date>2026-04-06 13:28:13 -0500</date><id>9d56b4d0695c86980a6bfaaf9567449dbc4ccabd</id><msg>Space change for little test</msg><path><editType>edit</editType><file>License.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/advance_wp2_wp3_module.F90</affectedPath><affectedPath>src/Microphys/KK_microphys/CMakeLists.txt</affectedPath><affectedPath>src/Microphys/parameters_microphys.F90</affectedPath><affectedPath>cmake/utils/CompilerWarnings.cmake</affectedPath><affectedPath>src/CLUBB_core/mean_adv.F90</affectedPath><affectedPath>src/CLUBB_core/pdf_utilities.F90</affectedPath><affectedPath>src/CLUBB_core/pdf_parameter_module.F90</affectedPath><affectedPath>src/CLUBB_core/sfc_varnce_module.F90</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>src/CLUBB_core/sponge_layer_damping.F90</affectedPath><affectedPath>src/CLUBB_core/mixing_length.F90</affectedPath><affectedPath>src/CLUBB_core/model_flags.F90</affectedPath><affectedPath>utilities/check_for_missing_threadprivate.py</affectedPath><affectedPath>src/G_unit_test_types/pdf_parameter_tests.F90</affectedPath><affectedPath>src/CLUBB_core/penta_bicgstab_solver.F90</affectedPath><affectedPath>src/CLUBB_core/parameters_tunable.F90</affectedPath><affectedPath>src/generalized_grid_test.F90</affectedPath><affectedPath>src/Microphys/Morrison_microphys/CMakeLists.txt</affectedPath><affectedPath>src/SILHS/latin_hypercube_driver_module.F90</affectedPath><affectedPath>src/Microphys/morrison_microphys_module.F90</affectedPath><affectedPath>src/Microphys/KK_microphys/parameters_KK.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xp2_xpyp_module.F90</affectedPath><affectedPath>src/CLUBB_core/clubb_api_module.F90</affectedPath><affectedPath>src/Lapack/Lapack_shared/CMakeLists.txt</affectedPath><affectedPath>src/G_unit_test_types/rev_direction_grid_test.F90</affectedPath><affectedPath>src/CLUBB_core/interpolation.F90</affectedPath><affectedPath>src/CLUBB_core/stats_netcdf.F90</affectedPath><affectedPath>src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90</affectedPath><affectedPath>src/Benchmark_cases/dycoms2_rf02.F90</affectedPath><affectedPath>src/Microphys/pdf_hydromet_microphys_wrapper.F90</affectedPath><affectedPath>src/Benchmark_cases/mpace_b.F90</affectedPath><affectedPath>src/CLUBB_core/hydromet_pdf_parameter_module.F90</affectedPath><affectedPath>compile.py</affectedPath><affectedPath>src/Radiation/parameters_radiation.F90</affectedPath><affectedPath>src/G_unit_test_types/spurious_source_test.F90</affectedPath><affectedPath>utilities/README</affectedPath><affectedPath>src/Microphys/CMakeLists.txt</affectedPath><affectedPath>src/SILHS/silhs_api_module.F90</affectedPath><affectedPath>src/G_unit_test_types/read_corr_mtx_test.F90</affectedPath><affectedPath>src/CLUBB_core/numerical_check.F90</affectedPath><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><affectedPath>src/Microphys/COAMPS_microphys/CMakeLists.txt</affectedPath><affectedPath>src/jacobian.F90</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>src/CLUBB_core/corr_varnce_module.F90</affectedPath><affectedPath>src/Input_fields/recl.inc</affectedPath><affectedPath>src/CLUBB_core/fill_holes.F90</affectedPath><affectedPath>src/Benchmark_cases/neutral_case.F90</affectedPath><affectedPath>src/Microphys/microphys_driver.F90</affectedPath><affectedPath>src/Radiation/radiation_module.F90</affectedPath><affectedPath>src/Benchmark_cases/lba.F90</affectedPath><affectedPath>compile/compile.bash</affectedPath><affectedPath>src/Radiation/simple_rad_module.F90</affectedPath><affectedPath>src/CLUBB_core/pdf_closure_module.F90</affectedPath><affectedPath>src/Microphys/KK_microphys/KK_upscaled_turbulent_sed.F90</affectedPath><affectedPath>src/CLUBB_core/grid_class.F90</affectedPath><affectedPath>src/Radiation/radiation_variables_module.F90</affectedPath><affectedPath>src/CLUBB_core/array_index.F90</affectedPath><affectedPath>src/Benchmark_cases/wangara.F90</affectedPath><affectedPath>src/Benchmark_cases/time_dependent_input.F90</affectedPath><affectedPath>src/G_unit_test_types/tuner_tests.F90</affectedPath><affectedPath>src/CLUBB_core/error_code.F90</affectedPath><affectedPath>src/clubb_tuner.F90</affectedPath><affectedPath>src/Microphys/advance_microphys_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_windm_edsclrm_module.F90</affectedPath><affectedPath>src/clubb_driver_test.F90</affectedPath><affectedPath>src/CLUBB_core/diffusion.F90</affectedPath><affectedPath>src/Lapack/Lapack_double/CMakeLists.txt</affectedPath><affectedPath>src/Microphys/estimate_scm_microphys_module.F90</affectedPath><affectedPath>src/CLUBB_core/clip_explicit.F90</affectedPath><affectedPath>src/Benchmark_cases/ekman.F90</affectedPath><affectedPath>src/Benchmark_cases/gabls2.F90</affectedPath><affectedPath>src/SILHS/latin_hypercube_arrays.F90</affectedPath><affectedPath>src/Microphys/coamps_microphys_driver_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xm_wpxp_module.F90</affectedPath><affectedPath>src/Benchmark_cases/bomex.F90</affectedPath><affectedPath>src/CLUBB_core/setup_clubb_pdf_params.F90</affectedPath><affectedPath>src/Benchmark_cases/prescribe_forcings.F90</affectedPath><affectedPath>src/Radiation/BUGSrad/CMakeLists.txt</affectedPath><affectedPath>src/Lapack/Lapack_single/CMakeLists.txt</affectedPath><affectedPath>src/CLUBB_core/grid_adaptation_module.F90</affectedPath><affectedPath>src/G_unit_test_types/fill_holes_tests.F90</affectedPath><affectedPath>src/Microphys/KK_microphys_module.F90</affectedPath><affectedPath>utilities/CLUBBStandardsCheck.py</affectedPath><affectedPath>src/CLUBB_core/stats_clubb_utilities.F90</affectedPath><affectedPath>src/Microphys/microphys_interface.inc</affectedPath><affectedPath>src/CLUBB_core/mono_flux_limiter.F90</affectedPath><affectedPath>src/CLUBB_core/advance_helper_module.F90</affectedPath><affectedPath>src/Benchmark_cases/dycoms2_rf01.F90</affectedPath><affectedPath>src/Benchmark_cases/rico.F90</affectedPath><affectedPath>src/Benchmark_cases/mpace_a.F90</affectedPath><affectedPath>src/Microphys/SCM_Activation/CMakeLists.txt</affectedPath><affectedPath>src/Microphys/gfdl_activation.F90</affectedPath><affectedPath>src/CLUBB_core/constants_clubb.F90</affectedPath><affectedPath>src/Microphys/silhs_category_variance_module.F90</affectedPath><affectedPath>src/error.F90</affectedPath><affectedPath>src/CLUBB_core/err_info_type_module.F90</affectedPath><commitId>1e25b23661f4235b8a0484bf76bc542cc1ab5f6d</commitId><timestamp>1775502171000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Standards fix (#1288)

* Fixing code to comply with clubb standards and making standards check output a little nicer

* Fixing unused variable compiler errors

* Removing ifdef GFDL option

* A bit of cleanup

* Little GPU fix

* Making the threadprivate check part of the standards, little script improvements, and adding more code to the standards check and also fixing it

* Adding missed cmake files

* Improving various subroutine edits
</comment><date>2026-04-06 14:02:51 -0500</date><id>1e25b23661f4235b8a0484bf76bc542cc1ab5f6d</id><msg>Standards fix (#1288)</msg><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>edit</editType><file>src/G_unit_test_types/tuner_tests.F90</file></path><path><editType>edit</editType><file>compile/compile.bash</file></path><path><editType>edit</editType><file>src/Benchmark_cases/ekman.F90</file></path><path><editType>edit</editType><file>src/Microphys/KK_microphys/parameters_KK.F90</file></path><path><editType>edit</editType><file>src/Microphys/morrison_microphys_module.F90</file></path><path><editType>edit</editType><file>src/Radiation/simple_rad_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/clubb_api_module.F90</file></path><path><editType>edit</editType><file>src/Microphys/coamps_microphys_driver_module.F90</file></path><path><editType>edit</editType><file>src/Lapack/Lapack_shared/CMakeLists.txt</file></path><path><editType>edit</editType><file>utilities/CLUBBStandardsCheck.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_windm_edsclrm_module.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/neutral_case.F90</file></path><path><editType>edit</editType><file>src/Microphys/parameters_microphys.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/interpolation.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/mpace_b.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/mixing_length.F90</file></path><path><editType>edit</editType><file>src/G_unit_test_types/fill_holes_tests.F90</file></path><path><editType>edit</editType><file>src/Microphys/pdf_hydromet_microphys_wrapper.F90</file></path><path><editType>edit</editType><file>src/clubb_tuner.F90</file></path><path><editType>edit</editType><file>src/SILHS/silhs_api_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/penta_bicgstab_solver.F90</file></path><path><editType>edit</editType><file>src/G_unit_test_types/spurious_source_test.F90</file></path><path><editType>edit</editType><file>src/Microphys/microphys_driver.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_wp2_wp3_module.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/bomex.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/hydromet_pdf_parameter_module.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/dycoms2_rf02.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/pdf_closure_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/pdf_utilities.F90</file></path><path><editType>edit</editType><file>src/Microphys/KK_microphys/KK_upscaled_turbulent_sed.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/grid_class.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/numerical_check.F90</file></path><path><editType>edit</editType><file>src/G_unit_test_types/rev_direction_grid_test.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/parameters_tunable.F90</file></path><path><editType>edit</editType><file>src/Lapack/Lapack_double/CMakeLists.txt</file></path><path><editType>edit</editType><file>src/CLUBB_core/model_flags.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/time_dependent_input.F90</file></path><path><editType>edit</editType><file>src/Microphys/advance_microphys_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/clip_explicit.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xp2_xpyp_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/sponge_layer_damping.F90</file></path><path><editType>edit</editType><file>src/Lapack/Lapack_single/CMakeLists.txt</file></path><path><editType>edit</editType><file>src/CLUBB_core/diffusion.F90</file></path><path><editType>edit</editType><file>src/Microphys/KK_microphys_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xm_wpxp_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_clubb_utilities.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/setup_clubb_pdf_params.F90</file></path><path><editType>edit</editType><file>src/Microphys/gfdl_activation.F90</file></path><path><editType>edit</editType><file>src/Microphys/microphys_interface.inc</file></path><path><editType>edit</editType><file>src/CLUBB_core/fill_holes.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/rico.F90</file></path><path><editType>edit</editType><file>src/Microphys/COAMPS_microphys/CMakeLists.txt</file></path><path><editType>edit</editType><file>utilities/README</file></path><path><editType>edit</editType><file>src/CLUBB_core/mono_flux_limiter.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/lba.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_helper_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path><path><editType>edit</editType><file>src/Radiation/radiation_module.F90</file></path><path><editType>add</editType><file>cmake/utils/CompilerWarnings.cmake</file></path><path><editType>edit</editType><file>src/jacobian.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_netcdf.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/error_code.F90</file></path><path><editType>edit</editType><file>src/Radiation/parameters_radiation.F90</file></path><path><editType>edit</editType><file>src/clubb_driver_test.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/dycoms2_rf01.F90</file></path><path><editType>edit</editType><file>src/Microphys/estimate_scm_microphys_module.F90</file></path><path><editType>edit</editType><file>src/Radiation/radiation_variables_module.F90</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/corr_varnce_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/pdf_parameter_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/sfc_varnce_module.F90</file></path><path><editType>edit</editType><file>src/Radiation/BUGSrad/CMakeLists.txt</file></path><path><editType>edit</editType><file>src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/gabls2.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/mpace_a.F90</file></path><path><editType>edit</editType><file>src/SILHS/latin_hypercube_arrays.F90</file></path><path><editType>delete</editType><file>utilities/check_for_missing_threadprivate.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/array_index.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/err_info_type_module.F90</file></path><path><editType>edit</editType><file>src/error.F90</file></path><path><editType>edit</editType><file>src/Microphys/CMakeLists.txt</file></path><path><editType>edit</editType><file>src/CLUBB_core/constants_clubb.F90</file></path><path><editType>edit</editType><file>src/Microphys/silhs_category_variance_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/grid_adaptation_module.F90</file></path><path><editType>edit</editType><file>src/G_unit_test_types/pdf_parameter_tests.F90</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>edit</editType><file>src/Input_fields/recl.inc</file></path><path><editType>edit</editType><file>src/Microphys/KK_microphys/CMakeLists.txt</file></path><path><editType>edit</editType><file>src/generalized_grid_test.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/mean_adv.F90</file></path><path><editType>edit</editType><file>src/SILHS/latin_hypercube_driver_module.F90</file></path><path><editType>edit</editType><file>src/G_unit_test_types/read_corr_mtx_test.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/wangara.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/prescribe_forcings.F90</file></path><path><editType>edit</editType><file>src/Microphys/Morrison_microphys/CMakeLists.txt</file></path><path><editType>edit</editType><file>src/Microphys/SCM_Activation/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_python_driver/README.md</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/mean_adv.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_corr_varnce_module.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/lapack_interfaces_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/hydrostatic_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/lapack_interfaces.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/mixing_length.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_nc_ncn_eqns.py</affectedPath><affectedPath>CMakeLists.txt</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/adg1_adg2_3d_luhar_pdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/new_tsdadg_pdf.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_transport.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/mono_flux_limiter_wrapper.F90</affectedPath><affectedPath>clubb_python_driver/io/__init__.py</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/config_flags_converter.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/sigma_sqd_w_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_windm_edsclrm_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_pos_definite_module.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/pos_definite_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/array_index.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/pdf_closure_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_xm_wpxp_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_udt_return_contract.py</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/err_info.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/adg1_adg2_3d_luhar_pdf_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/remapping_module.py</affectedPath><affectedPath>clubb_python_driver/clubb_case_initalization.py</affectedPath><affectedPath>clubb_jax/io/__init__.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/nc_ncn_eqns_wrapper.F90</affectedPath><affectedPath>dash_app/run_tab/callbacks_runs.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/fill_holes_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/__init__.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/pdf_utilities.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_sponge.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_lapack_wrap.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/netcdf_stub.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_luhar.py</affectedPath><affectedPath>clubb_python_api/clubb_python/prescribe_forcings.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/lapack_wrap.py</affectedPath><affectedPath>jenkins_tests/clubb_driver_test/Jenkinsfile</affectedPath><affectedPath>clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/numerical_check.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_calc_roots.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_helper.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/corr_varnce_module.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/new_pdf.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_skx.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_new_pdf.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/corr_varnce_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/new_hybrid_pdf_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/grid_class_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/sclr_idx_converter.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_new_hybrid_pdf.py</affectedPath><affectedPath>clubb_python_api/.gitignore</affectedPath><affectedPath>dash_app/run_tab/runtime.py</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/nu_vert_res_dep.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_mono_flux.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xp3.py</affectedPath><affectedPath>clubb_python_driver/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/sclr_idx.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xp3.py</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/sponge_layer_damping_wrapper.F90</affectedPath><affectedPath>clubb_jax/io/sounding.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_case.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_remap.py</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/config_flags.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/model_flags_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/file_functions.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/err_info_type_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/tridiag_lu_solvers_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/diagnose_correlations_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/README.md</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/fill_holes.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/calendar.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf_main.py</affectedPath><affectedPath>clubb_python_driver/advance_clubb_core.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_error_code.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_index_mapping.py</affectedPath><affectedPath>clubb_python_driver/radiation.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</affectedPath><affectedPath>clubb_python_api/tests/test_hello_world.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/sfc_varnce_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_windm_edsclrm.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</affectedPath><affectedPath>clubb_python_api/tests/conftest.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/lapack_wrap_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/diffusion_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/radiation_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_init_pressure.py</affectedPath><affectedPath>clubb_python_driver/io/sounding.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/matrix_solver_wrapper.py</affectedPath><affectedPath>clubb_python_api/tests/test_advance_core_subs.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_numerical_check.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/t_in_k_module.py</affectedPath><affectedPath>clubb_python_api/tests/test_stats.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/prescribe_forcings_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/bicgstab_solvers_wrapper.F90</affectedPath><affectedPath>clubb_python_driver/io/surface.py</affectedPath><affectedPath>clubb_jax/advance_clubb_core.py</affectedPath><affectedPath>clubb_python_api/tests/test_stats_registry.in</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/clip_explicit.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/sponge_layer_damping.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/pdf_parameter_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_splat.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/pdf_closure.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/parameters_tunable.py</affectedPath><affectedPath>clubb_jax/io/grid_file.py</affectedPath><affectedPath>clubb_python_driver/clubb_standalone.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/pdf_parameter_module.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_matrix_operations.py</affectedPath><affectedPath>clubb_python_api/run_pytests.sh</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_clubb_core_module_wrapper.F90</affectedPath><affectedPath>clubb_jax/__init__.py</affectedPath><affectedPath>clubb_python_api/docs/api_call_flow.svg</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/model_flags.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_clubb_core.py</affectedPath><affectedPath>clubb_jax/clubb_case_initalization.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_file_functions.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/clip_explicit_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_xp2_xpyp_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/grid_class_converter.py</affectedPath><affectedPath>run_scripts/run_jax_vs_fortran_cases.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/tridiag_lu_solver.py</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>clubb_python_api/tests/test_python_port_api_coverage.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/ly93_pdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/mono_flux_limiter.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/new_hybrid_pdf_main_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_matrix_solver_wrapper.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_lapack_interfaces.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_utils.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_helper_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/sigma_sqd_w_module.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/remapping_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/stats_clubb_utilities.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/parameters_tunable_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/calc_roots.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_mixing_length.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/stats_netcdf_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/ly93_pdf_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/common.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_sfc_varnce.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/mean_adv_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_pdf_closure.py</affectedPath><affectedPath>clubb_python_driver/clubb_constants.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/advance_xm_wpxp.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/interpolation_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/penta_lu_solver.py</affectedPath><affectedPath>clubb_jax/JAX_CONVERSION_PLAN.md</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/saturation.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_pdf_utils.py</affectedPath><affectedPath>clubb_python_driver/io/grid_file.py</affectedPath><affectedPath>clubb_python_driver/__init__.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/saturation_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/diffusion.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/err_info_type_module.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_stats_accumulate.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/T_in_K_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/pos_definite_module.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/calendar_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_precipitation_fraction.py</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/pdf_params_converter.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_tridiag_lu_solvers.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_ly93.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/error_code.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/precipitation_fraction_wrapper.F90</affectedPath><affectedPath>run_scripts/run_python_vs_fortran_cases.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/matrix_solver_wrapper_wrapper.F90</affectedPath><affectedPath>compile.py</affectedPath><affectedPath>clubb_jax/clubb_standalone.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/turbulent_adv_pdf_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/pdf_utilities_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/new_pdf_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_init_sequence.py</affectedPath><affectedPath>clubb_python_api/requirements.txt</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_turbulent_adv_pdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/hm_metadata.py</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/nu_vert_res_dep_converter.py</affectedPath><affectedPath>clubb_jax/io/namelist.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_penta_lu_solvers.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_meta.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_core.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/derived_type_storage.F90</affectedPath><affectedPath>src/Radiation/simple_rad_module.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/clubb_api.py</affectedPath><affectedPath>clubb_jax/advance_clubb_to_end.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_interpolation.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/new_pdf_main_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/precipitation_fraction.py</affectedPath><affectedPath>clubb_jax/clubb_constants.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/matrix_operations_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/penta_bicgstab_solver.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/grid_class.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/mixing_length_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_saturation.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/stats_clubb_utilities_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/index_mapping.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/diagnose_correlations_module.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_pdf_closure_driver.py</affectedPath><affectedPath>jenkins_tests/clubb_python_test/Jenkinsfile</affectedPath><affectedPath>clubb_python_driver/io/namelist.py</affectedPath><affectedPath>clubb_jax/radiation.py</affectedPath><affectedPath>clubb_python_api/tests/test_udt_roundtrip.py</affectedPath><affectedPath>clubb_python_api/clubb_f2py.pyf</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/file_functions_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/turbulent_adv_pdf.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/calc_pressure.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/error_code_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/new_tsdadg_pdf_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/calc_pressure_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/err_info_converter.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_xp3_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/skx_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/grid_class.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/calc_roots_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/sfc_varnce_module.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/penta_lu_solvers_wrapper.F90</affectedPath><affectedPath>clubb_python_api/tests/test_argument_contract_audit.py</affectedPath><affectedPath>run_scripts/run_scm_all.py</affectedPath><affectedPath>dash_app/plot_tab/layout.py</affectedPath><affectedPath>clubb_python_api/CMakeLists.txt</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_bicgstab_solvers.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/nc_ncn_eqns.py</affectedPath><affectedPath>clubb_jax/io/surface.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_diagnose_correlations_module.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/interpolation.py</affectedPath><affectedPath>clubb_python_api/clubb_python/__init__.py</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/__init__.py</affectedPath><affectedPath>clubb_python_api/clubb_python/radiation.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/matrix_operations.py</affectedPath><affectedPath>run_scripts/run_bindiff_all.py</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/new_pdf_main.py</affectedPath><affectedPath>clubb_python_api/tests/test_call_tree_new_tsdadg.py</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/numerical_check_wrapper.F90</affectedPath><affectedPath>clubb_python_api/clubb_python/CLUBB_core/skx_module.py</affectedPath><affectedPath>clubb_python_api/clubb_python/derived_types/pdf_params.py</affectedPath><commitId>14926dd026f178cacec4336a6389e3c59c2eb4d4</commitId><timestamp>1775506956000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Clubb f2py (#1274)

* Initial python clubb driver. Currently BFB for bomex. This is using a hugely simplified clubb_driver currently.

* Fixes

* Making work with cmake, and generalizing for more cases to work (arm, bomex, wangara tested and correct)

* Lots of new interfaces, not all complete though.

* Bit better structure and read grid_class.py

* Improvements, mainly to pdf_closure stack

* Making UDTs handled more correctly - lots of python interfaces were missing them as aguements, which is needed for pushing/pulling

* Better pdf_params (implicit too) python type

* Various cleanup and simplifications

* Fixing up argument list orders

* Breakup up clubb driver and making real radiation call

* Improving run_bindiff script

* Small improvements

* Folder restructuring

* Fixing sclr/edsclr code

* Small fixes

* Better output directory config and python vs fortran driver test script

* Various small improvements to run scripts and dash app

* Improvements to sclr/edsclr/hydromet handling using a _transport variable. Most cases (3/8) in run_python_vs_fortran_cases.py matching now with multiple columns.

* Various cleanup

* Various improvements and cleanup

* Sync f2py branch with master radiation changes

* Fixing things after merge conflict

* Commenting run_bindiff_all better

* Small changes and rough draft of README

* Improvements to various things

* Various improvements and adding a python converted advance_clubb_core for fun

* Adding more apis for missed things and a nice script which checks for missed things

* Stuctural changes and better READMEs

* Little fixes

* Aligning inouts/outs

* Renaming jenkins test

* Adding script

* Little tweaks

* Small updates

* Better readme and api diagram

* Better readme and api diagram again

* Adding clubb_jax directory, just a copy of the python driver right now with some instructions/tips for the conversion process

* Final little changes to readme and renaming various things
</comment><date>2026-04-06 15:22:36 -0500</date><id>14926dd026f178cacec4336a6389e3c59c2eb4d4</id><msg>Clubb f2py (#1274)</msg><path><editType>add</editType><file>clubb_python_api/CMakeLists.txt</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/__init__.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xm_wpxp.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/mixing_length.py</file></path><path><editType>add</editType><file>clubb_jax/io/grid_file.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/sponge_layer_damping.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/derived_types/sclr_idx_converter.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_udt_return_contract.py</file></path><path><editType>edit</editType><file>dash_app/plot_tab/callbacks_case.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/diagnose_correlations_module.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/derived_types/nu_vert_res_dep_converter.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_matrix_operations.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/pdf_closure.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/radiation_module_wrapper.F90</file></path><path><editType>edit</editType><file>CMakeLists.txt</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_advance_core.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/prescribe_forcings_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/pdf_utilities.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/new_tsdadg_pdf_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/new_pdf_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_transport.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_f2py.pyf</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_interpolation.py</file></path><path><editType>add</editType><file>clubb_python_driver/clubb_constants.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_pdf_utils.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/calc_pressure.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/index_mapping.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/pdf_utilities_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/matrix_operations.py</file></path><path><editType>add</editType><file>clubb_python_driver/clubb_standalone.py</file></path><path><editType>add</editType><file>clubb_jax/radiation.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/matrix_solver_wrapper.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/calendar.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/nc_ncn_eqns_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/lapack_wrap_wrapper.F90</file></path><path><editType>add</editType><file>clubb_jax/io/namelist.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_xp3_module_wrapper.F90</file></path><path><editType>edit</editType><file>dash_app/plot_tab/layout.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_sponge.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_error_code.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/calc_roots.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_numerical_check.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_xp2_xpyp_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_jax/JAX_CONVERSION_PLAN.md</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/skx_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_utils.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_helper_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_udt_roundtrip.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/precipitation_fraction.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/pos_definite_module.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/derived_types/nu_vert_res_dep.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_pdf_closure.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_saturation.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/__init__.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/saturation_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_advance_core_subs.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_lapack_interfaces.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_index_mapping.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/hydrostatic_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_python_port_api_coverage.py</file></path><path><editType>add</editType><file>clubb_python_driver/advance_clubb_to_end.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/derived_types/pdf_params.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/tridiag_lu_solvers_wrapper.F90</file></path><path><editType>add</editType><file>clubb_jax/io/sounding.py</file></path><path><editType>add</editType><file>clubb_python_driver/io/namelist.py</file></path><path><editType>add</editType><file>clubb_jax/io/__init__.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/array_index.py</file></path><path><editType>add</editType><file>clubb_jax/advance_clubb_core.py</file></path><path><editType>add</editType><file>clubb_python_driver/advance_clubb_core.py</file></path><path><editType>add</editType><file>clubb_python_driver/__init__.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/mono_flux_limiter_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_driver/io/sounding.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/parameters_tunable.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/derived_types/err_info.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_helper.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/T_in_K_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/calc_pressure_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/error_code_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/parameters_tunable_wrapper.F90</file></path><path><editType>add</editType><file>run_scripts/run_python_vs_fortran_cases.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/t_in_k_module.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/bicgstab_solvers_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_mixing_length.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/new_pdf.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/clubb_api.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_new_hybrid_pdf.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/derived_types/grid_class.py</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>add</editType><file>clubb_jax/clubb_standalone.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/sponge_layer_damping_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/file_functions_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_driver/radiation.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/model_flags.py</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_windm_edsclrm.py</file></path><path><editType>add</editType><file>clubb_python_driver/clubb_case_initalization.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_advance_xp3.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/saturation.py</file></path><path><editType>add</editType><file>clubb_jax/README.md</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_tridiag_lu_solvers.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_new_tsdadg.py</file></path><path><editType>add</editType><file>clubb_python_api/docs/api_call_flow.svg</file></path><path><editType>add</editType><file>clubb_python_api/run_pytests.sh</file></path><path><editType>add</editType><file>clubb_python_driver/io/grid_file.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/sigma_sqd_w_module_wrapper.F90</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_runs.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_argument_contract_audit.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/runtime.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_hello_world.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/derived_types/err_info_converter.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/grid_class_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/calendar_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/README.md</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/derived_types/pdf_params_converter.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_nc_ncn_eqns.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/err_info_type_module.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/netcdf_stub.F90</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/pos_definite_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/mean_adv_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_precipitation_fraction.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/mean_adv.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_xp3.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/clip_explicit_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_luhar.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/new_tsdadg_pdf.py</file></path><path><editType>add</editType><file>jenkins_tests/clubb_python_test/Jenkinsfile</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/grid_class.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/penta_lu_solver.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/derived_types/config_flags.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/remapping_module.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/new_hybrid_pdf_main_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/remapping_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/nc_ncn_eqns.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/diagnose_correlations_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_bicgstab_solvers.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/turbulent_adv_pdf_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_skx.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm_all.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/tridiag_lu_solver.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/ly93_pdf_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/sfc_varnce_module.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/derived_types/sclr_idx.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/pdf_parameter_module.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_lapack_wrap.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_stats_accumulate.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/derived_types/config_flags_converter.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_driver_test/Jenkinsfile</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_meta.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/pdf_parameter_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/new_pdf_main.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/numerical_check.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/stats_clubb_utilities_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_windm_edsclrm_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/penta_bicgstab_solver.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/derived_types/hm_metadata.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/mixing_length_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_pos_definite_module.py</file></path><path><editType>edit</editType><file>src/Radiation/simple_rad_module.F90</file></path><path><editType>add</editType><file>clubb_jax/clubb_constants.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/advance_clubb_core.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_init_pressure.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/fill_holes_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_splat.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/corr_varnce_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_sfc_varnce.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/matrix_operations_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_calc_roots.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/pdf_closure_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/precipitation_fraction_wrapper.F90</file></path><path><editType>add</editType><file>clubb_jax/io/surface.py</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_all.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/adg1_adg2_3d_luhar_pdf_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/clip_explicit.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_stats.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_pdf_closure_driver.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/interpolation.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/diffusion_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_corr_varnce_module.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/derived_types/__init__.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/numerical_check_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_ly93.py</file></path><path><editType>add</editType><file>clubb_python_driver/io/surface.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_matrix_solver_wrapper.py</file></path><path><editType>add</editType><file>clubb_python_api/.gitignore</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_turbulent_adv_pdf.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/ly93_pdf.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/matrix_solver_wrapper_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/stats_netcdf_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/calc_roots_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py</file></path><path><editType>add</editType><file>run_scripts/run_jax_vs_fortran_cases.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/turbulent_adv_pdf.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/lapack_wrap.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/prescribe_forcings.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/diffusion.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/lapack_interfaces.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/derived_types/common.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/penta_lu_solvers_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_file_functions.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_remap.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/new_pdf_main_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/derived_types/grid_class_converter.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_diagnose_correlations_module.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_stats_registry.in</file></path><path><editType>add</editType><file>clubb_python_driver/io/__init__.py</file></path><path><editType>add</editType><file>clubb_jax/advance_clubb_to_end.py</file></path><path><editType>add</editType><file>clubb_jax/clubb_case_initalization.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/fill_holes.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/mono_flux_limiter.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_init_sequence.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/skx_module.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/sfc_varnce_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/sigma_sqd_w_module.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/derived_type_storage.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_mono_flux.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf_main.py</file></path><path><editType>add</editType><file>clubb_python_driver/README.md</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_xm_wpxp_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/new_hybrid_pdf_wrapper.F90</file></path><path><editType>add</editType><file>clubb_jax/__init__.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_new_pdf.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_penta_lu_solvers.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/stats_clubb_utilities.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/file_functions.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/interpolation_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/corr_varnce_module.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_clubb_core_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/radiation.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/lapack_interfaces_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/model_flags_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/tests/conftest.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/error_code.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/adg1_adg2_3d_luhar_pdf.py</file></path><path><editType>add</editType><file>clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf.py</file></path><path><editType>add</editType><file>clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py</file></path><path><editType>add</editType><file>clubb_python_api/f2py_fortran_wrappers/err_info_type_module_wrapper.F90</file></path><path><editType>add</editType><file>clubb_python_api/requirements.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_xp2_xpyp_module_wrapper.F90</affectedPath><affectedPath>src/Numerical_recipes/amebsa.f90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/stats_netcdf_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90</affectedPath><affectedPath>clubb_python_api/f2py_fortran_wrappers/matrix_solver_wrapper_wrapper.F90</affectedPath><commitId>3b604aca0d98b5f656e2be332d3090819f8af59f</commitId><timestamp>1775508142000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Little fixes for python code
</comment><date>2026-04-06 15:42:22 -0500</date><id>3b604aca0d98b5f656e2be332d3090819f8af59f</id><msg>Little fixes for python code</msg><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_xp2_xpyp_module_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/stats_netcdf_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/matrix_solver_wrapper_wrapper.F90</file></path><path><editType>edit</editType><file>clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90</file></path><path><editType>edit</editType><file>src/Numerical_recipes/amebsa.f90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/CMakeLists.txt</affectedPath><commitId>feb80b9af098529dd9fb4192368a639bea44bac9</commitId><timestamp>1775514539000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Remove blank line to trigger git update script
</comment><date>2026-04-06 17:28:59 -0500</date><id>feb80b9af098529dd9fb4192368a639bea44bac9</id><msg>Remove blank line to trigger git update script</msg><path><editType>edit</editType><file>src/CLUBB_core/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/Lapack/CMakeLists.txt</affectedPath><commitId>89a78e3c137f74f6b8ed0c02875651646e6b0fd8</commitId><timestamp>1775514601000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Added blank line to trigger git update scripts
</comment><date>2026-04-06 17:30:01 -0500</date><id>89a78e3c137f74f6b8ed0c02875651646e6b0fd8</id><msg>Added blank line to trigger git update scripts</msg><path><editType>edit</editType><file>src/Lapack/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Changes_M2005</affectedPath><commitId>9d534983ad611d90632f67b0e85b7bf738786c58</commitId><timestamp>1775514643000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Removed blank line to trigger git update scripts
</comment><date>2026-04-06 17:30:43 -0500</date><id>9d534983ad611d90632f67b0e85b7bf738786c58</id><msg>Removed blank line to trigger git update scripts</msg><path><editType>edit</editType><file>Changes_M2005</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/SILHS/CMakeLists.txt</affectedPath><commitId>ea158fd73790b07ad91600595adf0a10f0bccd04</commitId><timestamp>1775514734000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Add blank line to trigger git update scripts
</comment><date>2026-04-06 17:32:14 -0500</date><id>ea158fd73790b07ad91600595adf0a10f0bccd04</id><msg>Add blank line to trigger git update scripts</msg><path><editType>edit</editType><file>src/SILHS/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>input/stats/README</affectedPath><commitId>170ad3f0b10539e37efd2f19c76f51b6bec3a255</commitId><timestamp>1775514788000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Add blank line to trigger git update scripts
</comment><date>2026-04-06 17:33:08 -0500</date><id>170ad3f0b10539e37efd2f19c76f51b6bec3a255</id><msg>Add blank line to trigger git update scripts</msg><path><editType>edit</editType><file>input/stats/README</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>input/tunable_parameters/configurable_model_flags.in</affectedPath><commitId>8759dedaf6cd411a4d4943c3d8525b022ca00986</commitId><timestamp>1775514902000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Add blank line to trigger git update scripts
</comment><date>2026-04-06 17:35:02 -0500</date><id>8759dedaf6cd411a4d4943c3d8525b022ca00986</id><msg>Add blank line to trigger git update scripts</msg><path><editType>edit</editType><file>input/tunable_parameters/configurable_model_flags.in</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>518</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/518/</url></nextBuild><previousBuild><number>516</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/516/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>516</buildNumber><marked><SHA1>b2e170923249df969fc5b3c0057edce4c1138e7d</SHA1><branch><SHA1>b2e170923249df969fc5b3c0057edce4c1138e7d</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>b2e170923249df969fc5b3c0057edce4c1138e7d</SHA1><branch><SHA1>b2e170923249df969fc5b3c0057edce4c1138e7d</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>b2e170923249df969fc5b3c0057edce4c1138e7d</SHA1><branch><SHA1>b2e170923249df969fc5b3c0057edce4c1138e7d</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#516</displayName><duration>1216999</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #516</fullDisplayName><id>516</id><keepLog>false</keepLog><number>516</number><queueId>2734</queueId><result>SUCCESS</result><timestamp>1775464027594</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/516/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_clubb_w_varying_flags.py</affectedPath><affectedPath>run_scripts/run_scm.bash</affectedPath><affectedPath>run_scripts/run_thread_test.py</affectedPath><commitId>0c709755aa0cbd9a53923dc8ea2cd62f07913aa6</commitId><timestamp>1775412294000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Tiny fixes to scripts
</comment><date>2026-04-05 13:04:54 -0500</date><id>0c709755aa0cbd9a53923dc8ea2cd62f07913aa6</id><msg>Tiny fixes to scripts</msg><path><editType>edit</editType><file>run_scripts/run_clubb_w_varying_flags.py</file></path><path><editType>edit</editType><file>run_scripts/run_thread_test.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm.bash</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_clubb_w_varying_flags.py</affectedPath><affectedPath>src/CLUBB_core/stats_netcdf.F90</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>run_scripts/run_bindiff_varying_flags_output.py</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><commitId>b2e170923249df969fc5b3c0057edce4c1138e7d</commitId><timestamp>1775440060000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Making run_bindiff_w_flags.py faster by calling run_scm.py directly and parallelizing over all cases/flag sets, rather than just calling run_scm_all.py and parallelizing over each flag batch. Also fixing a little stats bug that caused the time string to have weird trailing characters, and removing a little states print
</comment><date>2026-04-05 20:47:40 -0500</date><id>b2e170923249df969fc5b3c0057edce4c1138e7d</id><msg>Making run_bindiff_w_flags.py faster by calling run_scm.py directly and parallelizing over all cases/flag sets, rather than just calling run_scm_all.py and parallelizing over each flag batch. Also fixing a little stats bug that caused the time string to have weird trailing characters, and removing a little states print</msg><path><editType>edit</editType><file>run_scripts/run_clubb_w_varying_flags.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_netcdf.F90</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_varying_flags_output.py</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>517</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/517/</url></nextBuild><previousBuild><number>515</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/515/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>515</buildNumber><marked><SHA1>bcbcd985bf11702799629543e90e6e07a95ddbe5</SHA1><branch><SHA1>bcbcd985bf11702799629543e90e6e07a95ddbe5</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>bcbcd985bf11702799629543e90e6e07a95ddbe5</SHA1><branch><SHA1>bcbcd985bf11702799629543e90e6e07a95ddbe5</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>bcbcd985bf11702799629543e90e6e07a95ddbe5</SHA1><branch><SHA1>bcbcd985bf11702799629543e90e6e07a95ddbe5</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#515</displayName><duration>121439</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #515</fullDisplayName><id>515</id><keepLog>false</keepLog><number>515</number><queueId>2649</queueId><result>SUCCESS</result><timestamp>1775377628289</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/515/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_clubb_w_varying_flags.py</affectedPath><affectedPath>output/.gitignore</affectedPath><affectedPath>jenkins_tests/clubb_BFB_varying_flags_gfortran_test/Jenkinsfile</affectedPath><affectedPath>run_scripts/run_bindiff_varying_flags_output.py</affectedPath><commitId>bcbcd985bf11702799629543e90e6e07a95ddbe5</commitId><timestamp>1775360437000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Varying bfb test (#1290)

* Adding BFB test with varying flags

* Space diff

* Script fix

* Space diff

* Removing output .gitignore, we don't need it and it's annoying
</comment><date>2026-04-04 22:40:37 -0500</date><id>bcbcd985bf11702799629543e90e6e07a95ddbe5</id><msg>Varying bfb test (#1290)</msg><path><editType>add</editType><file>jenkins_tests/clubb_BFB_varying_flags_gfortran_test/Jenkinsfile</file></path><path><editType>add</editType><file>run_scripts/run_bindiff_varying_flags_output.py</file></path><path><editType>delete</editType><file>output/.gitignore</file></path><path><editType>edit</editType><file>run_scripts/run_clubb_w_varying_flags.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>516</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/516/</url></nextBuild><previousBuild><number>514</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/514/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>514</buildNumber><marked><SHA1>f5fb36fc103a46c7cd19ebbe151163da8ee91c42</SHA1><branch><SHA1>f5fb36fc103a46c7cd19ebbe151163da8ee91c42</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>f5fb36fc103a46c7cd19ebbe151163da8ee91c42</SHA1><branch><SHA1>f5fb36fc103a46c7cd19ebbe151163da8ee91c42</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>f5fb36fc103a46c7cd19ebbe151163da8ee91c42</SHA1><branch><SHA1>f5fb36fc103a46c7cd19ebbe151163da8ee91c42</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#514</displayName><duration>635330</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #514</fullDisplayName><id>514</id><keepLog>false</keepLog><number>514</number><queueId>2525</queueId><result>SUCCESS</result><timestamp>1774340829336</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/514/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>README</affectedPath><commitId>b0473687b9eb3489e6ce50f8c4ce66419719fc2d</commitId><timestamp>1774289904000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>A couple recent commits were missing their bit-changing messages because they were accidentally merged in early, see https://github.com/larson-group/clubb/pull/1286 - this commit is to add the resolve messages for the BFB test - RESOLVED:149e61f9bab26c5cb4518fd7bada9b1f4064482e RESOLVED:9f2b1e6c9370a897e1da1320521fbc27baf6ff31
</comment><date>2026-03-23 13:18:24 -0500</date><id>b0473687b9eb3489e6ce50f8c4ce66419719fc2d</id><msg>A couple recent commits were missing their bit-changing messages because they were accidentally merged in early, see https://github.com/larson-group/clubb/pull/1286 - this commit is to add the resolve messages for the BFB test - RESOLVED:149e61f9bab26c5cb4518fd7bada9b1f4064482e RESOLVED:9f2b1e6c9370a897e1da1320521fbc27baf6ff31</msg><path><editType>edit</editType><file>README</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/advance_wp2_wp3_module.F90</affectedPath><affectedPath>src/G_unit_test_types/spurious_source_test.F90</affectedPath><affectedPath>src/generalized_grid_test.F90</affectedPath><affectedPath>src/CLUBB_core/grid_class.F90</affectedPath><affectedPath>src/CLUBB_core/numerical_check.F90</affectedPath><affectedPath>src/CLUBB_core/mixing_length.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xp2_xpyp_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xm_wpxp_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_windm_edsclrm_module.F90</affectedPath><affectedPath>src/CLUBB_core/matrix_solver_wrapper.F90</affectedPath><affectedPath>src/CLUBB_core/clubb_api_module.F90</affectedPath><affectedPath>src/CLUBB_core/mono_flux_limiter.F90</affectedPath><affectedPath>src/CLUBB_core/grid_adaptation_module.F90</affectedPath><commitId>f5fb36fc103a46c7cd19ebbe151163da8ee91c42</commitId><timestamp>1774297540000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Little Fix (#1287)

* Making matrix solve checks also trigger if l_implemented is true so that they always are done in CAM, regardless of debug level

* Reworking rcond flag in advance_windm

* Updating l_implemented flag comments

* Adding printouts to make clear where the NaN are (if any) in the soln vector.
</comment><date>2026-03-23 15:25:40 -0500</date><id>f5fb36fc103a46c7cd19ebbe151163da8ee91c42</id><msg>Little Fix (#1287)</msg><path><editType>edit</editType><file>src/CLUBB_core/advance_windm_edsclrm_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xp2_xpyp_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_wp2_wp3_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/clubb_api_module.F90</file></path><path><editType>edit</editType><file>src/G_unit_test_types/spurious_source_test.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/matrix_solver_wrapper.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/numerical_check.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/grid_class.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xm_wpxp_module.F90</file></path><path><editType>edit</editType><file>src/generalized_grid_test.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/grid_adaptation_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/mono_flux_limiter.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/mixing_length.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>515</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/515/</url></nextBuild><previousBuild><number>513</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/513/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>513</buildNumber><marked><SHA1>d9d887857da333c2c683aad09311ffcdb2d54440</SHA1><branch><SHA1>d9d887857da333c2c683aad09311ffcdb2d54440</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>d9d887857da333c2c683aad09311ffcdb2d54440</SHA1><branch><SHA1>d9d887857da333c2c683aad09311ffcdb2d54440</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>d9d887857da333c2c683aad09311ffcdb2d54440</SHA1><branch><SHA1>d9d887857da333c2c683aad09311ffcdb2d54440</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#513</displayName><duration>1423204</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #513</fullDisplayName><id>513</id><keepLog>false</keepLog><number>513</number><queueId>2425</queueId><result>SUCCESS</result><timestamp>1774254427879</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/513/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/Radiation/soil_vegetation.F90</affectedPath><affectedPath>src/Radiation/bugsrad_driver.F90</affectedPath><affectedPath>src/Radiation/simple_rad_module.F90</affectedPath><affectedPath>src/CLUBB_core/interpolation.F90</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>src/Radiation/radiation_variables_module.F90</affectedPath><affectedPath>src/Radiation/radiation_module.F90</affectedPath><affectedPath>src/Radiation/rad_lwsw_module.F90</affectedPath><commitId>9f2b1e6c9370a897e1da1320521fbc27baf6ff31</commitId><timestamp>1774158992000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>GPUizing most of radiation code
</comment><date>2026-03-22 00:56:32 -0500</date><id>9f2b1e6c9370a897e1da1320521fbc27baf6ff31</id><msg>GPUizing most of radiation code</msg><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>src/Radiation/rad_lwsw_module.F90</file></path><path><editType>edit</editType><file>src/Radiation/radiation_variables_module.F90</file></path><path><editType>edit</editType><file>src/Radiation/radiation_module.F90</file></path><path><editType>edit</editType><file>src/Radiation/soil_vegetation.F90</file></path><path><editType>edit</editType><file>src/Radiation/simple_rad_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/interpolation.F90</file></path><path><editType>edit</editType><file>src/Radiation/bugsrad_driver.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/Radiation/radiation_module.F90</affectedPath><commitId>149e61f9bab26c5cb4518fd7bada9b1f4064482e</commitId><timestamp>1774236539000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Fixing multicol radiation stats bug.
</comment><date>2026-03-22 22:28:59 -0500</date><id>149e61f9bab26c5cb4518fd7bada9b1f4064482e</id><msg>Fixing multicol radiation stats bug.</msg><path><editType>edit</editType><file>src/Radiation/radiation_module.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>dash_app/run_tab/callbacks_runs.py</affectedPath><affectedPath>dash_app/run_tab/runtime.py</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><commitId>0fc97f413d522aabb24db8c4a289aa5e5471256d</commitId><timestamp>1774237949000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Adding max tasks option to dash app
</comment><date>2026-03-22 22:52:29 -0500</date><id>0fc97f413d522aabb24db8c4a289aa5e5471256d</id><msg>Adding max tasks option to dash app</msg><path><editType>edit</editType><file>dash_app/run_tab/callbacks_runs.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/runtime.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/generalized_grid_test.F90</affectedPath><commitId>d9d887857da333c2c683aad09311ffcdb2d54440</commitId><timestamp>1774239145000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Increasing tolerance for check_flipped_results - this is used in the generalized_grid_test when we allow the matrices to be solved in different vertical modes
</comment><date>2026-03-22 23:12:25 -0500</date><id>d9d887857da333c2c683aad09311ffcdb2d54440</id><msg>Increasing tolerance for check_flipped_results - this is used in the generalized_grid_test when we allow the matrices to be solved in different vertical modes</msg><path><editType>edit</editType><file>src/generalized_grid_test.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>514</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/514/</url></nextBuild><previousBuild><number>512</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/512/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>512</buildNumber><marked><SHA1>d20fd1daad5e5d921607794e258bfde151fd3c89</SHA1><branch><SHA1>d20fd1daad5e5d921607794e258bfde151fd3c89</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>d20fd1daad5e5d921607794e258bfde151fd3c89</SHA1><branch><SHA1>d20fd1daad5e5d921607794e258bfde151fd3c89</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>d20fd1daad5e5d921607794e258bfde151fd3c89</SHA1><branch><SHA1>d20fd1daad5e5d921607794e258bfde151fd3c89</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#512</displayName><duration>545560</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #512</fullDisplayName><id>512</id><keepLog>false</keepLog><number>512</number><queueId>2336</queueId><result>SUCCESS</result><timestamp>1773908825944</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/512/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/Radiation/soil_vegetation.F90</affectedPath><affectedPath>src/Radiation/bugsrad_driver.F90</affectedPath><affectedPath>src/Radiation/simple_rad_module.F90</affectedPath><affectedPath>src/Radiation/BUGSrad/variables_radiation_module.F90</affectedPath><affectedPath>src/Radiation/radiation_variables_module.F90</affectedPath><affectedPath>src/Radiation/extended_atmosphere_module.F90</affectedPath><affectedPath>src/Radiation/BUGSrad/bugs_rad.F</affectedPath><affectedPath>src/soil_vegetation.F90</affectedPath><affectedPath>src/CLUBB_core/numerical_check.F90</affectedPath><affectedPath>compile/file_list/clubb_model_files</affectedPath><affectedPath>compile/file_list/clubb_bugsrad_files</affectedPath><affectedPath>src/Radiation/CMakeLists.txt</affectedPath><affectedPath>src/Radiation/BUGSrad/driver_read.F</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>src/CMakeLists.txt</affectedPath><affectedPath>src/Radiation/BUGSrad/CMakeLists.txt</affectedPath><affectedPath>src/Radiation/radiation_module.F90</affectedPath><commitId>cbaf3b7cad36f5843a53f7e5ce77943ca7cc64c9</commitId><timestamp>1773867770000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Clubb radiation update (#1283)

* Compartmentalizing radiation code a bit

* More compartmentalizing

* Pushing loop into bugsrad because it makes things cleaner

* Small loop pushes

* Little cleanup

* Moving soil_veg code

* GPU fix and a little cleanup

* Missed a file to commit

* Making work with old build system

* Need zeroing routines for set_case_initial_conditions

* Adding comment explaining why advance_soil_veg is being packaged with Radiation code now
</comment><date>2026-03-18 16:02:50 -0500</date><id>cbaf3b7cad36f5843a53f7e5ce77943ca7cc64c9</id><msg>Clubb radiation update (#1283)</msg><path><editType>edit</editType><file>compile/file_list/clubb_model_files</file></path><path><editType>delete</editType><file>src/Radiation/BUGSrad/variables_radiation_module.F90</file></path><path><editType>delete</editType><file>src/soil_vegetation.F90</file></path><path><editType>edit</editType><file>src/CMakeLists.txt</file></path><path><editType>edit</editType><file>src/Radiation/bugsrad_driver.F90</file></path><path><editType>edit</editType><file>src/Radiation/BUGSrad/CMakeLists.txt</file></path><path><editType>edit</editType><file>src/Radiation/CMakeLists.txt</file></path><path><editType>add</editType><file>src/Radiation/soil_vegetation.F90</file></path><path><editType>edit</editType><file>compile/file_list/clubb_bugsrad_files</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>add</editType><file>src/Radiation/radiation_variables_module.F90</file></path><path><editType>edit</editType><file>src/Radiation/BUGSrad/driver_read.F</file></path><path><editType>edit</editType><file>src/CLUBB_core/numerical_check.F90</file></path><path><editType>edit</editType><file>src/Radiation/extended_atmosphere_module.F90</file></path><path><editType>edit</editType><file>src/Radiation/BUGSrad/bugs_rad.F</file></path><path><editType>edit</editType><file>src/Radiation/simple_rad_module.F90</file></path><path><editType>edit</editType><file>src/Radiation/radiation_module.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>dash_app/plot_tab/state.py</affectedPath><affectedPath>dash_app/assets/33_run_param_rows.js</affectedPath><affectedPath>dash_app/run_tab/tab.py</affectedPath><affectedPath>dash_app/plot_tab/case_definitions.py</affectedPath><affectedPath>src/CLUBB_core/stats_netcdf.F90</affectedPath><affectedPath>dash_app/run_tab/callbacks_console.py</affectedPath><affectedPath>dash_app/tab_compare.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/registry.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/budget_plot.py</affectedPath><affectedPath>dash_app/run_tab/namelist.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/base_plot.py</affectedPath><affectedPath>dash_app/tab_run.py</affectedPath><affectedPath>dash_app/assets/11_tab_run_theme.css</affectedPath><affectedPath>dash_app/plot_tab/layout.py</affectedPath><affectedPath>dash_app/run_tab/callbacks_settings.py</affectedPath><affectedPath>dash_app/assets/31_plots_ui_resize.js</affectedPath><affectedPath>dash_app/tab_multicol.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_controls.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/shared.py</affectedPath><affectedPath>dash_app/assets/35_plots_keyboard.js</affectedPath><affectedPath>dash_app/run_tab/__init__.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/budget_groups.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_params.py</affectedPath><affectedPath>dash_app/plot_tab/__init__.py</affectedPath><affectedPath>dash_app/app.py</affectedPath><affectedPath>dash_app/assets/10_theme.css</affectedPath><affectedPath>dash_app/run_tab/runtime.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/__init__.py</affectedPath><affectedPath>dash_app/run_tab/callbacks_selection.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/profile_plot.py</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>dash_app/plot_tab/benchmark_overlay.py</affectedPath><affectedPath>dash_app/run_tab/state.py</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/subcolumn_plot.py</affectedPath><affectedPath>run_scripts/create_multi_col_params.py</affectedPath><affectedPath>dash_app/plot_tab/callbacks_grid.py</affectedPath><affectedPath>dash_app/run_tab/discovery.py</affectedPath><affectedPath>dash_app/case_definitions.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/specs.py</affectedPath><affectedPath>dash_app/assets/12_tab_plots_theme.css</affectedPath><affectedPath>dash_app/plot_tab/tab.py</affectedPath><affectedPath>dash_app/assets/32_plots_constant_param_rows.js</affectedPath><affectedPath>dash_app/run_tab/callbacks_runs.py</affectedPath><affectedPath>dash_app/assets/34_run_param_clientside.js</affectedPath><affectedPath>dash_app/plot_tab/callbacks_case.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/timeseries_plot.py</affectedPath><affectedPath>dash_app/plot_tab/plot_types/timeheight_plot.py</affectedPath><commitId>49bd72c6b6ee57f27c7694b25facd1b0eb91bd09</commitId><timestamp>1773872129000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Dash app improvements (#1280)

* Mainly dash app improvements, but also removing unused args from stats and improving run scripts

* Small update to ui in run tab

* Improvements to make plotting faster, fixing various bugs, making things more robust, and adding more run modification fields (out_dir/dt_main/etc)

* Adding les plotting capabilities, lots of tiny improvements

* Reverting run_bindiff_all.py

* Tiny quality of life improvements - fixing port conflict, opening in browser automatically, and defaulting to the run_tab instead of requiring a first click
</comment><date>2026-03-18 17:15:29 -0500</date><id>49bd72c6b6ee57f27c7694b25facd1b0eb91bd09</id><msg>Dash app improvements (#1280)</msg><path><editType>add</editType><file>dash_app/plot_tab/plot_types/budget_groups.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/plot_types/budget_plot.py</file></path><path><editType>edit</editType><file>dash_app/assets/11_tab_run_theme.css</file></path><path><editType>delete</editType><file>dash_app/tab_run.py</file></path><path><editType>add</editType><file>dash_app/run_tab/callbacks_console.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/plot_types/timeseries_plot.py</file></path><path><editType>add</editType><file>dash_app/run_tab/state.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/plot_types/registry.py</file></path><path><editType>edit</editType><file>run_scripts/create_multi_col_params.py</file></path><path><editType>delete</editType><file>dash_app/tab_multicol.py</file></path><path><editType>edit</editType><file>dash_app/app.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/state.py</file></path><path><editType>add</editType><file>dash_app/run_tab/callbacks_settings.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/case_definitions.py</file></path><path><editType>delete</editType><file>dash_app/tab_compare.py</file></path><path><editType>add</editType><file>dash_app/assets/34_run_param_clientside.js</file></path><path><editType>add</editType><file>dash_app/assets/35_plots_keyboard.js</file></path><path><editType>add</editType><file>dash_app/run_tab/discovery.py</file></path><path><editType>add</editType><file>dash_app/assets/12_tab_plots_theme.css</file></path><path><editType>delete</editType><file>dash_app/case_definitions.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/__init__.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/tab.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_netcdf.F90</file></path><path><editType>add</editType><file>dash_app/plot_tab/benchmark_overlay.py</file></path><path><editType>add</editType><file>dash_app/assets/31_plots_ui_resize.js</file></path><path><editType>add</editType><file>dash_app/plot_tab/plot_types/specs.py</file></path><path><editType>edit</editType><file>dash_app/assets/10_theme.css</file></path><path><editType>add</editType><file>dash_app/assets/33_run_param_rows.js</file></path><path><editType>add</editType><file>dash_app/assets/32_plots_constant_param_rows.js</file></path><path><editType>add</editType><file>dash_app/plot_tab/callbacks_controls.py</file></path><path><editType>add</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>add</editType><file>dash_app/run_tab/__init__.py</file></path><path><editType>add</editType><file>dash_app/run_tab/callbacks_selection.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/plot_types/shared.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/plot_types/timeheight_plot.py</file></path><path><editType>add</editType><file>dash_app/run_tab/namelist.py</file></path><path><editType>add</editType><file>dash_app/run_tab/tab.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>add</editType><file>dash_app/run_tab/runtime.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/plot_types/profile_plot.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/plot_types/__init__.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/callbacks_params.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/plot_types/base_plot.py</file></path><path><editType>add</editType><file>dash_app/run_tab/callbacks_runs.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/callbacks_grid.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/callbacks_case.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/plot_types/subcolumn_plot.py</file></path><path><editType>add</editType><file>dash_app/plot_tab/layout.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/G_unit_test_types/spurious_source_test.F90</affectedPath><commitId>d3c5a22e8d71e7224d34ffe7c7d2276679df7492</commitId><timestamp>1773882901000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Now that the adg1_ routines prevent below threshold wp2 and xp2 values, we also need these max statements in this unit test too
</comment><date>2026-03-18 20:15:01 -0500</date><id>d3c5a22e8d71e7224d34ffe7c7d2276679df7492</id><msg>Now that the adg1_ routines prevent below threshold wp2 and xp2 values, we also need these max statements in this unit test too</msg><path><editType>edit</editType><file>src/G_unit_test_types/spurious_source_test.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_bindiff_all.py</affectedPath><commitId>d20fd1daad5e5d921607794e258bfde151fd3c89</commitId><timestamp>1773884674000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Previous commit (49bd72c6b6ee57f27c7694b25facd1b0eb91bd09) fixed a stats bug that caused parameter names to not be stored in the netcdf file - so now run_bindiff_all.py has to ignore those. Fixed by ignoring all non-numeric variables.
</comment><date>2026-03-18 20:44:34 -0500</date><id>d20fd1daad5e5d921607794e258bfde151fd3c89</id><msg>Previous commit (49bd72c6b6ee57f27c7694b25facd1b0eb91bd09) fixed a stats bug that caused parameter names to not be stored in the netcdf file - so now run_bindiff_all.py has to ignore those. Fixed by ignoring all non-numeric variables.</msg><path><editType>edit</editType><file>run_scripts/run_bindiff_all.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>513</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/513/</url></nextBuild><previousBuild><number>511</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/511/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>511</buildNumber><marked><SHA1>bdee6e6dbac76a996cdf73a88522c47affdd4d90</SHA1><branch><SHA1>bdee6e6dbac76a996cdf73a88522c47affdd4d90</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>bdee6e6dbac76a996cdf73a88522c47affdd4d90</SHA1><branch><SHA1>bdee6e6dbac76a996cdf73a88522c47affdd4d90</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>bdee6e6dbac76a996cdf73a88522c47affdd4d90</SHA1><branch><SHA1>bdee6e6dbac76a996cdf73a88522c47affdd4d90</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#511</displayName><duration>1549324</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #511</fullDisplayName><id>511</id><keepLog>false</keepLog><number>511</number><queueId>2210</queueId><result>SUCCESS</result><timestamp>1773822428423</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/511/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_nvhpc_gpu_column_mirror_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_nvhpc_gpu_vs_cpu_diffness/Jenkinsfile</affectedPath><commitId>02123793194ca95295bbd90c35129faf395b9525</commitId><timestamp>1773771251000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Toolchain names were changed, so the references to them should've changed in the jenkins tests.
</comment><date>2026-03-17 13:14:11 -0500</date><id>02123793194ca95295bbd90c35129faf395b9525</id><msg>Toolchain names were changed, so the references to them should've changed in the jenkins tests.</msg><path><editType>edit</editType><file>jenkins_tests/clubb_nvhpc_gpu_column_mirror_test/Jenkinsfile</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_nvhpc_gpu_vs_cpu_diffness/Jenkinsfile</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/test_monoflux_limiter_GPU.py</affectedPath><commitId>36ca61e3203b201832c5ca74ce764fc7e97786a8</commitId><timestamp>1773771352000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Toolchain names were changed, so the references to them should've changed in this test too.
</comment><date>2026-03-17 13:15:52 -0500</date><id>36ca61e3203b201832c5ca74ce764fc7e97786a8</id><msg>Toolchain names were changed, so the references to them should've changed in this test too.</msg><path><editType>edit</editType><file>run_scripts/test_monoflux_limiter_GPU.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/G_unit_test_types/pdf_parameter_tests.F90</affectedPath><affectedPath>src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90</affectedPath><affectedPath>src/G_unit_tests.F90</affectedPath><affectedPath>src/G_unit_test_types/spurious_source_test.F90</affectedPath><commitId>c15b1d3c005fdffa76902e976acdb5db5dbde012</commitId><timestamp>1773804486000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>ADG1_w_closure consistency fix (#1282)

* G_unit_test / ADG1_w_closure fix. A recent commit (bff619bdb2836f83ac658be8b8c258d41aaa6e14) introduced a change to ADG1_ADG2_responder_params that caused an inconsistency in the pdf calculations that the G_unit tests picked up on. This corrects it, but is also BIT_CHANGING, since it changes the calculation slightly when wp2 is exactly tolerance.

* Adding test to ensure err_info is correctly set by adg1 routines when calling with bad inputs - also moving wp2 check to ADG1_w_closure because it makes more sense there
</comment><date>2026-03-17 22:28:06 -0500</date><id>c15b1d3c005fdffa76902e976acdb5db5dbde012</id><msg>ADG1_w_closure consistency fix (#1282)</msg><path><editType>edit</editType><file>src/G_unit_test_types/pdf_parameter_tests.F90</file></path><path><editType>edit</editType><file>src/G_unit_test_types/spurious_source_test.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90</file></path><path><editType>edit</editType><file>src/G_unit_tests.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/matrix_solver_wrapper.F90</affectedPath><affectedPath>jenkins_tests/clubb_error_handling_gfortran_test/Jenkinsfile</affectedPath><affectedPath>run_scripts/test_fatal_error_handling.py</affectedPath><affectedPath>src/CLUBB_core/lapack_wrap.F90</affectedPath><commitId>bdee6e6dbac76a996cdf73a88522c47affdd4d90</commitId><timestamp>1773805495000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Fixing clubb_error_handling_gfortran_test (#1281)

* Fixing error test by making the code check for NaNs in all solver cases - before it was only checking in Lapack. Also making a python version of the test and updating jenkins script to use it.

* A little cleanup

* Adding more comments and making a little data structure for the tests
</comment><date>2026-03-17 22:44:55 -0500</date><id>bdee6e6dbac76a996cdf73a88522c47affdd4d90</id><msg>Fixing clubb_error_handling_gfortran_test (#1281)</msg><path><editType>edit</editType><file>jenkins_tests/clubb_error_handling_gfortran_test/Jenkinsfile</file></path><path><editType>edit</editType><file>src/CLUBB_core/matrix_solver_wrapper.F90</file></path><path><editType>add</editType><file>run_scripts/test_fatal_error_handling.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/lapack_wrap.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>512</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/512/</url></nextBuild><previousBuild><number>510</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/510/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>510</buildNumber><marked><SHA1>3ebd14c5ba84fb2caf021b7f96b1d5b7ddba93f9</SHA1><branch><SHA1>3ebd14c5ba84fb2caf021b7f96b1d5b7ddba93f9</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>3ebd14c5ba84fb2caf021b7f96b1d5b7ddba93f9</SHA1><branch><SHA1>3ebd14c5ba84fb2caf021b7f96b1d5b7ddba93f9</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>3ebd14c5ba84fb2caf021b7f96b1d5b7ddba93f9</SHA1><branch><SHA1>3ebd14c5ba84fb2caf021b7f96b1d5b7ddba93f9</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#510</displayName><duration>226884</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #510</fullDisplayName><id>510</id><keepLog>false</keepLog><number>510</number><queueId>2120</queueId><result>SUCCESS</result><timestamp>1773736029031</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/510/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><commitId>2108b26241ca7695b3358c5f905385e79189cdc2</commitId><timestamp>1773679567000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Forgot to add the changes to make concurrency safe - which caused random failures when using the new parallel run_scm_all.py with options like -out_dir or -ngrdcol
</comment><date>2026-03-16 11:46:07 -0500</date><id>2108b26241ca7695b3358c5f905385e79189cdc2</id><msg>Forgot to add the changes to make concurrency safe - which caused random failures when using the new parallel run_scm_all.py with options like -out_dir or -ngrdcol</msg><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>cmake/toolchains/linux_x86_64_gfortran.cmake</affectedPath><affectedPath>cmake/toolchains/linux_x86_64_nvfortran.cmake</affectedPath><affectedPath>cmake/toolchains/linux_x86_64_gcc.cmake</affectedPath><affectedPath>cmake/toolchains/linux_x86_64_ifx.cmake</affectedPath><affectedPath>cmake/toolchains/linux_x86_64_nvhpc.cmake</affectedPath><affectedPath>cmake/toolchains/linux_x86_64_intel.cmake</affectedPath><affectedPath>compile.py</affectedPath><affectedPath>cmake/toolchains/linux_x86_64_cce.cmake</affectedPath><commitId>6b49cb739e4c6970da64b808e791b85a227b44b3</commitId><timestamp>1773718458000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Slightly more general compile setup (#1277)

* Making compiler lookup a little more general, this allows us to compile on Derecho too. Now it uses LMOD_FAMILY_COMPILER by default, then tries FC as a backup, and has a map of names so that things like intel/intel-oneapi map to the same things. Also adding a toolchain for the cray compiler (cce).

* Removing old toolchains
</comment><date>2026-03-16 22:34:18 -0500</date><id>6b49cb739e4c6970da64b808e791b85a227b44b3</id><msg>Slightly more general compile setup (#1277)</msg><path><editType>delete</editType><file>cmake/toolchains/linux_x86_64_gfortran.cmake</file></path><path><editType>delete</editType><file>cmake/toolchains/linux_x86_64_nvfortran.cmake</file></path><path><editType>delete</editType><file>cmake/toolchains/linux_x86_64_ifx.cmake</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>add</editType><file>cmake/toolchains/linux_x86_64_nvhpc.cmake</file></path><path><editType>add</editType><file>cmake/toolchains/linux_x86_64_gcc.cmake</file></path><path><editType>add</editType><file>cmake/toolchains/linux_x86_64_intel.cmake</file></path><path><editType>add</editType><file>cmake/toolchains/linux_x86_64_cce.cmake</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>cmake/deps/GPTLDependency.cmake</affectedPath><commitId>3ebd14c5ba84fb2caf021b7f96b1d5b7ddba93f9</commitId><timestamp>1773718471000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>GPTL cmake update (#1279)

* Making compiling with gptl more robust. Before it could only compile when we used openmp too, but that's been worked around, and now it can compile on nvhpc too thanks to the static and disabled-shared flags that were added. Also works with gcc now.

* Adding comment

* Small cleanup and a better comment
</comment><date>2026-03-16 22:34:31 -0500</date><id>3ebd14c5ba84fb2caf021b7f96b1d5b7ddba93f9</id><msg>GPTL cmake update (#1279)</msg><path><editType>edit</editType><file>cmake/deps/GPTLDependency.cmake</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>511</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/511/</url></nextBuild><previousBuild><number>509</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/509/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>509</buildNumber><marked><SHA1>bff619bdb2836f83ac658be8b8c258d41aaa6e14</SHA1><branch><SHA1>bff619bdb2836f83ac658be8b8c258d41aaa6e14</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>bff619bdb2836f83ac658be8b8c258d41aaa6e14</SHA1><branch><SHA1>bff619bdb2836f83ac658be8b8c258d41aaa6e14</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>bff619bdb2836f83ac658be8b8c258d41aaa6e14</SHA1><branch><SHA1>bff619bdb2836f83ac658be8b8c258d41aaa6e14</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#509</displayName><duration>1390318</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #509</fullDisplayName><id>509</id><keepLog>false</keepLog><number>509</number><queueId>1960</queueId><result>SUCCESS</result><timestamp>1773649628126</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/509/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_plot_nvhpc_gpu_vs_cpu/Jenkinsfile</affectedPath><affectedPath>src/CLUBB_core/pdf_closure_module.F90</affectedPath><affectedPath>src/G_unit_test_types/pdf_parameter_tests.F90</affectedPath><affectedPath>src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90</affectedPath><affectedPath>run_scripts/run_scm_all.py</affectedPath><affectedPath>jenkins_tests/clubb_nvhpc_gpu_column_mirror_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_driver_test/Jenkinsfile</affectedPath><commitId>bff619bdb2836f83ac658be8b8c258d41aaa6e14</commitId><timestamp>1773630552000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Stability fix (#1276)

* Adding multiprocesses to run_scm_all.py, making the GPU jenkins tests only use 1 thread though, otherwise the different processes will fight for GPU usage

* Making the if statement in ADG1_ADG2_responder_params use a strict inequality - this was causing numerical issues when fields were close to tolerance. This will be slightly BIT_CHANGING for most cases.

* Adding comments to run_scm_all.py and removing the if-case in ADG1_ADG2_responder_params in favor of an explicit error check

* Changing nprocs to nproc and updating jenkins tests
</comment><date>2026-03-15 22:09:12 -0500</date><id>bff619bdb2836f83ac658be8b8c258d41aaa6e14</id><msg>Stability fix (#1276)</msg><path><editType>edit</editType><file>src/CLUBB_core/pdf_closure_module.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_plot_nvhpc_gpu_vs_cpu/Jenkinsfile</file></path><path><editType>edit</editType><file>src/CLUBB_core/adg1_adg2_3d_luhar_pdf.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_driver_test/Jenkinsfile</file></path><path><editType>edit</editType><file>run_scripts/run_scm_all.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_nvhpc_gpu_column_mirror_test/Jenkinsfile</file></path><path><editType>edit</editType><file>src/G_unit_test_types/pdf_parameter_tests.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>510</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/510/</url></nextBuild><previousBuild><number>508</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/508/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>508</buildNumber><marked><SHA1>02e8b46e176338e0beae7ab6fe3bb4ab2c11a7f2</SHA1><branch><SHA1>02e8b46e176338e0beae7ab6fe3bb4ab2c11a7f2</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>02e8b46e176338e0beae7ab6fe3bb4ab2c11a7f2</SHA1><branch><SHA1>02e8b46e176338e0beae7ab6fe3bb4ab2c11a7f2</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>02e8b46e176338e0beae7ab6fe3bb4ab2c11a7f2</SHA1><branch><SHA1>02e8b46e176338e0beae7ab6fe3bb4ab2c11a7f2</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#508</displayName><duration>2186294</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #508</fullDisplayName><id>508</id><keepLog>false</keepLog><number>508</number><queueId>1869</queueId><result>SUCCESS</result><timestamp>1773476826877</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/508/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/calendar.F90</affectedPath><commitId>e589c52f0d3f735c8a1f4206fce09e7e4b0f7578</commitId><timestamp>1773445654000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></author><authorEmail>hancoct@uwm.edu</authorEmail><comment>Added blank line
</comment><date>2026-03-13 18:47:34 -0500</date><id>e589c52f0d3f735c8a1f4206fce09e7e4b0f7578</id><msg>Added blank line</msg><path><editType>edit</editType><file>src/CLUBB_core/calendar.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/LY93_pdf.F90</affectedPath><commitId>a1dd370ac9a7d03023289b7025c7e30eca0184d1</commitId><timestamp>1773453517000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Remove Id tag from LY93_pdf.F90 in order to trigger git update scripts

larson-group/sys_admin#848
</comment><date>2026-03-13 20:58:37 -0500</date><id>a1dd370ac9a7d03023289b7025c7e30eca0184d1</id><msg>Remove Id tag from LY93_pdf.F90 in order to trigger git update scripts</msg><path><editType>edit</editType><file>src/CLUBB_core/LY93_pdf.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/SILHS/est_kessler_microphys_module.F90</affectedPath><commitId>02e8b46e176338e0beae7ab6fe3bb4ab2c11a7f2</commitId><timestamp>1773453655000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Remove unnecessary comments from est_kessler_microphys_module

in order to trigger git update scripts.  larson-group/sys_admin#848
</comment><date>2026-03-13 21:00:55 -0500</date><id>02e8b46e176338e0beae7ab6fe3bb4ab2c11a7f2</id><msg>Remove unnecessary comments from est_kessler_microphys_module</msg><path><editType>edit</editType><file>src/SILHS/est_kessler_microphys_module.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>509</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/509/</url></nextBuild><previousBuild><number>507</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/507/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>507</buildNumber><marked><SHA1>9c1d5ca661f3fc39810d025db84985e8a5bd0c0e</SHA1><branch><SHA1>9c1d5ca661f3fc39810d025db84985e8a5bd0c0e</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>9c1d5ca661f3fc39810d025db84985e8a5bd0c0e</SHA1><branch><SHA1>9c1d5ca661f3fc39810d025db84985e8a5bd0c0e</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>9c1d5ca661f3fc39810d025db84985e8a5bd0c0e</SHA1><branch><SHA1>9c1d5ca661f3fc39810d025db84985e8a5bd0c0e</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#507</displayName><duration>301981</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #507</fullDisplayName><id>507</id><keepLog>false</keepLog><number>507</number><queueId>1785</queueId><result>SUCCESS</result><timestamp>1773390427021</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/507/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/CMakeLists.txt</affectedPath><commitId>9c1d5ca661f3fc39810d025db84985e8a5bd0c0e</commitId><timestamp>1773317100000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Add blank line in order to trigger git updates (issue #848)
</comment><date>2026-03-12 07:05:00 -0500</date><id>9c1d5ca661f3fc39810d025db84985e8a5bd0c0e</id><msg>Add blank line in order to trigger git updates (issue #848)</msg><path><editType>edit</editType><file>src/CLUBB_core/CMakeLists.txt</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>508</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/508/</url></nextBuild><previousBuild><number>506</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/506/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>506</buildNumber><marked><SHA1>983e04d547b71018dee5ec635ceb7e166b7ce8f8</SHA1><branch><SHA1>983e04d547b71018dee5ec635ceb7e166b7ce8f8</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>983e04d547b71018dee5ec635ceb7e166b7ce8f8</SHA1><branch><SHA1>983e04d547b71018dee5ec635ceb7e166b7ce8f8</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>983e04d547b71018dee5ec635ceb7e166b7ce8f8</SHA1><branch><SHA1>983e04d547b71018dee5ec635ceb7e166b7ce8f8</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#506</displayName><duration>463714</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #506</fullDisplayName><id>506</id><keepLog>false</keepLog><number>506</number><queueId>1708</queueId><result>SUCCESS</result><timestamp>1773217627943</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/506/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>input/tunable_parameters/configurable_model_flags.in</affectedPath><affectedPath>src/CLUBB_core/model_flags.F90</affectedPath><commitId>983e04d547b71018dee5ec635ceb7e166b7ce8f8</commitId><timestamp>1773197406000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>New solvers by default (#1275) - BIT_CHANGING

* Setting our solvers to use the new LU solvers by default instead of Lapack. This is BIT_CHANGING, but not answer changing.

* Also changing default in code
</comment><date>2026-03-10 21:50:06 -0500</date><id>983e04d547b71018dee5ec635ceb7e166b7ce8f8</id><msg>New solvers by default (#1275) - BIT_CHANGING</msg><path><editType>edit</editType><file>input/tunable_parameters/configurable_model_flags.in</file></path><path><editType>edit</editType><file>src/CLUBB_core/model_flags.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>507</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/507/</url></nextBuild><previousBuild><number>505</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/505/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>505</buildNumber><marked><SHA1>68adfe0015a87cb6ccd8938f9b742117d971feaa</SHA1><branch><SHA1>68adfe0015a87cb6ccd8938f9b742117d971feaa</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>68adfe0015a87cb6ccd8938f9b742117d971feaa</SHA1><branch><SHA1>68adfe0015a87cb6ccd8938f9b742117d971feaa</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>68adfe0015a87cb6ccd8938f9b742117d971feaa</SHA1><branch><SHA1>68adfe0015a87cb6ccd8938f9b742117d971feaa</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#505</displayName><duration>1388894</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #505</fullDisplayName><id>505</id><keepLog>false</keepLog><number>505</number><queueId>1610</queueId><result>SUCCESS</result><timestamp>1772530027521</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/505/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/Microphys/Morrison_microphys/README.MICRO_M2005</affectedPath><commitId>967e4c00c3609874bf0c9eecbd93781724252ce9</commitId><timestamp>1772483936000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/root</absoluteUrl><fullName>root</fullName></author><authorEmail>larsongroupgithub@gmail.com</authorEmail><comment>Force-sync README to match SAM
</comment><date>2026-03-02 14:38:56 -0600</date><id>967e4c00c3609874bf0c9eecbd93781724252ce9</id><msg>Force-sync README to match SAM</msg><path><editType>edit</editType><file>src/Microphys/Morrison_microphys/README.MICRO_M2005</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/CMakeLists.txt</affectedPath><commitId>6340e0a542105e3612b9709f3192cdf3b88a55ec</commitId><timestamp>1772502018000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Add blank line to test python scripts

Testing python scripts from crontab
</comment><date>2026-03-02 19:40:18 -0600</date><id>6340e0a542105e3612b9709f3192cdf3b88a55ec</id><msg>Add blank line to test python scripts</msg><path><editType>edit</editType><file>src/CLUBB_core/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Changes_M2005</affectedPath><commitId>8cb40c6a054a81383415a640c91d5effcc187d28</commitId><timestamp>1772502096000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Added blank line to test python update scripts

Testing python update scripts from crontab
</comment><date>2026-03-02 19:41:36 -0600</date><id>8cb40c6a054a81383415a640c91d5effcc187d28</id><msg>Added blank line to test python update scripts</msg><path><editType>edit</editType><file>Changes_M2005</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/root</absoluteUrl><fullName>root</fullName></culprit><inProgress>false</inProgress><nextBuild><number>506</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/506/</url></nextBuild><previousBuild><number>504</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/504/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>504</buildNumber><marked><SHA1>1d2996e43e6b32cb4cbc77931302a225c442888e</SHA1><branch><SHA1>1d2996e43e6b32cb4cbc77931302a225c442888e</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>1d2996e43e6b32cb4cbc77931302a225c442888e</SHA1><branch><SHA1>1d2996e43e6b32cb4cbc77931302a225c442888e</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>1d2996e43e6b32cb4cbc77931302a225c442888e</SHA1><branch><SHA1>1d2996e43e6b32cb4cbc77931302a225c442888e</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#504</displayName><duration>1709925</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #504</fullDisplayName><id>504</id><keepLog>false</keepLog><number>504</number><queueId>1522</queueId><result>SUCCESS</result><timestamp>1771925227961</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/504/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/constants_clubb.F90</affectedPath><commitId>3974c73f38f6bccf2aa96966d86f7832a990cd89</commitId><timestamp>1771881523000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></author><authorEmail>hancoct@uwm.edu</authorEmail><comment>Added blank line to test new python scripts
</comment><date>2026-02-23 15:18:43 -0600</date><id>3974c73f38f6bccf2aa96966d86f7832a990cd89</id><msg>Added blank line to test new python scripts</msg><path><editType>edit</editType><file>src/CLUBB_core/constants_clubb.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>Changes_M2005</affectedPath><commitId>cee95675184d206d7d48d6b1dada20c49d5257e4</commitId><timestamp>1771881720000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></author><authorEmail>hancoct@uwm.edu</authorEmail><comment>Added a space to test new python update scripts
</comment><date>2026-02-23 15:22:00 -0600</date><id>cee95675184d206d7d48d6b1dada20c49d5257e4</id><msg>Added a space to test new python update scripts</msg><path><editType>edit</editType><file>Changes_M2005</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>README.MICRO_M2005</affectedPath><commitId>d803a85c7b95b15d1a2236266152af312c1826c0</commitId><timestamp>1771885610000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></author><authorEmail>hancoct@uwm.edu</authorEmail><comment>Fixed space to match Clubb spacing
</comment><date>2026-02-23 16:26:50 -0600</date><id>d803a85c7b95b15d1a2236266152af312c1826c0</id><msg>Fixed space to match Clubb spacing</msg><path><editType>edit</editType><file>README.MICRO_M2005</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/Microphys/Morrison_microphys/README.MICRO_M2005</affectedPath><commitId>3031280ec54f8f86ac2603f8948447348f98a457</commitId><timestamp>1771888823000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Reverting accidental changes
</comment><date>2026-02-23 17:20:23 -0600</date><id>3031280ec54f8f86ac2603f8948447348f98a457</id><msg>Reverting accidental changes</msg><path><editType>edit</editType><file>src/Microphys/Morrison_microphys/README.MICRO_M2005</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_tuner.py</affectedPath><affectedPath>run_scripts/run_silhs_test.py</affectedPath><affectedPath>input_misc/tuner/error_atex.in</affectedPath><affectedPath>input_misc/tuner/error_rico.in</affectedPath><affectedPath>input_misc/tuner/error_gabls3_night.in</affectedPath><affectedPath>input_misc/tuner/error_nov11_altocu.in</affectedPath><affectedPath>input_misc/tuner/error_four_cases.in</affectedPath><affectedPath>input_misc/tuner/error_dycoms2_rf01.in</affectedPath><affectedPath>input_misc/tuner/error_dycoms2_rf02_ds.in</affectedPath><affectedPath>input_misc/tuner/error_wangara.in</affectedPath><affectedPath>postprocessing/pyplotgen/config/Case_definitions.py</affectedPath><affectedPath>input_misc/tuner/error_dycoms2_rf02_do.in</affectedPath><affectedPath>input/case_setups/README</affectedPath><affectedPath>input_misc/tuner/error_dycoms2_rf02_nd.in</affectedPath><affectedPath>input_misc/tuner/error_arm.in</affectedPath><affectedPath>input_misc/tuner/error_bomex.in</affectedPath><affectedPath>postprocessing/check_budgets_balance/checkBudget.py</affectedPath><affectedPath>src/Input_fields/input_fields.F90</affectedPath><affectedPath>input_misc/tuner/error_bomex_fire.in</affectedPath><affectedPath>run_scripts/run_restart_test.py</affectedPath><affectedPath>run_scripts/run_scm.bash</affectedPath><affectedPath>postprocessing/check_budgets_balance/futurizedReadBinaryData.py</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>run_scripts/run_bindiff_all.py</affectedPath><affectedPath>input_misc/tuner/error_all.in</affectedPath><affectedPath>input_misc/tuner/error_arm_97.in</affectedPath><affectedPath>input_misc/tuner/error_lba.in</affectedPath><affectedPath>postprocessing/pyplotgen/src/DataReader.py</affectedPath><affectedPath>postprocessing/check_budgets_balance/readBinaryData.py</affectedPath><affectedPath>postprocessing/pyplotgen/README.md</affectedPath><affectedPath>postprocessing/pyplotgen/pyplotgen.py</affectedPath><affectedPath>input_misc/tuner/error_fire.in</affectedPath><affectedPath>run_scripts/run_clubb_conv_test.py</affectedPath><affectedPath>src/error.F90</affectedPath><affectedPath>input_misc/tuner/error_gabls2.in</affectedPath><affectedPath>input_misc/tuner/error_ticket_756.in</affectedPath><affectedPath>postprocessing/pyplotgen/src/VariableGroup.py</affectedPath><commitId>52de37f932acbfdda066610e31a8eacff0e4eb72</commitId><timestamp>1771904124000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Legacy stats removal (#1273)

* First commit in removing legacy stats

* Removing accidentally added plots

* Updates to fix and improve various things. Removing grads handling from lots of test scripts

* Reverting old scripts to leave untouched

* More reversions

* More reversions

* Simplifications

* More reversions

* Simplifications

* Simplifications

* Simplification

* Simplification

* Simplification

* Simplification

* Small pyplotgen improvement

* Reverting case defs to use old scripts, removing need to unify old ones
</comment><date>2026-02-23 21:35:24 -0600</date><id>52de37f932acbfdda066610e31a8eacff0e4eb72</id><msg>Legacy stats removal (#1273)</msg><path><editType>edit</editType><file>run_scripts/run_bindiff_all.py</file></path><path><editType>edit</editType><file>input_misc/tuner/error_dycoms2_rf02_do.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_bomex.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_dycoms2_rf01.in</file></path><path><editType>delete</editType><file>postprocessing/check_budgets_balance/futurizedReadBinaryData.py</file></path><path><editType>edit</editType><file>run_scripts/run_restart_test.py</file></path><path><editType>edit</editType><file>input_misc/tuner/error_fire.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_lba.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_wangara.in</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/config/Case_definitions.py</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/src/DataReader.py</file></path><path><editType>edit</editType><file>input_misc/tuner/error_gabls2.in</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/README.md</file></path><path><editType>edit</editType><file>src/Input_fields/input_fields.F90</file></path><path><editType>edit</editType><file>input/case_setups/README</file></path><path><editType>edit</editType><file>input_misc/tuner/error_atex.in</file></path><path><editType>edit</editType><file>run_scripts/run_clubb_conv_test.py</file></path><path><editType>delete</editType><file>postprocessing/check_budgets_balance/readBinaryData.py</file></path><path><editType>edit</editType><file>input_misc/tuner/error_dycoms2_rf02_nd.in</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/pyplotgen.py</file></path><path><editType>edit</editType><file>run_scripts/run_silhs_test.py</file></path><path><editType>edit</editType><file>input_misc/tuner/error_arm.in</file></path><path><editType>edit</editType><file>src/error.F90</file></path><path><editType>edit</editType><file>postprocessing/check_budgets_balance/checkBudget.py</file></path><path><editType>edit</editType><file>input_misc/tuner/error_ticket_756.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_four_cases.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_all.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_bomex_fire.in</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>edit</editType><file>input_misc/tuner/error_nov11_altocu.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_arm_97.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_dycoms2_rf02_ds.in</file></path><path><editType>edit</editType><file>input_misc/tuner/error_gabls3_night.in</file></path><path><editType>edit</editType><file>run_scripts/run_scm.bash</file></path><path><editType>edit</editType><file>input_misc/tuner/error_rico.in</file></path><path><editType>edit</editType><file>run_scripts/run_tuner.py</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/src/VariableGroup.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>postprocessing/pyplotgen/config/Case_definitions.py</affectedPath><commitId>1d2996e43e6b32cb4cbc77931302a225c442888e</commitId><timestamp>1771918969000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Missed some wrf changes
</comment><date>2026-02-24 01:42:49 -0600</date><id>1d2996e43e6b32cb4cbc77931302a225c442888e</id><msg>Missed some wrf changes</msg><path><editType>edit</editType><file>postprocessing/pyplotgen/config/Case_definitions.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>505</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/505/</url></nextBuild><previousBuild><number>503</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/503/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Gunther Huebler</shortDescription><userId>huebler</userId><userName>Gunther Huebler</userName></cause></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>503</buildNumber><marked><SHA1>b622e32ad405141f1bb36bd9ef41b5e066c95061</SHA1><branch><SHA1>b622e32ad405141f1bb36bd9ef41b5e066c95061</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>b622e32ad405141f1bb36bd9ef41b5e066c95061</SHA1><branch><SHA1>b622e32ad405141f1bb36bd9ef41b5e066c95061</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>b622e32ad405141f1bb36bd9ef41b5e066c95061</SHA1><branch><SHA1>b622e32ad405141f1bb36bd9ef41b5e066c95061</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#503</displayName><duration>292672</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #503</fullDisplayName><id>503</id><keepLog>false</keepLog><number>503</number><queueId>1250</queueId><result>SUCCESS</result><timestamp>1771388785696</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/503/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_restart_silhs_gfortran_test/Jenkinsfile</affectedPath><affectedPath>run_scripts/run_tuner.py</affectedPath><affectedPath>src/CLUBB_core/advance_wp2_wp3_module.F90</affectedPath><affectedPath>src/Input_fields/stat_file_utils.F90</affectedPath><affectedPath>src/Input_fields/hydrostatic_module.F90</affectedPath><affectedPath>src/Benchmark_cases/cloud_sed_module.F90</affectedPath><affectedPath>src/CLUBB_core/sfc_varnce_module.F90</affectedPath><affectedPath>dash_app/tab_compare.py</affectedPath><affectedPath>src/CLUBB_core/mixing_length.F90</affectedPath><affectedPath>src/CLUBB_core/stats_type.F90</affectedPath><affectedPath>jenkins_tests/clubb_timestep_convergence_gfortran_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_nvhpc_single_prec_build/Jenkinsfile</affectedPath><affectedPath>src/G_unit_test_types/CMakeLists.txt</affectedPath><affectedPath>src/Microphys/KK_microphys/KK_upscaled_covariances.F90</affectedPath><affectedPath>src/Microphys/ice_dfsn_module.F90</affectedPath><affectedPath>src/CLUBB_core/stat_file_module.F90</affectedPath><affectedPath>input/stats/fire_stats.in</affectedPath><affectedPath>jenkins_tests/clubb_gfortran_debug_run/Jenkinsfile</affectedPath><affectedPath>src/extrapolation.F90</affectedPath><affectedPath>src/generalized_grid_test.F90</affectedPath><affectedPath>input/stats/tuning_stats.in</affectedPath><affectedPath>input/stats/all_stats.in</affectedPath><affectedPath>jenkins_tests/clubb_ifort_build/Jenkinsfile</affectedPath><affectedPath>src/SILHS/latin_hypercube_driver_module.F90</affectedPath><affectedPath>dash_app/assets/30_run_ui_resize.js</affectedPath><affectedPath>src/Microphys/morrison_microphys_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xp2_xpyp_module.F90</affectedPath><affectedPath>run_scripts/check_budget_balance.py</affectedPath><affectedPath>src/SILHS/output_2D_samples_module.F90</affectedPath><affectedPath>src/input_grads.F90</affectedPath><affectedPath>src/input_netcdf.F90</affectedPath><affectedPath>src/CLUBB_core/matrix_solver_wrapper.F90</affectedPath><affectedPath>src/Input_fields/corr_varnce_input_reader.F90</affectedPath><affectedPath>src/CLUBB_core/clubb_api_module.F90</affectedPath><affectedPath>src/CLUBB_core/stats_lh_zt_module.F90</affectedPath><affectedPath>jenkins_tests/clubb_restart_gfortran_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_mac_gfortran_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_nvhpc_gpu_column_mirror_test/Jenkinsfile</affectedPath><affectedPath>src/G_unit_tests.F90</affectedPath><affectedPath>src/CLUBB_core/interpolation.F90</affectedPath><affectedPath>src/Radiation/BUGSrad/variables_radiation_module.F90</affectedPath><affectedPath>src/Microphys/Microphys_utils/microphys_stats_vars_module.F90</affectedPath><affectedPath>src/CLUBB_core/stats_netcdf.F90</affectedPath><affectedPath>run_scripts/run_restart_test.bash</affectedPath><affectedPath>src/Microphys/pdf_hydromet_microphys_wrapper.F90</affectedPath><affectedPath>input/stats/multi_col_stats.in</affectedPath><affectedPath>src/Input_fields/input_grads.F90</affectedPath><affectedPath>src/Microphys/lh_microphys_driver_module.F90</affectedPath><affectedPath>src/clubb_standalone.F90</affectedPath><affectedPath>jenkins_tests/clubb_plot_nvhpc_gpu_vs_cpu/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_gfortran_build/Jenkinsfile</affectedPath><affectedPath>utilities/split_stats_to_legacy.py</affectedPath><affectedPath>src/Input_fields/input_reader.F90</affectedPath><affectedPath>input/stats/nobudgets_stats.in</affectedPath><affectedPath>src/hydrostatic_module.F90</affectedPath><affectedPath>jenkins_tests/clubb_silhs_convergence_gfortran/Jenkinsfile</affectedPath><affectedPath>src/CLUBB_core/output_grads.F90</affectedPath><affectedPath>src/G_unit_test_types/spurious_source_test.F90</affectedPath><affectedPath>src/input_fields.F90</affectedPath><affectedPath>src/Input_fields/CMakeLists.txt</affectedPath><affectedPath>dash_app/app.py</affectedPath><affectedPath>src/Microphys/CMakeLists.txt</affectedPath><affectedPath>src/SILHS/silhs_api_module.F90</affectedPath><affectedPath>src/Microphys/microphys_init_cleanup.F90</affectedPath><affectedPath>src/G_unit_test_types/read_corr_mtx_test.F90</affectedPath><affectedPath>jenkins_tests/clubb_nvhpc_gpu_vs_cpu_diffness/Jenkinsfile</affectedPath><affectedPath>src/CLUBB_core/numerical_check.F90</affectedPath><affectedPath>compile/file_list/clubb_model_files</affectedPath><affectedPath>src/CLUBB_core/precipitation_fraction.F90</affectedPath><affectedPath>src/CLUBB_core/stats_zm_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><affectedPath>src/jacobian.F90</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>src/CLUBB_core/CMakeLists.txt</affectedPath><affectedPath>src/CLUBB_core/corr_varnce_module.F90</affectedPath><affectedPath>src/Input_fields/recl.inc</affectedPath><affectedPath>README</affectedPath><affectedPath>src/CLUBB_core/fill_holes.F90</affectedPath><affectedPath>src/Microphys/microphys_driver.F90</affectedPath><affectedPath>src/Input_fields/extrapolation.F90</affectedPath><affectedPath>input/stats/nightly_stats.in</affectedPath><affectedPath>src/Radiation/radiation_module.F90</affectedPath><affectedPath>src/CLUBB_core/recl.inc</affectedPath><affectedPath>run_scripts/run_silhs_test.py</affectedPath><affectedPath>input/stats/standard_stats.in</affectedPath><affectedPath>src/CLUBB_core/advance_xp3_module.F90</affectedPath><affectedPath>src/Radiation/simple_rad_module.F90</affectedPath><affectedPath>jenkins_tests/clubb_plot_ifort_debug/Jenkinsfile</affectedPath><affectedPath>src/Microphys/KK_microphys/KK_upscaled_turbulent_sed.F90</affectedPath><affectedPath>src/CLUBB_core/pdf_closure_module.F90</affectedPath><affectedPath>src/CLUBB_core/stats_rad_zt_module.F90</affectedPath><affectedPath>src/SILHS/CMakeLists.txt</affectedPath><affectedPath>src/stat_file_utils.F90</affectedPath><affectedPath>src/CLUBB_core/input_reader.F90</affectedPath><affectedPath>src/CLUBB_core/remapping_module.F90</affectedPath><affectedPath>src/CLUBB_core/stats_type_utilities.F90</affectedPath><affectedPath>src/Microphys/advance_microphys_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_windm_edsclrm_module.F90</affectedPath><affectedPath>src/CLUBB_core/output_netcdf.F90</affectedPath><affectedPath>run_scripts/run_bindiff_all.bash</affectedPath><affectedPath>src/Microphys/cloud_sed_module.F90</affectedPath><affectedPath>src/clubb_driver_test.F90</affectedPath><affectedPath>jenkins_tests/clubb_openmp_gfortran_test/Jenkinsfile</affectedPath><affectedPath>input/stats/scalars_stats.in</affectedPath><affectedPath>jenkins_tests/clubb_backwards_compatibility_gfortran_test/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_nvhpc_debug_build/Jenkinsfile</affectedPath><affectedPath>src/Microphys/estimate_scm_microphys_module.F90</affectedPath><affectedPath>src/Input_fields/input_interpret.F90</affectedPath><affectedPath>postprocessing/check_budgets_balance/checkBudget.py</affectedPath><affectedPath>src/CLUBB_core/clip_explicit.F90</affectedPath><affectedPath>src/Input_fields/input_names.F90</affectedPath><affectedPath>src/Microphys/coamps_microphys_driver_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xm_wpxp_module.F90</affectedPath><affectedPath>run_scripts/check_multi_col_avg.py</affectedPath><affectedPath>run_scripts/create_multi_col_params.py</affectedPath><affectedPath>dash_app/assets/20_autoscroll.js</affectedPath><affectedPath>dash_app/case_definitions.py</affectedPath><affectedPath>run_scripts/fire_tuner.py</affectedPath><affectedPath>input/stats/nobudgets_nomicro_stats.in</affectedPath><affectedPath>src/int2txt.F90</affectedPath><affectedPath>src/Input_fields/sounding.F90</affectedPath><affectedPath>src/Input_fields/stat_file_module.F90</affectedPath><affectedPath>src/CLUBB_core/setup_clubb_pdf_params.F90</affectedPath><affectedPath>src/Benchmark_cases/prescribe_forcings.F90</affectedPath><affectedPath>run_scripts/run_clubb_conv_test.py</affectedPath><affectedPath>jenkins_tests/clubb_release_intel_build/Jenkinsfile</affectedPath><affectedPath>src/CLUBB_core/stats_variables.F90</affectedPath><affectedPath>src/CLUBB_core/input_names.F90</affectedPath><affectedPath>jenkins_tests/clubb_rev_grid_matrix_solve_test/Jenkinsfile</affectedPath><affectedPath>src/CLUBB_core/stats_rad_zm_module.F90</affectedPath><affectedPath>src/Microphys/KK_microphys_module.F90</affectedPath><affectedPath>run_scripts/check_mirrored_multi_col_output.py</affectedPath><affectedPath>src/Microphys/Morrison_microphys/README.MICRO_M2005</affectedPath><affectedPath>jenkins_tests/clubb_fire_tuning_gfortran_test/Jenkinsfile</affectedPath><affectedPath>input/stats/nightly_stats_scalars.in</affectedPath><affectedPath>src/Benchmark_cases/CMakeLists.txt</affectedPath><affectedPath>jenkins_tests/clubb_G_unit_reverse_dir_grid_test/Jenkinsfile</affectedPath><affectedPath>src/Input_fields/input_netcdf.F90</affectedPath><affectedPath>src/CLUBB_core/stats_clubb_utilities.F90</affectedPath><affectedPath>src/Microphys/microphys_interface.inc</affectedPath><affectedPath>input/stats/host_budgets_stats.in</affectedPath><affectedPath>dash_app/tab_run.py</affectedPath><affectedPath>src/CLUBB_core/mono_flux_limiter.F90</affectedPath><affectedPath>dash_app/assets/11_tab_run_theme.css</affectedPath><affectedPath>src/CLUBB_core/advance_helper_module.F90</affectedPath><affectedPath>src/CLUBB_core/stats_lh_sfc_module.F90</affectedPath><affectedPath>dash_app/tab_multicol.py</affectedPath><affectedPath>jenkins_tests/clubb_check_budget_balance_gfortran/Jenkinsfile</affectedPath><affectedPath>jenkins_tests/clubb_timestep_gfortran_tests/Jenkinsfile</affectedPath><affectedPath>dash_app/assets/10_theme.css</affectedPath><affectedPath>src/Microphys/mixed_moment_PDF_integrals.F90</affectedPath><affectedPath>src/input_interpret.F90</affectedPath><affectedPath>src/Input_fields/input_fields.F90</affectedPath><affectedPath>src/clubb_thread_test.F90</affectedPath><affectedPath>run_scripts/run_restart_test.py</affectedPath><affectedPath>src/soil_vegetation.F90</affectedPath><affectedPath>run_scripts/run_scm.py</affectedPath><affectedPath>src/CLUBB_core/stats_sfc_module.F90</affectedPath><affectedPath>run_scripts/run_bindiff_all.py</affectedPath><affectedPath>src/sounding.F90</affectedPath><affectedPath>run_scripts/run_thread_test.py</affectedPath><affectedPath>src/Microphys/silhs_category_variance_module.F90</affectedPath><affectedPath>jenkins_tests/clubb_nvhpc_gpu_multi_col_avg_test/Jenkinsfile</affectedPath><affectedPath>run_scripts/test_monoflux_limiter_GPU.py</affectedPath><affectedPath>src/CLUBB_core/stats_zt_module.F90</affectedPath><affectedPath>src/CMakeLists.txt</affectedPath><affectedPath>src/error.F90</affectedPath><commitId>3d4d74a0d0295936253484c54693f9eac230f604</commitId><timestamp>1771386880000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>New stats system  (#1270)

* Initial commit for the new stats system

* Adding helper scripts

* Fixes and another script

* Updates

* Improvements

* Fixed bug in all_stats.in

* Updates

* Adding dash app

* Updates, also including new dash app since I'm finding it quite useful

* Improvements/fixes and adding missing variable to all_stats.in

* Updates

* Moving wp2sclrp, wpsclrp2, wpsclrprtp, and wpsclrpthlp to the zt netcdf output file, since those are zt variables. Also adding a missing variable, rcm_in_cloud, to all_stats.in and correcting a missing comma bug. This is technically BIT_CHANGING because the variables are moving files, but the stored data is identical from 1:nzt - the nzm level just had garbage for those variables and is now gone.

* Updates

* Updates

* The big stats pull, only new stats remains now

* Some cleanup

* Lot's of core rework, new index caching system speeds things up

* Missed files

* Small improvements a bug fix to the grid remapped output

* Fixing up logic and ordering things a bit better

* Little improvements

* Cleanup and simplications to new stats core

* Little improvements, mostly to dash app

* Mostly cleanup

* Making GPU code work

* Making more scripts work

* Fixing line lengths

* Bug fixes

* Bug fixes

* Bug fixes

* Bug fixes

* Bug fixes and script updates

* Jenkins script update

* Jenkins script update

* Jenkins script update

* Jenkins script update

* Jenkins script update

* Jenkins script update

* Script update

* Script update

* Script update

* Script update

* Script update

* Script update

* Script update

* Test update

* Jenkins script update

* Test update

* Fixing bug

* Fixing bug

* Fixing up comments

* Small fixes

* Jenkins script update

* CMake update

* Little fix for cmake

* Jenkins script update

* Jenkins script updateS

* Cmake update

* Jenkins script update

* Jenkins script update

* Jenkins script updates

* Adding new stats input

* Small fixes

* Fixing old compile scripts

* Jenkins script updates

* Jenkins script updates

* Jenkins script updates

* Little fixes

* Little cmake fix

* Little jenkins fix

* Mono flux test update and _api renamings

* Small Jenkins fix

* Adding missing comments back

* Even more comments

* stats updates

* Even more comments

* Various small improvements

* Removing test statsd

* Adding some things back to _api and adding structure explaining comment in stats files.

* Many more comments

* Removing plan file

* Spelling fix
</comment><date>2026-02-17 21:54:40 -0600</date><id>3d4d74a0d0295936253484c54693f9eac230f604</id><msg>New stats system  (#1270)</msg><path><editType>edit</editType><file>src/CLUBB_core/advance_helper_module.F90</file></path><path><editType>edit</editType><file>compile/file_list/clubb_model_files</file></path><path><editType>delete</editType><file>src/stat_file_utils.F90</file></path><path><editType>edit</editType><file>input/stats/tuning_stats.in</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/CMakeLists.txt</file></path><path><editType>edit</editType><file>src/Microphys/silhs_category_variance_module.F90</file></path><path><editType>edit</editType><file>src/G_unit_test_types/spurious_source_test.F90</file></path><path><editType>edit</editType><file>run_scripts/create_multi_col_params.py</file></path><path><editType>add</editType><file>dash_app/assets/10_theme.css</file></path><path><editType>edit</editType><file>input/stats/scalars_stats.in</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_ifort_build/Jenkinsfile</file></path><path><editType>delete</editType><file>src/hydrostatic_module.F90</file></path><path><editType>edit</editType><file>src/SILHS/silhs_api_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/CMakeLists.txt</file></path><path><editType>add</editType><file>run_scripts/fire_tuner.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xp2_xpyp_module.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_timestep_gfortran_tests/Jenkinsfile</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_plot_nvhpc_gpu_vs_cpu/Jenkinsfile</file></path><path><editType>edit</editType><file>src/CLUBB_core/clip_explicit.F90</file></path><path><editType>edit</editType><file>src/SILHS/latin_hypercube_driver_module.F90</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_all.bash</file></path><path><editType>edit</editType><file>src/CLUBB_core/clubb_api_module.F90</file></path><path><editType>add</editType><file>src/Input_fields/hydrostatic_module.F90</file></path><path><editType>edit</editType><file>src/Microphys/morrison_microphys_module.F90</file></path><path><editType>add</editType><file>src/Input_fields/input_names.F90</file></path><path><editType>delete</editType><file>src/CLUBB_core/stats_rad_zm_module.F90</file></path><path><editType>edit</editType><file>src/Microphys/KK_microphys_module.F90</file></path><path><editType>delete</editType><file>src/CLUBB_core/recl.inc</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_nvhpc_gpu_column_mirror_test/Jenkinsfile</file></path><path><editType>edit</editType><file>src/Microphys/pdf_hydromet_microphys_wrapper.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_gfortran_build/Jenkinsfile</file></path><path><editType>edit</editType><file>src/CLUBB_core/matrix_solver_wrapper.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_check_budget_balance_gfortran/Jenkinsfile</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_nvhpc_gpu_vs_cpu_diffness/Jenkinsfile</file></path><path><editType>edit</editType><file>README</file></path><path><editType>edit</editType><file>input/stats/all_stats.in</file></path><path><editType>add</editType><file>dash_app/assets/20_autoscroll.js</file></path><path><editType>edit</editType><file>input/stats/standard_stats.in</file></path><path><editType>edit</editType><file>src/error.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_clubb_utilities.F90</file></path><path><editType>add</editType><file>src/Input_fields/corr_varnce_input_reader.F90</file></path><path><editType>add</editType><file>dash_app/assets/30_run_ui_resize.js</file></path><path><editType>edit</editType><file>src/Radiation/BUGSrad/variables_radiation_module.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_nvhpc_debug_build/Jenkinsfile</file></path><path><editType>delete</editType><file>src/CLUBB_core/input_reader.F90</file></path><path><editType>edit</editType><file>src/Microphys/Microphys_utils/microphys_stats_vars_module.F90</file></path><path><editType>delete</editType><file>src/CLUBB_core/stats_lh_zt_module.F90</file></path><path><editType>edit</editType><file>src/clubb_driver_test.F90</file></path><path><editType>edit</editType><file>src/Microphys/microphys_driver.F90</file></path><path><editType>edit</editType><file>src/clubb_standalone.F90</file></path><path><editType>edit</editType><file>src/Microphys/KK_microphys/KK_upscaled_turbulent_sed.F90</file></path><path><editType>edit</editType><file>src/Microphys/KK_microphys/KK_upscaled_covariances.F90</file></path><path><editType>delete</editType><file>src/Benchmark_cases/cloud_sed_module.F90</file></path><path><editType>edit</editType><file>src/Microphys/mixed_moment_PDF_integrals.F90</file></path><path><editType>add</editType><file>utilities/split_stats_to_legacy.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xm_wpxp_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xp3_module.F90</file></path><path><editType>edit</editType><file>src/Microphys/microphys_init_cleanup.F90</file></path><path><editType>add</editType><file>input/stats/fire_stats.in</file></path><path><editType>edit</editType><file>postprocessing/check_budgets_balance/checkBudget.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/pdf_closure_module.F90</file></path><path><editType>edit</editType><file>src/Radiation/simple_rad_module.F90</file></path><path><editType>delete</editType><file>jenkins_tests/clubb_nvhpc_gpu_multi_col_avg_test/Jenkinsfile</file></path><path><editType>add</editType><file>run_scripts/run_restart_test.py</file></path><path><editType>add</editType><file>dash_app/tab_compare.py</file></path><path><editType>delete</editType><file>src/CLUBB_core/input_names.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/numerical_check.F90</file></path><path><editType>edit</editType><file>src/G_unit_test_types/CMakeLists.txt</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_plot_ifort_debug/Jenkinsfile</file></path><path><editType>add</editType><file>run_scripts/check_budget_balance.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/setup_clubb_pdf_params.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/prescribe_forcings.F90</file></path><path><editType>delete</editType><file>src/input_interpret.F90</file></path><path><editType>delete</editType><file>src/CLUBB_core/stats_type.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_wp2_wp3_module.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_openmp_gfortran_test/Jenkinsfile</file></path><path><editType>add</editType><file>src/Input_fields/CMakeLists.txt</file></path><path><editType>add</editType><file>src/Input_fields/extrapolation.F90</file></path><path><editType>delete</editType><file>src/sounding.F90</file></path><path><editType>edit</editType><file>src/clubb_thread_test.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_nvhpc_single_prec_build/Jenkinsfile</file></path><path><editType>delete</editType><file>src/CLUBB_core/stats_type_utilities.F90</file></path><path><editType>delete</editType><file>src/input_fields.F90</file></path><path><editType>edit</editType><file>src/generalized_grid_test.F90</file></path><path><editType>edit</editType><file>src/int2txt.F90</file></path><path><editType>delete</editType><file>run_scripts/run_restart_test.bash</file></path><path><editType>edit</editType><file>src/Microphys/Morrison_microphys/README.MICRO_M2005</file></path><path><editType>add</editType><file>dash_app/tab_multicol.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_gfortran_debug_run/Jenkinsfile</file></path><path><editType>edit</editType><file>input/stats/nobudgets_nomicro_stats.in</file></path><path><editType>edit</editType><file>src/CLUBB_core/corr_varnce_module.F90</file></path><path><editType>delete</editType><file>src/CLUBB_core/stats_sfc_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/fill_holes.F90</file></path><path><editType>edit</editType><file>input/stats/nobudgets_stats.in</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_restart_silhs_gfortran_test/Jenkinsfile</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_windm_edsclrm_module.F90</file></path><path><editType>delete</editType><file>src/CLUBB_core/stat_file_module.F90</file></path><path><editType>add</editType><file>src/Microphys/cloud_sed_module.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_fire_tuning_gfortran_test/Jenkinsfile</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_restart_gfortran_test/Jenkinsfile</file></path><path><editType>edit</editType><file>src/Microphys/estimate_scm_microphys_module.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_release_intel_build/Jenkinsfile</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_all.py</file></path><path><editType>delete</editType><file>src/CLUBB_core/stats_zt_module.F90</file></path><path><editType>add</editType><file>src/Input_fields/sounding.F90</file></path><path><editType>add</editType><file>src/Input_fields/stat_file_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/precipitation_fraction.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/remapping_module.F90</file></path><path><editType>add</editType><file>src/Input_fields/input_reader.F90</file></path><path><editType>edit</editType><file>run_scripts/check_mirrored_multi_col_output.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/mixing_length.F90</file></path><path><editType>delete</editType><file>run_scripts/check_multi_col_avg.py</file></path><path><editType>edit</editType><file>src/Microphys/advance_microphys_module.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_mac_gfortran_test/Jenkinsfile</file></path><path><editType>add</editType><file>dash_app/case_definitions.py</file></path><path><editType>add</editType><file>src/Input_fields/input_fields.F90</file></path><path><editType>add</editType><file>src/Input_fields/recl.inc</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_silhs_convergence_gfortran/Jenkinsfile</file></path><path><editType>edit</editType><file>run_scripts/run_thread_test.py</file></path><path><editType>edit</editType><file>src/jacobian.F90</file></path><path><editType>add</editType><file>dash_app/assets/11_tab_run_theme.css</file></path><path><editType>add</editType><file>src/CLUBB_core/stats_netcdf.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_G_unit_reverse_dir_grid_test/Jenkinsfile</file></path><path><editType>add</editType><file>run_scripts/run_silhs_test.py</file></path><path><editType>edit</editType><file>src/G_unit_test_types/read_corr_mtx_test.F90</file></path><path><editType>edit</editType><file>src/Radiation/radiation_module.F90</file></path><path><editType>delete</editType><file>src/CLUBB_core/stats_rad_zt_module.F90</file></path><path><editType>delete</editType><file>src/extrapolation.F90</file></path><path><editType>edit</editType><file>src/CMakeLists.txt</file></path><path><editType>delete</editType><file>src/SILHS/output_2D_samples_module.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_timestep_convergence_gfortran_test/Jenkinsfile</file></path><path><editType>add</editType><file>src/Input_fields/input_netcdf.F90</file></path><path><editType>edit</editType><file>run_scripts/test_monoflux_limiter_GPU.py</file></path><path><editType>add</editType><file>src/Input_fields/input_grads.F90</file></path><path><editType>edit</editType><file>src/SILHS/CMakeLists.txt</file></path><path><editType>edit</editType><file>src/CLUBB_core/sfc_varnce_module.F90</file></path><path><editType>delete</editType><file>src/CLUBB_core/stats_zm_module.F90</file></path><path><editType>add</editType><file>src/Input_fields/stat_file_utils.F90</file></path><path><editType>add</editType><file>input/stats/multi_col_stats.in</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_backwards_compatibility_gfortran_test/Jenkinsfile</file></path><path><editType>edit</editType><file>src/CLUBB_core/mono_flux_limiter.F90</file></path><path><editType>edit</editType><file>input/stats/nightly_stats_scalars.in</file></path><path><editType>edit</editType><file>src/G_unit_tests.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/interpolation.F90</file></path><path><editType>add</editType><file>src/Input_fields/input_interpret.F90</file></path><path><editType>delete</editType><file>src/CLUBB_core/output_netcdf.F90</file></path><path><editType>add</editType><file>dash_app/app.py</file></path><path><editType>edit</editType><file>src/Microphys/coamps_microphys_driver_module.F90</file></path><path><editType>edit</editType><file>input/stats/nightly_stats.in</file></path><path><editType>add</editType><file>run_scripts/run_tuner.py</file></path><path><editType>delete</editType><file>src/CLUBB_core/stats_lh_sfc_module.F90</file></path><path><editType>edit</editType><file>src/Microphys/lh_microphys_driver_module.F90</file></path><path><editType>edit</editType><file>src/soil_vegetation.F90</file></path><path><editType>delete</editType><file>src/input_grads.F90</file></path><path><editType>edit</editType><file>src/Microphys/microphys_interface.inc</file></path><path><editType>delete</editType><file>src/input_netcdf.F90</file></path><path><editType>edit</editType><file>input/stats/host_budgets_stats.in</file></path><path><editType>edit</editType><file>src/Microphys/CMakeLists.txt</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_rev_grid_matrix_solve_test/Jenkinsfile</file></path><path><editType>edit</editType><file>src/Microphys/ice_dfsn_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path><path><editType>delete</editType><file>src/CLUBB_core/stats_variables.F90</file></path><path><editType>delete</editType><file>src/CLUBB_core/output_grads.F90</file></path><path><editType>add</editType><file>dash_app/tab_run.py</file></path><path><editType>add</editType><file>run_scripts/run_clubb_conv_test.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/stats_netcdf.F90</affectedPath><affectedPath>run_scripts/fire_tuner.py</affectedPath><commitId>b622e32ad405141f1bb36bd9ef41b5e066c95061</commitId><timestamp>1771388597000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Fixing fire tuner
</comment><date>2026-02-17 22:23:17 -0600</date><id>b622e32ad405141f1bb36bd9ef41b5e066c95061</id><msg>Fixing fire tuner</msg><path><editType>edit</editType><file>src/CLUBB_core/stats_netcdf.F90</file></path><path><editType>edit</editType><file>run_scripts/fire_tuner.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>504</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/504/</url></nextBuild><previousBuild><number>502</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/502/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>502</buildNumber><marked><SHA1>40c5d0b7724ed353d1cca476ade7b6f8569e263c</SHA1><branch><SHA1>40c5d0b7724ed353d1cca476ade7b6f8569e263c</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>40c5d0b7724ed353d1cca476ade7b6f8569e263c</SHA1><branch><SHA1>40c5d0b7724ed353d1cca476ade7b6f8569e263c</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>40c5d0b7724ed353d1cca476ade7b6f8569e263c</SHA1><branch><SHA1>40c5d0b7724ed353d1cca476ade7b6f8569e263c</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#502</displayName><duration>1553453</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #502</fullDisplayName><id>502</id><keepLog>false</keepLog><number>502</number><queueId>802</queueId><result>SUCCESS</result><timestamp>1770888428240</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/502/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/CMakeLists.txt</affectedPath><commitId>92dfde364177231829c86e739a48ac23bef83696</commitId><timestamp>1770849785000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></author><authorEmail>hancoct@uwm.edu</authorEmail><comment>Removed blank line to test python update scripts
</comment><date>2026-02-11 16:43:05 -0600</date><id>92dfde364177231829c86e739a48ac23bef83696</id><msg>Removed blank line to test python update scripts</msg><path><editType>edit</editType><file>src/CLUBB_core/CMakeLists.txt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>README.MICRO_M2005</affectedPath><commitId>5a252b6bad0b47ba5418cb6475a2ee5ab104328d</commitId><timestamp>1770858267000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></author><authorEmail>hancoct@uwm.edu</authorEmail><comment>Fixed double space to test updateClubbMorrison.py python script
</comment><date>2026-02-11 19:04:27 -0600</date><id>5a252b6bad0b47ba5418cb6475a2ee5ab104328d</id><msg>Fixed double space to test updateClubbMorrison.py python script</msg><path><editType>edit</editType><file>README.MICRO_M2005</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/hancock</absoluteUrl><fullName>Trevor Hancock</fullName></culprit><inProgress>false</inProgress><nextBuild><number>503</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/503/</url></nextBuild><previousBuild><number>501</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/501/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>501</buildNumber><marked><SHA1>ff3d91fcabb2248cc86aabf4b585f489281db237</SHA1><branch><SHA1>ff3d91fcabb2248cc86aabf4b585f489281db237</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>ff3d91fcabb2248cc86aabf4b585f489281db237</SHA1><branch><SHA1>ff3d91fcabb2248cc86aabf4b585f489281db237</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>ff3d91fcabb2248cc86aabf4b585f489281db237</SHA1><branch><SHA1>ff3d91fcabb2248cc86aabf4b585f489281db237</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#501</displayName><duration>1801227</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #501</fullDisplayName><id>501</id><keepLog>false</keepLog><number>501</number><queueId>711</queueId><result>SUCCESS</result><timestamp>1770715629509</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/501/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/CMakeLists.txt</affectedPath><commitId>ff3d91fcabb2248cc86aabf4b585f489281db237</commitId><timestamp>1770687739000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/pickett</absoluteUrl><fullName>Cole Pickett</fullName></author><authorEmail>larsongroupgithub@gmail.com</authorEmail><comment>Added empty line to test update scripts
</comment><date>2026-02-09 19:42:19 -0600</date><id>ff3d91fcabb2248cc86aabf4b585f489281db237</id><msg>Added empty line to test update scripts</msg><path><editType>edit</editType><file>src/CLUBB_core/CMakeLists.txt</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/pickett</absoluteUrl><fullName>Cole Pickett</fullName></culprit><inProgress>false</inProgress><nextBuild><number>502</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/502/</url></nextBuild><previousBuild><number>500</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/500/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>500</buildNumber><marked><SHA1>678d409e86486e7b6b7f241893c3d325e2310a55</SHA1><branch><SHA1>678d409e86486e7b6b7f241893c3d325e2310a55</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>678d409e86486e7b6b7f241893c3d325e2310a55</SHA1><branch><SHA1>678d409e86486e7b6b7f241893c3d325e2310a55</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>678d409e86486e7b6b7f241893c3d325e2310a55</SHA1><branch><SHA1>678d409e86486e7b6b7f241893c3d325e2310a55</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#500</displayName><duration>1582019</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #500</fullDisplayName><id>500</id><keepLog>false</keepLog><number>500</number><queueId>614</queueId><result>SUCCESS</result><timestamp>1770370026525</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/500/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/stats_zt_module.F90</affectedPath><affectedPath>input/stats/scalars_stats.in</affectedPath><affectedPath>src/CLUBB_core/stats_clubb_utilities.F90</affectedPath><affectedPath>input/stats/all_stats.in</affectedPath><affectedPath>src/CLUBB_core/stats_zm_module.F90</affectedPath><commitId>678d409e86486e7b6b7f241893c3d325e2310a55</commitId><timestamp>1770322192000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Moving wp2sclrp, wpsclrp2, wpsclrprtp, and wpsclrpthlp to the zt netcdf output file, since those are zt variables. Also adding a missing variable, rcm_in_cloud, to all_stats.in and correcting a missing comma bug. This is technically BIT_CHANGING because the variables are moving files, but the stored data is identical from 1:nzt - the nzm level just had garbage for those variables and is now gone. (#1271)

</comment><date>2026-02-05 14:09:52 -0600</date><id>678d409e86486e7b6b7f241893c3d325e2310a55</id><msg>Moving wp2sclrp, wpsclrp2, wpsclrprtp, and wpsclrpthlp to the zt netcdf output file, since those are zt variables. Also adding a missing variable, rcm_in_cloud, to all_stats.in and correcting a missing comma bug. This is technically BIT_CHANGING because the variables are moving files, but the stored data is identical from 1:nzt - the nzm level just had garbage for those variables and is now gone. (#1271)</msg><path><editType>edit</editType><file>input/stats/all_stats.in</file></path><path><editType>edit</editType><file>input/stats/scalars_stats.in</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_zt_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_zm_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_clubb_utilities.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>501</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/501/</url></nextBuild><previousBuild><number>499</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/499/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>499</buildNumber><marked><SHA1>f1b6cfe91fd5c120333991b2386dd7e7845ae2e3</SHA1><branch><SHA1>f1b6cfe91fd5c120333991b2386dd7e7845ae2e3</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>f1b6cfe91fd5c120333991b2386dd7e7845ae2e3</SHA1><branch><SHA1>f1b6cfe91fd5c120333991b2386dd7e7845ae2e3</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>f1b6cfe91fd5c120333991b2386dd7e7845ae2e3</SHA1><branch><SHA1>f1b6cfe91fd5c120333991b2386dd7e7845ae2e3</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#499</displayName><duration>619808</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #499</fullDisplayName><id>499</id><keepLog>false</keepLog><number>499</number><queueId>521</queueId><result>SUCCESS</result><timestamp>1768037228188</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/499/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>input/case_setups/cgils_s6_model.in</affectedPath><affectedPath>src/CLUBB_core/advance_wp2_wp3_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xp2_xpyp_module.F90</affectedPath><commitId>8033a1492b3b2ce6c8d314942d2fba00669188c3</commitId><timestamp>1767951630000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>GPU fixed and cgils_s6 fix
</comment><date>2026-01-09 03:40:30 -0600</date><id>8033a1492b3b2ce6c8d314942d2fba00669188c3</id><msg>GPU fixed and cgils_s6 fix</msg><path><editType>edit</editType><file>src/CLUBB_core/advance_wp2_wp3_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xp2_xpyp_module.F90</file></path><path><editType>edit</editType><file>input/case_setups/cgils_s6_model.in</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/clubb_driver.F90</affectedPath><commitId>1c7c6ce6eaba598c7e10dc276e152a825a0642ac</commitId><timestamp>1767953771000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Adding deallocation for fcor_y
</comment><date>2026-01-09 04:16:11 -0600</date><id>1c7c6ce6eaba598c7e10dc276e152a825a0642ac</id><msg>Adding deallocation for fcor_y</msg><path><editType>edit</editType><file>src/clubb_driver.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/clubb_driver.F90</affectedPath><commitId>d93dd4e58f75626f8b70b6e631d463aed4ed53fa</commitId><timestamp>1767954031000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>More small bug fixes
</comment><date>2026-01-09 04:20:31 -0600</date><id>d93dd4e58f75626f8b70b6e631d463aed4ed53fa</id><msg>More small bug fixes</msg><path><editType>edit</editType><file>src/clubb_driver.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/clubb_api_module.F90</affectedPath><affectedPath>src/CLUBB_core/pdf_closure_module.F90</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><commitId>ba709f78476c6e1868009855327c1d42cbb90410</commitId><timestamp>1767981713000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>More small bug fixes
</comment><date>2026-01-09 12:01:53 -0600</date><id>ba709f78476c6e1868009855327c1d42cbb90410</id><msg>More small bug fixes</msg><path><editType>edit</editType><file>src/CLUBB_core/clubb_api_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/pdf_closure_module.F90</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/clubb_driver.F90</affectedPath><commitId>ba5dd963b14b0238fc5e8b358390af68a66aa3a0</commitId><timestamp>1767985840000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Another small gpu bug fix
</comment><date>2026-01-09 13:10:40 -0600</date><id>ba5dd963b14b0238fc5e8b358390af68a66aa3a0</id><msg>Another small gpu bug fix</msg><path><editType>edit</editType><file>src/clubb_driver.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/clubb_api_module.F90</affectedPath><commitId>f1b6cfe91fd5c120333991b2386dd7e7845ae2e3</commitId><timestamp>1767993114000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Removing extra acc end statement
</comment><date>2026-01-09 15:11:54 -0600</date><id>f1b6cfe91fd5c120333991b2386dd7e7845ae2e3</id><msg>Removing extra acc end statement</msg><path><editType>edit</editType><file>src/CLUBB_core/clubb_api_module.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>500</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/500/</url></nextBuild><previousBuild><number>498</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/498/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>498</buildNumber><marked><SHA1>4902a5ccf6c0da1bf588ea853aaadbc9a776dfa2</SHA1><branch><SHA1>4902a5ccf6c0da1bf588ea853aaadbc9a776dfa2</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>4902a5ccf6c0da1bf588ea853aaadbc9a776dfa2</SHA1><branch><SHA1>4902a5ccf6c0da1bf588ea853aaadbc9a776dfa2</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>4902a5ccf6c0da1bf588ea853aaadbc9a776dfa2</SHA1><branch><SHA1>4902a5ccf6c0da1bf588ea853aaadbc9a776dfa2</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#498</displayName><duration>383905</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #498</fullDisplayName><id>498</id><keepLog>false</keepLog><number>498</number><queueId>358</queueId><result>SUCCESS</result><timestamp>1767950827216</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/498/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>input/case_setups/atex_long_edsclr_sounding.in</affectedPath><affectedPath>src/CLUBB_core/advance_wp2_wp3_module.F90</affectedPath><affectedPath>input/stats/standard_stats.in</affectedPath><affectedPath>input/case_setups/coriolis_test_edsclr_sounding.in</affectedPath><affectedPath>src/CLUBB_core/pdf_closure_module.F90</affectedPath><affectedPath>input/case_setups/atex_long_sfc.in</affectedPath><affectedPath>input/tunable_parameters_coriolis_cases/ekman_parameters.in</affectedPath><affectedPath>input/tunable_parameters_coriolis_cases/atex_long_parameters.in</affectedPath><affectedPath>src/clubb_tuner.F90</affectedPath><affectedPath>input/case_setups/coriolis_test_sfc.in</affectedPath><affectedPath>src/CLUBB_core/output_netcdf.F90</affectedPath><affectedPath>src/CLUBB_core/model_flags.F90</affectedPath><affectedPath>input/case_setups/cgils_s6_model.in</affectedPath><affectedPath>input/case_setups/coriolis_test_sounding.in</affectedPath><affectedPath>src/G_unit_test_types/pdf_parameter_tests.F90</affectedPath><affectedPath>input/case_setups/ekman_sfc.in</affectedPath><affectedPath>input/stats/scalars_stats.in</affectedPath><affectedPath>src/generalized_grid_test.F90</affectedPath><affectedPath>input/case_setups/coriolis_test_sclr_sounding.in</affectedPath><affectedPath>input/case_setups/ekman_edsclr_sounding.in</affectedPath><affectedPath>input/stats/all_stats.in</affectedPath><affectedPath>src/Benchmark_cases/ekman.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xp2_xpyp_module.F90</affectedPath><affectedPath>input/case_setups/ekman_sclr_sounding.in</affectedPath><affectedPath>src/CLUBB_core/advance_xm_wpxp_module.F90</affectedPath><affectedPath>input/tunable_parameters_coriolis_cases/coriolis_test_parameters.in</affectedPath><affectedPath>input/case_setups/coriolis_test_model.in</affectedPath><affectedPath>src/CLUBB_core/clubb_api_module.F90</affectedPath><affectedPath>input/stats/nobudgets_nomicro_stats.in</affectedPath><affectedPath>src/Benchmark_cases/prescribe_forcings.F90</affectedPath><affectedPath>input/tunable_parameters/configurable_model_flags.in</affectedPath><affectedPath>src/Benchmark_cases/atex_long.F90</affectedPath><affectedPath>src/CLUBB_core/stats_variables.F90</affectedPath><affectedPath>src/CLUBB_core/grid_adaptation_module.F90</affectedPath><affectedPath>run_scripts/run_bindiff_w_flags_config_core_flags.json</affectedPath><affectedPath>input/case_setups/ekman_model.in</affectedPath><affectedPath>src/Benchmark_cases/CMakeLists.txt</affectedPath><affectedPath>postprocessing/pyplotgen/config/Case_definitions.py</affectedPath><affectedPath>input/stats/host_budgets_stats.in</affectedPath><affectedPath>src/CLUBB_core/stats_clubb_utilities.F90</affectedPath><affectedPath>input/case_setups/atex_long_model.in</affectedPath><affectedPath>input/stats/nobudgets_stats.in</affectedPath><affectedPath>src/input_fields.F90</affectedPath><affectedPath>src/G_unit_test_types/spurious_source_test.F90</affectedPath><affectedPath>input/case_setups/atex_long_sounding.in</affectedPath><affectedPath>src/CLUBB_core/numerical_check.F90</affectedPath><affectedPath>compile/file_list/clubb_model_files</affectedPath><affectedPath>src/CLUBB_core/stats_zm_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><affectedPath>src/CLUBB_core/constants_clubb.F90</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>src/CLUBB_core/stats_zt_module.F90</affectedPath><affectedPath>input/case_setups/ekman_sounding.in</affectedPath><affectedPath>input/stats/nightly_stats.in</affectedPath><affectedPath>input/case_setups/atex_long_sclr_sounding.in</affectedPath><commitId>4902a5ccf6c0da1bf588ea853aaadbc9a776dfa2</commitId><timestamp>1767903824000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Non trad coriolis (#1267)

* Updating the clubb core and silhs version files

* Fixing bug. qclvar copying is handled by the api, but we were deleting it with an unstructured data statement. I added this due as a fix before thinking qclvar was a local variable, which happened because I mixed up the CLUBB_CAM and CLUBBND_CAM flags. https://github.com/larson-group/cam/issues/175

* Fixing GPU bug. There is a vertical dependency with wpxp. This is what was breaking the ECT test, see larson-group/cam#175

* Moving pdf_params copying to copyin. This is the data structure that contains pointers, and these pointers will be different on the host and device, so it is bad in theory to copy the structure back to the CPU as it might overwrite cpu memory pointers with gpu memory pointers. In practice though I've seen no problems caused by this, I'm just making this commit preemptively, and it has already been tested with the ECT test.

* Moving PosInf to clubb_model_settings.F90

* Updating the clubb core and silhs version files

* Add flags for the Coriolis terms.

* Pass fcory from api module into advance module

* Implement the traditional Coriolis terms

* Implement the nontraditional Coriolis terms

* Add stats variables for the Coriolis terms

* Compute Coriolis parameters from namelist latitude

* Create the coriolis_test case

* Tune the coriolis_test case. However, oscillation frequency is too slow

* Correct a coefficient in Coriolis. "coriolis_test" matches analytical

* Update advance_clubb_core_module.F90

Rename fcory as fcor_y and add description

* Update advance_wp2_wp3_module.F90

Rename fcory as fcor_y and add description

* Update advance_xm_wpxp_module.F90

Rename fcory as fcor_y and add description

* Update advance_xp2_xpyp_module.F90

Rename fcory as fcor_y and add description

* Update clubb_api_module.F90

Rename fcory as fcor_y and add description

* Update spurious_source_test.F90

Rename fcory as fcor_y and add description

* Update clubb_driver.F90

Rename fcor as fcor_y and add description.
Also, add description for the coriolis_test

* Update generalized_grid_test.F90

Rename fcory as fcor_y and add description.

* Update coriolis_test_model.in

Add description for the Coriolis test case

* Stablize the cgils_s6 case with smaller time step

* Create the ekman case

* Tune the ekman case to match LES

* Compute wp2up with PDF and pass along with wp2thvp

* Implement the nontraditional Coriolis term for wp3

* Fine-tune parameters for the ekman case

* Create the atex_long case

* Retune ekman case with l_vary_convect_depth = .true.

* Fine-tune the atex_long case

* Add atex_long case to pyplotgen

* Fine-tune atex_long case with less radical changes

* Updating the clubb core and silhs version files

* Small bug fix in the wp2up flip and adding new files to the cmakelist

* Renmaing, moving some files, and reverting change to cgils_s6 timestep

* Adding new flags to flag test file

* Updating comment for fcor_y calculation explanation

* Removing accidentally added file

---------

Co-authored-by: pickett &lt;larsongroupgithub@gmail.com&gt;
Co-authored-by: Hing Ong &lt;hing.ong@anl.gov&gt;
Co-authored-by: Hing Ong &lt;36782452+HingOng@users.noreply.github.com&gt;
</comment><date>2026-01-08 14:23:44 -0600</date><id>4902a5ccf6c0da1bf588ea853aaadbc9a776dfa2</id><msg>Non trad coriolis (#1267)</msg><path><editType>edit</editType><file>src/CLUBB_core/stats_variables.F90</file></path><path><editType>add</editType><file>input/case_setups/coriolis_test_sfc.in</file></path><path><editType>edit</editType><file>postprocessing/pyplotgen/config/Case_definitions.py</file></path><path><editType>add</editType><file>input/case_setups/ekman_sfc.in</file></path><path><editType>edit</editType><file>src/CLUBB_core/numerical_check.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_zt_module.F90</file></path><path><editType>edit</editType><file>compile/file_list/clubb_model_files</file></path><path><editType>add</editType><file>input/case_setups/ekman_edsclr_sounding.in</file></path><path><editType>edit</editType><file>src/CLUBB_core/constants_clubb.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/model_flags.F90</file></path><path><editType>edit</editType><file>input/case_setups/cgils_s6_model.in</file></path><path><editType>add</editType><file>input/case_setups/coriolis_test_model.in</file></path><path><editType>edit</editType><file>src/G_unit_test_types/pdf_parameter_tests.F90</file></path><path><editType>edit</editType><file>input/stats/host_budgets_stats.in</file></path><path><editType>edit</editType><file>src/CLUBB_core/grid_adaptation_module.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/prescribe_forcings.F90</file></path><path><editType>add</editType><file>input/case_setups/atex_long_edsclr_sounding.in</file></path><path><editType>add</editType><file>input/tunable_parameters_coriolis_cases/atex_long_parameters.in</file></path><path><editType>add</editType><file>input/case_setups/atex_long_sfc.in</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_w_flags_config_core_flags.json</file></path><path><editType>add</editType><file>input/case_setups/coriolis_test_edsclr_sounding.in</file></path><path><editType>edit</editType><file>src/generalized_grid_test.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/clubb_api_module.F90</file></path><path><editType>add</editType><file>input/case_setups/atex_long_sclr_sounding.in</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xp2_xpyp_module.F90</file></path><path><editType>add</editType><file>input/tunable_parameters_coriolis_cases/ekman_parameters.in</file></path><path><editType>add</editType><file>input/case_setups/coriolis_test_sounding.in</file></path><path><editType>add</editType><file>input/tunable_parameters_coriolis_cases/coriolis_test_parameters.in</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_zm_module.F90</file></path><path><editType>edit</editType><file>src/input_fields.F90</file></path><path><editType>edit</editType><file>src/Benchmark_cases/CMakeLists.txt</file></path><path><editType>edit</editType><file>input/tunable_parameters/configurable_model_flags.in</file></path><path><editType>add</editType><file>input/case_setups/atex_long_sounding.in</file></path><path><editType>add</editType><file>input/case_setups/ekman_sclr_sounding.in</file></path><path><editType>add</editType><file>input/case_setups/atex_long_model.in</file></path><path><editType>add</editType><file>src/Benchmark_cases/ekman.F90</file></path><path><editType>add</editType><file>input/case_setups/ekman_sounding.in</file></path><path><editType>add</editType><file>input/case_setups/coriolis_test_sclr_sounding.in</file></path><path><editType>edit</editType><file>input/stats/nobudgets_nomicro_stats.in</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/output_netcdf.F90</file></path><path><editType>edit</editType><file>input/stats/nightly_stats.in</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xm_wpxp_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/pdf_closure_module.F90</file></path><path><editType>edit</editType><file>src/G_unit_test_types/spurious_source_test.F90</file></path><path><editType>edit</editType><file>input/stats/nobudgets_stats.in</file></path><path><editType>add</editType><file>src/Benchmark_cases/atex_long.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_wp2_wp3_module.F90</file></path><path><editType>edit</editType><file>input/stats/scalars_stats.in</file></path><path><editType>add</editType><file>input/case_setups/ekman_model.in</file></path><path><editType>edit</editType><file>input/stats/all_stats.in</file></path><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>input/stats/standard_stats.in</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_clubb_utilities.F90</file></path><path><editType>edit</editType><file>src/clubb_tuner.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>499</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/499/</url></nextBuild><previousBuild><number>497</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/497/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>497</buildNumber><marked><SHA1>418c202a9b0512fc8c4f421918cc978164db852d</SHA1><branch><SHA1>418c202a9b0512fc8c4f421918cc978164db852d</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>418c202a9b0512fc8c4f421918cc978164db852d</SHA1><branch><SHA1>418c202a9b0512fc8c4f421918cc978164db852d</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>418c202a9b0512fc8c4f421918cc978164db852d</SHA1><branch><SHA1>418c202a9b0512fc8c4f421918cc978164db852d</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#497</displayName><duration>275039</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #497</fullDisplayName><id>497</id><keepLog>false</keepLog><number>497</number><queueId>251</queueId><result>SUCCESS</result><timestamp>1766050027721</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/497/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/fill_holes.F90</affectedPath><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><affectedPath>src/CLUBB_core/grid_class.F90</affectedPath><affectedPath>run_scripts/run_bindiff_w_flags_config_core_flags.json</affectedPath><affectedPath>input/case_setups/arm_97_model.in</affectedPath><affectedPath>input/case_setups/arm_97_edsclr_sounding.in</affectedPath><commitId>418c202a9b0512fc8c4f421918cc978164db852d</commitId><timestamp>1766005108000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Fixes for fill_holes and edsclr code (#1266)

* Fixing bugs in new hole fillers that caused error when ran in descending mode, the issue was that dz is negative in descending mode, so we need abs() around it when calculating the normalized mass. Also fixing a related bug in the way edsclr code calls the hole filler - it was not using the generalized bounds. Also removing the ifdef in favor of normal ifs

* Copying the rtm and thm values from arm_97_sounding.in to the edsclr_sounding file. This still allows arm_97 to catch the bugs we want it to.
</comment><date>2025-12-17 14:58:28 -0600</date><id>418c202a9b0512fc8c4f421918cc978164db852d</id><msg>Fixes for fill_holes and edsclr code (#1266)</msg><path><editType>edit</editType><file>input/case_setups/arm_97_model.in</file></path><path><editType>edit</editType><file>input/case_setups/arm_97_edsclr_sounding.in</file></path><path><editType>edit</editType><file>src/CLUBB_core/fill_holes.F90</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_w_flags_config_core_flags.json</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/grid_class.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>498</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/498/</url></nextBuild><previousBuild><number>496</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/496/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>496</buildNumber><marked><SHA1>0959bb14d6f748501bee53902e484166d501923c</SHA1><branch><SHA1>0959bb14d6f748501bee53902e484166d501923c</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>0959bb14d6f748501bee53902e484166d501923c</SHA1><branch><SHA1>0959bb14d6f748501bee53902e484166d501923c</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>0959bb14d6f748501bee53902e484166d501923c</SHA1><branch><SHA1>0959bb14d6f748501bee53902e484166d501923c</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#496</displayName><duration>587743</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #496</fullDisplayName><id>496</id><keepLog>false</keepLog><number>496</number><queueId>148</queueId><result>SUCCESS</result><timestamp>1765445230080</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/496/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_rev_grid_matrix_solve_test/Jenkinsfile</affectedPath><affectedPath>run_scripts/run_clubb_w_varying_flags.py</affectedPath><affectedPath>src/CLUBB_core/advance_wp2_wp3_module.F90</affectedPath><affectedPath>src/generalized_grid_test.F90</affectedPath><affectedPath>run_scripts/run_bindiff_w_flags_config_core_flags.json</affectedPath><affectedPath>jenkins_tests/clubb_generalized_vertical_grid_test/Jenkinsfile</affectedPath><affectedPath>src/CLUBB_core/advance_xp2_xpyp_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_xm_wpxp_module.F90</affectedPath><affectedPath>src/CLUBB_core/advance_windm_edsclrm_module.F90</affectedPath><affectedPath>src/clubb_driver.F90</affectedPath><affectedPath>src/CLUBB_core/model_flags.F90</affectedPath><affectedPath>jenkins_tests/clubb_generalized_vert_grid_host_flags/Jenkinsfile</affectedPath><affectedPath>src/CLUBB_core/mono_flux_limiter.F90</affectedPath><affectedPath>run_scripts/run_scm_all.py</affectedPath><commitId>0959bb14d6f748501bee53902e484166d501923c</commitId><timestamp>1765406071000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Grid reverse matrix test (#1265)

* Making new flag l_force_descending_solves that forces us to use descending solves. Having it true keeps results BFB between ascending and descending when using -O0.

* renaming test

* Moving flag

* test fix

* test fix

* test fix

* Removing iteration limit on script and adding test error

* Removing test error, it was correctly caught

* Adding max statement to aid in single precision runs and removing accidentally commited file.
</comment><date>2025-12-10 16:34:31 -0600</date><id>0959bb14d6f748501bee53902e484166d501923c</id><msg>Grid reverse matrix test (#1265)</msg><path><editType>edit</editType><file>src/clubb_driver.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xp2_xpyp_module.F90</file></path><path><editType>edit</editType><file>run_scripts/run_bindiff_w_flags_config_core_flags.json</file></path><path><editType>edit</editType><file>src/CLUBB_core/model_flags.F90</file></path><path><editType>edit</editType><file>src/generalized_grid_test.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_generalized_vert_grid_host_flags/Jenkinsfile</file></path><path><editType>edit</editType><file>run_scripts/run_scm_all.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_wp2_wp3_module.F90</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_generalized_vertical_grid_test/Jenkinsfile</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_windm_edsclrm_module.F90</file></path><path><editType>add</editType><file>jenkins_tests/clubb_rev_grid_matrix_solve_test/Jenkinsfile</file></path><path><editType>edit</editType><file>run_scripts/run_clubb_w_varying_flags.py</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xm_wpxp_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/mono_flux_limiter.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>497</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/497/</url></nextBuild><previousBuild><number>495</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/495/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>495</buildNumber><marked><SHA1>988ea0f2cc24e424e0a204b65bfd59bd4e9eee5b</SHA1><branch><SHA1>988ea0f2cc24e424e0a204b65bfd59bd4e9eee5b</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>988ea0f2cc24e424e0a204b65bfd59bd4e9eee5b</SHA1><branch><SHA1>988ea0f2cc24e424e0a204b65bfd59bd4e9eee5b</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>988ea0f2cc24e424e0a204b65bfd59bd4e9eee5b</SHA1><branch><SHA1>988ea0f2cc24e424e0a204b65bfd59bd4e9eee5b</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#495</displayName><duration>192499</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #495</fullDisplayName><id>495</id><keepLog>false</keepLog><number>495</number><queueId>47</queueId><result>SUCCESS</result><timestamp>1765013231139</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/495/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>README</affectedPath><commitId>a5597665ed8bdd21902000712f8ad2685276eec0</commitId><timestamp>1764639088000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Add blank line to README.
</comment><date>2025-12-01 19:31:28 -0600</date><id>a5597665ed8bdd21902000712f8ad2685276eec0</id><msg>Add blank line to README.</msg><path><editType>edit</editType><file>README</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/penta_lu_solver.F90</affectedPath><commitId>bba14c86a748da7993af72c056a9f6505cf43f1b</commitId><timestamp>1764747200000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>BIT_CHANGING bug fix for the penta_lu solver, only BC when using penta_solve_method=2 (#1264)

</comment><date>2025-12-03 01:33:20 -0600</date><id>bba14c86a748da7993af72c056a9f6505cf43f1b</id><msg>BIT_CHANGING bug fix for the penta_lu solver, only BC when using penta_solve_method=2 (#1264)</msg><path><editType>edit</editType><file>src/CLUBB_core/penta_lu_solver.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/advance_xm_wpxp_module.F90</affectedPath><affectedPath>jenkins_tests/clubb_plot_solver_compare/Jenkinsfile</affectedPath><affectedPath>src/CLUBB_core/advance_wp2_wp3_module.F90</affectedPath><affectedPath>src/CLUBB_core/matrix_solver_wrapper.F90</affectedPath><affectedPath>src/CLUBB_core/penta_bicgstab_solver.F90</affectedPath><affectedPath>src/CLUBB_core/CMakeLists.txt</affectedPath><commitId>14f5e6e323b11dc9e5fff8ca5982c6ab7f92f8c1</commitId><timestamp>1764884961000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Bicgstab addition (#1261)

* Adding 'initial' bicgstab solver

* Currently working, lots of diagnostic code still present

* Pruning everything unneccesary, adding lots of comments, making names good.

* Adding jenkins test to plot results with different solvers

* jenkins script update

* jenkins script update

* jenkins script update

* jenkins script update

* jenkins script update

* jenkins script update

* jenkins script update

* Removing print statement

* Improved naming and comments

* Removing print statement

* A couple more comments.
</comment><date>2025-12-04 15:49:21 -0600</date><id>14f5e6e323b11dc9e5fff8ca5982c6ab7f92f8c1</id><msg>Bicgstab addition (#1261)</msg><path><editType>edit</editType><file>src/CLUBB_core/advance_wp2_wp3_module.F90</file></path><path><editType>add</editType><file>src/CLUBB_core/penta_bicgstab_solver.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/CMakeLists.txt</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_xm_wpxp_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/matrix_solver_wrapper.F90</file></path><path><editType>add</editType><file>jenkins_tests/clubb_plot_solver_compare/Jenkinsfile</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/penta_bicgstab_solver.F90</affectedPath><commitId>988ea0f2cc24e424e0a204b65bfd59bd4e9eee5b</commitId><timestamp>1764902874000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Small bug fix to make gfortran+debug happy, without the _core_rknd this could be a potential type error
</comment><date>2025-12-04 20:47:54 -0600</date><id>988ea0f2cc24e424e0a204b65bfd59bd4e9eee5b</id><msg>Small bug fix to make gfortran+debug happy, without the _core_rknd this could be a potential type error</msg><path><editType>edit</editType><file>src/CLUBB_core/penta_bicgstab_solver.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>496</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/496/</url></nextBuild><previousBuild><number>494</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/494/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>494</buildNumber><marked><SHA1>040e9961b5b422803a0aa816c5921be9576aa4a8</SHA1><branch><SHA1>040e9961b5b422803a0aa816c5921be9576aa4a8</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>040e9961b5b422803a0aa816c5921be9576aa4a8</SHA1><branch><SHA1>040e9961b5b422803a0aa816c5921be9576aa4a8</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>040e9961b5b422803a0aa816c5921be9576aa4a8</SHA1><branch><SHA1>040e9961b5b422803a0aa816c5921be9576aa4a8</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#494</displayName><duration>1192895</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #494</fullDisplayName><id>494</id><keepLog>false</keepLog><number>494</number><queueId>12339</queueId><result>SUCCESS</result><timestamp>1763976430592</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/494/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/advance_xp2_xpyp_module.F90</affectedPath><commitId>d5703f0d199f44b4fb66df14b4ebfcdb14b57c19</commitId><timestamp>1763924788000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Making update_xp2_mc work with either grid mode (#1263)

</comment><date>2025-11-23 13:06:28 -0600</date><id>d5703f0d199f44b4fb66df14b4ebfcdb14b57c19</id><msg>Making update_xp2_mc work with either grid mode (#1263)</msg><path><editType>edit</editType><file>src/CLUBB_core/advance_xp2_xpyp_module.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/fill_holes.F90</affectedPath><affectedPath>src/CLUBB_core/clip_explicit.F90</affectedPath><affectedPath>src/CLUBB_core/advance_wp2_wp3_module.F90</affectedPath><commitId>0da744a4b04f078044dcee08c614ad2a47916751</commitId><timestamp>1763952429000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Improving variable name
</comment><date>2025-11-23 20:47:09 -0600</date><id>0da744a4b04f078044dcee08c614ad2a47916751</id><msg>Improving variable name</msg><path><editType>edit</editType><file>src/CLUBB_core/advance_wp2_wp3_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/clip_explicit.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/fill_holes.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><affectedPath>src/CLUBB_core/stats_clubb_utilities.F90</affectedPath><commitId>040e9961b5b422803a0aa816c5921be9576aa4a8</commitId><timestamp>1763952752000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Small bug fix, but this is BIT_CHANGING because it affects stats output. Some zm fields (w_1_zm, w_2_zm, varnce_w_1_zm, varnce_w_2_zm, and mixt_frac_zm) were all nan in the netcdf output when l_call_pdf_closure_twice=.false., because those come from pdf_params_zm.
</comment><date>2025-11-23 20:52:32 -0600</date><id>040e9961b5b422803a0aa816c5921be9576aa4a8</id><msg>Small bug fix, but this is BIT_CHANGING because it affects stats output. Some zm fields (w_1_zm, w_2_zm, varnce_w_1_zm, varnce_w_2_zm, and mixt_frac_zm) were all nan in the netcdf output when l_call_pdf_closure_twice=.false., because those come from pdf_params_zm.</msg><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/stats_clubb_utilities.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>495</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/495/</url></nextBuild><previousBuild><number>493</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/493/</url></previousBuild></build><build _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>493</buildNumber><marked><SHA1>61aa970643913037e2766554210e4527bb5e8171</SHA1><branch><SHA1>61aa970643913037e2766554210e4527bb5e8171</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>61aa970643913037e2766554210e4527bb5e8171</SHA1><branch><SHA1>61aa970643913037e2766554210e4527bb5e8171</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>61aa970643913037e2766554210e4527bb5e8171</SHA1><branch><SHA1>61aa970643913037e2766554210e4527bb5e8171</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#493</displayName><duration>1380342</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #493</fullDisplayName><id>493</id><keepLog>false</keepLog><number>493</number><queueId>12232</queueId><result>SUCCESS</result><timestamp>1763458027955</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/493/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/model_flags.mod</affectedPath><affectedPath>src/CLUBB_core/error_code.mod</affectedPath><commitId>61aa970643913037e2766554210e4527bb5e8171</commitId><timestamp>1763408615000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Removing accidentally added files
</comment><date>2025-11-17 13:43:35 -0600</date><id>61aa970643913037e2766554210e4527bb5e8171</id><msg>Removing accidentally added files</msg><path><editType>delete</editType><file>src/CLUBB_core/model_flags.mod</file></path><path><editType>delete</editType><file>src/CLUBB_core/error_code.mod</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><nextBuild><number>494</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/494/</url></nextBuild><previousBuild><number>492</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/492/</url></previousBuild></build><color>blue</color><firstBuild _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Gunther Huebler</shortDescription><userId>huebler</userId><userName>Gunther Huebler</userName></cause></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>1</buildNumber><marked><SHA1>0fdf13cc3bb83ae86ffc8d99d1783085c54968ef</SHA1><branch><SHA1>0fdf13cc3bb83ae86ffc8d99d1783085c54968ef</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>0fdf13cc3bb83ae86ffc8d99d1783085c54968ef</SHA1><branch><SHA1>0fdf13cc3bb83ae86ffc8d99d1783085c54968ef</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>0fdf13cc3bb83ae86ffc8d99d1783085c54968ef</SHA1><branch><SHA1>0fdf13cc3bb83ae86ffc8d99d1783085c54968ef</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#1</displayName><duration>6793</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #1</fullDisplayName><id>1</id><keepLog>false</keepLog><number>1</number><queueId>9635</queueId><result>FAILURE</result><timestamp>1634250011373</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/1/</url><inProgress>false</inProgress><nextBuild><number>2</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/2/</url></nextBuild></firstBuild><healthReport><description>Build stability: 2 out of the last 5 builds failed.</description><iconClassName>icon-health-40to59</iconClassName><iconUrl>health-40to59.png</iconUrl><score>60</score></healthReport><keepDependencies>false</keepDependencies><lastBuild _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>1</buildableTimeMillis><buildingDurationMillis>83224</buildingDurationMillis><executingTimeMillis>82237</executingTimeMillis><executorUtilization>0.99</executorUtilization><subTaskCount>1</subTaskCount><waitingDurationMillis>9080</waitingDurationMillis><waitingTimeMillis>9080</waitingTimeMillis></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>592</buildNumber><marked><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><branch><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><branch><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><branch><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#592</displayName><duration>83224</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #592</fullDisplayName><id>592</id><keepLog>false</keepLog><number>592</number><queueId>10228</queueId><result>SUCCESS</result><timestamp>1791448030655</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/592/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tuner/loss_backend.py</affectedPath><affectedPath>tuner/job_runtime.py</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_tuner_top_overrides.py</affectedPath><affectedPath>jenkins_tests/clubb_tuner/Jenkinsfile</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</affectedPath><affectedPath>dash_app/pytests/auto_llm_generated_pytests/test_tune_replay_completion.py</affectedPath><affectedPath>run_scripts/README.md</affectedPath><affectedPath>dash_app/pytests/test_jax_device.py</affectedPath><affectedPath>dash_app/shared/activity.py</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_jax_launch_errors.py</affectedPath><affectedPath>tuner/request.py</affectedPath><affectedPath>dash_app/compile_tab/callbacks.py</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>dash_app/shared/jax_device.py</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>dash_app/profile_tab/runtime.py</affectedPath><affectedPath>dash_app/tune_tab/runtime.py</affectedPath><affectedPath>tuner/tune_clubb.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_device_selection.py</affectedPath><affectedPath>tuner/tuning_worker.py</affectedPath><affectedPath>dash_app/run_tab/runtime.py</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_runtime_device_settings.py</affectedPath><affectedPath>tuner/status.py</affectedPath><affectedPath>clubb_jax/backends/cuda.py</affectedPath><affectedPath>dash_app/services/models.py</affectedPath><affectedPath>dash_app/pytests/test_agent_services.py</affectedPath><affectedPath>dash_app/pytests/auto_llm_generated_pytests/test_jax_tuning_runtime.py</affectedPath><affectedPath>dash_app/tune_tab/callbacks_runs.py</affectedPath><affectedPath>tuner/tuning_scheduler.py</affectedPath><affectedPath>dash_app/DEVELOPMENT.md</affectedPath><affectedPath>dash_app/pytests/test_run_broker_simplification.py</affectedPath><affectedPath>dash_app/compile_tab/build_selector.py</affectedPath><affectedPath>tuner/README.md</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_jax_backend.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>run_scripts/run_tuner_job.py</affectedPath><commitId>9a1b8b23408d3a5abe78ebae7dd1390755fa4fec</commitId><timestamp>1791407526000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Use JAX in tuner (#1383)

This makes the JAX work through the new tuner, same sort of way the fortran does. Probably needs a little more testing but seems to be working properly now.

* Support reusable JAX driver state and runtime batches

* Add standalone JAX loss evaluation and consistency coverage

* Keep standalone loss CLI coverage separate from tuning

* Integrate JAX with managed tuner jobs and add bounded Jenkins coverage

* Remove trailing whitespace from extracted loss CLI tests

* Run JAX loss help checks in the JAX pytest suite

* Keep JAX lifecycle coverage with native driver tests and document its origins

* Document loss test scenarios, native counterparts and JAX extensions

* Keep the native loss executable path intact in the test description

* Explain managed tuning test ownership and native backend contracts

* Mirror the native driver lifecycle test and compare complete JAX statistics

* Run JAX driver extensions as an independent step in the lifecycle stage

* Update the C8 comparison mutation for indexed parameter loading

* Refresh JAX tuner integration for merged loss frontends

Use the relocated standalone loss entry point and retain CLI checks only in their shared owner. Give each Jenkins tuning run a separate job directory so repeated builds can succeed.

* Record invalid direct tuner requests as terminal errors

Let the existing request and launcher error handlers report malformed JSON and non-string JAX options instead of crashing during bootstrap before writing job results.

* Preserve winning parameter columns in tuner reruns

Retain request physics overrides while excluding initialized values for tuned parameters. Window and full-case reruns now use the winning candidate values, including multiple columns and grouped override names.

* Use the selected JAX runtime throughout Dash tuning

Persist backend and per-job device settings through native and typed broker requests, saved revisions, continuation and result reruns. Reuse the launcher, shared device controls and rerun override resolver; supervise browser replay processes in the broker.

* Allow run IDs in broker replay completion metadata

Avoid a selector argument collision that killed the replay watcher before recording terminal state. Preserve run IDs and cancellation metadata while reporting completed jobs accurately.

* Keep JAX device setup inside the launcher and backends

Expose a standard-library selection interface and forward per-job device and preallocation settings through the SCM and tuner launch paths. Use the same backend configuration for discovery, provenance, and execution; remove GPU environment handling from Dash and the tuner.

Validate with Dash/shared suites, focused launcher checks, a CPU tuning and replay workflow, and synthetic two-GPU discovery.

* Forward device settings through the existing JAX selection option

Extend the launcher-owned -options grammar with device=UUID and prealloc_gpu_mem=true|false, while retaining xla_prealloc compatibility. Remove the transient device-specific options from SCM and tuner scripts so they forward one opaque -jax value.

Validate saved settings, discovery and replays through the same public interface; verify CPU tuning metrics remain identical.
</comment><date>2026-10-07 16:12:06 -0500</date><id>9a1b8b23408d3a5abe78ebae7dd1390755fa4fec</id><msg>Use JAX in tuner (#1383)</msg><path><editType>edit</editType><file>jenkins_tests/clubb_tuner/Jenkinsfile</file></path><path><editType>edit</editType><file>tuner/README.md</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_device_selection.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_run_broker_simplification.py</file></path><path><editType>add</editType><file>tuner/loss_backend.py</file></path><path><editType>edit</editType><file>tuner/job_runtime.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_runs.py</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>edit</editType><file>tuner/tuning_worker.py</file></path><path><editType>delete</editType><file>dash_app/shared/jax_device.py</file></path><path><editType>edit</editType><file>tuner/tuning_scheduler.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_agent_services.py</file></path><path><editType>edit</editType><file>clubb_jax/backends/cuda.py</file></path><path><editType>edit</editType><file>tuner/tune_clubb.py</file></path><path><editType>edit</editType><file>dash_app/DEVELOPMENT.md</file></path><path><editType>edit</editType><file>dash_app/run_tab/runtime.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>dash_app/compile_tab/build_selector.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_jax_backend.py</file></path><path><editType>edit</editType><file>tuner/request.py</file></path><path><editType>edit</editType><file>run_scripts/run_tuner_job.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</file></path><path><editType>edit</editType><file>dash_app/shared/actions.py</file></path><path><editType>edit</editType><file>tuner/status.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/runtime.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_jax_device.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_tuner_top_overrides.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_runtime_device_settings.py</file></path><path><editType>edit</editType><file>dash_app/services/models.py</file></path><path><editType>add</editType><file>dash_app/pytests/auto_llm_generated_pytests/test_tune_replay_completion.py</file></path><path><editType>edit</editType><file>run_scripts/README.md</file></path><path><editType>add</editType><file>dash_app/pytests/auto_llm_generated_pytests/test_jax_tuning_runtime.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/runtime.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_jax_launch_errors.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/compile_tab/callbacks.py</file></path><path><editType>edit</editType><file>dash_app/shared/activity.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_tuner.py</affectedPath><affectedPath>dash_app/run_tab/tab.py</affectedPath><affectedPath>dash_app/persistence.py</affectedPath><affectedPath>utilities/README.md</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>dash_app/run_tab/callbacks_selection.py</affectedPath><affectedPath>utilities/case_json_to_namelist.py</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>dash_app/pytests/auto_llm_generated_pytests/test_case_editor.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>input/case_setups/case_definitions.json</affectedPath><affectedPath>dash_app/assets/34_case_editor.js</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>run_scripts/run_scm_loss.py</affectedPath><affectedPath>utilities/pytests/auto_llm_generated_pytests/test_case_json_to_namelist.py</affectedPath><affectedPath>dash_app/run_tab/discovery.py</affectedPath><affectedPath>dash_app/assets/12_case_editor.css</affectedPath><affectedPath>dash_app/assets/11_tab_run_theme.css</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>tuner/case_defaults.py</affectedPath><affectedPath>dash_app/profile_tab/runtime.py</affectedPath><affectedPath>input/case_setups/README</affectedPath><affectedPath>dash_app/run_tab/cases.py</affectedPath><commitId>5f8b57f69c01c59fc3c4457178ae85d57894c1d9</commitId><timestamp>1791415324000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Add JSON case definitions and Dash case editor (#1389)

This is mainly a dash update right now, but it adds json versions of our model files. Basically just 2 new files for that - each json stores default values then one entry for each case with overrides it is not default yet and the current system of defining cases is unchanged.


* Add JSON case definitions and Dash case editor

* Simplify named case lookup and remove queued snapshots

* Remove model validation from JSON case conversion
</comment><date>2026-10-07 18:22:04 -0500</date><id>5f8b57f69c01c59fc3c4457178ae85d57894c1d9</id><msg>Add JSON case definitions and Dash case editor (#1389)</msg><path><editType>edit</editType><file>dash_app/run_tab/tab.py</file></path><path><editType>add</editType><file>dash_app/assets/34_case_editor.js</file></path><path><editType>edit</editType><file>dash_app/run_tab/discovery.py</file></path><path><editType>add</editType><file>utilities/case_json_to_namelist.py</file></path><path><editType>add</editType><file>input/case_setups/case_definitions.json</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>add</editType><file>dash_app/pytests/auto_llm_generated_pytests/test_case_editor.py</file></path><path><editType>edit</editType><file>tuner/case_defaults.py</file></path><path><editType>edit</editType><file>dash_app/shared/actions.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm_loss.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_selection.py</file></path><path><editType>add</editType><file>dash_app/assets/12_case_editor.css</file></path><path><editType>edit</editType><file>run_scripts/run_tuner.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/assets/11_tab_run_theme.css</file></path><path><editType>edit</editType><file>dash_app/persistence.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/runtime.py</file></path><path><editType>edit</editType><file>utilities/README.md</file></path><path><editType>add</editType><file>dash_app/run_tab/cases.py</file></path><path><editType>edit</editType><file>input/case_setups/README</file></path><path><editType>add</editType><file>utilities/pytests/auto_llm_generated_pytests/test_case_json_to_namelist.py</file></path><path><editType>edit</editType><file>.gitignore</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/README.md</affectedPath><affectedPath>jenkins_tests/clubb_stats_output_consistency/Jenkinsfile</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_run_stats_output_consistency.py</affectedPath><affectedPath>tests/run_stats_output_consistency.py</affectedPath><commitId>166ec211468128c37d8bb4b917ffac337bf80247</commitId><timestamp>1791416548000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Run JAX statistics consistency with an explicit rounding tolerance (#1385)

This adds a jax jenkins stage for the statistics consistency test. This is the test that runs clubb with different batches sizes and averaging methods, e.g
- start by: run once with 60s output intervals all the way through
- test: running with 300s output intervals should give the same stats as manually averaging 5 steps of 60s output
- test: outputing only a "window" of stats data (like from timesteps 100-200 instead of whole run), should produce a window idendical to the 60s full output run
- test: running 16 columns at once should produce the same as running 16 columns in batches of 4 at a time

In fortran these comparisons should be BFB (other than the manually averaging one, which is only close), but in jax, changing things like the batch size can cause optimizations to happen differently, which breaks BFBness and seems to cause differences larger than expected by fortran. For example, the threshold for the manual averaging test in fortran is 1e-12, but for the jax we need 1e-9 even for the batch test. I added a tolerance, `jax_tolerance`, that I left named after jax for now since that is the only current reason that flag exists. 

This difficulty with jax wasn't unexpected - we also have to compile the fortran with `-O0` to get this test working, also to disable optimizations. There just seems to be less control over how jax does that, so I went with a "relax the tolerance for this specific instance" approach.

* Support reusable JAX driver state and runtime batches

* Expose JAX in the strict statistics consistency workflow

* Keep JAX lifecycle coverage with native driver tests and document its origins

* Reference native driver and statistics owners in the JAX test workflow

* Keep full Fortran statistics source paths in the test description

* Mirror the native driver lifecycle test and compare complete JAX statistics

* Run JAX driver extensions as an independent step in the lifecycle stage

* Update the C8 comparison mutation for indexed parameter loading

* Keep statistics windows within the capped native case duration

* Allow explicit JAX statistics tolerance for JIT rounding differences
</comment><date>2026-10-07 18:42:28 -0500</date><id>166ec211468128c37d8bb4b917ffac337bf80247</id><msg>Run JAX statistics consistency with an explicit rounding tolerance (#1385)</msg><path><editType>edit</editType><file>tests/run_stats_output_consistency.py</file></path><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_stats_output_consistency/Jenkinsfile</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_run_stats_output_consistency.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/README.md</affectedPath><affectedPath>tests/run_timestep_tests.py</affectedPath><affectedPath>jenkins_tests/clubb_timestep/Jenkinsfile</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compilation_cache.py</affectedPath><affectedPath>tests/run_timestep_sweep.py</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_run_timestep_sweep.py</affectedPath><commitId>341cac040a0d352fd5a4da6a5938a86d7d06e332</commitId><timestamp>1791417082000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Run timestep sweep tests with JAX (#1384)

Adding a jax run to the timestep test (now renamed timestep sweep because it's more descriptive).

This was really slow on JAX at first - one trick was to add a compilation cache, so that different runs that only use different timesteps didn't need to be recompiled. From my undestanding this is super easy with jax, basically just set `JAX_COMPILATION_CACHE_DIR` to a directory the process can save compiled parts is all it takes, then the compiled parts can live there even after the processes dies, and future ones can reuse it.

* Run existing timestep sweeps with the JAX runner

* Explain the shared native and JAX timestep sweep behavior

* Keep timestep checks aligned with current launcher and CLI conventions

Select CPU explicitly in the bounded JAX stage and resolve optional output roots through the shared owner. Support standard single-dash help, reject ambiguous option abbreviations, and cover opaque runtime forwarding while preserving native defaults and exploratory status.

Validate with 373 shared checks and four eight-step BOMEX/ATEX runs per backend at 60 and 600 seconds.

* Rename the timestep sweep and run shared JAX cases at native defaults

Select the 18 cases shared by the native sweep and JAX/Fortran comparison list. Remove Jenkins timestep and iteration overrides, update stage names and documentation, and preserve the sweep's stability-reporting behavior.

Validate the selection and rename with 374 shared checks before live branch testing.

* Reuse JAX compilations and parallelize case timestep sweeps

Keep a backend-specific persistent cache outside the checkout and preserve explicit cache overrides. Run four isolated case sweeps, prioritize measured expensive cases, and print each completed report as a block while preserving timestep order and first-failure semantics.

Validate cache reuse across fresh processes and cache clearing, scheduling/overlap/interruption contracts, 379 shared checks, and full 90-run cold-cache JAX/native matrices.
</comment><date>2026-10-07 18:51:22 -0500</date><id>341cac040a0d352fd5a4da6a5938a86d7d06e332</id><msg>Run timestep sweep tests with JAX (#1384)</msg><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>delete</editType><file>tests/run_timestep_tests.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compilation_cache.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_timestep/Jenkinsfile</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>add</editType><file>tests/run_timestep_sweep.py</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_run_timestep_sweep.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_plots/Jenkinsfile</affectedPath><affectedPath>LLM_prompts/jenkins_workflow.md</affectedPath><commitId>e92c2f24486a32610935ff4eede3512c67e313ea</commitId><timestamp>1791427833000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Add JAX comparison plots
</comment><date>2026-10-07 21:50:33 -0500</date><id>e92c2f24486a32610935ff4eede3512c67e313ea</id><msg>Add JAX comparison plots</msg><path><editType>edit</editType><file>LLM_prompts/jenkins_workflow.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_plots/Jenkinsfile</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><previousBuild><number>591</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/591/</url></previousBuild></lastBuild><lastCompletedBuild _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>1</buildableTimeMillis><buildingDurationMillis>83224</buildingDurationMillis><executingTimeMillis>82237</executingTimeMillis><executorUtilization>0.99</executorUtilization><subTaskCount>1</subTaskCount><waitingDurationMillis>9080</waitingDurationMillis><waitingTimeMillis>9080</waitingTimeMillis></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>592</buildNumber><marked><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><branch><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><branch><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><branch><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#592</displayName><duration>83224</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #592</fullDisplayName><id>592</id><keepLog>false</keepLog><number>592</number><queueId>10228</queueId><result>SUCCESS</result><timestamp>1791448030655</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/592/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tuner/loss_backend.py</affectedPath><affectedPath>tuner/job_runtime.py</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_tuner_top_overrides.py</affectedPath><affectedPath>jenkins_tests/clubb_tuner/Jenkinsfile</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</affectedPath><affectedPath>dash_app/pytests/auto_llm_generated_pytests/test_tune_replay_completion.py</affectedPath><affectedPath>run_scripts/README.md</affectedPath><affectedPath>dash_app/pytests/test_jax_device.py</affectedPath><affectedPath>dash_app/shared/activity.py</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_jax_launch_errors.py</affectedPath><affectedPath>tuner/request.py</affectedPath><affectedPath>dash_app/compile_tab/callbacks.py</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>dash_app/shared/jax_device.py</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>dash_app/profile_tab/runtime.py</affectedPath><affectedPath>dash_app/tune_tab/runtime.py</affectedPath><affectedPath>tuner/tune_clubb.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_device_selection.py</affectedPath><affectedPath>tuner/tuning_worker.py</affectedPath><affectedPath>dash_app/run_tab/runtime.py</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_runtime_device_settings.py</affectedPath><affectedPath>tuner/status.py</affectedPath><affectedPath>clubb_jax/backends/cuda.py</affectedPath><affectedPath>dash_app/services/models.py</affectedPath><affectedPath>dash_app/pytests/test_agent_services.py</affectedPath><affectedPath>dash_app/pytests/auto_llm_generated_pytests/test_jax_tuning_runtime.py</affectedPath><affectedPath>dash_app/tune_tab/callbacks_runs.py</affectedPath><affectedPath>tuner/tuning_scheduler.py</affectedPath><affectedPath>dash_app/DEVELOPMENT.md</affectedPath><affectedPath>dash_app/pytests/test_run_broker_simplification.py</affectedPath><affectedPath>dash_app/compile_tab/build_selector.py</affectedPath><affectedPath>tuner/README.md</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_jax_backend.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>run_scripts/run_tuner_job.py</affectedPath><commitId>9a1b8b23408d3a5abe78ebae7dd1390755fa4fec</commitId><timestamp>1791407526000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Use JAX in tuner (#1383)

This makes the JAX work through the new tuner, same sort of way the fortran does. Probably needs a little more testing but seems to be working properly now.

* Support reusable JAX driver state and runtime batches

* Add standalone JAX loss evaluation and consistency coverage

* Keep standalone loss CLI coverage separate from tuning

* Integrate JAX with managed tuner jobs and add bounded Jenkins coverage

* Remove trailing whitespace from extracted loss CLI tests

* Run JAX loss help checks in the JAX pytest suite

* Keep JAX lifecycle coverage with native driver tests and document its origins

* Document loss test scenarios, native counterparts and JAX extensions

* Keep the native loss executable path intact in the test description

* Explain managed tuning test ownership and native backend contracts

* Mirror the native driver lifecycle test and compare complete JAX statistics

* Run JAX driver extensions as an independent step in the lifecycle stage

* Update the C8 comparison mutation for indexed parameter loading

* Refresh JAX tuner integration for merged loss frontends

Use the relocated standalone loss entry point and retain CLI checks only in their shared owner. Give each Jenkins tuning run a separate job directory so repeated builds can succeed.

* Record invalid direct tuner requests as terminal errors

Let the existing request and launcher error handlers report malformed JSON and non-string JAX options instead of crashing during bootstrap before writing job results.

* Preserve winning parameter columns in tuner reruns

Retain request physics overrides while excluding initialized values for tuned parameters. Window and full-case reruns now use the winning candidate values, including multiple columns and grouped override names.

* Use the selected JAX runtime throughout Dash tuning

Persist backend and per-job device settings through native and typed broker requests, saved revisions, continuation and result reruns. Reuse the launcher, shared device controls and rerun override resolver; supervise browser replay processes in the broker.

* Allow run IDs in broker replay completion metadata

Avoid a selector argument collision that killed the replay watcher before recording terminal state. Preserve run IDs and cancellation metadata while reporting completed jobs accurately.

* Keep JAX device setup inside the launcher and backends

Expose a standard-library selection interface and forward per-job device and preallocation settings through the SCM and tuner launch paths. Use the same backend configuration for discovery, provenance, and execution; remove GPU environment handling from Dash and the tuner.

Validate with Dash/shared suites, focused launcher checks, a CPU tuning and replay workflow, and synthetic two-GPU discovery.

* Forward device settings through the existing JAX selection option

Extend the launcher-owned -options grammar with device=UUID and prealloc_gpu_mem=true|false, while retaining xla_prealloc compatibility. Remove the transient device-specific options from SCM and tuner scripts so they forward one opaque -jax value.

Validate saved settings, discovery and replays through the same public interface; verify CPU tuning metrics remain identical.
</comment><date>2026-10-07 16:12:06 -0500</date><id>9a1b8b23408d3a5abe78ebae7dd1390755fa4fec</id><msg>Use JAX in tuner (#1383)</msg><path><editType>edit</editType><file>jenkins_tests/clubb_tuner/Jenkinsfile</file></path><path><editType>edit</editType><file>tuner/README.md</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_device_selection.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_run_broker_simplification.py</file></path><path><editType>add</editType><file>tuner/loss_backend.py</file></path><path><editType>edit</editType><file>tuner/job_runtime.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_runs.py</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>edit</editType><file>tuner/tuning_worker.py</file></path><path><editType>delete</editType><file>dash_app/shared/jax_device.py</file></path><path><editType>edit</editType><file>tuner/tuning_scheduler.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_agent_services.py</file></path><path><editType>edit</editType><file>clubb_jax/backends/cuda.py</file></path><path><editType>edit</editType><file>tuner/tune_clubb.py</file></path><path><editType>edit</editType><file>dash_app/DEVELOPMENT.md</file></path><path><editType>edit</editType><file>dash_app/run_tab/runtime.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>dash_app/compile_tab/build_selector.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_jax_backend.py</file></path><path><editType>edit</editType><file>tuner/request.py</file></path><path><editType>edit</editType><file>run_scripts/run_tuner_job.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</file></path><path><editType>edit</editType><file>dash_app/shared/actions.py</file></path><path><editType>edit</editType><file>tuner/status.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/runtime.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_jax_device.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_tuner_top_overrides.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_runtime_device_settings.py</file></path><path><editType>edit</editType><file>dash_app/services/models.py</file></path><path><editType>add</editType><file>dash_app/pytests/auto_llm_generated_pytests/test_tune_replay_completion.py</file></path><path><editType>edit</editType><file>run_scripts/README.md</file></path><path><editType>add</editType><file>dash_app/pytests/auto_llm_generated_pytests/test_jax_tuning_runtime.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/runtime.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_jax_launch_errors.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/compile_tab/callbacks.py</file></path><path><editType>edit</editType><file>dash_app/shared/activity.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_tuner.py</affectedPath><affectedPath>dash_app/run_tab/tab.py</affectedPath><affectedPath>dash_app/persistence.py</affectedPath><affectedPath>utilities/README.md</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>dash_app/run_tab/callbacks_selection.py</affectedPath><affectedPath>utilities/case_json_to_namelist.py</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>dash_app/pytests/auto_llm_generated_pytests/test_case_editor.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>input/case_setups/case_definitions.json</affectedPath><affectedPath>dash_app/assets/34_case_editor.js</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>run_scripts/run_scm_loss.py</affectedPath><affectedPath>utilities/pytests/auto_llm_generated_pytests/test_case_json_to_namelist.py</affectedPath><affectedPath>dash_app/run_tab/discovery.py</affectedPath><affectedPath>dash_app/assets/12_case_editor.css</affectedPath><affectedPath>dash_app/assets/11_tab_run_theme.css</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>tuner/case_defaults.py</affectedPath><affectedPath>dash_app/profile_tab/runtime.py</affectedPath><affectedPath>input/case_setups/README</affectedPath><affectedPath>dash_app/run_tab/cases.py</affectedPath><commitId>5f8b57f69c01c59fc3c4457178ae85d57894c1d9</commitId><timestamp>1791415324000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Add JSON case definitions and Dash case editor (#1389)

This is mainly a dash update right now, but it adds json versions of our model files. Basically just 2 new files for that - each json stores default values then one entry for each case with overrides it is not default yet and the current system of defining cases is unchanged.


* Add JSON case definitions and Dash case editor

* Simplify named case lookup and remove queued snapshots

* Remove model validation from JSON case conversion
</comment><date>2026-10-07 18:22:04 -0500</date><id>5f8b57f69c01c59fc3c4457178ae85d57894c1d9</id><msg>Add JSON case definitions and Dash case editor (#1389)</msg><path><editType>edit</editType><file>dash_app/run_tab/tab.py</file></path><path><editType>add</editType><file>dash_app/assets/34_case_editor.js</file></path><path><editType>edit</editType><file>dash_app/run_tab/discovery.py</file></path><path><editType>add</editType><file>utilities/case_json_to_namelist.py</file></path><path><editType>add</editType><file>input/case_setups/case_definitions.json</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>add</editType><file>dash_app/pytests/auto_llm_generated_pytests/test_case_editor.py</file></path><path><editType>edit</editType><file>tuner/case_defaults.py</file></path><path><editType>edit</editType><file>dash_app/shared/actions.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm_loss.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_selection.py</file></path><path><editType>add</editType><file>dash_app/assets/12_case_editor.css</file></path><path><editType>edit</editType><file>run_scripts/run_tuner.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/assets/11_tab_run_theme.css</file></path><path><editType>edit</editType><file>dash_app/persistence.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/runtime.py</file></path><path><editType>edit</editType><file>utilities/README.md</file></path><path><editType>add</editType><file>dash_app/run_tab/cases.py</file></path><path><editType>edit</editType><file>input/case_setups/README</file></path><path><editType>add</editType><file>utilities/pytests/auto_llm_generated_pytests/test_case_json_to_namelist.py</file></path><path><editType>edit</editType><file>.gitignore</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/README.md</affectedPath><affectedPath>jenkins_tests/clubb_stats_output_consistency/Jenkinsfile</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_run_stats_output_consistency.py</affectedPath><affectedPath>tests/run_stats_output_consistency.py</affectedPath><commitId>166ec211468128c37d8bb4b917ffac337bf80247</commitId><timestamp>1791416548000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Run JAX statistics consistency with an explicit rounding tolerance (#1385)

This adds a jax jenkins stage for the statistics consistency test. This is the test that runs clubb with different batches sizes and averaging methods, e.g
- start by: run once with 60s output intervals all the way through
- test: running with 300s output intervals should give the same stats as manually averaging 5 steps of 60s output
- test: outputing only a "window" of stats data (like from timesteps 100-200 instead of whole run), should produce a window idendical to the 60s full output run
- test: running 16 columns at once should produce the same as running 16 columns in batches of 4 at a time

In fortran these comparisons should be BFB (other than the manually averaging one, which is only close), but in jax, changing things like the batch size can cause optimizations to happen differently, which breaks BFBness and seems to cause differences larger than expected by fortran. For example, the threshold for the manual averaging test in fortran is 1e-12, but for the jax we need 1e-9 even for the batch test. I added a tolerance, `jax_tolerance`, that I left named after jax for now since that is the only current reason that flag exists. 

This difficulty with jax wasn't unexpected - we also have to compile the fortran with `-O0` to get this test working, also to disable optimizations. There just seems to be less control over how jax does that, so I went with a "relax the tolerance for this specific instance" approach.

* Support reusable JAX driver state and runtime batches

* Expose JAX in the strict statistics consistency workflow

* Keep JAX lifecycle coverage with native driver tests and document its origins

* Reference native driver and statistics owners in the JAX test workflow

* Keep full Fortran statistics source paths in the test description

* Mirror the native driver lifecycle test and compare complete JAX statistics

* Run JAX driver extensions as an independent step in the lifecycle stage

* Update the C8 comparison mutation for indexed parameter loading

* Keep statistics windows within the capped native case duration

* Allow explicit JAX statistics tolerance for JIT rounding differences
</comment><date>2026-10-07 18:42:28 -0500</date><id>166ec211468128c37d8bb4b917ffac337bf80247</id><msg>Run JAX statistics consistency with an explicit rounding tolerance (#1385)</msg><path><editType>edit</editType><file>tests/run_stats_output_consistency.py</file></path><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_stats_output_consistency/Jenkinsfile</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_run_stats_output_consistency.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/README.md</affectedPath><affectedPath>tests/run_timestep_tests.py</affectedPath><affectedPath>jenkins_tests/clubb_timestep/Jenkinsfile</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compilation_cache.py</affectedPath><affectedPath>tests/run_timestep_sweep.py</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_run_timestep_sweep.py</affectedPath><commitId>341cac040a0d352fd5a4da6a5938a86d7d06e332</commitId><timestamp>1791417082000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Run timestep sweep tests with JAX (#1384)

Adding a jax run to the timestep test (now renamed timestep sweep because it's more descriptive).

This was really slow on JAX at first - one trick was to add a compilation cache, so that different runs that only use different timesteps didn't need to be recompiled. From my undestanding this is super easy with jax, basically just set `JAX_COMPILATION_CACHE_DIR` to a directory the process can save compiled parts is all it takes, then the compiled parts can live there even after the processes dies, and future ones can reuse it.

* Run existing timestep sweeps with the JAX runner

* Explain the shared native and JAX timestep sweep behavior

* Keep timestep checks aligned with current launcher and CLI conventions

Select CPU explicitly in the bounded JAX stage and resolve optional output roots through the shared owner. Support standard single-dash help, reject ambiguous option abbreviations, and cover opaque runtime forwarding while preserving native defaults and exploratory status.

Validate with 373 shared checks and four eight-step BOMEX/ATEX runs per backend at 60 and 600 seconds.

* Rename the timestep sweep and run shared JAX cases at native defaults

Select the 18 cases shared by the native sweep and JAX/Fortran comparison list. Remove Jenkins timestep and iteration overrides, update stage names and documentation, and preserve the sweep's stability-reporting behavior.

Validate the selection and rename with 374 shared checks before live branch testing.

* Reuse JAX compilations and parallelize case timestep sweeps

Keep a backend-specific persistent cache outside the checkout and preserve explicit cache overrides. Run four isolated case sweeps, prioritize measured expensive cases, and print each completed report as a block while preserving timestep order and first-failure semantics.

Validate cache reuse across fresh processes and cache clearing, scheduling/overlap/interruption contracts, 379 shared checks, and full 90-run cold-cache JAX/native matrices.
</comment><date>2026-10-07 18:51:22 -0500</date><id>341cac040a0d352fd5a4da6a5938a86d7d06e332</id><msg>Run timestep sweep tests with JAX (#1384)</msg><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>delete</editType><file>tests/run_timestep_tests.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compilation_cache.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_timestep/Jenkinsfile</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>add</editType><file>tests/run_timestep_sweep.py</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_run_timestep_sweep.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_plots/Jenkinsfile</affectedPath><affectedPath>LLM_prompts/jenkins_workflow.md</affectedPath><commitId>e92c2f24486a32610935ff4eede3512c67e313ea</commitId><timestamp>1791427833000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Add JAX comparison plots
</comment><date>2026-10-07 21:50:33 -0500</date><id>e92c2f24486a32610935ff4eede3512c67e313ea</id><msg>Add JAX comparison plots</msg><path><editType>edit</editType><file>LLM_prompts/jenkins_workflow.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_plots/Jenkinsfile</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><previousBuild><number>591</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/591/</url></previousBuild></lastCompletedBuild><lastFailedBuild _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Gunther Huebler</shortDescription><userId>huebler</userId><userName>Gunther Huebler</userName></cause></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>589</buildNumber><marked><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><branch><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><branch><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><branch><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#589</displayName><duration>787902</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #589</fullDisplayName><id>589</id><keepLog>false</keepLog><number>589</number><queueId>10037</queueId><result>FAILURE</result><timestamp>1791306240225</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/589/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>utilities/convert_acc_to_omp.bash</affectedPath><commitId>e83e7d62179dd6c710b77216aea55df37600f820</commitId><timestamp>1791236009000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Fix OpenMP GPU host_data conversion
</comment><date>2026-10-05 16:33:29 -0500</date><id>e83e7d62179dd6c710b77216aea55df37600f820</id><msg>Fix OpenMP GPU host_data conversion</msg><path><editType>edit</editType><file>utilities/convert_acc_to_omp.bash</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/backends/cpu.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_backends.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_compile_compiler_selection.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_rocm_runtime.py</affectedPath><affectedPath>BUILD.md</affectedPath><affectedPath>clubb_jax/backends/metal.py</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_portable_cholesky.py</affectedPath><affectedPath>clubb_jax/backends/__init__.py</affectedPath><affectedPath>clubb_jax/backends/rocm.py</affectedPath><affectedPath>clubb_jax/backends/cuda.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/matrix_operations.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/requirements-rocm.txt</affectedPath><affectedPath>clubb_jax/backends/common.py</affectedPath><affectedPath>tests/run_jax_vs_fortran_cases.py</affectedPath><affectedPath>compile.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_runtime_info.py</affectedPath><affectedPath>clubb_jax/runtime_info.py</affectedPath><commitId>da614f85c180af844a77e80ddd4b61a94ce716b9</commitId><timestamp>1791238822000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>AMD/ROCM Support for Jax (#1376)

This does 2 things:

adds support for running on ROCM systems, this is the AMD GPU equivalent of cuda
organize specific-device backend setup files, e.g GPU on nvidia needs cuda jax libraries, Apple needs metal, AMD needs rocm
The only complication was the jax cholesky not working on AMD GPUs. Seems like a bug that's out of our control, so I left en environment flag to switch between the jax linalg call and a custom "portable" one. The portable one still passes the jax_vs_fortran comparison tests.


Commits
---
* Support native AMD ROCm JAX on CachyOS

* Keep ROCm crash fixes and remove Morrison rounding workarounds

* Separate JAX launcher and inspection backend policies
</comment><date>2026-10-05 17:20:22 -0500</date><id>da614f85c180af844a77e80ddd4b61a94ce716b9</id><msg>AMD/ROCM Support for Jax (#1376)</msg><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_backends.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_portable_cholesky.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_rocm_runtime.py</file></path><path><editType>edit</editType><file>clubb_jax/runtime_info.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/matrix_operations.py</file></path><path><editType>add</editType><file>clubb_jax/backends/metal.py</file></path><path><editType>add</editType><file>clubb_jax/backends/__init__.py</file></path><path><editType>edit</editType><file>BUILD.md</file></path><path><editType>edit</editType><file>tests/run_jax_vs_fortran_cases.py</file></path><path><editType>add</editType><file>clubb_jax/backends/cpu.py</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_compile_compiler_selection.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>add</editType><file>clubb_jax/backends/common.py</file></path><path><editType>add</editType><file>clubb_jax/backends/rocm.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</file></path><path><editType>add</editType><file>clubb_jax/requirements-rocm.txt</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_runtime_info.py</file></path><path><editType>add</editType><file>clubb_jax/backends/cuda.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_sigma_sqd_w.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_component_corr_ip.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnose_correlations.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_limits_f_x_responder.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_autoconversion.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_uv_tndcy.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_binormal_moments.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_Nc_Ncn_eqns.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_radiation_port_structure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_liq_water_path.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_jit_compile.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_sunray_sw.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_comp_corr_norm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_remapping_ppm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad_lba.py</affectedPath><affectedPath>clubb_jax/tests/run_morrison_interface_test.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_ice_dfsn.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_variance.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_adg1_adg2_responder_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_ice_cloud_frac_component.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_varnce.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_rad_extended_atmosphere.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_rtp2_from_chi.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_KK_Nrm_tendencies.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_max_cubic_root.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_param_names.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pvertinterp.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_no_dead_functions.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_denorm_transform_corr.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_integration.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_params_pack_roundtrip.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_const_vs_MM.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_skewness.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_interpolation.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_constants.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_penta_faithful.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mpace_b_lba_tndcy.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_T_in_K.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_config_flags_complete.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_update_xp2_mc.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calculate_w_responder_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_setter_var_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnose_upxp.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_rcm_sat_adj.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_no_dead_imports.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mixed_moment_pdf_integrals.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrometp2_zt.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wp3_on_wp2.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_inverse_hydrostatic.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnostic_cache.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_local_means.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_roots.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mean_vert_vel_up_down.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_gamma_skw.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_grid_operators.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_quadrivar_NNLL_covar_eq_swap.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calculate_thvm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_numerical_check_setters.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wp4_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_covar_KK_mixt_frac_linearity.py</affectedPath><affectedPath>clubb_jax/tests/run_pdf_monte_carlo_test.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_remapping_module.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_time_select.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_index_mapping.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wpxpyp_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_w_up_in_cloud.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_luhar_3d_driver.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_stats_output_time.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_drop_sed.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_sliding_window.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial_rr_Nr.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_gabls3_night_stability.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_new_pdf_main.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cos_solar_zen.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_w_hm_n.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_spurious_source.py</affectedPath><affectedPath>tests/README.md</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_precip_fraction.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_soil_vegetation.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_spec_hum_to_mixing_ratio.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_penta_solver.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pressure_sounding_z.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_correlate.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_lhs.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_flux.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_xpthvp_terms.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mirror_lower_triangular.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_covar.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_quadrivar_covar_const_limits.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mixing_length.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_vs_MM.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_mean_const.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrometeor_mixed_moments.py</affectedPath><affectedPath>jenkins_tests/clubb_jax/Jenkinsfile</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_global.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pos_definite.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_ly93_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrostatic.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_forcing_port_structure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_covariance_batch.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_const_limits.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_luhar_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_binormal_moments.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_differentiability.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_component_precip_frac_specify.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_validation_checks.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_params_init.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_diffusion.py</affectedPath><affectedPath>tests/run_pytests.sh</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_liquid_cloud_frac_component.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cholesky_corr_mtx_approx.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_utilities.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_mean.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_moment_integrals.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_lba_sfclyr.py</affectedPath><affectedPath>clubb_jax/tests/run_standalone_no_bindings_test.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_hydromet_pdf_parameter.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_new_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_numerics_autodiff.py</affectedPath><affectedPath>LLM_prompts/pytest_workflow.md</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_adg2_driver.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_routine_placement.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calendar.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mean_adv.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_error_paths.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_xp3.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mono_flux_limiter.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_port_structure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_responder_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_corr_varnce.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_feedback_sfclyr.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cholesky_factor.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_autodiff.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_close_luhar_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_saturation.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_upscaled_variances.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_new_tsdadg_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_set_sfc_value_of_flux_profiles.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_coefs_semiimpl.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_norm_cholesky.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_xprcp_component.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_integrals_all_mm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_new_hybrid_pdf_main.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_advance_xp3_simplified.py</affectedPath><commitId>350a98e42b5a193c8471cc67c288bce95e7f7ac0</commitId><timestamp>1791244216000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Prune inherited JAX pytests and remove binding dependencies (#1379)

This just prunes lots of outdated and unneccesary pytests. These are all LLM generated and I just never went through them before. Probably still needs cleanup.
</comment><date>2026-10-05 18:50:16 -0500</date><id>350a98e42b5a193c8471cc67c288bce95e7f7ac0</id><msg>Prune inherited JAX pytests and remove binding dependencies (#1379)</msg><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnostic_cache.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_liquid_cloud_frac_component.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_penta_solver.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_sigma_sqd_w.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_jit_compile.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_forcing_port_structure.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_set_sfc_value_of_flux_profiles.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_remapping_ppm.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_w_hm_n.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_integration.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial_rr_Nr.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mono_flux_limiter.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_new_hybrid_pdf_main.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pvertinterp.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_feedback_sfclyr.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_denorm_transform_corr.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_binormal_moments.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_mean_const.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_numerical_check_setters.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_interpolation.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calendar.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_constants.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_rtp2_from_chi.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_rcm_sat_adj.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnose_upxp.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_index_mapping.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mixed_moment_pdf_integrals.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_local_means.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py</file></path><path><editType>add</editType><file>clubb_jax/tests/run_standalone_no_bindings_test.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mean_adv.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_Nc_Ncn_eqns.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_lba_sfclyr.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_coefs_semiimpl.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_component_corr_ip.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_KK_Nrm_tendencies.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cos_solar_zen.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_uv_tndcy.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_luhar_3d_driver.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_validation_checks.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cholesky_corr_mtx_approx.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_vs_MM.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_lhs.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_radiation_port_structure.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_quadrivar_NNLL_covar_eq_swap.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calculate_thvm.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_comp_corr_norm.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_limits_f_x_responder.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_binormal_moments.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_close_luhar_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_ly93_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_max_cubic_root.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_penta_faithful.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_ice_dfsn.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_norm_cholesky.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_rad_extended_atmosphere.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_spurious_source.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_correlate.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_luhar_params.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_utilities.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_setter_var_params.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_adg2_driver.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_component_precip_frac_specify.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_autoconversion.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_stats_output_time.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_varnce.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_error_paths.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_differentiability.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_jax/Jenkinsfile</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_saturation.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wp3_on_wp2.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrometp2_zt.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnose_correlations.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_spec_hum_to_mixing_ratio.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_const_limits.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mirror_lower_triangular.py</file></path><path><editType>edit</editType><file>tests/run_pytests.sh</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_adg1_adg2_responder_params.py</file></path><path><editType>add</editType><file>clubb_jax/tests/run_morrison_interface_test.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad_lba.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_precip_fraction.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mpace_b_lba_tndcy.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_new_pdf_main.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_upscaled_variances.py</file></path><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_gabls3_night_stability.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_params_pack_roundtrip.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrostatic.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_moment_integrals.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cholesky_factor.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_update_xp2_mc.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrometeor_mixed_moments.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_remapping_module.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_roots.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_xpthvp_terms.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_liq_water_path.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_variance.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_responder_params.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_no_dead_functions.py</file></path><path><editType>edit</editType><file>LLM_prompts/pytest_workflow.md</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_autodiff.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_soil_vegetation.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_ice_cloud_frac_component.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_diffusion.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_grid_operators.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_param_names.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_no_dead_imports.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_const_vs_MM.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_new_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_covar_KK_mixt_frac_linearity.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_new_tsdadg_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_port_structure.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_covar.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_routine_placement.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_skewness.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_xp3.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pos_definite.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pressure_sounding_z.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_sunray_sw.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_config_flags_complete.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_params_init.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_xprcp_component.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_inverse_hydrostatic.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wpxpyp_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_w_up_in_cloud.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_gamma_skw.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_mean.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_sliding_window.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_T_in_K.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_numerics_autodiff.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_covariance_batch.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_quadrivar_covar_const_limits.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mean_vert_vel_up_down.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_hydromet_pdf_parameter.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_flux.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_drop_sed.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_integrals_all_mm.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wp4_pdf.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_corr_varnce.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_global.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calculate_w_responder_params.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_time_select.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_advance_xp3_simplified.py</file></path><path><editType>add</editType><file>clubb_jax/tests/run_pdf_monte_carlo_test.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mixing_length.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>590</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/590/</url></nextBuild><previousBuild><number>588</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/588/</url></previousBuild></lastFailedBuild><lastStableBuild _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>1</buildableTimeMillis><buildingDurationMillis>83224</buildingDurationMillis><executingTimeMillis>82237</executingTimeMillis><executorUtilization>0.99</executorUtilization><subTaskCount>1</subTaskCount><waitingDurationMillis>9080</waitingDurationMillis><waitingTimeMillis>9080</waitingTimeMillis></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>592</buildNumber><marked><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><branch><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><branch><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><branch><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#592</displayName><duration>83224</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #592</fullDisplayName><id>592</id><keepLog>false</keepLog><number>592</number><queueId>10228</queueId><result>SUCCESS</result><timestamp>1791448030655</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/592/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tuner/loss_backend.py</affectedPath><affectedPath>tuner/job_runtime.py</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_tuner_top_overrides.py</affectedPath><affectedPath>jenkins_tests/clubb_tuner/Jenkinsfile</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</affectedPath><affectedPath>dash_app/pytests/auto_llm_generated_pytests/test_tune_replay_completion.py</affectedPath><affectedPath>run_scripts/README.md</affectedPath><affectedPath>dash_app/pytests/test_jax_device.py</affectedPath><affectedPath>dash_app/shared/activity.py</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_jax_launch_errors.py</affectedPath><affectedPath>tuner/request.py</affectedPath><affectedPath>dash_app/compile_tab/callbacks.py</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>dash_app/shared/jax_device.py</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>dash_app/profile_tab/runtime.py</affectedPath><affectedPath>dash_app/tune_tab/runtime.py</affectedPath><affectedPath>tuner/tune_clubb.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_device_selection.py</affectedPath><affectedPath>tuner/tuning_worker.py</affectedPath><affectedPath>dash_app/run_tab/runtime.py</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_runtime_device_settings.py</affectedPath><affectedPath>tuner/status.py</affectedPath><affectedPath>clubb_jax/backends/cuda.py</affectedPath><affectedPath>dash_app/services/models.py</affectedPath><affectedPath>dash_app/pytests/test_agent_services.py</affectedPath><affectedPath>dash_app/pytests/auto_llm_generated_pytests/test_jax_tuning_runtime.py</affectedPath><affectedPath>dash_app/tune_tab/callbacks_runs.py</affectedPath><affectedPath>tuner/tuning_scheduler.py</affectedPath><affectedPath>dash_app/DEVELOPMENT.md</affectedPath><affectedPath>dash_app/pytests/test_run_broker_simplification.py</affectedPath><affectedPath>dash_app/compile_tab/build_selector.py</affectedPath><affectedPath>tuner/README.md</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_jax_backend.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>run_scripts/run_tuner_job.py</affectedPath><commitId>9a1b8b23408d3a5abe78ebae7dd1390755fa4fec</commitId><timestamp>1791407526000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Use JAX in tuner (#1383)

This makes the JAX work through the new tuner, same sort of way the fortran does. Probably needs a little more testing but seems to be working properly now.

* Support reusable JAX driver state and runtime batches

* Add standalone JAX loss evaluation and consistency coverage

* Keep standalone loss CLI coverage separate from tuning

* Integrate JAX with managed tuner jobs and add bounded Jenkins coverage

* Remove trailing whitespace from extracted loss CLI tests

* Run JAX loss help checks in the JAX pytest suite

* Keep JAX lifecycle coverage with native driver tests and document its origins

* Document loss test scenarios, native counterparts and JAX extensions

* Keep the native loss executable path intact in the test description

* Explain managed tuning test ownership and native backend contracts

* Mirror the native driver lifecycle test and compare complete JAX statistics

* Run JAX driver extensions as an independent step in the lifecycle stage

* Update the C8 comparison mutation for indexed parameter loading

* Refresh JAX tuner integration for merged loss frontends

Use the relocated standalone loss entry point and retain CLI checks only in their shared owner. Give each Jenkins tuning run a separate job directory so repeated builds can succeed.

* Record invalid direct tuner requests as terminal errors

Let the existing request and launcher error handlers report malformed JSON and non-string JAX options instead of crashing during bootstrap before writing job results.

* Preserve winning parameter columns in tuner reruns

Retain request physics overrides while excluding initialized values for tuned parameters. Window and full-case reruns now use the winning candidate values, including multiple columns and grouped override names.

* Use the selected JAX runtime throughout Dash tuning

Persist backend and per-job device settings through native and typed broker requests, saved revisions, continuation and result reruns. Reuse the launcher, shared device controls and rerun override resolver; supervise browser replay processes in the broker.

* Allow run IDs in broker replay completion metadata

Avoid a selector argument collision that killed the replay watcher before recording terminal state. Preserve run IDs and cancellation metadata while reporting completed jobs accurately.

* Keep JAX device setup inside the launcher and backends

Expose a standard-library selection interface and forward per-job device and preallocation settings through the SCM and tuner launch paths. Use the same backend configuration for discovery, provenance, and execution; remove GPU environment handling from Dash and the tuner.

Validate with Dash/shared suites, focused launcher checks, a CPU tuning and replay workflow, and synthetic two-GPU discovery.

* Forward device settings through the existing JAX selection option

Extend the launcher-owned -options grammar with device=UUID and prealloc_gpu_mem=true|false, while retaining xla_prealloc compatibility. Remove the transient device-specific options from SCM and tuner scripts so they forward one opaque -jax value.

Validate saved settings, discovery and replays through the same public interface; verify CPU tuning metrics remain identical.
</comment><date>2026-10-07 16:12:06 -0500</date><id>9a1b8b23408d3a5abe78ebae7dd1390755fa4fec</id><msg>Use JAX in tuner (#1383)</msg><path><editType>edit</editType><file>jenkins_tests/clubb_tuner/Jenkinsfile</file></path><path><editType>edit</editType><file>tuner/README.md</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_device_selection.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_run_broker_simplification.py</file></path><path><editType>add</editType><file>tuner/loss_backend.py</file></path><path><editType>edit</editType><file>tuner/job_runtime.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_runs.py</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>edit</editType><file>tuner/tuning_worker.py</file></path><path><editType>delete</editType><file>dash_app/shared/jax_device.py</file></path><path><editType>edit</editType><file>tuner/tuning_scheduler.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_agent_services.py</file></path><path><editType>edit</editType><file>clubb_jax/backends/cuda.py</file></path><path><editType>edit</editType><file>tuner/tune_clubb.py</file></path><path><editType>edit</editType><file>dash_app/DEVELOPMENT.md</file></path><path><editType>edit</editType><file>dash_app/run_tab/runtime.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>dash_app/compile_tab/build_selector.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_jax_backend.py</file></path><path><editType>edit</editType><file>tuner/request.py</file></path><path><editType>edit</editType><file>run_scripts/run_tuner_job.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</file></path><path><editType>edit</editType><file>dash_app/shared/actions.py</file></path><path><editType>edit</editType><file>tuner/status.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/runtime.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_jax_device.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_tuner_top_overrides.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_runtime_device_settings.py</file></path><path><editType>edit</editType><file>dash_app/services/models.py</file></path><path><editType>add</editType><file>dash_app/pytests/auto_llm_generated_pytests/test_tune_replay_completion.py</file></path><path><editType>edit</editType><file>run_scripts/README.md</file></path><path><editType>add</editType><file>dash_app/pytests/auto_llm_generated_pytests/test_jax_tuning_runtime.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/runtime.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_jax_launch_errors.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/compile_tab/callbacks.py</file></path><path><editType>edit</editType><file>dash_app/shared/activity.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_tuner.py</affectedPath><affectedPath>dash_app/run_tab/tab.py</affectedPath><affectedPath>dash_app/persistence.py</affectedPath><affectedPath>utilities/README.md</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>dash_app/run_tab/callbacks_selection.py</affectedPath><affectedPath>utilities/case_json_to_namelist.py</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>dash_app/pytests/auto_llm_generated_pytests/test_case_editor.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>input/case_setups/case_definitions.json</affectedPath><affectedPath>dash_app/assets/34_case_editor.js</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>run_scripts/run_scm_loss.py</affectedPath><affectedPath>utilities/pytests/auto_llm_generated_pytests/test_case_json_to_namelist.py</affectedPath><affectedPath>dash_app/run_tab/discovery.py</affectedPath><affectedPath>dash_app/assets/12_case_editor.css</affectedPath><affectedPath>dash_app/assets/11_tab_run_theme.css</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>tuner/case_defaults.py</affectedPath><affectedPath>dash_app/profile_tab/runtime.py</affectedPath><affectedPath>input/case_setups/README</affectedPath><affectedPath>dash_app/run_tab/cases.py</affectedPath><commitId>5f8b57f69c01c59fc3c4457178ae85d57894c1d9</commitId><timestamp>1791415324000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Add JSON case definitions and Dash case editor (#1389)

This is mainly a dash update right now, but it adds json versions of our model files. Basically just 2 new files for that - each json stores default values then one entry for each case with overrides it is not default yet and the current system of defining cases is unchanged.


* Add JSON case definitions and Dash case editor

* Simplify named case lookup and remove queued snapshots

* Remove model validation from JSON case conversion
</comment><date>2026-10-07 18:22:04 -0500</date><id>5f8b57f69c01c59fc3c4457178ae85d57894c1d9</id><msg>Add JSON case definitions and Dash case editor (#1389)</msg><path><editType>edit</editType><file>dash_app/run_tab/tab.py</file></path><path><editType>add</editType><file>dash_app/assets/34_case_editor.js</file></path><path><editType>edit</editType><file>dash_app/run_tab/discovery.py</file></path><path><editType>add</editType><file>utilities/case_json_to_namelist.py</file></path><path><editType>add</editType><file>input/case_setups/case_definitions.json</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>add</editType><file>dash_app/pytests/auto_llm_generated_pytests/test_case_editor.py</file></path><path><editType>edit</editType><file>tuner/case_defaults.py</file></path><path><editType>edit</editType><file>dash_app/shared/actions.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm_loss.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_selection.py</file></path><path><editType>add</editType><file>dash_app/assets/12_case_editor.css</file></path><path><editType>edit</editType><file>run_scripts/run_tuner.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/assets/11_tab_run_theme.css</file></path><path><editType>edit</editType><file>dash_app/persistence.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/runtime.py</file></path><path><editType>edit</editType><file>utilities/README.md</file></path><path><editType>add</editType><file>dash_app/run_tab/cases.py</file></path><path><editType>edit</editType><file>input/case_setups/README</file></path><path><editType>add</editType><file>utilities/pytests/auto_llm_generated_pytests/test_case_json_to_namelist.py</file></path><path><editType>edit</editType><file>.gitignore</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/README.md</affectedPath><affectedPath>jenkins_tests/clubb_stats_output_consistency/Jenkinsfile</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_run_stats_output_consistency.py</affectedPath><affectedPath>tests/run_stats_output_consistency.py</affectedPath><commitId>166ec211468128c37d8bb4b917ffac337bf80247</commitId><timestamp>1791416548000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Run JAX statistics consistency with an explicit rounding tolerance (#1385)

This adds a jax jenkins stage for the statistics consistency test. This is the test that runs clubb with different batches sizes and averaging methods, e.g
- start by: run once with 60s output intervals all the way through
- test: running with 300s output intervals should give the same stats as manually averaging 5 steps of 60s output
- test: outputing only a "window" of stats data (like from timesteps 100-200 instead of whole run), should produce a window idendical to the 60s full output run
- test: running 16 columns at once should produce the same as running 16 columns in batches of 4 at a time

In fortran these comparisons should be BFB (other than the manually averaging one, which is only close), but in jax, changing things like the batch size can cause optimizations to happen differently, which breaks BFBness and seems to cause differences larger than expected by fortran. For example, the threshold for the manual averaging test in fortran is 1e-12, but for the jax we need 1e-9 even for the batch test. I added a tolerance, `jax_tolerance`, that I left named after jax for now since that is the only current reason that flag exists. 

This difficulty with jax wasn't unexpected - we also have to compile the fortran with `-O0` to get this test working, also to disable optimizations. There just seems to be less control over how jax does that, so I went with a "relax the tolerance for this specific instance" approach.

* Support reusable JAX driver state and runtime batches

* Expose JAX in the strict statistics consistency workflow

* Keep JAX lifecycle coverage with native driver tests and document its origins

* Reference native driver and statistics owners in the JAX test workflow

* Keep full Fortran statistics source paths in the test description

* Mirror the native driver lifecycle test and compare complete JAX statistics

* Run JAX driver extensions as an independent step in the lifecycle stage

* Update the C8 comparison mutation for indexed parameter loading

* Keep statistics windows within the capped native case duration

* Allow explicit JAX statistics tolerance for JIT rounding differences
</comment><date>2026-10-07 18:42:28 -0500</date><id>166ec211468128c37d8bb4b917ffac337bf80247</id><msg>Run JAX statistics consistency with an explicit rounding tolerance (#1385)</msg><path><editType>edit</editType><file>tests/run_stats_output_consistency.py</file></path><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_stats_output_consistency/Jenkinsfile</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_run_stats_output_consistency.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/README.md</affectedPath><affectedPath>tests/run_timestep_tests.py</affectedPath><affectedPath>jenkins_tests/clubb_timestep/Jenkinsfile</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compilation_cache.py</affectedPath><affectedPath>tests/run_timestep_sweep.py</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_run_timestep_sweep.py</affectedPath><commitId>341cac040a0d352fd5a4da6a5938a86d7d06e332</commitId><timestamp>1791417082000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Run timestep sweep tests with JAX (#1384)

Adding a jax run to the timestep test (now renamed timestep sweep because it's more descriptive).

This was really slow on JAX at first - one trick was to add a compilation cache, so that different runs that only use different timesteps didn't need to be recompiled. From my undestanding this is super easy with jax, basically just set `JAX_COMPILATION_CACHE_DIR` to a directory the process can save compiled parts is all it takes, then the compiled parts can live there even after the processes dies, and future ones can reuse it.

* Run existing timestep sweeps with the JAX runner

* Explain the shared native and JAX timestep sweep behavior

* Keep timestep checks aligned with current launcher and CLI conventions

Select CPU explicitly in the bounded JAX stage and resolve optional output roots through the shared owner. Support standard single-dash help, reject ambiguous option abbreviations, and cover opaque runtime forwarding while preserving native defaults and exploratory status.

Validate with 373 shared checks and four eight-step BOMEX/ATEX runs per backend at 60 and 600 seconds.

* Rename the timestep sweep and run shared JAX cases at native defaults

Select the 18 cases shared by the native sweep and JAX/Fortran comparison list. Remove Jenkins timestep and iteration overrides, update stage names and documentation, and preserve the sweep's stability-reporting behavior.

Validate the selection and rename with 374 shared checks before live branch testing.

* Reuse JAX compilations and parallelize case timestep sweeps

Keep a backend-specific persistent cache outside the checkout and preserve explicit cache overrides. Run four isolated case sweeps, prioritize measured expensive cases, and print each completed report as a block while preserving timestep order and first-failure semantics.

Validate cache reuse across fresh processes and cache clearing, scheduling/overlap/interruption contracts, 379 shared checks, and full 90-run cold-cache JAX/native matrices.
</comment><date>2026-10-07 18:51:22 -0500</date><id>341cac040a0d352fd5a4da6a5938a86d7d06e332</id><msg>Run timestep sweep tests with JAX (#1384)</msg><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>delete</editType><file>tests/run_timestep_tests.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compilation_cache.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_timestep/Jenkinsfile</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>add</editType><file>tests/run_timestep_sweep.py</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_run_timestep_sweep.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_plots/Jenkinsfile</affectedPath><affectedPath>LLM_prompts/jenkins_workflow.md</affectedPath><commitId>e92c2f24486a32610935ff4eede3512c67e313ea</commitId><timestamp>1791427833000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Add JAX comparison plots
</comment><date>2026-10-07 21:50:33 -0500</date><id>e92c2f24486a32610935ff4eede3512c67e313ea</id><msg>Add JAX comparison plots</msg><path><editType>edit</editType><file>LLM_prompts/jenkins_workflow.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_plots/Jenkinsfile</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><previousBuild><number>591</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/591/</url></previousBuild></lastStableBuild><lastSuccessfulBuild _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>1</buildableTimeMillis><buildingDurationMillis>83224</buildingDurationMillis><executingTimeMillis>82237</executingTimeMillis><executorUtilization>0.99</executorUtilization><subTaskCount>1</subTaskCount><waitingDurationMillis>9080</waitingDurationMillis><waitingTimeMillis>9080</waitingTimeMillis></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>592</buildNumber><marked><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><branch><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><branch><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><branch><SHA1>e92c2f24486a32610935ff4eede3512c67e313ea</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#592</displayName><duration>83224</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #592</fullDisplayName><id>592</id><keepLog>false</keepLog><number>592</number><queueId>10228</queueId><result>SUCCESS</result><timestamp>1791448030655</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/592/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tuner/loss_backend.py</affectedPath><affectedPath>tuner/job_runtime.py</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_tuner_top_overrides.py</affectedPath><affectedPath>jenkins_tests/clubb_tuner/Jenkinsfile</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</affectedPath><affectedPath>dash_app/pytests/auto_llm_generated_pytests/test_tune_replay_completion.py</affectedPath><affectedPath>run_scripts/README.md</affectedPath><affectedPath>dash_app/pytests/test_jax_device.py</affectedPath><affectedPath>dash_app/shared/activity.py</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_jax_launch_errors.py</affectedPath><affectedPath>tuner/request.py</affectedPath><affectedPath>dash_app/compile_tab/callbacks.py</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>dash_app/shared/jax_device.py</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>dash_app/profile_tab/runtime.py</affectedPath><affectedPath>dash_app/tune_tab/runtime.py</affectedPath><affectedPath>tuner/tune_clubb.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_device_selection.py</affectedPath><affectedPath>tuner/tuning_worker.py</affectedPath><affectedPath>dash_app/run_tab/runtime.py</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_runtime_device_settings.py</affectedPath><affectedPath>tuner/status.py</affectedPath><affectedPath>clubb_jax/backends/cuda.py</affectedPath><affectedPath>dash_app/services/models.py</affectedPath><affectedPath>dash_app/pytests/test_agent_services.py</affectedPath><affectedPath>dash_app/pytests/auto_llm_generated_pytests/test_jax_tuning_runtime.py</affectedPath><affectedPath>dash_app/tune_tab/callbacks_runs.py</affectedPath><affectedPath>tuner/tuning_scheduler.py</affectedPath><affectedPath>dash_app/DEVELOPMENT.md</affectedPath><affectedPath>dash_app/pytests/test_run_broker_simplification.py</affectedPath><affectedPath>dash_app/compile_tab/build_selector.py</affectedPath><affectedPath>tuner/README.md</affectedPath><affectedPath>tuner/pytests/auto_llm_generated_pytests/test_jax_backend.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>run_scripts/run_tuner_job.py</affectedPath><commitId>9a1b8b23408d3a5abe78ebae7dd1390755fa4fec</commitId><timestamp>1791407526000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Use JAX in tuner (#1383)

This makes the JAX work through the new tuner, same sort of way the fortran does. Probably needs a little more testing but seems to be working properly now.

* Support reusable JAX driver state and runtime batches

* Add standalone JAX loss evaluation and consistency coverage

* Keep standalone loss CLI coverage separate from tuning

* Integrate JAX with managed tuner jobs and add bounded Jenkins coverage

* Remove trailing whitespace from extracted loss CLI tests

* Run JAX loss help checks in the JAX pytest suite

* Keep JAX lifecycle coverage with native driver tests and document its origins

* Document loss test scenarios, native counterparts and JAX extensions

* Keep the native loss executable path intact in the test description

* Explain managed tuning test ownership and native backend contracts

* Mirror the native driver lifecycle test and compare complete JAX statistics

* Run JAX driver extensions as an independent step in the lifecycle stage

* Update the C8 comparison mutation for indexed parameter loading

* Refresh JAX tuner integration for merged loss frontends

Use the relocated standalone loss entry point and retain CLI checks only in their shared owner. Give each Jenkins tuning run a separate job directory so repeated builds can succeed.

* Record invalid direct tuner requests as terminal errors

Let the existing request and launcher error handlers report malformed JSON and non-string JAX options instead of crashing during bootstrap before writing job results.

* Preserve winning parameter columns in tuner reruns

Retain request physics overrides while excluding initialized values for tuned parameters. Window and full-case reruns now use the winning candidate values, including multiple columns and grouped override names.

* Use the selected JAX runtime throughout Dash tuning

Persist backend and per-job device settings through native and typed broker requests, saved revisions, continuation and result reruns. Reuse the launcher, shared device controls and rerun override resolver; supervise browser replay processes in the broker.

* Allow run IDs in broker replay completion metadata

Avoid a selector argument collision that killed the replay watcher before recording terminal state. Preserve run IDs and cancellation metadata while reporting completed jobs accurately.

* Keep JAX device setup inside the launcher and backends

Expose a standard-library selection interface and forward per-job device and preallocation settings through the SCM and tuner launch paths. Use the same backend configuration for discovery, provenance, and execution; remove GPU environment handling from Dash and the tuner.

Validate with Dash/shared suites, focused launcher checks, a CPU tuning and replay workflow, and synthetic two-GPU discovery.

* Forward device settings through the existing JAX selection option

Extend the launcher-owned -options grammar with device=UUID and prealloc_gpu_mem=true|false, while retaining xla_prealloc compatibility. Remove the transient device-specific options from SCM and tuner scripts so they forward one opaque -jax value.

Validate saved settings, discovery and replays through the same public interface; verify CPU tuning metrics remain identical.
</comment><date>2026-10-07 16:12:06 -0500</date><id>9a1b8b23408d3a5abe78ebae7dd1390755fa4fec</id><msg>Use JAX in tuner (#1383)</msg><path><editType>edit</editType><file>jenkins_tests/clubb_tuner/Jenkinsfile</file></path><path><editType>edit</editType><file>tuner/README.md</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_device_selection.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_run_broker_simplification.py</file></path><path><editType>add</editType><file>tuner/loss_backend.py</file></path><path><editType>edit</editType><file>tuner/job_runtime.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/callbacks_runs.py</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>edit</editType><file>tuner/tuning_worker.py</file></path><path><editType>delete</editType><file>dash_app/shared/jax_device.py</file></path><path><editType>edit</editType><file>tuner/tuning_scheduler.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_agent_services.py</file></path><path><editType>edit</editType><file>clubb_jax/backends/cuda.py</file></path><path><editType>edit</editType><file>tuner/tune_clubb.py</file></path><path><editType>edit</editType><file>dash_app/DEVELOPMENT.md</file></path><path><editType>edit</editType><file>dash_app/run_tab/runtime.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>dash_app/compile_tab/build_selector.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_jax_backend.py</file></path><path><editType>edit</editType><file>tuner/request.py</file></path><path><editType>edit</editType><file>run_scripts/run_tuner_job.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</file></path><path><editType>edit</editType><file>dash_app/shared/actions.py</file></path><path><editType>edit</editType><file>tuner/status.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/runtime.py</file></path><path><editType>edit</editType><file>dash_app/pytests/test_jax_device.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_tuner_top_overrides.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_runtime_device_settings.py</file></path><path><editType>edit</editType><file>dash_app/services/models.py</file></path><path><editType>add</editType><file>dash_app/pytests/auto_llm_generated_pytests/test_tune_replay_completion.py</file></path><path><editType>edit</editType><file>run_scripts/README.md</file></path><path><editType>add</editType><file>dash_app/pytests/auto_llm_generated_pytests/test_jax_tuning_runtime.py</file></path><path><editType>edit</editType><file>dash_app/tune_tab/runtime.py</file></path><path><editType>add</editType><file>tuner/pytests/auto_llm_generated_pytests/test_jax_launch_errors.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/compile_tab/callbacks.py</file></path><path><editType>edit</editType><file>dash_app/shared/activity.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>run_scripts/run_tuner.py</affectedPath><affectedPath>dash_app/run_tab/tab.py</affectedPath><affectedPath>dash_app/persistence.py</affectedPath><affectedPath>utilities/README.md</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>dash_app/run_tab/callbacks_selection.py</affectedPath><affectedPath>utilities/case_json_to_namelist.py</affectedPath><affectedPath>dash_app/run_tab/layout.py</affectedPath><affectedPath>dash_app/pytests/auto_llm_generated_pytests/test_case_editor.py</affectedPath><affectedPath>dash_app/README.md</affectedPath><affectedPath>input/case_setups/case_definitions.json</affectedPath><affectedPath>dash_app/assets/34_case_editor.js</affectedPath><affectedPath>dash_app/shared/actions.py</affectedPath><affectedPath>run_scripts/run_scm_loss.py</affectedPath><affectedPath>utilities/pytests/auto_llm_generated_pytests/test_case_json_to_namelist.py</affectedPath><affectedPath>dash_app/run_tab/discovery.py</affectedPath><affectedPath>dash_app/assets/12_case_editor.css</affectedPath><affectedPath>dash_app/assets/11_tab_run_theme.css</affectedPath><affectedPath>utilities/create_case_namelist.py</affectedPath><affectedPath>tuner/case_defaults.py</affectedPath><affectedPath>dash_app/profile_tab/runtime.py</affectedPath><affectedPath>input/case_setups/README</affectedPath><affectedPath>dash_app/run_tab/cases.py</affectedPath><commitId>5f8b57f69c01c59fc3c4457178ae85d57894c1d9</commitId><timestamp>1791415324000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Add JSON case definitions and Dash case editor (#1389)

This is mainly a dash update right now, but it adds json versions of our model files. Basically just 2 new files for that - each json stores default values then one entry for each case with overrides it is not default yet and the current system of defining cases is unchanged.


* Add JSON case definitions and Dash case editor

* Simplify named case lookup and remove queued snapshots

* Remove model validation from JSON case conversion
</comment><date>2026-10-07 18:22:04 -0500</date><id>5f8b57f69c01c59fc3c4457178ae85d57894c1d9</id><msg>Add JSON case definitions and Dash case editor (#1389)</msg><path><editType>edit</editType><file>dash_app/run_tab/tab.py</file></path><path><editType>add</editType><file>dash_app/assets/34_case_editor.js</file></path><path><editType>edit</editType><file>dash_app/run_tab/discovery.py</file></path><path><editType>add</editType><file>utilities/case_json_to_namelist.py</file></path><path><editType>add</editType><file>input/case_setups/case_definitions.json</file></path><path><editType>edit</editType><file>utilities/create_case_namelist.py</file></path><path><editType>add</editType><file>dash_app/pytests/auto_llm_generated_pytests/test_case_editor.py</file></path><path><editType>edit</editType><file>tuner/case_defaults.py</file></path><path><editType>edit</editType><file>dash_app/shared/actions.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/layout.py</file></path><path><editType>edit</editType><file>run_scripts/run_scm_loss.py</file></path><path><editType>edit</editType><file>dash_app/run_tab/callbacks_selection.py</file></path><path><editType>add</editType><file>dash_app/assets/12_case_editor.css</file></path><path><editType>edit</editType><file>run_scripts/run_tuner.py</file></path><path><editType>edit</editType><file>dash_app/README.md</file></path><path><editType>edit</editType><file>dash_app/assets/11_tab_run_theme.css</file></path><path><editType>edit</editType><file>dash_app/persistence.py</file></path><path><editType>edit</editType><file>dash_app/profile_tab/runtime.py</file></path><path><editType>edit</editType><file>utilities/README.md</file></path><path><editType>add</editType><file>dash_app/run_tab/cases.py</file></path><path><editType>edit</editType><file>input/case_setups/README</file></path><path><editType>add</editType><file>utilities/pytests/auto_llm_generated_pytests/test_case_json_to_namelist.py</file></path><path><editType>edit</editType><file>.gitignore</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/README.md</affectedPath><affectedPath>jenkins_tests/clubb_stats_output_consistency/Jenkinsfile</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_run_stats_output_consistency.py</affectedPath><affectedPath>tests/run_stats_output_consistency.py</affectedPath><commitId>166ec211468128c37d8bb4b917ffac337bf80247</commitId><timestamp>1791416548000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Run JAX statistics consistency with an explicit rounding tolerance (#1385)

This adds a jax jenkins stage for the statistics consistency test. This is the test that runs clubb with different batches sizes and averaging methods, e.g
- start by: run once with 60s output intervals all the way through
- test: running with 300s output intervals should give the same stats as manually averaging 5 steps of 60s output
- test: outputing only a "window" of stats data (like from timesteps 100-200 instead of whole run), should produce a window idendical to the 60s full output run
- test: running 16 columns at once should produce the same as running 16 columns in batches of 4 at a time

In fortran these comparisons should be BFB (other than the manually averaging one, which is only close), but in jax, changing things like the batch size can cause optimizations to happen differently, which breaks BFBness and seems to cause differences larger than expected by fortran. For example, the threshold for the manual averaging test in fortran is 1e-12, but for the jax we need 1e-9 even for the batch test. I added a tolerance, `jax_tolerance`, that I left named after jax for now since that is the only current reason that flag exists. 

This difficulty with jax wasn't unexpected - we also have to compile the fortran with `-O0` to get this test working, also to disable optimizations. There just seems to be less control over how jax does that, so I went with a "relax the tolerance for this specific instance" approach.

* Support reusable JAX driver state and runtime batches

* Expose JAX in the strict statistics consistency workflow

* Keep JAX lifecycle coverage with native driver tests and document its origins

* Reference native driver and statistics owners in the JAX test workflow

* Keep full Fortran statistics source paths in the test description

* Mirror the native driver lifecycle test and compare complete JAX statistics

* Run JAX driver extensions as an independent step in the lifecycle stage

* Update the C8 comparison mutation for indexed parameter loading

* Keep statistics windows within the capped native case duration

* Allow explicit JAX statistics tolerance for JIT rounding differences
</comment><date>2026-10-07 18:42:28 -0500</date><id>166ec211468128c37d8bb4b917ffac337bf80247</id><msg>Run JAX statistics consistency with an explicit rounding tolerance (#1385)</msg><path><editType>edit</editType><file>tests/run_stats_output_consistency.py</file></path><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_stats_output_consistency/Jenkinsfile</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_run_stats_output_consistency.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/README.md</affectedPath><affectedPath>tests/run_timestep_tests.py</affectedPath><affectedPath>jenkins_tests/clubb_timestep/Jenkinsfile</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compilation_cache.py</affectedPath><affectedPath>tests/run_timestep_sweep.py</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_run_timestep_sweep.py</affectedPath><commitId>341cac040a0d352fd5a4da6a5938a86d7d06e332</commitId><timestamp>1791417082000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Run timestep sweep tests with JAX (#1384)

Adding a jax run to the timestep test (now renamed timestep sweep because it's more descriptive).

This was really slow on JAX at first - one trick was to add a compilation cache, so that different runs that only use different timesteps didn't need to be recompiled. From my undestanding this is super easy with jax, basically just set `JAX_COMPILATION_CACHE_DIR` to a directory the process can save compiled parts is all it takes, then the compiled parts can live there even after the processes dies, and future ones can reuse it.

* Run existing timestep sweeps with the JAX runner

* Explain the shared native and JAX timestep sweep behavior

* Keep timestep checks aligned with current launcher and CLI conventions

Select CPU explicitly in the bounded JAX stage and resolve optional output roots through the shared owner. Support standard single-dash help, reject ambiguous option abbreviations, and cover opaque runtime forwarding while preserving native defaults and exploratory status.

Validate with 373 shared checks and four eight-step BOMEX/ATEX runs per backend at 60 and 600 seconds.

* Rename the timestep sweep and run shared JAX cases at native defaults

Select the 18 cases shared by the native sweep and JAX/Fortran comparison list. Remove Jenkins timestep and iteration overrides, update stage names and documentation, and preserve the sweep's stability-reporting behavior.

Validate the selection and rename with 374 shared checks before live branch testing.

* Reuse JAX compilations and parallelize case timestep sweeps

Keep a backend-specific persistent cache outside the checkout and preserve explicit cache overrides. Run four isolated case sweeps, prioritize measured expensive cases, and print each completed report as a block while preserving timestep order and first-failure semantics.

Validate cache reuse across fresh processes and cache clearing, scheduling/overlap/interruption contracts, 379 shared checks, and full 90-run cold-cache JAX/native matrices.
</comment><date>2026-10-07 18:51:22 -0500</date><id>341cac040a0d352fd5a4da6a5938a86d7d06e332</id><msg>Run timestep sweep tests with JAX (#1384)</msg><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>delete</editType><file>tests/run_timestep_tests.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compilation_cache.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_timestep/Jenkinsfile</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>add</editType><file>tests/run_timestep_sweep.py</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_run_timestep_sweep.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>jenkins_tests/clubb_plots/Jenkinsfile</affectedPath><affectedPath>LLM_prompts/jenkins_workflow.md</affectedPath><commitId>e92c2f24486a32610935ff4eede3512c67e313ea</commitId><timestamp>1791427833000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Add JAX comparison plots
</comment><date>2026-10-07 21:50:33 -0500</date><id>e92c2f24486a32610935ff4eede3512c67e313ea</id><msg>Add JAX comparison plots</msg><path><editType>edit</editType><file>LLM_prompts/jenkins_workflow.md</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_plots/Jenkinsfile</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><inProgress>false</inProgress><previousBuild><number>591</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/591/</url></previousBuild></lastSuccessfulBuild><lastUnsuccessfulBuild _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Gunther Huebler</shortDescription><userId>huebler</userId><userName>Gunther Huebler</userName></cause></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>589</buildNumber><marked><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><branch><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><branch><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><branch><SHA1>350a98e42b5a193c8471cc67c288bce95e7f7ac0</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#589</displayName><duration>787902</duration><estimatedDuration>107644</estimatedDuration><fullDisplayName>clubb_BFB_r8029_flags_gfortran_test #589</fullDisplayName><id>589</id><keepLog>false</keepLog><number>589</number><queueId>10037</queueId><result>FAILURE</result><timestamp>1791306240225</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/589/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>utilities/convert_acc_to_omp.bash</affectedPath><commitId>e83e7d62179dd6c710b77216aea55df37600f820</commitId><timestamp>1791236009000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></author><authorEmail>huebler@uwm.edu</authorEmail><comment>Fix OpenMP GPU host_data conversion
</comment><date>2026-10-05 16:33:29 -0500</date><id>e83e7d62179dd6c710b77216aea55df37600f820</id><msg>Fix OpenMP GPU host_data conversion</msg><path><editType>edit</editType><file>utilities/convert_acc_to_omp.bash</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/backends/cpu.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_backends.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</affectedPath><affectedPath>tests/pytests/auto_llm_generated_pytests/test_compile_compiler_selection.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_rocm_runtime.py</affectedPath><affectedPath>BUILD.md</affectedPath><affectedPath>clubb_jax/backends/metal.py</affectedPath><affectedPath>clubb_jax/run_jax.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_portable_cholesky.py</affectedPath><affectedPath>clubb_jax/backends/__init__.py</affectedPath><affectedPath>clubb_jax/backends/rocm.py</affectedPath><affectedPath>clubb_jax/backends/cuda.py</affectedPath><affectedPath>clubb_jax/src/CLUBB_core/matrix_operations.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/requirements-rocm.txt</affectedPath><affectedPath>clubb_jax/backends/common.py</affectedPath><affectedPath>tests/run_jax_vs_fortran_cases.py</affectedPath><affectedPath>compile.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_runtime_info.py</affectedPath><affectedPath>clubb_jax/runtime_info.py</affectedPath><commitId>da614f85c180af844a77e80ddd4b61a94ce716b9</commitId><timestamp>1791238822000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>AMD/ROCM Support for Jax (#1376)

This does 2 things:

adds support for running on ROCM systems, this is the AMD GPU equivalent of cuda
organize specific-device backend setup files, e.g GPU on nvidia needs cuda jax libraries, Apple needs metal, AMD needs rocm
The only complication was the jax cholesky not working on AMD GPUs. Seems like a bug that's out of our control, so I left en environment flag to switch between the jax linalg call and a custom "portable" one. The portable one still passes the jax_vs_fortran comparison tests.


Commits
---
* Support native AMD ROCm JAX on CachyOS

* Keep ROCm crash fixes and remove Morrison rounding workarounds

* Separate JAX launcher and inspection backend policies
</comment><date>2026-10-05 17:20:22 -0500</date><id>da614f85c180af844a77e80ddd4b61a94ce716b9</id><msg>AMD/ROCM Support for Jax (#1376)</msg><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_backends.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_portable_cholesky.py</file></path><path><editType>add</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_rocm_runtime.py</file></path><path><editType>edit</editType><file>clubb_jax/runtime_info.py</file></path><path><editType>edit</editType><file>clubb_jax/src/CLUBB_core/matrix_operations.py</file></path><path><editType>add</editType><file>clubb_jax/backends/metal.py</file></path><path><editType>add</editType><file>clubb_jax/backends/__init__.py</file></path><path><editType>edit</editType><file>BUILD.md</file></path><path><editType>edit</editType><file>tests/run_jax_vs_fortran_cases.py</file></path><path><editType>add</editType><file>clubb_jax/backends/cpu.py</file></path><path><editType>add</editType><file>tests/pytests/auto_llm_generated_pytests/test_compile_compiler_selection.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>clubb_jax/run_jax.py</file></path><path><editType>edit</editType><file>compile.py</file></path><path><editType>add</editType><file>clubb_jax/backends/common.py</file></path><path><editType>add</editType><file>clubb_jax/backends/rocm.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_jax_cli_options.py</file></path><path><editType>add</editType><file>clubb_jax/requirements-rocm.txt</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_runtime_info.py</file></path><path><editType>add</editType><file>clubb_jax/backends/cuda.py</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_sigma_sqd_w.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_component_corr_ip.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnose_correlations.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_limits_f_x_responder.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_autoconversion.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_uv_tndcy.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_binormal_moments.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_Nc_Ncn_eqns.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_radiation_port_structure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_liq_water_path.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_jit_compile.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_sunray_sw.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_comp_corr_norm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_remapping_ppm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad_lba.py</affectedPath><affectedPath>clubb_jax/tests/run_morrison_interface_test.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_ice_dfsn.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_variance.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_adg1_adg2_responder_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_ice_cloud_frac_component.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_varnce.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_rad_extended_atmosphere.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_rtp2_from_chi.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_KK_Nrm_tendencies.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_max_cubic_root.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_param_names.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pvertinterp.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_no_dead_functions.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_denorm_transform_corr.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_integration.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_params_pack_roundtrip.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_const_vs_MM.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_skewness.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_interpolation.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_constants.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_penta_faithful.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mpace_b_lba_tndcy.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_T_in_K.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_config_flags_complete.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_update_xp2_mc.py</affectedPath><affectedPath>clubb_jax/README.md</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calculate_w_responder_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_setter_var_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnose_upxp.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_rcm_sat_adj.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_no_dead_imports.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mixed_moment_pdf_integrals.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrometp2_zt.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wp3_on_wp2.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_inverse_hydrostatic.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnostic_cache.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_local_means.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_roots.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mean_vert_vel_up_down.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_gamma_skw.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_grid_operators.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_quadrivar_NNLL_covar_eq_swap.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calculate_thvm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_numerical_check_setters.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wp4_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_covar_KK_mixt_frac_linearity.py</affectedPath><affectedPath>clubb_jax/tests/run_pdf_monte_carlo_test.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_remapping_module.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_time_select.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_index_mapping.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wpxpyp_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_w_up_in_cloud.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_luhar_3d_driver.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_stats_output_time.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_drop_sed.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_sliding_window.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial_rr_Nr.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_gabls3_night_stability.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_new_pdf_main.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cos_solar_zen.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_w_hm_n.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_spurious_source.py</affectedPath><affectedPath>tests/README.md</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_precip_fraction.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_soil_vegetation.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_spec_hum_to_mixing_ratio.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_penta_solver.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pressure_sounding_z.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_correlate.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_lhs.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_flux.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_xpthvp_terms.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mirror_lower_triangular.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_covar.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_quadrivar_covar_const_limits.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mixing_length.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_vs_MM.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_mean_const.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrometeor_mixed_moments.py</affectedPath><affectedPath>jenkins_tests/clubb_jax/Jenkinsfile</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_global.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pos_definite.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_ly93_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrostatic.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_forcing_port_structure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_covariance_batch.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_const_limits.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_luhar_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_binormal_moments.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_differentiability.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_component_precip_frac_specify.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_validation_checks.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_params_init.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_diffusion.py</affectedPath><affectedPath>tests/run_pytests.sh</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_liquid_cloud_frac_component.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cholesky_corr_mtx_approx.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_utilities.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_mean.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_moment_integrals.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_lba_sfclyr.py</affectedPath><affectedPath>clubb_jax/tests/run_standalone_no_bindings_test.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_hydromet_pdf_parameter.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_new_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_numerics_autodiff.py</affectedPath><affectedPath>LLM_prompts/pytest_workflow.md</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_adg2_driver.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_routine_placement.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calendar.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mean_adv.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_error_paths.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_xp3.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_mono_flux_limiter.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_port_structure.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_responder_params.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_corr_varnce.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_feedback_sfclyr.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_cholesky_factor.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_autodiff.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_close_luhar_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_saturation.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_upscaled_variances.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_new_tsdadg_pdf.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_set_sfc_value_of_flux_profiles.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_coefs_semiimpl.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_norm_cholesky.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_xprcp_component.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_integrals_all_mm.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_new_hybrid_pdf_main.py</affectedPath><affectedPath>clubb_jax/pytests/auto_llm_generated_pytests/test_advance_xp3_simplified.py</affectedPath><commitId>350a98e42b5a193c8471cc67c288bce95e7f7ac0</commitId><timestamp>1791244216000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Prune inherited JAX pytests and remove binding dependencies (#1379)

This just prunes lots of outdated and unneccesary pytests. These are all LLM generated and I just never went through them before. Probably still needs cleanup.
</comment><date>2026-10-05 18:50:16 -0500</date><id>350a98e42b5a193c8471cc67c288bce95e7f7ac0</id><msg>Prune inherited JAX pytests and remove binding dependencies (#1379)</msg><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnostic_cache.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_liquid_cloud_frac_component.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_penta_solver.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_sigma_sqd_w.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_jit_compile.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_forcing_port_structure.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_set_sfc_value_of_flux_profiles.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_remapping_ppm.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_w_hm_n.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_integration.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial_rr_Nr.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mono_flux_limiter.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_new_hybrid_pdf_main.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pvertinterp.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_feedback_sfclyr.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_denorm_transform_corr.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_binormal_moments.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_mean_const.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_numerical_check_setters.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_interpolation.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calendar.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_constants.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_rtp2_from_chi.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_rcm_sat_adj.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnose_upxp.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_index_mapping.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mixed_moment_pdf_integrals.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_local_means.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py</file></path><path><editType>add</editType><file>clubb_jax/tests/run_standalone_no_bindings_test.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mean_adv.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_Nc_Ncn_eqns.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_lba_sfclyr.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_coefs_semiimpl.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_component_corr_ip.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_KK_Nrm_tendencies.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cos_solar_zen.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_uv_tndcy.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_luhar_3d_driver.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_validation_checks.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cholesky_corr_mtx_approx.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_vs_MM.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_lhs.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_radiation_port_structure.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_quadrivar_NNLL_covar_eq_swap.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calculate_thvm.py</file></path><path><editType>edit</editType><file>clubb_jax/README.md</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_comp_corr_norm.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_limits_f_x_responder.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_binormal_moments.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_close_luhar_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_ly93_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_max_cubic_root.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_penta_faithful.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_ice_dfsn.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_norm_cholesky.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_rad_extended_atmosphere.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_spurious_source.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_correlate.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_luhar_params.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_utilities.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_setter_var_params.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_adg2_driver.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_component_precip_frac_specify.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_autoconversion.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_stats_output_time.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_varnce.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_error_paths.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_differentiability.py</file></path><path><editType>edit</editType><file>jenkins_tests/clubb_jax/Jenkinsfile</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_saturation.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wp3_on_wp2.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrometp2_zt.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_diagnose_correlations.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_spec_hum_to_mixing_ratio.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_const_limits.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mirror_lower_triangular.py</file></path><path><editType>edit</editType><file>tests/run_pytests.sh</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_adg1_adg2_responder_params.py</file></path><path><editType>add</editType><file>clubb_jax/tests/run_morrison_interface_test.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad_lba.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_precip_fraction.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mpace_b_lba_tndcy.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_new_pdf_main.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_upscaled_variances.py</file></path><path><editType>edit</editType><file>tests/README.md</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_gabls3_night_stability.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_params_pack_roundtrip.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrostatic.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_moment_integrals.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cholesky_factor.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_update_xp2_mc.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_hydrometeor_mixed_moments.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_remapping_module.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_roots.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_xpthvp_terms.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_liq_water_path.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_variance.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_responder_params.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_no_dead_functions.py</file></path><path><editType>edit</editType><file>LLM_prompts/pytest_workflow.md</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_autodiff.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_soil_vegetation.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_ice_cloud_frac_component.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_diffusion.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_grid_operators.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_param_names.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_no_dead_imports.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_NNL_covar_const_vs_MM.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_new_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_covar_KK_mixt_frac_linearity.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_new_tsdadg_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_microphysics_port_structure.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_covar.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_routine_placement.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_clip_skewness.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_xp3.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pos_definite.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pressure_sounding_z.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_sunray_sw.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_config_flags_complete.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_params_init.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_xprcp_component.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_inverse_hydrostatic.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wpxpyp_pdf.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_w_up_in_cloud.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_compute_gamma_skw.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_mean.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_sliding_window.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_T_in_K.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_numerics_autodiff.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_kk_covariance_batch.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_quadrivar_covar_const_limits.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mean_vert_vel_up_down.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_hydromet_pdf_parameter.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_flux.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_cloud_drop_sed.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_pdf_integrals_all_mm.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calc_wp4_pdf.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_corr_varnce.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_fill_holes_global.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_calculate_w_responder_params.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_time_select.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py</file></path><path><editType>edit</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_advance_xp3_simplified.py</file></path><path><editType>add</editType><file>clubb_jax/tests/run_pdf_monte_carlo_test.py</file></path><path><editType>delete</editType><file>clubb_jax/pytests/auto_llm_generated_pytests/test_mixing_length.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/huebler</absoluteUrl><fullName>Gunther Huebler</fullName></culprit><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>590</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/590/</url></nextBuild><previousBuild><number>588</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_BFB_r8029_flags_gfortran_test/588/</url></previousBuild></lastUnsuccessfulBuild><nextBuildNumber>593</nextBuildNumber><property _class='org.jenkinsci.plugins.workflow.job.properties.PipelineTriggersJobProperty'></property><concurrentBuild>true</concurrentBuild><disabled>false</disabled><inQueue>false</inQueue><resumeBlocked>false</resumeBlocked></workflowJob>