Console Output
Skipping 443 KB..
Full Logto_llm_generated_pytests/test_sfc_flux.py::test_shared_surface_flux_path_jits_and_stays_on_device
0.11s call clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_flux.py::test_ubar_and_momentum
(10 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 5 passed in 1.60s ===============================
JAX pytest module: auto_llm_generated_pytests/test_sfc_varnce.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 1 item
clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_varnce.py::test_f2py_oracle FAILED [100%]
=================================== FAILURES ===================================
_______________________________ test_f2py_oracle _______________________________
def test_f2py_oracle():
try:
clubb_f2py, jgr, ng, nzm = _setup_f2py_grid()
except ModuleNotFoundError as e:
if (e.name or "").split(".")[0] not in {"clubb_f2py", "clubb_python", "netCDF4"}:
raise
pytest.skip(f" f2py calc_sfc_varnce oracle: SKIP ({type(e).__name__})")
nzt = nzm - 1
zm_sfc = np.asarray(jgr.zm)[:, 0]; sfce = np.zeros(ng)
rng = np.random.default_rng(2)
worst = 0.0
for _ in range(20):
upwp = rng.uniform(-0.1, 0.1, ng); vpwp = rng.uniform(-0.1, 0.1, ng)
wpthlp = rng.uniform(-0.1, 0.1, (ng, nzm)); wprtp = rng.uniform(-1e-4, 1e-4, ng)
splat = rng.uniform(0.0, 1e-3, (ng, nzm)); tau = rng.uniform(100.0, 1000.0, (ng, nzm))
T0 = 300.0; up2c = np.full(ng, 2.0); ac = np.full(ng, 1.8)
wp2 = rng.uniform(1e-2, 1, (ng, nzm)); up2 = rng.uniform(1e-2, 1, (ng, nzm)); vp2 = rng.uniform(1e-2, 1, (ng, nzm))
thlp2 = rng.uniform(1e-3, 1, (ng, nzm)); rtp2 = rng.uniform(1e-7, 1e-5, (ng, nzm))
rtpthlp = rng.uniform(-1e-3, 1e-3, (ng, nzm))
> jr = calc_sfc_varnce(jnp.asarray(upwp), jnp.asarray(vpwp), jnp.asarray(wpthlp), jnp.asarray(wprtp),
jnp.asarray(splat), jnp.asarray(tau), T0, jnp.asarray(up2c), jnp.asarray(ac), jnp.asarray(wp2),
jnp.asarray(up2), jnp.asarray(vp2), jnp.asarray(thlp2), jnp.asarray(rtp2), jnp.asarray(rtpthlp),
jnp.asarray(zm_sfc), jnp.asarray(sfce))
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [-0.04767757 -0.04030177]. The error was:
E TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_varnce.py:67: ValueError
------------------------------ Captured log call -------------------------------
WARNING jax._src.xla_bridge:xla_bridge.py:878 An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not installed. Falling back to cpu.
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_sfc_varnce.xml -
============================= slowest 15 durations =============================
0.22s call clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_varnce.py::test_f2py_oracle
(2 durations < 0.005s hidden. Use -vv to show these durations.)
=========================== short test summary info ============================
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_sfc_varnce.py::test_f2py_oracle - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [-0.04767757 -0.04030177]. The error was:
TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
============================== 1 failed in 0.74s ===============================
JAX pytest module failed: auto_llm_generated_pytests/test_sfc_varnce.py (exit 1)
JAX pytest module: auto_llm_generated_pytests/test_silhs_diagnostics.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 11 items
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_impossible_weight_transfer_reports_fatal_status[-1] PASSED [ 9%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_impossible_weight_transfer_reports_fatal_status[0] PASSED [ 18%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_impossible_weight_transfer_reports_fatal_status[2] PASSED [ 27%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_weight_limiter_error_reaches_importance_driver PASSED [ 36%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_kessler_invalid_fraction_is_local_to_column[-0.125-mixture] PASSED [ 45%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_kessler_invalid_fraction_is_local_to_column[-0.125-cloud1] PASSED [ 54%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_kessler_invalid_fraction_is_local_to_column[-0.125-cloud2] PASSED [ 63%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_kessler_invalid_fraction_is_local_to_column[1.125-mixture] PASSED [ 72%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_kessler_invalid_fraction_is_local_to_column[1.125-cloud1] PASSED [ 81%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_kessler_invalid_fraction_is_local_to_column[1.125-cloud2] PASSED [ 90%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_kessler_empty_sample_reports_source_stop PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_silhs_diagnostics.xml -
============================= slowest 15 durations =============================
0.55s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_weight_limiter_error_reaches_importance_driver
0.47s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_kessler_empty_sample_reports_source_stop
0.46s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_kessler_invalid_fraction_is_local_to_column[-0.125-mixture]
0.25s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_impossible_weight_transfer_reports_fatal_status[-1]
0.11s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_kessler_invalid_fraction_is_local_to_column[1.125-cloud2]
0.10s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_kessler_invalid_fraction_is_local_to_column[-0.125-cloud1]
0.10s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_kessler_invalid_fraction_is_local_to_column[-0.125-cloud2]
0.09s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_kessler_invalid_fraction_is_local_to_column[1.125-mixture]
0.09s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_diagnostics.py::test_kessler_invalid_fraction_is_local_to_column[1.125-cloud1]
(6 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 11 passed in 2.65s ==============================
JAX pytest module: auto_llm_generated_pytests/test_silhs_driver.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 1 item
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_driver.py::test_subtimestep_statistics_preserve_previous_window_and_count_once PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_silhs_driver.xml -
============================= slowest 15 durations =============================
1.13s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_driver.py::test_subtimestep_statistics_preserve_previous_window_and_count_once
(2 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 1 passed in 1.56s ===============================
JAX pytest module: auto_llm_generated_pytests/test_silhs_fortran_oracle.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 1 item
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_fortran_oracle.py::test_inverse_normal_matches_source_literal_precision PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_silhs_fortran_oracle.xml -
============================= slowest 15 durations =============================
1.08s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_fortran_oracle.py::test_inverse_normal_matches_source_literal_precision
(2 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 1 passed in 1.52s ===============================
JAX pytest module: auto_llm_generated_pytests/test_silhs_port_structure.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 11 items
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py::test_silhs_inventory_excludes_mt95 PASSED [ 9%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py::test_silhs_source_routine_and_argument_order[est_kessler_microphys_module] PASSED [ 18%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py::test_silhs_source_routine_and_argument_order[generate_uniform_sample_module] PASSED [ 27%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py::test_silhs_source_routine_and_argument_order[latin_hypercube_arrays] PASSED [ 36%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py::test_silhs_source_routine_and_argument_order[latin_hypercube_driver_module] PASSED [ 45%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py::test_silhs_source_routine_and_argument_order[lh_microphys_var_covar_module] PASSED [ 54%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py::test_silhs_source_routine_and_argument_order[math_utilities] PASSED [ 63%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py::test_silhs_source_routine_and_argument_order[parameters_silhs] PASSED [ 72%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py::test_silhs_source_routine_and_argument_order[silhs_api_module] PASSED [ 81%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py::test_silhs_source_routine_and_argument_order[silhs_importance_sample_module] PASSED [ 90%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py::test_silhs_source_routine_and_argument_order[transform_to_pdf_module] PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_silhs_port_structure.xml -
============================= slowest 15 durations =============================
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py::test_silhs_source_routine_and_argument_order[latin_hypercube_driver_module]
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_port_structure.py::test_silhs_source_routine_and_argument_order[silhs_importance_sample_module]
(13 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 11 passed in 0.11s ==============================
JAX pytest module: auto_llm_generated_pytests/test_silhs_sampling.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 42 items
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_stratification_reproducibility_and_sequence_reuse PASSED [ 2%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_deterministic_strata_cycle_and_sequence_reuse[1] PASSED [ 4%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_deterministic_strata_cycle_and_sequence_reuse[3] PASSED [ 7%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_deterministic_overlap_pool_is_independent_of_seed PASSED [ 9%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions0-False-eight_cluster_allocation] PASSED [ 11%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions0-False-four_cluster_no_precip] PASSED [ 14%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions0-False-two_cluster_cp_nocp] PASSED [ 16%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions0-True-eight_cluster_allocation] PASSED [ 19%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions0-True-four_cluster_no_precip] PASSED [ 21%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions0-True-two_cluster_cp_nocp] PASSED [ 23%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions1-False-eight_cluster_allocation] PASSED [ 26%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions1-False-four_cluster_no_precip] PASSED [ 28%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions1-False-two_cluster_cp_nocp] PASSED [ 30%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions1-True-eight_cluster_allocation] PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions1-True-four_cluster_no_precip] PASSED [ 35%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions1-True-two_cluster_cp_nocp] PASSED [ 38%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions2-False-eight_cluster_allocation] PASSED [ 40%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions2-False-four_cluster_no_precip] PASSED [ 42%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions2-False-two_cluster_cp_nocp] PASSED [ 45%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions2-True-eight_cluster_allocation] PASSED [ 47%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions2-True-four_cluster_no_precip] PASSED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions2-True-two_cluster_cp_nocp] PASSED [ 52%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_importance_samples_membership_and_weighted_estimate[False-1] PASSED [ 54%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_importance_samples_membership_and_weighted_estimate[False-2] PASSED [ 57%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_importance_samples_membership_and_weighted_estimate[False-3] PASSED [ 59%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_importance_samples_membership_and_weighted_estimate[True-1] PASSED [ 61%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_importance_samples_membership_and_weighted_estimate[True-2] PASSED [ 64%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_importance_samples_membership_and_weighted_estimate[True-3] PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_inverse_normal_and_cholesky_reference PASSED [ 69%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_vertical_overlap_matches_scalar_recurrence_and_maximum_overlap PASSED [ 71%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_microphysical_variance_sources_include_optional_dt_terms[False] PASSED [ 73%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_microphysical_variance_sources_include_optional_dt_terms[True] PASSED [ 76%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_rms_uses_weighted_second_moment_and_real_probability PASSED [ 78%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_uniform_driver_options_and_shared_permutation_state[False-False] PASSED [ 80%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_uniform_driver_options_and_shared_permutation_state[False-True] PASSED [ 83%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_uniform_driver_options_and_shared_permutation_state[True-False] PASSED [ 85%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_uniform_driver_options_and_shared_permutation_state[True-True] PASSED [ 88%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_old_cloud_weighted_sample_count_check_precedes_dispatch[False] PASSED [ 90%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_old_cloud_weighted_sample_count_check_precedes_dispatch[True] PASSED [ 92%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_invalid_category_draw_is_reported_in_jit PASSED [ 95%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_random_starting_level_bounds_and_no_cloud_fallback[1] PASSED [ 97%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_random_starting_level_bounds_and_no_cloud_fallback[-1] PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_silhs_sampling.xml -
============================= slowest 15 durations =============================
2.96s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_stratification_reproducibility_and_sequence_reuse
2.76s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_uniform_driver_options_and_shared_permutation_state[False-False]
2.74s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions0-False-eight_cluster_allocation]
2.18s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_inverse_normal_and_cholesky_reference
1.64s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions0-False-four_cluster_no_precip]
1.54s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_category_probabilities_weights_and_empty_clusters[fractions0-False-two_cluster_cp_nocp]
1.15s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_importance_samples_membership_and_weighted_estimate[False-1]
1.05s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_uniform_driver_options_and_shared_permutation_state[False-True]
0.69s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_importance_samples_membership_and_weighted_estimate[True-1]
0.69s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_random_starting_level_bounds_and_no_cloud_fallback[1]
0.60s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_importance_samples_membership_and_weighted_estimate[True-2]
0.60s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_importance_samples_membership_and_weighted_estimate[False-2]
0.57s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_importance_samples_membership_and_weighted_estimate[True-3]
0.54s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_uniform_driver_options_and_shared_permutation_state[True-False]
0.45s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_sampling.py::test_importance_samples_membership_and_weighted_estimate[False-3]
============================= 42 passed in 24.28s ==============================
JAX pytest module: auto_llm_generated_pytests/test_silhs_surface_schemes.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 5 items
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py::test_mpace_b_sfclyr PASSED [ 20%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py::test_arm_97_sfclyr PASSED [ 40%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py::test_twp_ice_equals_cloud_feedback PASSED [ 60%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py::test_arm_3year_arm_0003_equal_arm_97 PASSED [ 80%]
clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py::test_differentiable PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_silhs_surface_schemes.xml -
============================= slowest 15 durations =============================
1.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py::test_arm_97_sfclyr
0.93s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py::test_differentiable
0.85s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py::test_twp_ice_equals_cloud_feedback
0.81s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py::test_mpace_b_sfclyr
0.10s call clubb_jax/pytests/auto_llm_generated_pytests/test_silhs_surface_schemes.py::test_arm_3year_arm_0003_equal_arm_97
(10 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 5 passed in 4.15s ===============================
JAX pytest module: auto_llm_generated_pytests/test_simple_rad_lba.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 4 items
clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad_lba.py::test_table_load PASSED [ 25%]
clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad_lba.py::test_time_interp_vs_literal PASSED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad_lba.py::test_full_radht_vs_literal PASSED [ 75%]
clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad_lba.py::test_differentiable PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_simple_rad_lba.xml -
============================= slowest 15 durations =============================
0.60s call clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad_lba.py::test_table_load
0.57s call clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad_lba.py::test_differentiable
0.56s call clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad_lba.py::test_full_radht_vs_literal
0.38s call clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad_lba.py::test_time_interp_vs_literal
(8 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 4 passed in 2.56s ===============================
JAX pytest module: auto_llm_generated_pytests/test_simple_rad.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 3 items
clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad.py::test_simple_rad_clean PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad.py::test_simple_rad_above_cloud PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad.py::test_simple_rad_bomex PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_simple_rad.xml -
============================= slowest 15 durations =============================
0.64s call clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad.py::test_simple_rad_clean
0.25s call clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad.py::test_simple_rad_above_cloud
0.17s call clubb_jax/pytests/auto_llm_generated_pytests/test_simple_rad.py::test_simple_rad_bomex
(6 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 3 passed in 1.48s ===============================
JAX pytest module: auto_llm_generated_pytests/test_skx_func.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 4 items
clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py::test_f2py_oracle FAILED [ 25%]
clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py::test_closed_form FAILED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py::test_differentiable FAILED [ 75%]
clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py::test_LG_2005_ansatz_f2py FAILED [100%]
=================================== FAILURES ===================================
_______________________________ test_f2py_oracle _______________________________
def test_f2py_oracle():
try:
import clubb_f2py
except ModuleNotFoundError as e:
if (e.name or "").split(".")[0] not in {"clubb_f2py", "clubb_python", "netCDF4"}:
raise
pytest.skip(f" f2py Skx_func oracle: SKIP ({type(e).__name__})")
rng = np.random.default_rng(4)
params = _params()
worst = 0.0
for _ in range(10):
xp2 = rng.uniform(0.0, 2.0, (NG, NZ))
xp3 = rng.uniform(-1.0, 1.0, (NG, NZ))
ref = np.asarray(clubb_f2py.f2py_skx_func(xp2, xp3, _X_TOL, params))
> got = np.asarray(Skx_func(xp2, xp3, _X_TOL, params))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'numpy.ndarray'>, [[1.88611221 1.02265511 1.95248741 0.16167205 1.21471166 0.75297317]
E [1.60380241 0.34905563 1.74327055 1.0878828 1.80443016 0.95430705]]. The error was:
E TypeError: unhashable type: 'numpy.ndarray'
clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py:59: ValueError
_______________________________ test_closed_form _______________________________
def test_closed_form():
params = _params()
xp2 = np.array([[0.5, 1.0]]); xp3 = np.array([[0.2, -0.3]])
> got = np.asarray(Skx_func(xp2, xp3, _X_TOL, params))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'numpy.ndarray'>, [[0.5 1. ]]. The error was:
E TypeError: unhashable type: 'numpy.ndarray'
clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py:68: ValueError
_____________________________ test_differentiable ______________________________
def test_differentiable():
params = _params()
xp2 = jnp.asarray(np.random.default_rng(1).uniform(0.1, 2.0, (NG, NZ)))
def loss(xp3):
return jnp.sum(Skx_func(xp2, xp3, _X_TOL, params) ** 2)
> g = np.asarray(jax.grad(loss)(jnp.asarray(np.random.default_rng(2).uniform(-1, 1, (NG, NZ)))))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py:83:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
xp3 = GradTracer(primal=[[-0.47677573 -0.40301771 0.62845148 -0.81616812 0.20020105 0.45712105]
[-0.62419785 -0.88970675 -0.45006126 0.31486603 0.12453133 -0.69987547]], typeof(tangent)=f64[2,6])
def loss(xp3):
> return jnp.sum(Skx_func(xp2, xp3, _X_TOL, params) ** 2)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[1.07246109 1.90588102 0.37390326 1.90243395 0.69247976 0.90432025]
E [1.67263493 0.87747836 1.14422801 0.15236232 1.53167491 1.1224723 ]]. The error was:
E TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
E
E --------------------
E For simplicity, JAX has removed its internal frames from the traceback of the following exception. Set JAX_TRACEBACK_FILTERING=off to include these.
clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py:82: ValueError
------------------------------ Captured log call -------------------------------
WARNING jax._src.xla_bridge:xla_bridge.py:878 An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not installed. Falling back to cpu.
___________________________ test_LG_2005_ansatz_f2py ___________________________
def test_LG_2005_ansatz_f2py():
"""LG_2005_ansatz (Skx_module.F90 — the Larson-Golaz 2005 skewness ansatz: Skx from Skw/wpxp/wp2/xp2/sigma_sqd_w/
beta) and its <x'^3> wrapper xp3_LG_2005_ansatz vs the f2py oracle. Both previously untested. The ansatz's clip
carries a ~1e-11 relative FP difference; checked with a relative tolerance. (iter 422)"""
try:
import clubb_f2py
except ModuleNotFoundError as e:
if (e.name or "").split(".")[0] not in {"clubb_f2py", "clubb_python", "netCDF4"}:
raise
pytest.skip(f" f2py LG_2005_ansatz oracle: SKIP ({type(e).__name__})")
from clubb_jax.src.CLUBB_core.Skx_module import LG_2005_ansatz, xp3_LG_2005_ansatz
from clubb_jax.src.CLUBB_core.parameter_indices import ibeta
params = _params(); params[:, ibeta - 1] = 2.0 # f2py xp3 extracts beta from clubb_params; JAX takes it explicitly
beta = np.ascontiguousarray(params[:, ibeta - 1])
rng = np.random.default_rng(2)
w_lg = w_xp3 = 0.0
for _ in range(30):
Skw = rng.uniform(-3, 3, (NG, NZ)); wpxp = rng.uniform(-1, 1, (NG, NZ))
wp2 = rng.uniform(1e-2, 2, (NG, NZ)); xp2 = rng.uniform(1e-4, 1, (NG, NZ)); ssw = rng.uniform(0, 0.6, (NG, NZ))
> jl = np.asarray(LG_2005_ansatz(jnp.asarray(Skw), jnp.asarray(wpxp), jnp.asarray(wp2), jnp.asarray(xp2),
jnp.asarray(ssw), jnp.asarray(beta)[:, None], _X_TOL))
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[-1.43032719 -1.20905314 1.88535444 -2.44850435 0.60060316 1.37136316]
E [-1.87259356 -2.66912024 -1.35018379 0.94459809 0.37359398 -2.09962642]]. The error was:
E TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py:107: ValueError
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_skx_func.xml -
============================= slowest 15 durations =============================
0.05s call clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py::test_differentiable
0.03s call clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py::test_LG_2005_ansatz_f2py
(10 durations < 0.005s hidden. Use -vv to show these durations.)
=========================== short test summary info ============================
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py::test_f2py_oracle - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'numpy.ndarray'>, [[1.88611221 1.02265511 1.95248741 0.16167205 1.21471166 0.75297317]
[1.60380241 0.34905563 1.74327055 1.0878828 1.80443016 0.95430705]]. The error was:
TypeError: unhashable type: 'numpy.ndarray'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py::test_closed_form - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'numpy.ndarray'>, [[0.5 1. ]]. The error was:
TypeError: unhashable type: 'numpy.ndarray'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py::test_differentiable - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[1.07246109 1.90588102 0.37390326 1.90243395 0.69247976 0.90432025]
[1.67263493 0.87747836 1.14422801 0.15236232 1.53167491 1.1224723 ]]. The error was:
TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
--------------------
For simplicity, JAX has removed its internal frames from the traceback of the following exception. Set JAX_TRACEBACK_FILTERING=off to include these.
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_skx_func.py::test_LG_2005_ansatz_f2py - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[-1.43032719 -1.20905314 1.88535444 -2.44850435 0.60060316 1.37136316]
[-1.87259356 -2.66912024 -1.35018379 0.94459809 0.37359398 -2.09962642]]. The error was:
TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
============================== 4 failed in 0.56s ===============================
JAX pytest module failed: auto_llm_generated_pytests/test_skx_func.py (exit 1)
JAX pytest module: auto_llm_generated_pytests/test_smooth_heaviside.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 3 items
clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py::test_f2py_is_truncated_constants FAILED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py::test_full_pi_closed_form_and_endpoints FAILED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py::test_differentiable FAILED [100%]
=================================== FAILURES ===================================
_______________________ test_f2py_is_truncated_constants _______________________
def test_f2py_is_truncated_constants():
"""The f2py oracle == the truncated-constant closed form (1e-16); the full-pi JAX differs only by the
documented constant-precision improvement (~1e-10)."""
try:
import clubb_f2py
except ModuleNotFoundError as e:
if (e.name or "").split(".")[0] not in {"clubb_f2py", "clubb_python", "netCDF4"}:
raise
pytest.skip(f" f2py smooth_heaviside oracle: SKIP ({type(e).__name__})")
rng = np.random.default_rng(4)
worst_trunc = 0.0
worst_jax = 0.0
for smth_range in (0.6, 1.0, 0.25):
x = rng.uniform(-3 * smth_range, 3 * smth_range, (2, 20))
ref = np.asarray(clubb_f2py.f2py_smooth_heaviside_peskin(np.asfortranarray(x), smth_range))
worst_trunc = max(worst_trunc, np.max(np.abs(_trunc_ref(x, smth_range) - ref)))
> worst_jax = max(worst_jax, np.max(np.abs(np.asarray(smooth_heaviside_peskin(x, smth_range)) - ref)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'numpy.ndarray'>, [[ 1.59500198e+00 4.07791901e-02 1.71447734e+00 -1.50899031e+00
E 3.86480995e-01 -4.44648296e-01 1.08684435e+00 -1.17169986e+00
E 1.33788699e+00 1.58189043e-01 1.44797429e+00 -8.22473142e-02
E -2.50213400e-01 1.04020818e+00 1.74295080e+00 -4.68987146e-01
E 1.68815833e+00 1.54449500e+00 -1.16030669e+00 3.91865821e-01]
E [ 7.37513084e-01 1.59409324e+00 5.96366701e-01 -1.31977528e+00
E -7.67664437e-03 -2.29685978e-02 8.14281655e-04 1.65089623e+00
E -5.40225361e-01 -9.94423872e-01 7.95132080e-02 5.08215326e-01
E 1.58078539e+00 2.95256882e-01 -8.35799795e-01 1.54718890e+00
E -2.97889754e-02 6.32883114e-01 -8.62599223e-02 -1.01887190e+00]]. The error was:
E TypeError: unhashable type: 'numpy.ndarray'
clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py:61: ValueError
____________________ test_full_pi_closed_form_and_endpoints ____________________
def test_full_pi_closed_form_and_endpoints():
r = 0.6
x = np.linspace(-1.5 * r, 1.5 * r, 41)
> got = np.asarray(smooth_heaviside_peskin(x, r))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'numpy.ndarray'>, [-0.9 -0.855 -0.81 -0.765 -0.72 -0.675 -0.63 -0.585 -0.54 -0.495
E -0.45 -0.405 -0.36 -0.315 -0.27 -0.225 -0.18 -0.135 -0.09 -0.045
E 0. 0.045 0.09 0.135 0.18 0.225 0.27 0.315 0.36 0.405
E 0.45 0.495 0.54 0.585 0.63 0.675 0.72 0.765 0.81 0.855
E 0.9 ]. The error was:
E TypeError: unhashable type: 'numpy.ndarray'
clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py:72: ValueError
_____________________________ test_differentiable ______________________________
def test_differentiable():
r = 0.6
> g = np.asarray(jax.grad(lambda x: jnp.sum(smooth_heaviside_peskin(x, r) ** 2))(
jnp.asarray(np.linspace(-0.5, 0.5, 11))))
clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py:84:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
x = GradTracer(primal=[-0.5 -0.4 -0.3 -0.2 -0.1 0. 0.1 0.2 0.3 0.4 0.5], typeof(tangent)=f64[11])
> g = np.asarray(jax.grad(lambda x: jnp.sum(smooth_heaviside_peskin(x, r) ** 2))(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
jnp.asarray(np.linspace(-0.5, 0.5, 11))))
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jax._src.interpreters.ad.LinearizeTracer'>, GradTracer(primal=[-0.5 -0.4 -0.3 -0.2 -0.1 0. 0.1 0.2 0.3 0.4 0.5], typeof(tangent)=f64[11]). The error was:
E TypeError: unhashable type: 'LinearizeTracer'
E
E --------------------
E For simplicity, JAX has removed its internal frames from the traceback of the following exception. Set JAX_TRACEBACK_FILTERING=off to include these.
clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py:84: ValueError
------------------------------ Captured log call -------------------------------
WARNING jax._src.xla_bridge:xla_bridge.py:878 An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not installed. Falling back to cpu.
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_smooth_heaviside.xml -
============================= slowest 15 durations =============================
0.07s call clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py::test_differentiable
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py::test_f2py_is_truncated_constants
(7 durations < 0.005s hidden. Use -vv to show these durations.)
=========================== short test summary info ============================
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py::test_f2py_is_truncated_constants - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'numpy.ndarray'>, [[ 1.59500198e+00 4.07791901e-02 1.71447734e+00 -1.50899031e+00
3.86480995e-01 -4.44648296e-01 1.08684435e+00 -1.17169986e+00
1.33788699e+00 1.58189043e-01 1.44797429e+00 -8.22473142e-02
-2.50213400e-01 1.04020818e+00 1.74295080e+00 -4.68987146e-01
1.68815833e+00 1.54449500e+00 -1.16030669e+00 3.91865821e-01]
[ 7.37513084e-01 1.59409324e+00 5.96366701e-01 -1.31977528e+00
-7.67664437e-03 -2.29685978e-02 8.14281655e-04 1.65089623e+00
-5.40225361e-01 -9.94423872e-01 7.95132080e-02 5.08215326e-01
1.58078539e+00 2.95256882e-01 -8.35799795e-01 1.54718890e+00
-2.97889754e-02 6.32883114e-01 -8.62599223e-02 -1.01887190e+00]]. The error was:
TypeError: unhashable type: 'numpy.ndarray'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py::test_full_pi_closed_form_and_endpoints - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'numpy.ndarray'>, [-0.9 -0.855 -0.81 -0.765 -0.72 -0.675 -0.63 -0.585 -0.54 -0.495
-0.45 -0.405 -0.36 -0.315 -0.27 -0.225 -0.18 -0.135 -0.09 -0.045
0. 0.045 0.09 0.135 0.18 0.225 0.27 0.315 0.36 0.405
0.45 0.495 0.54 0.585 0.63 0.675 0.72 0.765 0.81 0.855
0.9 ]. The error was:
TypeError: unhashable type: 'numpy.ndarray'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_smooth_heaviside.py::test_differentiable - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jax._src.interpreters.ad.LinearizeTracer'>, GradTracer(primal=[-0.5 -0.4 -0.3 -0.2 -0.1 0. 0.1 0.2 0.3 0.4 0.5], typeof(tangent)=f64[11]). The error was:
TypeError: unhashable type: 'LinearizeTracer'
--------------------
For simplicity, JAX has removed its internal frames from the traceback of the following exception. Set JAX_TRACEBACK_FILTERING=off to include these.
============================== 3 failed in 0.54s ===============================
JAX pytest module failed: auto_llm_generated_pytests/test_smooth_heaviside.py (exit 1)
JAX pytest module: auto_llm_generated_pytests/test_soil_vegetation.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 3 items
clubb_jax/pytests/auto_llm_generated_pytests/test_soil_vegetation.py::test_soil_veg_vs_fortran_replica PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_soil_vegetation.py::test_soil_veg_init_and_integration PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_soil_vegetation.py::test_soil_veg_differentiable PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_soil_vegetation.xml -
============================= slowest 15 durations =============================
0.77s call clubb_jax/pytests/auto_llm_generated_pytests/test_soil_vegetation.py::test_soil_veg_differentiable
0.42s call clubb_jax/pytests/auto_llm_generated_pytests/test_soil_vegetation.py::test_soil_veg_init_and_integration
0.24s call clubb_jax/pytests/auto_llm_generated_pytests/test_soil_vegetation.py::test_soil_veg_vs_fortran_replica
(6 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 3 passed in 1.88s ===============================
JAX pytest module: auto_llm_generated_pytests/test_solver.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 7 items
clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py::test_solver_shape PASSED [ 14%]
clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py::test_solver_diagonal PASSED [ 28%]
clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py::test_solver_known_3x3 PASSED [ 42%]
clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py::test_solver_vs_numpy_single_col PASSED [ 57%]
clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py::test_solver_vs_numpy_multi_col PASSED [ 71%]
clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py::test_solver_residual PASSED [ 85%]
clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py::test_solver_f2py_oracle PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_solver.xml -
============================= slowest 15 durations =============================
0.37s call clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py::test_solver_shape
0.28s call clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py::test_solver_vs_numpy_multi_col
0.26s call clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py::test_solver_residual
0.21s call clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py::test_solver_diagonal
0.21s call clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py::test_solver_f2py_oracle
0.20s call clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py::test_solver_vs_numpy_single_col
0.17s call clubb_jax/pytests/auto_llm_generated_pytests/test_solver.py::test_solver_known_3x3
(8 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 7 passed in 2.33s ===============================
JAX pytest module: auto_llm_generated_pytests/test_spec_hum_to_mixing_ratio.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 1 item
clubb_jax/pytests/auto_llm_generated_pytests/test_spec_hum_to_mixing_ratio.py::test_conversions PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_spec_hum_to_mixing_ratio.xml -
============================= slowest 15 durations =============================
(3 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 1 passed in 0.42s ===============================
JAX pytest module: auto_llm_generated_pytests/test_splatting_autodiff.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 6 items
clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py::test_clipped_frequency_has_zero_forward_and_reverse_derivatives[-0.0004-0.0] PASSED [ 16%]
clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py::test_clipped_frequency_has_zero_forward_and_reverse_derivatives[-0.0004-0.25] PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py::test_clipped_frequency_has_zero_forward_and_reverse_derivatives[0.0-0.0] PASSED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py::test_clipped_frequency_has_zero_forward_and_reverse_derivatives[0.0-0.25] PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py::test_mixed_columns_preserve_values_and_coefficient_sensitivity[0.0] PASSED [ 83%]
clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py::test_mixed_columns_preserve_values_and_coefficient_sensitivity[0.25] PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_splatting_autodiff.xml -
============================= slowest 15 durations =============================
5.49s call clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py::test_mixed_columns_preserve_values_and_coefficient_sensitivity[0.0]
0.81s call clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py::test_clipped_frequency_has_zero_forward_and_reverse_derivatives[-0.0004-0.0]
0.50s call clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py::test_mixed_columns_preserve_values_and_coefficient_sensitivity[0.25]
0.42s call clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py::test_clipped_frequency_has_zero_forward_and_reverse_derivatives[0.0-0.25]
0.38s call clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py::test_clipped_frequency_has_zero_forward_and_reverse_derivatives[0.0-0.0]
0.36s call clubb_jax/pytests/auto_llm_generated_pytests/test_splatting_autodiff.py::test_clipped_frequency_has_zero_forward_and_reverse_derivatives[-0.0004-0.25]
(9 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 6 passed in 8.40s ===============================
JAX pytest module: auto_llm_generated_pytests/test_sponge_damp_xp23.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 4 items
clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py::test_f2py_oracle FAILED [ 25%]
clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py::test_sponge_damp_xm_f2py FAILED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py::test_below_sponge_noop PASSED [ 75%]
clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py::test_differentiable PASSED [100%]
=================================== FAILURES ===================================
_______________________________ test_f2py_oracle _______________________________
def test_f2py_oracle():
try:
import clubb_f2py
from clubb_python import clubb_api
from clubb_python.derived_types.err_info import ErrInfo
except ModuleNotFoundError as e:
if (e.name or "").split(".")[0] not in {"clubb_f2py", "clubb_python", "netCDF4"}:
raise
pytest.skip(f" f2py sponge_damp_xp2/xp3 oracle: SKIP ({type(e).__name__})")
jgr = setup_grid(ngrdcol=_NG, deltaz=_DZ, zm_init=0.0, zm_top=_ZTOP, grid_type=1)
ng, nzm = jgr.zm.shape
nzt = nzm - 1
clubb_api.init_err_info(ng)
cf = clubb_api.get_default_config_flags(); clubb_api.init_config_flags(cf)
clubb_api.setup_grid(nzmax=nzm, ngrdcol=ng, sfc_elevation=np.zeros(ng),
l_implemented=False, l_ascending_grid=True, grid_type=2,
deltaz=np.full(ng, _DZ), zm_init=np.zeros(ng), zm_top=np.full(ng, float(jgr.zm[0, -1])),
momentum_heights=np.asfortranarray(np.asarray(jgr.zm)),
thermodynamic_heights=np.asfortranarray(np.asarray(jgr.zt)),
err_info=ErrInfo(ngrdcol=ng))
zm = np.asarray(jgr.zm); zt = np.asarray(jgr.zt)
rng = np.random.default_rng(4)
xp2 = rng.uniform(0.01, 2.0, (ng, nzm)); xp3 = rng.uniform(-1, 1, (ng, nzt))
tau_zm = np.full((ng, nzm), _TAU); tau_zt = np.full((ng, nzt), _TAU)
xtol_col = np.full(ng, _XTOLSQ); depth_col = np.full(ng, _DEPTH) # f2py wants rank-1 (ngrdcol)
xtol_j = xtol_col[:, None]; depth_j = depth_col[:, None] # JAX broadcasts (ng,1)
> f2 = np.asarray(clubb_f2py.f2py_sponge_damp_xp2(_DT, zm, xp2, xtol_col, tau_zm, depth_col))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E ValueError: too many axes: 2 (effrank=2), expected rank=1
clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py:67: ValueError
------------------------------ Captured log call -------------------------------
WARNING jax._src.xla_bridge:xla_bridge.py:878 An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not installed. Falling back to cpu.
___________________________ test_sponge_damp_xm_f2py ___________________________
def test_sponge_damp_xm_f2py():
"""sponge_damp_xm (sponge_layer_damping.F90) — implicit nudge of the mean xm toward xm_ref in the top sponge.
The JAX relies on tau=inf below the sponge (from initialize_tau_sponge_damp) for the no-op rather than a geometric
gate, so build that tau profile and pass it to both sides; this also exercises initialize_tau_sponge_damp (no own
f2py wrapper). SKIPs if clubb_f2py/clubb_python are unbuilt. (iter 439)"""
try:
import clubb_f2py
from clubb_python import clubb_api
from clubb_python.derived_types.err_info import ErrInfo
except ModuleNotFoundError as e:
if (e.name or "").split(".")[0] not in {"clubb_f2py", "clubb_python", "netCDF4"}:
raise
pytest.skip(f" f2py sponge_damp_xm oracle: SKIP ({type(e).__name__})")
jgr = setup_grid(ngrdcol=_NG, deltaz=_DZ, zm_init=0.0, zm_top=_ZTOP, grid_type=1)
ng, nzm = jgr.zm.shape; nzt = nzm - 1
clubb_api.init_err_info(ng); cf = clubb_api.get_default_config_flags(); clubb_api.init_config_flags(cf)
clubb_api.setup_grid(nzmax=nzm, ngrdcol=ng, sfc_elevation=np.zeros(ng), l_implemented=False,
l_ascending_grid=True, grid_type=2, deltaz=np.full(ng, _DZ), zm_init=np.zeros(ng),
zm_top=np.full(ng, float(jgr.zm[0, -1])),
momentum_heights=np.asfortranarray(np.asarray(jgr.zm)),
thermodynamic_heights=np.asfortranarray(np.asarray(jgr.zt)), err_info=ErrInfo(ngrdcol=ng))
zt = np.asarray(jgr.zt); zm = np.asarray(jgr.zm); zm_top = float(jgr.zm[0, -1])
tau_min, tau_max, depth_frac = 120.0, 1800.0, 0.25
tau = np.zeros((ng, nzt))
for i in range(ng):
tau[i], sld = initialize_tau_sponge_damp(zt[i], _DT, zm_top, tau_min, tau_max, depth_frac)
sld = depth_frac * zm_top
rng = np.random.default_rng(2)
worst = 0.0; damped = False
for _ in range(10):
xm = rng.uniform(280.0, 320.0, (ng, nzt)); xm_ref = rng.uniform(280.0, 320.0, (ng, nzt))
j = np.asarray(sponge_damp_xm(jnp.asarray(xm), jnp.asarray(xm_ref), zt, zm_top, jnp.asarray(tau), sld, _DT))
> f = np.asarray(clubb_f2py.f2py_sponge_damp_xm(_DT, zt, zm, xm_ref, xm, tau, np.full(ng, sld)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E ValueError: too many axes: 2 (effrank=2), expected rank=1
clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py:110: ValueError
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_sponge_damp_xp23.xml -
============================= slowest 15 durations =============================
1.19s call clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py::test_differentiable
0.69s call clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py::test_below_sponge_noop
0.32s call clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py::test_sponge_damp_xm_f2py
0.18s call clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py::test_f2py_oracle
(8 durations < 0.005s hidden. Use -vv to show these durations.)
=========================== short test summary info ============================
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py::test_f2py_oracle - ValueError: too many axes: 2 (effrank=2), expected rank=1
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_sponge_damp_xp23.py::test_sponge_damp_xm_f2py - ValueError: too many axes: 2 (effrank=2), expected rank=1
========================= 2 failed, 2 passed in 2.85s ==========================
JAX pytest module failed: auto_llm_generated_pytests/test_sponge_damp_xp23.py (exit 1)
JAX pytest module: auto_llm_generated_pytests/test_spurious_source.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 3 items
clubb_jax/pytests/auto_llm_generated_pytests/test_spurious_source.py::test_f2py_oracle PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_spurious_source.py::test_conservation_identity PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_spurious_source.py::test_differentiable PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_spurious_source.xml -
============================= slowest 15 durations =============================
0.59s call clubb_jax/pytests/auto_llm_generated_pytests/test_spurious_source.py::test_differentiable
0.31s call clubb_jax/pytests/auto_llm_generated_pytests/test_spurious_source.py::test_f2py_oracle
0.15s call clubb_jax/pytests/auto_llm_generated_pytests/test_spurious_source.py::test_conservation_identity
(6 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 3 passed in 1.49s ===============================
JAX pytest module: auto_llm_generated_pytests/test_standalone_jax.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 2 items
clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py::test_active_driver_runs_without_clubb_python[neutral] PASSED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py::test_active_driver_runs_without_clubb_python[arm] PASSED [100%]
=============================== warnings summary ===============================
clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py: 204 warnings
/home/jenkins/workspace/clubb_jax/clubb_jax/src/CLUBB_core/stats_netcdf.py:876: DeprecationWarning: Setting the shape on a NumPy array has been deprecated in NumPy 2.5.
As an alternative, you can create a new view using np.reshape (with copy=False if needed).
pnv[i, :] = np.array(list(padded), dtype="S1")
clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py::test_active_driver_runs_without_clubb_python[neutral]
clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py::test_active_driver_runs_without_clubb_python[arm]
/home/jenkins/workspace/clubb_jax/clubb_jax/src/CLUBB_core/stats_netcdf.py:882: DeprecationWarning: Setting the shape on a NumPy array has been deprecated in NumPy 2.5.
As an alternative, you can create a new view using np.reshape (with copy=False if needed).
cpv[:, :vals.shape[0]] = vals.T
clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py::test_active_driver_runs_without_clubb_python[neutral]
clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py::test_active_driver_runs_without_clubb_python[neutral]
clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py::test_active_driver_runs_without_clubb_python[arm]
clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py::test_active_driver_runs_without_clubb_python[arm]
/home/jenkins/workspace/clubb_jax/clubb_jax/src/CLUBB_core/stats_netcdf.py:500: DeprecationWarning: Setting the shape on a NumPy array has been deprecated in NumPy 2.5.
As an alternative, you can create a new view using np.reshape (with copy=False if needed).
self._time_bnds_varid[self._time_index - 1, :] = (
clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py: 1568 warnings
/home/jenkins/workspace/clubb_jax/clubb_jax/src/CLUBB_core/stats_netcdf.py:519: DeprecationWarning: Setting the shape on a NumPy array has been deprecated in NumPy 2.5.
As an alternative, you can create a new view using np.reshape (with copy=False if needed).
varid[t, :, col_start:col_end] = avg.T
clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py: 104 warnings
/home/jenkins/workspace/clubb_jax/clubb_jax/src/CLUBB_core/stats_netcdf.py:521: DeprecationWarning: Setting the shape on a NumPy array has been deprecated in NumPy 2.5.
As an alternative, you can create a new view using np.reshape (with copy=False if needed).
varid[t, col_start:col_end] = avg[:, 0]
-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_standalone_jax.xml -
============================= slowest 15 durations =============================
40.61s call clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py::test_active_driver_runs_without_clubb_python[neutral]
40.34s call clubb_jax/pytests/auto_llm_generated_pytests/test_standalone_jax.py::test_active_driver_runs_without_clubb_python[arm]
(4 durations < 0.005s hidden. Use -vv to show these durations.)
================= 2 passed, 1882 warnings in 81.42s (0:01:21) ==================
JAX pytest module: auto_llm_generated_pytests/test_stats_output_time.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 3 items
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_output_time.py::test_stats_timestamp_uses_end_of_current_model_step PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_output_time.py::test_inlined_driver_helpers_stay_absent PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_output_time.py::test_driver_uses_canonical_microphysics_interfaces PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_stats_output_time.xml -
============================= slowest 15 durations =============================
(9 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 3 passed in 0.57s ===============================
JAX pytest module: auto_llm_generated_pytests/test_stats_writer.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 21 items
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_registry_expansion_matches_source_families PASSED [ 4%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_registry_errors_are_not_silently_skipped[entry(1) = "profile | zt"-expected name | grid | units | long_name] PASSED [ 9%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_registry_errors_are_not_silently_skipped[entry(1) = "profile | bad_grid | K | Profile"-Invalid stats grid] PASSED [ 14%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_registry_errors_are_not_silently_skipped[entry(1) = "profile | zt | K | Profile-Malformed stats registry entry] PASSED [ 19%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_registry_errors_are_not_silently_skipped[entry(1) = " | zt | K | Profile"-name and grid must be non-empty] PASSED [ 23%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_single_quoted_registry_entry_is_supported PASSED [ 28%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_sampling_uses_open_closed_absolute_time_window PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_rank_and_selector_dispatch_updates_pointwise_counts PASSED [ 38%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_budget_sequence_and_l_count_sample PASSED [ 42%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_jitted_banks_preserve_column_and_level_selectors PASSED [ 47%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_jax_layout_reuses_cached_slot_maps PASSED [ 52%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_rank_one_column_selector_is_bounds_checked PASSED [ 57%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_direct_banks_accumulate_across_sampled_and_unsampled_steps PASSED [ 61%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_netcdf_record_uses_end_step_time PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_oversampling_is_reported_at_the_host_output_boundary PASSED [ 71%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_config_metadata_data_and_source_grid_contract PASSED [ 76%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_netcdf_metadata_matches_fortran_schema PASSED [ 80%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_radiation_registry_entries_require_radiation_grids PASSED [ 85%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_multiple_runtime_batches_fill_one_output_file PASSED [ 90%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_output_remapping_preserves_values_on_identical_grids PASSED [ 95%]
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_silhs_sample_fields_share_the_stats_record PASSED [100%]
=============================== warnings summary ===============================
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_direct_banks_accumulate_across_sampled_and_unsampled_steps
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_netcdf_record_uses_end_step_time
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_multiple_runtime_batches_fill_one_output_file
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_multiple_runtime_batches_fill_one_output_file
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_output_remapping_preserves_values_on_identical_grids
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_silhs_sample_fields_share_the_stats_record
/home/jenkins/workspace/clubb_jax/clubb_jax/src/CLUBB_core/stats_netcdf.py:500: DeprecationWarning: Setting the shape on a NumPy array has been deprecated in NumPy 2.5.
As an alternative, you can create a new view using np.reshape (with copy=False if needed).
self._time_bnds_varid[self._time_index - 1, :] = (
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_direct_banks_accumulate_across_sampled_and_unsampled_steps
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_netcdf_record_uses_end_step_time
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_multiple_runtime_batches_fill_one_output_file
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_multiple_runtime_batches_fill_one_output_file
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_output_remapping_preserves_values_on_identical_grids
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_output_remapping_preserves_values_on_identical_grids
/home/jenkins/workspace/clubb_jax/clubb_jax/src/CLUBB_core/stats_netcdf.py:519: DeprecationWarning: Setting the shape on a NumPy array has been deprecated in NumPy 2.5.
As an alternative, you can create a new view using np.reshape (with copy=False if needed).
varid[t, :, col_start:col_end] = avg.T
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_netcdf_metadata_matches_fortran_schema
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_netcdf_metadata_matches_fortran_schema
/home/jenkins/workspace/clubb_jax/clubb_jax/src/CLUBB_core/stats_netcdf.py:876: DeprecationWarning: Setting the shape on a NumPy array has been deprecated in NumPy 2.5.
As an alternative, you can create a new view using np.reshape (with copy=False if needed).
pnv[i, :] = np.array(list(padded), dtype="S1")
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_netcdf_metadata_matches_fortran_schema
/home/jenkins/workspace/clubb_jax/clubb_jax/src/CLUBB_core/stats_netcdf.py:882: DeprecationWarning: Setting the shape on a NumPy array has been deprecated in NumPy 2.5.
As an alternative, you can create a new view using np.reshape (with copy=False if needed).
cpv[:, :vals.shape[0]] = vals.T
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_silhs_sample_fields_share_the_stats_record
/home/jenkins/workspace/clubb_jax/clubb_jax/src/CLUBB_core/stats_netcdf.py:739: DeprecationWarning: Setting the shape on a NumPy array has been deprecated in NumPy 2.5.
As an alternative, you can create a new view using np.reshape (with copy=False if needed).
varid[t, :, :, col] = samples[:, :, :, ivar].transpose(2, 1, 0)
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_silhs_sample_fields_share_the_stats_record
/home/jenkins/workspace/clubb_jax/clubb_jax/src/CLUBB_core/stats_netcdf.py:766: DeprecationWarning: Setting the shape on a NumPy array has been deprecated in NumPy 2.5.
As an alternative, you can create a new view using np.reshape (with copy=False if needed).
self._lh_u_varids[ivar][t, :, :, col] = uniform_vals[:, :, :, ivar].transpose(2, 1, 0)
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_silhs_sample_fields_share_the_stats_record
/home/jenkins/workspace/clubb_jax/clubb_jax/src/CLUBB_core/stats_netcdf.py:767: DeprecationWarning: Setting the shape on a NumPy array has been deprecated in NumPy 2.5.
As an alternative, you can create a new view using np.reshape (with copy=False if needed).
self._lh_u_varids[-2][t, :, :, col] = mixture_comp.transpose(2, 1, 0)
clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_silhs_sample_fields_share_the_stats_record
/home/jenkins/workspace/clubb_jax/clubb_jax/src/CLUBB_core/stats_netcdf.py:768: DeprecationWarning: Setting the shape on a NumPy array has been deprecated in NumPy 2.5.
As an alternative, you can create a new view using np.reshape (with copy=False if needed).
self._lh_u_varids[-1][t, :, :, col] = sample_weights.transpose(2, 1, 0)
-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_stats_writer.xml -
============================= slowest 15 durations =============================
4.15s call clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_output_remapping_preserves_values_on_identical_grids
2.38s call clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_rank_and_selector_dispatch_updates_pointwise_counts
0.34s call clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_direct_banks_accumulate_across_sampled_and_unsampled_steps
0.13s call clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_budget_sequence_and_l_count_sample
0.12s call clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_jitted_banks_preserve_column_and_level_selectors
0.03s call clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_multiple_runtime_batches_fill_one_output_file
0.03s call clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_silhs_sample_fields_share_the_stats_record
0.03s call clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_netcdf_record_uses_end_step_time
0.02s call clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_netcdf_metadata_matches_fortran_schema
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_oversampling_is_reported_at_the_host_output_boundary
0.01s setup clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_silhs_sample_fields_share_the_stats_record
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_stats_writer.py::test_rank_one_column_selector_is_bounds_checked
(3 durations < 0.005s hidden. Use -vv to show these durations.)
======================= 21 passed, 19 warnings in 7.82s ========================
JAX pytest module: auto_llm_generated_pytests/test_sunray_sw.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 2 items
clubb_jax/pytests/auto_llm_generated_pytests/test_sunray_sw.py::test_jit_multicol PASSED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_sunray_sw.py::test_f2py_oracle FAILED [100%]
=================================== FAILURES ===================================
_______________________________ test_f2py_oracle _______________________________
def test_f2py_oracle():
try:
import clubb_f2py
from clubb_python import clubb_api
from clubb_python.derived_types.err_info import ErrInfo
except ModuleNotFoundError as e:
if (e.name or "").split(".")[0] not in {"clubb_f2py", "clubb_python", "netCDF4"}:
raise
pytest.skip(f" f2py sunray_sw oracle: SKIP ({type(e).__name__})")
jgr = setup_grid(ngrdcol=_NG, deltaz=_DZ, zm_init=0.0, zm_top=_ZTOP, grid_type=1)
ng, nzm = jgr.zm.shape; nzt = nzm - 1
clubb_api.init_err_info(ng); cf = clubb_api.get_default_config_flags(); clubb_api.init_config_flags(cf)
clubb_api.setup_grid(nzmax=nzm, ngrdcol=ng, sfc_elevation=np.zeros(ng), l_implemented=False,
l_ascending_grid=True, grid_type=2, deltaz=np.full(ng, _DZ), zm_init=np.zeros(ng),
zm_top=np.full(ng, float(jgr.zm[0, -1])),
momentum_heights=np.asfortranarray(np.asarray(jgr.zm)),
thermodynamic_heights=np.asfortranarray(np.asarray(jgr.zt)), err_info=ErrInfo(ngrdcol=ng))
# Pin the parameters_radiation constants the f2py wrapper reads (fs_values/cos_solar_zen are fixed dim(20)).
z20 = np.zeros(20)
clubb_f2py.f2py_set_simplified_radiation_params(0.0, 0.0, 0.0, _RADIUS, _ALVDR, _GC, _OMEGA,
False, True, True, 1, z20.copy(), z20.copy(), z20.copy())
dzt = np.asarray(jgr.dzt); zm = np.asarray(jgr.zm); zt = np.asarray(jgr.zt)
rng = np.random.default_rng(0)
worst = 0.0
for _ in range(15):
rcm = rng.uniform(0.0, 1e-3, (ng, nzt)); rho = rng.uniform(0.5, 1.2, (ng, nzt))
fs0 = float(rng.uniform(100.0, 400.0)); amu0 = float(rng.uniform(0.3, 0.9))
j = np.asarray(sunray_sw(ng, nzt, rcm, rho, amu0, dzt, zm, zt, _RADIUS, _ALVDR, _GC, fs0, _OMEGA, True))
> f = np.asarray(clubb_f2py.f2py_sunray_sw(fs0, amu0, rho, rcm))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E TypeError: clubb_f2py.f2py_sunray_sw() missing required argument 'zm' (pos 5)
clubb_jax/pytests/auto_llm_generated_pytests/test_sunray_sw.py:81: TypeError
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_sunray_sw.xml -
============================= slowest 15 durations =============================
0.49s call clubb_jax/pytests/auto_llm_generated_pytests/test_sunray_sw.py::test_jit_multicol
0.32s call clubb_jax/pytests/auto_llm_generated_pytests/test_sunray_sw.py::test_f2py_oracle
(4 durations < 0.005s hidden. Use -vv to show these durations.)
=========================== short test summary info ============================
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_sunray_sw.py::test_f2py_oracle - TypeError: clubb_f2py.f2py_sunray_sw() missing required argument 'zm' (pos 5)
========================= 1 failed, 1 passed in 1.33s ==========================
JAX pytest module failed: auto_llm_generated_pytests/test_sunray_sw.py (exit 1)
JAX pytest module: auto_llm_generated_pytests/test_time_select.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 3 items
clubb_jax/pytests/auto_llm_generated_pytests/test_time_select.py::test_interior_triples_match_fortran PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_time_select.py::test_interpolation_equivalent_everywhere PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_time_select.py::test_endpoints_and_out_of_range PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_time_select.xml -
============================= slowest 15 durations =============================
0.84s call clubb_jax/pytests/auto_llm_generated_pytests/test_time_select.py::test_interior_triples_match_fortran
0.19s call clubb_jax/pytests/auto_llm_generated_pytests/test_time_select.py::test_interpolation_equivalent_everywhere
0.06s call clubb_jax/pytests/auto_llm_generated_pytests/test_time_select.py::test_endpoints_and_out_of_range
(6 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 3 passed in 1.53s ===============================
JAX pytest module: auto_llm_generated_pytests/test_T_in_K.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 3 items
clubb_jax/pytests/auto_llm_generated_pytests/test_T_in_K.py::test_closed_form PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_T_in_K.py::test_exact_inverse PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_T_in_K.py::test_f2py_oracle PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_T_in_K.xml -
============================= slowest 15 durations =============================
(9 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 3 passed in 0.46s ===============================
JAX pytest module: auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 4 items
clubb_jax/pytests/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py::test_deterministic_coefficients PASSED [ 25%]
clubb_jax/pytests/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py::test_variance_combination_monte_carlo PASSED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py::test_corr_quotient_and_grad PASSED [ 75%]
clubb_jax/pytests/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py::test_zero_component_variances_have_finite_derivatives PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.xml -
============================= slowest 15 durations =============================
3.41s call clubb_jax/pytests/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py::test_variance_combination_monte_carlo
0.82s call clubb_jax/pytests/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py::test_zero_component_variances_have_finite_derivatives
0.80s call clubb_jax/pytests/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py::test_corr_quotient_and_grad
0.50s call clubb_jax/pytests/auto_llm_generated_pytests/test_transform_pdf_chi_eta_component.py::test_deterministic_coefficients
(8 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 4 passed in 5.98s ===============================
JAX pytest module: auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 8 items
clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py::test_all_vary PASSED [ 12%]
clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py::test_all_const PASSED [ 25%]
clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py::test_x1x2_const PASSED [ 37%]
clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py::test_x1x3_const_uses_swapped_x1x2 PASSED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py::test_x2x3_const PASSED [ 62%]
clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py::test_x1_const PASSED [ 75%]
clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py::test_x2_const PASSED [ 87%]
clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py::test_x3_const_uses_swapped_x2 PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.xml -
============================= slowest 15 durations =============================
2.16s call clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py::test_all_vary
0.02s call clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py::test_x2x3_const
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py::test_x1_const
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py::test_all_const
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py::test_x2_const
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py::test_x1x2_const
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py::test_x1x3_const_uses_swapped_x1x2
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NLL_mean_eq.py::test_x3_const_uses_swapped_x2
(7 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 8 passed in 2.66s ===============================
JAX pytest module: auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 8 items
clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py::test_all_vary_base PASSED [ 12%]
clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py::test_c3_const_x3 PASSED [ 25%]
clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py::test_c2_const_x2 PASSED [ 37%]
clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py::test_c1_const_x1 PASSED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py::test_c2c3_const_x2x3 PASSED [ 62%]
clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py::test_c1c3_const_x1x3 PASSED [ 75%]
clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py::test_c1c2_const_x1x2 PASSED [ 87%]
clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py::test_all_const_maps_to_x2x3 PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.xml -
============================= slowest 15 durations =============================
2.03s call clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py::test_all_vary_base
0.02s call clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py::test_c2c3_const_x2x3
0.02s call clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py::test_c1c3_const_x1x3
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py::test_c3_const_x3
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py::test_c1c2_const_x1x2
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py::test_c1_const_x1
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py::test_all_const_maps_to_x2x3
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_trivar_NNL_covar_eq.py::test_c2_const_x2
(7 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 8 passed in 2.59s ===============================
JAX pytest module: auto_llm_generated_pytests/test_unsupported_config_guards.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 14 items
clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py::test_baseline_and_supported_radiation_schemes_pass PASSED [ 7%]
clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py::test_unsupported_active_driver_features_fail_loud[cfg0-overrides0-microphys_scheme] PASSED [ 14%]
clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py::test_unsupported_active_driver_features_fail_loud[cfg1-overrides1-l_gfdl_activation] PASSED [ 21%]
clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py::test_unsupported_active_driver_features_fail_loud[cfg2-overrides2-rad_scheme] PASSED [ 28%]
clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py::test_unsupported_active_driver_features_fail_loud[cfg3-overrides3-l_calc_thlp2_rad] PASSED [ 35%]
clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py::test_unsupported_active_driver_features_fail_loud[cfg4-overrides4-Sponge damping] PASSED [ 42%]
clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py::test_unsupported_active_driver_features_fail_loud[cfg5-overrides5-lh_microphys_type] PASSED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py::test_unsupported_active_driver_features_fail_loud[cfg6-overrides6-l_silhs_rad] PASSED [ 57%]
clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py::test_unsupported_active_driver_features_fail_loud[cfg7-overrides7-l_restart] PASSED [ 64%]
clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py::test_unsupported_active_driver_features_fail_loud[cfg8-overrides8-l_input_fields] PASSED [ 71%]
clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py::test_unsupported_active_driver_features_fail_loud[cfg9-overrides9-l_test_grid_generalization] PASSED [ 78%]
clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py::test_unsupported_active_driver_features_fail_loud[cfg10-overrides10-grid_adapt_in_time_method] PASSED [ 85%]
clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py::test_invalid_solar_date_uses_the_source_calendar_failure PASSED [ 92%]
clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py::test_supported_microphysics_and_cloud_sedimentation_pass_initial_gate PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_unsupported_config_guards.xml -
============================= slowest 15 durations =============================
0.05s call clubb_jax/pytests/auto_llm_generated_pytests/test_unsupported_config_guards.py::test_invalid_solar_date_uses_the_source_calendar_failure
(14 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 14 passed in 0.48s ==============================
JAX pytest module: auto_llm_generated_pytests/test_update_xp2_mc.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 3 items
clubb_jax/pytests/auto_llm_generated_pytests/test_update_xp2_mc.py::test_transcription_and_interp PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_update_xp2_mc.py::test_invariants PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_update_xp2_mc.py::test_differentiable PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_update_xp2_mc.xml -
============================= slowest 15 durations =============================
4.35s call clubb_jax/pytests/auto_llm_generated_pytests/test_update_xp2_mc.py::test_differentiable
2.52s call clubb_jax/pytests/auto_llm_generated_pytests/test_update_xp2_mc.py::test_transcription_and_interp
0.09s call clubb_jax/pytests/auto_llm_generated_pytests/test_update_xp2_mc.py::test_invariants
(6 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 3 passed in 7.68s ===============================
JAX pytest module: auto_llm_generated_pytests/test_validation_checks.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 7 items
clubb_jax/pytests/auto_llm_generated_pytests/test_validation_checks.py::test_assert_corr_symmetric_behavior PASSED [ 14%]
clubb_jax/pytests/auto_llm_generated_pytests/test_validation_checks.py::test_assert_corr_symmetric_f2py_nocrash PASSED [ 28%]
clubb_jax/pytests/auto_llm_generated_pytests/test_validation_checks.py::test_sfc_varnce_check_behavior PASSED [ 42%]
clubb_jax/pytests/auto_llm_generated_pytests/test_validation_checks.py::test_length_check_behavior PASSED [ 57%]
clubb_jax/pytests/auto_llm_generated_pytests/test_validation_checks.py::test_pdf_closure_check_behavior PASSED [ 71%]
clubb_jax/pytests/auto_llm_generated_pytests/test_validation_checks.py::test_rad_check_behavior PASSED [ 85%]
clubb_jax/pytests/auto_llm_generated_pytests/test_validation_checks.py::test_invalid_model_arrays_behavior PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_validation_checks.xml -
============================= slowest 15 durations =============================
0.12s call clubb_jax/pytests/auto_llm_generated_pytests/test_validation_checks.py::test_pdf_closure_check_behavior
(14 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 7 passed in 0.77s ===============================
JAX pytest module: auto_llm_generated_pytests/test_windm_edsclrm_lhs.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 2 items
clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_lhs.py::test_lhs_matches_f90_assembly FAILED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_lhs.py::test_surface_term_localized_and_cn_scaling FAILED [100%]
=================================== FAILURES ===================================
________________________ test_lhs_matches_f90_assembly _________________________
def test_lhs_matches_f90_assembly():
gr = setup_grid(_NG, _DZ, _DZ, _DZ * (_NZT + 1))
rng = np.random.default_rng(544)
dt = 60.0
lhs_diff, lhs_ma_zt, invrs_rho_ds_zt, rho_ds_zm, u_star_sqd, wind_speed, invrs_dzt = _inputs(rng, gr)
> got = np.asarray(windm_edsclrm_lhs(jnp.asarray(lhs_diff), jnp.asarray(lhs_ma_zt), dt,
jnp.asarray(invrs_rho_ds_zt), jnp.asarray(rho_ds_zm),
jnp.asarray(u_star_sqd), jnp.asarray(wind_speed), gr, 0, 0))
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[[-0.68638201 1.52409004 -0.46602778 -0.33872706 -0.39151396
E -0.01255222 1.15885653 -1.76984869]
E [ 1.21548704 -1.55817849 1.00056251 1.14582832 1.29674442
E 0.99859823 0.33629566 0.54250523]]
E
E [[-0.79632431 0.18724632 1.6983095 -0.9961909 -0.79230888
E 0.06051654 -0.09212711 -0.80942598]
E [-0.64738986 -1.10715655 0.88700408 -0.95046203 1.54918098
E 0.34532349 1.14856963 0.50961795]]
E
E [[-1.62273185 1.52964745 0.3761664 -0.50771604 1.57947835
E 0.55469002 -1.1577175 1.79986478]
E [-0.58395162 1.71350815 0.29173991 0.22391714 0.24590882
E 1.01796553 -1.33532669 0.60011474]]]. The error was:
E TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_lhs.py:62: ValueError
------------------------------ Captured log call -------------------------------
WARNING jax._src.xla_bridge:xla_bridge.py:878 An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not installed. Falling back to cpu.
__________________ test_surface_term_localized_and_cn_scaling __________________
def test_surface_term_localized_and_cn_scaling():
gr = setup_grid(_NG, _DZ, _DZ, _DZ * (_NZT + 1))
rng = np.random.default_rng(11)
dt = 60.0
lhs_diff, lhs_ma_zt, invrs_rho_ds_zt, rho_ds_zm, u_star_sqd, wind_speed, invrs_dzt = _inputs(rng, gr)
args = (jnp.asarray(lhs_diff), jnp.asarray(lhs_ma_zt), dt, jnp.asarray(invrs_rho_ds_zt),
jnp.asarray(rho_ds_zm), jnp.asarray(u_star_sqd), jnp.asarray(wind_speed), gr, 0, 0)
> base = np.asarray(windm_edsclrm_lhs(*args))
^^^^^^^^^^^^^^^^^^^^^^^^
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[[-1.48571919 -0.00288855 0.40599343 -1.88524397 -1.40829566
E 1.71284409 -1.7183177 -1.4809042 ]
E [ 1.79331381 0.48753437 -0.52402751 0.04556009 0.65137181
E -0.89876474 -1.44812771 1.15215838]]
E
E [[ 0.68144234 0.04952925 1.26694574 0.19630108 1.92365456
E -1.18196215 0.21492145 -0.06550121]
E [-0.58690058 0.36638122 -1.05879507 1.20881074 1.46933421
E -1.48496132 -0.13170717 -0.89142043]]
E
E [[-1.66753201 1.58377723 -0.28020523 -1.4092348 0.69344943
E -1.19113589 1.60572431 -1.13140697]
E [-1.86770125 -1.19692418 -0.6170085 -0.12436735 1.62453736
E 0.78944435 -0.64271736 -1.93249114]]]. The error was:
E TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_lhs.py:78: ValueError
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_windm_edsclrm_lhs.xml -
============================= slowest 15 durations =============================
0.13s call clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_lhs.py::test_lhs_matches_f90_assembly
(5 durations < 0.005s hidden. Use -vv to show these durations.)
=========================== short test summary info ============================
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_lhs.py::test_lhs_matches_f90_assembly - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[[-0.68638201 1.52409004 -0.46602778 -0.33872706 -0.39151396
-0.01255222 1.15885653 -1.76984869]
[ 1.21548704 -1.55817849 1.00056251 1.14582832 1.29674442
0.99859823 0.33629566 0.54250523]]
[[-0.79632431 0.18724632 1.6983095 -0.9961909 -0.79230888
0.06051654 -0.09212711 -0.80942598]
[-0.64738986 -1.10715655 0.88700408 -0.95046203 1.54918098
0.34532349 1.14856963 0.50961795]]
[[-1.62273185 1.52964745 0.3761664 -0.50771604 1.57947835
0.55469002 -1.1577175 1.79986478]
[-0.58395162 1.71350815 0.29173991 0.22391714 0.24590882
1.01796553 -1.33532669 0.60011474]]]. The error was:
TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_lhs.py::test_surface_term_localized_and_cn_scaling - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[[-1.48571919 -0.00288855 0.40599343 -1.88524397 -1.40829566
1.71284409 -1.7183177 -1.4809042 ]
[ 1.79331381 0.48753437 -0.52402751 0.04556009 0.65137181
-0.89876474 -1.44812771 1.15215838]]
[[ 0.68144234 0.04952925 1.26694574 0.19630108 1.92365456
-1.18196215 0.21492145 -0.06550121]
[-0.58690058 0.36638122 -1.05879507 1.20881074 1.46933421
-1.48496132 -0.13170717 -0.89142043]]
[[-1.66753201 1.58377723 -0.28020523 -1.4092348 0.69344943
-1.19113589 1.60572431 -1.13140697]
[-1.86770125 -1.19692418 -0.6170085 -0.12436735 1.62453736
0.78944435 -0.64271736 -1.93249114]]]. The error was:
TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
============================== 2 failed in 0.60s ===============================
JAX pytest module failed: auto_llm_generated_pytests/test_windm_edsclrm_lhs.py (exit 1)
JAX pytest module: auto_llm_generated_pytests/test_windm_edsclrm_rhs.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 3 items
clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py::test_rhs_is_cn_explicit_half FAILED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py::test_no_diffusion_is_pure_time_plus_tendency FAILED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py::test_grad_finite FAILED [100%]
=================================== FAILURES ===================================
_________________________ test_rhs_is_cn_explicit_half _________________________
def test_rhs_is_cn_explicit_half():
rng = np.random.default_rng(545)
dt = 60.0
lhs_diff, xm, xm_tndcy = _inputs(rng)
> got = np.asarray(windm_edsclrm_rhs(jnp.asarray(lhs_diff), jnp.asarray(xm), jnp.asarray(xm_tndcy), dt))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[[-1.19147169 1.26627236 0.60924776 1.90165371 1.76880206
E -1.69827121 -0.92372881 -1.84510251]
E [-1.14636946 -1.9315875 1.87317936 0.73583607 -1.52520287
E -1.8679437 1.12926853 -1.06671348]]
E
E [[-0.09825562 -0.5705109 1.92056741 1.32182048 -1.32470799
E 0.08165562 -0.31340509 -0.70146373]
E [-1.7908162 -1.28913637 -1.6800432 -1.77181536 -0.53644832
E 1.14905894 -1.8667776 -0.13233778]]
E
E [[ 0.14219461 -1.08009536 1.72982352 -0.97913112 0.7923364
E -1.25352379 0.53728725 1.57109789]
E [-0.81325559 -0.03744118 0.21188722 -1.27103021 1.8465853
E 0.3065091 1.68759379 -0.69125656]]]. The error was:
E TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py:63: ValueError
------------------------------ Captured log call -------------------------------
WARNING jax._src.xla_bridge:xla_bridge.py:878 An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not installed. Falling back to cpu.
_________________ test_no_diffusion_is_pure_time_plus_tendency _________________
def test_no_diffusion_is_pure_time_plus_tendency():
rng = np.random.default_rng(3)
dt = 30.0
_, xm, xm_tndcy = _inputs(rng)
zero = np.zeros((3, _NG, _NZT))
> got = np.asarray(windm_edsclrm_rhs(jnp.asarray(zero), jnp.asarray(xm), jnp.asarray(xm_tndcy), dt))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[[0. 0. 0. 0. 0. 0. 0. 0.]
E [0. 0. 0. 0. 0. 0. 0. 0.]]
E
E [[0. 0. 0. 0. 0. 0. 0. 0.]
E [0. 0. 0. 0. 0. 0. 0. 0.]]
E
E [[0. 0. 0. 0. 0. 0. 0. 0.]
E [0. 0. 0. 0. 0. 0. 0. 0.]]]. The error was:
E TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py:75: ValueError
_______________________________ test_grad_finite _______________________________
def test_grad_finite():
rng = np.random.default_rng(99)
lhs_diff, xm, xm_tndcy = _inputs(rng)
> g = jax.grad(lambda x: jnp.sum(
windm_edsclrm_rhs(jnp.asarray(lhs_diff), x, jnp.asarray(xm_tndcy), 60.0) ** 2))(jnp.asarray(xm))
clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py:84:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
x = GradTracer(primal=[[ 1.75047507 5.23945262 4.13699238 6.47505955 6.05774148
-2.15270662 -11.08977628 -0.3...8.53077714 6.76829763 3.72878118 4.93639771
-6.76548646 -10.19207165 -5.57322864]], typeof(tangent)=f64[2,8])
g = jax.grad(lambda x: jnp.sum(
> windm_edsclrm_rhs(jnp.asarray(lhs_diff), x, jnp.asarray(xm_tndcy), 60.0) ** 2))(jnp.asarray(xm))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[[ 0.0241227 0.26036653 0.04766384 1.88874549 0.45961257
E 0.27313399 -0.85285311 0.21804581]
E [-0.1299059 0.44023203 1.72176999 -1.01645847 -0.76224665
E -0.4356814 -0.91891307 -0.5999402 ]]
E
E [[ 1.74491876 -0.48846314 1.09859684 -1.83773104 -0.80537762
E 0.81036459 -0.19098952 1.55943156]
E [-0.25959987 0.49423918 0.34151886 0.39652698 0.62274262
E 0.04512793 -1.22528099 -1.72413047]]
E
E [[-0.99181723 -1.61922865 -1.54748253 -0.87765667 0.37006541
E -0.62710989 1.11139693 1.86154185]
E [-0.67263996 -1.05486348 0.75132523 0.2906633 1.07822862
E 0.46766295 -0.88192609 1.64442527]]]. The error was:
E TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
E
E --------------------
E For simplicity, JAX has removed its internal frames from the traceback of the following exception. Set JAX_TRACEBACK_FILTERING=off to include these.
clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py:85: ValueError
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_windm_edsclrm_rhs.xml -
============================= slowest 15 durations =============================
0.07s call clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py::test_rhs_is_cn_explicit_half
0.01s call clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py::test_grad_finite
(7 durations < 0.005s hidden. Use -vv to show these durations.)
=========================== short test summary info ============================
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py::test_rhs_is_cn_explicit_half - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[[-1.19147169 1.26627236 0.60924776 1.90165371 1.76880206
-1.69827121 -0.92372881 -1.84510251]
[-1.14636946 -1.9315875 1.87317936 0.73583607 -1.52520287
-1.8679437 1.12926853 -1.06671348]]
[[-0.09825562 -0.5705109 1.92056741 1.32182048 -1.32470799
0.08165562 -0.31340509 -0.70146373]
[-1.7908162 -1.28913637 -1.6800432 -1.77181536 -0.53644832
1.14905894 -1.8667776 -0.13233778]]
[[ 0.14219461 -1.08009536 1.72982352 -0.97913112 0.7923364
-1.25352379 0.53728725 1.57109789]
[-0.81325559 -0.03744118 0.21188722 -1.27103021 1.8465853
0.3065091 1.68759379 -0.69125656]]]. The error was:
TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py::test_no_diffusion_is_pure_time_plus_tendency - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[[0. 0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0. 0. 0.]]
[[0. 0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0. 0. 0.]]
[[0. 0. 0. 0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0. 0. 0. 0.]]]. The error was:
TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_windm_edsclrm_rhs.py::test_grad_finite - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[[ 0.0241227 0.26036653 0.04766384 1.88874549 0.45961257
0.27313399 -0.85285311 0.21804581]
[-0.1299059 0.44023203 1.72176999 -1.01645847 -0.76224665
-0.4356814 -0.91891307 -0.5999402 ]]
[[ 1.74491876 -0.48846314 1.09859684 -1.83773104 -0.80537762
0.81036459 -0.19098952 1.55943156]
[-0.25959987 0.49423918 0.34151886 0.39652698 0.62274262
0.04512793 -1.22528099 -1.72413047]]
[[-0.99181723 -1.61922865 -1.54748253 -0.87765667 0.37006541
-0.62710989 1.11139693 1.86154185]
[-0.67263996 -1.05486348 0.75132523 0.2906633 1.07822862
0.46766295 -0.88192609 1.64442527]]]. The error was:
TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
--------------------
For simplicity, JAX has removed its internal frames from the traceback of the following exception. Set JAX_TRACEBACK_FILTERING=off to include these.
============================== 3 failed in 0.65s ===============================
JAX pytest module failed: auto_llm_generated_pytests/test_windm_edsclrm_rhs.py (exit 1)
JAX pytest module: auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 4 items
clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py::test_scalar_lhs_terms FAILED [ 25%]
clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py::test_wp2_term_ta_lhs FAILED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py::test_wp3_term_tp_lhs FAILED [ 75%]
clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py::test_ac_pr2_lhs FAILED [100%]
=================================== FAILURES ===================================
____________________________ test_scalar_lhs_terms _____________________________
def test_scalar_lhs_terms():
gr = setup_grid(ngrdcol=_NG, deltaz=_DZ, zm_init=0.0, zm_top=_ZTOP, grid_type=1)
nzm = gr.zm.shape[1]; nzt = nzm - 1
rng = np.random.default_rng(41)
C1 = rng.uniform(0.5, 2.0, (_NG, nzm)); itau1 = rng.uniform(1e-3, 1e-2, (_NG, nzm))
C4 = rng.uniform(3.0, 6.0, _NG); itau4 = rng.uniform(1e-3, 1e-2, (_NG, nzm))
C8 = rng.uniform(3.0, 6.0, _NG); C8b = rng.uniform(0.1, 0.5, _NG)
itau3 = rng.uniform(1e-3, 1e-2, (_NG, nzt)); Skw = rng.uniform(-3.0, 3.0, (_NG, nzt))
> jd = np.asarray(wp2_term_dp1_lhs(jnp.asarray(C1), jnp.asarray(itau1)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E TypeError: wp2_term_dp1_lhs() missing 3 required positional arguments: 'gr', 'C1_Skw_fnc', and 'invrs_tau1m'
clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py:47: TypeError
------------------------------ Captured log call -------------------------------
WARNING jax._src.xla_bridge:xla_bridge.py:878 An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not installed. Falling back to cpu.
_____________________________ test_wp2_term_ta_lhs _____________________________
def test_wp2_term_ta_lhs():
gr = setup_grid(ngrdcol=_NG, deltaz=_DZ, zm_init=0.0, zm_top=_ZTOP, grid_type=1)
nzm = gr.zm.shape[1]; nzt = nzm - 1
invrs_dzm = np.asarray(gr.invrs_dzm)
rng = np.random.default_rng(42)
invrs_rho_ds_zm = rng.uniform(0.8, 2.0, (_NG, nzm))
rho_ds_zt = rng.uniform(0.5, 1.2, (_NG, nzt))
> j = np.asarray(wp2_term_ta_lhs(jnp.asarray(invrs_rho_ds_zm), jnp.asarray(rho_ds_zt), gr))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E TypeError: wp2_term_ta_lhs() missing 3 required positional arguments: 'gr', 'rho_ds_zt', and 'invrs_rho_ds_zm'
clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py:68: TypeError
_____________________________ test_wp3_term_tp_lhs _____________________________
def test_wp3_term_tp_lhs():
"""wp3_term_tp_lhs — 2-band turbulent-production LHS (F90:4885). Band 0 = coeff of wp2[k+1], band 1 = wp2[k]."""
gr = setup_grid(ngrdcol=_NG, deltaz=_DZ, zm_init=0.0, zm_top=_ZTOP, grid_type=1)
nzm = gr.zm.shape[1]; nzt = nzm - 1
invrs_dzt = np.asarray(gr.invrs_dzt)
rng = np.random.default_rng(43)
coef = rng.uniform(0.5, 2.0, _NG)
wp2 = rng.uniform(1e-3, 2.0, (_NG, nzm)); rho_zm = rng.uniform(0.5, 1.2, (_NG, nzm))
inv_rho_zt = rng.uniform(0.8, 2.0, (_NG, nzt))
> j = np.asarray(wp3_term_tp_lhs(jnp.asarray(coef), jnp.asarray(wp2), jnp.asarray(rho_zm),
jnp.asarray(inv_rho_zt), gr))
E TypeError: wp3_term_tp_lhs() missing 3 required positional arguments: 'wp2', 'rho_ds_zm', and 'invrs_rho_ds_zt'
clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py:88: TypeError
_______________________________ test_ac_pr2_lhs ________________________________
def test_ac_pr2_lhs():
"""wp3_terms_ac_pr2_lhs (F90:5011) and wp2_terms_ac_pr2_lhs (F90:3511) — accumulation+pr2 LHS via d(wm)/dz."""
gr = setup_grid(ngrdcol=_NG, deltaz=_DZ, zm_init=0.0, zm_top=_ZTOP, grid_type=1)
nzm = gr.zm.shape[1]; nzt = nzm - 1
idzt = np.asarray(gr.invrs_dzt); idzm = np.asarray(gr.invrs_dzm)
rng = np.random.default_rng(44)
C11 = rng.uniform(0.3, 0.8, (_NG, nzt)); wm_zm = rng.uniform(-0.1, 0.1, (_NG, nzm))
C_uu_shr = rng.uniform(0.1, 0.5, _NG); wm_zt = rng.uniform(-0.1, 0.1, (_NG, nzt))
> j3 = np.asarray(wp3_terms_ac_pr2_lhs(jnp.asarray(C11), jnp.asarray(wm_zm), gr))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E TypeError: wp3_terms_ac_pr2_lhs() missing 3 required positional arguments: 'gr', 'C11_Skw_fnc', and 'wm_zm'
clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py:108: TypeError
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.xml -
============================= slowest 15 durations =============================
0.11s call clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py::test_scalar_lhs_terms
0.02s call clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py::test_wp3_term_tp_lhs
(10 durations < 0.005s hidden. Use -vv to show these durations.)
=========================== short test summary info ============================
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py::test_scalar_lhs_terms - TypeError: wp2_term_dp1_lhs() missing 3 required positional arguments: 'gr', 'C1_Skw_fnc', and 'invrs_tau1m'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py::test_wp2_term_ta_lhs - TypeError: wp2_term_ta_lhs() missing 3 required positional arguments: 'gr', 'rho_ds_zt', and 'invrs_rho_ds_zm'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py::test_wp3_term_tp_lhs - TypeError: wp3_term_tp_lhs() missing 3 required positional arguments: 'wp2', 'rho_ds_zm', and 'invrs_rho_ds_zt'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py::test_ac_pr2_lhs - TypeError: wp3_terms_ac_pr2_lhs() missing 3 required positional arguments: 'gr', 'C11_Skw_fnc', and 'wm_zm'
============================== 4 failed in 0.68s ===============================
JAX pytest module failed: auto_llm_generated_pytests/test_wp2_wp3_lhs_terms.py (exit 1)
JAX pytest module: auto_llm_generated_pytests/test_wp2_wp3_terms.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 4 items
clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py::test_wp2_bp_pr2_dp1_pr1 FAILED [ 25%]
clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py::test_wp2_pr3 FAILED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py::test_wp3_bp1_pr2_pr1 FAILED [ 75%]
clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py::test_pr_dfsn_turb FAILED [100%]
=================================== FAILURES ===================================
___________________________ test_wp2_bp_pr2_dp1_pr1 ____________________________
def test_wp2_bp_pr2_dp1_pr1():
gr, nzm = _grid()
rng = np.random.default_rng(31)
C_uu_buoy = rng.uniform(0.1, 0.6, _NG)
thv = rng.uniform(290.0, 320.0, (_NG, nzm)); wpthvp = rng.uniform(-0.05, 0.2, (_NG, nzm))
C1 = rng.uniform(0.5, 2.0, (_NG, nzm)); itau1 = rng.uniform(1e-3, 1e-2, (_NG, nzm))
up2 = rng.uniform(1e-3, 2.0, (_NG, nzm)); vp2 = rng.uniform(1e-3, 2.0, (_NG, nzm))
C4 = rng.uniform(3.0, 6.0, _NG); itau4 = rng.uniform(1e-3, 1e-2, (_NG, nzm))
> jb = np.asarray(wp2_terms_bp_pr2_rhs(jnp.asarray(C_uu_buoy), jnp.asarray(thv), jnp.asarray(wpthvp)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E TypeError: wp2_terms_bp_pr2_rhs() missing 3 required positional arguments: 'C_uu_buoy', 'thv_ds_zm', and 'wpthvp'
clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py:57: TypeError
------------------------------ Captured log call -------------------------------
WARNING jax._src.xla_bridge:xla_bridge.py:878 An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not installed. Falling back to cpu.
_________________________________ test_wp2_pr3 _________________________________
def test_wp2_pr3():
gr, nzm = _grid()
nzt = nzm - 1
invrs_dzm = np.asarray(gr.invrs_dzm)
rng = np.random.default_rng(32)
C_uu_shr = rng.uniform(0.1, 0.5, _NG); C_uu_buoy = rng.uniform(0.1, 0.5, _NG)
thv = rng.uniform(290.0, 320.0, (_NG, nzm)); wpthvp = rng.uniform(-0.05, 0.2, (_NG, nzm))
upwp = rng.uniform(-0.5, 0.5, (_NG, nzm)); vpwp = rng.uniform(-0.5, 0.5, (_NG, nzm))
um = rng.uniform(-15.0, 15.0, (_NG, nzt)); vm = rng.uniform(-15.0, 15.0, (_NG, nzt))
> j = np.asarray(wp2_term_pr3_rhs(jnp.asarray(C_uu_shr), jnp.asarray(C_uu_buoy), jnp.asarray(thv),
jnp.asarray(wpthvp), jnp.asarray(upwp), jnp.asarray(um),
jnp.asarray(vpwp), jnp.asarray(vm), gr))
E TypeError: wp2_term_pr3_rhs() missing 3 required positional arguments: 'um', 'vpwp', and 'vm'
clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py:79: TypeError
_____________________________ test_wp3_bp1_pr2_pr1 _____________________________
def test_wp3_bp1_pr2_pr1():
gr, nzm = _grid()
nzt = nzm - 1
rng = np.random.default_rng(33)
C11 = rng.uniform(0.3, 0.8, (_NG, nzt)); thv_zt = rng.uniform(290.0, 320.0, (_NG, nzt))
wp2thvp = rng.uniform(-0.1, 0.3, (_NG, nzt))
C8 = rng.uniform(3.0, 6.0, _NG); C8b = rng.uniform(0.1, 0.5, _NG)
itau3 = rng.uniform(1e-3, 1e-2, (_NG, nzt)); Skw = rng.uniform(-3.0, 3.0, (_NG, nzt))
wp3 = rng.standard_normal((_NG, nzt))
> jb = np.asarray(wp3_terms_bp1_pr2_rhs(jnp.asarray(C11), jnp.asarray(thv_zt), jnp.asarray(wp2thvp)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E TypeError: wp3_terms_bp1_pr2_rhs() missing 3 required positional arguments: 'C11_Skw_fnc', 'thv_ds_zt', and 'wp2thvp'
clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py:104: TypeError
______________________________ test_pr_dfsn_turb _______________________________
def test_pr_dfsn_turb():
"""The pressure-diffusion / pressure-turbulence RHS builders (deferred from iter 494, F90-verified iter 503):
wp2_term_pr_dfsn_rhs (F90:4229) C·invrs_rho_ds_zm·invrs_dzm·Δ(rho_ds_zt·(wpup2+wpvp2+wp3)); lower BC = first interior
wp3_term_pr_turb_rhs (F90:5452) −C·invrs_rho_ds_zt·invrs_dzt·Δ(rho_ds_zm·wp2·em) [TKE branch]
wp3_term_pr_dfsn_rhs (F90:5564) C·invrs_rho_ds_zt·invrs_dzt·Δ(rho_ds_zm·net), net=(wp2up2+wp2vp2+wp4)−wp2·(up2+vp2+wp2)
"""
gr = _grid()[0]; nzm = gr.zm.shape[1]; nzt = nzm - 1
idzm = np.asarray(gr.invrs_dzm); idzt = np.asarray(gr.invrs_dzt)
rng = np.random.default_rng(34)
# wp2_term_pr_dfsn_rhs
Cw2 = rng.uniform(0.1, 0.5, _NG); rho_zt = rng.uniform(0.5, 1.2, (_NG, nzt)); irho_zm = rng.uniform(0.8, 2.0, (_NG, nzm))
wpup2 = rng.standard_normal((_NG, nzt)); wpvp2 = rng.standard_normal((_NG, nzt)); wp3 = rng.standard_normal((_NG, nzt))
> j2 = np.asarray(wp2_term_pr_dfsn_rhs(jnp.asarray(Cw2), jnp.asarray(rho_zt), jnp.asarray(irho_zm),
jnp.asarray(wpup2), jnp.asarray(wpvp2), jnp.asarray(wp3), gr))
E TypeError: wp2_term_pr_dfsn_rhs() missing 3 required positional arguments: 'wpup2', 'wpvp2', and 'wp3'
clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py:128: TypeError
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_wp2_wp3_terms.xml -
============================= slowest 15 durations =============================
0.10s call clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py::test_wp2_bp_pr2_dp1_pr1
(11 durations < 0.005s hidden. Use -vv to show these durations.)
=========================== short test summary info ============================
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py::test_wp2_bp_pr2_dp1_pr1 - TypeError: wp2_terms_bp_pr2_rhs() missing 3 required positional arguments: 'C_uu_buoy', 'thv_ds_zm', and 'wpthvp'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py::test_wp2_pr3 - TypeError: wp2_term_pr3_rhs() missing 3 required positional arguments: 'um', 'vpwp', and 'vm'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py::test_wp3_bp1_pr2_pr1 - TypeError: wp3_terms_bp1_pr2_rhs() missing 3 required positional arguments: 'C11_Skw_fnc', 'thv_ds_zt', and 'wp2thvp'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_wp2_wp3_terms.py::test_pr_dfsn_turb - TypeError: wp2_term_pr_dfsn_rhs() missing 3 required positional arguments: 'wpup2', 'wpvp2', and 'wp3'
============================== 4 failed in 0.61s ===============================
JAX pytest module failed: auto_llm_generated_pytests/test_wp2_wp3_terms.py (exit 1)
JAX pytest module: auto_llm_generated_pytests/test_w_up_in_cloud.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 3 items
clubb_jax/pytests/auto_llm_generated_pytests/test_w_up_in_cloud.py::test_f2py_oracle PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_w_up_in_cloud.py::test_invariants PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_w_up_in_cloud.py::test_differentiable PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_w_up_in_cloud.xml -
============================= slowest 15 durations =============================
1.78s call clubb_jax/pytests/auto_llm_generated_pytests/test_w_up_in_cloud.py::test_differentiable
1.09s call clubb_jax/pytests/auto_llm_generated_pytests/test_w_up_in_cloud.py::test_f2py_oracle
0.90s call clubb_jax/pytests/auto_llm_generated_pytests/test_w_up_in_cloud.py::test_invariants
(6 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 3 passed in 4.19s ===============================
JAX pytest module: auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 2 items
clubb_jax/pytests/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py::test_xm_correction_wpxp_cl_matches_reference FAILED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py::test_xm_correction_wpxp_cl_all_zero_is_noop FAILED [100%]
=================================== FAILURES ===================================
_________________ test_xm_correction_wpxp_cl_matches_reference _________________
def test_xm_correction_wpxp_cl_matches_reference():
rng = np.random.default_rng(0)
ng, nzt = 3, 12
nzm = nzt + 1
xm = rng.normal(size=(ng, nzt))
invrs_dzt = rng.uniform(0.5, 2.0, size=(ng, nzt))
dt = 60.0
wpxp_chnge = rng.normal(size=(ng, nzm)) * 1e-3 # col 0: clipping fired
wpxp_chnge[1] = 0.0 # col 1: no clipping → no-op
wpxp_chnge[2] = 0.5 * eps # col 2: sub-eps → gated off (no-op)
> got = np.asarray(xm_correction_wpxp_cl(
jnp.asarray(xm), jnp.asarray(wpxp_chnge), jnp.asarray(invrs_dzt), dt))
E TypeError: xm_correction_wpxp_cl() missing 5 required positional arguments: 'dt', 'wpxp_chnge', 'invrs_dzt', 'stats', and 'xm'
clubb_jax/pytests/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py:54: TypeError
------------------------------ Captured log call -------------------------------
WARNING jax._src.xla_bridge:xla_bridge.py:878 An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not installed. Falling back to cpu.
_________________ test_xm_correction_wpxp_cl_all_zero_is_noop __________________
def test_xm_correction_wpxp_cl_all_zero_is_noop():
rng = np.random.default_rng(1)
ng, nzt = 2, 8
xm = rng.normal(size=(ng, nzt))
invrs_dzt = rng.uniform(0.5, 2.0, size=(ng, nzt))
> got = np.asarray(xm_correction_wpxp_cl(
jnp.asarray(xm), jnp.zeros((ng, nzt + 1)), jnp.asarray(invrs_dzt), 60.0))
E TypeError: xm_correction_wpxp_cl() missing 5 required positional arguments: 'dt', 'wpxp_chnge', 'invrs_dzt', 'stats', and 'xm'
clubb_jax/pytests/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py:71: TypeError
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.xml -
============================= slowest 15 durations =============================
0.08s call clubb_jax/pytests/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py::test_xm_correction_wpxp_cl_all_zero_is_noop
0.06s call clubb_jax/pytests/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py::test_xm_correction_wpxp_cl_matches_reference
(4 durations < 0.005s hidden. Use -vv to show these durations.)
=========================== short test summary info ============================
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py::test_xm_correction_wpxp_cl_matches_reference - TypeError: xm_correction_wpxp_cl() missing 5 required positional arguments: 'dt', 'wpxp_chnge', 'invrs_dzt', 'stats', and 'xm'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py::test_xm_correction_wpxp_cl_all_zero_is_noop - TypeError: xm_correction_wpxp_cl() missing 5 required positional arguments: 'dt', 'wpxp_chnge', 'invrs_dzt', 'stats', and 'xm'
============================== 2 failed in 0.64s ===============================
JAX pytest module failed: auto_llm_generated_pytests/test_xm_correction_wpxp_cl.py (exit 1)
JAX pytest module: auto_llm_generated_pytests/test_xm_wpxp_terms.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 3 items
clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py::test_xm_term_ta_lhs FAILED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py::test_wpxp_term_tp_lhs FAILED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py::test_wpxp_ac_pr1_bp FAILED [100%]
=================================== FAILURES ===================================
_____________________________ test_xm_term_ta_lhs ______________________________
def test_xm_term_ta_lhs():
gr, nzm, nzt = _grid()
idzt = np.asarray(gr.invrs_dzt)
rng = np.random.default_rng(51)
inv_rho_zt = rng.uniform(0.8, 2.0, (_NG, nzt)); rho_zm = rng.uniform(0.5, 1.2, (_NG, nzm))
> j = np.asarray(xm_term_ta_lhs(jnp.asarray(inv_rho_zt), jnp.asarray(rho_zm), gr))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E TypeError: xm_term_ta_lhs() missing 3 required positional arguments: 'gr', 'rho_ds_zm', and 'invrs_rho_ds_zt'
clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py:50: TypeError
------------------------------ Captured log call -------------------------------
WARNING jax._src.xla_bridge:xla_bridge.py:878 An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not installed. Falling back to cpu.
____________________________ test_wpxp_term_tp_lhs _____________________________
def test_wpxp_term_tp_lhs():
gr, nzm, nzt = _grid()
idzm = np.asarray(gr.invrs_dzm)
rng = np.random.default_rng(52)
wp2 = rng.uniform(1e-3, 2.0, (_NG, nzm))
> j = np.asarray(wpxp_term_tp_lhs(jnp.asarray(wp2), gr))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E TypeError: wpxp_term_tp_lhs() missing 2 required positional arguments: 'gr' and 'wp2'
clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py:64: TypeError
_____________________________ test_wpxp_ac_pr1_bp ______________________________
def test_wpxp_ac_pr1_bp():
gr, nzm, nzt = _grid()
idzm = np.asarray(gr.invrs_dzm)
rng = np.random.default_rng(53)
C7 = rng.uniform(0.3, 0.8, (_NG, nzm)); wm_zt = rng.uniform(-0.1, 0.1, (_NG, nzt))
C6 = rng.uniform(2.0, 5.0, (_NG, nzm)); itau6 = rng.uniform(1e-3, 1e-2, (_NG, nzm))
thv = rng.uniform(290.0, 320.0, (_NG, nzm)); xpthvp = rng.uniform(-0.1, 0.3, (_NG, nzm))
> jac = np.asarray(wpxp_terms_ac_pr2_lhs(jnp.asarray(C7), jnp.asarray(wm_zt), gr))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E TypeError: wpxp_terms_ac_pr2_lhs() missing 4 required positional arguments: 'gr', 'C7_Skw_fnc', 'wm_zt', and 'invrs_dzm'
clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py:81: TypeError
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_xm_wpxp_terms.xml -
============================= slowest 15 durations =============================
0.10s call clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py::test_xm_term_ta_lhs
(8 durations < 0.005s hidden. Use -vv to show these durations.)
=========================== short test summary info ============================
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py::test_xm_term_ta_lhs - TypeError: xm_term_ta_lhs() missing 3 required positional arguments: 'gr', 'rho_ds_zm', and 'invrs_rho_ds_zt'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py::test_wpxp_term_tp_lhs - TypeError: wpxp_term_tp_lhs() missing 2 required positional arguments: 'gr' and 'wp2'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_xm_wpxp_terms.py::test_wpxp_ac_pr1_bp - TypeError: wpxp_terms_ac_pr2_lhs() missing 4 required positional arguments: 'gr', 'C7_Skw_fnc', 'wm_zt', and 'invrs_dzm'
============================== 3 failed in 0.63s ===============================
JAX pytest module failed: auto_llm_generated_pytests/test_xm_wpxp_terms.py (exit 1)
JAX pytest module: auto_llm_generated_pytests/test_xp2_xpyp_terms.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 4 items
clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py::test_term_tp_rhs FAILED [ 25%]
clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py::test_term_pr1 FAILED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py::test_term_pr2 FAILED [ 75%]
clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py::test_term_dp1 FAILED [100%]
=================================== FAILURES ===================================
_______________________________ test_term_tp_rhs _______________________________
def test_term_tp_rhs():
gr = setup_grid(ngrdcol=_NG, deltaz=_DZ, zm_init=0.0, zm_top=_ZTOP, grid_type=1)
nzm = gr.zm.shape[1]; nzt = nzm - 1
invrs_dzm = np.asarray(gr.invrs_dzm)
rng = np.random.default_rng(21)
xam = rng.standard_normal((_NG, nzt)); xbm = rng.standard_normal((_NG, nzt))
wpxap = rng.standard_normal((_NG, nzm)); wpxbp = rng.standard_normal((_NG, nzm))
> j = np.asarray(term_tp_rhs(jnp.asarray(xam), jnp.asarray(xbm),
jnp.asarray(wpxap), jnp.asarray(wpxbp), jnp.asarray(invrs_dzm)))
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[ 0.35877341 1.51067731 -1.78633124 1.68661351 -0.04731721 -0.79997858
E -0.80295672 -1.08281652 -0.22364536 0.83388418 0.58406373 0.63828602
E -1.69480839 -1.57096212 1.55380317 0.96888537 2.183214 1.20981583
E -1.02439134 1.28527245 0.62839426 0.21482493 -0.81987332 0.00278022
E -0.1469987 0.89253511 0.12449694 1.58474591 -0.77448575 0.47110256]
E [ 0.49884238 -0.86433854 -1.18126605 1.0135795 0.51744047 -0.16250519
E 0.3943674 -0.67534403 0.2383482 -0.60512669 0.18878847 0.98608946
E -0.33963025 0.84977381 -1.03419934 -0.28849077 -1.3647426 -0.10058609
E 0.07865408 -0.19726266 -0.26767572 1.34019469 1.42379284 -1.215631
E 1.17411449 -1.72306961 -0.73447925 -0.1734456 0.1110606 -1.04741668]]. The error was:
E TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py:44: ValueError
------------------------------ Captured log call -------------------------------
WARNING jax._src.xla_bridge:xla_bridge.py:878 An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not installed. Falling back to cpu.
________________________________ test_term_pr1 _________________________________
def test_term_pr1():
nzm = 11
rng = np.random.default_rng(22)
C4 = rng.uniform(3.0, 6.0, (_NG, 1)); C14 = rng.uniform(0.5, 2.0, (_NG, 1))
xbp2 = rng.uniform(1e-3, 2.0, (_NG, nzm)); wp2 = rng.uniform(1e-3, 2.0, (_NG, nzm))
itau4 = rng.uniform(1e-3, 1e-2, (_NG, nzm)); itau14 = rng.uniform(1e-3, 1e-2, (_NG, nzm))
> j = np.asarray(term_pr1(jnp.asarray(C4), jnp.asarray(C14), jnp.asarray(xbp2), jnp.asarray(wp2),
jnp.asarray(itau4), jnp.asarray(itau14), w_tol_sqd))
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[4.09904075]
E [3.59788614]]. The error was:
E TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py:60: ValueError
________________________________ test_term_pr2 _________________________________
def test_term_pr2():
gr = setup_grid(ngrdcol=_NG, deltaz=_DZ, zm_init=0.0, zm_top=_ZTOP, grid_type=1)
nzm = gr.zm.shape[1]; nzt = nzm - 1
invrs_dzm = np.asarray(gr.invrs_dzm)
rng = np.random.default_rng(23)
C_uu_shr = rng.uniform(0.1, 0.5, (_NG, 1)); C_uu_buoy = rng.uniform(0.1, 0.5, (_NG, 1))
thv = rng.uniform(290.0, 320.0, (_NG, nzm)); wpthvp = rng.uniform(-0.05, 0.2, (_NG, nzm))
upwp = rng.uniform(-0.5, 0.5, (_NG, nzm)); vpwp = rng.uniform(-0.5, 0.5, (_NG, nzm))
um = rng.uniform(-15.0, 15.0, (_NG, nzt)); vm = rng.uniform(-15.0, 15.0, (_NG, nzt))
> j = np.asarray(term_pr2(jnp.asarray(C_uu_shr), jnp.asarray(C_uu_buoy), jnp.asarray(thv),
jnp.asarray(wpthvp), jnp.asarray(upwp), jnp.asarray(vpwp),
jnp.asarray(um), jnp.asarray(vm), gr))
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[0.37757323]
E [0.35658329]]. The error was:
E TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py:80: ValueError
________________________________ test_term_dp1 _________________________________
def test_term_dp1():
"""term_dp1_lhs (F90:5729) main-diagonal +(Cn/tau) [interior, BC 0]; term_dp1_rhs (F90:5809) explicit
+(Cn/tau)·threshold [ALL levels incl. boundaries]. The DP1 dissipation terms missed by iter 492."""
nzm = 11
rng = np.random.default_rng(24)
Cn = rng.uniform(0.1, 2.0, (_NG, nzm)); itau = rng.uniform(1e-3, 1e-2, (_NG, nzm)); thr = 1e-8
> jl = np.asarray(term_dp1_lhs(jnp.asarray(Cn), jnp.asarray(itau)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[0.72751079 0.8698369 1.19200186 1.06215956 1.17200376 1.18240589
E 1.76082141 0.26421788 1.51070301 1.6586978 1.45310413]
E [0.87885865 1.89161217 0.15880336 1.62558594 1.24389239 0.17813984
E 0.73155888 0.81871803 0.43448612 1.32094161 0.9345577 ]]. The error was:
E TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py:104: ValueError
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_xp2_xpyp_terms.xml -
============================= slowest 15 durations =============================
0.09s call clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py::test_term_tp_rhs
0.03s call clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py::test_term_pr1
(10 durations < 0.005s hidden. Use -vv to show these durations.)
=========================== short test summary info ============================
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py::test_term_tp_rhs - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[ 0.35877341 1.51067731 -1.78633124 1.68661351 -0.04731721 -0.79997858
-0.80295672 -1.08281652 -0.22364536 0.83388418 0.58406373 0.63828602
-1.69480839 -1.57096212 1.55380317 0.96888537 2.183214 1.20981583
-1.02439134 1.28527245 0.62839426 0.21482493 -0.81987332 0.00278022
-0.1469987 0.89253511 0.12449694 1.58474591 -0.77448575 0.47110256]
[ 0.49884238 -0.86433854 -1.18126605 1.0135795 0.51744047 -0.16250519
0.3943674 -0.67534403 0.2383482 -0.60512669 0.18878847 0.98608946
-0.33963025 0.84977381 -1.03419934 -0.28849077 -1.3647426 -0.10058609
0.07865408 -0.19726266 -0.26767572 1.34019469 1.42379284 -1.215631
1.17411449 -1.72306961 -0.73447925 -0.1734456 0.1110606 -1.04741668]]. The error was:
TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py::test_term_pr1 - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[4.09904075]
[3.59788614]]. The error was:
TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py::test_term_pr2 - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[0.37757323]
[0.35658329]]. The error was:
TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_xp2_xpyp_terms.py::test_term_dp1 - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'jaxlib._jax.ArrayImpl'>, [[0.72751079 0.8698369 1.19200186 1.06215956 1.17200376 1.18240589
1.76082141 0.26421788 1.51070301 1.6586978 1.45310413]
[0.87885865 1.89161217 0.15880336 1.62558594 1.24389239 0.17813984
0.73155888 0.81871803 0.43448612 1.32094161 0.9345577 ]]. The error was:
TypeError: unhashable type: 'jaxlib._jax.ArrayImpl'
============================== 4 failed in 0.63s ===============================
JAX pytest module failed: auto_llm_generated_pytests/test_xp2_xpyp_terms.py (exit 1)
JAX pytest module: auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 2 items
clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py::test_f2py_oracle FAILED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py::test_boundaries_and_grad FAILED [100%]
=================================== FAILURES ===================================
_______________________________ test_f2py_oracle _______________________________
def test_f2py_oracle():
try:
import clubb_f2py
from clubb_python import clubb_api
from clubb_python.derived_types.err_info import ErrInfo
except ModuleNotFoundError as e:
if (e.name or "").split(".")[0] not in {"clubb_f2py", "clubb_python", "netCDF4"}:
raise
pytest.skip(f" f2py xpyp_term_ta_*_godunov oracle: SKIP ({type(e).__name__})")
jgr = setup_grid(ngrdcol=_NG, deltaz=_DZ, zm_init=0.0, zm_top=_ZTOP, grid_type=1)
ng, nzm = jgr.zm.shape
nzt = nzm - 1
clubb_api.init_err_info(ng)
cf = clubb_api.get_default_config_flags(); clubb_api.init_config_flags(cf)
clubb_api.setup_grid(nzmax=nzm, ngrdcol=ng, sfc_elevation=np.zeros(ng),
l_implemented=False, l_ascending_grid=True, grid_type=2,
deltaz=np.full(ng, _DZ), zm_init=np.zeros(ng), zm_top=np.full(ng, float(jgr.zm[0, -1])),
momentum_heights=np.asfortranarray(np.asarray(jgr.zm)),
thermodynamic_heights=np.asfortranarray(np.asarray(jgr.zt)),
err_info=ErrInfo(ngrdcol=ng))
# Pull the EXACT stored grid so the JAX side uses identical invrs_dzm / grid_dir.
g = clubb_f2py.get_grid(ng, nzm, nzt)
invrs_dzm = np.asarray(g[4]); grid_dir = float(g[13])
shim = _GridShim(invrs_dzm=jnp.asarray(invrs_dzm))
rng = np.random.default_rng(7)
worst = 0.0
for _ in range(3):
coef = rng.uniform(-2, 2, (ng, nzt)) # zt-level implicit coef (sign drives upwind split)
irho = rng.uniform(0.5, 1.5, (ng, nzm))
rho_zm = rng.uniform(0.5, 1.2, (ng, nzm))
term_zm = rng.uniform(-1, 1, (ng, nzm))
sgn = np.sign(rng.uniform(-1, 1, (ng, nzt))) # ±1 turbulent-velocity sign
f_lhs = np.asarray(clubb_f2py.f2py_xpyp_term_ta_pdf_lhs_godunov(coef, irho, rho_zm))
> j_lhs = np.asarray(xpyp_term_ta_pdf_lhs_godunov(coef, irho, rho_zm, shim, grid_dir))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'numpy.ndarray'>, [[ 0.50038187 1.5888552 1.10274276 -1.09917124 -0.79933486 1.49421378
E -1.97893878 1.28491367 1.18827772 -0.12826019 -0.78787029 -0.88629755
E -0.98052165 -0.21969478 0.01819304 0.21398941 1.98200113 1.17064768
E 0.48871692 1.95584059 -1.13876521 -1.35915186 0.45015842 -1.82423197
E -1.85727888 0.05955528 -0.1351759 1.66867109 0.51690502 0.05647059]
E [-0.01250626 -1.00994031 -1.9528239 -1.23039142 0.76812848 -1.1975731
E -0.52185476 -1.98506303 1.32019092 -1.38215568 -0.92960278 1.52132862
E 0.03916324 1.38860099 0.55886867 0.96708379 -1.63401758 0.16457529
E 0.03108895 1.48535751 -0.55494376 0.39273627 -1.76299343 -0.4494728
E -0.70785461 -1.39920108 1.26535242 -0.48221531 1.91499154 0.35996677]]. The error was:
E TypeError: unhashable type: 'numpy.ndarray'
clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py:73: ValueError
------------------------------ Captured log call -------------------------------
WARNING jax._src.xla_bridge:xla_bridge.py:878 An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not installed. Falling back to cpu.
___________________________ test_boundaries_and_grad ___________________________
def test_boundaries_and_grad():
ng, nzm, nzt = 2, 10, 9
jgr = setup_grid(ngrdcol=ng, deltaz=_DZ, zm_init=0.0, zm_top=(nzm - 1) * _DZ, grid_type=1)
rng = np.random.default_rng(2)
coef = rng.uniform(-2, 2, (ng, nzt)); irho = rng.uniform(0.5, 1.5, (ng, nzm))
rho_zm = rng.uniform(0.5, 1.2, (ng, nzm)); term_zm = rng.uniform(-1, 1, (ng, nzm))
sgn = np.sign(rng.uniform(-1, 1, (ng, nzt)))
> lhs = np.asarray(xpyp_term_ta_pdf_lhs_godunov(coef, irho, rho_zm, jgr, jgr.grid_dir))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'numpy.ndarray'>, [[-0.95355146 -0.80603543 1.25690296 -1.63233623 0.4004021 0.91424211
E -1.24839571 -1.77941349 -0.90012253]
E [ 0.62973206 0.24906265 -1.39975095 -0.26947684 0.67718919 -0.30886131
E 0.5327376 1.86974381 0.73225929]]. The error was:
E TypeError: unhashable type: 'numpy.ndarray'
clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py:88: ValueError
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.xml -
============================= slowest 15 durations =============================
0.19s call clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py::test_f2py_oracle
0.05s call clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py::test_boundaries_and_grad
(4 durations < 0.005s hidden. Use -vv to show these durations.)
=========================== short test summary info ============================
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py::test_f2py_oracle - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'numpy.ndarray'>, [[ 0.50038187 1.5888552 1.10274276 -1.09917124 -0.79933486 1.49421378
-1.97893878 1.28491367 1.18827772 -0.12826019 -0.78787029 -0.88629755
-0.98052165 -0.21969478 0.01819304 0.21398941 1.98200113 1.17064768
0.48871692 1.95584059 -1.13876521 -1.35915186 0.45015842 -1.82423197
-1.85727888 0.05955528 -0.1351759 1.66867109 0.51690502 0.05647059]
[-0.01250626 -1.00994031 -1.9528239 -1.23039142 0.76812848 -1.1975731
-0.52185476 -1.98506303 1.32019092 -1.38215568 -0.92960278 1.52132862
0.03916324 1.38860099 0.55886867 0.96708379 -1.63401758 0.16457529
0.03108895 1.48535751 -0.55494376 0.39273627 -1.76299343 -0.4494728
-0.70785461 -1.39920108 1.26535242 -0.48221531 1.91499154 0.35996677]]. The error was:
TypeError: unhashable type: 'numpy.ndarray'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py::test_boundaries_and_grad - ValueError: Non-hashable static arguments are not supported. An error occurred while trying to hash an object of type <class 'numpy.ndarray'>, [[-0.95355146 -0.80603543 1.25690296 -1.63233623 0.4004021 0.91424211
-1.24839571 -1.77941349 -0.90012253]
[ 0.62973206 0.24906265 -1.39975095 -0.26947684 0.67718919 -0.30886131
0.5327376 1.86974381 0.73225929]]. The error was:
TypeError: unhashable type: 'numpy.ndarray'
============================== 2 failed in 0.73s ===============================
JAX pytest module failed: auto_llm_generated_pytests/test_xpyp_term_ta_godunov.py (exit 1)
JAX pytest module: auto_llm_generated_pytests/test_xpyp_term_ta_pdf.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_jax/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_jax
collecting ... collected 2 items
clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_pdf.py::test_f2py_oracle PASSED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_pdf.py::test_differentiable PASSED [100%]
- generated xml file: /home/jenkins/workspace/clubb_jax/output/tests/pytests/jax/auto_llm_generated_pytests/test_xpyp_term_ta_pdf.xml -
============================= slowest 15 durations =============================
0.67s call clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_pdf.py::test_differentiable
0.54s call clubb_jax/pytests/auto_llm_generated_pytests/test_xpyp_term_ta_pdf.py::test_f2py_oracle
(4 durations < 0.005s hidden. Use -vv to show these durations.)
============================== 2 passed in 1.62s ===============================
JAX pytest commands: 181 modules selected, 46 module commands failed.