File: C:/Users/fred/anaconda3/Lib/site-packages/astropy/cosmology/__init__.py
# Licensed under a 3-clause BSD style license - see LICENSE.rst
"""Cosmology with Astropy.
:mod:`~astropy.cosmology` contains classes and functions for cosmological distance
measures and other cosmology-related calculations.
See the :ref:`astropy-cosmology` for more detailed usage examples and references.
"""
from . import realizations, units
from .core import Cosmology, CosmologyError, FlatCosmologyMixin
from .flrw import (
FLRW,
FlatFLRWMixin,
FlatLambdaCDM,
Flatw0waCDM,
Flatw0wzCDM,
FlatwCDM,
FlatwpwaCDM,
LambdaCDM,
w0waCDM,
w0wzCDM,
wCDM,
wpwaCDM,
)
from .funcs import cosmology_equal, z_at_value
from .parameter import Parameter
from .realizations import available, default_cosmology
__all__ = [
# Core
"Cosmology",
"CosmologyError",
"FlatCosmologyMixin",
# FLRW
"FLRW",
"FlatFLRWMixin",
"LambdaCDM",
"FlatLambdaCDM",
"wCDM",
"FlatwCDM",
"w0waCDM",
"Flatw0waCDM",
"w0wzCDM",
"Flatw0wzCDM",
"wpwaCDM",
"FlatwpwaCDM",
# Funcs
"z_at_value",
"cosmology_equal",
# Parameter
"Parameter",
# Realizations
"realizations",
"available",
"default_cosmology",
"WMAP1",
"WMAP3",
"WMAP5",
"WMAP7",
"WMAP9",
"Planck13",
"Planck15",
"Planck18",
# Units
"units",
]
def __getattr__(name: str) -> Cosmology:
"""Get realizations using lazy import from ``PEP 562``.
Raises
------
AttributeError
If "name" is not in :mod:`astropy.cosmology.realizations`
"""
if name not in available:
raise AttributeError(f"module {__name__!r} has no attribute {name!r}.")
return getattr(realizations, name)
def __dir__() -> list[str]:
"""Directory, including lazily-imported objects."""
return __all__