Skip to main content

MCGT core package

Project description

PyPI Python License: MIT CI

CI

Modèle de Courbure Gravitationnelle Temporelle (MCGT)

Résumé

MCGT est un corpus de 10 chapitres (conceptuel + détails) accompagné d’un ensemble de scripts, données, figures et manifestes pour assurer la reproductibilité complète (génération des données, tracés, contrôles de cohérence). Ce README dresse l’index des ressources, précise les points d’entrée (runbook, Makefile, configs) et documente les conventions.

Sommaire

  1. Arborescence du projet
  2. Contenu des chapitres (LaTeX)
  3. Configurations & package Python
  4. Données (zz-data/)
  5. Scripts (zz-scripts/)
  6. Figures (zz-figures/)
  7. Manifests & repro (zz-manifests/, README-REPRO.md, RUNBOOK.md)
  8. Conventions & styles (conventions.md)
  9. Environnements & dépendances (requirements.txt, environment.yml)
  10. Commandes utiles (Makefile) & contrôle de cohérence
  11. Licence / Contact
  12. Historique / Notes

1) Arborescence du projet

Racine :

  • main.tex — Document LaTeX principal (compile les 10 chapitres).

  • references.bib — Bibliographie BibTeX.

  • README.md — Présent fichier d’accueil.

  • README-REPRO.md — Guide de reproductibilité pas-à-pas.

  • RUNBOOK.md — Procédures opératoires (exécution standard / QA).

  • Makefile — Cibles de génération (données, figures, PDF, QA).

  • setup.py — (si packaging local du module mcgt).

  • requirements.txt — Dépendances Python (pip).

  • environment.yml — Environnement Conda (optionnel).

  • conventions.md — Convention de nommage / unités / style (référence). Chapitres (dossiers LaTeX) :

  • 01-introduction-applications/

  • 02-validation-chronologique/

  • 03-stabilite-fR/

  • 04-invariants-adimensionnels/

  • 05-nucleosynthese-primordiale/

  • 06-rayonnement-cmb/

  • 07-perturbations-scalaires/

  • 08-couplage-sombre/

  • 09-phase-ondes-gravitationnelles/

  • 10-monte-carlo-global-8d/ Code source (package) :

  • mcgt/ — Module Python (API interne).

    • scalar_perturbations.py
    • phase.py
    • init.py
    • backends/ref_phase.py Configurations :
  • zz-configuration/

    • mcgt-global-config.ini — Configuration globale (référence).
    • camb_exact_plateau.ini
    • gw_phase.ini
    • scalar_perturbations.ini
    • pdot_plateau_vs_z.dat
    • meta_template.json — (référence croisée avec zz-manifests/) Données :
  • zz-data/chapter{01..10}/ — Données structurées par chapitre (CSV/DAT/JSON). Figures :

  • zz-figures/chapter{01..10}/ — Figures générées (PNG). Scripts & outils :

  • zz-scripts/chapter{01..10}/ — Scripts de génération & tracé.

  • zz-scripts/chapter07/tests/ — Tests dédiés chapitre 7.

  • zz-scripts/chapter03/utils/ — Utilitaires (ex. conversion jalons).

  • zz-scripts/chapter07/utils/ — Utilitaires (k-grid, toy_model).

  • zz-scripts/chapter08/utils/ — Utilitaires (extractions BAO/SN).

  • zz-scripts/manifest_tools/ — Outils manifeste.

    • populate_manifest.py, verify_manifest.py Manifests & diagnostics :
  • zz-manifests/

    • manifest_master.json
    • manifest_publication.json (et éventuellement .bak)
    • manifest_report.json
    • meta_template.json
    • README_manifest.md
    • diag_consistency.py

2) Contenu des chapitres (LaTeX)

