def _compute_site_term(self, C, vs30):
        """
        Compute site term as a function of vs30: 4th, 5th and 6th terms in
        equation 2 page 462.
        """
        # for rock values the site term is zero
        site_term = np.zeros_like(vs30)

        # hard soil
        site_term[(vs30 >= 360) & (vs30 < 800)] = C['aB']

        # medium soil
        site_term[(vs30 >= 180) & (vs30 < 360)] = C['aC']

        # soft soil
        site_term[vs30 < 180] = C['aD']

        return site_term
Compute site term as a function of vs30: 4th, 5th and 6th terms in
        equation 2 page 462.