Changeset 3352 in Sophya for trunk/Cosmo/SimLSS
- Timestamp:
- Oct 16, 2007, 7:25:51 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Cosmo/SimLSS/cmvdefsurv.cc
r3351 r3352 43 43 <<" -K k,dk,pk : k(Mpc^-1) dk(Mpc^-1) pk(a z=0 en Mpc^-3) pour estimer la variance cosmique"<<endl 44 44 <<"----------------"<<endl 45 <<" -O surf,tobs : surface effective (m^2) et temps d\'observation (s)"<<endl45 <<" -O surf,tobs,eta : surface effective (m^2), temps d\'observation (s), efficacite d\'ouverture"<<endl 46 46 <<" -N Tsys : temperature du system (K)"<<endl 47 47 <<" -L lobewidth,freqlob : taille du lobe d\'observation (FWHM) en arcmin (def= 1\')"<<endl … … 86 86 int nz=0; char unit_z = 'Z'; 87 87 double redshift = 0.; 88 double tobs = 6000., surf eff = 400000.;88 double tobs = 6000., surftot = 400000., eta_eff = 1.; 89 89 // variance cosmique (default = standard SDSSII) 90 90 double kcosm = 0.05, dkcosm = -1., pkcosm = 40000.; … … 115 115 break; 116 116 case 'O' : 117 sscanf(optarg,"%lf,%lf ",&surfeff,&tobs);117 sscanf(optarg,"%lf,%lf,%lf",&surftot,&tobs,&eta_eff); 118 118 break; 119 119 case 'L' : … … 169 169 univ.Print(redshift); 170 170 GrowthFactor growth(om0,ol0); 171 double gro thfac = growth(redshift);172 cout<<"Facteur de croissance lineaire = "<<gro thfac171 double growthfac = growth(redshift); 172 cout<<"Facteur de croissance lineaire = "<<growthfac 173 173 <<" ^2 , ( 1/(1+z)="<<1./(1.+redshift)<<" )"<<endl; 174 double rhoc0 = univ.Rhoc(0.)*GCm3toMsolMpc3_Cst; 175 double rhocz = univ.Rhoc(redshift)*GCm3toMsolMpc3_Cst; 176 cout<<"Rho_c a z=0: "<<rhoc0<<", a z="<<redshift<<": "<<rhocz<<" Msol/Mpc^3"<<endl; 174 177 175 178 double dang = univ.Dang(redshift); … … 313 316 // nombre de mode = 1/2 * Vsurvey/(2Pi)^3 * 4Pi*k^2*dk 314 317 if(kcosm>0. && pkcosm>0.) { 315 double pk = pkcosm*pow(gro thfac,2.);318 double pk = pkcosm*pow(growthfac,2.); 316 319 cout<<"\n>>>>\n>>>> variance cosmique pour k="<<kcosm<<" Mpc^-1, pk(z=0)=" 317 320 <<pkcosm<<", pk(z="<<redshift<<")="<<pk<<"\n>>>>"<<endl; … … 346 349 cout<<"Pixel mass = "<<masshipix<<" Msol"<<endl 347 350 <<"Total mass in survey = "<<masshitot<<" Msol"<<endl; 351 cout<<"OmegaHI a z=0: "<<masshimpc3/rhoc0 352 <<", a z="<<redshift<<": "<<masshimpc3/rhocz<<endl; 348 353 if(mhiref<=0.) mhiref = masshipix; 349 354 … … 361 366 // --- Survey values 362 367 cout<<"\n>>>>\n>>>> Observations\n>>>>"<<endl; 368 double surfeff = surftot * eta_eff; 363 369 double unplusz = 1.+redshift; 364 370 double nuhiz = Fr_HyperFin_Par / unplusz; // GHz … … 368 374 double dnuhiz = Fr_HyperFin_Par *dred/(unplusz*unplusz) 369 375 / (1.- pow(dred/.2/unplusz,2.)); 370 cout<<" surf _eff="<<surfeff<<" m^2, tobs="<<tobs<<" s"<<endl376 cout<<" surf="<<surftot<<" m^2, eta="<<eta_eff<<" surf_eff="<<surfeff<<" m^2, tobs="<<tobs<<" s"<<endl 371 377 <<" nu="<<nuhiz<<" GHz, dnu="<<dnuhiz*1.e3<<" Mhz"<<endl; 372 378 cout<<"dang lumi = "<<dlum<<" in ["<<dlumlim[0]<<","<<dlumlim[1]<<"] Mpc"<<endl; … … 399 405 <<","<<hifactor*Msol2FluxHI(mhiref,dlumlim[1])<<"] W/m^2"<<endl; 400 406 double sfhi = fhi / (dnuhiz*1e9) / Jansky2Watt_cst; 401 cout<<"If spread over pixel depth ("<<dnuhiz<<" GHz), flux density = "<<sfhi <<"Jy"<<endl;407 cout<<"If spread over pixel depth ("<<dnuhiz<<" GHz), flux density = "<<sfhi*1.e6<<" mu_Jy"<<endl; 402 408 403 409 // --- Signal analysis … … 421 427 <<" P="<<psig<<" W"<<endl 422 428 <<" flux density = "<<ssig*1.e6<<" mu_Jy (for Dnu="<<dnuhiz<<" GHz)"<<endl 429 <<" ("<<ssig_2polar<<" mu_Jy for 2 polars)"<<endl 423 430 <<" Antenna temperature: tsig="<<tsig<<" K"<<endl; 424 431 … … 474 481 // Pb = k * Tsys * dNu (W) 475 482 // Pour une source (non-polarisee) de densite de flux (totale 2 polars) 476 // St (exprimee en Jy =W/m^2/Hz)483 // St (exprimee en Jy = 10^-26 W/m^2/Hz) 477 484 // Pt = St * Ae * dNu (puissance totale emise en W pour 2 polars) 478 485 // P1 = 1/2 * St * Ae * dNu (puissance emise en W pour une polar) … … 565 572 smass = mhiref / ssig_2polar * slim; 566 573 cout<<"for 1 lobe:"<<endl 567 <<" Slim = "<<slim <<"Jy"<<endl574 <<" Slim = "<<slim*1.e6<<" mu_Jy"<<endl 568 575 <<" S/N = "<<SsN<<endl 569 576 <<" Mass HI = "<<smass<<" Msol"<<endl; … … 573 580 smass_nl = mhiref / ssig_2polar * slim_nl; 574 581 cout<<"for "<<nlobes<<" lobes:"<<endl 575 <<" Flux = "<<slim_nl <<"Jy"<<endl582 <<" Flux = "<<slim_nl*1.e6<<" mu_Jy"<<endl 576 583 <<" S/N = "<<SsN_nl<<endl 577 584 <<" Mass HI = "<<smass_nl<<" Msol"<<endl;
Note:
See TracChangeset
for help on using the changeset viewer.