Ejemplo n.º 1
0
def loadFiles(pat, max_files=400, cl_ix=1, calParam=None, rescale=1):
    d, name = os.path.split(pat + '_?_*')
    pars = []
    cls = []
    ls = None
    for f in os.listdir(d):
        if fnmatch.fnmatch(f, name + '.theory_cl'):
            fname = f.replace('.theory_cl', '')
            params = ResultObjs.bestFit(os.path.join(d, fname + '.pars'))
            pars.append(params)
            cl = loadtxt(os.path.join(d, fname + '.theory_cl'))
            if calParam:
                cal = params.parWithName(calParam).best_fit
            else:
                cal = 1
            cls.append(cl[:, cl_ix] / cal ** 2 * rescale)
            if ls is None: ls = cl[:, 0]
            if len(pars) == max_files: break
    if not len(pars): raise Exception('No files found: ' + pat)
    return ls, pars, cls
Ejemplo n.º 2
0
    sys.exit()

root = os.path.abspath(sys.argv[1])

pars = {'ombh2':'omegabh2', 'omch2':'omegach2', 'omnuh2':'omeganuh2', 'hubble':'H0', 'w':'w',
        'helium_fraction':'yheused', 'scalar_amp(1)':'A' , 'scalar_spectral_index(1)':'ns', 'scalar_nrun(1)':'nrun', 'initial_ratio(1)':'r',
        're_optical_depth':'tau', 're_delta_redshift':'deltazrei', 'massless_neutrinos':'nnu'}

ini = iniFile.iniFile()

ini.params['re_use_optical_depth'] = True
ini.params['temp_cmb'] = 2.7255
ini.params['CMB_outputscale'] = 2.7255e6 ** 2.
ini.defaults.append('params.ini')

bf = ResultObjs.bestFit(root + '.minimum', setParamNameFile=root + '.paramnames', want_fixed=True)

for camb, cosmomc in pars.items():
    par = bf.parWithName(cosmomc)
    if par is not None: ini.params[camb] = par.best_fit

ini.params['scalar_amp(1)'] = float(ini.params['scalar_amp(1)']) / 1e9

nmassive = 1
neffstandard = 3.046 / 3
ini.params['massless_neutrinos'] = float(ini.params['massless_neutrinos']) - neffstandard * nmassive
ini.params['massive_neutrinos'] = int(round(neffstandard * nmassive))
ini.params['nu_mass_degeneracies'] = neffstandard * nmassive
ini.params['share_delta_neff'] = False
ini.params['tensor_spectral_index(1)'] = -float(ini.params['initial_ratio(1)']) / 8
Ejemplo n.º 3
0
 def chainBestfit(self, paramNameFile=None):
     bf_file = self.chainRoot + '.minimum'
     if nonEmptyFile(bf_file):
         return ResultObjs.bestFit(bf_file, paramNameFile)
     return None