Skip to content

Console Output

+ source /etc/profile.d/larson-group.sh
++ export GIT_EDITOR=vi
++ GIT_EDITOR=vi
++ export SVN_EDITOR=vi
++ SVN_EDITOR=vi
++ export OMP_STACKSIZE=1048579
++ OMP_STACKSIZE=1048579
++ export LMOD_ROOT=/opt/lmod/
++ LMOD_ROOT=/opt/lmod/
++ source /opt/lmod//lmod/lmod/init/bash
+++ '[' -z '' ']'
+++ case "$-" in
+++ __lmod_vx=x
+++ '[' -n x ']'
+++ set +x
Shell debugging temporarily silenced: export LMOD_SH_DBG_ON=1 for this output (/usr/local/spack/opt/spack/linux-pop22-cascadelake/gcc-12.2.0/lmod-8.7.37-bi3kyxcdrfgw3y7vv2k7c5rjxg75qzju/lmod/lmod/init/bash)
Shell debugging restarted
+++ unset __lmod_vx
+++ find /usr/local/spack/share/spack/lmod/linux-pop22-x86_64/Core -print -quit
++ export MODULEPATH=/usr/local/spack/share/spack/lmod/linux-pop22-x86_64/Core
++ MODULEPATH=/usr/local/spack/share/spack/lmod/linux-pop22-x86_64/Core
+ module load gcc netcdf-fortran
+ '[' -z '' ']'
+ case "$-" in
+ __lmod_sh_dbg=x
+ '[' -n x ']'
+ set +x
Shell debugging temporarily silenced: export LMOD_SH_DBG_ON=1 for Lmod's output
Lmod Warning:
-------------------------------------------------------------------------------
The following dependent module(s) are not currently loaded:
gcc-runtime/13.1.0-gzedt3f (required by: mpich/4.2.1, hdf5/1.14.3-42x3zrv,
netcdf-c/4.9.2, netcdf-fortran/4.5.3)
-------------------------------------------------------------------------------



Shell debugging restarted
+ unset __lmod_sh_dbg
+ return 0
+ ulimit -s 8388608
+ python3 tests/run_jax_comparison_mutation_test.py
==> No compatible Python found for cpu; uv will download Python 3.12
==> Installing uv 0.11.32 in /home/jenkins/workspace/clubb_jax/.clubb-jax-tools/bin
downloading uv 0.11.32 x86_64-unknown-linux-gnu
installing to /home/jenkins/workspace/clubb_jax/.clubb-jax-tools/bin
  uv
  uvx
everything's installed!
==> uv is ready: uv 0.11.32 (x86_64-unknown-linux-gnu)
Downloading cpython-3.12.13-linux-x86_64-gnu (download) (32.6MiB)
 Downloaded cpython-3.12.13-linux-x86_64-gnu (download)
Using CPython 3.12.13
Creating virtual environment at: .venv-jax
Activate with: source .venv-jax/bin/activate
==> Installing JAX 0.11.0 (cpu) and requirements from /home/jenkins/workspace/clubb_jax/clubb_jax/requirements.txt
Using Python 3.12.13 environment at: .venv-jax
Resolved 15 packages in 355ms
Downloading scipy (33.7MiB)
Downloading jaxlib (83.2MiB)
Downloading pygments (1.2MiB)
Downloading jax (3.1MiB)
Downloading netcdf4 (9.7MiB)
Downloading numpy (15.9MiB)
Downloading cftime (1.6MiB)
 Downloaded cftime
 Downloaded pygments
 Downloaded netcdf4
 Downloaded jax
 Downloaded numpy
 Downloaded jaxlib
 Downloaded scipy
Prepared 15 packages in 3.41s
Installed 15 packages in 40ms
 + certifi==2026.7.22
 + cftime==1.6.6
 + iniconfig==2.3.0
 + jax==0.11.0
 + jaxlib==0.11.0
 + ml-dtypes==0.6.0
 + netcdf4==1.7.4
 + numpy==2.5.3
 + opt-einsum==3.4.0
 + packaging==26.3
 + pluggy==1.6.0
 + pygments==2.21.0
 + pytest==9.1.1
 + scipy==1.18.1
 + tabulate==0.10.0
CLUBB JAX runtime:
  Environment: /home/jenkins/workspace/clubb_jax/.venv-jax (Python 3.12)
  Accelerator: cpu
  JAX: 0.11.0 (jaxlib 0.11.0)
  Device: cpu:0
Mutation test artifacts: /home/jenkins/workspace/clubb_jax/output/tests/jax_comparison_mutation_2i3kp5vz
Control: running unmodified bomex comparison...
Control passed.
Mutation heating: running comparison...
PASS heating: thlm mean absolute difference 0.00015; failing columns [1, 2, 3, 4].
Mutation parameter_handling: running comparison...
PASS parameter_handling: wp3 mean absolute difference 9.25992e-07; failing columns [2, 3, 4].
Mutation first_column: running comparison...
PASS first_column: wp3 mean absolute difference 4.69019e-07; failing columns [2, 3, 4].
Mutation missing_stat: running comparison...
PASS missing_stat: wprtp absent only from JAX output; strict comparison rejected it.

==============================================================================
Expected failure test: PASS
==============================================================================
Case: bomex | 4 timesteps x 60 s | 4 columns | CPU/double
Statistics: input/stats/multi_col_stats.in
Tolerances: JAX-versus-Fortran harness defaults (absolute 1e-07; percentage 1e-07%)

[PASS] Unmodified control — JAX and Fortran matched.

[PASS] heating
  Add 1e-6 K/s of spurious heating to every column.
  Numerical difference detected; both models completed 4 timesteps.
  thlm: mean absolute difference 0.00015; mean percentage difference 4.91235e-05%
  Failing columns: 1, 2, 3, 4; first comparison failure: timestep 1.

[PASS] parameter_handling
  Load C8 as [0.2, 0.3, 0.4, 0.5] instead of [0.2, 0.4, 0.6, 0.8].
  Numerical difference detected; both models completed 4 timesteps.
  wp3: mean absolute difference 9.25992e-07; mean percentage difference 0.244887%
  Failing columns: 2, 3, 4; first comparison failure: timestep 1.

[PASS] first_column
  Use column 1's previous wp3 in every column's timestep equation.
  Numerical difference detected; both models completed 4 timesteps.
  wp3: mean absolute difference 4.69019e-07; mean percentage difference 0.118965%
  Failing columns: 2, 3, 4; first comparison failure: timestep 3.

[PASS] missing_stat
  Omit wprtp from JAX statistics output while keeping its calculation.
  wprtp is missing only from JAX output; both models completed 4 timesteps.
  Strict bindiff detected the missing variable; other stats were unchanged.

Result: PASS — 4/4 mutations verified | 235.9 s
Logs and outputs: /home/jenkins/workspace/clubb_jax/output/tests/jax_comparison_mutation_2i3kp5vz
==============================================================================