Skip to content
Skipping 453 KB.. Full Log
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "set_implicit_coefs_fields_2d"...
          set_implicit_coefs_fields_2d(coef_wp4_implicit,coef_wp2rtp_implicit,term_wp2rtp_explicit,coef_wp2thlp_implicit,term_wp2thlp_explicit,coef_wp2up_implicit,term_wp2up_explicit,coef_wp2vp_implicit,term_wp2vp_explicit,coef_wprtp2_implicit,term_wprtp2_explicit,coef_wpthlp2_implicit,term_wpthlp2_explicit,coef_wprtpthlp_implicit,term_wprtpthlp_explicit,coef_wpup2_implicit,term_wpup2_explicit,coef_wpvp2_implicit,term_wpvp2_explicit,[ngrdcol,nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_init"...
          f2py_stats_init(registry_path,output_path,ncol,stats_tsamp,stats_tout,dt_main,day_in,month_in,year_in,time_initial,stats_tstart,stats_tend,zt,zm,sclr_dim,edsclr_dim,[nzt,nzm])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_init_with_params"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
getarrdims:warning: assumed shape array, using 0 instead of '*'
          f2py_stats_init_with_params(registry_path,output_path,stats_tsamp,stats_tout,dt_main,day_in,month_in,year_in,time_initial,stats_tstart,stats_tend,zt,zm,sclr_dim,edsclr_dim,clubb_params,param_names,[ncol,nzt,nzm])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_finalize"...
          f2py_stats_finalize()
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_get_stats_config"...
          l_enabled,ncol,nvars,stats_nsamp,stats_nout,samples_per_write,time_index,l_sample,l_last_sample = f2py_get_stats_config()
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_get_stats_var_meta"...
          name,grid_name,units,long_name,grid_id,nz = f2py_get_stats_var_meta(ivar)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_get_stats_var_data"...
          buffer,nsamples = f2py_get_stats_var_data(ivar,ncol,nz)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_set_stats_var_data"...
          f2py_set_stats_var_data(ivar,buffer,nsamples,[ncol,nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_begin_timestep"...
          f2py_stats_begin_timestep(itime)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_end_timestep"...
          f2py_stats_end_timestep(time_value)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_update_scalar"...
          f2py_stats_update_scalar(name,values,icol,level)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_update_1d"...
          f2py_stats_update_1d(name,values,icol,[n])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_update_2d"...
          f2py_stats_update_2d(name,values,[ncol,nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_begin_budget_scalar"...
          f2py_stats_begin_budget_scalar(name,values,icol)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_begin_budget_1d"...
          f2py_stats_begin_budget_1d(name,values,icol,[n])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_begin_budget_2d"...
          f2py_stats_begin_budget_2d(name,values,[ncol,nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_update_budget_scalar"...
          f2py_stats_update_budget_scalar(name,values,icol,level)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_update_budget_1d"...
          f2py_stats_update_budget_1d(name,values,icol,[n])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_update_budget_2d"...
          f2py_stats_update_budget_2d(name,values,[ncol,nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_finalize_budget_scalar"...
          f2py_stats_finalize_budget_scalar(name,values,icol,l_count_sample)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_finalize_budget_1d"...
          f2py_stats_finalize_budget_1d(name,values,icol,l_count,[n])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_finalize_budget_2d"...
          f2py_stats_finalize_budget_2d(name,values,l_count,[ncol,nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_var_on_stats_list"...
          l_result = f2py_var_on_stats_list(name)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_update_grid"...
          f2py_stats_update_grid(zt_src,zm_src,rho_vals,rho_levels,p_sfc,[ncol,nzt,nzm,nrho])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_lh_samples_init"...
          f2py_stats_lh_samples_init(num_samples,nl_names,u_names,zt_vals,[nzt,n_nl,n_u])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_lh_samples_write_ln"...
          f2py_stats_lh_samples_write_ln(samples,[ncol,nsamp,nzt,nvars])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_lh_samples_write_u"...
          f2py_stats_lh_samples_write_u(uniform_vals,mixture_comp,sample_weights,[ncol,nsamp,nzt,nvars])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_prescribe_forcings"...
          rtm,wm_zm,wm_zt,ug,vg,um_ref,vm_ref,thlm_forcing,rtm_forcing,um_forcing,vm_forcing,wprtp_forcing,wpthlp_forcing,rtp2_forcing,thlp2_forcing,rtpthlp_forcing,wpsclrp,sclrm_forcing,edsclrm_forcing,wpthlp_sfc,wprtp_sfc,upwp_sfc,vpwp_sfc,t_sfc,p_sfc,sens_ht,latent_ht,wpsclrp_sfc,wpedsclrp_sfc = f2py_prescribe_forcings(sclr_dim,edsclr_dim,runtype,sfctype,time_current,time_initial,dt,l_readiopdata,um,vm,thlm,p_in_pa,exner,rho,rho_zm,thvm,zt_in,l_t_dependent,l_ignore_forcings,l_input_xpwp_sfc,l_modify_bc_for_cnvg_test,saturation_formula,l_add_dycore_grid,grid_remap_method,grid_adapt_in_time_method,rtm,wm_zm,wm_zt,ug,vg,um_ref,vm_ref,thlm_forcing,rtm_forcing,um_forcing,vm_forcing,wprtp_forcing,wpthlp_forcing,rtp2_forcing,thlp2_forcing,rtpthlp_forcing,wpsclrp,sclrm_forcing,edsclrm_forcing,wpthlp_sfc,wprtp_sfc,upwp_sfc,vpwp_sfc,t_sfc,p_sfc,sens_ht,latent_ht,wpsclrp_sfc,wpedsclrp_sfc,[nzm,nzt,ngrdcol,sclr_dim_transport,edsclr_dim_transport])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_advance_clubb_core"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          um,vm,up3,vp3,thlm,rtm,rtp3,thlp3,wp3,upwp,vpwp,up2,vp2,wprtp,wpthlp,rtp2,thlp2,rtpthlp,wp2,sclrm,sclrp3,wpsclrp,sclrp2,sclrprtp,sclrpthlp,p_in_pa,exner,rcm,cloud_frac,wp2thvp,wp2up,wpthvp,rtpthvp,thlpthvp,sclrpthvp,wp2rtp,wp2thlp,wpup2,wpvp2,ice_supersat_frac,uprcp,vprcp,rc_coef_zm,wp4,wp2up2,wp2vp2,um_pert,vm_pert,upwp_pert,vpwp_pert,edsclrm,rcm_in_layer,cloud_cover,w_up_in_cloud,w_down_in_cloud,cloudy_updraft_frac,cloudy_downdraft_frac,wprcp,invrs_tau_zm,kh_zt,kh_zm,thlprcp,lscale = f2py_advance_clubb_core(l_implemented,dt,fcor,fcor_y,sfc_elevation,hydromet_dim,edsclr_dim,sclr_tol,thlm_forcing,rtm_forcing,um_forcing,vm_forcing,sclrm_forcing,edsclrm_forcing,wprtp_forcing,wpthlp_forcing,rtp2_forcing,thlp2_forcing,rtpthlp_forcing,wm_zm,wm_zt,wpthlp_sfc,wprtp_sfc,upwp_sfc,vpwp_sfc,p_sfc,wpsclrp_sfc,wpedsclrp_sfc,upwp_sfc_pert,vpwp_sfc_pert,rtm_ref,thlm_ref,um_ref,vm_ref,ug,vg,rho_zm,rho,rho_ds_zm,rho_ds_zt,invrs_rho_ds_zm,invrs_rho_ds_zt,thv_ds_zm,thv_ds_zt,l_mix_rat_hm,rfrzm,wphydrometp,wp2hmp,rtphmp_zt,thlphmp_zt,host_dx,host_dy,clubb_params,lmin,mixt_frac_max_mag,t0_val,ts_nudge,rtm_min,rtm_nudge_max_altitude,um,vm,up3,vp3,thlm,rtm,rtp3,thlp3,wp3,upwp,vpwp,up2,vp2,wprtp,wpthlp,rtp2,thlp2,rtpthlp,wp2,sclrm,sclrp3,wpsclrp,sclrp2,sclrprtp,sclrpthlp,p_in_pa,exner,rcm,cloud_frac,wp2thvp,wp2up,wpthvp,rtpthvp,thlpthvp,sclrpthvp,wp2rtp,wp2thlp,wpup2,wpvp2,ice_supersat_frac,uprcp,vprcp,rc_coef_zm,wp4,wp2up2,wp2vp2,um_pert,vm_pert,upwp_pert,vpwp_pert,edsclrm,[nzm,nzt,ngrdcol,sclr_dim,hydromet_dim_transport,sclr_dim_transport,edsclr_dim_transport])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calculate_thvm"...
          thvm = f2py_calculate_thvm(thlm,rtm,rcm,exner,thv_ds_zt,[nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_hydrostatic"...
          p_in_Pa,p_in_Pa_zm,exner,exner_zm,rho,rho_zm = f2py_hydrostatic(nzm,thvm,p_sfc,[ngrdcol,nzt])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_zt2zm_2d"...
          azm = f2py_zt2zm_2d(nzm,azt,[nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_zm2zt_2d"...
          azt = f2py_zm2zt_2d(nzt,azm,[nzm,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_zt2zm2zt_2d"...
          azt_smoothed = f2py_zt2zm2zt_2d(nzm,azt,zt_min,[nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_ddzm_2d"...
          d_azm_dzt = f2py_ddzm_2d(nzt,azm,[nzm,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_ddzt_2d"...
          d_azt_dzm = f2py_ddzt_2d(nzm,azt,[nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_sat_mixrat_liq_2d"...
          rsat = f2py_sat_mixrat_liq_2d(p_in_Pa,t_in_k,saturation_formula,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_sat_mixrat_ice_2d"...
          rsat = f2py_sat_mixrat_ice_2d(p_in_Pa,t_in_k,saturation_formula,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_rcm_sat_adj"...
          rcm_out = f2py_rcm_sat_adj(thlm,rtm,p_in_Pa,exner,saturation_formula)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calculate_thlp2_rad"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          thlp2_forcing = f2py_calculate_thlp2_rad(rcm,thlprcp,radht,clubb_params,thlp2_forcing,[ngrdcol,nzm,nzt])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_cos_solar_zen"...
          cos_zen = f2py_cos_solar_zen(day,month,year,current_time,lat_vals,lon_vals)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_set_simplified_radiation_params"...
          f2py_set_simplified_radiation_params(f0_in,f1_in,kappa_in,eff_drop_radius_in,alvdr_in,gc_in,omega_in,l_rad_above_cloud_in,l_sw_radiation_in,l_fix_cos_solar_zen_in,nparam_in,fs_values_in,cos_solar_zen_values_in,cos_solar_zen_times_in)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_sunray_sw"...
          frad_sw = f2py_sunray_sw(rcm,rho,xi_abs,dzt,zm,zt,radius,a,gc,fs0,omega,l_center,[ngrdcol,nzt])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_zero_pdf_params"...
          f2py_zero_pdf_params(which)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_zero_pdf_implicit_coefs_terms"...
          f2py_zero_pdf_implicit_coefs_terms()
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_check_clubb_settings"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          f2py_check_clubb_settings(params,l_implemented,l_input_fields,[ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_check_parameters"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          f2py_check_parameters(clubb_params,[ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_get_parameter_hard_bounds"...
          hard_bounds = f2py_get_parameter_hard_bounds(nparams_in)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_set_clubb_debug_level"...
          f2py_set_clubb_debug_level(level)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_cleanup_grid"...
          f2py_cleanup_grid()
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_setup_grid_heights"...
          f2py_setup_grid_heights(l_implemented,l_ascending_grid,grid_type,deltaz,zm_init,momentum_heights,thermodynamic_heights,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_read_grid_heights"...
          momentum_heights,thermodynamic_heights = f2py_read_grid_heights(nzmax,grid_type,zm_grid_fname,zt_grid_fname,file_unit)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_cleanup_err_info"...
          f2py_cleanup_err_info()
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_set_err_info_values"...
          f2py_set_err_info_values(chunk_idx,mpi_rank,lat,lon,[ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_get_err_info_values"...
          chunk_idx,mpi_rank,lat,lon = f2py_get_err_info_values(ngrdcol)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_reset_err_code"...
          f2py_reset_err_code()
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_set_err_code"...
          f2py_set_err_code(err_code,[ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_initialize_error_headers"...
          f2py_initialize_error_headers()
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_file_read_1d"...
          variable = f2py_file_read_1d(file_unit,path_and_filename,num_datapts,entries_per_line)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_julian2gregorian_date"...
          day,month,year = f2py_julian2gregorian_date(julian_date)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_gregorian2julian_day"...
          julian_day = f2py_gregorian2julian_day(day,month,year)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_leap_year"...
          is_leap_year = f2py_leap_year(year)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_lin_interpolate_two_points"...
          var_interp = f2py_lin_interpolate_two_points(height_int,height_high,height_low,var_high,var_low)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_mono_cubic_interp"...
          f_out = f2py_mono_cubic_interp(z_in,km1,k00,kp1,kp2,zm1,z00,zp1,zp2,fm1,f00,fp1,fp2)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_zlinterp_fnc"...
          var_out = f2py_zlinterp_fnc(grid_out,grid_src,var_src,[dim_out,dim_src])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_ri_zm"...
          ri_zm = f2py_calc_ri_zm(bv_freq_sqd,shear,lim_bv,lim_shear,[nzm,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_vertical_avg"...
          avg_out = f2py_vertical_avg(rho_ds,field,dz,[total_idx])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_vertical_integral"...
          integral_out = f2py_vertical_integral(rho_ds,field,dz,[total_idx])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_zm2zt2zm_2d"...
          azm_smoothed = f2py_zm2zt2zm_2d(nzt,azm,zm_min,[nzm,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_pvertinterp"...
          interp_var = f2py_pvertinterp(p_mid,p_out,input_var,[nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_compute_current_date"...
          current_day,current_month,current_year,seconds_since_current_date = f2py_compute_current_date(previous_day,previous_month,previous_year,seconds_since_previous_date)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_set_lscale_max"...
          lscale_max = f2py_set_lscale_max(l_implemented,host_dx,host_dy,[ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_term_ma_zt_lhs"...
          lhs_ma = f2py_term_ma_zt_lhs(wm_zt,weights_zt2zm,invrs_dzt,invrs_dzm,l_upwind_xm_ma,grid_dir,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_term_ma_zm_lhs"...
          lhs_ma = f2py_term_ma_zm_lhs(wm_zm,invrs_dzm,weights_zm2zt,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_diffusion_zt_lhs"...
          lhs = f2py_diffusion_zt_lhs(k_zm,k_zt,nu,invrs_rho_ds_zt,rho_ds_zm,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_diffusion_zm_lhs"...
          lhs = f2py_diffusion_zm_lhs(k_zt,k_zm,nu,invrs_rho_ds_zm,rho_ds_zt,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_smooth_heaviside_peskin"...
          smth_output = f2py_smooth_heaviside_peskin(input,smth_range,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_smooth_max_scalar_array"...
          output_var = f2py_smooth_max_scalar_array(input_var1,input_var2,smth_coef,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_smooth_max_array_scalar"...
          output_var = f2py_smooth_max_array_scalar(input_var1,input_var2,smth_coef,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_smooth_min_scalar_array"...
          output_var = f2py_smooth_min_scalar_array(input_var1,input_var2,smth_coef,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_smooth_min_array_scalar"...
          output_var = f2py_smooth_min_array_scalar(input_var1,input_var2,smth_coef,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_xpwp_2d"...
          xpwp = f2py_calc_xpwp_2d(km_zm,xm,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_ddzt_umvm_sqd"...
          ddzt_umvm_sqd = f2py_calc_ddzt_umvm_sqd(nzm,um,vm,[nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_wp3_on_wp2"...
          wp3_on_wp2,wp3_on_wp2_zt = f2py_calc_wp3_on_wp2(wp2,wp3,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_lscale_width_vert_avg"...
          avg_out = f2py_lscale_width_vert_avg(smth_type,var_profile,lscale_zm,rho_ds_zm,var_below_ground_value,[nzm,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_wp23_term_splat_lhs"...
          lhs_splat_wp2,lhs_splat_wp3 = f2py_wp23_term_splat_lhs(nzt,c_wp2_splat,brunt_vaisala_freq_sqd_mixed,lscale_zm,rho_ds_zm,[nzm,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_smooth_corr_quotient"...
          quotient = f2py_smooth_corr_quotient(numerator,denominator,denom_thresh,[ngrdcol,nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_comp_corrs_binormal"...
          corr_x_y_1,corr_x_y_2 = f2py_calc_comp_corrs_binormal(xpyp,xm,ym,mu_x_1,mu_x_2,mu_y_1,mu_y_2,sigma_x_1_sqd,sigma_x_2_sqd,sigma_y_1_sqd,sigma_y_2_sqd,mixt_frac,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_mean_l2n"...
          mu_x_n = f2py_mean_l2n(mu_x,sigma2_on_mu2)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stdev_l2n"...
          sigma_x_n = f2py_stdev_l2n(sigma2_on_mu2)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_corr_nn2nl"...
          corr_x_y = f2py_corr_nn2nl(corr_x_y_n,sigma_y_n,y_sigma2_on_mu2,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_corr_nn2ll"...
          corr_x_y = f2py_corr_nn2ll(corr_x_y_n,sigma_x_n,sigma_y_n,x_sigma2_on_mu2,y_sigma2_on_mu2,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_compute_mean_binormal"...
          xm = f2py_compute_mean_binormal(mu_x_1,mu_x_2,mixt_frac)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_compute_variance_binormal"...
          xp2 = f2py_compute_variance_binormal(xm,mu_x_1,mu_x_2,stdev_x_1,stdev_x_2,mixt_frac)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_corr_chi_x"...
          corr_chi_x_i = f2py_calc_corr_chi_x(crt_i,cthl_i,sigma_rt_i,sigma_thl_i,sigma_chi_i,corr_rt_x_i,corr_thl_x_i)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_corr_eta_x"...
          corr_eta_x_i = f2py_calc_corr_eta_x(crt_i,cthl_i,sigma_rt_i,sigma_thl_i,sigma_eta_i,corr_rt_x_i,corr_thl_x_i)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_nc_in_cloud_to_ncnm"...
          ncnm = f2py_nc_in_cloud_to_ncnm(mu_chi_1,mu_chi_2,sigma_chi_1,sigma_chi_2,mixt_frac,nc_in_cloud,cloud_frac_1,cloud_frac_2,const_ncnp2_on_ncnm2,const_corr_chi_ncn)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_cholesky_factor"...
          a_scaling,a_cholesky,l_scaled = f2py_cholesky_factor(a_input,[ndim])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_mirror_lower_triangular_matrix"...
          matrix = f2py_mirror_lower_triangular_matrix(matrix,[nvars])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_diagnose_correlations"...
          corr_array = f2py_diagnose_correlations(iipdf_w,corr_array_pre,l_calc_w_corr,[pdf_dim])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_cholesky_corr_mtx_approx"...
          corr_cholesky_mtx,corr_mtx_approx = f2py_calc_cholesky_corr_mtx_approx(iipdf_w,corr_matrix,[n_variables])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_skx_func"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          skx = f2py_skx_func(xp2,xp3,x_tol,clubb_params,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_lg_2005_ansatz"...
          skx = f2py_lg_2005_ansatz(skw,wpxp,wp2,xp2,beta,sigma_sqd_w,x_tol,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_xp3_lg_2005_ansatz"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          xp3 = f2py_xp3_lg_2005_ansatz(skw_zt,wpxp_zt,wp2_zt,xp2_zt,sigma_sqd_w_zt,clubb_params,x_tol,[nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_compute_gamma_skw"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          gamma_skw_fnc,gamma_skw_fnc_zt = f2py_compute_gamma_skw(l_gamma_skw,skw_zm,clubb_params,skw_zt,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_sponge_damp_xm"...
          xm_p = f2py_sponge_damp_xm(dt,zt,zm,xm_ref,xm,tau_sponge_damp,sponge_layer_depth,[nzm,nzt])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_sponge_damp_xp2"...
          xp2_damped = f2py_sponge_damp_xp2(dt,zm,xp2,x_tol_sqd,tau_sponge_damp,sponge_layer_depth,[nzm])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_sponge_damp_xp3"...
          xp3_damped = f2py_sponge_damp_xp3(dt,z,zm,xp3,tau_sponge_damp,sponge_layer_depth,[nzm,nzt])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calculate_spurious_source"...
          spurious_source = f2py_calculate_spurious_source(integral_after,integral_before,flux_top,flux_sfc,integral_forcing,dt)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_remap_vals_to_target_same_grid"...
          target_values = f2py_remap_vals_to_target_same_grid(nzm,nzt,source_values,target_values_idx,rho_lin_spline_vals,rho_lin_spline_levels,iv,p_sfc,grid_remap_method,l_zt_variable,[ngrdcol,source_values_idx,total_idx_rho_lin_spline])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_sfc_varnce_check"...
          f2py_sfc_varnce_check(sclr_dim,wp2_sfc,up2_sfc,vp2_sfc,thlp2_sfc,rtp2_sfc,rtpthlp_sfc,sclrp2_sfc,sclrprtp_sfc,sclrpthlp_sfc,[sclr_dim_transport])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_parameterization_check"...
          f2py_parameterization_check(sclr_dim,edsclr_dim,thlm_forcing,rtm_forcing,um_forcing,vm_forcing,wm_zm,wm_zt,p_in_pa,rho_zm,rho,exner,rho_ds_zm,rho_ds_zt,invrs_rho_ds_zm,invrs_rho_ds_zt,thv_ds_zm,thv_ds_zt,wpthlp_sfc,wprtp_sfc,upwp_sfc,vpwp_sfc,p_sfc,um,upwp,vm,vpwp,up2,vp2,rtm,wprtp,thlm,wpthlp,wp2,wp3,rtp2,thlp2,rtpthlp,prefix,wpsclrp_sfc,wpedsclrp_sfc,sclrm,wpsclrp,sclrp2,sclrprtp,sclrpthlp,sclrm_forcing,edsclrm,edsclrm_forcing,[nzm,nzt,ngrdcol,sclr_dim_transport,edsclr_dim_transport])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_wp4_pdf"...
          wp4 = f2py_calc_wp4_pdf(wm,w_1,w_2,varnce_w_1,varnce_w_2,mixt_frac,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_wp2xp_pdf"...
          wp2xp = f2py_calc_wp2xp_pdf(wm,xm,w_1,w_2,x_1,x_2,varnce_w_1,varnce_w_2,varnce_x_1,varnce_x_2,corr_w_x_1,corr_w_x_2,mixt_frac,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_wpxp2_pdf"...
          wpxp2 = f2py_calc_wpxp2_pdf(wm,xm,w_1,w_2,x_1,x_2,varnce_w_1,varnce_w_2,varnce_x_1,varnce_x_2,corr_w_x_1,corr_w_x_2,mixt_frac,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_wpxpyp_pdf"...
          wpxpyp = f2py_calc_wpxpyp_pdf(wm,xm,ym,w_1,w_2,x_1,x_2,y_1,y_2,varnce_w_1,varnce_w_2,varnce_x_1,varnce_x_2,varnce_y_1,varnce_y_2,corr_w_x_1,corr_w_x_2,corr_w_y_1,corr_w_y_2,corr_x_y_1,corr_x_y_2,mixt_frac,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_w_up_in_cloud"...
          w_up_in_cloud,w_down_in_cloud,cloudy_updraft_frac,cloudy_downdraft_frac = f2py_calc_w_up_in_cloud(mixt_frac,cloud_frac_1,cloud_frac_2,w_1,w_2,varnce_w_1,varnce_w_2,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_pdf_closure_check"...
          f2py_pdf_closure_check(sclr_dim,wp4,wprtp2,wp2rtp,wpthlp2,wp2thlp,cloud_frac,rcm,wpthvp,wp2thvp,wp2up,rtpthvp,thlpthvp,wprcp,wp2rcp,rtprcp,thlprcp,rcp2,wprtpthlp,crt_1,crt_2,cthl_1,cthl_2,sclrpthvp,sclrprcp,wpsclrp2,wpsclrprtp,wpsclrpthlp,wp2sclrp,[nz,sclr_dim_transport])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_length_check"...
          f2py_length_check(lscale,lscale_up,lscale_down,[nzt])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_assert_corr_symmetric"...
          f2py_assert_corr_symmetric(corr_array_n,[pdf_dim])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_xpyp_term_ta_pdf_lhs"...
          lhs_ta = f2py_xpyp_term_ta_pdf_lhs(coef_wpxpyp_implicit,rho_ds_zt,rho_ds_zm,invrs_rho_ds_zm,l_upwind_xpyp_turbulent_adv,sgn_turbulent_vel,coef_wpxpyp_implicit_zm,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_xpyp_term_ta_pdf_lhs_godunov"...
          lhs_ta = f2py_xpyp_term_ta_pdf_lhs_godunov(coef_wpxpyp_implicit,invrs_rho_ds_zm,rho_ds_zm,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_xpyp_term_ta_pdf_rhs"...
          rhs_ta = f2py_xpyp_term_ta_pdf_rhs(term_wpxpyp_explicit,rho_ds_zt,rho_ds_zm,invrs_rho_ds_zm,l_upwind_xpyp_turbulent_adv,sgn_turbulent_vel,term_wpxpyp_explicit_zm,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_xpyp_term_ta_pdf_rhs_godunov"...
          rhs_ta = f2py_xpyp_term_ta_pdf_rhs_godunov(term_wpxpyp_explicit_zm,invrs_rho_ds_zm,sgn_turbulent_vel,rho_ds_zm,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_sfc_varnce"...
          wp2,up2,vp2,thlp2,rtp2,rtpthlp,sclrp2,sclrprtp,sclrpthlp = f2py_calc_sfc_varnce(sclr_dim,dt,sfc_elevation,upwp_sfc,vpwp_sfc,wpthlp,wprtp_sfc,um,vm,lscale_up,wpsclrp_sfc,lhs_splat_wp2,tau_zm,l_vary_convect_depth,t0,up2_sfc_coef,a_const,wp2,up2,vp2,thlp2,rtp2,rtpthlp,sclrp2,sclrprtp,sclrpthlp,[nzm,nzt,ngrdcol,sclr_dim_transport])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_stats_accumulate"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          f2py_stats_accumulate(sclr_dim,edsclr_dim,dt,l_implemented,l_host_applies_sfc_fluxes,l_stability_correct_tau_zm,clubb_params,um,vm,upwp,vpwp,up2,vp2,thlm,rtm,thlm_before,rtm_before,thlm_forcing,rtm_forcing,wpthlp_sfc,wprtp_sfc,wprtp,wpthlp,wp2,wp3,rtp2,rtp3,thlp2,thlp3,rtpthlp,p_in_pa,exner,rho,rho_zm,rho_ds_zm,rho_ds_zt,thv_ds_zm,thv_ds_zt,wm_zt,wm_zm,rcm,cloud_frac,thvm,ug,vg,ddzt_umvm_sqd,stability_correction,kh_zt,rsat,kh_zm,em,sclrm,sclrp2,sclrprtp,sclrpthlp,sclrm_forcing,wpsclrp,wpedsclrp,edsclrm,edsclrm_forcing,saturation_formula,[nzm,nzt,ngrdcol,sclr_dim_transport,edsclr_dim_transport])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_pdf_closure_driver"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          rtm,rcm,cloud_frac,ice_supersat_frac,wprcp,sigma_sqd_w,wpthvp,wp2thvp,wp2up,rtpthvp,thlpthvp,rc_coef,rcm_in_layer,cloud_cover,rcp2_zt,thlprcp,rc_coef_zm,sclrpthvp,wpup2,wpvp2,wp2up2,wp2vp2,wp4,wp2rtp,wprtp2,wp2thlp,wpthlp2,wprtpthlp,wp2rcp,rtprcp,rcp2,uprcp,vprcp,w_up_in_cloud,w_down_in_cloud,cloudy_updraft_frac,cloudy_downdraft_frac,skw_velocity,cloud_frac_zm,ice_supersat_frac_zm,rtm_zm,thlm_zm,rcm_zm,rcm_supersat_adj,wp2sclrp,wpsclrp2,sclrprcp,wpsclrprtp,wpsclrpthlp = f2py_pdf_closure_driver(dt,hydromet_dim,sclr_dim,sclr_tol,wprtp,thlm,wpthlp,rtp2,rtp3,thlp2,thlp3,rtpthlp,wp2,wp3,wm_zm,wm_zt,um,up2,upwp,up3,vm,vp2,vpwp,vp3,p_in_pa,exner,thv_ds_zm,thv_ds_zt,rtm_ref,wphydrometp,wp2hmp,rtphmp_zt,thlphmp_zt,sclrm,wpsclrp,sclrp2,sclrprtp,sclrpthlp,sclrp3,p_sfc,l_samp_stats_in_pdf_call,mixt_frac_max_mag,ts_nudge,rtm_min,rtm_nudge_max_altitude,clubb_params,iipdf_type,saturation_formula,l_rtm_nudge,l_trapezoidal_rule_zt,l_trapezoidal_rule_zm,l_call_pdf_closure_twice,l_use_cloud_cover,l_rcm_supersat_adj,l_mix_rat_hm,rtm,sigma_sqd_w,[nzm,nzt,ngrdcol,hydromet_dim_transport,sclr_dim_transport])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_turb_adv_range"...
          low_lev_effect,high_lev_effect = f2py_calc_turb_adv_range(nzt,dt,w_1_zm,w_2_zm,varnce_w_1_zm,varnce_w_2_zm,mixt_frac_zm,[nzm,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_monotonic_turbulent_flux_limit"...
          xm,wpxp = f2py_monotonic_turbulent_flux_limit(solve_type,dt,xm_old,xp2,wm_zt,xm_forcing,rho_ds_zm,rho_ds_zt,invrs_rho_ds_zm,invrs_rho_ds_zt,xp2_threshold,xm_tol,l_implemented,low_lev_effect,high_lev_effect,tridiag_solve_method,l_upwind_xm_ma,l_mono_flux_lim_spikefix,xm,wpxp,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_precip_fraction"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          precip_frac,precip_frac_1,precip_frac_2,precip_frac_tol = f2py_precip_fraction(hydromet_dim,hydromet,cloud_frac,cloud_frac_1,l_mix_rat_hm,l_frozen_hm,hydromet_tol,cloud_frac_2,ice_supersat_frac,ice_supersat_frac_1,ice_supersat_frac_2,mixt_frac,clubb_params,[nzt,ngrdcol,hydromet_dim_transport])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_params_ly93"...
          mu_x_1,mu_x_2,sigma_x_1_sqd,sigma_x_2_sqd = f2py_calc_params_ly93(xm,xp2,skx,mixt_frac,[nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_ly93_driver"...
          mu_w_1,mu_w_2,mu_rt_1,mu_rt_2,mu_thl_1,mu_thl_2,sigma_w_1_sqd,sigma_w_2_sqd,sigma_rt_1_sqd,sigma_rt_2_sqd,sigma_thl_1_sqd,sigma_thl_2_sqd,mixt_frac = f2py_ly93_driver(wm,rtm,thlm,wp2,rtp2,thlp2,skw,skrt,skthl,[nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_setter_var_params"...
          mu_x_1,mu_x_2,sigma_x_1,sigma_x_2,mixt_frac,coef_sigma_x_1_sqd,coef_sigma_x_2_sqd = f2py_calc_setter_var_params(xm,xp2,skx,sgn_wpxp,f_x,zeta_x,[nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_responder_params"...
          mu_x_1,mu_x_2,sigma_x_1_sqd,sigma_x_2_sqd,coef_sigma_x_1_sqd,coef_sigma_x_2_sqd = f2py_calc_responder_params(xm,xp2,skx,sgn_wpxp,f_x,mixt_frac,[nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_limits_f_x_responder"...
          min_f_x,max_f_x = f2py_calc_limits_f_x_responder(mixt_frac,skx,sgn_wpxp,max_skx2_pos_skx_sgn_wpxp,max_skx2_neg_skx_sgn_wpxp,[nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_l_x_skx_fnc"...
          big_l_x_1,big_l_x_2 = f2py_calc_l_x_skx_fnc(skx,sgn_wpxp,small_l_x_1,small_l_x_2)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_setter_parameters_tsdadg"...
          mu_x_1,mu_x_2,sigma_x_1_sqd,sigma_x_2_sqd,mixt_frac,coef_sigma_x_1_sqd,coef_sigma_x_2_sqd = f2py_calc_setter_parameters_tsdadg(xm,xp2,skx,sgn_wpxp,big_l_x_1,big_l_x_2)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_coef_wp4_implicit"...
          coef_wp4_implicit = f2py_calc_coef_wp4_implicit(mixt_frac,f_w,coef_sigma_w_1_sqd,coef_sigma_w_2_sqd,[nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_coef_wpxp2_implicit"...
          coef_wpxp2_implicit = f2py_calc_coef_wpxp2_implicit(wp2,xp2,wpxp,sgn_wpxp,mixt_frac,f_w,f_x,coef_sigma_w_1_sqd,coef_sigma_w_2_sqd,coef_sigma_x_1_sqd,coef_sigma_x_2_sqd,[nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_coefs_wp2xp_semiimpl"...
          coef_wp2xp_implicit,term_wp2xp_explicit = f2py_calc_coefs_wp2xp_semiimpl(wp2,xp2,sgn_wpxp,mixt_frac,f_w,f_x,coef_sigma_w_1_sqd,coef_sigma_w_2_sqd,coef_sigma_x_1_sqd,coef_sigma_x_2_sqd,[nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_coefs_wpxpyp_semiimpl"...
          coef_wpxpyp_implicit,term_wpxpyp_explicit = f2py_calc_coefs_wpxpyp_semiimpl(wp2,xp2,yp2,wpxp,wpyp,sgn_wpxp,sgn_wpyp,mixt_frac,f_w,f_x,f_y,coef_sigma_w_1_sqd,coef_sigma_w_2_sqd,coef_sigma_x_1_sqd,coef_sigma_x_2_sqd,coef_sigma_y_1_sqd,coef_sigma_y_2_sqd,[nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_luhar_params"...
          mixt_frac,big_m,small_m = f2py_calc_luhar_params(skx,wpxp,xp2,x_tol_sqd,[nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_close_luhar_pdf"...
          sigma_sqd_x_1,sigma_sqd_x_2,varnce_x_1,varnce_x_2,x_1_n,x_2_n,x_1,x_2 = f2py_close_luhar_pdf(xm,xp2,mixt_frac,small_m,wpxp,x_tol_sqd,[nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_adg1_w_closure"...
          w_1,w_2,w_1_n,w_2_n,varnce_w_1,varnce_w_2,mixt_frac = f2py_adg1_w_closure(wm,wp2,skw,sigma_sqd_w,sqrt_wp2,mixt_frac_max_mag,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_tsdadg_pdf_driver"...
          mu_w_1,mu_w_2,mu_rt_1,mu_rt_2,mu_thl_1,mu_thl_2,sigma_w_1_sqd,sigma_w_2_sqd,sigma_rt_1_sqd,sigma_rt_2_sqd,sigma_thl_1_sqd,sigma_thl_2_sqd,mixt_frac = f2py_tsdadg_pdf_driver(wm,rtm,thlm,wp2,rtp2,thlp2,skw,skrt,skthl,wprtp,wpthlp,[nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_adg2_pdf_driver"...
          w_1,w_2,rt_1,rt_2,thl_1,thl_2,varnce_w_1,varnce_w_2,varnce_rt_1,varnce_rt_2,varnce_thl_1,varnce_thl_2,mixt_frac,alpha_rt,alpha_thl,sigma_sqd_w,sclr_1,sclr_2,varnce_sclr_1,varnce_sclr_2,alpha_sclr = f2py_adg2_pdf_driver(sclr_dim,sclr_tol,wm,rtm,thlm,wp2,rtp2,thlp2,skw,wprtp,wpthlp,sqrt_wp2,beta,sclrm,sclrp2,wpsclrp,l_scalar_calc,[nz,ngrdcol,sclr_dim_transport])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_adg1_pdf_driver"...
          w_1,w_2,rt_1,rt_2,thl_1,thl_2,u_1,u_2,v_1,v_2,varnce_w_1,varnce_w_2,varnce_rt_1,varnce_rt_2,varnce_thl_1,varnce_thl_2,varnce_u_1,varnce_u_2,varnce_v_1,varnce_v_2,mixt_frac,alpha_rt,alpha_thl,alpha_u,alpha_v,sclr_1,sclr_2,varnce_sclr_1,varnce_sclr_2,alpha_sclr = f2py_adg1_pdf_driver(sclr_dim,sclr_tol,wm,rtm,thlm,um,vm,wp2,rtp2,thlp2,up2,vp2,skw,wprtp,wpthlp,upwp,vpwp,sqrt_wp2,sigma_sqd_w,beta,mixt_frac_max_mag,sclrm,sclrp2,wpsclrp,l_scalar_calc,[nz,ngrdcol,sclr_dim_transport])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_luhar_3d_pdf_driver"...
          w_1,w_2,rt_1,rt_2,thl_1,thl_2,varnce_w_1,varnce_w_2,varnce_rt_1,varnce_rt_2,varnce_thl_1,varnce_thl_2,mixt_frac = f2py_luhar_3d_pdf_driver(wm,rtm,thlm,wp2,rtp2,thlp2,skw,skrt,skthl,wprtp,wpthlp,[nz])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calculate_w_params"...
          mu_w_1,mu_w_2,sigma_w_1,sigma_w_2,mixt_frac,coef_sigma_w_1_sqd,coef_sigma_w_2_sqd = f2py_calculate_w_params(wm,wp2,skw,f_w,zeta_w)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calculate_responder_params"...
          mu_x_1,mu_x_2,sigma_x_1_sqd,sigma_x_2_sqd,coef_sigma_x_1_sqd,coef_sigma_x_2_sqd = f2py_calculate_responder_params(xm,xp2,skx,wpxp,wp2,f_w,mixt_frac)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calculate_coef_wp4_implicit"...
          coef_wp4_implicit = f2py_calculate_coef_wp4_implicit(mixt_frac,f_w,coef_sigma_w_1_sqd,coef_sigma_w_2_sqd)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_coef_wp2xp_implicit"...
          coef_wp2xp_implicit = f2py_calc_coef_wp2xp_implicit(wp2,mixt_frac,f_w,coef_sigma_w_1_sqd,coef_sigma_w_2_sqd)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_coefs_wpxp2_semiimpl"...
          coef_wpxp2_implicit,term_wpxp2_explicit = f2py_calc_coefs_wpxp2_semiimpl(wp2,wpxp,mixt_frac,f_w,coef_sigma_x_1_sqd,coef_sigma_x_2_sqd)
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_new_pdf_driver"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          skrt,skthl,mu_w_1,mu_w_2,mu_rt_1,mu_rt_2,mu_thl_1,mu_thl_2,sigma_w_1_sqd,sigma_w_2_sqd,sigma_rt_1_sqd,sigma_rt_2_sqd,sigma_thl_1_sqd,sigma_thl_2_sqd,mixt_frac = f2py_new_pdf_driver(wm,rtm,thlm,wp2,rtp2,thlp2,skw,wprtp,wpthlp,rtpthlp,clubb_params,skrt,skthl,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_new_hybrid_pdf_driver"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          skrt,skthl,sku,skv,sksclr,mu_w_1,mu_w_2,mu_rt_1,mu_rt_2,mu_thl_1,mu_thl_2,mu_u_1,mu_u_2,mu_v_1,mu_v_2,sigma_w_1_sqd,sigma_w_2_sqd,sigma_rt_1_sqd,sigma_rt_2_sqd,sigma_thl_1_sqd,sigma_thl_2_sqd,sigma_u_1_sqd,sigma_u_2_sqd,sigma_v_1_sqd,sigma_v_2_sqd,mu_sclr_1,mu_sclr_2,sigma_sclr_1_sqd,sigma_sclr_2_sqd,mixt_frac,sigma_sqd_w = f2py_new_hybrid_pdf_driver(sclr_dim,wm,rtm,thlm,um,vm,wp2,rtp2,thlp2,up2,vp2,skw,wprtp,wpthlp,upwp,vpwp,sclrm,sclrp2,wpsclrp,clubb_params,slope_coef_spread_dg_means_w,pdf_component_stdev_factor_w,skrt,skthl,sku,skv,sksclr,[nz,ngrdcol,sclr_dim_transport])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_compute_sigma_sqd_w"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          sigma_sqd_w = f2py_compute_sigma_sqd_w(wp3,wp2,thlp2,rtp2,up2,vp2,wpthlp,wprtp,upwp,vpwp,clubb_params,l_predict_upwp_vpwp,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_fill_holes_vertical"...
          field = f2py_fill_holes_vertical(threshold,lower_hf_level,upper_hf_level,dz,rho_ds,grid_dir_indx,fill_holes_type,field,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_fill_holes_wp2_from_horz_tke"...
          wp2,up2,vp2 = f2py_fill_holes_wp2_from_horz_tke(threshold,lower_hf_level,upper_hf_level,wp2,up2,vp2,[nz,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_clip_rcm"...
          rcm = f2py_clip_rcm(rtm,message,rcm,[nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_clip_covar"...
          xpyp,xpyp_chnge = f2py_clip_covar(solve_type,xp2,yp2,xpyp,[nzm,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_clip_variance"...
          xp2 = f2py_clip_variance(solve_type,dt,threshold_lo,xp2,[nzm,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_pos_definite_adj"...
          field_np1,flux_np1,field_pd,flux_pd = f2py_pos_definite_adj(dt,field_np1,flux_np1,field_n,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_clip_skewness"...
          wp3 = f2py_clip_skewness(dt,sfc_elevation,skw_max_mag,wp2_zt,l_use_wp3_lim_with_smth_heaviside,wp3,[nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_clip_covars_denom"...
          wprtp_cl_num,wpthlp_cl_num,upwp_cl_num,vpwp_cl_num,wprtp,wpthlp,upwp,vpwp,wpsclrp,upwp_pert,vpwp_pert = f2py_clip_covars_denom(sclr_dim,dt,rtp2,thlp2,up2,vp2,wp2,sclrp2,l_linearize_pbl_winds,l_predict_upwp_vpwp,wprtp_cl_num,wpthlp_cl_num,upwp_cl_num,vpwp_cl_num,wprtp,wpthlp,upwp,vpwp,wpsclrp,upwp_pert,vpwp_pert,[nzm,ngrdcol,sclr_dim_transport])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_brunt_vaisala_freq_sqd"...
          brunt_vaisala_freq_sqd,brunt_vaisala_freq_sqd_mixed,brunt_vaisala_freq_sqd_smth = f2py_calc_brunt_vaisala_freq_sqd(nzm,thlm,exner,rtm,rcm,p_in_Pa,thvm,ice_supersat_frac,saturation_formula,l_brunt_vaisala_freq_moist,l_use_thvm_in_bv_freq,l_modify_limiters_for_cnvg_test,bv_efold,T0,[nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_compute_cx_fnc_richardson"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          Cx_fnc_Richardson = f2py_compute_cx_fnc_richardson(nzt,Lscale_zm,ddzt_umvm_sqd,rho_ds_zm,brunt_vaisala_freq_sqd,brunt_vaisala_freq_sqd_mixed,clubb_params,l_use_shear_Richardson,l_modify_limiters_for_cnvg_test,[nzm,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_stability_correction"...
          stability_correction = f2py_calc_stability_correction(brunt_vaisala_freq_sqd,lscale_zm,em,lambda0_stability_coef,[nzm,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_lscale"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          invrs_tau_zt,invrs_tau_zm,invrs_tau_xp2_zm,invrs_tau_wp3_zt,invrs_tau_c1_zm,invrs_tau_c4_zm,invrs_tau_c6_zm,invrs_tau_c14_zm,tau_max_zm,tau_max_zt,tau_zm,lscale,lscale_zm,lscale_up,lscale_down = f2py_calc_lscale(l_implemented,host_dx,host_dy,p_in_pa,exner,rtm,thlm,thvm,thlp2,rtp2,rtpthlp,em,thv_ds_zt,lmin,upwp_sfc,vpwp_sfc,ddzt_umvm_sqd,ice_supersat_frac,ufmin,tau_const,sfc_elevation,clubb_params,saturation_formula,l_lscale_plume_centered,l_diag_lscale_from_tau,l_e3sm_config,l_smooth_heaviside_tau_wpxp,l_modify_limiters_for_cnvg_test,l_use_invrs_tau_n2_iso,brunt_vaisala_freq_sqd_smth,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_diagnose_lscale_from_tau"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          invrs_tau_zt,invrs_tau_zm,invrs_tau_sfc,invrs_tau_no_n2_zm,invrs_tau_bkgnd,invrs_tau_shear,invrs_tau_n2_iso,invrs_tau_wp2_zm,invrs_tau_xp2_zm,invrs_tau_wp3_zm,invrs_tau_wp3_zt,invrs_tau_wpxp_zm,tau_max_zm,tau_max_zt,tau_zm,tau_zt,lscale,lscale_up,lscale_down = f2py_diagnose_lscale_from_tau(upwp_sfc,vpwp_sfc,ddzt_umvm_sqd,ice_supersat_frac,em,sqrt_em_zt,ufmin,tau_const,sfc_elevation,lscale_max,clubb_params,l_e3sm_config,l_smooth_heaviside_tau_wpxp,brunt_vaisala_freq_sqd_smth,ri_zm,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_calc_lscale_directly"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          lscale,lscale_up,lscale_down = f2py_calc_lscale_directly(l_implemented,p_in_pa,exner,rtm,thlm,thvm,newmu,rtp2_zt,thlp2_zt,rtpthlp_zt,em,thv_ds_zt,lscale_max,lmin,clubb_params,saturation_formula,l_lscale_plume_centered,[ngrdcol,nzm,nzt])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_advance_xp3"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          rtp3,thlp3,sclrp3,up3,vp3 = f2py_advance_xp3(sclr_dim,sclr_tol,dt,rtm,thlm,rtp2,thlp2,wprtp,wpthlp,wprtp2,wpthlp2,rho_ds_zm,invrs_rho_ds_zt,invrs_tau_zt,tau_max_zt,sclrm,sclrp2,wpsclrp,wpsclrp2,wp2,wp3,upwp,vpwp,up2,vp2,thvm,clubb_params,l_lmm_stepping,rtp3,thlp3,sclrp3,up3,vp3,[nzm,nzt,ngrdcol,sclr_dim_transport])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_diagnose_xp3"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          rtp3,thlp3,up3,vp3,sclrp3 = f2py_diagnose_xp3(sclr_dim,sclr_tol,iipdf_type,clubb_params,wp2,wp3,thvm,wprtp,wpthlp,rtp2,thlp2,upwp,vpwp,up2,vp2,sigma_sqd_w,wpsclrp,sclrp2,rtp3,thlp3,up3,vp3,sclrp3,[nzm,nzt,ngrdcol,sclr_dim_transport])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_advance_wp2_wp3"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          up2,vp2,wp2,wp3 = f2py_advance_wp2_wp3(dt,sfc_elevation,fcor_y,sigma_sqd_w,wm_zm,wm_zt,wpup2,wpvp2,wp2up2,wp2vp2,wp4,wpthvp,wp2thvp,wp2up,um,vm,upwp,vpwp,em,kh_zm,kh_zt,invrs_tau_c4_zm,invrs_tau_wp3_zt,invrs_tau_c1_zm,rho_ds_zm,rho_ds_zt,invrs_rho_ds_zm,invrs_rho_ds_zt,thv_ds_zm,thv_ds_zt,mixt_frac,cx_fnc_richardson,lhs_splat_wp2,lhs_splat_wp3,wprtp,wpthlp,rtp2,thlp2,clubb_params,iipdf_type,penta_solve_method,fill_holes_type,l_min_wp2_from_corr_wx,l_upwind_xm_ma,l_standard_term_ta,l_partial_upwind_wp3,l_damp_wp2_using_em,l_use_c11_richardson,l_damp_wp3_skw_squared,l_lmm_stepping,l_use_tke_in_wp3_pr_turb_term,l_use_tke_in_wp2_wp3_k_dfsn,l_use_wp3_lim_with_smth_heaviside,l_wp2_fill_holes_tke,l_ho_nontrad_coriolis,up2,vp2,wp2,wp3,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_advance_windm_edsclrm"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          upwp_cl_num,vpwp_cl_num,um,vm,thlm,rtm,edsclrm,upwp,vpwp,wpedsclrp,um_pert,vm_pert,upwp_pert,vpwp_pert = f2py_advance_windm_edsclrm(edsclr_dim,dt,wm_zt,kh_zm,clubb_params,ug,vg,um_ref,vm_ref,wp2,up2,vp2,um_forcing,vm_forcing,edsclrm_forcing,p_in_pa,rho_ds_zm,rho_ds_zt,invrs_rho_ds_zt,fcor,l_implemented,ts_nudge,tridiag_solve_method,l_predict_upwp_vpwp,l_upwind_xm_ma,l_uv_nudge,l_lmm_stepping,l_linearize_pbl_winds,l_do_expldiff_rtm_thlm,fill_holes_type,upwp_cl_num,vpwp_cl_num,um,vm,thlm,rtm,edsclrm,upwp,vpwp,wpedsclrp,um_pert,vm_pert,upwp_pert,vpwp_pert,[nzm,nzt,ngrdcol,edsclr_dim_transport])
The Meson build system
Version: 1.12.1
Source dir: /tmp/tmpilbe1ipm
Build dir: /tmp/tmpilbe1ipm/bbdir
Build type: native build
Project name: clubb_f2py
Project version: 0.1
Fortran compiler for the host machine: /usr/local/spack/opt/spack/linux-pop22-cascadelake/gcc-12.2.0/gcc-13.1.0-uswx4gd4eee2bf3orriqppfr4j25x4li/bin/gfortran (gcc 13.1.0 "GNU Fortran (Spack GCC) 13.1.0")
Fortran linker for the host machine: /usr/local/spack/opt/spack/linux-pop22-cascadelake/gcc-12.2.0/gcc-13.1.0-uswx4gd4eee2bf3orriqppfr4j25x4li/bin/gfortran ld.bfd 2.38
C compiler for the host machine: /usr/local/spack/opt/spack/linux-pop22-cascadelake/gcc-12.2.0/gcc-13.1.0-uswx4gd4eee2bf3orriqppfr4j25x4li/bin/gcc (gcc 13.1.0 "gcc (Spack GCC) 13.1.0")
C linker for the host machine: /usr/local/spack/opt/spack/linux-pop22-cascadelake/gcc-12.2.0/gcc-13.1.0-uswx4gd4eee2bf3orriqppfr4j25x4li/bin/gcc ld.bfd 2.38
Host machine cpu family: x86_64
Host machine cpu: x86_64
Compiler for C supports arguments -fno-strict-aliasing: YES 
Program /home/jenkins/workspace/clubb_branch_jax@2/.venv-python/bin/python found: YES (/home/jenkins/workspace/clubb_branch_jax@2/.venv-python/bin/python)
Found pkg-config: YES (/usr/local/spack/opt/spack/linux-pop22-cascadelake/gcc-12.2.0/pkgconf-2.2.0-5yfc5u2idq4y27sxxkurcul66iyq7axu/bin/pkg-config) 2.2.0
Run-time dependency python found: YES 3.12
Library quadmath found: YES
Build targets in project: 1

Found ninja-1.13.2.git.kitware.jobserver-pipe-1 at /home/jenkins/workspace/clubb_branch_jax@2/.venv-python/bin/ninja
ninja: Entering directory `/tmp/tmpilbe1ipm/bbdir'
[1/6] Scanning target clubb_f2py.cpython-312-x86_64-linux-gnu for modules
[2/6] Generating dynamic dependency information for target clubb_f2py.cpython-312-x86_64-linux-gnu
[3/6] Compiling Fortran object clubb_f2py.cpython-312-x86_64-linux-gnu.so.p/clubb_f2py-f2pywrappers.f.o
[4/6] Compiling C object clubb_f2py.cpython-312-x86_64-linux-gnu.so.p/e4ecc08aaf42ac923f8025a3b1fcb46555f425da_.._.._f2py_src_fortranobject.c.o
[5/6] Compiling C object clubb_f2py.cpython-312-x86_64-linux-gnu.so.p/clubb_f2pymodule.c.o
[6/6] Linking target clubb_f2py.cpython-312-x86_64-linux-gnu.so
INFO: autodetecting backend as ninja
INFO: calculating backend command to run: /home/jenkins/workspace/clubb_branch_jax@2/.venv-python/bin/ninja -C /tmp/tmpilbe1ipm/bbdir
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_advance_xp2_xpyp"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          rtp2,thlp2,rtpthlp,up2,vp2,sclrp2,sclrprtp,sclrpthlp = f2py_advance_xp2_xpyp(sclr_dim,sclr_tol,invrs_tau_xp2_zm,invrs_tau_c4_zm,invrs_tau_c14_zm,wm_zm,rtm,wprtp,thlm,wpthlp,wpthvp,um,vm,wp2,wp2_zt,wp3,upwp,vpwp,sigma_sqd_w,wprtp2,wpthlp2,wprtpthlp,kh_zt,rtp2_forcing,thlp2_forcing,rtpthlp_forcing,rho_ds_zm,rho_ds_zt,invrs_rho_ds_zm,thv_ds_zm,cloud_frac,dt,fcor_y,sclrm,wpsclrp,wpsclrp2,wpsclrprtp,wpsclrpthlp,lhs_splat_wp2,clubb_params,iipdf_type,tridiag_solve_method,fill_holes_type,l_ho_nontrad_coriolis,l_min_xp2_from_corr_wx,l_c2_cloud_frac,l_upwind_xpyp_ta,l_godunov_upwind_xpyp_ta,l_lmm_stepping,rtp2,thlp2,rtpthlp,up2,vp2,sclrp2,sclrprtp,sclrpthlp,[nzm,nzt,ngrdcol,sclr_dim_transport])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_update_xp2_mc"...
          rtp2_mc,thlp2_mc,wprtp_mc,wpthlp_mc,rtpthlp_mc = f2py_update_xp2_mc(dt,cloud_frac,rcm,rvm,thlm,wm,exner,rrm_evap,rtp2_mc,thlp2_mc,wprtp_mc,wpthlp_mc,rtpthlp_mc,[nzm,nzt,ngrdcol])
    Generating possibly empty wrappers"
    Maybe empty "clubb_f2py-f2pywrappers.f"
        Constructing wrapper function "f2py_advance_xm_wpxp"...
getarrdims:warning: assumed shape array, using 0 instead of '*'
          wprtp_cl_num,wpthlp_cl_num,upwp_cl_num,vpwp_cl_num,rtm,wprtp,thlm,wpthlp,sclrm,wpsclrp,um,upwp,vm,vpwp,um_pert,vm_pert,upwp_pert,vpwp_pert = f2py_advance_xm_wpxp(sclr_dim,sclr_tol,dt,sigma_sqd_w,wm_zm,wm_zt,wp2,lscale_zm,wp3,kh_zt,kh_zm,stability_correction,invrs_tau_c6_zm,tau_max_zm,wp2rtp,rtpthvp,rtm_forcing,wprtp_forcing,rtm_ref,wp2thlp,thlpthvp,thlm_forcing,wpthlp_forcing,thlm_ref,rho_ds_zm,rho_ds_zt,invrs_rho_ds_zm,invrs_rho_ds_zt,thv_ds_zm,rtp2,thlp2,w_1_zm,w_2_zm,varnce_w_1_zm,varnce_w_2_zm,mixt_frac_zm,l_implemented,em,wp2sclrp,sclrpthvp,sclrm_forcing,sclrp2,cx_fnc_richardson,um_forcing,vm_forcing,ug,vg,wpthvp,fcor,fcor_y,um_ref,vm_ref,up2,vp2,uprcp,vprcp,rc_coef_zm,clubb_params,ts_nudge,iipdf_type,penta_solve_method,tridiag_solve_method,fill_holes_type,l_predict_upwp_vpwp,l_ho_nontrad_coriolis,l_ho_trad_coriolis,l_diffuse_rtm_and_thlm,l_stability_correct_kh_n2_zm,l_godunov_upwind_wpxp_ta,l_upwind_xm_ma,l_uv_nudge,l_diag_lscale_from_tau,l_use_c7_richardson,l_lmm_stepping,l_enable_relaxed_clipping,l_linearize_pbl_winds,l_mono_flux_lim_thlm,l_mono_flux_lim_rtm,l_mono_flux_lim_um,l_mono_flux_lim_vm,l_mono_flux_lim_spikefix,wprtp_cl_num,wpthlp_cl_num,upwp_cl_num,vpwp_cl_num,rtm,wprtp,thlm,wpthlp,sclrm,wpsclrp,um,upwp,vm,vpwp,um_pert,vm_pert,upwp_pert,vpwp_pert,[nzm,nzt,ngrdcol,sclr_dim_transport])
    Wrote C/API module "clubb_f2py" to file "./clubb_f2pymodule.c"
[1048/1049] Copying clubb_f2py extension into the build runtime directory
[1048/1049] Install the project...
-- Install configuration: "Debug"
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/libclubb_driver_lib.a
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/clubb_tuner
-- Set runtime path of "/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/clubb_tuner" to "/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON:/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/lib:/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/lib64:/usr/local/spack/opt/spack/linux-pop22-cascadelake/gcc-13.1.0/netcdf-fortran-4.5.3-ivafocv4fav4rj3ckswo6vj33utvtdir/lib"
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/G_unit_tests
-- Set runtime path of "/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/G_unit_tests" to "/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON:/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/lib:/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/lib64:/usr/local/spack/opt/spack/linux-pop22-cascadelake/gcc-13.1.0/netcdf-fortran-4.5.3-ivafocv4fav4rj3ckswo6vj33utvtdir/lib"
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/clubb_thread_test
-- Set runtime path of "/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/clubb_thread_test" to "/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON:/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/lib:/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/lib64:/usr/local/spack/opt/spack/linux-pop22-cascadelake/gcc-13.1.0/netcdf-fortran-4.5.3-ivafocv4fav4rj3ckswo6vj33utvtdir/lib"
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/clubb_standalone
-- Set runtime path of "/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/clubb_standalone" to "/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON:/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/lib:/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/lib64:/usr/local/spack/opt/spack/linux-pop22-cascadelake/gcc-13.1.0/netcdf-fortran-4.5.3-ivafocv4fav4rj3ckswo6vj33utvtdir/lib"
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/clubb_driver_test
-- Set runtime path of "/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/clubb_driver_test" to "/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON:/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/lib:/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/lib64:/usr/local/spack/opt/spack/linux-pop22-cascadelake/gcc-13.1.0/netcdf-fortran-4.5.3-ivafocv4fav4rj3ckswo6vj33utvtdir/lib"
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/clubb_standalone_loss
-- Set runtime path of "/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/clubb_standalone_loss" to "/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON:/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/lib:/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/lib64:/usr/local/spack/opt/spack/linux-pop22-cascadelake/gcc-13.1.0/netcdf-fortran-4.5.3-ivafocv4fav4rj3ckswo6vj33utvtdir/lib"
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/clubb_loss_driver_test
-- Set runtime path of "/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/clubb_loss_driver_test" to "/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON:/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/lib:/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/lib64:/usr/local/spack/opt/spack/linux-pop22-cascadelake/gcc-13.1.0/netcdf-fortran-4.5.3-ivafocv4fav4rj3ckswo6vj33utvtdir/lib"
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/libclubb_f2py_backend.so
-- Set runtime path of "/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/libclubb_f2py_backend.so" to "/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON:/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/lib:/home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/lib64:/usr/local/spack/opt/spack/linux-pop22-cascadelake/gcc-13.1.0/netcdf-fortran-4.5.3-ivafocv4fav4rj3ckswo6vj33utvtdir/lib"
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_f2py.cpython-312-x86_64-linux-gnu.so
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/_runtime_loader.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/clubb_api.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/radiation.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/__init__.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/lapack_wrap.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/advance_xp2_xpyp.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/lapack_interfaces.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/matrix_operations.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/adg1_adg2_3d_luhar_pdf.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/stats_netcdf.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/pdf_closure.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/clip_explicit.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/turbulent_adv_pdf.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/advance_wp2_wp3.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/pos_definite_module.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/t_in_k_module.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/skx_module.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/new_tsdadg_pdf.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/pdf_parameter_module.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/penta_bicgstab_solver.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/numerical_check.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/advance_xp3.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/model_flags.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/remapping_module.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/grid_class.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/loss_driver.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/mean_adv.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/new_hybrid_pdf.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/new_hybrid_pdf_main.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/advance_xm_wpxp.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/calc_pressure.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/calendar.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/interpolation.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/stats_clubb_utilities.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/calc_roots.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/sigma_sqd_w_module.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/precipitation_fraction.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/saturation.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/nc_ncn_eqns.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/mixing_length.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/ly93_pdf.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/fill_holes.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/parameters_tunable.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/index_mapping.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/penta_lu_solver.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/tridiag_lu_solver.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/__init__.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/file_functions.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/sponge_layer_damping.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/diagnose_correlations_module.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/sfc_varnce_module.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/diffusion.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/new_pdf.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/err_info_type_module.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/advance_clubb_core.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/advance_windm_edsclrm.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/advance_helper.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/pdf_utilities.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/new_pdf_main.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/matrix_solver_wrapper.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/corr_varnce_module.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/error_code.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/mono_flux_limiter.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/CLUBB_core/array_index.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/string_conversion.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/prescribe_forcings.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/derived_types
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/derived_types/config_flags_converter.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/derived_types/err_info.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/derived_types/nu_vert_res_dep_converter.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/derived_types/nu_vert_res_dep.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/derived_types/grid_class.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/derived_types/sclr_idx_converter.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/derived_types/err_info_converter.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/derived_types/config_flags.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/derived_types/pdf_params.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/derived_types/grid_class_converter.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/derived_types/hm_metadata.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/derived_types/__init__.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/derived_types/sclr_idx.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/derived_types/common.py
-- Installing: /home/jenkins/workspace/clubb_branch_jax@2/install/gcc_DEBUG_PRECdouble_PYTHON/python/clubb_python/derived_types/pdf_params_converter.py
CLUBBStandardsCheck.py: beginning check on src
PASS: 0 checks failed for src
CLUBBStandardsCheck.py: beginning check on src/CLUBB_core
PASS: 0 checks failed for src/CLUBB_core
CLUBBStandardsCheck.py: beginning check on src/SILHS
PASS: 0 checks failed for src/SILHS
CLUBBStandardsCheck.py: beginning check on src/Benchmark_cases
PASS: 0 checks failed for src/Benchmark_cases
CLUBBStandardsCheck.py: beginning check on src/Radiation
PASS: 0 checks failed for src/Radiation
CLUBBStandardsCheck.py: beginning check on src/Microphys
PASS: 0 checks failed for src/Microphys
CLUBBStandardsCheck.py: beginning check on src/Microphys/KK_microphys
PASS: 0 checks failed for src/Microphys/KK_microphys
CLUBBStandardsCheck.py: beginning check on src/G_unit_test_types
PASS: 0 checks failed for src/G_unit_test_types

Build completed successfully, and all source code checks passed.
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Run JAX pytests)
[Pipeline] catchError
[Pipeline] {
[Pipeline] sh
+ 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
+ export PYTHON=/home/jenkins/workspace/clubb_branch_jax@2/.venv-python/bin/python
+ PYTHON=/home/jenkins/workspace/clubb_branch_jax@2/.venv-python/bin/python
+ bash tests/run_pytests.sh -jax -include_generated -v --durations=15
==> Creating JAX virtualenv with existing Python 3.12
==> Installing uv 0.11.32 in /home/jenkins/workspace/clubb_branch_jax@2/.clubb-jax-tools/bin
downloading uv 0.11.32 x86_64-unknown-linux-gnu
installing to /home/jenkins/workspace/clubb_branch_jax@2/.clubb-jax-tools/bin
  uv
  uvx
everything's installed!
==> uv is ready: uv 0.11.32 (x86_64-unknown-linux-gnu)
Using CPython 3.12.13 interpreter at: .venv-python/bin/python
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_branch_jax@2/clubb_jax/requirements.txt
Using Python 3.12.13 environment at: .venv-jax
Resolved 15 packages in 1.05s
Downloading pygments (1.2MiB)
Downloading jax (3.1MiB)
Downloading cftime (1.6MiB)
Downloading netcdf4 (9.7MiB)
Downloading jaxlib (83.2MiB)
Downloading scipy (33.7MiB)
Downloading numpy (15.9MiB)
 Downloaded cftime
 Downloaded pygments
 Downloaded netcdf4
 Downloaded jax
 Downloaded numpy
 Downloaded jaxlib
 Downloaded scipy
Prepared 15 packages in 3.11s
Installed 15 packages in 67ms
 + 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_branch_jax@2/.venv-jax (Python 3.12)
  Accelerator: cpu
  JAX: 0.11.0 (jaxlib 0.11.0)
  Device: cpu:0
JAX pytest module: auto_llm_generated_pytests/test_adg1_adg2_responder_params.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_branch_jax@2/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_branch_jax@2
configfile: pytest.ini
collecting ... collected 3 items

clubb_jax/pytests/auto_llm_generated_pytests/test_adg1_adg2_responder_params.py::test_responder_params_matches_reference PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_adg1_adg2_responder_params.py::test_alpha_x_clip_to_unit_interval PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_adg1_adg2_responder_params.py::test_responder_params_grad_finite PASSED [100%]

- generated xml file: /home/jenkins/workspace/clubb_branch_jax@2/output/tests/pytests/jax/auto_llm_generated_pytests/test_adg1_adg2_responder_params.xml -
============================= slowest 15 durations =============================
1.10s call     clubb_jax/pytests/auto_llm_generated_pytests/test_adg1_adg2_responder_params.py::test_responder_params_grad_finite
0.84s call     clubb_jax/pytests/auto_llm_generated_pytests/test_adg1_adg2_responder_params.py::test_responder_params_matches_reference

(7 durations < 0.005s hidden.  Use -vv to show these durations.)
============================== 3 passed in 2.48s ===============================
JAX pytest module: auto_llm_generated_pytests/test_adg2_driver.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_branch_jax@2/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_branch_jax@2
configfile: pytest.ini
collecting ... collected 2 items

clubb_jax/pytests/auto_llm_generated_pytests/test_adg2_driver.py::test_f2py_oracle PASSED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_adg2_driver.py::test_differentiable PASSED [100%]

- generated xml file: /home/jenkins/workspace/clubb_branch_jax@2/output/tests/pytests/jax/auto_llm_generated_pytests/test_adg2_driver.xml -
============================= slowest 15 durations =============================
3.46s call     clubb_jax/pytests/auto_llm_generated_pytests/test_adg2_driver.py::test_differentiable
1.90s call     clubb_jax/pytests/auto_llm_generated_pytests/test_adg2_driver.py::test_f2py_oracle

(4 durations < 0.005s hidden.  Use -vv to show these durations.)
============================== 2 passed in 5.85s ===============================
JAX pytest module: auto_llm_generated_pytests/test_advance_helper_extras.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_branch_jax@2/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_branch_jax@2
configfile: pytest.ini
collecting ... collected 13 items

clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_smooth_min_closed_form PASSED [  7%]
clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_smooth_min_f2py PASSED [ 15%]
clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_smooth_max_f2py PASSED [ 23%]
clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_compute_Cx_fnc_Richardson_f2py PASSED [ 30%]
clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_calc_xpwp_f2py PASSED [ 38%]
clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_calc_xpwp_identity PASSED [ 46%]
clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_differentiable PASSED [ 53%]
clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_stability_and_Ri_f2py PASSED [ 61%]
clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_vertical_avg_integral_f2py PASSED [ 69%]
clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_brunt_vaisala_f2py PASSED [ 76%]
clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_calculate_thlp2_rad_f2py PASSED [ 84%]
clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_Lscale_width_vert_avg_f2py PASSED [ 92%]
clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_wp23_term_splat_lhs_f2py PASSED [100%]

- generated xml file: /home/jenkins/workspace/clubb_branch_jax@2/output/tests/pytests/jax/auto_llm_generated_pytests/test_advance_helper_extras.xml -
============================= slowest 15 durations =============================
1.28s call     clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_brunt_vaisala_f2py
1.03s call     clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_differentiable
0.40s call     clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_calc_xpwp_f2py
0.37s call     clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_compute_Cx_fnc_Richardson_f2py
0.23s call     clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_stability_and_Ri_f2py
0.20s call     clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_calculate_thlp2_rad_f2py
0.16s call     clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_smooth_max_f2py
0.16s call     clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_wp23_term_splat_lhs_f2py
0.13s call     clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_calc_xpwp_identity
0.12s call     clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_smooth_min_f2py
0.12s call     clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_vertical_avg_integral_f2py
0.12s call     clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_Lscale_width_vert_avg_f2py
0.10s call     clubb_jax/pytests/auto_llm_generated_pytests/test_advance_helper_extras.py::test_smooth_min_closed_form

(2 durations < 0.005s hidden.  Use -vv to show these durations.)
============================== 13 passed in 5.02s ==============================
JAX pytest module: auto_llm_generated_pytests/test_advance_xp3_simplified.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_branch_jax@2/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_branch_jax@2
configfile: pytest.ini
collecting ... collected 2 items

clubb_jax/pytests/auto_llm_generated_pytests/test_advance_xp3_simplified.py::test_term_rhs_formulas PASSED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_advance_xp3_simplified.py::test_steady_state_vs_composition PASSED [100%]

- generated xml file: /home/jenkins/workspace/clubb_branch_jax@2/output/tests/pytests/jax/auto_llm_generated_pytests/test_advance_xp3_simplified.xml -
============================= slowest 15 durations =============================
0.69s call     clubb_jax/pytests/auto_llm_generated_pytests/test_advance_xp3_simplified.py::test_term_rhs_formulas
0.55s call     clubb_jax/pytests/auto_llm_generated_pytests/test_advance_xp3_simplified.py::test_steady_state_vs_composition

(4 durations < 0.005s hidden.  Use -vv to show these durations.)
============================== 2 passed in 1.82s ===============================
JAX pytest module: auto_llm_generated_pytests/test_binormal_moments.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_branch_jax@2/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_branch_jax@2
configfile: pytest.ini
collecting ... collected 3 items

clubb_jax/pytests/auto_llm_generated_pytests/test_binormal_moments.py::test_f2py_oracle PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_binormal_moments.py::test_monte_carlo PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_binormal_moments.py::test_differentiable PASSED [100%]

- generated xml file: /home/jenkins/workspace/clubb_branch_jax@2/output/tests/pytests/jax/auto_llm_generated_pytests/test_binormal_moments.xml -
============================= slowest 15 durations =============================
0.61s call     clubb_jax/pytests/auto_llm_generated_pytests/test_binormal_moments.py::test_monte_carlo
0.61s call     clubb_jax/pytests/auto_llm_generated_pytests/test_binormal_moments.py::test_differentiable
0.34s call     clubb_jax/pytests/auto_llm_generated_pytests/test_binormal_moments.py::test_f2py_oracle

(6 durations < 0.005s hidden.  Use -vv to show these durations.)
============================== 3 passed in 2.03s ===============================
JAX pytest module: auto_llm_generated_pytests/test_bivar_LL_covar_partial.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_branch_jax@2/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_branch_jax@2
configfile: pytest.ini
collecting ... collected 3 items

clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial.py::test_general_partial_closed_form_and_mean_identity PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial.py::test_const_x2_partial_closed_form_and_limit PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial.py::test_grad_finite PASSED [100%]

- generated xml file: /home/jenkins/workspace/clubb_branch_jax@2/output/tests/pytests/jax/auto_llm_generated_pytests/test_bivar_LL_covar_partial.xml -
============================= slowest 15 durations =============================
0.58s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial.py::test_grad_finite
0.11s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial.py::test_general_partial_closed_form_and_mean_identity
0.06s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial.py::test_const_x2_partial_closed_form_and_limit

(6 durations < 0.005s hidden.  Use -vv to show these durations.)
============================== 3 passed in 1.26s ===============================
JAX pytest module: auto_llm_generated_pytests/test_bivar_LL_covar_partial_rr_Nr.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_branch_jax@2/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_branch_jax@2
configfile: pytest.ini
collecting ... collected 5 items

clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial_rr_Nr.py::test_rr_all_vary_general PASSED [ 20%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial_rr_Nr.py::test_rr_x1_const_reuses_mean_const_x1 PASSED [ 40%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial_rr_Nr.py::test_rr_x2_const_partial PASSED [ 60%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial_rr_Nr.py::test_rr_both_const_all PASSED [ 80%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial_rr_Nr.py::test_Nr_all_vary_swapped PASSED [100%]

- generated xml file: /home/jenkins/workspace/clubb_branch_jax@2/output/tests/pytests/jax/auto_llm_generated_pytests/test_bivar_LL_covar_partial_rr_Nr.xml -
============================= slowest 15 durations =============================
0.33s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_covar_partial_rr_Nr.py::test_rr_all_vary_general

(14 durations < 0.005s hidden.  Use -vv to show these durations.)
============================== 5 passed in 0.88s ===============================
JAX pytest module: auto_llm_generated_pytests/test_bivar_LL_mean_const.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_branch_jax@2/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_branch_jax@2
configfile: pytest.ini
collecting ... collected 3 items

clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_mean_const.py::test_const_all_closed_form_and_limit PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_mean_const.py::test_const_x1_closed_form_and_limit PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_mean_const.py::test_grad_finite PASSED [100%]

- generated xml file: /home/jenkins/workspace/clubb_branch_jax@2/output/tests/pytests/jax/auto_llm_generated_pytests/test_bivar_LL_mean_const.xml -
============================= slowest 15 durations =============================
0.48s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_mean_const.py::test_grad_finite
0.10s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_mean_const.py::test_const_all_closed_form_and_limit
0.05s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_LL_mean_const.py::test_const_x1_closed_form_and_limit

(6 durations < 0.005s hidden.  Use -vv to show these durations.)
============================== 3 passed in 1.12s ===============================
JAX pytest module: auto_llm_generated_pytests/test_bivar_NL_mean_eq.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_branch_jax@2/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_branch_jax@2
configfile: pytest.ini
collecting ... collected 5 items

clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py::test_both_vary_selects_general PASSED [ 20%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py::test_x1_const_selects_const_x1 PASSED [ 40%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py::test_x2_const_selects_const_x2 PASSED [ 60%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py::test_both_const_selects_const_all PASSED [ 80%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py::test_parab_cyl_overflow_forces_const_x1 PASSED [100%]

- generated xml file: /home/jenkins/workspace/clubb_branch_jax@2/output/tests/pytests/jax/auto_llm_generated_pytests/test_bivar_NL_mean_eq.xml -
============================= slowest 15 durations =============================
2.10s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py::test_both_vary_selects_general
0.01s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py::test_x2_const_selects_const_x2
0.01s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py::test_x1_const_selects_const_x1
0.01s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bivar_NL_mean_eq.py::test_both_const_selects_const_all

(11 durations < 0.005s hidden.  Use -vv to show these durations.)
============================== 5 passed in 2.65s ===============================
JAX pytest module: auto_llm_generated_pytests/test_bugsrad.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_branch_jax@2/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_branch_jax@2
configfile: pytest.ini
collecting ... collected 17 items

clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_planck_vs_fortran_replica PASSED [  5%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_newexp_vs_fortran_replica PASSED [ 11%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_rayle_vs_fortran_replica PASSED [ 17%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_gascon_vs_fortran_replica PASSED [ 23%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_cloudg_vs_fortran_replica PASSED [ 29%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_comscp_vs_fortran_replica PASSED [ 35%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_two_rt_lw_vs_fortran_replica PASSED [ 41%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_two_rt_sw_vs_fortran_replica PASSED [ 47%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_gases_ckd_data_parser FAILED [ 52%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_gases_dispatch_vs_fortran_replica FAILED [ 58%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_gases_ckd_helpers_vs_fortran_replica PASSED [ 64%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_bugs_lwr FAILED [ 70%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_bugs_swr FAILED [ 76%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_bugs_rad FAILED [ 82%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_bugsrad_driver FAILED [ 88%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_bugsrad_radiation_dispatch FAILED [ 94%]
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_bugs_rad_differentiable FAILED [100%]

=================================== FAILURES ===================================
__________________________ test_gases_ckd_data_parser __________________________

    def test_gases_ckd_data_parser():
        """The gases_ckd_data.h parser builds the correlated-k tables with correct shapes, fully filled
        (no missing T-coefficient slices), and the right spot-checked values."""
        from clubb_jax.src.Radiation.BUGSrad.gases_ckd_data import tables, KG, NUMPS, NUMPIR, NUMTS, NUMTIR
>       t = tables()
            ^^^^^^^^

clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py:367: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:102: in tables
    _TABLES = load_tables()
              ^^^^^^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:64: in load_tables
    for stmt in _logical_lines(os.path.normpath(_DATA_H)):
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

path = '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'

    def _logical_lines(path):
        """Strip comments + #directives, join `&`-continued lines into logical statements."""
        out, buf = [], ''
>       for raw in open(path):
                   ^^^^^^^^^^
E       FileNotFoundError: [Errno 2] No such file or directory: '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'

clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:39: FileNotFoundError
____________________ test_gases_dispatch_vs_fortran_replica ____________________

    def test_gases_dispatch_vs_fortran_replica():
        """The `gases` 18-band dispatch (table indexing + overlap formulas + hk weights) vs a NumPy replica."""
        from clubb_jax.src.Radiation.BUGSrad.gases_ckd import gases, pscale
        from clubb_jax.src.Radiation.BUGSrad.gases_ckd_data import tables, KG, STANPS, STANPIR
        from clubb_jax.src.Radiation.BUGSrad.bugsrad_physconst import MOLAR_VOLUME as MV, GRAVITY as G, \
            MW_H2O as MWh, MW_O3 as MWo, MW_DRY_AIR as MWd
>       T = tables()
            ^^^^^^^^

clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py:396: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:102: in tables
    _TABLES = load_tables()
              ^^^^^^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:64: in load_tables
    for stmt in _logical_lines(os.path.normpath(_DATA_H)):
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

path = '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'

    def _logical_lines(path):
        """Strip comments + #directives, join `&`-continued lines into logical statements."""
        out, buf = [], ''
>       for raw in open(path):
                   ^^^^^^^^^^
E       FileNotFoundError: [Errno 2] No such file or directory: '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'

clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:39: FileNotFoundError
________________________________ test_bugs_lwr _________________________________

    def test_bugs_lwr():
        """LW band driver: the no-cloud invariant (all-sky == clear-sky, bit-exact), finiteness, physical
        flux ranges, and clouds adding downward LW."""
        from clubb_jax.src.Radiation.BUGSrad.bugs_lwr import bugs_lwr
        rng = np.random.default_rng(11)
        ncol, nlm = 2, 25
        pp = np.cumsum(15.0 + 10.0 * rng.random((ncol, nlm + 1)), axis=1) + 1.0
        dp = pp[:, 1:] - pp[:, :-1]; ppl = 0.5 * (pp[:, :-1] + pp[:, 1:])
        tt = 220.0 + 70.0 * rng.random((ncol, nlm)); ts = 290.0 + 10.0 * rng.random(ncol)
        rmix = 1e-3 * rng.random((ncol, nlm)); o3mix = 1e-6 * rng.random((ncol, nlm))
        cw0 = np.zeros((ncol, nlm)); ci0 = np.zeros((ncol, nlm))
        fd, fu, fdcl, fucl = (np.asarray(x) for x in
>                             bugs_lwr(ts, ppl, dp, tt, rmix, cw0, ci0, o3mix, pp, 330.0, 1.6, 0.28))
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py:533: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
clubb_jax/src/Radiation/BUGSrad/bugs_lwr.py:77: in bugs_lwr
    tg, hk = gases(ib, ig, dp, tt, rmix, o3mix, umco2, umch4, umn2o, pkd, ip1, ip2, pp)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd.py:108: in gases
    T = tables()
        ^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:102: in tables
    _TABLES = load_tables()
              ^^^^^^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:64: in load_tables
    for stmt in _logical_lines(os.path.normpath(_DATA_H)):
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

path = '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'

    def _logical_lines(path):
        """Strip comments + #directives, join `&`-continued lines into logical statements."""
        out, buf = [], ''
>       for raw in open(path):
                   ^^^^^^^^^^
E       FileNotFoundError: [Errno 2] No such file or directory: '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'

clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:39: FileNotFoundError
________________________________ test_bugs_swr _________________________________

    def test_bugs_swr():
        """SW band driver: no-cloud invariant (all-sky==clear-sky bit-exact), the TOA incident solar
        (fdsw[TOA] = amu0·slr·Σband_solar = amu0·slr·1339.946) validating the accumulation, and finiteness."""
        from clubb_jax.src.Radiation.BUGSrad.bugs_swr import bugs_swr
        rng = np.random.default_rng(12)
        ncol, nlm = 2, 25
        pp = np.cumsum(15.0 + 10.0 * rng.random((ncol, nlm + 1)), axis=1) + 1.0
        dp = pp[:, 1:] - pp[:, :-1]; ppl = 0.5 * (pp[:, :-1] + pp[:, 1:])
        tt = 230.0 + 60.0 * rng.random((ncol, nlm)); ts = 290.0 * np.ones(ncol)
        rmix = 1e-3 * rng.random((ncol, nlm)); o3mix = 1e-6 * rng.random((ncol, nlm))
        amu0 = np.array([0.5, 0.8]); slr = np.ones(ncol); alb = 0.2 * np.ones(ncol)
        cw0 = np.zeros((ncol, nlm)); ci0 = np.zeros((ncol, nlm))
        out = [np.asarray(x) for x in
>              bugs_swr(ts, amu0, slr, alb, alb, alb, alb, ppl, dp, tt, rmix, cw0, ci0, o3mix, pp, 330.0, 1.6, 0.28)]
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py:558: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
clubb_jax/src/Radiation/BUGSrad/bugs_swr.py:65: in bugs_swr
    tg, hk = gases(ib, ig, dp, ttem, rmix, o3mix, umco2, umch4, umn2o, pkd, ip1, ip2, pp)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd.py:108: in gases
    T = tables()
        ^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:102: in tables
    _TABLES = load_tables()
              ^^^^^^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:64: in load_tables
    for stmt in _logical_lines(os.path.normpath(_DATA_H)):
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

path = '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'

    def _logical_lines(path):
        """Strip comments + #directives, join `&`-continued lines into logical statements."""
        out, buf = [], ''
>       for raw in open(path):
                   ^^^^^^^^^^
E       FileNotFoundError: [Errno 2] No such file or directory: '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'

clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:39: FileNotFoundError
________________________________ test_bugs_rad _________________________________

    def test_bugs_rad():
        """Main orchestration: LW heating conserves (telescoping flux divergence), night columns get zero
        SW heating, the no-cloud invariant (all-sky heating == clear-sky), and physical heating rates."""
        from clubb_jax.src.Radiation.BUGSrad.bugs_rad import bugs_rad
        from clubb_jax.src.Radiation.BUGSrad.bugsrad_physconst import GRAVITY, CP_DRY_AIR
        rng = np.random.default_rng(13)
        ncol, nlm = 2, 30
        pl2 = np.cumsum(15.0 + 10.0 * rng.random((ncol, nlm + 1)), axis=1) + 1.0
        dpl = pl2[:, 1:] - pl2[:, :-1]; ppl = 0.5 * (pl2[:, :-1] + pl2[:, 1:])
        tl = 220.0 + 70.0 * rng.random((ncol, nlm)); ts = 290.0 * np.ones(ncol)
        ql = 1e-3 * rng.random((ncol, nlm)); o3 = 1e-6 * rng.random((ncol, nlm))      # specific humidity, ozone
        amu0 = np.array([0.5, 0.005]); slr = np.ones(ncol); alb = 0.2 * np.ones(ncol)   # col 0 day, col 1 night
        qcwl = np.where(rng.random((ncol, nlm)) > 0.6, 1e-4, 0.0)                      # cloud-water mixing ratio [kg/kg]
        qcil = np.zeros((ncol, nlm)); acld = np.where(qcwl > 0, 1.0, 0.0)             # cloud ice, cloud fraction
>       r = bugs_rad(pl2, ppl, dpl, tl, ql, qcwl, qcil, o3, ts, amu0, slr, alb, alb, alb, alb, acld, s0=1367.0)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py:582: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
clubb_jax/src/Radiation/BUGSrad/bugs_rad.py:62: in bugs_rad
    fdlw, fulw, fdlwcl, fulwcl = bugs_lwr(ts, ppl, dpl, tl, rmix, cwrho, cirho, o3mix, pl2,
clubb_jax/src/Radiation/BUGSrad/bugs_lwr.py:77: in bugs_lwr
    tg, hk = gases(ib, ig, dp, tt, rmix, o3mix, umco2, umch4, umn2o, pkd, ip1, ip2, pp)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd.py:108: in gases
    T = tables()
        ^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:102: in tables
    _TABLES = load_tables()
              ^^^^^^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:64: in load_tables
    for stmt in _logical_lines(os.path.normpath(_DATA_H)):
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

path = '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'

    def _logical_lines(path):
        """Strip comments + #directives, join `&`-continued lines into logical statements."""
        out, buf = [], ''
>       for raw in open(path):
                   ^^^^^^^^^^
E       FileNotFoundError: [Errno 2] No such file or directory: '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'

clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:39: FileNotFoundError
_____________________________ test_bugsrad_driver ______________________________

    def test_bugsrad_driver():
        """CLUBB↔BUGSrad interface: std-atmosphere loads (50 levels), determine_extended_atmos_bounds gives
        sane bounds for a gabls3-like grid (model top 5 km, radiation_top 30 km), and compute_bugsrad_radiation
        produces a strictly-increasing radiation-grid pressure, finite CLUBB-grid heating, and zero SW at night."""
        import numpy as np
        from clubb_jax.src.Input_fields.sounding import load_extended_std_atm
        from clubb_jax.src.Radiation.bugsrad_driver import (
            determine_extended_atmos_bounds, build_rad_grid_setup,
            compute_bugsrad_radiation)
        ext = load_extended_std_atm()
        assert ext['alt'].shape == (50,) and ext['alt'][0] == 1000.0 and ext['alt'][-1] == 50000.0
        nzm, dz, ncol = 51, 100.0, 2
        zm = np.arange(nzm) * dz                                  # 0..5000 m
        zm_spacing = np.full(nzm - 1, dz)
        p_zm = 1013e2 * np.exp(-zm / 8000.0)                      # Pa, hydrostatic (top ≈ 542 mb)
        rad_top = 30000.0
        bottom, top, rsize, linbuf = determine_extended_atmos_bounds(zm, zm_spacing, p_zm, rad_top, ext)
        assert rsize >= 1 and linbuf >= 0 and top >= bottom, "degenerate extension bounds"
        assert ext['alt'][bottom - 1] >= 5000.0 and ext['alt'][top - 1] <= 30000.0, "bounds outside [5,30] km"
        setup = build_rad_grid_setup(zm, zm_spacing, p_zm, rad_top, ext)
        assert setup['buffer'] == linbuf + rsize
        # synthetic state on the nzt grid
        nzt = nzm - 1; rng = np.random.default_rng(7)
        zt = 0.5 * (zm[1:] + zm[:-1])
        T = np.tile(288.0 - 6.5e-3 * zt, (ncol, 1))
        p_zt = np.tile(1013e2 * np.exp(-zt / 8000.0), (ncol, 1))
        exner = (p_zt / 1.0e5) ** (287.0 / 1004.0)
        rho = np.tile(p_zm / (287.0 * (288.0 - 6.5e-3 * zm)), (ncol, 1))
        rtm = 5e-3 * np.ones((ncol, nzt)); rcm = np.zeros((ncol, nzt)); rcm[:, 5:8] = 1e-4
        cf = np.where(rcm > 0, 1.0, 0.0); rim = np.zeros_like(rcm); rsm = np.zeros_like(rcm); isf = np.zeros_like(rcm)
        amu0 = np.array([0.5, 0.0]); slr = np.ones(ncol); alb = 0.23 * np.ones(ncol)
        p_zm2 = np.tile(p_zm, (ncol, 1))
>       res = compute_bugsrad_radiation(setup, T, rcm, rtm, rsm, rim, cf, isf, p_zt, p_zm2, rho, exner,
                                        amu0, slr, alb, alb, alb, alb, sol_const=1321.0)

clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py:628: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
clubb_jax/src/Radiation/bugsrad_driver.py:143: in compute_bugsrad_radiation
    out = fn(playerinmb, p_rad, diff_pres, T_rad, q_rad, rcmic_rad, rcil_rad, o3_rad,
clubb_jax/src/Radiation/BUGSrad/bugs_rad.py:62: in bugs_rad
    fdlw, fulw, fdlwcl, fulwcl = bugs_lwr(ts, ppl, dpl, tl, rmix, cwrho, cirho, o3mix, pl2,
clubb_jax/src/Radiation/BUGSrad/bugs_lwr.py:77: in bugs_lwr
    tg, hk = gases(ib, ig, dp, tt, rmix, o3mix, umco2, umch4, umn2o, pkd, ip1, ip2, pp)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd.py:108: in gases
    T = tables()
        ^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:102: in tables
    _TABLES = load_tables()
              ^^^^^^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:64: in load_tables
    for stmt in _logical_lines(os.path.normpath(_DATA_H)):
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

path = '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'

    def _logical_lines(path):
        """Strip comments + #directives, join `&`-continued lines into logical statements."""
        out, buf = [], ''
>       for raw in open(path):
                   ^^^^^^^^^^
E       FileNotFoundError: [Errno 2] No such file or directory: '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'
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/src/Radiation/BUGSrad/gases_ckd_data.py:39: FileNotFoundError
_______________________ test_bugsrad_radiation_dispatch ________________________

    def test_bugsrad_radiation_dispatch():
        """End-to-end wiring: advance_clubb_radiation(rad_scheme='bugsrad') builds the grid setup, maps a gabls3-like
        CLUBB state through bugs_rad, and writes a finite K/s heating rate into state['radht'] (shape (1,nzt))."""
        import numpy as np
        from clubb_jax.src.CLUBB_core.grid_class import setup_grid
        from clubb_jax.src.Radiation.radiation_module import advance_clubb_radiation
        gr = setup_grid(ngrdcol=1, deltaz=100.0, zm_init=0.0, zm_top=5000.0)
        nzt, nzm = gr.nzt, gr.nzm
        zt = np.asarray(gr.zt)[0]
        p_zt = (1013e2 * np.exp(-zt / 8000.0))[None, :]
        exner = (p_zt / 1.0e5) ** (287.0 / 1004.67)
        thlm = np.full((1, nzt), 295.0); rtm = np.full((1, nzt), 5e-3)
        rcm = np.zeros((1, nzt)); rcm[:, 5:9] = 2e-4
        cloud_frac = np.where(rcm > 0, 1.0, 0.0)
        rho_zm = (np.asarray(p_zt) / (287.0 * 290.0))
        rho_zm = np.concatenate([rho_zm, rho_zm[:, -1:]], axis=1)        # pad to nzm
        cfg = dict(rad_scheme="bugsrad", radiation_top=30000.0, sol_const=1321.0, slr=1.0,
                   alvdr=0.23, alvdf=0.23, alndr=0.23, alndf=0.23,
                   l_fix_cos_solar_zen=True, cos_solar_zen_values=[0.5])
        state = dict(cfg=cfg, gr=gr, ngrdcol=1, nzt=nzt, nzm=nzm, stats_writer=None,
                     rad_scheme="bugsrad", p_in_Pa=p_zt, exner=exner, thlm=thlm, rtm=rtm, rcm=rcm,
                     cloud_frac=cloud_frac, ice_supersat_frac=np.zeros((1, nzt)), rho_zm=rho_zm,
                     radht=np.zeros((1, nzt)))
>       advance_clubb_radiation(state, time_current=43200.0)                  # local noon-ish
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E       TypeError: Error interpreting argument to <function advance_clubb_radiation at 0x727c3a173a60> as an abstract array. The problematic value is of type <class 'str'> and was passed to the function at path args[0]['cfg']['rad_scheme'].
E       This typically means that a jit-wrapped function was called with a non-array argument, and this argument was not marked as static using the static_argnums or static_argnames parameters of jax.jit.
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_bugsrad.py:661: TypeError
_________________________ test_bugs_rad_differentiable _________________________

    def test_bugs_rad_differentiable():
        """The BUGSrad radiative transfer is DIFFERENTIABLE (a stated project goal): jax.grad of a radiative
        loss (TOA outgoing LW + total SW heating) w.r.t. temperature and cloud water is finite AND nonzero
        (the radiation responds to its physical inputs). cloudg is now fully float64 (REFACTOR A3)."""
        import jax, jax.numpy as jnp
        from clubb_jax.src.Radiation.BUGSrad.bugs_rad import bugs_rad
        rng = np.random.default_rng(1); ncol, nlm = 1, 40
        pl2 = jnp.asarray(np.cumsum(15.0 + 10.0 * rng.random((ncol, nlm + 1)), axis=1) + 1.0)
        dpl = pl2[:, 1:] - pl2[:, :-1]; ppl = 0.5 * (pl2[:, :-1] + pl2[:, 1:])
        tl0 = jnp.asarray(220.0 + 70.0 * rng.random((ncol, nlm))); ts = jnp.asarray(290.0 * np.ones(ncol))
        ql = jnp.asarray(1e-3 * rng.random((ncol, nlm))); o3 = jnp.asarray(1e-6 * rng.random((ncol, nlm)))
        qcwl0 = jnp.asarray(np.where(rng.random((ncol, nlm)) > 0.5, 1e-4, 0.0)); qcil = jnp.zeros((ncol, nlm))
        acld = jnp.asarray(np.where(np.asarray(qcwl0) > 0, 1.0, 0.0))
        amu0 = jnp.asarray([0.5]); slr = jnp.ones(ncol); alb = jnp.asarray(0.2 * np.ones(ncol))
    
        def loss(tl, qcwl):
            r = bugs_rad(pl2, ppl, dpl, tl, ql, qcwl, qcil, o3, ts, amu0, slr, alb, alb, alb, alb, acld, s0=1367.0)
            return jnp.sum(r['fulw'][:, 0]) + jnp.sum(r['asl'])
    
>       g_t, g_q = jax.grad(loss, argnums=(0, 1))(tl0, qcwl0)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py:691: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py:688: in loss
    r = bugs_rad(pl2, ppl, dpl, tl, ql, qcwl, qcil, o3, ts, amu0, slr, alb, alb, alb, alb, acld, s0=1367.0)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/bugs_rad.py:62: in bugs_rad
    fdlw, fulw, fdlwcl, fulwcl = bugs_lwr(ts, ppl, dpl, tl, rmix, cwrho, cirho, o3mix, pl2,
clubb_jax/src/Radiation/BUGSrad/bugs_lwr.py:77: in bugs_lwr
    tg, hk = gases(ib, ig, dp, tt, rmix, o3mix, umco2, umch4, umn2o, pkd, ip1, ip2, pp)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd.py:108: in gases
    T = tables()
        ^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:102: in tables
    _TABLES = load_tables()
              ^^^^^^^^^^^^^
clubb_jax/src/Radiation/BUGSrad/gases_ckd_data.py:64: in load_tables
    for stmt in _logical_lines(os.path.normpath(_DATA_H)):
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

path = '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'

    def _logical_lines(path):
        """Strip comments + #directives, join `&`-continued lines into logical statements."""
        out, buf = [], ''
>       for raw in open(path):
                   ^^^^^^^^^^
E       FileNotFoundError: [Errno 2] No such file or directory: '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'
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/src/Radiation/BUGSrad/gases_ckd_data.py:39: FileNotFoundError
- generated xml file: /home/jenkins/workspace/clubb_branch_jax@2/output/tests/pytests/jax/auto_llm_generated_pytests/test_bugsrad.xml -
============================= slowest 15 durations =============================
5.76s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_bugs_rad_differentiable
4.46s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_bugs_rad
4.46s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_bugs_lwr
1.94s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_bugsrad_driver
1.91s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_cloudg_vs_fortran_replica
1.88s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_two_rt_lw_vs_fortran_replica
1.64s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_gases_ckd_helpers_vs_fortran_replica
1.61s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_gascon_vs_fortran_replica
1.43s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_two_rt_sw_vs_fortran_replica
0.96s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_planck_vs_fortran_replica
0.76s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_bugs_swr
0.71s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_rayle_vs_fortran_replica
0.44s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_comscp_vs_fortran_replica
0.19s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_newexp_vs_fortran_replica
0.08s call     clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_bugsrad_radiation_dispatch
=========================== short test summary info ============================
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_gases_ckd_data_parser - FileNotFoundError: [Errno 2] No such file or directory: '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_gases_dispatch_vs_fortran_replica - FileNotFoundError: [Errno 2] No such file or directory: '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_bugs_lwr - FileNotFoundError: [Errno 2] No such file or directory: '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_bugs_swr - FileNotFoundError: [Errno 2] No such file or directory: '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_bugs_rad - FileNotFoundError: [Errno 2] No such file or directory: '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'
FAILED clubb_jax/pytests/auto_llm_generated_pytests/test_bugsrad.py::test_bugsrad_driver - FileNotFoundError: [Errno 2] No such file or directory: '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'
--------------------
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_bugsrad.py::test_bugsrad_radiation_dispatch - TypeError: Error interpreting argument to <function advance_clubb_radiation at 0x727c3a173a60> as an abstract array. The problematic value is of type <class 'str'> and was passed to the function at path args[0]['cfg']['rad_scheme'].
This typically means that a jit-wrapped function was called with a non-array argument, and this argument was not marked as static using the static_argnums or static_argnames parameters of jax.jit.
--------------------
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_bugsrad.py::test_bugs_rad_differentiable - FileNotFoundError: [Errno 2] No such file or directory: '/home/jenkins/workspace/clubb_branch_jax@2/clubb_release/src/Radiation/BUGSrad/gases_ckd_data.h'
--------------------
For simplicity, JAX has removed its internal frames from the traceback of the following exception. Set JAX_TRACEBACK_FILTERING=off to include these.
========================= 8 failed, 9 passed in 29.28s =========================
JAX pytest module failed: auto_llm_generated_pytests/test_bugsrad.py (exit 1)
JAX pytest module: auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_branch_jax@2/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_branch_jax@2
configfile: pytest.ini
collecting ... collected 5 items

clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py::test_f2py_oracle PASSED [ 20%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py::test_round_trip PASSED [ 40%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py::test_bound PASSED [ 60%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py::test_smooth_corr_quotient_f2py PASSED [ 80%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py::test_differentiable PASSED [100%]

- generated xml file: /home/jenkins/workspace/clubb_branch_jax@2/output/tests/pytests/jax/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.xml -
============================= slowest 15 durations =============================
1.36s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py::test_round_trip
1.34s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py::test_differentiable
1.22s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py::test_f2py_oracle
0.64s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_corrs_binormal.py::test_smooth_corr_quotient_f2py

(11 durations < 0.005s hidden.  Use -vv to show these durations.)
============================== 5 passed in 5.40s ===============================
JAX pytest module: auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_branch_jax@2/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_branch_jax@2
configfile: pytest.ini
collecting ... collected 9 items

clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_both_precip_preserves_mean_and_variance PASSED [ 11%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_rico_params_non_emergency PASSED [ 22%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_root_sign_selection PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_emergency_preserves_mean PASSED [ 44%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_single_component_branches PASSED [ 55%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_no_precip_and_differentiable PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_compute_mean_stdev_columns PASSED [ 77%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_norm_transform_matches_L2N PASSED [ 88%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_orchestration_differentiable PASSED [100%]

- generated xml file: /home/jenkins/workspace/clubb_branch_jax@2/output/tests/pytests/jax/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.xml -
============================= slowest 15 durations =============================
2.78s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_orchestration_differentiable
2.27s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_no_precip_and_differentiable
2.04s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_both_precip_preserves_mean_and_variance
1.81s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_compute_mean_stdev_columns
0.26s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_norm_transform_matches_L2N
0.02s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_single_component_branches
0.01s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_root_sign_selection
0.01s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_rico_params_non_emergency
0.01s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_comp_mu_sigma_hm.py::test_emergency_preserves_mean

(6 durations < 0.005s hidden.  Use -vv to show these durations.)
============================== 9 passed in 9.82s ===============================
JAX pytest module: auto_llm_generated_pytests/test_calc_corr_norm_cholesky.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_branch_jax@2/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_branch_jax@2
configfile: pytest.ini
collecting ... collected 3 items

clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_norm_cholesky.py::test_reconstruction_and_structure PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_norm_cholesky.py::test_adjustments_and_selection PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_norm_cholesky.py::test_differentiable PASSED [100%]

- generated xml file: /home/jenkins/workspace/clubb_branch_jax@2/output/tests/pytests/jax/auto_llm_generated_pytests/test_calc_corr_norm_cholesky.xml -
============================= slowest 15 durations =============================
3.67s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_norm_cholesky.py::test_differentiable
2.85s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_norm_cholesky.py::test_reconstruction_and_structure
0.05s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_norm_cholesky.py::test_adjustments_and_selection

(6 durations < 0.005s hidden.  Use -vv to show these durations.)
============================== 3 passed in 7.29s ===============================
JAX pytest module: auto_llm_generated_pytests/test_calc_corr_w_hm_n.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_branch_jax@2/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_branch_jax@2
configfile: pytest.ini
collecting ... collected 4 items

clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_w_hm_n.py::test_round_trip PASSED [ 25%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_w_hm_n.py::test_branches_vs_numpy PASSED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_w_hm_n.py::test_clamp PASSED [ 75%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_w_hm_n.py::test_differentiable PASSED [100%]

- generated xml file: /home/jenkins/workspace/clubb_branch_jax@2/output/tests/pytests/jax/auto_llm_generated_pytests/test_calc_corr_w_hm_n.xml -
============================= slowest 15 durations =============================
0.85s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_w_hm_n.py::test_differentiable
0.42s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_w_hm_n.py::test_round_trip
0.33s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_corr_w_hm_n.py::test_branches_vs_numpy

(9 durations < 0.005s hidden.  Use -vv to show these durations.)
============================== 4 passed in 2.19s ===============================
JAX pytest module: auto_llm_generated_pytests/test_calc_ice_cloud_frac_component.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_branch_jax@2/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_branch_jax@2
configfile: pytest.ini
collecting ... collected 4 items

clubb_jax/pytests/auto_llm_generated_pytests/test_calc_ice_cloud_frac_component.py::test_below_freezing_closed_form_and_mc PASSED [ 25%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_ice_cloud_frac_component.py::test_above_freezing_returns_cf_liq PASSED [ 50%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_ice_cloud_frac_component.py::test_truncation_limits PASSED [ 75%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_ice_cloud_frac_component.py::test_grad_finite PASSED [100%]

- generated xml file: /home/jenkins/workspace/clubb_branch_jax@2/output/tests/pytests/jax/auto_llm_generated_pytests/test_calc_ice_cloud_frac_component.xml -
============================= slowest 15 durations =============================
3.38s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_ice_cloud_frac_component.py::test_below_freezing_closed_form_and_mc
0.79s call     clubb_jax/pytests/auto_llm_generated_pytests/test_calc_ice_cloud_frac_component.py::test_grad_finite

(10 durations < 0.005s hidden.  Use -vv to show these durations.)
============================== 4 passed in 4.72s ===============================
JAX pytest module: auto_llm_generated_pytests/test_calc_liquid_cloud_frac_component.py
============================= test session starts ==============================
platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 -- /home/jenkins/workspace/clubb_branch_jax@2/.venv-jax/bin/python
cachedir: .pytest_cache
rootdir: /home/jenkins/workspace/clubb_branch_jax@2
configfile: pytest.ini
collecting ... collected 3 items

clubb_jax/pytests/auto_llm_generated_pytests/test_calc_liquid_cloud_frac_component.py::test_closed_form_and_monte_carlo PASSED [ 33%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_liquid_cloud_frac_component.py::test_truncation_limits PASSED [ 66%]
clubb_jax/pytests/auto_llm_generated_pytests/test_calc_liquid_cloud_frac_component.py::test_grad_finite Aborted by Gunther Huebler
Sending interrupt signal to process
Terminated
script returned exit code 143
[Pipeline] }
[Pipeline] // catchError
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Full timestep gradients)
Stage "Full timestep gradients" skipped due to earlier failure(s)
[Pipeline] getContext
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Rico microphysics oracle)
Stage "Rico microphysics oracle" skipped due to earlier failure(s)
[Pipeline] getContext
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Expected failure test)
Stage "Expected failure test" skipped due to earlier failure(s)
[Pipeline] getContext
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Jax vs Fortran: standard stats)
Stage "Jax vs Fortran: standard stats" skipped due to earlier failure(s)
[Pipeline] getContext
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Run Jax Python vs Fortran cases w varying flags)
Stage "Run Jax Python vs Fortran cases w varying flags" skipped due to earlier failure(s)
[Pipeline] getContext
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Declarative: Post Actions)
[Pipeline] junit
Recording test results
[Checks API] No suitable checks publisher found.
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // withEnv
[Pipeline] }
[Pipeline] // withEnv
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
org.jenkinsci.plugins.workflow.actions.ErrorAction$ErrorId: c91870ed-b0f4-449b-9b72-3be1971664dd
Finished: ABORTED