In [ ]:
%pylab inline
figsize(18,10)
from pyemto.emto_parser import Get_DOS

DOS for L10 FeNi alloy with long-range order

Long-range order parameter:

0.50 = Fully random alloy.
0.00 = Fully ordered alloy.


In [ ]:
random = Get_DOS('FeNi_0.50_dos.dos')
order = Get_DOS('FeNi_0.00_dos.dos')

In [ ]:
for ar, ao in zip(random.atoms, order.atoms):
    if ar.spin == 'up' and ao.spin == 'up':
        if ar.label == 'Ni' and ao.label == 'Ni':
            plot(ar.e, ar.dos, '--', label='random, site {}'.format(ar.sublattice))
            plot(ao.e, ao.dos, label= 'order, site {}'.format(ao.sublattice))
plt.title('Ni UP')
plt.legend()
plt.show()

for ar, ao in zip(random.atoms, order.atoms):
    if ar.spin == 'down' and ao.spin == 'down':
        if ar.label == 'Ni' and ao.label == 'Ni':
            plot(ar.e, ar.dos, '--', label='random, site {}'.format(ar.sublattice))
            plot(ao.e, ao.dos, label= 'order, site {}'.format(ao.sublattice))
plt.title('Ni DOWN')
plt.legend()
plt.show()

for ar, ao in zip(random.atoms, order.atoms):
    if ar.spin == 'up' and ao.spin == 'up':
        if ar.label == 'Fe' and ao.label == 'Fe':
            plot(ar.e, ar.dos, '--', label='random, site {}'.format(ar.sublattice))
            plot(ao.e, ao.dos, label= 'order, site {}'.format(ao.sublattice))
plt.title('Fe UP')
plt.legend()
plt.show()

for ar, ao in zip(random.atoms, order.atoms):
    if ar.spin == 'down' and ao.spin == 'down':
        if ar.label == 'Fe' and ao.label == 'Fe':
            plot(ar.e, ar.dos, '--', label='random, site {}'.format(ar.sublattice))
            plot(ao.e, ao.dos, label= 'order, site {}'.format(ao.sublattice))
plt.title('Fe DOWN')
plt.legend()
plt.show()

In [ ]:
rNi = random.elems['Ni']
rFe = random.elems['Fe']
oNi = order.elems['Ni']
oFe = order.elems['Fe']

plot(rNi.e, rNi.ddos,'--', label='randon')
plot(oNi.e, oNi.ddos, label='order')
plt.title('Ni')
plt.legend()
plt.xlim(-0.5,0)
plt.show()

plot(rFe.e, rFe.ddos,'--', label='random')
plot(oFe.e, oFe.ddos, label='order')
plt.title('Fe')
plt.legend()
plt.xlim(-0.5,0)
plt.show()