def matchQueryModule(self, template, target):
        if target.name != template.name:
            return False
        if target.getNumFunctions()>template.getNumFunctions():
            return False
        candidateFunctions = {}
        for fid in xrange(template.getNumFunctions()):
            f = template.functions[fid]
            append_to_dict_of_lists(candidateFunctions, f.name, f)

        for f in target.functions:
            if f.name not in candidateFunctions:
                return False
            fNotMatch = True
            candidates = candidateFunctions[f.name]
            for cf in candidates:
                if len(cf.params)!=len(f.params):
                    continue
                pMatch = True
                for pid in xrange(len(cf.params)):
                    cp = cf.params[pid]
                    p = f.params[pid]                    
                    if not self.matchQueryParam(p, cp):
                        pMatch = False
                        break
                if pMatch:
                    fNotMatch = False
                    break
            if fNotMatch:
                return False
        return True
Perform online computation of covariance matrix eigen{values,vectors}.
dataset/ETHPy150Open VisTrails/VisTrails/vistrails/core/query/visual.py/VisualQuery.matchQueryModule--crossover with--dataset/ETHPy150Open lisa-lab/pylearn2/pylearn2/models/pca.py/OnlinePCA._cov_eigen