code: def prior_rvs(self, size=1, prior=None):
          
          # draw values from the prior
          if prior is None:
              prior = self.prior_distribution
          p0 = prior.rvs(size=size)
          # transform if necessary
          if self.sampling_transforms is not None:
              ptrans = self.sampling_transforms.apply(p0)
              # pull out the sampling args
              p0 = FieldArray.from_arrays([ptrans[arg]
                                           for arg in self.sampling_params],
                                          names=self.sampling_params)
          return p0
docs: Returns random variates drawn from the prior.
  
          If the ``sampling_params`` are different from the ``variable_params``,
          the variates are transformed to the `sampling_params` parameter space
          before being returned.
  
          Parameters
          ----------
          size : int, optional
              Number of random values to return for each parameter. Default is 1.
          prior : JointDistribution, optional
              Use the given prior to draw values rather than the saved prior.
  
          Returns
          -------
          FieldArray
              A field array of the random values.