Chaque dossier de chapitre contient :

  • _conceptuel.tex

  • _details.tex (ou _calibration_conceptuel.tex pour le chap. 1)

  • CHAPTERXX_GUIDE.txt (notes, exigences, jalons spécifiques) Liste :

  • Chapitre 1 – Introduction conceptuelle (01-introduction-applications/)

    • 01_introduction_conceptuel.tex
    • 01_applications_calibration_conceptuel.tex
    • CHAPTER01_GUIDE.txt
  • Chapitre 2 – Validation chronologique (02-validation-chronologique/)

    • 02_validation_chronologique_conceptuel.tex
    • 02_validation_chronologique_details.tex
    • CHAPTER02_GUIDE.txt
  • Chapitre 3 – Stabilité f(R) (03-stabilite-fR/)

    • 03_stabilite_fR_conceptuel.tex
    • 03_stabilite_fR_details.tex
    • CHAPTER03_GUIDE.txt
  • Chapitre 4 – Invariants adimensionnels (04-invariants-adimensionnels/)

    • 04_invariants_adimensionnels_conceptuel.tex
    • 04_invariants_adimensionnels_details.tex
    • CHAPTER04_GUIDE.txt
  • Chapitre 5 – Nucléosynthèse primordiale (05-nucleosynthese-primordiale/)

    • 05_nucleosynthese_primordiale_conceptuel.tex
    • 05_nucleosynthese_primordiale_details.tex
    • CHAPTER05_GUIDE.txt
  • Chapitre 6 – Rayonnement CMB (06-rayonnement-cmb/)

    • 06_cmb_conceptuel.tex
    • 06_cmb_details.tex
    • CHAPTER06_GUIDE.txt
  • Chapitre 7 – Perturbations scalaires (07-perturbations-scalaires/)

    • 07_perturbations_scalaires_conceptuel.tex
    • 07_perturbations_scalaires_details.tex
    • CHAPTER07_GUIDE.txt
  • Chapitre 8 – Couplage sombre (08-couplage-sombre/)

    • 08_couplage_sombre_conceptuel.tex
    • 08_couplage_sombre_details.tex
    • CHAPTER08_GUIDE.txt
  • Chapitre 9 – Phase ondes gravitationnelles (09-phase-ondes-gravitationnelles/)

    • 09_phase_ondes_grav_conceptuel.tex
    • 09_phase_ondes_grav_details.tex
    • CHAPTER09_GUIDE.txt
  • Chapitre 10 – Monte Carlo global 8D (10-monte-carlo-global-8d/)

    • 10_monte_carlo_global_conceptuel.tex
    • 10_monte_carlo_global_details.tex
    • CHAPTER10_GUIDE.txt

