def NFWProfile(pos,
               concentration,
               Rvir,
               sample_shape, **kwargs):

  pos = ed.as_random_variable(tfd.TransformedDistribution(distribution=tfd.VonMisesFisher(tf.one_hot(tf.zeros_like(concentration, dtype=tf.int32),3), 0),
                                   bijector=tfb.AffineScalar(shift=pos, scale=tf.expand_dims(ed.as_random_variable(NFW(concentration, Rvir, name='radius'), sample_shape=sample_shape), axis=-1)),
                                                        name='position'), sample_shape=sample_shape)
  return pos
 def model_scoped():
   return ed.as_random_variable(dist)
 def model_wrapped():
   return ed.as_random_variable(tfd.Normal(1., 0.1, name="x"))
Exemplo n.º 4
0
import inspect
from tensorflow_probability import edward2
from tensorflow_probability.python.edward2.generated_random_variables import *
import distributions

_globals = globals()
for _name in sorted(dir(distributions)):
    _candidate = getattr(distributions, _name)
    if (inspect.isclass(_candidate)
            and issubclass(_candidate, distributions.Distribution)
            and _candidate.__module__ == 'distributions'):
        _globals[
            _name] = lambda *params, _candidate=_candidate, **kwargs: edward2.as_random_variable(
                _candidate(*params, **kwargs))

    del _candidate
 def model_scoped():
   return ed.as_random_variable(dist)
 def model_wrapped():
   return ed.as_random_variable(tfd.Normal(1., 0.1, name="x"))