def METHOD_NAME(self, force=False):
    """The self._tmp variables are needed to speed up calculations.
    If they are already created, the no need to recreate
    """
    if "onegrid" not in self._tmp or force:
        logger.info("Make a tmp onegrid instance...")
        self._tmp["onegrid"] = self.copy()
        self._tmp["onegrid"].reduce_to_one_layer()
        one = self._tmp["onegrid"]
        logger.info("Make a tmp onegrid instance... DONE")
        logger.info("Make a set of tmp surfaces for I J locations + depth...")
        self._tmp["topd"] = xtgeo.surface_from_grid3d(
            one, where="top", mode="depth", rfactor=4
        )
        self._tmp["topi"] = xtgeo.surface_from_grid3d(
            one, where="top", mode="i", rfactor=4
        )
        self._tmp["topj"] = xtgeo.surface_from_grid3d(
            one, where="top", mode="j", rfactor=4
        )
        self._tmp["basd"] = xtgeo.surface_from_grid3d(
            one, where="base", mode="depth", rfactor=4
        )
        self._tmp["basi"] = xtgeo.surface_from_grid3d(
            one, where="base", mode="i", rfactor=4
        )
        self._tmp["basj"] = xtgeo.surface_from_grid3d(
            one, where="base", mode="j", rfactor=4
        )
        self._tmp["topi"].fill()
        self._tmp["topj"].fill()
        self._tmp["basi"].fill()
        self._tmp["basj"].fill()
        self._tmp["topi_carr"] = rl.get_carr_double(self._tmp["topi"])
        self._tmp["topj_carr"] = rl.get_carr_double(self._tmp["topj"])
        self._tmp["basi_carr"] = rl.get_carr_double(self._tmp["basi"])
        self._tmp["basj_carr"] = rl.get_carr_double(self._tmp["basj"])
        logger.info("Make a set of tmp surfaces for I J locations + depth... DONE")
    else:
        logger.info("Re-use existing onegrid and tmp surfaces for I J")