예제 #1
0
파일: Aff_test1.py 프로젝트: apooja19/Infer
adapt_lims = (2000,conv,10)
glob_lims = (2000,conv,10)
# Infer.MCMC(Posterior,guess_pars[:],(Transit_aRs,time,flux),chain_len,err_pars,n_chains=no_ch,adapt_limits=adapt_lims,glob_limits=glob_lims,thin=thin)
# #Get parameters values/errors from chains
# par,par_err = Infer.AnalyseChains(conv/thin,n_chains=no_ch)
# bf_par = Infer.GetBestFit(n_chains=no_ch)
# print "Best Fit log p =", LogLikelihood_iid_mf(bf_par,Transit_aRs,time,flux)
# pylab.figure(3)
# Infer.PlotCorrelations(conv/thin,n_chains=no_ch,p=np.where(np.array(par_err)>0.)[0])

#run an affine inv MCMC
n = 300
chain_len = chain_len/n
conv = conv/n
no_ch=3
Infer.AffInvMCMC(Posterior,guess_pars[:],(Transit_aRs,time,flux),n,chain_len,err_pars,n_chains=no_ch)
#Get parameters values/errors from chains
par,par_err = Infer.AnalyseChains(conv*n,n_chains=no_ch)
bf_par = Infer.GetBestFit(n_chains=no_ch)
print "Best Fit log p =", LogLikelihood_iid_mf(bf_par,Transit_aRs,time,flux)
pylab.figure(4)
Infer.PlotCorrelations(conv*n,n_chains=no_ch,p=np.where(np.array(par_err)>0.)[0])

#plot the chains and correlations
#lab = [r'$T_0$',r'$a/R\star$',r'$\rho$',r'$b$']
#pylab.figure(2)
#Infer.PlotChains(conv/thin,n_chains=no_ch,p=[0,2,3,4],labels=lab)

#plot fitted function
pylab.figure(1)
pylab.plot(time,Transit_aRs(par[:-1],time),'g-')
예제 #2
0
           n_chains=no_ch,
           adapt_limits=lims,
           glob_limits=lims,
           thin=thin)
MyGP.pars, par_err = Infer.AnalyseChains(conv / thin, n_chains=no_ch)
pylab.figure(2)
Infer.PlotCorrelations(conv / thin, n_chains=no_ch)

#do an Affine Invariant MCMC
n = 100
err_pars = 0.01 * np.array(
    [0.001, 0.001, 0.0001] +
    [0.00001, 0, 0.2, 0.0003, 0.02, 0.0, 0.0, 0.001, 0.0001])
Infer.AffInvMCMC(MyGP.logPosterior,
                 MyGP._pars, (),
                 n,
                 chain_len / n,
                 err_pars,
                 n_chains=no_ch)
MyGP.pars, par_err = Infer.AnalyseChains(conv, n_chains=no_ch)
pylab.figure(3)
Infer.PlotCorrelations(conv / thin, n_chains=no_ch)

pylab.figure(1)
pylab.plot(MyGP.mf_args, MyGP.MeanFunction(), 'b-')
MyGP.kf_args_pred = np.matrix([
    t_pred,
]).T
MyGP.mf_args_pred = t_pred
Infer.PlotRanges(MyGP.mf_args_pred, *MyGP.Predict())
pylab.plot(MyGP.mf_args_pred, MyGP.GetRandomVectorFromPrior(), 'r--')
pylab.plot(MyGP.mf_args_pred, MyGP.GetRandomVector(), 'g--')
예제 #3
0
파일: Aff_test2.py 프로젝트: apooja19/Infer
           thin=thin)
#Get parameters values/errors from chains
par, par_err = Infer.AnalyseChains(conv / thin, n_chains=no_ch)
bf_par = Infer.GetBestFit(n_chains=no_ch)
print "Best Fit log p =", InvNRosenbrock(bf_par, )
pylab.figure(3)
Infer.PlotCorrelations(conv / thin,
                       n_chains=no_ch,
                       p=np.where(np.array(par_err) > 0.)[0])

#run an affine inv MCMC
n = 200
chain_len = chain_len / n
conv = conv
no_ch = 3
Infer.AffInvMCMC(InvNRosenbrock, gp[:], (), n, chain_len, ep, n_chains=no_ch)
#Get parameters values/errors from chains
par, par_err = Infer.AnalyseChains(conv, n_chains=no_ch)
bf_par = Infer.GetBestFit(n_chains=no_ch)
print "Best Fit log p =", InvNRosenbrock(bf_par, )
pylab.figure(4)
Infer.PlotCorrelations(conv * n,
                       n_chains=no_ch,
                       p=np.where(np.array(par_err) > 0.)[0])

#
#
# #plot the chains and correlations
# #lab = [r'$T_0$',r'$a/R\star$',r'$\rho$',r'$b$']
# #pylab.figure(2)
# #Infer.PlotChains(conv/thin,n_chains=no_ch,p=[0,2,3,4],labels=lab)