In [1]:
%matplotlib inline

from vespa.stars.populations import Observed_BinaryPopulation
from vespa.stars.populations import Observed_TriplePopulation
from vespa.populations import EBPopulation, HEBPopulation

from isochrones.starmodel import BinaryStarModel,TripleStarModel

import logging
logger = logging.getLogger()
logger.setLevel(logging.DEBUG)


WARNING:root:progressbar not imported

In [2]:
mags = {'H': 10.211,
            'J': 10.523,
            'K': 10.152000000000001}
#pop = Observed_BinaryPopulation(mags=mags, starmodel=starmodel)
#pop = Observed_BinaryPopulation.load_hdf('test_observedbinary.h5')

starmodel = TripleStarModel.load_hdf('test_observedtriple.h5')
starmodel.save_hdf('test_triple_starmodel.h5')
#pop = Observed_TriplePopulation(mags=mags, n=100, starmodel=starmodel)

In [5]:
pop = Observed_BinaryPopulation.load_hdf('test_observedbinary.h5')

In [6]:
starmodel = pop.starmodel
starmodel.save_hdf('test_binary_starmodel.h5')

In [21]:
ebpop = EBPopulation(starmodel=starmodel, n=100, period=20)


INFO:root:10 binaries are "too close"; gave up trying to fix.
INFO:root:74 Eclipsing EB systems generated (target 100)
INFO:root:13 binaries are "too close"; gave up trying to fix.
INFO:root:148 Eclipsing EB systems generated (target 100)

In [22]:
ebpop.fit_trapezoids()


INFO:root:Fitting trapezoid models for EBs...
INFO:root:Done.

In [3]:
hebpop = HEBPopulation(starmodel=starmodel, n=100, period=20,
                       mags=mags)


DEBUG:root:initial probability given mininc starting at 0.0700337269393
DEBUG:root:final prob: 0.058828330629
INFO:root:84 eclipsing HEB systems generated (target 100)
DEBUG:root:0 nans in stars[dpri]
DEBUG:root:0 nans in df[dpri]
DEBUG:root:initial probability given mininc starting at 0.0667398144322
DEBUG:root:final prob: 0.0553940459787
INFO:root:167 eclipsing HEB systems generated (target 100)
DEBUG:root:0 nans in stars[dpri]
DEBUG:root:0 nans in df[dpri]

In [23]:
ok = ((ebpop.stars['slope'] > 0) & (ebpop.stars['duration'] > 0) & 
                  (ebpop.stars['duration'] < ebpop.period) & (ebpop.depth > 0) &
                  ebpop.distok)

In [24]:
ok.sum()


Out[24]:
100

In [ ]:


In [4]:
mags = {'H': (10.211,0.05),
            'J': (10.523, 0.05),
            'K': (10.152000000000001,0.05)}
from isochrones.starmodel import TripleStarModel
from isochrones.dartmouth import Dartmouth_Isochrone
dar = Dartmouth_Isochrone()

starpop = TripleStarModel(dar, **mags)
starpop.fit_mcmc()


Out[4]:
<emcee.ensemble.EnsembleSampler at 0x10c690c10>

In [5]:
starpop.save_hdf('test_observedtriple.h5')

In [ ]: