def METHOD_NAME(
        self, n_post_atoms, synapse_info, min_delay=None,
        max_delay=None):
    # Break the array into n_post_atoms units
    split_positions = numpy.arange(
        0, synapse_info.n_post_neurons, n_post_atoms)
    split_array = numpy.array_split(self.__array, split_positions)
    # Sum the 1s in each split row
    sum_rows = [numpy.sum(s, axis=1) for s in split_array]
    # Find the maximum of the rows
    max_connections_row = max([x for y in sum_rows for x in y])
    if min_delay is None and max_delay is None:
        return max_connections_row
    return self._get_n_connections_from_pre_vertex_with_delay_maximum(
        synapse_info.delays, self.__n_total_connections,
        max_connections_row, min_delay, max_delay, synapse_info)