firecrown.fctools.measurement_compatibility =========================================== .. py:module:: firecrown.fctools.measurement_compatibility .. autoapi-nested-parse:: Tool for analyzing measurement compatibility in Firecrown. This tool provides insights into which measurement pairs are compatible for real-space and harmonic-space two-point correlation functions. Useful for understanding test fixture parameterization and debugging measurement combination issues. Physical Examples: Compatible: Galaxy counts × CMB convergence (galaxy-CMB lensing) Compatible: Galaxy shear × Galaxy counts (galaxy-galaxy lensing) Incompatible: ξ₊ × ξ₋ (different correlation function components) Incompatible: E-mode shear in real space (harmonic-space only) Attributes ---------- .. autoapisummary:: firecrown.fctools.measurement_compatibility.app Classes ------- .. autoapisummary:: firecrown.fctools.measurement_compatibility.Space Functions --------- .. autoapisummary:: firecrown.fctools.measurement_compatibility.discover_measurements_by_space firecrown.fctools.measurement_compatibility.generate_compatible_pairs firecrown.fctools.measurement_compatibility.print_measurements_by_space firecrown.fctools.measurement_compatibility.print_compatible_pairs firecrown.fctools.measurement_compatibility.print_efficiency_gains firecrown.fctools.measurement_compatibility.print_summary_stats firecrown.fctools.measurement_compatibility.main Module Contents --------------- .. py:class:: Space Bases: :py:obj:`str`, :py:obj:`enum.Enum` .. autoapi-inheritance-diagram:: firecrown.fctools.measurement_compatibility.Space :parts: 1 Enum for space types. .. py:attribute:: REAL :value: 'real' .. py:attribute:: HARMONIC :value: 'harmonic' .. py:attribute:: BOTH :value: 'both' .. py:function:: discover_measurements_by_space() Discover all measurements that support real/harmonic space. Returns: Tuple of (real_measurements, harmonic_measurements) .. py:function:: generate_compatible_pairs(measurements, compatibility_func) Generate all valid measurement pairs for a given compatibility function. Args: measurements: List of measurements to test combinations of compatibility_func: Function to test compatibility Returns: List of valid (measurement1, measurement2) tuples .. py:function:: print_measurements_by_space(console, real_measurements, harmonic_measurements, verbose = False) Print measurements categorized by space support. .. py:function:: print_compatible_pairs(console, space_name, pairs, verbose = False) Print compatible measurement pairs for a given space. .. py:function:: print_efficiency_gains(console, real_measurements, real_pairs, harmonic_pairs) Print efficiency improvements from using compatible pairs. .. py:function:: print_summary_stats(console, real_measurements, harmonic_measurements, real_pairs, harmonic_pairs) Print summary statistics. .. py:data:: app .. py:function:: main(verbose = typer.Option(False, '--verbose', '-v', help='Show detailed list of measurements and pairs'), space = typer.Option(Space.BOTH, '--space', case_sensitive=False, help='Which space to analyze'), stats_only = typer.Option(False, '--stats-only', help='Show only summary statistics')) Analyze measurement compatibility for Firecrown two-point functions. This tool discovers all measurement types and analyzes which combinations are compatible for real-space and harmonic-space two-point correlation functions. It shows efficiency improvements from using pre-filtered measurement pairs instead of runtime compatibility checks. Compatible correlations include: ✅ Galaxy counts × Galaxy counts (galaxy clustering) ✅ Galaxy shear × Galaxy shear (cosmic shear) ✅ Galaxy counts × Galaxy shear (galaxy-galaxy lensing) ✅ CMB convergence × Galaxy counts (galaxy-CMB lensing) ✅ Cluster counts × Galaxy counts (cluster-galaxy correlation) Incompatible combinations: ❌ ξ₊ × ξ₋ (different shear correlation components) ❌ SHEAR_T × SHEAR_T (T-mode auto-correlation not measured) ❌ E-mode shear in real space (harmonic-space only) Examples: python -m firecrown.fctools.measurement_compatibility --verbose python -m firecrown.fctools.measurement_compatibility --space real python -m firecrown.fctools.measurement_compatibility --stats-only