def _generate_fingerprint(operation, atoms, atoms_parameters, connectivity,
    **kwargs):
    """Return the parameters of a convolutions of atomic properties
    based on connectivity in a periodic unit cell.

    Parameters
    ----------
    operations : list of functions
        A list of operation functions to produce the fingerprints from.
    atoms : object
        Atomic structure to generate fingerprint for.
    atoms_parameters : ndarray (N, M)
        General chemical properties specific to this atoms object
        and list of seed parameters.
    connectivity : ndarray (N, N)
        Estimated connectivity matrix where n is the number
        of atoms in the atoms-object.

    Returns
    -------
    fingerprint : ndarray (M,)
        Fingerprint produced from a given operation and seed parameters.
    """
    fingerprint = operation(atoms=atoms, atoms_parameters=atoms_parameters,
        connectivity=connectivity, **kwargs)
    return fingerprint