3) Configurations & package Python

  • zz-configuration/mcgt-global-config.ini : paramètres transverses (chemins de données/figures, tolérances, seeds, options graphiques, etc.).
  • zz-configuration/*.ini spécifiques (ex. camb_exact_plateau.ini, scalar_perturbations.ini, gw_phase.ini).
  • mcgt/ : API Python interne (ex. calculs de phase, solveurs de perturbations, backends de référence). mcgt/backends/ref_phase.py fournit la phase de ref.

4) Données (zz-data/)

Organisation par chapitre, exemples (liste non exhaustive) :

  • zz-data/chapter01/

    • 01_optimized_data.csv
    • 01_optimized_data_and_derivatives.csv
    • 01_P_vs_T.dat
    • 01_initial_grid_data.dat
    • 01_P_derivative_initial.csv
    • 01_P_derivative_optimized.csv
    • 01_relative_error_timeline.csv
    • 01_timeline_milestones.csv
  • zz-data/chapter02/

    • 02_optimal_parameters.json, 02_primordial_spectrum_spec.json
    • 02_P_vs_T_grid_data.dat, 02_P_derivative_data.dat
    • 02_As_ns_vs_alpha.csv, 02_P_R_sampling.csv
    • 02_timeline_milestones.csv, 02_relative_error_timeline.csv, 02_milestones_meta.csv
  • zz-data/chapter03/

    • 03_fR_stability_meta.json
    • 03_fR_stability_data.csv, 03_fR_stability_domain.csv, 03_fR_stability_boundary.csv
    • 03_ricci_fR_vs_T.csv, 03_ricci_fR_vs_z.csv, 03_ricci_fR_milestones.csv
  • zz-data/chapter04/

    • 04_dimensionless_invariants.csv
    • 04_P_vs_T.dat
  • zz-data/chapter05/

    • 05_bbn_params.json, 05_bbn_grid.csv
    • 05_bbn_data.csv, 05_bbn_invariants.csv
    • 05_chi2_bbn_vs_T.csv, 05_dchi2_vs_T.csv
    • 05_bbn_milestones.csv
  • zz-data/chapter06/

    • 06_params_cmb.json
    • 06_cls_spectrum.dat, 06_cls_spectrum_lcdm.dat
    • 06_cmb_full_results.csv, 06_cmb_chi2_scan2D.csv
    • 06_delta_cls.csv, 06_delta_cls_relative.csv
    • 06_delta_rs_scan.csv, 06_delta_rs_scan2D.csv, 06_delta_rs_scan_full.csv
    • 06_delta_Tm_scan.csv, 06_hubble_mcgt.dat
  • zz-data/chapter07/

    • 07_perturbations_params.json, 07_perturbations_meta.json
    • 07_cs2_matrix.csv, 07_delta_phi_matrix.csv
    • 07_dcs2_vs_k.csv, 07_ddelta_phi_vs_k.csv
    • 07_perturbations_domain.csv, 07_perturbations_boundary.csv
    • 07_scalar_invariants.csv, 07_phase_run.csv
    • 07_perturbations_main_data.csv, 07_scalar_perturbations_results.csv
  • zz-data/chapter08/

    • 08_coupling_params.json, 08_chi2_scan2D.csv, 08_chi2_total_vs_q0.csv
    • 08_bao_data.csv, 08_pantheon_data.csv
    • 08_dv_theory_z.csv, 08_dv_theory_q0star.csv
    • 08_mu_theory_z.csv, 08_mu_theory_q0star.csv
    • 08_coupling_milestones.csv, 08_chi2_derivative.csv
  • zz-data/chapter09/

    • 09_metrics_phase.json, 09_comparison_milestones.csv (+ .meta.json, .flagged.csv)
    • 09_phases_imrphenom.csv (+ .meta.json)
    • 09_phases_mcgt.csv, 09_phases_mcgt_prepoly.csv
    • 09_phase_diff.csv, gwtc3_confident_parameters.json
  • zz-data/chapter10/

    • 10_mc_config.json
    • 10_mc_results.csv (+ variantes .circ.csv, .agg.csv, .circ.with_fpeak.csv)
    • 10_mc_samples.csv, 10_mc_milestones_eval.csv
    • 10_mc_best.json, 10_mc_best_bootstrap.json

5) Scripts (zz-scripts/)

Chaque chapitre dispose de générateurs de données generate_data_chapterXX.py et de traceurs plot_fig*.py. Exemples :

  • zz-scripts/chapter01/

    • generate_data_chapter01.py, plot_fig01_early_plateau.py, plot_fig02_logistic_calibration.py, plot_fig03_relative_error_timeline.py, plot_fig04_P_vs_T_evolution.py, plot_fig05_I1_vs_T.py, plot_fig06_P_derivative_comparison.py, requirements.txt
  • zz-scripts/chapter02/

    • generate_data_chapter02.py, primordial_spectrum.py, plot_fig00_spectrum.py, plot_fig01_P_vs_T_evolution.py, plot_fig02_calibration.py, plot_fig03_relative_errors.py, plot_fig04_pipeline_diagram.py, plot_fig05_FG_series.py, plot_fig06_alpha_fit.py, requirements.txt
  • zz-scripts/chapter03/

    • generate_data_chapter03.py, plot_fig01_fR_stability_domain.py, plot_fig02_fR_fRR_vs_f.py, plot_fig03_ms2_R0_vs_f.py, plot_fig04_fR_fRR_vs_f.py, plot_fig05_interpolated_milestones.py, plot_fig06_grid_quality.py, plot_fig07_ricci_fR_vs_z.py, plot_fig08_ricci_fR_vs_T.py, requirements.txt
    • utils/03_ricci_fR_milestones_enhanced.csv, utils/convert_milestones.py
  • zz-scripts/chapter04/

    • generate_data_chapter04.py, plot_fig01_invariants_schematic.py, plot_fig02_invariants_histogram.py, plot_fig03_invariants_vs_T.py, plot_fig04_relative_deviations.py, requirements.txt
  • zz-scripts/chapter05/

    • generate_data_chapter05.py, plot_fig01_bbn_reaction_network.py, plot_fig02_dh_model_vs_obs.py, plot_fig03_yp_model_vs_obs.py, plot_fig04_chi2_vs_T.py, requirements.txt
  • zz-scripts/chapter06/

    • generate_data_chapter06.py, generate_pdot_plateau_vs_z.py, plot_fig01_cmb_dataflow_diagram.py, plot_fig02_cls_lcdm_vs_mcgt.py, plot_fig03_delta_cls_relative.py, plot_fig04_delta_rs_vs_params.py, plot_fig05_delta_chi2_heatmap.py, run_camb_chapter06.bat, requirements.txt
  • zz-scripts/chapter07/

    • generate_data_chapter07.py, launch_scalar_perturbations_solver.py, launch_solver_chapter07.sh, plot_fig01_cs2_heatmap.py, plot_fig02_delta_phi_heatmap.py, plot_fig06_comparison.py, plot_fig03_invariant_I1.py, plot_fig04_dcs2_vs_k.py, plot_fig05_ddelta_phi_vs_k.py, plot_fig07_invariant_I2.py, requirements.txt, tests/, utils/
  • zz-scripts/chapter08/

    • generate_data_chapter08.py, plot_fig01_chi2_total_vs_q0.py, plot_fig02_dv_vs_z.py, plot_fig03_mu_vs_z.py, plot_fig04_chi2_heatmap.py, plot_fig05_residuals.py, plot_fig06_normalized_residuals_distribution.py, plot_fig07_chi2_profile.py, requirements.txt, utils/cosmo.py, utils/coupling_example_model.py, utils/extract_bao_data.py, utils/extract_pantheon_plus_data.py, utils/generate_coupling_milestones.py, utils/verify_z_grid.py
  • zz-scripts/chapter09/

    • generate_data_chapter09.py, extract_phenom_phase.py, generate_mcgt_raw_phase.py, opt_poly_rebranch.py, apply_poly_unwrap_rebranch.py, check_p95_methods.py, plot_fig01_phase_overlay.py, plot_fig02_residual_phase.py, plot_fig03_hist_absdphi_20_300.py, plot_fig04_absdphi_milestones_vs_f.py, plot_fig05_scatter_phi_at_fpeak.py, fetch_gwtc3_confident.py, flag_jalons.py, requirements.txt
  • zz-scripts/chapter10/

    • generate_data_chapter10.py, eval_primary_metrics_20_300.py, diag_phi_fpeak.py, add_phi_at_fpeak.py, inspect_topk_residuals.py, bootstrap_topk_p95.py, qc_wrapped_vs_unwrapped.py, recompute_p95_circular.py, regen_fig05_using_circp95.py, plot_fig01_iso_p95_maps.py, plot_fig02_scatter_phi_at_fpeak.py, plot_fig03_convergence_p95_vs_n.py, plot_fig03b_bootstrap_coverage_vs_n.py, plot_fig04_scatter_p95_recalc_vs_orig.py, plot_fig05_hist_cdf_metrics.py, plot_fig06_residual_map.py, plot_fig07_synthesis.py, check_metrics_consistency.py, update_manifest_with_hashes.py, requirements.txt
  • zz-scripts/manifest_tools/

    • populate_manifest.py, verify_manifest.py

6) Figures (zz-figures/)

Par chapitre : fig_.png (noms explicites, FR). Ex. chap.01 : fig_01_early_plateau.png, fig_02_logistic_calibration.png, fig_03_relative_error_timeline.png, fig_04_P_vs_T_evolution.png, fig_05_I1_vs_T.png, fig_06_P_derivative_comparison.png Ex. chap.06 : fig_01_cmb_dataflow_diagram.png, fig_02_cls_lcdm_vs_mcgt.png, fig_03_delta_cls_relative.png, fig_04_delta_rs_vs_params.png, fig_05_delta_chi2_heatmap.png Ex. chap.09 : fig_01_phase_overlay.png, fig_02_residual_phase.png, fig_03_hist_absdphi_20_300.png, fig_04_absdphi_milestones_vs_f.png, fig_05_scatter_phi_at_fpeak.png, p95_methods/.png

7) Manifests & repro

  • zz-manifests/manifest_master.json — inventaire complet (source maître).
  • zz-manifests/manifest_publication.json — sous-ensemble pour remise publique.
  • zz-manifests/manifest_report.json — rapport généré par diag_consistency.py.
  • zz-manifests/meta_template.json — gabarit de métadonnées (source maître).
  • zz-manifests/README_manifest.md — documentation manifeste.
  • zz-manifests/diag_consistency.py — diagnostic (présence/format/empreintes).
  • README-REPRO.md — procédure reproductible détaillée.
  • RUNBOOK.md — séquences d’exécution standard (pipeline). Note : un meta_template.json existe aussi sous zz-configuration/ (référence croisée). La version maître est celle de zz-manifests/.

8) Conventions & styles

  • conventions.md : normes de nommage (FR), unités (SI), précision numérique, format CSV/DAT/JSON, styles de figures, seuils de QA, sémantique des colonnes, règles pour jalons et classes (primaire/ordre2), etc.
  • Cohérence inter-chapitres : les paramètres transverses (p. ex. alpha, q0star, fenêtres de fréquences, ell_min/max, etc.) doivent être harmonisés via mcgt-global-config.ini et les JSON de paramètres par chapitre.

9) Environnements & dépendances

  • Python ≥ 3.10 recommandé. Installation (pip) : pip install -r requirements.txt Environnement Conda : conda env create -f environment.yml conda activate mcgt Chap. 9/10 : références d’onde (IMRPhenom) indiquées dans les métadonnées ; LALSuite peut être requis côté référence si régénération complète (voir RUNBOOK.md).

10) Commandes utiles & QA

Aide : make help Générer données d’un chapitre (ex. chap. 4) : make data-chapter N=4 Générer figures d’un chapitre : make figures-chapter N=4 Pipeline complet (données + figures) : make all Contrôle de cohérence manifest : python zz-manifests/diag_consistency.py --manifest zz-manifests/manifest_master.json --report zz-manifests/manifest_report.json Pour des validations supplémentaires :

  • JSON : python zz-schemas/validate_json.py <schema.json> <fichier.json>
  • CSV (tables) : python zz-schemas/validate_csv_table.py <table_schema.json> <fichier.csv>

11) Licence / Contact

  • Licence : à préciser (interne / publique).
  • Contact scientifique : responsable MCGT.
  • Contact technique : mainteneur des scripts / CI.

12) Historique / Notes

  • Harmonisation linguistique FR des noms de fichiers : les chemins et fichiers sont en anglais (conformément à l’arborescence), le texte de la documentation reste en français.
  • Les seuils QA (primaire/ordre2) sont documentés par chapitre (JSON/ini).
  • Les métriques et fenêtres (ex. [20,300] Hz pour chap. 9/10) sont consignées dans les JSON de paramètres et rappelées dans le runbook.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcgt_core-0.1.5.tar.gz (20.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcgt_core-0.1.5-py3-none-any.whl (15.4 kB view details)

Uploaded Python 3

File details

Details for the file mcgt_core-0.1.5.tar.gz.

File metadata

  • Download URL: mcgt_core-0.1.5.tar.gz
  • Upload date:
  • Size: 20.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for mcgt_core-0.1.5.tar.gz
Algorithm Hash digest
SHA256 0945465f5bc3d55a55c9f31b564ea33fc86bd3f836eb869a9207db36d1ba6e01
MD5 41b6c552b9bedb34df7e2f7e11247c3a
BLAKE2b-256 04317a2df48c3b1f8b2f492a4a90a9e9fa62559097b05f5da8d72fdfd5cee09d

See more details on using hashes here.

File details

Details for the file mcgt_core-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: mcgt_core-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 15.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for mcgt_core-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 57297bd151226f1e983e08713231bcabd3df404b5565e4199a083587e7ac8495
MD5 7a7e702bb53852813b6208da828ee779
BLAKE2b-256 37d45ab9aae597af9ec3529dd23ea7a79af642a4c842d87ea3d6d6e6126805e5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page