In [1]:
%matplotlib inline
import matplotlib
matplotlib.style.use('fivethirtyeight')
import paramselect
import os
import fnmatch
def recursive_glob(start, pattern):
    matches = []
    for root, dirnames, filenames in os.walk(start):
        for filename in fnmatch.filter(filenames, pattern):
            matches.append(os.path.join(root, filename))
    return matches

datasets = paramselect.load_datasets(sorted(recursive_glob('Al-Ni', '*.json')))

In [2]:
from paramselect import fit, _multiphase_error
from paramselect import multi_phase_fit
from paramselect import _multiphase_fitting_system
from pycalphad import Database, equilibrium
%time dbf = fit('input.json', datasets, saveall=True)


FITTING:  BCC_B2
9 endmembers (6 distinct by symmetry)
ENDMEMBER: ('AL', 'AL', 'VA')
SYMMETRIC_ENDMEMBERS:  [('AL', 'AL', 'VA')]
ENDMEMBER: ('AL', 'NI', 'VA')
['CPM_FORM']: datasets found: 1
(T*log(T),) rss: 14.988883895 AIC: 175.267766573
(T*log(T), T**2) rss: 0.287388338954 AIC: -75.8029363477
(T*log(T), T**2, 1/T) rss: 0.00998663905176 AIC: -288.816459148
(T*log(T), T**2, 1/T, T**3) rss: 0.00726733042695 AIC: -307.159440568
['SM_FORM']: datasets found: 1
(T,) rss: 0.00256968120974 AIC: -379.694299563
['HM_FORM']: datasets found: 2
(1,) rss: 173532.435506 AIC: 786.167787589
SYMMETRIC_ENDMEMBERS:  [('AL', 'NI', 'VA'), ('NI', 'AL', 'VA')]
ENDMEMBER: ('AL', 'VA', 'VA')
['CPM_FORM']: datasets found: 0
['SM_FORM']: datasets found: 1
(T,) rss: 0.0 AIC: -inf
['HM_FORM']: datasets found: 1
(1,) rss: 0.0 AIC: -inf
SYMMETRIC_ENDMEMBERS:  [('AL', 'VA', 'VA'), ('VA', 'AL', 'VA')]
ENDMEMBER: ('NI', 'NI', 'VA')
SYMMETRIC_ENDMEMBERS:  [('NI', 'NI', 'VA')]
ENDMEMBER: ('NI', 'VA', 'VA')
['CPM_FORM']: datasets found: 0
['SM_FORM']: datasets found: 0
['HM_FORM']: datasets found: 1
(1,) rss: 0.0 AIC: -inf
SYMMETRIC_ENDMEMBERS:  [('NI', 'VA', 'VA'), ('VA', 'NI', 'VA')]
ENDMEMBER: ('VA', 'VA', 'VA')
['CPM_FORM']: datasets found: 0
['SM_FORM']: datasets found: 0
['HM_FORM']: datasets found: 0
SYMMETRIC_ENDMEMBERS:  [('VA', 'VA', 'VA')]
15 distinct binary interactions
INTERACTION: ('AL', ('AL', 'NI'), 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'VA'), ('AL', 'NI', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 2
[YS] rss: 56928744.6099 AIC: 73.4292437969
[YS, YS*Z] rss: 54621570.9005 AIC: 75.2637577365
[YS, YS*Z, YS*Z**2] rss: 54621570.9005 AIC: 77.2637577365
[YS, YS*Z, YS*Z**2, YS*Z**3] rss: 54621570.9005 AIC: 79.2637577365
[45262.9 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: ('AL', ('AL', 'VA'), 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'VA'), ('AL', 'VA', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: ('AL', ('NI', 'VA'), 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'NI', 'VA'), ('AL', 'VA', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 2
[YS] rss: 1943407.32761 AIC: 59.9198133796
[YS, YS*Z] rss: 1483161.22585 AIC: 60.8387453249
[YS, YS*Z, YS*Z**2] rss: 1483161.22585 AIC: 62.8387453249
[YS, YS*Z, YS*Z**2, YS*Z**3] rss: 1483161.22585 AIC: 64.8387453249
[-28577.7 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('AL', 'NI'), 'NI', 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'NI', 'VA'), ('NI', 'NI', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 2
[YS] rss: 672770.000307 AIC: 55.6766351893
[YS, YS*Z] rss: 596240.153321 AIC: 57.1935952268
[YS, YS*Z, YS*Z**2] rss: 596240.153321 AIC: 59.1935952268
[YS, YS*Z, YS*Z**2, YS*Z**3] rss: 596240.153321 AIC: 61.1935952268
[-20275.1 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('AL', 'NI'), 'VA', 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'VA', 'VA'), ('NI', 'VA', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 2
[YS] rss: 56406289.2126 AIC: 37.6961824422
[YS, YS*Z] rss: 56406289.2126 AIC: 39.6961824422
[YS, YS*Z, YS*Z**2] rss: 56406289.2126 AIC: 41.6961824422
[YS, YS*Z, YS*Z**2, YS*Z**3] rss: 56406289.2126 AIC: 43.6961824422
[-150055.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('AL', 'VA'), 'NI', 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'NI', 'VA'), ('VA', 'NI', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 2
[YS] rss: 20012403.7667 AIC: 69.2474513105
[YS, YS*Z] rss: 12817704.8052 AIC: 69.4653518443
[YS, YS*Z, YS*Z**2] rss: 12817704.8052 AIC: 71.4653518443
[YS, YS*Z, YS*Z**2, YS*Z**3] rss: 12817704.8052 AIC: 73.4653518443
[41335.6 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('AL', 'VA'), 'VA', 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'VA', 'VA'), ('VA', 'VA', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 1
[YS] rss: 0.0 AIC: -inf
[YS, YS*Z] rss: 0.0 AIC: -inf
[YS, YS*Z, YS*Z**2] rss: 0.0 AIC: -inf
[YS, YS*Z, YS*Z**2, YS*Z**3] rss: 0.0 AIC: -inf
[67135.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: ('NI', ('NI', 'VA'), 'VA')
ENDMEMBERS FROM INTERACTION: [('NI', 'NI', 'VA'), ('NI', 'VA', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('NI', 'VA'), 'VA', 'VA')
ENDMEMBERS FROM INTERACTION: [('NI', 'VA', 'VA'), ('VA', 'VA', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 1
[YS] rss: 0.0 AIC: -inf
[YS, YS*Z] rss: 0.0 AIC: -inf
[YS, YS*Z, YS*Z**2] rss: 0.0 AIC: -inf
[YS, YS*Z, YS*Z**2, YS*Z**3] rss: 0.0 AIC: -inf
[34418.8 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('AL', 'NI'), ('AL', 'NI'), 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'VA'), ('AL', 'NI', 'VA'), ('NI', 'AL', 'VA'), ('NI', 'NI', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 1
[YS] rss: 22681384.5193 AIC: 52.8111652424
[YS, YS*Z] rss: 22358706.7018 AIC: 54.7681790943
[YS, YS*Z, YS*Z**2] rss: 22358706.7018 AIC: 56.7681790943
[YS, YS*Z, YS*Z**2, YS*Z**3] rss: 22358706.7018 AIC: 58.7681790943
[-152236.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('AL', 'NI'), ('AL', 'VA'), 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'VA'), ('AL', 'VA', 'VA'), ('NI', 'AL', 'VA'), ('NI', 'VA', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('AL', 'NI'), ('NI', 'VA'), 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'NI', 'VA'), ('AL', 'VA', 'VA'), ('NI', 'NI', 'VA'), ('NI', 'VA', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('AL', 'VA'), ('AL', 'VA'), 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'VA'), ('AL', 'VA', 'VA'), ('VA', 'AL', 'VA'), ('VA', 'VA', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('AL', 'VA'), ('NI', 'VA'), 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'NI', 'VA'), ('AL', 'VA', 'VA'), ('VA', 'NI', 'VA'), ('VA', 'VA', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('NI', 'VA'), ('NI', 'VA'), 'VA')
ENDMEMBERS FROM INTERACTION: [('NI', 'NI', 'VA'), ('NI', 'VA', 'VA'), ('VA', 'NI', 'VA'), ('VA', 'VA', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
FITTING:  LIQUID
2 endmembers (2 distinct by symmetry)
ENDMEMBER: ('AL',)
SYMMETRIC_ENDMEMBERS:  [('AL',)]
ENDMEMBER: ('NI',)
SYMMETRIC_ENDMEMBERS:  [('NI',)]
1 distinct binary interactions
INTERACTION: (('AL', 'NI'),)
ENDMEMBERS FROM INTERACTION: [('AL',), ('NI',)]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 1
[YS] rss: 94032758.7985 AIC: 350.82392177
[YS, YS*Z] rss: 74222612.3634 AIC: 348.3290088
[YS, YS*Z, YS*Z**2] rss: 5870112.86861 AIC: 302.122303974
[YS, YS*Z, YS*Z**2, YS*Z**3] rss: 5504592.61518 AIC: 302.900773131
[-197437.0 14423.4 61412.5 0.0 0 0 0 0 0 0]
FITTING:  AL3NI2
4 endmembers (4 distinct by symmetry)
ENDMEMBER: ('AL', 'AL', 'NI')
['CPM_FORM']: datasets found: 0
['SM_FORM']: datasets found: 1
(T,) rss: 0.0 AIC: -inf
['HM_FORM']: datasets found: 1
(1,) rss: 0.0 AIC: -inf
SYMMETRIC_ENDMEMBERS:  [('AL', 'AL', 'NI')]
ENDMEMBER: ('AL', 'NI', 'NI')
['CPM_FORM']: datasets found: 0
['SM_FORM']: datasets found: 0
['HM_FORM']: datasets found: 1
(1,) rss: 0.0 AIC: -inf
SYMMETRIC_ENDMEMBERS:  [('AL', 'NI', 'NI')]
ENDMEMBER: ('NI', 'AL', 'NI')
['CPM_FORM']: datasets found: 0
['SM_FORM']: datasets found: 0
['HM_FORM']: datasets found: 1
(1,) rss: 0.0 AIC: -inf
SYMMETRIC_ENDMEMBERS:  [('NI', 'AL', 'NI')]
ENDMEMBER: ('NI', 'NI', 'NI')
['CPM_FORM']: datasets found: 0
['SM_FORM']: datasets found: 0
['HM_FORM']: datasets found: 1
(1,) rss: 0.0 AIC: -inf
SYMMETRIC_ENDMEMBERS:  [('NI', 'NI', 'NI')]
5 distinct binary interactions
INTERACTION: ('AL', ('AL', 'NI'), 'NI')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'NI'), ('AL', 'NI', 'NI')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('AL', 'NI'), 'AL', 'NI')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'NI'), ('NI', 'AL', 'NI')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('AL', 'NI'), 'NI', 'NI')
ENDMEMBERS FROM INTERACTION: [('AL', 'NI', 'NI'), ('NI', 'NI', 'NI')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: ('NI', ('AL', 'NI'), 'NI')
ENDMEMBERS FROM INTERACTION: [('NI', 'AL', 'NI'), ('NI', 'NI', 'NI')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('AL', 'NI'), ('AL', 'NI'), 'NI')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'NI'), ('AL', 'NI', 'NI'), ('NI', 'AL', 'NI'), ('NI', 'NI', 'NI')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
FITTING:  AL3NI5
1 endmembers (1 distinct by symmetry)
ENDMEMBER: ('AL', 'NI')
['CPM_FORM']: datasets found: 0
['SM_FORM']: datasets found: 1
(T,) rss: 0.0 AIC: -inf
['HM_FORM']: datasets found: 1
(1,) rss: 0.0 AIC: -inf
SYMMETRIC_ENDMEMBERS:  [('AL', 'NI')]
0 distinct binary interactions
FITTING:  FCC_L12
16 endmembers (5 distinct by symmetry)
ENDMEMBER: ('AL', 'AL', 'AL', 'AL', 'VA')
SYMMETRIC_ENDMEMBERS:  [('AL', 'AL', 'AL', 'AL', 'VA')]
ENDMEMBER: ('AL', 'AL', 'AL', 'NI', 'VA')
['CPM_FORM']: datasets found: 0
['SM_FORM']: datasets found: 1
(T,) rss: 0.0 AIC: -inf
['HM_FORM']: datasets found: 3
(1,) rss: 126001.34 AIC: 37.2321434624
SYMMETRIC_ENDMEMBERS:  [('AL', 'AL', 'AL', 'NI', 'VA'), ('AL', 'AL', 'NI', 'AL', 'VA'), ('AL', 'NI', 'AL', 'AL', 'VA'), ('NI', 'AL', 'AL', 'AL', 'VA')]
ENDMEMBER: ('AL', 'AL', 'NI', 'NI', 'VA')
['CPM_FORM']: datasets found: 0
['SM_FORM']: datasets found: 1
(T,) rss: 0.0 AIC: -inf
['HM_FORM']: datasets found: 2
(1,) rss: 100238640.5 AIC: 38.846128612
SYMMETRIC_ENDMEMBERS:  [('AL', 'AL', 'NI', 'NI', 'VA'), ('AL', 'NI', 'NI', 'AL', 'VA'), ('NI', 'AL', 'AL', 'NI', 'VA'), ('NI', 'NI', 'AL', 'AL', 'VA')]
ENDMEMBER: ('AL', 'NI', 'NI', 'NI', 'VA')
['CPM_FORM']: datasets found: 1
(T*log(T),) rss: 5.67271997875 AIC: 113.082797874
(T*log(T), T**2) rss: 0.137679848376 AIC: -122.900750615
(T*log(T), T**2, 1/T) rss: 0.0340600362496 AIC: -210.296354526
(T*log(T), T**2, 1/T, T**3) rss: 0.00463296494425 AIC: -335.971727303
['SM_FORM']: datasets found: 1
(T,) rss: 0.0008948303987 AIC: -447.208086804
['HM_FORM']: datasets found: 3
(1,) rss: 66785.4610365 AIC: 735.209885321
SYMMETRIC_ENDMEMBERS:  [('AL', 'NI', 'NI', 'NI', 'VA'), ('NI', 'AL', 'NI', 'NI', 'VA'), ('NI', 'NI', 'AL', 'NI', 'VA'), ('NI', 'NI', 'NI', 'AL', 'VA')]
ENDMEMBER: ('NI', 'NI', 'NI', 'NI', 'VA')
SYMMETRIC_ENDMEMBERS:  [('NI', 'NI', 'NI', 'NI', 'VA')]
10 distinct binary interactions
INTERACTION: ('AL', 'AL', 'AL', ('AL', 'NI'), 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'AL', 'AL', 'VA'), ('AL', 'AL', 'AL', 'NI', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 1
[YS] rss: 12879.7647059 AIC: 30.3902381939
[YS, YS*Z] rss: 7879.76470588 AIC: 30.9161599682
[YS, YS*Z, YS*Z**2] rss: 4.39439700419e-25 AIC: -162.252891011
[YS, YS*Z, YS*Z**2, YS*Z**3] rss: 1.107646539e-23 AIC: -150.571658829
[5512.0 -533.333 -1952.0 0.0 0 0 0 0 0 0]
INTERACTION: ('AL', 'AL', ('AL', 'NI'), 'NI', 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'AL', 'NI', 'VA'), ('AL', 'AL', 'NI', 'NI', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 1
[YS] rss: 133130.117647 AIC: 37.3972467714
[YS, YS*Z] rss: 2.11764705882 AIC: 6.2509167832
[YS, YS*Z, YS*Z**2] rss: 3.87740912134e-26 AIC: -169.536135718
[YS, YS*Z, YS*Z**2, YS*Z**3] rss: 2.12288149393e-24 AIC: -155.527803612
[3768.0 2752.0 32.0 0.0 0 0 0 0 0 0]
INTERACTION: ('AL', ('AL', 'NI'), 'NI', 'NI', 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'NI', 'NI', 'VA'), ('AL', 'NI', 'NI', 'NI', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 1
[YS] rss: 184858.529412 AIC: 38.3820383169
[YS, YS*Z] rss: 13160.5294118 AIC: 32.4549322988
[YS, YS*Z, YS*Z**2] rss: 5.16987882846e-26 AIC: -168.673089501
[YS, YS*Z, YS*Z**2, YS*Z**3] rss: 1.31444169214e-23 AIC: -150.058135396
[-5196.0 3125.33 2522.67 0.0 0 0 0 0 0 0]
INTERACTION: (('AL', 'NI'), 'NI', 'NI', 'NI', 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'NI', 'NI', 'NI', 'VA'), ('NI', 'NI', 'NI', 'NI', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 2
[YS] rss: 74250.9411765 AIC: 69.2912343942
[YS, YS*Z] rss: 21350.9411765 AIC: 63.8131066054
[YS, YS*Z, YS*Z**2] rss: 9341.5 AIC: 60.8533327074
[YS, YS*Z, YS*Z**2, YS*Z**3] rss: 9341.5 AIC: 62.8533327074
[5122.0 1226.67 -1704.0 0.0 0 0 0 0 0 0]
INTERACTION: ('AL', 'AL', ('AL', 'NI'), ('AL', 'NI'), 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'AL', 'AL', 'VA'), ('AL', 'AL', 'AL', 'NI', 'VA'), ('AL', 'AL', 'NI', 'AL', 'VA'), ('AL', 'AL', 'NI', 'NI', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: ('AL', ('AL', 'NI'), ('AL', 'NI'), 'NI', 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'AL', 'NI', 'VA'), ('AL', 'AL', 'NI', 'NI', 'VA'), ('AL', 'NI', 'AL', 'NI', 'VA'), ('AL', 'NI', 'NI', 'NI', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('AL', 'NI'), ('AL', 'NI'), 'NI', 'NI', 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'NI', 'NI', 'VA'), ('AL', 'NI', 'NI', 'NI', 'VA'), ('NI', 'AL', 'NI', 'NI', 'VA'), ('NI', 'NI', 'NI', 'NI', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: ('AL', ('AL', 'NI'), ('AL', 'NI'), ('AL', 'NI'), 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'AL', 'AL', 'VA'), ('AL', 'AL', 'AL', 'NI', 'VA'), ('AL', 'AL', 'NI', 'AL', 'VA'), ('AL', 'AL', 'NI', 'NI', 'VA'), ('AL', 'NI', 'AL', 'AL', 'VA'), ('AL', 'NI', 'AL', 'NI', 'VA'), ('AL', 'NI', 'NI', 'AL', 'VA'), ('AL', 'NI', 'NI', 'NI', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('AL', 'NI'), ('AL', 'NI'), ('AL', 'NI'), 'NI', 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'AL', 'NI', 'VA'), ('AL', 'AL', 'NI', 'NI', 'VA'), ('AL', 'NI', 'AL', 'NI', 'VA'), ('AL', 'NI', 'NI', 'NI', 'VA'), ('NI', 'AL', 'AL', 'NI', 'VA'), ('NI', 'AL', 'NI', 'NI', 'VA'), ('NI', 'NI', 'AL', 'NI', 'VA'), ('NI', 'NI', 'NI', 'NI', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 0
[0.0 0.0 0.0 0.0 0 0 0 0 0 0]
INTERACTION: (('AL', 'NI'), ('AL', 'NI'), ('AL', 'NI'), ('AL', 'NI'), 'VA')
ENDMEMBERS FROM INTERACTION: [('AL', 'AL', 'AL', 'AL', 'VA'), ('AL', 'AL', 'AL', 'NI', 'VA'), ('AL', 'AL', 'NI', 'AL', 'VA'), ('AL', 'AL', 'NI', 'NI', 'VA'), ('AL', 'NI', 'AL', 'AL', 'VA'), ('AL', 'NI', 'AL', 'NI', 'VA'), ('AL', 'NI', 'NI', 'AL', 'VA'), ('AL', 'NI', 'NI', 'NI', 'VA'), ('NI', 'AL', 'AL', 'AL', 'VA'), ('NI', 'AL', 'AL', 'NI', 'VA'), ('NI', 'AL', 'NI', 'AL', 'VA'), ('NI', 'AL', 'NI', 'NI', 'VA'), ('NI', 'NI', 'AL', 'AL', 'VA'), ('NI', 'NI', 'AL', 'NI', 'VA'), ('NI', 'NI', 'NI', 'AL', 'VA'), ('NI', 'NI', 'NI', 'NI', 'VA')]
['CPM_FORM', 'CPM_MIX']: datasets found: 0
['SM_FORM', 'SM_MIX']: datasets found: 0
['HM_FORM', 'HM_MIX']: datasets found: 1
[YS] rss: 2201164.28144 AIC: 45.8134909915
[YS, YS*Z] rss: 2016857.1472 AIC: 47.5511529701
[YS, YS*Z, YS*Z**2] rss: 2016857.1472 AIC: 49.5511529701
[YS, YS*Z, YS*Z**2, YS*Z**3] rss: 2016857.1472 AIC: 51.5511529701
[-4257290.0 0.0 0.0 0.0 0 0 0 0 0 0]
FITTING:  AL3NI1
1 endmembers (1 distinct by symmetry)
ENDMEMBER: ('AL', 'NI')
['CPM_FORM']: datasets found: 0
['SM_FORM']: datasets found: 1
(T,) rss: 0.0 AIC: -inf
['HM_FORM']: datasets found: 1
(1,) rss: 0.0 AIC: -inf
SYMMETRIC_ENDMEMBERS:  [('AL', 'NI')]
0 distinct binary interactions
Total number of features: 86
Compiling phase models
Starting fit
MAIN ITERATION  1
ERROR SCALE 1327605.03352
ERROR SCALE 1320110.16085 (NO ZPF)
FEATURES [('AL3NI5', ('AL', 'NI'), 0, 1, 1.0), ('AL3NI5', ('AL', 'NI'), 0, T, 0.001), ('FCC_L12', ('AL', 'AL', 'AL', 'NI', 'VA'), 0, 1, 1.0), ('FCC_L12', ('AL', 'AL', 'AL', 'NI', 'VA'), 0, T, 0.001)]
MSE 1.0 ([ 0.  0.  0.  0.])
MSE 1.0 ([ 0.  0.  0.  0.])
MSE 1.00000700637 ([ 1.  0.  0.  0.])
MSE 0.999988681946 ([-1.618034  0.        0.        0.      ])
MSE 0.998892082177 ([-177.98374    0.         0.         0.     ])
MSE 0.997192995405 ([-801.7713934    0.           0.           0.       ])
MSE 1.00201473254 ([-1811.08102539     0.             0.             0.        ])
MSE 0.997192995405 ([-801.7713934    0.           0.           0.       ])
MSE 0.997192995405 ([-801.7713934    0.           0.           0.       ])
MSE 0.997195727606 ([-801.7713934    1.           0.           0.       ])
MSE 0.99718858033 ([-801.7713934   -1.618034     0.           0.       ])
MSE 0.999728691098 ([-801.7713934 -177.98374      0.           0.       ])
MSE 0.99718858033 ([-801.7713934   -1.618034     0.           0.       ])
MSE 0.997011036124 ([-801.7713934   -68.98373726    0.            0.        ])
MSE 0.997011036124 ([-801.7713934   -68.98373726    0.            0.        ])
MSE 0.997013063337 ([-801.7713934   -68.98373726    1.            0.        ])
MSE 0.997007786016 ([-801.7713934   -68.98373726   -1.618034      0.        ])
MSE 0.996866929362 ([-801.7713934   -68.98373726 -142.67055911    0.        ])
MSE 0.997235696746 ([-801.7713934   -68.98373726 -370.89834051    0.        ])
MSE 0.996866929362 ([-801.7713934   -68.98373726 -142.67055911    0.        ])
MSE 0.996866929362 ([-801.7713934   -68.98373726 -142.67055911    0.        ])
MSE 0.996866929384 ([-801.7713934   -68.98373726 -142.67055911    1.        ])
MSE 0.996866929419 ([-801.7713934   -68.98373726 -142.67055911   -1.618034  ])
MSE 0.996866929362 ([-801.7713934   -68.98373726 -142.67055911    0.        ])
MSE 0.99686692937 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02  -6.18033975e-01])
MSE 0.996866929365 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02   3.81966000e-01])
MSE 0.996866929362 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02  -6.11171860e-05])
MSE 0.996866929363 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02   1.56701165e-01])
MSE 0.996866929362 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02   5.98545170e-02])
MSE 0.996866929362 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02   2.89112214e-02])
MSE 0.996866929362 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02   1.42034271e-02])
MSE 0.996866929362 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02   7.03511539e-03])
MSE 0.996866929362 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02   3.48267651e-03])
MSE 0.996866929362 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02   1.71795952e-03])
MSE 0.996866929362 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02   6.56202125e-04])
MSE 0.996866929362 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02   2.50646901e-04])
MSE 0.996866929362 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02   9.57385941e-05])
MSE 0.996866929362 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02   3.65688878e-05])
MSE 0.996866929362 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02  -2.33446871e-05])
MSE 0.996866929362 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02   1.39680718e-05])
MSE 0.996866929362 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02  -8.91687674e-06])
MSE 1.00069824923 ([ -1.60354279e+03  -1.37967475e+02  -2.85341118e+02  -1.78337535e-05])
MSE 0.996866929362 ([ -8.01771393e+02  -6.89837373e+01  -1.42670559e+02  -8.91687674e-06])
MSE 0.996866698774 ([ -8.00771393e+02  -6.89837373e+01  -1.42670559e+02  -8.91687674e-06])
MSE 0.996866344173 ([ -7.99153359e+02  -6.89837373e+01  -1.42670559e+02  -8.91687674e-06])
MSE 0.996863768798 ([ -7.74867736e+02  -6.89837373e+01  -1.42670559e+02  -8.91687674e-06])
MSE 0.996870511218 ([ -7.35572771e+02  -6.89837373e+01  -1.42670559e+02  -8.91687674e-06])
MSE 0.996863768798 ([ -7.74867736e+02  -6.89837373e+01  -1.42670559e+02  -8.91687674e-06])
MSE 0.996863768798 ([ -7.74867736e+02  -6.89837373e+01  -1.42670559e+02  -8.91687674e-06])
MSE 0.996866406354 ([ -7.74867736e+02  -6.79837373e+01  -1.42670559e+02  -8.91687674e-06])
MSE 0.99685950686 ([ -7.74867736e+02  -7.06017713e+01  -1.42670559e+02  -8.91687674e-06])
MSE 0.999335782411 ([ -7.74867736e+02  -2.46967477e+02  -1.42670559e+02  -8.91687674e-06])
MSE 0.99685950686 ([ -7.74867736e+02  -7.06017713e+01  -1.42670559e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -8.91687674e-06])
MSE 0.996688345521 ([ -7.74867736e+02  -1.37967475e+02  -1.41670559e+02  -8.91687674e-06])
MSE 0.996688356976 ([ -7.74867736e+02  -1.37967475e+02  -1.44288593e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -8.91687674e-06])
MSE 0.996688341146 ([ -7.74867736e+02  -1.37967475e+02  -1.43288593e+02  -8.91687674e-06])
MSE 0.996688339474 ([ -7.74867736e+02  -1.37967475e+02  -1.42288593e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670574e+02  -8.91687674e-06])
MSE 0.996688338442 ([ -7.74867736e+02  -1.37967475e+02  -1.42660773e+02  -8.91687674e-06])
MSE 0.996688338442 ([ -7.74867736e+02  -1.37967475e+02  -1.42666821e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42668986e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42669839e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670221e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670402e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670487e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670532e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670549e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670565e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670555e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670561e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670558e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670560e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -8.91687674e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -8.91687674e-06])
MSE 0.996688338463 ([-774.8677356  -137.96747452 -142.67055915    0.99999108])
MSE 0.996688338499 ([-774.8677356  -137.96747452 -142.67055915   -1.61804292])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -8.91687674e-06])
MSE 0.99668833845 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -6.18042892e-01])
MSE 0.996688338445 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02   3.81957083e-01])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -3.05225154e-05])
MSE 0.996688338442 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02   1.83146332e-01])
MSE 0.996688338442 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02   6.99501611e-02])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02   3.46946989e-02])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02   1.72650149e-02])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02   8.60420516e-03])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02   4.28570733e-03])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02   2.12900765e-03])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02   8.07697602e-04])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02   3.03002089e-04])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02   1.10225563e-04])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02   3.65914844e-05])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02   8.46576994e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -1.71694961e-05])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -2.27729672e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -1.20690968e-05])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -6.38078291e-06])
MSE 0.996688338441 ([ -7.74867736e+02  -1.37967475e+02  -1.42670559e+02  -1.01209176e-05])
Preserved Files:  []
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-2-a0a996c9733e> in <module>()
      3 from paramselect import _multiphase_fitting_system
      4 from pycalphad import Database, equilibrium
