本文整理汇总了C++中bvec::load方法的典型用法代码示例。如果您正苦于以下问题:C++ bvec::load方法的具体用法?C++ bvec::load怎么用?C++ bvec::load使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类bvec
的用法示例。
在下文中一共展示了bvec::load方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main(int narg,char **arg)
{
init_latpars();
//read ensemble list, meson phiD and meson name
FILE *an_input_file=open_file("analysis_pars","r");
char ens_list_path[1024],meson_phi_file[1024],meson_name[1024];
read_formatted_from_file_expecting(ens_list_path,an_input_file,"%s","ens_list_path");
read_formatted_from_file_expecting(meson_phi_file,an_input_file,"%s","meson_phi_file");
read_formatted_from_file_expecting(meson_name,an_input_file,"%s","meson_name");
read_formatted_from_file_expecting((char*)&ghat_ave,an_input_file,"%lg","ghat");
read_formatted_from_file((char*)&ghat_err,an_input_file,"%lg","ghat_err");
fclose(an_input_file);
//prepar the ghat
ghat=boot(nboot,njack);
ghat.fill_gauss(ghat_ave,ghat_err,25252352);
//load ensembles list and parameters
load_ensembles_list(base_corrs_path,ens_name,nens,T,ibeta,nmass,mass,iml_un,nlights,ens_list_path);
//define ml and ref ml, and chiral logs
ml=bvec(nens,nboot,njack);
for(int iens=0;iens<nens;iens++)
{
int b=ibeta[iens],r=ref_ml_beta[b];
//define ml
cout<<iens<<" "<<b<<" "<<iml_un[iens]<<" "<<mass[iens][iml_un[iens]]<<endl;
ml[iens]=mass[iens][iml_un[iens]]/lat[b]/Zp[b];
//set the lighter mass
if(r==-1||ml[r].med()>ml[iens].med()) ref_ml_beta[b]=iens;
}
cout<<"---"<<endl;
for(int ib=0;ib<nbeta;ib++) if(ref_ml_beta[ib]!=-1) cout<<"Ref "<<ib<<" = "<<ref_ml_beta[ib]<<", "<<ml[ref_ml_beta[ib]]<<" MeV"<<endl;
cout<<"---"<<endl;
//load data
phiD=bvec(nens,nboot,njack);
phiD.load(meson_phi_file,0);
//perform the fit
boot A(nboot,njack),B(nboot,njack),C(nboot,njack);
fit(A,B,C,ml,phiD);
cout<<endl;
//chiral extrapolation
boot phiD_chir[nbeta],phiD_chir_cont(nboot,njack);
bvec phiD_estr_ml(nbeta,nboot,njack),fD_estr_ml(nbeta,nboot,njack);
for(int ib=0;ib<nbeta;ib++)
{
phiD_chir[ib]=boot(nboot,njack);
for(int iboot=0;iboot<nboot+1;iboot++)
{
int r=ref_ml_beta[ib];
phiD_chir_cont.data[iboot]=fun_fit_phiD(A[iboot],B[iboot],C[iboot],ml_phys[iboot],0);
phiD_chir[ib].data[iboot]=fun_fit_phiD(A[iboot],B[iboot],C[iboot],ml_phys[iboot],lat[ib][iboot]);
if(r!=-1) phiD_estr_ml.data[ib].data[iboot]=phiD[r][iboot]*fun_fit_phiD(A[iboot],B[iboot],C[iboot],ml_phys[iboot],0)/fun_fit_phiD(A[iboot],B[iboot],C[iboot],ml[r][iboot],0);
}
}
boot temp(nboot,njack);
temp.load("../chiral_cont_extrapol_M/MD");
cout<<"Using for MD_phys the value: "<<temp<<endl;
boot fD_chir_cont=phiD_chir_cont/sqrt(temp);
for(int iens=0;iens<nens;iens++)
cout<<(ml[iens]*db0).med()<<" "<<lat[ibeta[iens]].med()<<" "<<phiD[iens]<<endl;
//chiral and continuum
cout<<"phiD = ("<<phiD_chir_cont*1000<<") MeV"<<endl;
cout<<"fD = ("<<fD_chir_cont*1000<<") MeV"<<endl;
phiD_chir_cont.write_to_binfile("results_phiD");
fD_chir_cont.write_to_binfile("results_fD");
par_res_fit_phiD=bvec(3,nboot,njack);
par_res_fit_phiD.data[0]=A;
par_res_fit_phiD.data[1]=B;
par_res_fit_phiD.data[2]=C;
const char tag_ml[1024]="m\\sl\\N\\SMS,2GeV\\N (GeV)";
const char tag_a2[1024]="a\\S2\\N (fm)";
double lat_med_fm[4]={lat[0].med()/hc,lat[1].med()/hc,lat[2].med()/hc,lat[3].med()/hc};
plot_funz_ml("phiD_funz_ml.xmg",meson_name,tag_ml,meson_name,ml,phiD,par_res_fit_phiD,ml_phys.med(),fun_fit_phiD,phiD_chir_cont);
plot_funz_a2("phiD_funz_a2.xmg",meson_name,tag_a2,meson_name,lat_med_fm,phiD_estr_ml,par_res_fit_phiD,fun_fit_phiD,phiD_chir_cont);
cout<<lat[0]<<endl;
cout<<lat[1]<<endl;
cout<<lat[2]<<endl;
cout<<lat[3]<<endl;
return 0;
}