diff --git a/examples/des_y1_3x2pt/des_y1_cosmic_shear_HMIA.py b/examples/des_y1_3x2pt/des_y1_cosmic_shear_HMIA.py index 8644bbf6c..df131fd00 100644 --- a/examples/des_y1_3x2pt/des_y1_cosmic_shear_HMIA.py +++ b/examples/des_y1_3x2pt/des_y1_cosmic_shear_HMIA.py @@ -5,10 +5,10 @@ import firecrown.likelihood.weak_lensing as wl from firecrown.likelihood import TwoPoint, ConstGaussian, Likelihood -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap from firecrown.modeling_tools import ModelingTools from firecrown.likelihood.factories import load_sacc_data -from firecrown.ccl_factory import CCLFactory +from firecrown.modeling_tools import CCLFactory from firecrown.updatable import get_default_params_map from firecrown.metadata_types import TracerNames diff --git a/examples/des_y1_3x2pt/des_y1_cosmic_shear_TATT.py b/examples/des_y1_3x2pt/des_y1_cosmic_shear_TATT.py index b201a6563..bd01aea83 100644 --- a/examples/des_y1_3x2pt/des_y1_cosmic_shear_TATT.py +++ b/examples/des_y1_3x2pt/des_y1_cosmic_shear_TATT.py @@ -7,9 +7,9 @@ from firecrown.likelihood.factories import load_sacc_data import firecrown.likelihood.weak_lensing as wl from firecrown.likelihood import TwoPoint, ConstGaussian, Likelihood -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory +from firecrown.modeling_tools import CCLFactory from firecrown.updatable import get_default_params_map from firecrown.metadata_types import TracerNames, TRACER_NAMES_TOTAL diff --git a/examples/des_y1_3x2pt/des_y1_cosmic_shear_pk_modifier.py b/examples/des_y1_3x2pt/des_y1_cosmic_shear_pk_modifier.py index 17bef4aa9..ee40dfd4a 100644 --- a/examples/des_y1_3x2pt/des_y1_cosmic_shear_pk_modifier.py +++ b/examples/des_y1_3x2pt/des_y1_cosmic_shear_pk_modifier.py @@ -10,9 +10,9 @@ from firecrown.likelihood.factories import load_sacc_data import firecrown.likelihood.weak_lensing as wl from firecrown.likelihood import TwoPoint, ConstGaussian, Likelihood -from firecrown.parameters import ParamsMap, register_new_updatable_parameter +from firecrown.updatable import ParamsMap, register_new_updatable_parameter from firecrown.modeling_tools import ModelingTools, PowerspectrumModifier -from firecrown.ccl_factory import CCLFactory +from firecrown.modeling_tools import CCLFactory from firecrown.updatable import get_default_params_map from firecrown.metadata_types import TracerNames diff --git a/examples/des_y1_3x2pt/factory.py b/examples/des_y1_3x2pt/factory.py index 6869e29e7..b706a46bd 100644 --- a/examples/des_y1_3x2pt/factory.py +++ b/examples/des_y1_3x2pt/factory.py @@ -7,7 +7,7 @@ import firecrown.likelihood.weak_lensing as wl import firecrown.likelihood.number_counts as nc from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory +from firecrown.modeling_tools import CCLFactory # The likelihood used for DES Y1 3x2pt analysis is a Gaussian likelihood, which diff --git a/examples/des_y1_3x2pt/factory_PM.py b/examples/des_y1_3x2pt/factory_PM.py index 9ce4415aa..4a14b082a 100644 --- a/examples/des_y1_3x2pt/factory_PM.py +++ b/examples/des_y1_3x2pt/factory_PM.py @@ -8,7 +8,7 @@ import firecrown.likelihood.weak_lensing as wl import firecrown.likelihood.number_counts as nc from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory +from firecrown.modeling_tools import CCLFactory # The likelihood used for DES Y1 3x2pt analysis is a Gaussian likelihood, which diff --git a/examples/des_y1_3x2pt/factory_PT.py b/examples/des_y1_3x2pt/factory_PT.py index e33e7c1e5..d3d503d90 100644 --- a/examples/des_y1_3x2pt/factory_PT.py +++ b/examples/des_y1_3x2pt/factory_PT.py @@ -14,9 +14,9 @@ from firecrown.likelihood.factories import load_sacc_data from firecrown.likelihood import TwoPoint, ConstGaussian, Likelihood from firecrown.metadata_types import TracerNames -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory +from firecrown.modeling_tools import CCLFactory from firecrown.updatable import get_default_params_map diff --git a/firecrown/app/analysis/_types.py b/firecrown/app/analysis/_types.py index 55cf9868c..5ab984101 100644 --- a/firecrown/app/analysis/_types.py +++ b/firecrown/app/analysis/_types.py @@ -17,7 +17,7 @@ import pyccl from firecrown.likelihood import NamedParameters -from firecrown.ccl_factory import CAMBExtraParams, PoweSpecAmplitudeParameter +from firecrown.modeling_tools import CAMBExtraParams, PoweSpecAmplitudeParameter class Frameworks(StrEnum): diff --git a/firecrown/app/cosmology.py b/firecrown/app/cosmology.py index aa063c0e1..bbd5ccf96 100644 --- a/firecrown/app/cosmology.py +++ b/firecrown/app/cosmology.py @@ -16,7 +16,7 @@ import yaml import pyccl -from firecrown.ccl_factory import CAMBExtraParams +from firecrown.modeling_tools import CAMBExtraParams from . import logging from .analysis import CCLCosmologySpec, Prior diff --git a/firecrown/app/examples/_cosmic_shear_template.py b/firecrown/app/examples/_cosmic_shear_template.py index e886122d1..2adb94d6f 100644 --- a/firecrown/app/examples/_cosmic_shear_template.py +++ b/firecrown/app/examples/_cosmic_shear_template.py @@ -17,7 +17,7 @@ from firecrown.likelihood import ConstGaussian, NamedParameters, TwoPoint from firecrown.likelihood.factories import load_sacc_data from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory +from firecrown.modeling_tools import CCLFactory def build_likelihood(params: NamedParameters): diff --git a/firecrown/app/examples/_des_y1_3x2pt_pt_template.py b/firecrown/app/examples/_des_y1_3x2pt_pt_template.py index b5785ec6a..f3f5f0462 100644 --- a/firecrown/app/examples/_des_y1_3x2pt_pt_template.py +++ b/firecrown/app/examples/_des_y1_3x2pt_pt_template.py @@ -20,7 +20,7 @@ import firecrown.likelihood.number_counts as nc from firecrown.likelihood import ConstGaussian, NamedParameters, TwoPoint from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory +from firecrown.modeling_tools import CCLFactory def _build_sources() -> tuple[wl.WeakLensing, nc.NumberCounts]: diff --git a/firecrown/app/examples/_des_y1_3x2pt_template.py b/firecrown/app/examples/_des_y1_3x2pt_template.py index 7f5fac89f..2f1afd306 100644 --- a/firecrown/app/examples/_des_y1_3x2pt_template.py +++ b/firecrown/app/examples/_des_y1_3x2pt_template.py @@ -7,7 +7,7 @@ import firecrown.likelihood.number_counts as nc from firecrown.likelihood import ConstGaussian, NamedParameters, TwoPoint from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory +from firecrown.modeling_tools import CCLFactory # The likelihood used for DES Y1 3x2pt analysis is a Gaussian likelihood, which diff --git a/firecrown/app/examples/_des_y1_cosmic_shear_hmia_template.py b/firecrown/app/examples/_des_y1_cosmic_shear_hmia_template.py index 956e97eed..68ebbfffd 100644 --- a/firecrown/app/examples/_des_y1_cosmic_shear_hmia_template.py +++ b/firecrown/app/examples/_des_y1_cosmic_shear_hmia_template.py @@ -11,7 +11,7 @@ import firecrown.likelihood.weak_lensing as wl from firecrown.likelihood import ConstGaussian, NamedParameters, TwoPoint from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory +from firecrown.modeling_tools import CCLFactory def build_likelihood(params: NamedParameters) -> tuple[ConstGaussian, ModelingTools]: diff --git a/firecrown/app/examples/_des_y1_cosmic_shear_pk_modifier_template.py b/firecrown/app/examples/_des_y1_cosmic_shear_pk_modifier_template.py index a2f947bae..a13998fa3 100644 --- a/firecrown/app/examples/_des_y1_cosmic_shear_pk_modifier_template.py +++ b/firecrown/app/examples/_des_y1_cosmic_shear_pk_modifier_template.py @@ -11,8 +11,8 @@ import firecrown.likelihood.weak_lensing as wl from firecrown.likelihood import ConstGaussian, NamedParameters, TwoPoint from firecrown.modeling_tools import ModelingTools, PowerspectrumModifier -from firecrown.ccl_factory import CCLFactory -from firecrown.parameters import register_new_updatable_parameter +from firecrown.modeling_tools import CCLFactory +from firecrown.updatable import register_new_updatable_parameter # pylint: disable-next=invalid-name diff --git a/firecrown/app/examples/_des_y1_cosmic_shear_tatt_template.py b/firecrown/app/examples/_des_y1_cosmic_shear_tatt_template.py index 902b45829..6b87704ad 100644 --- a/firecrown/app/examples/_des_y1_cosmic_shear_tatt_template.py +++ b/firecrown/app/examples/_des_y1_cosmic_shear_tatt_template.py @@ -11,7 +11,7 @@ import firecrown.likelihood.weak_lensing as wl from firecrown.likelihood import ConstGaussian, NamedParameters, TwoPoint from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory +from firecrown.modeling_tools import CCLFactory # pylint: disable=duplicate-code diff --git a/firecrown/app/examples/_sn_srd_template.py b/firecrown/app/examples/_sn_srd_template.py index 7690e7fff..e638f3184 100644 --- a/firecrown/app/examples/_sn_srd_template.py +++ b/firecrown/app/examples/_sn_srd_template.py @@ -11,7 +11,7 @@ from firecrown.likelihood import NamedParameters, ConstGaussian from firecrown.likelihood.factories import load_sacc_data from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory, PoweSpecAmplitudeParameter +from firecrown.modeling_tools import CCLFactory, PoweSpecAmplitudeParameter def build_likelihood(params: NamedParameters): diff --git a/firecrown/ccl_factory/__init__.py b/firecrown/ccl_factory/__init__.py index 21402f91b..dfb554e7c 100644 --- a/firecrown/ccl_factory/__init__.py +++ b/firecrown/ccl_factory/__init__.py @@ -1,37 +1,44 @@ -"""This module contains the CCLFactory class and it supporting classes. +"""Deprecated: Use firecrown.modeling_tools instead. -The CCLFactory class is a factory class that creates instances of the -`pyccl.Cosmology` class. +This module is deprecated and will be removed in a future version. +All functionality has been moved to firecrown.modeling_tools. """ -# Import all public types and classes from private submodules -from firecrown.ccl_factory._enums import ( +import warnings + +# Re-export everything from new location +# Import must come after warnings to emit deprecation at import time +from firecrown.modeling_tools import ( # noqa: E402 + Background, + CAMBExtraParams, + CCLCalculatorArgs, CCLCreationMode, + CCLFactory, CCLPureModeTransferFunction, - PoweSpecAmplitudeParameter, -) -from firecrown.ccl_factory._factory import CCLFactory -from firecrown.ccl_factory._models import ( - CAMBExtraParams, CCLSplineParams, MuSigmaModel, + PoweSpecAmplitudeParameter, + PowerSpec, +) + +# Emit deprecation warning when module is imported +warnings.warn( + "firecrown.ccl_factory is deprecated and will be removed in a future version. " + "Use firecrown.modeling_tools instead.", + DeprecationWarning, + stacklevel=2, ) -from firecrown.ccl_factory._types import Background, CCLCalculatorArgs, PowerSpec -# Define __all__ for explicit API contract +# pylint: disable=duplicate-code __all__ = [ - # Type definitions "PowerSpec", "Background", "CCLCalculatorArgs", - # Enum classes "PoweSpecAmplitudeParameter", "CCLCreationMode", "CCLPureModeTransferFunction", - # Model classes "MuSigmaModel", "CAMBExtraParams", "CCLSplineParams", - # Factory class "CCLFactory", ] diff --git a/firecrown/connector/cobaya/likelihood.py b/firecrown/connector/cobaya/likelihood.py index c547e8014..5e3f56d70 100644 --- a/firecrown/connector/cobaya/likelihood.py +++ b/firecrown/connector/cobaya/likelihood.py @@ -13,7 +13,7 @@ from cobaya.likelihood import Likelihood from pyccl.cosmology import Pk2D -from firecrown.ccl_factory import ( +from firecrown.modeling_tools import ( CCLCalculatorArgs, CCLCreationMode, PoweSpecAmplitudeParameter, @@ -27,7 +27,7 @@ NamedParameters, load_likelihood, ) -from firecrown.parameters import ParamsMap, handle_unused_params +from firecrown.updatable import ParamsMap, handle_unused_params from firecrown.updatable import UpdatableUsageRecord from firecrown.updatable import get_default_params_map diff --git a/firecrown/connector/cosmosis/likelihood.py b/firecrown/connector/cosmosis/likelihood.py index f93fd1ebd..3df34d2ae 100644 --- a/firecrown/connector/cosmosis/likelihood.py +++ b/firecrown/connector/cosmosis/likelihood.py @@ -13,7 +13,7 @@ from cosmosis.datablock import names as section_names from cosmosis.datablock import option_section -from firecrown.ccl_factory import CCLCreationMode +from firecrown.modeling_tools import CCLCreationMode from firecrown.connector.mapping import MappingCosmoSIS, mapping_builder from firecrown.likelihood import ( GaussFamily, @@ -23,7 +23,7 @@ load_likelihood, TwoPoint, ) -from firecrown.parameters import ParamsMap, handle_unused_params +from firecrown.updatable import ParamsMap, handle_unused_params from firecrown.updatable import MissingSamplerParameterError, UpdatableUsageRecord diff --git a/firecrown/connector/mapping.py b/firecrown/connector/mapping.py index 4129acac7..ac8d859b9 100644 --- a/firecrown/connector/mapping.py +++ b/firecrown/connector/mapping.py @@ -16,8 +16,7 @@ from pyccl import physical_constants as physics from typing_extensions import assert_never -from firecrown import parameters -from firecrown.ccl_factory import ( +from firecrown.modeling_tools import ( Background, CCLCalculatorArgs, PowerSpec, @@ -25,6 +24,7 @@ ) from firecrown.descriptors import TypeFloat, TypeString from firecrown.likelihood import NamedParameters +from firecrown.updatable import ParamsMap def build_ccl_background_dict( @@ -489,7 +489,7 @@ def get_params_names( "wa", ] - def set_params_from_camb(self, params_values: parameters.ParamsMap) -> None: + def set_params_from_camb(self, params_values: ParamsMap) -> None: """Set the parameters in this mapping from the given CAMB-style parameters.""" # pylint: disable-msg=R0914 diff --git a/firecrown/connector/numcosmo/helpers.py b/firecrown/connector/numcosmo/helpers.py index 83ca347f8..bbb6fa3c0 100644 --- a/firecrown/connector/numcosmo/helpers.py +++ b/firecrown/connector/numcosmo/helpers.py @@ -3,7 +3,7 @@ from numcosmo_py import Nc from typing_extensions import assert_never -import firecrown.ccl_factory as fac +import firecrown.modeling_tools as fac def get_hiprim(hi_cosmo: Nc.HICosmo) -> Nc.HIPrimPowerLaw: diff --git a/firecrown/connector/numcosmo/numcosmo.py b/firecrown/connector/numcosmo/numcosmo.py index d71238107..e4e964d5e 100644 --- a/firecrown/connector/numcosmo/numcosmo.py +++ b/firecrown/connector/numcosmo/numcosmo.py @@ -9,7 +9,7 @@ import numpy as np from numcosmo_py import GObject, Nc, Ncm, dict_to_var_dict, var_dict_to_dict -from firecrown.ccl_factory import ( +from firecrown.modeling_tools import ( CCLCalculatorArgs, CCLCreationMode, PoweSpecAmplitudeParameter, @@ -23,7 +23,7 @@ load_likelihood, ) from firecrown.modeling_tools import ModelingTools -from firecrown.parameters import ParamsMap, handle_unused_params +from firecrown.updatable import ParamsMap, handle_unused_params from firecrown.updatable import UpdatableUsageRecord diff --git a/firecrown/likelihood/_base.py b/firecrown/likelihood/_base.py index ce3606aeb..439709193 100644 --- a/firecrown/likelihood/_base.py +++ b/firecrown/likelihood/_base.py @@ -33,15 +33,16 @@ from pydantic import BaseModel, ConfigDict, Field from scipy.interpolate import Akima1DInterpolator -from firecrown import parameters from firecrown.data_types import DataVector, TheoryVector from firecrown.modeling_tools import ModelingTools -from firecrown.parameters import ( +from firecrown.updatable import ( DerivedParameterCollection, ParamsMap, RequiredParameters, + Updatable, + UpdatableCollection, + register_new_updatable_parameter, ) -from firecrown.updatable import Updatable, UpdatableCollection # ============================================================================ @@ -528,7 +529,7 @@ def __init__(self) -> None: # Data and theory will both be of length self.count self.count = 3 self.data_vector: None | DataVector = None - self.mean = parameters.register_new_updatable_parameter(default_value=0.0) + self.mean = register_new_updatable_parameter(default_value=0.0) self.computed_theory_vector = False def read(self, sacc_data: sacc.Sacc) -> None: @@ -896,7 +897,7 @@ def __init__(self, sacc_tracer: str, active: bool = True) -> None: """ super().__init__(parameter_prefix=sacc_tracer) - self.delta_z = parameters.register_new_updatable_parameter( + self.delta_z = register_new_updatable_parameter( default_value=SOURCE_GALAXY_SYSTEMATIC_DEFAULT_DELTA_Z ) if active: @@ -965,7 +966,7 @@ def __init__(self, sacc_tracer: str, active: bool = True) -> None: """ super().__init__(sacc_tracer) - self.sigma_z = parameters.register_new_updatable_parameter( + self.sigma_z = register_new_updatable_parameter( default_value=SOURCE_GALAXY_SYSTEMATIC_DEFAULT_SIGMA_Z ) diff --git a/firecrown/likelihood/_gaussfamily.py b/firecrown/likelihood/_gaussfamily.py index 6c14e945f..446d2bb0c 100644 --- a/firecrown/likelihood/_gaussfamily.py +++ b/firecrown/likelihood/_gaussfamily.py @@ -20,7 +20,7 @@ Statistic, ) from firecrown.modeling_tools import ModelingTools -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap from firecrown.updatable import UpdatableCollection from firecrown.utils import save_to_sacc diff --git a/firecrown/likelihood/_student_t.py b/firecrown/likelihood/_student_t.py index 5ee338b48..32f5666b9 100644 --- a/firecrown/likelihood/_student_t.py +++ b/firecrown/likelihood/_student_t.py @@ -4,7 +4,7 @@ import numpy as np -from firecrown import parameters +from firecrown.updatable import register_new_updatable_parameter from firecrown.likelihood._base import Statistic from firecrown.likelihood._gaussfamily import GaussFamily from firecrown.modeling_tools import ModelingTools @@ -30,7 +30,7 @@ def __init__( :param nu: The degrees of freedom of the T-distribution """ super().__init__(statistics) - self.nu = parameters.register_new_updatable_parameter(nu, default_value=3.0) + self.nu = register_new_updatable_parameter(nu, default_value=3.0) def compute_loglike(self, tools: ModelingTools) -> float: """Compute the log-likelihood. diff --git a/firecrown/likelihood/_weak_lensing.py b/firecrown/likelihood/_weak_lensing.py index 28c6270b9..380c65c82 100644 --- a/firecrown/likelihood/_weak_lensing.py +++ b/firecrown/likelihood/_weak_lensing.py @@ -14,7 +14,7 @@ import sacc from pydantic import BaseModel, ConfigDict, Field, PrivateAttr -from firecrown import parameters +from firecrown.updatable import register_new_updatable_parameter from firecrown.likelihood._base import ( PhotoZShiftandStretchFactory, PhotoZShiftFactory, @@ -28,7 +28,7 @@ ) from firecrown.metadata_types import InferredGalaxyZDist, TypeSource from firecrown.modeling_tools import ModelingTools -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap @dataclass(frozen=True) @@ -93,7 +93,7 @@ def __init__(self, sacc_tracer: str) -> None: """ super().__init__(parameter_prefix=sacc_tracer) - self.mult_bias = parameters.register_new_updatable_parameter( + self.mult_bias = register_new_updatable_parameter( default_value=MULTIPLICATIVE_SHEAR_BIAS_DEFAULT_BIAS ) @@ -146,16 +146,16 @@ def __init__(self, sacc_tracer: None | str = None, alphag: None | float = 1.0): """ super().__init__(parameter_prefix=sacc_tracer) - self.ia_bias = parameters.register_new_updatable_parameter( + self.ia_bias = register_new_updatable_parameter( default_value=LINEAR_ALIGNMENT_DEFAULT_IA_BIAS ) - self.alphaz = parameters.register_new_updatable_parameter( + self.alphaz = register_new_updatable_parameter( default_value=LINEAR_ALIGNMENT_DEFAULT_ALPHAZ ) - self.alphag = parameters.register_new_updatable_parameter( + self.alphag = register_new_updatable_parameter( alphag, default_value=LINEAR_ALIGNMENT_DEFAULT_ALPHAG ) - self.z_piv = parameters.register_new_updatable_parameter( + self.z_piv = register_new_updatable_parameter( default_value=LINEAR_ALIGNMENT_DEFAULT_Z_PIV ) @@ -227,40 +227,40 @@ def __init__( as a prefix for its parameters. """ super().__init__(parameter_prefix=sacc_tracer) - self.ia_a_1 = parameters.register_new_updatable_parameter( + self.ia_a_1 = register_new_updatable_parameter( default_value=TATT_ALIGNMENT_DEFAULT_IA_A_1 ) - self.ia_zpiv_1 = parameters.register_new_updatable_parameter( + self.ia_zpiv_1 = register_new_updatable_parameter( value=(None if include_z_dependence else TATT_ALIGNMENT_DEFAULT_IA_ZPIV_1), default_value=TATT_ALIGNMENT_DEFAULT_IA_ZPIV_1, ) - self.ia_alphaz_1 = parameters.register_new_updatable_parameter( + self.ia_alphaz_1 = register_new_updatable_parameter( value=( None if include_z_dependence else TATT_ALIGNMENT_DEFAULT_IA_ALPHAZ_1 ), default_value=TATT_ALIGNMENT_DEFAULT_IA_ALPHAZ_1, ) - self.ia_a_2 = parameters.register_new_updatable_parameter( + self.ia_a_2 = register_new_updatable_parameter( default_value=TATT_ALIGNMENT_DEFAULT_IA_A_2 ) - self.ia_zpiv_2 = parameters.register_new_updatable_parameter( + self.ia_zpiv_2 = register_new_updatable_parameter( value=(None if include_z_dependence else TATT_ALIGNMENT_DEFAULT_IA_ZPIV_2), default_value=TATT_ALIGNMENT_DEFAULT_IA_ZPIV_2, ) - self.ia_alphaz_2 = parameters.register_new_updatable_parameter( + self.ia_alphaz_2 = register_new_updatable_parameter( value=( None if include_z_dependence else TATT_ALIGNMENT_DEFAULT_IA_ALPHAZ_2 ), default_value=TATT_ALIGNMENT_DEFAULT_IA_ALPHAZ_2, ) - self.ia_a_d = parameters.register_new_updatable_parameter( + self.ia_a_d = register_new_updatable_parameter( default_value=TATT_ALIGNMENT_DEFAULT_IA_A_D ) - self.ia_zpiv_d = parameters.register_new_updatable_parameter( + self.ia_zpiv_d = register_new_updatable_parameter( value=(None if include_z_dependence else TATT_ALIGNMENT_DEFAULT_IA_ZPIV_D), default_value=TATT_ALIGNMENT_DEFAULT_IA_ZPIV_D, ) - self.ia_alphaz_d = parameters.register_new_updatable_parameter( + self.ia_alphaz_d = register_new_updatable_parameter( value=( None if include_z_dependence else TATT_ALIGNMENT_DEFAULT_IA_ALPHAZ_D ), @@ -325,10 +325,10 @@ def __init__(self, _: None | str = None): """ super().__init__() - self.ia_a_1h = parameters.register_new_updatable_parameter( + self.ia_a_1h = register_new_updatable_parameter( default_value=HM_ALIGNMENT_DEFAULT_IA_A_1H ) - self.ia_a_2h = parameters.register_new_updatable_parameter( + self.ia_a_2h = register_new_updatable_parameter( default_value=HM_ALIGNMENT_DEFAULT_IA_A_2H ) diff --git a/firecrown/likelihood/factories/_models.py b/firecrown/likelihood/factories/_models.py index 1a1a1df13..1c1c89b0a 100644 --- a/firecrown/likelihood/factories/_models.py +++ b/firecrown/likelihood/factories/_models.py @@ -7,7 +7,7 @@ from pydantic import BaseModel from typing_extensions import assert_never -from firecrown.ccl_factory import CCLFactory +from firecrown.modeling_tools import CCLFactory from firecrown.data_functions import ( TwoPointBinFilterCollection, check_two_point_consistence_harmonic, diff --git a/firecrown/likelihood/number_counts/_source.py b/firecrown/likelihood/number_counts/_source.py index c9f973f7e..95bd7ddbf 100644 --- a/firecrown/likelihood/number_counts/_source.py +++ b/firecrown/likelihood/number_counts/_source.py @@ -9,7 +9,7 @@ import numpy as np import pyccl -from firecrown import parameters +from firecrown.updatable import register_new_updatable_parameter from firecrown.likelihood.number_counts._args import NumberCountsArgs from firecrown.likelihood._base import ( SourceGalaxy, @@ -18,12 +18,12 @@ ) from firecrown.metadata_types import InferredGalaxyZDist from firecrown.modeling_tools import ModelingTools -from firecrown.parameters import ( +from firecrown.updatable import ( DerivedParameter, DerivedParameterCollection, ParamsMap, + UpdatableCollection, ) -from firecrown.updatable import UpdatableCollection NUMBER_COUNTS_DEFAULT_BIAS = 1.5 @@ -57,7 +57,7 @@ def __init__( self.has_rsd = has_rsd self.derived_scale = derived_scale - self.bias = parameters.register_new_updatable_parameter( + self.bias = register_new_updatable_parameter( default_value=NUMBER_COUNTS_DEFAULT_BIAS ) self.systematics: UpdatableCollection[ diff --git a/firecrown/likelihood/number_counts/_systematics.py b/firecrown/likelihood/number_counts/_systematics.py index a795eb24d..5264ae7e9 100644 --- a/firecrown/likelihood/number_counts/_systematics.py +++ b/firecrown/likelihood/number_counts/_systematics.py @@ -8,7 +8,7 @@ import numpy as np import pyccl -from firecrown import parameters +from firecrown.updatable import register_new_updatable_parameter from firecrown.likelihood.number_counts._args import NumberCountsArgs from firecrown.likelihood._base import ( SourceGalaxyPhotoZShift, @@ -82,13 +82,13 @@ def __init__(self, sacc_tracer: str): """ super().__init__(parameter_prefix=sacc_tracer) - self.alphaz = parameters.register_new_updatable_parameter( + self.alphaz = register_new_updatable_parameter( default_value=LINEAR_BIAS_DEFAULT_ALPHAZ ) - self.alphag = parameters.register_new_updatable_parameter( + self.alphag = register_new_updatable_parameter( default_value=LINEAR_BIAS_DEFAULT_ALPHAG ) - self.z_piv = parameters.register_new_updatable_parameter( + self.z_piv = register_new_updatable_parameter( default_value=LINEAR_BIAS_DEFAULT_Z_PIV ) @@ -146,10 +146,10 @@ def __init__(self, sacc_tracer: None | str = None): """ super().__init__(parameter_prefix=sacc_tracer) - self.b_2 = parameters.register_new_updatable_parameter( + self.b_2 = register_new_updatable_parameter( default_value=PT_NON_LINEAR_BIAS_DEFAULT_B_2 ) - self.b_s = parameters.register_new_updatable_parameter( + self.b_s = register_new_updatable_parameter( default_value=PT_NON_LINEAR_BIAS_DEFAULT_B_S ) @@ -200,11 +200,11 @@ def __init__(self, sacc_tracer: str): """ super().__init__(parameter_prefix=sacc_tracer) - self.r_lim = parameters.register_new_updatable_parameter(default_value=24.0) - self.sig_c = parameters.register_new_updatable_parameter(default_value=9.83) - self.eta = parameters.register_new_updatable_parameter(default_value=19.0) - self.z_c = parameters.register_new_updatable_parameter(default_value=0.39) - self.z_m = parameters.register_new_updatable_parameter(default_value=0.055) + self.r_lim = register_new_updatable_parameter(default_value=24.0) + self.sig_c = register_new_updatable_parameter(default_value=9.83) + self.eta = register_new_updatable_parameter(default_value=19.0) + self.z_c = register_new_updatable_parameter(default_value=0.39) + self.z_m = register_new_updatable_parameter(default_value=0.055) def apply( self, tools: ModelingTools, tracer_arg: NumberCountsArgs @@ -261,7 +261,7 @@ def __init__(self, sacc_tracer: str): """ super().__init__(parameter_prefix=sacc_tracer) - self.mag_bias = parameters.register_new_updatable_parameter( + self.mag_bias = register_new_updatable_parameter( default_value=CONSTANT_MAGNIFICATION_BIAS_DEFAULT_MAG_BIAS ) diff --git a/firecrown/likelihood/supernova/_supernova.py b/firecrown/likelihood/supernova/_supernova.py index ef474967e..3a2b144ac 100644 --- a/firecrown/likelihood/supernova/_supernova.py +++ b/firecrown/likelihood/supernova/_supernova.py @@ -8,7 +8,7 @@ import sacc from sacc.tracers import MiscTracer -from firecrown import parameters +from firecrown.updatable import register_new_updatable_parameter from firecrown.data_types import DataVector, TheoryVector from firecrown.likelihood._base import Statistic from firecrown.modeling_tools import ModelingTools @@ -34,9 +34,7 @@ def __init__(self, sacc_tracer: str) -> None: self.sacc_tracer = sacc_tracer self.data_vector: None | DataVector = None self.a: None | npt.NDArray[np.float64] = None - self.M = parameters.register_new_updatable_parameter( - default_value=SNIA_DEFAULT_M - ) + self.M = register_new_updatable_parameter(default_value=SNIA_DEFAULT_M) def read(self, sacc_data: sacc.Sacc) -> None: """Read the data for this statistic from the SACC file. diff --git a/firecrown/modeling_tools/__init__.py b/firecrown/modeling_tools/__init__.py index 720da3de0..794a06d61 100644 --- a/firecrown/modeling_tools/__init__.py +++ b/firecrown/modeling_tools/__init__.py @@ -4,14 +4,48 @@ built around the :class:`pyccl.Cosmology` class. This is used by likelihoods that need to access reusable objects, such as perturbation theory or halo model calculators. + +This module also contains the CCL factory functionality for creating +:class:`pyccl.Cosmology` instances. """ from firecrown.modeling_tools._modeling_tools import ( ModelingTools, PowerspectrumModifier, ) +from firecrown.modeling_tools._ccl_enums import ( + CCLCreationMode, + CCLPureModeTransferFunction, + PoweSpecAmplitudeParameter, +) +from firecrown.modeling_tools._ccl_factory import CCLFactory +from firecrown.modeling_tools._ccl_models import ( + CAMBExtraParams, + CCLSplineParams, + MuSigmaModel, +) +from firecrown.modeling_tools._ccl_types import ( + Background, + CCLCalculatorArgs, + PowerSpec, +) __all__ = [ + # ModelingTools classes "ModelingTools", "PowerspectrumModifier", + # CCL Factory type definitions + "PowerSpec", + "Background", + "CCLCalculatorArgs", + # CCL Factory enum classes + "PoweSpecAmplitudeParameter", + "CCLCreationMode", + "CCLPureModeTransferFunction", + # CCL Factory model classes + "MuSigmaModel", + "CAMBExtraParams", + "CCLSplineParams", + # CCL Factory class + "CCLFactory", ] diff --git a/firecrown/ccl_factory/_enums.py b/firecrown/modeling_tools/_ccl_enums.py similarity index 100% rename from firecrown/ccl_factory/_enums.py rename to firecrown/modeling_tools/_ccl_enums.py diff --git a/firecrown/ccl_factory/_factory.py b/firecrown/modeling_tools/_ccl_factory.py similarity index 98% rename from firecrown/ccl_factory/_factory.py rename to firecrown/modeling_tools/_ccl_factory.py index 8cd00cebe..431cac704 100644 --- a/firecrown/ccl_factory/_factory.py +++ b/firecrown/modeling_tools/_ccl_factory.py @@ -18,23 +18,23 @@ # To be moved to the import from typing when migrating to Python 3.11 from typing_extensions import assert_never -from firecrown.ccl_factory._enums import ( +from firecrown.modeling_tools._ccl_enums import ( CCLCreationMode, CCLPureModeTransferFunction, PoweSpecAmplitudeParameter, ) -from firecrown.ccl_factory._models import ( +from firecrown.modeling_tools._ccl_models import ( CAMBExtraParams, CCLSplineParams, MuSigmaModel, ) -from firecrown.ccl_factory._types import CCLCalculatorArgs -from firecrown.parameters import ( +from firecrown.modeling_tools._ccl_types import CCLCalculatorArgs +from firecrown.updatable import ( ParamsMap, SamplerParameter, register_new_updatable_parameter, + Updatable, ) -from firecrown.updatable import Updatable def _validate_neutrino_mass_splits(value): diff --git a/firecrown/ccl_factory/_models.py b/firecrown/modeling_tools/_ccl_models.py similarity index 99% rename from firecrown/ccl_factory/_models.py rename to firecrown/modeling_tools/_ccl_models.py index bf80a93ab..44c6a4b06 100644 --- a/firecrown/ccl_factory/_models.py +++ b/firecrown/modeling_tools/_ccl_models.py @@ -6,7 +6,7 @@ from pyccl.modified_gravity import MuSigmaMG from pydantic import BaseModel, ConfigDict, Field, PrivateAttr, model_validator -from firecrown.parameters import ParamsMap, register_new_updatable_parameter +from firecrown.updatable import ParamsMap, register_new_updatable_parameter from firecrown.updatable import Updatable diff --git a/firecrown/ccl_factory/_types.py b/firecrown/modeling_tools/_ccl_types.py similarity index 100% rename from firecrown/ccl_factory/_types.py rename to firecrown/modeling_tools/_ccl_types.py diff --git a/firecrown/modeling_tools/_modeling_tools.py b/firecrown/modeling_tools/_modeling_tools.py index 223b9282f..636bfb336 100644 --- a/firecrown/modeling_tools/_modeling_tools.py +++ b/firecrown/modeling_tools/_modeling_tools.py @@ -12,7 +12,8 @@ import pyccl import pyccl.nl_pt -from firecrown.ccl_factory import CCLCalculatorArgs, CCLFactory +from firecrown.modeling_tools._ccl_types import CCLCalculatorArgs +from firecrown.modeling_tools._ccl_factory import CCLFactory from firecrown.models.cluster import ClusterAbundance, ClusterDeltaSigma from firecrown.updatable import Updatable, UpdatableCollection diff --git a/firecrown/models/cluster/_deltasigma.py b/firecrown/models/cluster/_deltasigma.py index 0a868da6a..15fea569a 100644 --- a/firecrown/models/cluster/_deltasigma.py +++ b/firecrown/models/cluster/_deltasigma.py @@ -10,7 +10,7 @@ import numpy.typing as npt import pyccl -from firecrown import parameters +from firecrown.updatable import register_new_updatable_parameter from firecrown.models.cluster._abundance import ClusterAbundance @@ -33,9 +33,7 @@ def __init__( super().__init__(mass_interval, z_interval, halo_mass_function) self.conc_parameter = conc_parameter if conc_parameter: - self.cluster_conc = parameters.register_new_updatable_parameter( - default_value=4.0 - ) + self.cluster_conc = register_new_updatable_parameter(default_value=4.0) def delta_sigma( self, diff --git a/firecrown/models/cluster/_kernel.py b/firecrown/models/cluster/_kernel.py index c4470efd9..b24801744 100644 --- a/firecrown/models/cluster/_kernel.py +++ b/firecrown/models/cluster/_kernel.py @@ -9,8 +9,7 @@ import numpy as np import numpy.typing as npt -from firecrown import parameters -from firecrown.updatable import Updatable +from firecrown.updatable import Updatable, register_new_updatable_parameter REDMAPPER_DEFAULT_AC_NC = 0.38 REDMAPPER_DEFAULT_BC_NC = 1.2634 @@ -41,16 +40,16 @@ def __init__( ): super().__init__() # Updatable parameters - self.ac_nc = parameters.register_new_updatable_parameter( + self.ac_nc = register_new_updatable_parameter( default_value=REDMAPPER_DEFAULT_AC_NC ) - self.bc_nc = parameters.register_new_updatable_parameter( + self.bc_nc = register_new_updatable_parameter( default_value=REDMAPPER_DEFAULT_BC_NC ) - self.ac_mc = parameters.register_new_updatable_parameter( + self.ac_mc = register_new_updatable_parameter( default_value=REDMAPPER_DEFAULT_AC_MC ) - self.bc_mc = parameters.register_new_updatable_parameter( + self.bc_mc = register_new_updatable_parameter( default_value=REDMAPPER_DEFAULT_BC_MC ) @@ -97,16 +96,16 @@ class Purity(Updatable): def __init__(self): super().__init__() - self.ap_nc = parameters.register_new_updatable_parameter( + self.ap_nc = register_new_updatable_parameter( default_value=REDMAPPER_DEFAULT_AP_NC ) - self.bp_nc = parameters.register_new_updatable_parameter( + self.bp_nc = register_new_updatable_parameter( default_value=REDMAPPER_DEFAULT_BP_NC ) - self.ap_rc = parameters.register_new_updatable_parameter( + self.ap_rc = register_new_updatable_parameter( default_value=REDMAPPER_DEFAULT_AP_RC ) - self.bp_rc = parameters.register_new_updatable_parameter( + self.bp_rc = register_new_updatable_parameter( default_value=REDMAPPER_DEFAULT_BP_RC ) diff --git a/firecrown/models/cluster/_mass_proxy.py b/firecrown/models/cluster/_mass_proxy.py index 4a0a1e1b4..f537c886d 100644 --- a/firecrown/models/cluster/_mass_proxy.py +++ b/firecrown/models/cluster/_mass_proxy.py @@ -11,7 +11,7 @@ import numpy.typing as npt from scipy import special -from firecrown import parameters +from firecrown.updatable import register_new_updatable_parameter from firecrown.updatable import Updatable @@ -122,22 +122,22 @@ def __init__( self.log1p_pivot_redshift = np.log1p(self.pivot_redshift) # Updatable parameters - self.mu_p0 = parameters.register_new_updatable_parameter( + self.mu_p0 = register_new_updatable_parameter( default_value=MURATA_DEFAULT_MU_P0 ) - self.mu_p1 = parameters.register_new_updatable_parameter( + self.mu_p1 = register_new_updatable_parameter( default_value=MURATA_DEFAULT_MU_P1 ) - self.mu_p2 = parameters.register_new_updatable_parameter( + self.mu_p2 = register_new_updatable_parameter( default_value=MURATA_DEFAULT_MU_P2 ) - self.sigma_p0 = parameters.register_new_updatable_parameter( + self.sigma_p0 = register_new_updatable_parameter( default_value=MURATA_DEFAULT_SIGMA_P0 ) - self.sigma_p1 = parameters.register_new_updatable_parameter( + self.sigma_p1 = register_new_updatable_parameter( default_value=MURATA_DEFAULT_SIGMA_P1 ) - self.sigma_p2 = parameters.register_new_updatable_parameter( + self.sigma_p2 = register_new_updatable_parameter( default_value=MURATA_DEFAULT_SIGMA_P2 ) @@ -195,22 +195,22 @@ def __init__( self.log1p_pivot_redshift = np.log1p(self.pivot_redshift) # Updatable parameters - self.mu_p0 = parameters.register_new_updatable_parameter( + self.mu_p0 = register_new_updatable_parameter( default_value=MURATA_DEFAULT_MU_P0 ) - self.mu_p1 = parameters.register_new_updatable_parameter( + self.mu_p1 = register_new_updatable_parameter( default_value=MURATA_DEFAULT_MU_P1 ) - self.mu_p2 = parameters.register_new_updatable_parameter( + self.mu_p2 = register_new_updatable_parameter( default_value=MURATA_DEFAULT_MU_P2 ) - self.sigma_p0 = parameters.register_new_updatable_parameter( + self.sigma_p0 = register_new_updatable_parameter( default_value=MURATA_DEFAULT_SIGMA_P0 ) - self.sigma_p1 = parameters.register_new_updatable_parameter( + self.sigma_p1 = register_new_updatable_parameter( default_value=MURATA_DEFAULT_SIGMA_P1 ) - self.sigma_p2 = parameters.register_new_updatable_parameter( + self.sigma_p2 = register_new_updatable_parameter( default_value=MURATA_DEFAULT_SIGMA_P2 ) diff --git a/firecrown/models/two_point/_theory.py b/firecrown/models/two_point/_theory.py index 5659a3215..17d33b5ad 100644 --- a/firecrown/models/two_point/_theory.py +++ b/firecrown/models/two_point/_theory.py @@ -12,7 +12,7 @@ from firecrown.generators import EllOrThetaConfig, LogLinearElls from firecrown.metadata_types import TracerNames from firecrown.modeling_tools import ModelingTools -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap from firecrown.updatable import Updatable from firecrown.utils import ClIntegrationOptions from firecrown.models.two_point._interpolation import ApplyInterpolationWhen diff --git a/firecrown/parameters/__init__.py b/firecrown/parameters/__init__.py index 09aec31f0..c87689ea4 100644 --- a/firecrown/parameters/__init__.py +++ b/firecrown/parameters/__init__.py @@ -1,19 +1,36 @@ -"""Classes and functions to support groups of named parameters. +"""DEPRECATED: Use firecrown.updatable instead. -These are used in Firecrown in preference to the Python dictionary in order to -provide better type safety. +This module provides backwards compatibility for code that imports from +firecrown.parameters. All functionality has been moved to firecrown.updatable. + +This module will be removed in a future version of Firecrown. """ -from ._derived import DerivedParameter, DerivedParameterCollection -from ._map import ParamsMap, handle_unused_params -from ._names import parameter_get_full_name -from ._required import RequiredParameters -from ._types import ( +import warnings + +# Re-export everything from firecrown.updatable for backward compatibility +from firecrown.updatable import ( + DerivedParameter, + DerivedParameterCollection, InternalParameter, + ParamsMap, + RequiredParameters, SamplerParameter, + handle_unused_params, + parameter_get_full_name, register_new_updatable_parameter, ) +# Issue deprecation warning when this module is imported +warnings.warn( + "The firecrown.parameters module is deprecated and will be removed in a future " + "version. Please use firecrown.updatable instead. All parameter-related classes " + "and functions are now available from firecrown.updatable.", + DeprecationWarning, + stacklevel=2, +) + +# pylint: disable=duplicate-code __all__ = [ "DerivedParameter", "DerivedParameterCollection", diff --git a/firecrown/updatable/__init__.py b/firecrown/updatable/__init__.py index 71891212c..cd2c356de 100644 --- a/firecrown/updatable/__init__.py +++ b/firecrown/updatable/__init__.py @@ -27,6 +27,17 @@ assert_updatable_interface, ) +# Import parameter-related classes (formerly from firecrown.parameters) +from ._parameters_derived import DerivedParameter, DerivedParameterCollection +from ._parameters_map import ParamsMap, handle_unused_params +from ._parameters_names import parameter_get_full_name +from ._parameters_required import RequiredParameters +from ._parameters_types import ( + InternalParameter, + SamplerParameter, + register_new_updatable_parameter, +) + __all__ = [ # Exceptions "MissingSamplerParameterError", @@ -41,4 +52,14 @@ "assert_updatable_interface", # Usage records "UpdatableUsageRecord", + # Parameter classes (formerly from firecrown.parameters) + "DerivedParameter", + "DerivedParameterCollection", + "InternalParameter", + "ParamsMap", + "RequiredParameters", + "SamplerParameter", + "handle_unused_params", + "parameter_get_full_name", + "register_new_updatable_parameter", ] diff --git a/firecrown/updatable/_base.py b/firecrown/updatable/_base.py index 2baf6c6ed..2c3b019d6 100644 --- a/firecrown/updatable/_base.py +++ b/firecrown/updatable/_base.py @@ -7,13 +7,13 @@ from typing_extensions import assert_never -from firecrown.parameters import ( +from firecrown.updatable._parameters_types import ( InternalParameter, - ParamsMap, - RequiredParameters, SamplerParameter, - DerivedParameterCollection, ) +from firecrown.updatable._parameters_map import ParamsMap +from firecrown.updatable._parameters_required import RequiredParameters +from firecrown.updatable._parameters_derived import DerivedParameterCollection from firecrown.updatable._exceptions import MissingSamplerParameterError from firecrown.updatable._records import UpdatableUsageRecord from firecrown.updatable._types import UpdatableProtocol diff --git a/firecrown/updatable/_collection.py b/firecrown/updatable/_collection.py index 70034193a..bf7f363dd 100644 --- a/firecrown/updatable/_collection.py +++ b/firecrown/updatable/_collection.py @@ -5,11 +5,9 @@ from collections.abc import Iterable from typing import Generic, TypeVar, cast, final -from firecrown.parameters import ( - ParamsMap, - RequiredParameters, - DerivedParameterCollection, -) +from firecrown.updatable._parameters_map import ParamsMap +from firecrown.updatable._parameters_required import RequiredParameters +from firecrown.updatable._parameters_derived import DerivedParameterCollection from firecrown.updatable._base import Updatable from firecrown.updatable._records import UpdatableUsageRecord from firecrown.updatable._types import UpdatableProtocol diff --git a/firecrown/parameters/_derived.py b/firecrown/updatable/_parameters_derived.py similarity index 100% rename from firecrown/parameters/_derived.py rename to firecrown/updatable/_parameters_derived.py diff --git a/firecrown/parameters/_map.py b/firecrown/updatable/_parameters_map.py similarity index 98% rename from firecrown/parameters/_map.py rename to firecrown/updatable/_parameters_map.py index 1a78fd2ec..ead3a58a7 100644 --- a/firecrown/parameters/_map.py +++ b/firecrown/updatable/_parameters_map.py @@ -3,7 +3,7 @@ import copy import warnings -from ._names import _validate_params_map_value, parameter_get_full_name +from ._parameters_names import _validate_params_map_value, parameter_get_full_name class ParamsMap: diff --git a/firecrown/parameters/_names.py b/firecrown/updatable/_parameters_names.py similarity index 100% rename from firecrown/parameters/_names.py rename to firecrown/updatable/_parameters_names.py diff --git a/firecrown/parameters/_required.py b/firecrown/updatable/_parameters_required.py similarity index 98% rename from firecrown/parameters/_required.py rename to firecrown/updatable/_parameters_required.py index e3e19d53a..291d58f50 100644 --- a/firecrown/parameters/_required.py +++ b/firecrown/updatable/_parameters_required.py @@ -3,7 +3,7 @@ from __future__ import annotations from collections.abc import Iterable, Iterator -from ._types import SamplerParameter +from ._parameters_types import SamplerParameter class RequiredParameters: diff --git a/firecrown/parameters/_types.py b/firecrown/updatable/_parameters_types.py similarity index 98% rename from firecrown/parameters/_types.py rename to firecrown/updatable/_parameters_types.py index 1cb4d0be1..23e3f62bf 100644 --- a/firecrown/parameters/_types.py +++ b/firecrown/updatable/_parameters_types.py @@ -1,6 +1,6 @@ """Parameter types and creation functions.""" -from ._names import parameter_get_full_name +from ._parameters_names import parameter_get_full_name class SamplerParameter: diff --git a/firecrown/updatable/_types.py b/firecrown/updatable/_types.py index d40bc95cc..7da653b8d 100644 --- a/firecrown/updatable/_types.py +++ b/firecrown/updatable/_types.py @@ -3,11 +3,9 @@ from __future__ import annotations from typing import Protocol, runtime_checkable -from firecrown.parameters import ( - ParamsMap, - RequiredParameters, - DerivedParameterCollection, -) +from firecrown.updatable._parameters_map import ParamsMap +from firecrown.updatable._parameters_required import RequiredParameters +from firecrown.updatable._parameters_derived import DerivedParameterCollection from firecrown.updatable._records import UpdatableUsageRecord diff --git a/firecrown/updatable/_utils.py b/firecrown/updatable/_utils.py index eebad5232..1d3024e25 100644 --- a/firecrown/updatable/_utils.py +++ b/firecrown/updatable/_utils.py @@ -3,7 +3,7 @@ from __future__ import annotations import warnings -from firecrown.parameters import ParamsMap +from firecrown.updatable._parameters_map import ParamsMap from firecrown.updatable._base import Updatable from firecrown.updatable._collection import UpdatableCollection diff --git a/tests/app/analysis/test_types.py b/tests/app/analysis/test_types.py index ca011ae17..37693b43d 100644 --- a/tests/app/analysis/test_types.py +++ b/tests/app/analysis/test_types.py @@ -23,7 +23,7 @@ ) from firecrown.app.analysis._cobaya import CobayaConfigGenerator from firecrown.likelihood import NamedParameters -from firecrown.ccl_factory import CAMBExtraParams +from firecrown.modeling_tools import CAMBExtraParams class TestFrameworksEnum: diff --git a/tests/app/examples/test_des_y1_3x2pt.py b/tests/app/examples/test_des_y1_3x2pt.py index a8ae0e633..309fa762d 100644 --- a/tests/app/examples/test_des_y1_3x2pt.py +++ b/tests/app/examples/test_des_y1_3x2pt.py @@ -28,7 +28,7 @@ Frameworks, ) from firecrown.likelihood.factories import build_two_point_likelihood -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap class TestDESY1FactoryType: diff --git a/tests/conftest.py b/tests/conftest.py index 7c491db72..a26ffda63 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -19,7 +19,7 @@ from firecrown.updatable import get_default_params_map from firecrown.utils import upper_triangle_indices from firecrown.likelihood._statistic import TrivialStatistic -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap from firecrown.connector.mapping import MappingCosmoSIS, mapping_builder from firecrown.modeling_tools import ModelingTools from firecrown.metadata_types import ( diff --git a/tests/connector/cobaya/test_model_likelihood.py b/tests/connector/cobaya/test_model_likelihood.py index 982094948..ecc8dafbc 100644 --- a/tests/connector/cobaya/test_model_likelihood.py +++ b/tests/connector/cobaya/test_model_likelihood.py @@ -12,7 +12,7 @@ from firecrown.likelihood._gaussian import ConstGaussian from firecrown.modeling_tools import ModelingTools import firecrown.likelihood._statistic as stat -import firecrown.ccl_factory as ccl_factory +import firecrown.modeling_tools as ccl_factory def test_cobaya_ccl_initialize(): diff --git a/tests/connector/numcosmo/test_numcosmo_connector.py b/tests/connector/numcosmo/test_numcosmo_connector.py index ba4e8c2ee..1fb322e47 100644 --- a/tests/connector/numcosmo/test_numcosmo_connector.py +++ b/tests/connector/numcosmo/test_numcosmo_connector.py @@ -398,7 +398,7 @@ def test_create_params_map_with_mapping(): """Test create_params_map function when mapping is provided.""" from firecrown.connector.numcosmo.numcosmo import create_params_map from firecrown.connector.mapping import Mapping - from firecrown.parameters import ParamsMap + from firecrown.updatable import ParamsMap # Create a simple mock model and mset model_name = "test_model" @@ -462,7 +462,7 @@ def test_create_params_map_with_mapping(): def test_create_params_map_without_mapping(): """Test create_params_map function when mapping is None.""" from firecrown.connector.numcosmo.numcosmo import create_params_map - from firecrown.parameters import ParamsMap + from firecrown.updatable import ParamsMap # Create a simple mock model and mset model_name = "test_model2" @@ -520,7 +520,7 @@ def test_numcosmo_data_pure_ccl_mode(): assert isinstance(nc_data, NumCosmoData) # Verify that the CCL factory is in PURE_CCL_MODE - from firecrown.ccl_factory import CCLCreationMode + from firecrown.modeling_tools import CCLCreationMode assert nc_data.tools.ccl_factory.creation_mode == CCLCreationMode.PURE_CCL_MODE @@ -626,7 +626,7 @@ def test_numcosmo_gauss_cov_pure_ccl_mode(): assert isinstance(nc_data, NumCosmoGaussCov) # Verify that the CCL factory is in PURE_CCL_MODE - from firecrown.ccl_factory import CCLCreationMode + from firecrown.modeling_tools import CCLCreationMode assert nc_data.tools.ccl_factory.creation_mode == CCLCreationMode.PURE_CCL_MODE diff --git a/tests/connector/numcosmo/test_numcosmo_mapping.py b/tests/connector/numcosmo/test_numcosmo_mapping.py index 792951a2b..d2c411dc8 100644 --- a/tests/connector/numcosmo/test_numcosmo_mapping.py +++ b/tests/connector/numcosmo/test_numcosmo_mapping.py @@ -17,7 +17,7 @@ helpers, create_params_map, ) -from firecrown.ccl_factory import PoweSpecAmplitudeParameter +from firecrown.modeling_tools import PoweSpecAmplitudeParameter Ncm.cfg_init() diff --git a/tests/connector/test_mapping.py b/tests/connector/test_mapping.py index 5d6b3f52c..b571b411e 100644 --- a/tests/connector/test_mapping.py +++ b/tests/connector/test_mapping.py @@ -13,8 +13,8 @@ MappingCAMB, ) from firecrown.likelihood._likelihood import NamedParameters -from firecrown.ccl_factory import PoweSpecAmplitudeParameter -from firecrown.parameters import ParamsMap +from firecrown.modeling_tools import PoweSpecAmplitudeParameter +from firecrown.updatable import ParamsMap # TODO: Refactor these test functions to use a sensible fixture. diff --git a/tests/fctools/test_generate_symbol_map.py b/tests/fctools/test_generate_symbol_map.py index 5c4cc71c0..b7098df95 100644 --- a/tests/fctools/test_generate_symbol_map.py +++ b/tests/fctools/test_generate_symbol_map.py @@ -304,25 +304,25 @@ def mock_walk(*_args, **_kwargs): def test_get_all_symbols_real_firecrown_subset(): - """Test get_all_symbols with real firecrown.parameters module.""" - import firecrown.parameters # pylint: disable=import-outside-toplevel + """Test get_all_symbols with real firecrown.updatable module.""" + import firecrown.updatable # pylint: disable=import-outside-toplevel - symbols = get_all_symbols(firecrown.parameters) + symbols = get_all_symbols(firecrown.updatable) # Should have captured some symbols assert len(symbols) > 0 - # Should have some classes from parameters + # Should have some classes from updatable # (without hard-coding specific class names that might change) - param_symbols = [k for k in symbols if "firecrown.parameters." in k] + param_symbols = [k for k in symbols if "firecrown.updatable." in k] assert len(param_symbols) > 0 def test_get_all_symbols_captures_classes(): """Test that get_all_symbols captures class definitions.""" - import firecrown.parameters # pylint: disable=import-outside-toplevel + import firecrown.updatable # pylint: disable=import-outside-toplevel - symbols = get_all_symbols(firecrown.parameters) + symbols = get_all_symbols(firecrown.updatable) # Look for any class-like symbols (conventionally CamelCase) classes = [ @@ -335,9 +335,9 @@ def test_get_all_symbols_captures_classes(): def test_get_all_symbols_captures_functions(): """Test that get_all_symbols captures function definitions.""" - import firecrown.parameters # pylint: disable=import-outside-toplevel + import firecrown.updatable # pylint: disable=import-outside-toplevel - symbols = get_all_symbols(firecrown.parameters) + symbols = get_all_symbols(firecrown.updatable) # Should have some symbols (classes or functions) assert len(symbols) > 0 @@ -347,21 +347,21 @@ def test_get_all_symbols_excludes_private(): """Test that get_all_symbols excludes private members. The function excludes members with names starting with underscore, - but includes private module names (like _derived). + but includes private module names (like _parameters_derived). """ - import firecrown.parameters # pylint: disable=import-outside-toplevel + import firecrown.updatable # pylint: disable=import-outside-toplevel - symbols = get_all_symbols(firecrown.parameters) + symbols = get_all_symbols(firecrown.updatable) - # Should have included private module names like _derived - assert any("._derived" in k for k in symbols) + # Should have included private module names like _parameters_derived + assert any("._parameters_derived" in k for k in symbols) - # Check a real example: _derived module exists, but not _private_function - # All symbols from _derived should be public classes/functions - derived_symbols = [k for k in symbols if "._derived." in k] + # Check a real example: _parameters_derived module exists, but not _private_function + # All symbols from _parameters_derived should be public classes/functions + derived_symbols = [k for k in symbols if "._parameters_derived." in k] for sym in derived_symbols: - # The part after _derived. should not start with underscore - after_derived = sym.split("._derived.")[-1] + # The part after _parameters_derived. should not start with underscore + after_derived = sym.split("._parameters_derived.")[-1] assert not after_derived.startswith("_"), f"Found private member: {sym}" diff --git a/tests/integration/models/two_point/test_theory.py b/tests/integration/models/two_point/test_theory.py index 979d824e7..c132971db 100644 --- a/tests/integration/models/two_point/test_theory.py +++ b/tests/integration/models/two_point/test_theory.py @@ -1,7 +1,7 @@ """Integration tests for the TwoPointTheory class using real Source instances.""" from firecrown.models.two_point import TwoPointTheory -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap from firecrown.likelihood import Source diff --git a/tests/likelihood/gauss_family/lkscript_const_gaussian.py b/tests/likelihood/gauss_family/lkscript_const_gaussian.py index 7e3af0939..040c39d22 100644 --- a/tests/likelihood/gauss_family/lkscript_const_gaussian.py +++ b/tests/likelihood/gauss_family/lkscript_const_gaussian.py @@ -8,7 +8,7 @@ from firecrown.likelihood._gaussian import ConstGaussian from firecrown.likelihood.supernova._supernova import Supernova from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory, PoweSpecAmplitudeParameter +from firecrown.modeling_tools import CCLFactory, PoweSpecAmplitudeParameter def build_likelihood(_): diff --git a/tests/likelihood/gauss_family/lkscript_two_point.py b/tests/likelihood/gauss_family/lkscript_two_point.py index df96d5c11..09576844d 100644 --- a/tests/likelihood/gauss_family/lkscript_two_point.py +++ b/tests/likelihood/gauss_family/lkscript_two_point.py @@ -13,7 +13,7 @@ NumberCounts, ) from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory, PoweSpecAmplitudeParameter +from firecrown.modeling_tools import CCLFactory, PoweSpecAmplitudeParameter def build_likelihood(params: NamedParameters): diff --git a/tests/likelihood/gauss_family/lkscript_two_point_pure_ccl.py b/tests/likelihood/gauss_family/lkscript_two_point_pure_ccl.py index 3d85e785f..d7580e0ef 100644 --- a/tests/likelihood/gauss_family/lkscript_two_point_pure_ccl.py +++ b/tests/likelihood/gauss_family/lkscript_two_point_pure_ccl.py @@ -13,7 +13,7 @@ NumberCounts, ) from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import ( +from firecrown.modeling_tools import ( CCLFactory, PoweSpecAmplitudeParameter, CCLCreationMode, diff --git a/tests/likelihood/gauss_family/statistic/source/test_source.py b/tests/likelihood/gauss_family/statistic/source/test_source.py index 5aa2476f1..a610f6154 100644 --- a/tests/likelihood/gauss_family/statistic/source/test_source.py +++ b/tests/likelihood/gauss_family/statistic/source/test_source.py @@ -31,7 +31,7 @@ ) from firecrown.metadata_functions import extract_all_tracers_inferred_galaxy_zdists from firecrown.modeling_tools import ModelingTools -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap from firecrown.updatable import get_default_params diff --git a/tests/likelihood/gauss_family/statistic/test_statistic.py b/tests/likelihood/gauss_family/statistic/test_statistic.py index 21041e647..fe934f8b8 100644 --- a/tests/likelihood/gauss_family/statistic/test_statistic.py +++ b/tests/likelihood/gauss_family/statistic/test_statistic.py @@ -10,7 +10,7 @@ import firecrown.data_types import firecrown.likelihood._statistic as stat from firecrown.modeling_tools import ModelingTools -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap VECTOR_CLASSES = (firecrown.data_types.TheoryVector, firecrown.data_types.DataVector) diff --git a/tests/likelihood/gauss_family/statistic/test_two_point.py b/tests/likelihood/gauss_family/statistic/test_two_point.py index 6eef9cd15..d88ffca37 100644 --- a/tests/likelihood/gauss_family/statistic/test_two_point.py +++ b/tests/likelihood/gauss_family/statistic/test_two_point.py @@ -15,7 +15,7 @@ from firecrown.updatable import get_default_params_map from firecrown.modeling_tools import ModelingTools -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap from firecrown.likelihood.number_counts import ( NumberCounts, diff --git a/tests/likelihood/gauss_family/test_const_gaussian.py b/tests/likelihood/gauss_family/test_const_gaussian.py index c1ffcf9f3..614cba442 100644 --- a/tests/likelihood/gauss_family/test_const_gaussian.py +++ b/tests/likelihood/gauss_family/test_const_gaussian.py @@ -10,12 +10,12 @@ import sacc -import firecrown.parameters +import firecrown.updatable from firecrown.likelihood._gaussian import ConstGaussian from firecrown.likelihood._gaussfamily import Statistic from firecrown.likelihood._statistic import TrivialStatistic from firecrown.modeling_tools import ModelingTools -from firecrown.parameters import ( +from firecrown.updatable import ( RequiredParameters, DerivedParameterCollection, SamplerParameter, @@ -122,7 +122,7 @@ def test_compute_theory_vector_works_after_read_and_update( ): likelihood = ConstGaussian(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - likelihood.update(firecrown.parameters.ParamsMap(mean=10.5)) + likelihood.update(firecrown.updatable.ParamsMap(mean=10.5)) assert np.all( likelihood.compute_theory_vector(ModelingTools()) == np.array([10.5, 10.5, 10.5]) @@ -132,7 +132,7 @@ def test_compute_theory_vector_works_after_read_and_update( def test_compute_theory_vector_called_twice(trivial_stats, sacc_data_for_trivial_stat): likelihood = ConstGaussian(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - likelihood.update(firecrown.parameters.ParamsMap(mean=10.5)) + likelihood.update(firecrown.updatable.ParamsMap(mean=10.5)) res_1 = likelihood.compute_theory_vector(ModelingTools()) res_2 = likelihood.compute_theory_vector(ModelingTools()) assert np.all(res_1 == res_2) @@ -168,7 +168,7 @@ def test_get_theory_vector_fails_before_compute_theory_vector( ): likelihood = ConstGaussian(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - likelihood.update(firecrown.parameters.ParamsMap(mean=10.5)) + likelihood.update(firecrown.updatable.ParamsMap(mean=10.5)) with pytest.raises( AssertionError, match=re.escape( @@ -183,7 +183,7 @@ def test_get_theory_vector_works_after_read_update_and_compute_theory_vector( ): likelihood = ConstGaussian(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - likelihood.update(firecrown.parameters.ParamsMap(mean=10.5)) + likelihood.update(firecrown.updatable.ParamsMap(mean=10.5)) likelihood.compute_theory_vector(ModelingTools()) assert np.all(likelihood.get_theory_vector() == np.array([10.5, 10.5, 10.5])) @@ -193,7 +193,7 @@ def test_get_theory_vector_fails_after_read_update_compute_theory_vector_and_res ): likelihood = ConstGaussian(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - likelihood.update(firecrown.parameters.ParamsMap(mean=10.5)) + likelihood.update(firecrown.updatable.ParamsMap(mean=10.5)) likelihood.compute_theory_vector(ModelingTools()) likelihood.reset() with pytest.raises( @@ -300,7 +300,7 @@ def test_using_good_sacc( ): likelihood = ConstGaussian(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) likelihood.update(params) chisq = likelihood.compute_chisq(tools_with_vanilla_cosmology) assert isinstance(chisq, float) @@ -324,7 +324,7 @@ def test_make_realization_chisq( ): likelihood = ConstGaussian(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) likelihood.update(params) likelihood.compute_chisq(tools_with_vanilla_cosmology) @@ -332,7 +332,7 @@ def test_make_realization_chisq( new_likelihood = ConstGaussian(statistics=[TrivialStatistic()]) new_likelihood.read(new_sacc) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) new_likelihood.update(params) chisq = new_likelihood.compute_chisq(tools_with_vanilla_cosmology) @@ -351,7 +351,7 @@ def test_make_realization_chisq_mean( ): likelihood = ConstGaussian(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) likelihood.update(params) likelihood.compute_chisq(tools_with_vanilla_cosmology) @@ -361,7 +361,7 @@ def test_make_realization_chisq_mean( new_likelihood = ConstGaussian(statistics=[TrivialStatistic()]) new_likelihood.read(new_sacc) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) new_likelihood.update(params) chisq = new_likelihood.compute_chisq(tools_with_vanilla_cosmology) chisq_list.append(chisq) @@ -380,7 +380,7 @@ def test_make_realization_data_vector( ): likelihood = ConstGaussian(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) likelihood.update(params) likelihood.compute_chisq(tools_with_vanilla_cosmology) @@ -390,7 +390,7 @@ def test_make_realization_data_vector( new_likelihood = ConstGaussian(statistics=[TrivialStatistic()]) new_likelihood.read(new_sacc) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) new_likelihood.update(params) data_vector = new_likelihood.get_data_vector() data_vector_list.append(data_vector) @@ -423,7 +423,7 @@ def test_make_realization_no_noise( ): likelihood = ConstGaussian(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) likelihood.update(params) likelihood.compute_chisq(tools_with_vanilla_cosmology) @@ -431,7 +431,7 @@ def test_make_realization_no_noise( new_likelihood = ConstGaussian(statistics=[TrivialStatistic()]) new_likelihood.read(new_sacc) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) new_likelihood.update(params) assert_allclose(new_likelihood.get_data_vector(), likelihood.get_theory_vector()) diff --git a/tests/likelihood/gauss_family/test_const_gaussianPM.py b/tests/likelihood/gauss_family/test_const_gaussianPM.py index 6ca14698a..172524151 100644 --- a/tests/likelihood/gauss_family/test_const_gaussianPM.py +++ b/tests/likelihood/gauss_family/test_const_gaussianPM.py @@ -12,10 +12,10 @@ import sacc import pyccl -import firecrown.parameters +import firecrown.updatable from firecrown.likelihood import ConstGaussianPM, Statistic, TrivialStatistic, TwoPoint from firecrown.modeling_tools import ModelingTools -from firecrown.parameters import ( +from firecrown.updatable import ( RequiredParameters, DerivedParameterCollection, SamplerParameter, @@ -127,7 +127,7 @@ def test_compute_theory_vector_works_after_read_and_update( ): likelihood = ConstGaussianPM(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - likelihood.update(firecrown.parameters.ParamsMap(mean=10.5)) + likelihood.update(firecrown.updatable.ParamsMap(mean=10.5)) assert np.all( likelihood.compute_theory_vector(ModelingTools()) == np.array([10.5, 10.5, 10.5]) @@ -137,7 +137,7 @@ def test_compute_theory_vector_works_after_read_and_update( def test_compute_theory_vector_called_twice(trivial_stats, sacc_data_for_trivial_stat): likelihood = ConstGaussianPM(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - likelihood.update(firecrown.parameters.ParamsMap(mean=10.5)) + likelihood.update(firecrown.updatable.ParamsMap(mean=10.5)) res_1 = likelihood.compute_theory_vector(ModelingTools()) res_2 = likelihood.compute_theory_vector(ModelingTools()) assert np.all(res_1 == res_2) @@ -173,7 +173,7 @@ def test_get_theory_vector_fails_before_compute_theory_vector( ): likelihood = ConstGaussianPM(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - likelihood.update(firecrown.parameters.ParamsMap(mean=10.5)) + likelihood.update(firecrown.updatable.ParamsMap(mean=10.5)) with pytest.raises( AssertionError, match=re.escape( @@ -188,7 +188,7 @@ def test_get_theory_vector_works_after_read_update_and_compute_theory_vector( ): likelihood = ConstGaussianPM(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - likelihood.update(firecrown.parameters.ParamsMap(mean=10.5)) + likelihood.update(firecrown.updatable.ParamsMap(mean=10.5)) likelihood.compute_theory_vector(ModelingTools()) assert np.all(likelihood.get_theory_vector() == np.array([10.5, 10.5, 10.5])) @@ -198,7 +198,7 @@ def test_get_theory_vector_fails_after_read_update_compute_theory_vector_and_res ): likelihood = ConstGaussianPM(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - likelihood.update(firecrown.parameters.ParamsMap(mean=10.5)) + likelihood.update(firecrown.updatable.ParamsMap(mean=10.5)) likelihood.compute_theory_vector(ModelingTools()) likelihood.reset() with pytest.raises( @@ -319,7 +319,7 @@ def test_using_good_sacc( ): likelihood = ConstGaussianPM(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) likelihood.update(params) with pytest.warns( UserWarning, @@ -347,7 +347,7 @@ def test_make_realization_chisq( ): likelihood = ConstGaussianPM(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) likelihood.update(params) with pytest.warns( UserWarning, @@ -359,7 +359,7 @@ def test_make_realization_chisq( new_likelihood = ConstGaussianPM(statistics=[TrivialStatistic()]) new_likelihood.read(new_sacc) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) new_likelihood.update(params) with pytest.warns( UserWarning, @@ -382,7 +382,7 @@ def test_make_realization_chisq_mean( ): likelihood = ConstGaussianPM(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) likelihood.update(params) with pytest.warns( UserWarning, @@ -396,7 +396,7 @@ def test_make_realization_chisq_mean( new_likelihood = ConstGaussianPM(statistics=[TrivialStatistic()]) new_likelihood.read(new_sacc) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) new_likelihood.update(params) with pytest.warns( UserWarning, @@ -419,7 +419,7 @@ def test_make_realization_data_vector( ): likelihood = ConstGaussianPM(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) likelihood.update(params) with pytest.warns( UserWarning, @@ -433,7 +433,7 @@ def test_make_realization_data_vector( new_likelihood = ConstGaussianPM(statistics=[TrivialStatistic()]) new_likelihood.read(new_sacc) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) new_likelihood.update(params) data_vector = new_likelihood.get_data_vector() data_vector_list.append(data_vector) @@ -466,7 +466,7 @@ def test_make_realization_no_noise( ): likelihood = ConstGaussianPM(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) likelihood.update(params) with pytest.warns( UserWarning, @@ -478,7 +478,7 @@ def test_make_realization_no_noise( new_likelihood = ConstGaussianPM(statistics=[TrivialStatistic()]) new_likelihood.read(new_sacc) - params = firecrown.parameters.ParamsMap(mean=10.5) + params = firecrown.updatable.ParamsMap(mean=10.5) new_likelihood.update(params) assert_allclose(new_likelihood.get_data_vector(), likelihood.get_theory_vector()) diff --git a/tests/likelihood/gauss_family/test_student_t.py b/tests/likelihood/gauss_family/test_student_t.py index fc22ba9bc..5efdb7622 100644 --- a/tests/likelihood/gauss_family/test_student_t.py +++ b/tests/likelihood/gauss_family/test_student_t.py @@ -5,11 +5,11 @@ import sacc -import firecrown.parameters +import firecrown.updatable from firecrown.likelihood._student_t import StudentT from firecrown.likelihood._gaussfamily import Statistic from firecrown.modeling_tools import ModelingTools -from firecrown.parameters import ( +from firecrown.updatable import ( RequiredParameters, DerivedParameterCollection, ParamsMap, @@ -110,7 +110,7 @@ def test_using_good_sacc( ): likelihood = StudentT(statistics=trivial_stats) likelihood.read(sacc_data_for_trivial_stat) - params = firecrown.parameters.ParamsMap(mean=10.5, nu=5.0) + params = firecrown.updatable.ParamsMap(mean=10.5, nu=5.0) likelihood.update(params) chisq = likelihood.compute_chisq(tools_with_vanilla_cosmology) assert isinstance(chisq, float) diff --git a/tests/likelihood/lkdir/lk_derived_parameter.py b/tests/likelihood/lkdir/lk_derived_parameter.py index 71afc7abd..13b2e12bf 100644 --- a/tests/likelihood/lkdir/lk_derived_parameter.py +++ b/tests/likelihood/lkdir/lk_derived_parameter.py @@ -5,7 +5,7 @@ from firecrown.likelihood._likelihood import NamedParameters from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory, PoweSpecAmplitudeParameter +from firecrown.modeling_tools import CCLFactory, PoweSpecAmplitudeParameter from . import lkmodule diff --git a/tests/likelihood/lkdir/lk_needing_param.py b/tests/likelihood/lkdir/lk_needing_param.py index 5f104c53d..443afacbb 100644 --- a/tests/likelihood/lkdir/lk_needing_param.py +++ b/tests/likelihood/lkdir/lk_needing_param.py @@ -5,7 +5,7 @@ from firecrown.likelihood._likelihood import NamedParameters from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory, PoweSpecAmplitudeParameter +from firecrown.modeling_tools import CCLFactory, PoweSpecAmplitudeParameter from . import lkmodule diff --git a/tests/likelihood/lkdir/lk_sampler_parameter.py b/tests/likelihood/lkdir/lk_sampler_parameter.py index 49173fa54..52a635c94 100644 --- a/tests/likelihood/lkdir/lk_sampler_parameter.py +++ b/tests/likelihood/lkdir/lk_sampler_parameter.py @@ -6,7 +6,7 @@ from firecrown.likelihood._likelihood import NamedParameters from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory, PoweSpecAmplitudeParameter +from firecrown.modeling_tools import CCLFactory, PoweSpecAmplitudeParameter from . import lkmodule diff --git a/tests/likelihood/lkdir/lkmodule.py b/tests/likelihood/lkdir/lkmodule.py index 9b5689738..3e1060c09 100644 --- a/tests/likelihood/lkdir/lkmodule.py +++ b/tests/likelihood/lkdir/lkmodule.py @@ -3,7 +3,7 @@ """ import sacc -from firecrown.parameters import DerivedParameterCollection, DerivedParameter +from firecrown.updatable import DerivedParameterCollection, DerivedParameter from firecrown.likelihood._likelihood import Likelihood, NamedParameters from firecrown.modeling_tools import ModelingTools from firecrown import parameters diff --git a/tests/likelihood/lkdir/lkscript.py b/tests/likelihood/lkdir/lkscript.py index 964a28751..c85297f82 100644 --- a/tests/likelihood/lkdir/lkscript.py +++ b/tests/likelihood/lkdir/lkscript.py @@ -3,7 +3,7 @@ """ from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory, PoweSpecAmplitudeParameter +from firecrown.modeling_tools import CCLFactory, PoweSpecAmplitudeParameter # Support both relative import (when used as package) and absolute import # (when lkdir is in sys.path) diff --git a/tests/likelihood/lkdir/lkscript_pure_ccl.py b/tests/likelihood/lkdir/lkscript_pure_ccl.py index 865fa725f..55dda26cf 100644 --- a/tests/likelihood/lkdir/lkscript_pure_ccl.py +++ b/tests/likelihood/lkdir/lkscript_pure_ccl.py @@ -3,7 +3,7 @@ """ from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import ( +from firecrown.modeling_tools import ( CCLFactory, PoweSpecAmplitudeParameter, CCLCreationMode, diff --git a/tests/likelihood/test_factories.py b/tests/likelihood/test_factories.py index 7041efb21..53ab499ca 100644 --- a/tests/likelihood/test_factories.py +++ b/tests/likelihood/test_factories.py @@ -978,7 +978,7 @@ def test_build_two_point_likelihood_harmonic_filters_result_empty( def test_two_point_experiment_with_ccl_factory() -> None: """Test TwoPointExperiment with custom CCLFactory.""" - from firecrown.ccl_factory import CCLFactory + from firecrown.modeling_tools import CCLFactory custom_ccl_factory = CCLFactory() two_point_experiment = TwoPointExperiment( diff --git a/tests/likelihood/test_likelihood.py b/tests/likelihood/test_likelihood.py index a5b968d47..5a53de249 100644 --- a/tests/likelihood/test_likelihood.py +++ b/tests/likelihood/test_likelihood.py @@ -6,7 +6,7 @@ import firecrown.likelihood._likelihood as like from firecrown.modeling_tools import ModelingTools from firecrown.likelihood._likelihood import NamedParameters -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap class LikelihoodThatThrowsIntegrationError(like.Likelihood): diff --git a/tests/likelihood/test_weak_lensing.py b/tests/likelihood/test_weak_lensing.py index 2a476df44..232d3c613 100644 --- a/tests/likelihood/test_weak_lensing.py +++ b/tests/likelihood/test_weak_lensing.py @@ -10,7 +10,7 @@ import firecrown.likelihood._weak_lensing as wl from firecrown.metadata_types import InferredGalaxyZDist, Galaxies from firecrown.modeling_tools import ModelingTools -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap @pytest.fixture diff --git a/tests/metadata/test_metadata_two_point_sacc.py b/tests/metadata/test_metadata_two_point_sacc.py index e9cd482a2..40f4a68ba 100644 --- a/tests/metadata/test_metadata_two_point_sacc.py +++ b/tests/metadata/test_metadata_two_point_sacc.py @@ -12,7 +12,7 @@ import sacc -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap from firecrown.metadata_types import ( AutoMeasurementBinPairSelector, AutoNameBinPairSelector, diff --git a/tests/models/two_point/test_theory.py b/tests/models/two_point/test_theory.py index e6eb537f8..8164a0137 100644 --- a/tests/models/two_point/test_theory.py +++ b/tests/models/two_point/test_theory.py @@ -9,7 +9,7 @@ from firecrown.generators import LogLinearElls, EllOrThetaConfig from firecrown.metadata_types import TracerNames from firecrown.modeling_tools import ModelingTools -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap from firecrown.utils import ClIntegrationOptions from firecrown.models.two_point import ApplyInterpolationWhen from firecrown.likelihood import Source diff --git a/tests/test_bug_398.py b/tests/test_bug_398.py index f129c64f7..e7683d1db 100644 --- a/tests/test_bug_398.py +++ b/tests/test_bug_398.py @@ -23,7 +23,7 @@ from firecrown.likelihood._gaussian import ConstGaussian from firecrown.modeling_tools import ModelingTools from firecrown.likelihood._likelihood import Likelihood, NamedParameters -from firecrown.ccl_factory import CCLFactory, PoweSpecAmplitudeParameter +from firecrown.modeling_tools import CCLFactory, PoweSpecAmplitudeParameter def build_likelihood( diff --git a/tests/test_ccl_factory_deprecated.py b/tests/test_ccl_factory_deprecated.py new file mode 100644 index 000000000..ca9f8647c --- /dev/null +++ b/tests/test_ccl_factory_deprecated.py @@ -0,0 +1,161 @@ +"""Tests for the deprecated firecrown.ccl_factory module. + +This module tests that the deprecated firecrown.ccl_factory package: +1. Emits appropriate deprecation warnings when imported +2. Maintains backward compatibility by re-exporting all items +3. Re-exported items are identical to those in firecrown.modeling_tools + +Note: Only the first test checks for warnings, as Python's import system +caches modules and won't re-execute the module-level code that emits the warning. +""" + +import sys +import pytest + + +def test_ccl_factory_deprecation_warning(): + """Test that importing ccl_factory emits DeprecationWarning. + + This must be the first test that imports the module, as subsequent imports + from the same Python process will use the cached module. + """ + # Remove the module if it's already imported + if "firecrown.ccl_factory" in sys.modules: + del sys.modules["firecrown.ccl_factory"] + + with pytest.warns( + DeprecationWarning, + match="firecrown.ccl_factory is deprecated and will be removed", + ): + # pylint: disable=import-outside-toplevel,unused-import + import firecrown.ccl_factory # noqa: F401 + + +def test_ccl_factory_deprecation_warning_content(): + """Test the deprecation warning mentions modeling_tools. + + This test relies on module caching, so it won't see the warning. + We just verify the module is importable. + """ + # pylint: disable=import-outside-toplevel,unused-import + import firecrown.ccl_factory # noqa: F401 + + # If we get here without error, the import worked + + +def test_all_items_importable(): + """Test that all __all__ items can be imported from deprecated package.""" + # pylint: disable=import-outside-toplevel + from firecrown.ccl_factory import ( + Background, + CAMBExtraParams, + CCLCalculatorArgs, + CCLCreationMode, + CCLFactory, + CCLPureModeTransferFunction, + CCLSplineParams, + MuSigmaModel, + PoweSpecAmplitudeParameter, + PowerSpec, + ) + + # Verify all imports succeeded and are not None + assert Background is not None + assert CAMBExtraParams is not None + assert CCLCalculatorArgs is not None + assert CCLCreationMode is not None + assert CCLFactory is not None + assert CCLPureModeTransferFunction is not None + assert CCLSplineParams is not None + assert MuSigmaModel is not None + assert PoweSpecAmplitudeParameter is not None + assert PowerSpec is not None + + +# pylint: disable=too-many-locals +def test_items_identical_to_new_location(): + """Test that imported items are the same objects as in modeling_tools.""" + # pylint: disable=import-outside-toplevel + # Import from both locations + from firecrown.ccl_factory import ( + Background as OldBackground, + CAMBExtraParams as OldCAMBExtraParams, + CCLCalculatorArgs as OldCCLCalculatorArgs, + CCLCreationMode as OldCCLCreationMode, + CCLFactory as OldCCLFactory, + CCLPureModeTransferFunction as OldCCLPureModeTransferFunction, + CCLSplineParams as OldCCLSplineParams, + MuSigmaModel as OldMuSigmaModel, + PoweSpecAmplitudeParameter as OldPoweSpecAmplitudeParameter, + PowerSpec as OldPowerSpec, + ) + + from firecrown.modeling_tools import ( + Background, + CAMBExtraParams, + CCLCalculatorArgs, + CCLCreationMode, + CCLFactory, + CCLPureModeTransferFunction, + CCLSplineParams, + MuSigmaModel, + PoweSpecAmplitudeParameter, + PowerSpec, + ) + + # Verify they are the same objects (identity, not just equality) + assert OldBackground is Background + assert OldCAMBExtraParams is CAMBExtraParams + assert OldCCLCalculatorArgs is CCLCalculatorArgs + assert OldCCLCreationMode is CCLCreationMode + assert OldCCLFactory is CCLFactory + assert OldCCLPureModeTransferFunction is CCLPureModeTransferFunction + assert OldCCLSplineParams is CCLSplineParams + assert OldMuSigmaModel is MuSigmaModel + assert OldPoweSpecAmplitudeParameter is PoweSpecAmplitudeParameter + assert OldPowerSpec is PowerSpec + + +def test_module_import_as_alias(): + """Test importing the module with an alias.""" + # pylint: disable=import-outside-toplevel + import firecrown.ccl_factory as fac + + # Verify we can access items through the alias + assert hasattr(fac, "CCLFactory") + assert hasattr(fac, "PoweSpecAmplitudeParameter") + assert hasattr(fac, "CCLCreationMode") + + +def test_ccl_factory_all_list(): + """Test that __all__ is preserved in deprecated module.""" + # pylint: disable=import-outside-toplevel + import firecrown.ccl_factory + + expected_all = [ + "PowerSpec", + "Background", + "CCLCalculatorArgs", + "PoweSpecAmplitudeParameter", + "CCLCreationMode", + "CCLPureModeTransferFunction", + "MuSigmaModel", + "CAMBExtraParams", + "CCLSplineParams", + "CCLFactory", + ] + + assert set(firecrown.ccl_factory.__all__) == set(expected_all) + + +def test_ccl_factory_functional(): + """Test that CCLFactory from deprecated module is functional.""" + # pylint: disable=import-outside-toplevel + from firecrown.ccl_factory import CCLFactory, PoweSpecAmplitudeParameter + + # Create a CCLFactory instance + factory = CCLFactory(amplitude_parameter=PoweSpecAmplitudeParameter.SIGMA8) + + # Verify basic functionality + assert factory.amplitude_parameter == PoweSpecAmplitudeParameter.SIGMA8 + assert factory is not None diff --git a/tests/test_cmb_factories.py b/tests/test_cmb_factories.py index a17834ed1..0c7306d99 100644 --- a/tests/test_cmb_factories.py +++ b/tests/test_cmb_factories.py @@ -13,7 +13,7 @@ ) from firecrown.metadata_types import InferredGalaxyZDist, CMB from firecrown.modeling_tools import ModelingTools -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap def test_cmb_convergence_args(): diff --git a/tests/test_hm_systematics.py b/tests/test_hm_systematics.py index b880c8fbe..dfa75e156 100644 --- a/tests/test_hm_systematics.py +++ b/tests/test_hm_systematics.py @@ -21,7 +21,7 @@ from firecrown.likelihood._gaussian import ConstGaussian from firecrown.likelihood.factories import load_sacc_data from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory +from firecrown.modeling_tools import CCLFactory @pytest.fixture(name="weak_lensing_source") diff --git a/tests/test_modeling_tools.py b/tests/test_modeling_tools.py index f1a103c8e..bc7e3b54c 100644 --- a/tests/test_modeling_tools.py +++ b/tests/test_modeling_tools.py @@ -10,7 +10,7 @@ ModelingTools, PowerspectrumModifier, ) -from firecrown.ccl_factory import Background, CCLCalculatorArgs +from firecrown.modeling_tools import Background, CCLCalculatorArgs from firecrown.models.cluster import ClusterAbundance, ClusterDeltaSigma diff --git a/tests/test_ccl_factory.py b/tests/test_modeling_tools_ccl_factory.py similarity index 99% rename from tests/test_ccl_factory.py rename to tests/test_modeling_tools_ccl_factory.py index 96bb74520..1acf32ee0 100644 --- a/tests/test_ccl_factory.py +++ b/tests/test_modeling_tools_ccl_factory.py @@ -10,7 +10,7 @@ from pyccl.neutrinos import NeutrinoMassSplits import pydantic -from firecrown.ccl_factory import ( +from firecrown.modeling_tools import ( CAMBExtraParams, CCLCalculatorArgs, CCLCreationMode, @@ -21,7 +21,7 @@ CCLSplineParams, ) from firecrown.updatable import get_default_params_map -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap from firecrown.utils import base_model_from_yaml, base_model_to_yaml from firecrown.modeling_tools import ModelingTools diff --git a/tests/test_number_counts_magnification_bias_systematic.py b/tests/test_number_counts_magnification_bias_systematic.py index 19040eb31..c6d59acb5 100644 --- a/tests/test_number_counts_magnification_bias_systematic.py +++ b/tests/test_number_counts_magnification_bias_systematic.py @@ -7,7 +7,7 @@ import firecrown.likelihood.number_counts._systematics as nc_sys import firecrown.likelihood.number_counts._args as nc_args -import firecrown.parameters as fp +import firecrown.updatable as fp import firecrown.modeling_tools as mt diff --git a/tests/test_parameters_deprecated.py b/tests/test_parameters_deprecated.py new file mode 100644 index 000000000..7b1d1159c --- /dev/null +++ b/tests/test_parameters_deprecated.py @@ -0,0 +1,115 @@ +"""Tests for the deprecated firecrown.parameters module. + +This module verifies that the deprecated firecrown.parameters module correctly +re-exports all functionality from firecrown.updatable with appropriate +deprecation warnings. +""" + +import sys +import warnings + + +def test_parameters_module_emits_deprecation_warning(): + """Importing firecrown.parameters should emit a DeprecationWarning.""" + # Remove the module from sys.modules if it's already imported + # so we can import it fresh and catch the warning + if "firecrown.parameters" in sys.modules: + del sys.modules["firecrown.parameters"] + + with warnings.catch_warnings(record=True) as w: + warnings.simplefilter("always") + # Import should trigger warning + # pylint: disable=unused-import,import-outside-toplevel + import firecrown.parameters # noqa: F401 + + # Should have at least one warning (there might be multiple due to + # imports within the module) + assert len(w) >= 1 + # First warning should be a DeprecationWarning + assert issubclass(w[0].category, DeprecationWarning) + # Check message content + assert "firecrown.parameters module is deprecated" in str(w[0].message) + assert "firecrown.updatable" in str(w[0].message) + + +def test_parameters_exports_all_names(): + """All expected names should be available from firecrown.parameters.""" + # pylint: disable=import-outside-toplevel + import firecrown.parameters as params + + expected_names = [ + "DerivedParameter", + "DerivedParameterCollection", + "InternalParameter", + "ParamsMap", + "RequiredParameters", + "SamplerParameter", + "handle_unused_params", + "parameter_get_full_name", + "register_new_updatable_parameter", + ] + + for name in expected_names: + assert hasattr(params, name), f"Missing export: {name}" + + +def test_parameters_exports_are_same_as_updatable(): + """Exported names should be the same objects as in firecrown.updatable.""" + # pylint: disable=import-outside-toplevel + import firecrown.parameters as params + from firecrown import updatable + + names_to_check = [ + "DerivedParameter", + "DerivedParameterCollection", + "InternalParameter", + "ParamsMap", + "RequiredParameters", + "SamplerParameter", + "handle_unused_params", + "parameter_get_full_name", + "register_new_updatable_parameter", + ] + + for name in names_to_check: + params_obj = getattr(params, name) + updatable_obj = getattr(updatable, name) + assert ( + params_obj is updatable_obj + ), f"{name} from parameters is not the same object as from updatable" + + +def test_params_map_from_deprecated_module(): + """Ensure ParamsMap imported from deprecated module works correctly.""" + # pylint: disable=import-outside-toplevel + from firecrown.parameters import ParamsMap + + params = ParamsMap({"a": 1.0, "b": 2.0}) + assert params.get("a") == 1.0 + assert params.get("b") == 2.0 + + +def test_required_parameters_from_deprecated_module(): + """Ensure RequiredParameters imported from deprecated module works correctly.""" + # pylint: disable=import-outside-toplevel + from firecrown.parameters import RequiredParameters, SamplerParameter + + req_params = RequiredParameters( + [ + SamplerParameter(name="param1", default_value=1.0), + SamplerParameter(name="param2", default_value=2.0), + ] + ) + assert "param1" in req_params.get_params_names() + assert "param2" in req_params.get_params_names() + + +def test_derived_parameter_from_deprecated_module(): + """Ensure DerivedParameter imported from deprecated module works correctly.""" + # pylint: disable=import-outside-toplevel + from firecrown.parameters import DerivedParameter + + derived = DerivedParameter("derived_parameters", "sum", 3.14) + assert derived.name == "sum" + assert derived.section == "derived_parameters" + assert derived.val == 3.14 diff --git a/tests/test_pt_systematics.py b/tests/test_pt_systematics.py index d1df18a17..b0ea7e77c 100644 --- a/tests/test_pt_systematics.py +++ b/tests/test_pt_systematics.py @@ -25,8 +25,8 @@ ) from firecrown.likelihood._gaussian import ConstGaussian from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory, PoweSpecAmplitudeParameter -import firecrown.parameters as fcp +from firecrown.modeling_tools import CCLFactory, PoweSpecAmplitudeParameter +import firecrown.updatable as fcp @pytest.fixture(name="weak_lensing_source") diff --git a/tests/test_scale_cuts_with_window.py b/tests/test_scale_cuts_with_window.py index 62bcb1b7d..c067192b9 100644 --- a/tests/test_scale_cuts_with_window.py +++ b/tests/test_scale_cuts_with_window.py @@ -20,7 +20,7 @@ ) from firecrown.metadata_types import Galaxies, TwoPointFilterMethod from firecrown.modeling_tools import ModelingTools -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap from firecrown.updatable import get_default_params from firecrown.utils import base_model_from_yaml, upper_triangle_indices diff --git a/tests/test_updatable.py b/tests/test_updatable.py index 60c4fe078..5cf538756 100644 --- a/tests/test_updatable.py +++ b/tests/test_updatable.py @@ -12,15 +12,13 @@ UpdatableUsageRecord, get_default_params, get_default_params_map, -) -from firecrown import parameters -from firecrown.parameters import ( RequiredParameters, ParamsMap, DerivedParameter, DerivedParameterCollection, SamplerParameter, ) +from firecrown import parameters class MinimalUpdatable(Updatable): diff --git a/tests/test_parameters.py b/tests/test_updatable_parameters.py similarity index 99% rename from tests/test_parameters.py rename to tests/test_updatable_parameters.py index ec567a0fd..612be3dbb 100644 --- a/tests/test_parameters.py +++ b/tests/test_updatable_parameters.py @@ -1,11 +1,11 @@ """ -Tests for the module firecrown.parameters. +Tests for the parameter classes in firecrown.updatable. """ import re import pytest import numpy as np -from firecrown.parameters import ( +from firecrown.updatable import ( RequiredParameters, parameter_get_full_name, ParamsMap, @@ -15,8 +15,6 @@ register_new_updatable_parameter, InternalParameter, SamplerParameter, -) -from firecrown.updatable import ( Updatable, UpdatableUsageRecord, get_default_params, diff --git a/tutorial/inferred_zdist.qmd b/tutorial/inferred_zdist.qmd index 46bb1b398..fd347de92 100644 --- a/tutorial/inferred_zdist.qmd +++ b/tutorial/inferred_zdist.qmd @@ -98,7 +98,7 @@ Depending on the theoretical model, the `TwoPoint` object may require additional To obtain a list of required parameters, one can use the following commands: ```{python} -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap req_params = two_point_lens0_lens0.required_parameters() default_values = req_params.get_default_values() @@ -129,9 +129,9 @@ Now, we must configure the cosmology and prepare the two-point statistics for an ```{python} from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory +from firecrown.modeling_tools import CCLFactory from firecrown.updatable import get_default_params_map -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap tools = ModelingTools(ccl_factory=CCLFactory(require_nonlinear_pk=True)) params = get_default_params_map(tools, two_point_lens0_lens0) diff --git a/tutorial/systematics.qmd b/tutorial/systematics.qmd index cd0255340..b2e51e798 100644 --- a/tutorial/systematics.qmd +++ b/tutorial/systematics.qmd @@ -197,7 +197,7 @@ After having been updated, the systematic object will have its attribute values ```{python} # Continuing from above... -import firecrown.parameters as params +import firecrown.updatable as params systematic.update(params.ParamsMap({ "lens0_eta": 19.0, "lens0_r_lim": 24.0, diff --git a/tutorial/two_point_factory_basics.qmd b/tutorial/two_point_factory_basics.qmd index 6fb1f293f..e312974ce 100644 --- a/tutorial/two_point_factory_basics.qmd +++ b/tutorial/two_point_factory_basics.qmd @@ -190,9 +190,9 @@ all_two_point_functions = TwoPoint.from_metadata( ```{python} from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory +from firecrown.modeling_tools import CCLFactory from firecrown.updatable import get_default_params -from firecrown.parameters import ParamsMap +from firecrown.updatable import ParamsMap # Setup modeling tools and parameters tools = ModelingTools(ccl_factory=CCLFactory(require_nonlinear_pk=True)) diff --git a/tutorial/two_point_integration.qmd b/tutorial/two_point_integration.qmd index c35d4fb22..f5b2ed54a 100644 --- a/tutorial/two_point_integration.qmd +++ b/tutorial/two_point_integration.qmd @@ -15,7 +15,7 @@ For background on the factory system, see [Two-Point Factory Basics](two_point_f [[likelihood|TwoPointFactory]] objects can include integration options, allowing control over how two-point functions are computed. The example below shows how to create a [[likelihood|TwoPointFactory]] with integration options that reproduce the default behavior. We also create additional [[likelihood|TwoPointFactory]] objects with alternative integration configurations: [[utils|ClIntegrationMethod.LIMBER]] with [[utils|ClLimberMethod.GSL_SPLINE]], [[utils|ClIntegrationMethod.FKEM_AUTO]], and [[utils|ClIntegrationMethod.FKEM_L_LIMBER]]. -The lens and source redshift bin collections used for the computations are imported from the `firecrown.generators.inferred_galaxy_zdist` module: [[generators|LSST_Y1_LENS_HARMONIC_BIN_COLLECTION]] and [[generators|LSST_Y1_SOURCE_HARMONIC_BIN_COLLECTION]]. +The lens and source redshift bin collections used for the computations are imported from the `firecrown.generators` module: [[generators|LSST_Y1_LENS_HARMONIC_BIN_COLLECTION]] and [[generators|LSST_Y1_SOURCE_HARMONIC_BIN_COLLECTION]]. ## Setting Up Test Data diff --git a/tutorial/two_point_scale_cuts.qmd b/tutorial/two_point_scale_cuts.qmd index 05b23ea2d..d62bc5d89 100644 --- a/tutorial/two_point_scale_cuts.qmd +++ b/tutorial/two_point_scale_cuts.qmd @@ -158,7 +158,7 @@ Next, we create likelihoods from the [[likelihood.factories|TwoPointExperiment]] ```{python} from firecrown.modeling_tools import ModelingTools -from firecrown.ccl_factory import CCLFactory +from firecrown.modeling_tools import CCLFactory from firecrown.updatable import get_default_params_map tools = ModelingTools()