Exemple #1
0
def get_composition_descriptors(comp):
    if isinstance(comp, str):
        comp = parse_comp(comp)
    elif isinstance(comp, qmpy.Composition):
        comp = comp.comp
    desc = {}
    for elt in elts:
        desc['frac_%s' % elt] = comp.get(elt, 0)
    return desc
Exemple #2
0
def get_composition_descriptors(comp):
    if isinstance(comp, basestring):
        comp = parse_comp(comp)
    elif isinstance(comp, qmpy.Composition):
        comp = comp.comp
    desc = {}
    for elt in elts:
        desc['frac_%s' % elt] = comp.get(elt,0)
    return desc
Exemple #3
0
def get_basic_composition_descriptors(comp):
    if isinstance(comp, basestring):
        comp = parse_comp(comp)
    elif isinstance(comp, qmpy.Composition):
        comp = comp.comp
    comp = unit_comp(comp)
    desc = {}

    for attr in ['electronegativity', 'period', 'group', 
            'mass', 'atomic_radii', 'z']:
        data = [ elts[elt][attr] for elt in comp ]
        for func in [ max_diff, average ]:
            desc['%s_%s' % (func.__doc__, attr)] = func(data)

    desc['s_val'] = sum([ elts[e]['s_elec']*x for e,x in comp.items() ])
    desc['p_val'] = sum([ elts[e]['p_elec']*x for e,x in comp.items() ])
    desc['d_val'] = sum([ elts[e]['d_elec']*x for e,x in comp.items() ])
    desc['f_val'] = sum([ elts[e]['f_elec']*x for e,x in comp.items() ])
    return desc
Exemple #4
0
def get_basic_composition_descriptors(comp):
    if isinstance(comp, str):
        comp = parse_comp(comp)
    elif isinstance(comp, qmpy.Composition):
        comp = comp.comp
    comp = unit_comp(comp)
    desc = {}

    for attr in [
            "electronegativity", "period", "group", "mass", "atomic_radii", "z"
    ]:
        data = [elts[elt][attr] for elt in comp]
        for func in [max_diff, average]:
            desc["%s_%s" % (func.__doc__, attr)] = func(data)

    desc["s_val"] = sum([elts[e]["s_elec"] * x for e, x in list(comp.items())])
    desc["p_val"] = sum([elts[e]["p_elec"] * x for e, x in list(comp.items())])
    desc["d_val"] = sum([elts[e]["d_elec"] * x for e, x in list(comp.items())])
    desc["f_val"] = sum([elts[e]["f_elec"] * x for e, x in list(comp.items())])
    return desc