def METHOD_NAME(self, builder):
    builder.request_attribute("relative fall velocity")
    self.particulator = builder.particulator
    self.dimension = len(builder.particulator.environment.mesh.grid)
    self.grid = self.particulator.Storage.from_ndarray(
        np.array(builder.particulator.environment.mesh.grid, dtype=np.int64)
    )
    if self.dimension == 1:
        courant_field = (np.full(self.grid[0] + 1, np.nan),)
    elif self.dimension == 2:
        courant_field = (
            np.full((self.grid[0] + 1, self.grid[1]), np.nan),
            np.full((self.grid[0], self.grid[1] + 1), np.nan),
        )
    elif self.dimension == 3:
        courant_field = (
            np.full((self.grid[0] + 1, self.grid[1], self.grid[2]), np.nan),
            np.full((self.grid[0], self.grid[1] + 1, self.grid[2]), np.nan),
            np.full((self.grid[0], self.grid[1], self.grid[2] + 1), np.nan),
        )
    else:
        raise NotImplementedError()
    self.courant = tuple(
        self.particulator.Storage.from_ndarray(courant_field[i])
        for i in range(self.dimension)
    )
    self.displacement = self.particulator.Storage.from_ndarray(
        np.zeros((self.dimension, self.particulator.n_sd))
    )
    self.temp = self.particulator.Storage.from_ndarray(
        np.zeros((self.dimension, self.particulator.n_sd), dtype=np.int64)
    )