Parameter

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

Bases: object

Cosmological parameter (descriptor).

Should only be used with a Cosmology subclass.

Parameters
fvalidatecallable()[[object, object, Any], Any] or str, optional

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().

docstr or None, optional

Parameter description.

unitastropy:unit-like or None (optional, keyword-only)

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

equivalenciesEquivalency or sequence thereof

Unit equivalencies for this Parameter.

fmtstr (optional, keyword-only)

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

derivedbool (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}\)).

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

String format specification.

fvalidate

Function to validate a potential value of this Parameter..

name

Parameter name.

unit

Parameter unit.

Methods Summary

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

String format specification.

fvalidate

Function to validate a potential value of this Parameter..

name

Parameter name.

unit

Parameter unit.

Methods Documentation

classmethod register_validator(key, fvalidate=None)[source]

Decorator to register a new kind of validator function.

Parameters
keystr
fvalidatecallable()[[object, object, Any], Any] or None, optional

Value validation function.

Returns
validator or 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)[source]

Run the validator on this Parameter.

Parameters
cosmologyCosmology instance
valueAny

The object to validate.

Returns
Any

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

validator(fvalidate)[source]

Make new Parameter with custom fvalidate.

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

Parameters
fvalidatecallable()[[type, type, Any], Any]
Returns
Parameter

Copy of this Parameter but with custom fvalidate.