Skip to content

Changes

Started 3 mo 25 days ago
Took 16 sec on built-in
Updating python contract audit to better detect API arg list discrepancies from the underlying fortran arg lists. Also adding a temporary handoff file and improving the python api fix shortcut
( 1ba1f81 )
clubb_python_api/clubb_f2py.pyf clubb_jax/advance_clubb_core.py clubb_python_api/tests/test_call_tree_advance_core.py clubb_python_api/tests/test_call_tree_stats_accumulate.py clubb_jax/advance_clubb_to_end.py clubb_python_api/clubb_python/CLUBB_core/stats_clubb_utilities.py clubb_python_api/clubb_python/CLUBB_core/advance_clubb_core.py clubb_python_driver/advance_clubb_to_end.py clubb_python_api/f2py_fortran_wrappers/advance_xp3_module_wrapper.F90 clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py clubb_python_api/f2py_fortran_wrappers/advance_xp2_xpyp_module_wrapper.F90 clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py LLM_prompts/python_api_audit_handoff.md clubb_python_api/clubb_python/CLUBB_core/advance_xm_wpxp.py clubb_jax/clubb_case_initalization.py clubb_python_api/clubb_python/CLUBB_core/numerical_check.py clubb_python_api/tests/test_call_tree_advance_xp3.py clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90 clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py clubb_python_driver/clubb_case_initalization.py clubb_python_driver/advance_clubb_core.py clubb_python_api/f2py_fortran_wrappers/stats_clubb_utilities_wrapper.F90 clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py clubb_python_api/clubb_python/CLUBB_core/advance_xp3.py clubb_python_api/f2py_fortran_wrappers/advance_xm_wpxp_module_wrapper.F90 LLM_prompts/update_python_api_and_drivers.md clubb_python_api/tests/test_argument_contract_audit.py
Gunther Huebler at
Our argument_contract_audit.py script checks if the python_api matches the underlying fortran - this makes it more strict, and fixes many of the inconsistencies it found.
( 0da14a0 )
clubb_python_api/clubb_python/CLUBB_core/calc_pressure.py clubb_python_api/clubb_python/CLUBB_core/err_info_type_module.py clubb_python_api/clubb_python/prescribe_forcings.py clubb_python_api/tests/test_advance_core_subs.py clubb_python_api/clubb_python/CLUBB_core/parameters_tunable.py clubb_python_api/f2py_fortran_wrappers/sponge_layer_damping_wrapper.F90 clubb_python_api/clubb_python/CLUBB_core/remapping_module.py clubb_python_api/f2py_fortran_wrappers/radiation_module_wrapper.F90 clubb_python_api/clubb_python/CLUBB_core/pdf_closure.py clubb_python_api/clubb_python/CLUBB_core/skx_module.py clubb_python_api/clubb_python/CLUBB_core/corr_varnce_module.py clubb_python_api/clubb_python/CLUBB_core/stats_clubb_utilities.py clubb_python_api/clubb_python/CLUBB_core/new_pdf_main.py clubb_python_api/clubb_python/CLUBB_core/diffusion.py clubb_python_api/f2py_fortran_wrappers/new_hybrid_pdf_wrapper.F90 clubb_python_api/clubb_python/CLUBB_core/advance_windm_edsclrm.py clubb_python_api/f2py_fortran_wrappers/new_tsdadg_pdf_wrapper.F90 clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf.py clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py clubb_python_api/clubb_python/CLUBB_core/advance_xp3.py clubb_python_api/clubb_python/CLUBB_core/pdf_parameter_module.py clubb_python_api/f2py_fortran_wrappers/ly93_pdf_wrapper.F90 clubb_python_api/tests/test_call_tree_corr_varnce_module.py clubb_python_api/clubb_python/CLUBB_core/grid_class.py clubb_python_api/tests/test_argument_contract_audit.py clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py clubb_python_api/clubb_python/CLUBB_core/mono_flux_limiter.py clubb_python_api/clubb_f2py.pyf clubb_python_api/clubb_python/CLUBB_core/advance_helper.py clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py clubb_python_api/clubb_python/CLUBB_core/saturation.py clubb_python_api/clubb_python/CLUBB_core/mixing_length.py clubb_python_api/clubb_python/CLUBB_core/new_pdf.py clubb_python_api/clubb_python/CLUBB_core/new_tsdadg_pdf.py clubb_python_api/tests/test_call_tree_splat.py clubb_python_api/clubb_python/CLUBB_core/matrix_solver_wrapper.py clubb_python_api/f2py_fortran_wrappers/adg1_adg2_3d_luhar_pdf_wrapper.F90 clubb_python_api/clubb_python/CLUBB_core/ly93_pdf.py clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py LLM_prompts/python_api_audit_handoff.md clubb_python_api/clubb_python/CLUBB_core/turbulent_adv_pdf.py clubb_python_api/tests/test_call_tree_turbulent_adv_pdf.py clubb_python_api/clubb_python/CLUBB_core/sigma_sqd_w_module.py clubb_python_api/clubb_python/CLUBB_core/sponge_layer_damping.py clubb_python_api/clubb_python/CLUBB_core/numerical_check.py clubb_python_api/tests/test_call_tree_mixing_length.py clubb_python_api/clubb_python/CLUBB_core/advance_clubb_core.py clubb_python_api/clubb_python/CLUBB_core/adg1_adg2_3d_luhar_pdf.py clubb_python_api/clubb_python/CLUBB_core/advance_xm_wpxp.py clubb_python_api/f2py_fortran_wrappers/new_pdf_wrapper.F90 clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf_main.py clubb_python_api/clubb_python/CLUBB_core/sfc_varnce_module.py clubb_python_driver/radiation.py clubb_python_api/clubb_python/CLUBB_core/penta_bicgstab_solver.py clubb_python_api/clubb_python/CLUBB_core/clip_explicit.py clubb_python_api/clubb_python/CLUBB_core/pos_definite_module.py clubb_python_api/tests/test_call_tree_numerical_check.py clubb_python_api/clubb_python/radiation.py
Gunther Huebler at
advance_clubb_core.py cleanup and removing strange compat_kwargs usages that seem like artifacts of laziness
( e73f5d1 )
clubb_python_api/clubb_python/CLUBB_core/ly93_pdf.py clubb_python_api/f2py_fortran_wrappers/pdf_closure_module_wrapper.F90 clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py clubb_python_api/tests/test_init_pressure.py clubb_python_api/tests/test_call_tree_advance_xp3.py clubb_python_driver/advance_clubb_to_end.py clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py clubb_python_driver/advance_clubb_core.py clubb_python_api/tests/test_call_tree_mono_flux.py clubb_python_api/clubb_python/CLUBB_core/diffusion.py clubb_python_api/tests/test_call_tree_new_tsdadg.py clubb_python_api/clubb_python/CLUBB_core/err_info_type_module.py clubb_python_api/clubb_python/CLUBB_core/matrix_solver_wrapper.py clubb_python_api/clubb_python/CLUBB_core/mixing_length.py clubb_python_api/clubb_python/CLUBB_core/calc_pressure.py clubb_python_api/tests/test_call_tree_transport.py clubb_jax/clubb_case_initalization.py clubb_python_api/clubb_python/CLUBB_core/advance_clubb_core.py clubb_python_api/tests/test_call_tree_mixing_length.py clubb_python_api/f2py_fortran_wrappers/advance_wp2_wp3_module_wrapper.F90 clubb_python_api/tests/test_call_tree_new_pdf.py clubb_python_api/clubb_python/prescribe_forcings.py clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py clubb_python_api/tests/test_advance_core_subs.py clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py clubb_python_api/clubb_python/CLUBB_core/pdf_parameter_module.py clubb_python_api/clubb_python/CLUBB_core/remapping_module.py clubb_python_api/clubb_python/CLUBB_core/new_tsdadg_pdf.py clubb_python_api/tests/test_call_tree_advance_core.py clubb_python_api/tests/test_call_tree_stats_accumulate.py clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py clubb_python_api/tests/test_call_tree_luhar.py clubb_python_api/tests/test_call_tree_skx.py clubb_python_api/tests/test_call_tree_new_hybrid_pdf.py clubb_python_api/clubb_f2py.pyf clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf_main.py clubb_python_api/tests/test_udt_return_contract.py clubb_python_api/f2py_fortran_wrappers/new_hybrid_pdf_main_wrapper.F90 clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py clubb_python_api/clubb_python/CLUBB_core/sponge_layer_damping.py clubb_python_api/clubb_python/radiation.py clubb_python_api/clubb_python/CLUBB_core/adg1_adg2_3d_luhar_pdf.py clubb_python_api/tests/test_call_tree_sponge.py clubb_python_api/clubb_python/CLUBB_core/new_pdf.py clubb_python_api/f2py_fortran_wrappers/mixing_length_wrapper.F90 clubb_python_api/clubb_python/clubb_api.py clubb_python_api/clubb_python/CLUBB_core/pdf_closure.py clubb_python_api/clubb_python/CLUBB_core/advance_helper.py clubb_python_api/tests/test_call_tree_precipitation_fraction.py clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf.py clubb_python_api/clubb_python/CLUBB_core/skx_module.py clubb_python_api/tests/test_stats.py clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py clubb_python_api/tests/test_call_tree_ly93.py clubb_python_driver/clubb_case_initalization.py clubb_python_api/tests/test_call_tree_remap.py
Gunther Huebler at
Improving audit script even more, fixing issues it found. Also making advance_clubb_core.py nice and making an LLM shortcut for how to repeat the process
( 1fa8fde )
clubb_python_api/tests/test_argument_contract_audit.py clubb_python_api/clubb_python/CLUBB_core/advance_xp2_xpyp.py clubb_python_api/tests/test_call_tree_luhar.py clubb_python_api/clubb_python/CLUBB_core/mono_flux_limiter.py clubb_jax/advance_clubb_core.py clubb_python_api/clubb_python/CLUBB_core/pdf_parameter_module.py clubb_python_api/clubb_python/CLUBB_core/loss_driver.py clubb_python_api/clubb_python/CLUBB_core/new_hybrid_pdf_main.py clubb_python_api/clubb_python/CLUBB_core/matrix_solver_wrapper.py clubb_python_api/clubb_python/clubb_api.py clubb_python_api/tests/test_call_tree_advance_xp2_xpyp.py clubb_python_api/clubb_f2py.pyf clubb_python_api/tests/test_call_tree_advance_xm_wpxp.py clubb_python_api/clubb_python/CLUBB_core/error_code.py clubb_python_api/clubb_python/CLUBB_core/parameters_tunable.py clubb_python_api/tests/test_call_tree_matrix_solver_wrapper.py clubb_jax/advance_clubb_to_end.py clubb_python_api/clubb_python/CLUBB_core/remapping_module.py clubb_python_api/tests/test_stats.py clubb_python_api/tests/test_advance_core_subs.py clubb_python_api/clubb_python/CLUBB_core/stats_netcdf.py clubb_python_api/clubb_python/CLUBB_core/advance_clubb_core.py clubb_python_driver/advance_clubb_to_end.py clubb_python_api/clubb_python/CLUBB_core/pdf_closure.py clubb_python_api/tests/test_call_tree_advance_xp3.py clubb_python_api/clubb_python/CLUBB_core/new_pdf_main.py clubb_python_driver/advance_clubb_core.py clubb_python_api/clubb_python/CLUBB_core/advance_wp2_wp3.py LLM_prompts/SHORTCUTS.md clubb_python_api/clubb_python/CLUBB_core/diffusion.py clubb_python_api/clubb_python/CLUBB_core/adg1_adg2_3d_luhar_pdf.py LLM_prompts/port_underlying_fortran_to_other_languages.md clubb_python_api/clubb_python/CLUBB_core/mixing_length.py clubb_jax/clubb_case_initalization.py clubb_python_api/tests/test_call_tree_pdf_closure_driver.py clubb_python_api/f2py_fortran_wrappers/clubb_loss_driver_wrapper.F90 clubb_python_api/tests/test_call_tree_mono_flux.py clubb_python_api/tests/test_call_tree_precipitation_fraction.py clubb_python_api/tests/argument_list_enforcer/argument_contract_audit.py clubb_python_api/tests/test_call_tree_advance_windm_edsclrm.py clubb_python_api/clubb_python/prescribe_forcings.py clubb_python_api/tests/test_call_tree_advance_wp2_wp3.py clubb_python_api/tests/test_call_tree_mixing_length.py clubb_python_api/tests/test_call_tree_new_pdf.py clubb_python_driver/clubb_case_initalization.py clubb_python_api/tests/test_call_tree_stats_accumulate.py clubb_python_api/clubb_python/CLUBB_core/sponge_layer_damping.py
Gunther Huebler at