source: Sophya/trunk/Cosmo/RadioBeam/subtractradsrc.cmd@ 3791

Last change on this file since 3791 was 3789, checked in by ansari, 15 years ago

Corrections diverses, Reza 27/06/2010

File size: 3.5 KB
Line 
1#####################################################################################
2#### Commands to run the different programs to produce foreground maps
3#### and compute radio-source subtracted P(k)
4#####################################################################################
5
6### Cube definition in file cubedef.h
7
8### Step 1/ Produce an LSS data cube with appropriate size and redshift using SimLSS
9# 1.a/ Run SimLSS
10csh> ~/Objs/exe/cmvginit3df -a -1 -2 -C -G 0. -F 0 -x 360,3 -y 360,3 -z 256,1.5 -Z 0.56 -8 1. -n 10000 -O 0,2 -o lssz056 -T 2
11# 1.b/ Change the X and Z axis of the cube to adapt it to RadioBeam package convention
12# SimLSS output : the radial (redshift) direction along X axis of the cube (TArray)
13# RadioBeam cubes : the radial (redshift) direction along Z axis of the cube (TArray)
14# Execucte the following script in spiapp :
15
16csh> cat > racube.pic
17set f lssz056
18readfits ${f}_r.fits
19rename ${f}_r map
20print map
21c++exec \
22 TArray<r_4> omap(map.SizeY(),map.SizeZ(),map.SizeX()-2 ); \
23 for(sa_size_t i=0;i<omap.SizeX();i++) \
24 for(sa_size_t j=0;j<omap.SizeY();j++) \
25 for(sa_size_t k=0;k<omap.SizeZ();k++) \
26 omap(i,j,k)=map(k+1,i,j); \
27 KeepObj(omap);
28
29print omap
30saveppf omap lsscube.ppf
31
32csh> spiapp -term -exec racube.pic
33
34## Step 2/ Produce synchrotron and radio source sky cubes (cube unit is Temparature- Kelvin)
35# 2.a/ Synchrotron map from HASLAM 400 MHz map
36csh> ./Objs/syncube syncmap_eq.fits syncube.ppf
37# 2.b/ radio source cube from NVSS catalog
38csh> ./Objs/srcat2cube nvss.fits nvsscube.ppf
39# 2.c/ Add the two cubes using the following spiapp script
40csh> cat > sumcubes.pic
41openppf syncube.ppf
42openppf nvsscube.ppf
43# expmeansig syncube val
44# expmeansig nvsscube val
45c++exec TArray<r_4> fgndcube = syncube+nvsscube; KeepObj(fgndcube);
46print fgndcube
47# expmeansig fgndcube val
48saveppf fgndcube fgndcube.ppf
49
50csh> spiapp -term -exec sumcubes.pic
51
52## Step 3/ Apply lobe effect on foreground cube and LSS cube
53csh> ./Objs/applobe fgndcube.ppf fgndcube_lobe.ppf
54csh> ./Objs/applobe lsscube.ppf lsscube_lobe.ppf
55## Step 3.b/ Correct for the lobe effect by bringing all to a beam of 30 arcmin
56csh> ./Objs/applobe lsscube_lobe.ppf lsscube_corlobe.ppf 1 30
57csh> ./Objs/applobe fgndcube_lobe.ppf fgndcube_corlobe.ppf 1 30
58
59### Step 4/ Compute power spectra
60## mass to temperature converion factor CT21 ~= 0.2 mK
61## Foreground maps are in temperature
62## Noise fluctuations Sigma^2 ~ T_sys^2 / t_obs * DeltaFreq
63## Tsys ~ 50 K , DeltaFreq ~ 0.275 MHz , t_obs ~ 1 day ~ 80 000 s.
64## sigma_noise ~ 0.35 mK
65# 4.a/ LSS power spectrum without noise
66csh> ./Objs/calcpk lsscube.ppf lsspk.ppf 0.2
67# and with noise
68csh> ./Objs/calcpk lsscube.ppf lsspkwn.ppf 0.2 0.35
69# with the lobe effect
70csh> ./Objs/calcpk lsscube_lobe.ppf lsspklobe.ppf 0.2
71csh> ./Objs/calcpk lsscube_corlobe.ppf lsspkcorlobe.ppf 0.2
72
73# 4.b/ Foreground power spectrum
74csh> ./Objs/calcpk fgndcube.ppf fgndpk.ppf 1000
75csh> ./Objs/calcpk fgndcube_lobe.ppf fgndpklobe.ppf 1000
76csh> ./Objs/calcpk fgndcube_corlobe.ppf fgndpkcorlobe.ppf 1000
77
78# 4.c/ Extract LSS P(k) from Foreground+LSS+noise , after cleaning/subtraction without beam
79csh> ./Objs/calcpk2 lsscube.ppf 0.2 fgndcube.ppf 1000 subpk.ppf 0.35 0. 0.
80# 4.d / Extract LSS P(k) from Foreground+LSS+noise and beam effect - correcting for beam to 30 arcmin
81csh> ./Objs/calcpk2 lsscube_lobe.ppf 0.2 fgndcube_lobe.ppf 1000 subpklobe.ppf 0.35 30. 3.
82
83### Step 5 / Check the results using spiapp
84openppf fgndpk.ppf
85openppf lsspk.ppf
86openppf lsspkwn.ppf
87openppf lsspklobe.ppf
Note: See TracBrowser for help on using the repository browser.