'Store ICA solution into a fiff file.
Parameters
fname : str
The absolute path of the file name to save the ICA solution into.
The file name should end with -ica.fif or -ica.fif.gz.'

@verbose
def save(self, fname):

    if (self.current_fit == 'unfitted'):
        raise RuntimeError('No    fit    available.    Please    first    fit    ICA')
    check_fname(fname, 'ICA', ('-ica.fif', '-ica.fif.gz'))
    logger.info(('Writing    ica    solution    to    %s...' % fname))
    fid = start_file(fname)
    try:
        _write_ica(fid, self)
        end_file(fid)
    except Exception:
        end_file(fid)
        os.remove(fname)
        raise
    return self
