code: def _pdf(self, xloc, cache, **kwargs):
          
          floc = numpy.zeros(xloc.shape)
          for dist in evaluation.sorted_dependencies(self, reverse=True):
              if dist not in self.inverse_map:
                  continue
              idx = self.inverse_map[dist]
              xloc_ = xloc[idx].reshape(1, -1)
              floc[idx] = evaluation.evaluate_density(
                  dist, xloc_, cache=cache)[0]
          return floc
docs: Example:
              >>> dist = chaospy.J(chaospy.Uniform(), chaospy.Normal())
              >>> print(numpy.around(dist.pdf([[-0.5, 0.5, 1.5], [-1, 0, 1]]), 4))
              [0.     0.3989 0.    ]
              >>> d0 = chaospy.Uniform()
              >>> dist = chaospy.J(d0, d0+chaospy.Uniform())
              >>> print(dist.pdf([[-0.5, 0.5, 1.5], [0, 1, 2]]))
              [0. 1. 0.]