def METHOD_NAME(self, Mp):
    """Forecast the Radius distribution given the mass distribution.
    Args:
        Mp (astropy Quantity array):
            Planet mass in units of Earth mass
    Returns:
        Rp (astropy Quantity array):
            Planet radius in units of Earth radius
    """
    mass = Mp.to("earthMass").value
    assert (
        np.min(mass) > 3e-4 and np.max(mass) < 3e5
    ), "Mass range out of model expectation. Returning None."
    sample_size = len(mass)
    logm = np.log10(mass)
    prob = np.random.random(sample_size)
    logr = np.ones_like(logm)
    hyper_ind = np.random.randint(
        low=0, high=np.shape(self.all_hyper)[0], size=sample_size
    )
    hyper = self.all_hyper[hyper_ind, :]
    for i in range(sample_size):
        logr[i] = self.piece_linear(hyper[i], logm[i], prob[i])
    Rp = 10.0**logr * u.earthRad
    return Rp