----> 5 get_ipython().magic("time dbf = fit('input.json', datasets, saveall=True)")

/home/rotis/anaconda/envs/calphadpy3/lib/python3.5/site-packages/IPython/core/interactiveshell.py in magic(self, arg_s)
   2334         magic_name, _, magic_arg_s = arg_s.partition(' ')
   2335         magic_name = magic_name.lstrip(prefilter.ESC_MAGIC)
-> 2336         return self.run_line_magic(magic_name, magic_arg_s)
   2337 
   2338     #-------------------------------------------------------------------------

/home/rotis/anaconda/envs/calphadpy3/lib/python3.5/site-packages/IPython/core/interactiveshell.py in run_line_magic(self, magic_name, line)
   2255                 kwargs['local_ns'] = sys._getframe(stack_depth).f_locals
   2256             with self.builtin_trap:
-> 2257                 result = fn(*args,**kwargs)
   2258             return result
   2259 

<decorator-gen-60> in time(self, line, cell, local_ns)

/home/rotis/anaconda/envs/calphadpy3/lib/python3.5/site-packages/IPython/core/magic.py in <lambda>(f, *a, **k)
    191     # but it's overkill for just that one bit of state.
    192     def magic_deco(arg):
--> 193         call = lambda f, *a, **k: f(*a, **k)
    194 
    195         if callable(arg):

/home/rotis/anaconda/envs/calphadpy3/lib/python3.5/site-packages/IPython/core/magics/execution.py in time(self, line, cell, local_ns)
   1165         else:
   1166             st = clock2()
-> 1167             exec(code, glob, local_ns)
   1168             end = clock2()
   1169             out = None

<timed exec> in <module>()

/home/rotis/git/pycalphad-fitting/paramselect.py in fit(input_fname, datasets, saveall, resume)
   1806         if (len(selected_feature_indices) > 0) and np.any(feature_scores[selected_feature_indices] > 1e-6):
   1807             res_output = fmin_powell(sumsqerr, np.full_like(selected_feature_indices, 0, dtype=np.float),
-> 1808                                      full_output=True, ftol=1e-3, xtol=0.1)
   1809             print('RES OUTPUT', res_output)
   1810             coefs = res_output[0]

/home/rotis/anaconda/envs/calphadpy3/lib/python3.5/site-packages/scipy/optimize/optimize.py in fmin_powell(func, x0, args, xtol, ftol, maxiter, maxfun, full_output, disp, retall, callback, direc)
   2280             'return_all': retall}
   2281 
-> 2282     res = _minimize_powell(func, x0, args, callback=callback, **opts)
   2283 
   2284     if full_output:

/home/rotis/anaconda/envs/calphadpy3/lib/python3.5/site-packages/scipy/optimize/optimize.py in _minimize_powell(func, x0, args, callback, xtol, ftol, maxiter, maxfev, disp, direc, return_all, **unknown_options)
   2351             fx2 = fval
   2352             fval, x, direc1 = _linesearch_powell(func, x, direc1,
-> 2353                                                  tol=xtol * 100)
   2354             if (fx2 - fval) > delta:
   2355                 delta = fx2 - fval

