def profile_loglike(self, x):
        """Profile log-likelihood.

        Returns ``L_prof(x,y=y_min|z')``  : where y_min is the 
                                            value of y that minimizes 
                                            L for a given x.

        This will used the cached '~fermipy.castro.Interpolator' object 
        if possible, and construct it if needed.
        """
        if self._prof_interp is None:
            # This calculates values and caches the spline
            return self._profile_loglike(x)[1]

        x = np.array(x, ndmin=1)
        return self._prof_interp(x)