popsynth.auxiliary_sampler module¶
-
class
popsynth.auxiliary_sampler.
AuxiliaryParameter
(default: Optional[float] = None, vmin: Optional[float] = None, vmax: Optional[float] = None, free: bool = True)[source]¶
-
class
popsynth.auxiliary_sampler.
AuxiliarySampler
(name: str, observed: bool = True, uses_distance: bool = False, uses_luminosity: bool = False, uses_sky_position: bool = False)[source]¶ Bases:
object
-
__init__
(name: str, observed: bool = True, uses_distance: bool = False, uses_luminosity: bool = False, uses_sky_position: bool = False) → None[source]¶ Base class for auxiliary samplers.
Parameters: - name (str) – Name of the sampler
- observed (bool) – True if the property is observed, False if it is latent. Defaults to True
- uses_distance (bool) – True if sampler uses distance values
- uses_luminosity (bool) – True if sampler uses luminosities
- uses_sky_position (bool) – True if sampler uses sky positions
-
draw
(size: int = 1)[source]¶ Draw the primary and secondary samplers. This is the main call.
Parameters: size (int) – The number of samples to draw
-
get_secondary_objects
(recursive_secondaries: Optional[Dict[str, Any]] = None) → Dict[str, Any][source]¶ Get secondary objects.
Parameters: recursive_secondaries – Recursive dict of secondaries Returns: Dict of objects Return type: Dict[str, Any]
-
get_secondary_properties
(graph=None, primary=None, spatial_distribution=None) → popsynth.auxiliary_sampler.SecondaryStorage[source]¶ Get properties of secondary samplers.
Parameters: - graph – Graph
- primary – Primary sampler
- spatial_distribution – Spatial Distribution
Returns: Dict of samplers
Return type: SamplerDict
-
has_secondary
¶ if this sampler has a secondary :returns:
-
is_secondary
¶ If another sampler depends on this
Returns:
-
luminosity_distance
¶ luminosity distance if needed.
-
make_secondary
(parent_name: str) → None[source]¶ sets this sampler as secondary for book keeping
Parameters: parent_name (str) – Returns:
-
name
¶ The name of the sampler
Returns:
-
obs_name
¶
-
obs_values
¶ The values obscured by measurement error.
Returns:
-
observed
¶ if this sampler is observed
Returns:
-
parents
¶ The parents of this sampler
-
secondary_samplers
¶ Secondary samplers. :returns: Dict of secondary samplers :rtype:
SamplerDict
-
selection
¶ The selection booleans on the values
Returns:
-
selector
¶ The selection probability object
Returns:
-
set_luminosity
(luminosity: Union[Sequence[Sequence[Sequence[Sequence[Sequence[Any]]]]], numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype], Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]], Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]], Sequence[Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]]], Sequence[Sequence[Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]]]], bool, int, float, complex, str, bytes, Sequence[Union[bool, int, float, complex, str, bytes]], Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]], Sequence[Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]]], Sequence[Sequence[Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]]]]]) → None[source]¶ Set the luminosity values.
Parameters: luminosity (ArrayLike) – Luminosity
-
set_secondary_sampler
(sampler: popsynth.auxiliary_sampler.AuxiliarySampler) → None[source]¶ Add a secondary sampler upon which this sampler will depend. The sampled values can be accessed via an internal dictionary with the samplers ‘name’
self._secondary_sampler[‘name’].true_values self._secondary_sampler[‘name’].obs_values
Parameters: sampler ("AuxiliarySampler") – An auxiliary sampler Returns:
-
set_selection_probability
(selector: popsynth.selection_probability.selection_probability.SelectionProbability) → None[source]¶ Set a selection probabilty for this sampler.
Parameters: selector (SelectionProbability) – A selection probability oobject Returns:
-
set_spatial_values
(value: popsynth.distribution.SpatialContainer) → None[source]¶ Set the spatial values.
Parameters: value ( SpatialContainer
) – Spatial values
-
true_values
¶ The true or latent values
Returns:
-
truth
¶ A dictionary containing true paramters used to simulate the distribution
-
uses_distance
¶ If this uses distance
Returns:
-
uses_luminosity
¶ If this uses luminosity
Returns:
-
uses_sky_position
¶ If this uses sky position
Returns:
-
-
class
popsynth.auxiliary_sampler.
DerivedLumAuxSampler
(name: str, uses_distance: bool = False)[source]¶
-
class
popsynth.auxiliary_sampler.
NonObservedAuxSampler
(name: str, uses_distance: bool = False, uses_luminosity: bool = False)[source]¶ Bases:
popsynth.auxiliary_sampler.AuxiliarySampler
-
__init__
(name: str, uses_distance: bool = False, uses_luminosity: bool = False)[source]¶ Base class for auxiliary samplers.
Parameters: - name (str) – Name of the sampler
- observed (bool) – True if the property is observed, False if it is latent. Defaults to True
- uses_distance (bool) – True if sampler uses distance values
- uses_luminosity (bool) – True if sampler uses luminosities
- uses_sky_position (bool) – True if sampler uses sky positions
-
-
class
popsynth.auxiliary_sampler.
SecondaryContainer
(name: str, true_values: Union[Sequence[Sequence[Sequence[Sequence[Sequence[Any]]]]], numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype], Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]], Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]], Sequence[Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]]], Sequence[Sequence[Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]]]], bool, int, float, complex, str, bytes, Sequence[Union[bool, int, float, complex, str, bytes]], Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]], Sequence[Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]]], Sequence[Sequence[Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]]]]], obs_values: Union[Sequence[Sequence[Sequence[Sequence[Sequence[Any]]]]], numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype], Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]], Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]], Sequence[Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]]], Sequence[Sequence[Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]]]], bool, int, float, complex, str, bytes, Sequence[Union[bool, int, float, complex, str, bytes]], Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]], Sequence[Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]]], Sequence[Sequence[Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]]]]], selection: Union[Sequence[Sequence[Sequence[Sequence[Sequence[Any]]]]], numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype], Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]], Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]], Sequence[Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]]], Sequence[Sequence[Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]]]], bool, int, float, complex, str, bytes, Sequence[Union[bool, int, float, complex, str, bytes]], Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]], Sequence[Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]]], Sequence[Sequence[Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]]]]])[source]¶ Bases:
object
-
__init__
(name: str, true_values: Union[Sequence[Sequence[Sequence[Sequence[Sequence[Any]]]]], numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype], Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]], Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]], Sequence[Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]]], Sequence[Sequence[Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]]]], bool, int, float, complex, str, bytes, Sequence[Union[bool, int, float, complex, str, bytes]], Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]], Sequence[Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]]], Sequence[Sequence[Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]]]]], obs_values: Union[Sequence[Sequence[Sequence[Sequence[Sequence[Any]]]]], numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype], Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]], Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]], Sequence[Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]]], Sequence[Sequence[Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]]]], bool, int, float, complex, str, bytes, Sequence[Union[bool, int, float, complex, str, bytes]], Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]], Sequence[Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]]], Sequence[Sequence[Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]]]]], selection: Union[Sequence[Sequence[Sequence[Sequence[Sequence[Any]]]]], numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype], Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]], Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]], Sequence[Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]]], Sequence[Sequence[Sequence[Sequence[numpy.typing._array_like._SupportsArray[numpy.dtype][numpy.dtype]]]]], bool, int, float, complex, str, bytes, Sequence[Union[bool, int, float, complex, str, bytes]], Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]], Sequence[Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]]], Sequence[Sequence[Sequence[Sequence[Union[bool, int, float, complex, str, bytes]]]]]]) → None[source]¶ A container for secondary properties that adds dict and dictionary access
Parameters: - name (str) – the name of the secondary
- true_values (ArrayLike) –
- obs_values (ArrayLike) –
- selection (ArrayLike) –
Returns:
-
name
¶
-
obs_values
¶ The observed values of the sampler
Returns:
-
selection
¶ The the slection of the values
Returns:
-
true_values
¶ The true (latent) values of the sampler
Returns:
-
-
class
popsynth.auxiliary_sampler.
SecondaryStorage
[source]¶ Bases:
dotmap.DotMap
-
add_secondary
(secondary_values: popsynth.auxiliary_sampler.SecondaryContainer) → None[source]¶ Add on a new secondary
Parameters: secondary_values (SecondaryContainer) – Returns:
-