astro py:docs

- Index
- Modules

### Navigation

- next »
- « previous |
- Astropy v5.2.1 »
- Cosmological Calculations (`astropy.cosmology`) »
- Parameter

# Parameter

class astropy.cosmology.Parameter(*, derived=False, unit=None, equivalencies=[], fvalidate='default', fmt='', doc=None)

  Bases: `object`

  Cosmological parameter (descriptor).

  Should only be used with a `Cosmology` subclass.

  Parameters:
    derived bool (optional, keyword-only)

      Whether the Parameter is ‘derived’, default `False`. Derived parameters behave similarly to normal parameters, but are not sorted by the `Cosmology` signature (probably not there) and are not included in all methods. For reference, see `Ode0` in `FlatFLRWMixin`, which removes \(\Omega_{de,0}`\) as an independent parameter (\(\Omega_{de,0} \equiv 1 - \Omega_{tot}\)).

    unit astropy:unit-like or `python:None` (optional, keyword-only)

      The `Unit` for the Parameter. If None (default) no unit as assumed.

    equivalencies `Equivalency` or python:sequence thereof

      Unit equivalencies for this Parameter.

    fvalidate `python:callable()`[[`object`, `object`, `Any`], `Any`] or `python:str` (optional, keyword-only)

      Function to validate the Parameter value from instances of the cosmology class. If “default”, uses default validator to assign units (with equivalencies), if Parameter has units. For other valid string options, see `Parameter._registry_validators`. ‘fvalidate’ can also be set through a decorator with `validator()`.

    fmt `python:str` (optional, keyword-only)

      `format` specification, used when making string representation of the containing Cosmology. See https://docs.python.org/3/library/string.html#formatspec

      Deprecated since version 5.1.

    doc `python:str` or `python:None` (optional, keyword-only)

      Parameter description.

  Examples

  For worked examples see `FLRW`.

  Attributes Summary

  `derived` | Whether the Parameter is derived; true parameters are not.
  `equivalencies` | Equivalencies used when initializing Parameter.
  `format_spec` | Deprecated since version 5.1.
  `fvalidate` | Function to validate a potential value of this Parameter.
  `name` | Parameter name.
  `unit` | Parameter unit.

  Methods Summary

  `clone`(**kw) | Clone this `Parameter`, changing any constructor argument.
  `register_validator`(key[, fvalidate]) | Decorator to register a new kind of validator function.
  `validate`(cosmology, value) | Run the validator on this Parameter.
  `validator`(fvalidate) | Make new Parameter with custom `fvalidate`.

  Attributes Documentation

  derived

    Whether the Parameter is derived; true parameters are not.

  equivalencies

    Equivalencies used when initializing Parameter.

  format_spec

    Deprecated since version 5.1: The format_spec attribute is deprecated and may be removed in a future version.

  fvalidate

    Function to validate a potential value of this Parameter.

  name

    Parameter name.

  unit

    Parameter unit.

  Methods Documentation

  clone(**kw)

    Clone this `Parameter`, changing any constructor argument.

    Parameters:
      **kw

        Passed to constructor. The current values, eg. `fvalidate` are used as the default values, so an empty `**kw` is an exact copy.

    Examples

        >>> p = Parameter()
        >>> p
        Parameter(derived=False, unit=None, equivalencies=[],
                  fvalidate='default', doc=None)

        >>> p.clone(unit="km")
        Parameter(derived=False, unit=Unit("km"), equivalencies=[],
                  fvalidate='default', doc=None)

  classmethod register_validator(key, fvalidate=None)

    Decorator to register a new kind of validator function.

    Parameters:
      key `python:str`
      fvalidate `python:callable()`[[`object`, `object`, `Any`], `Any`] or `python:None`, optional

        Value validation function.

    Returns:
      `validator` or `python:callable()`[`validator`]

        if validator is None returns a function that takes and registers a validator. This allows `register_validator` to be used as a decorator.

  validate(cosmology, value)

    Run the validator on this Parameter.

    Parameters:
      cosmology `Cosmology` instance
      value `Any`

        The object to validate.

    Returns:
      `Any`

        The output of calling `fvalidate(cosmology, self, value)` (yes, that parameter order).

  validator(fvalidate)

    Make new Parameter with custom `fvalidate`.

    Note: `Parameter.fvalidator` must be the top-most descriptor decorator.

    Parameters:
      fvalidate `python:callable()`[[type, type, `Any`], `Any`]
    Returns:
      `Parameter`

        Copy of this Parameter but with custom `fvalidate`.