예제 #1
0
    interactions = networks[letter]['interactions']
    edges = interactions.keys()
    thresholds = networks[letter]['thresholds']
    IG = nx.DiGraph()
    IG.add_edges_from(edges)
                
    mc = dict_to_model(interactions, thresholds=thresholds, add_morphogene=True)
    smallmc = dict_to_model(interactions, thresholds=thresholds, add_morphogene=False)

    lpss = mc._psc._localParameterSets
    print len(mc._psc), "parameter sets."

    gpss = mc._psc.get_parameterSets()
    countaccepted = 0
    countrejected = 0
    for gps in gpss:
        #print gps
        subgps = dict((combi, encode_gps_full(subparset(gps, is_m1_in=combi[0], is_m2_in=combi[1]))) for combi in combis)
        parameter_set_IG_list = [decode_gps_full(subgps[combi]) for combi in combis]
        parameter_sets = [elem[0] for elem in parameter_set_IG_list]
        accepted = all(filter_byAL(smallmc, parameter_sets[i], ALformulas[i]) for i in range(3))*1
        if accepted:
            print "accepting:", gps
            export_STG(mc, gps, filename="_nonboolean_"+letter+"_"+encode_gps(gps, base=10)+".gml", initialRules=None)
            countaccepted += 1
        else:
            print "rejecting:", gps
            countrejected += 1
    print "accepted:", countaccepted
    print "rejected:", countrejected
        
예제 #2
0
        print "considering nwkey:", nwkey
        #print networks[nwkey]
        print networks[nwkey]

        mc = dict_to_model(networks[nwkey], add_morphogene)
        npsc = len(mc._psc)
        print nwkey, ":", npsc, "parameter sets."
        pstotal += npsc
        print nwkey, ":", pstotal, "parameter sets in total."
        gpss = mc._psc.get_parameterSets()
        thesesubgpss = set()
        #print "IG.edges() =", mc._IG.edges()
        for gps in gpss:
            for combi in combis:
                #print subparset(gps, is_m1_in=combi[0], is_m2_in=combi[1])
                subgps = encode_gps_full(subparset(gps, is_m1_in=combi[0], is_m2_in=combi[1])) # full means include edges in the encoding
                thesesubgpss.add(subgps)
            #print gps
            #print encode_gps(gps)
        allsubgpss = allsubgpss.union(thesesubgpss)
        print "unique small gps to date:", len(allsubgpss)
        small_gps_codes[nwkey] = [npsc, pstotal, len(allsubgpss)]
        d[str(nwkey)] = thesesubgpss
        # d[x] contains for network x for all gps for all regions the subgps
        tend = datetime.now()
        print "total execution time:", tend-tstart

    d.close()    
    picklename = "small_gps_codes_from_unconstrained_excluding_overregulated.pkl"
    print "pickling results to:", picklename
    cPickle.dump(small_gps_codes, file(picklename, "w"))