/home/rotis/anaconda/envs/calphadpy3/lib/python3.5/site-packages/scipy/optimize/optimize.py in _linesearch_powell(func, p, xi, tol)
   2173     def myfunc(alpha):
   2174         return func(p + alpha*xi)
-> 2175     alpha_min, fret, iter, num = brent(myfunc, full_output=1, tol=tol)
   2176     xi = alpha_min*xi
   2177     return squeeze(fret), p + xi, xi

/home/rotis/anaconda/envs/calphadpy3/lib/python3.5/site-packages/scipy/optimize/optimize.py in brent(func, args, brack, tol, full_output, maxiter)
   1912     options = {'xtol': tol,
   1913                'maxiter': maxiter}
-> 1914     res = _minimize_scalar_brent(func, brack, args, **options)
   1915     if full_output:
   1916         return res['x'], res['fun'], res['nit'], res['nfev']

/home/rotis/anaconda/envs/calphadpy3/lib/python3.5/site-packages/scipy/optimize/optimize.py in _minimize_scalar_brent(func, brack, args, xtol, maxiter, **unknown_options)
   1944                   full_output=True, maxiter=maxiter)
   1945     brent.set_bracket(brack)
-> 1946     brent.optimize()
   1947     x, fval, nit, nfev = brent.get_result(full_output=True)
   1948     return OptimizeResult(fun=fval, x=x, nit=nit, nfev=nfev,

/home/rotis/anaconda/envs/calphadpy3/lib/python3.5/site-packages/scipy/optimize/optimize.py in optimize(self)
   1817             else:
   1818                 u = x + rat
-> 1819             fu = func(*((u,) + self.args))      # calculate new output value
   1820             funcalls += 1
   1821 

/home/rotis/anaconda/envs/calphadpy3/lib/python3.5/site-packages/scipy/optimize/optimize.py in myfunc(alpha)
   2172     """
   2173     def myfunc(alpha):
-> 2174         return func(p + alpha*xi)
   2175     alpha_min, fret, iter, num = brent(myfunc, full_output=1, tol=tol)
   2176     xi = alpha_min*xi

/home/rotis/anaconda/envs/calphadpy3/lib/python3.5/site-packages/scipy/optimize/optimize.py in function_wrapper(*wrapper_args)
    287     def function_wrapper(*wrapper_args):
    288         ncalls[0] += 1
--> 289         return function(*(wrapper_args + args))
    290 
    291     return ncalls, function_wrapper

/home/rotis/git/pycalphad-fitting/paramselect.py in sumsqerr(x)
   1800                                            obj_callables=temp_obj,
   1801                                            grad_callables=temp_grad,
-> 1802                                            hess_callables=temp_hess)
   1803             print('MSE', np.nanmean(iter_error**2) / error_scale, '({})'.format(x))
   1804             return np.nanmean(iter_error**2) / error_scale

/home/rotis/git/pycalphad-fitting/paramselect.py in _multiphase_error(dbf, data, datasets, **kwargs)
   1419     comps = sorted(data['components'])
   1420     phases = sorted(data['phases'].keys())
-> 1421     errors = multi_phase_fit(dbf, comps, phases, data, datasets, None, **kwargs)
   1422     data_rows = len(errors.all())
   1423 

/home/rotis/git/pycalphad-fitting/paramselect.py in multi_phase_fit(dbf, comps, phases, inpd, datasets, x, param_symbols, obj_callables, grad_callables, hess_callables)
   1060                                                    callables=phase_obj_callables, grad_callables=phase_grad_callables,
   1061                                                    hess_callables=phase_hess_callables, model=phase_models,
-> 1062                                                    tmpman=tmpman)
   1063                         #print('MULTI_EQDATA', multi_eqdata)
   1064                         # Does there exist only a single phase in the result with zero internal degrees of freedom?

/home/rotis/git/pycalphad/pycalphad/core/tempfilemanager.py in wrapper(*args, **kwargs)
     68             else:
     69                 kwargs['tmpman'] = tmpman
---> 70                 return func(*args, **kwargs)
     71         return wrapper

/home/rotis/git/pycalphad/pycalphad/core/equilibrium.py in equilibrium(dbf, comps, phases, conditions, output, model, verbose, pbar, broadcast, calc_opts, nprocs, tmpman, return_grids, **kwargs)
    899     else:
    900         # Single-process job; don't create child processes
--> 901         properties = _solve_eq_at_conditions(dbf, comps, properties, phase_records, callable_dict, verbose)
    902 
    903     # Compute equilibrium values of any additional user-specified properties

/home/rotis/git/pycalphad/pycalphad/core/tempfilemanager.py in wrapper(*args, **kwargs)
     65                 with self:
     66                     kwargs['tmpman'] = self
---> 67                     return func(*args, **kwargs)
     68             else:
     69                 kwargs['tmpman'] = tmpman

/home/rotis/git/pycalphad/pycalphad/core/equilibrium.py in _solve_eq_at_conditions(dbf, comps, properties, phase_records, callable_dict, verbose, tmpman)
    453             l_hessian, gradient_term = _build_multiphase_system(dbf, comps, phases, cur_conds, site_fracs, phase_fracs,
    454                                                                 l_constraints, constraint_jac, constraint_hess,
--> 455                                                                 l_multipliers, callable_dict, phase_records)
    456             # Equation 18.18 in Nocedal and Wright
    457             if m != n:

/home/rotis/git/pycalphad/pycalphad/core/equilibrium.py in _build_multiphase_system(dbf, comps, phases, cur_conds, site_fracs, phase_fracs, l_constraints, constraint_jac, constraint_hess, l_multipliers, callable_dict, phase_records)
    310         var_offset:var_offset + phase_dof[phase_idx]] = \
    311             phase_frac * np.squeeze(hess(*itertools.chain([cur_conds['P'], cur_conds['T']],
--> 312                                                           site_fracs[var_offset:var_offset + phase_dof[phase_idx]])
    313                                          ))[2:, 2:]  # Remove P,T hessian part
    314         # Phase fraction / site fraction cross derivative

/home/rotis/git/pycalphad-fitting/paramselect.py in <lambda>(pn, *args)
   1793             temp_hess = {phase_name: lambda *args, pn=phase_name: np.sum([h(*args)
   1794                                                                           for h in itertools.chain(hess_funcs[pn],
-> 1795                                                                                                    temp_hess_funcs[pn])],
   1796                                                                          axis=0)
   1797                          for phase_name in sorted(data['phases'].keys())}

/home/rotis/git/pycalphad-fitting/paramselect.py in <listcomp>(.0)
   1792                          for phase_name in sorted(data['phases'].keys())}
   1793             temp_hess = {phase_name: lambda *args, pn=phase_name: np.sum([h(*args)
-> 1794                                                                           for h in itertools.chain(hess_funcs[pn],
   1795                                                                                                    temp_hess_funcs[pn])],
   1796                                                                          axis=0)

/home/rotis/git/pycalphad/pycalphad/core/sympydiff_utils.py in hess_argwrapper(*args)
    102             resarray = list(itertools.chain(*(f(*args) for f in hess)))
    103             result = np.zeros((len(args), len(args)) + resarray[0].shape)
--> 104             result[triu_indices] = resarray
    105             axes = tuple(range(len(result.shape)))
    106             # Upper triangular is filled; also need to fill lower triangular

ValueError: shape mismatch: value array of shape (74,) could not be broadcast to indexing result of shape (66,)

In [ ]:
print(dbf.to_string(fmt='tdb', groupby='phase'))

In [ ]:
datasets = paramselect.load_datasets(sorted(recursive_glob('Al-Ni', '*.json')))
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "BCC_B2", ["AL", ["AL", "NI"], "VA"], [[0, 1]], datasets)

In [ ]:
datasets = paramselect.load_datasets(sorted(recursive_glob('Al-Ni', '*.json')))
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "BCC_B2", ["NI", ["AL", "NI"], "VA"], [[0, 1]], datasets)

In [ ]:
datasets = paramselect.load_datasets(sorted(recursive_glob('Al-Ni', '*.json')))
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "BCC_B2", ["NI", ["AL", "VA"], "VA"], [[0, 1]], datasets)

In [ ]:
datasets = paramselect.load_datasets(sorted(recursive_glob('Al-Ni', '*.json')))
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "BCC_B2", ["AL", ["NI", "VA"], "VA"], [[0, 1]], datasets)

In [ ]:
datasets = paramselect.load_datasets(sorted(recursive_glob('Al-Ni', '*.json')))
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "BCC_B2", ["VA", ["AL", "NI"], "VA"], [[0, 1]], datasets)

In [ ]:
datasets = paramselect.load_datasets(sorted(recursive_glob('Al-Ni', '*.json')))
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "BCC_B2", [["AL", "NI"], ["AL", "NI"], "VA"], [[0, 1]], datasets)

In [ ]:
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "BCC_B2", ["AL", "NI", "VA"], [[0, 1]], datasets)

In [ ]:
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "FCC_L12", ["AL", "NI", "NI", "NI", "VA"], [[0,1,2,3]], datasets)

In [ ]:
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "FCC_L12", ["AL", "AL", "NI", "NI", "VA"], [[0,1,2,3]], datasets)

In [ ]:
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "FCC_L12", ["AL", "AL", "AL", "NI", "VA"], [[0,1,2,3]], datasets)

In [ ]:
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "FCC_L12", [["AL", "NI"], "NI", "NI", "NI", "VA"], [[0,1,2,3]], datasets)

In [ ]:
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "FCC_L12", [["AL", "NI"], "NI", "NI", "AL", "VA"], [[0,1,2,3]], datasets)

In [ ]:
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "FCC_L12", [["AL", "NI"], "NI", "AL", "AL", "VA"], [[0,1,2,3]], datasets)

In [ ]:
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "FCC_L12", ["AL", ["AL", "NI"], "AL", "AL", "VA"], [[0,1,2,3]], datasets)

In [ ]:
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "FCC_L12", [["AL", "NI"], ["AL", "NI"], ["AL", "NI"], ["AL", "NI"], "VA"], [[0,1,2,3]], datasets)

In [ ]:
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "AL3NI2", ["AL", ["AL", "NI"], "NI"], None, datasets)

In [ ]:
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "AL3NI2", ["AL", ["AL", "NI"], "VA"], None, datasets)

In [ ]:
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "AL3NI2", ["AL", "NI", ["NI", "VA"]], None, datasets)

In [ ]:
paramselect.plot_parameters(dbf, ["AL", "NI", "VA"], "LIQUID", [["AL", "NI"]], None, datasets)

In [ ]:
dbf.to_file('AlNi.tdb', if_exists='overwrite')

In [ ]:
from paramselect import multi_plot
from pycalphad import binplot, Database
import pycalphad.variables as v
import matplotlib.pyplot as plt
fig = plt.figure(figsize=(9,6))
dbf = Database('2016-04-25 15:45:29.550255-ALNI-iter4.tdb')
binplot(dbf, ['AL', 'NI', 'VA'], sorted(dbf.phases.keys()),
        {v.X('NI'): (0,1,0.02), v.T: (300, 2000, 30), v.P: 101325}, ax=fig.gca(), eq_kwargs={'_approx': True})
multi_plot(None, ['AL', 'NI', 'VA'], sorted(dbf.phases.keys()), datasets, ax=fig.gca())
plt.show()

In [ ]:
from pycalphad import calculate,Database
import pycalphad.variables as v
import matplotlib.pyplot as plt
%matplotlib inline
import numpy as np
result = calculate(Database('AlNi.tdb'), ['AL', 'NI', 'VA'], ['FCC_L12', 'LIQUID'], pdens=5000, T=1645, P=1e5)

In [ ]:
fig = plt.figure(figsize=(12,12))
bcc_energies_x = result.X.sel(component='NI').values[np.nonzero(result.Phase.values == 'FCC_L12')]
bcc_energies_y = result.GM.values[np.nonzero(result.Phase.values == 'FCC_L12')]
fig.gca().scatter(bcc_energies_x, bcc_energies_y, color='b')
liq_energies_x = result.X.sel(component='NI').values[np.nonzero(result.Phase.values == 'LIQUID')]
liq_energies_y = result.GM.values[np.nonzero(result.Phase.values == 'LIQUID')]
fig.gca().scatter(liq_energies_x, liq_energies_y, color='r')
fig.gca().plot([0, 1], [-239801.46331355, -102505.10323622], color='k', linestyle='--')
#fig.gca().plot([0, 1], [-1.147e5, -6.06e4], color='k', linestyle='--')
fig.gca().set_ylim((-150000, -5e4))
fig.gca().set_xlim((0.7, 1))
#fig.gca().axvline(0.733, color='k', linestyle='--')
plt.show()