Exemplo n.º 1
0

################# random pointings ##########################################
racenter = 0.0
deccenter = -57.0
dtheta=15.
npointings=2000
rnd_pointing=create_random_pointings([racenter, deccenter],npointings,dtheta)
op = (DegreesOperator() * Cartesian2SphericalOperator('azimuth,elevation') *
      CartesianEquatorial2GalacticOperator() *
      Spherical2CartesianOperator('azimuth,elevation') *
      RadiansOperator())
center = op([racenter, deccenter])

################# TOD
tod=mm.map2tod(maps,rnd_pointing,qubic,kmax=2)

################# Spoil bolometers calibration
calerror=1e-2
tod_spoiled=tod.copy()
rndcal=np.random.normal(loc=1.,scale=calerror,size=(len(detectors),2))
for i in np.arange(len(detectors)):
    for j in np.arange(2):
        tod_spoiled[i,:,j]=rndcal[i,j]*tod[i,:,j]

################# Maps
output_maps_all,call=mm.tod2map(tod,rnd_pointing,qubic,disp=False)
output_maps_all_spoiled,call_spoiled=mm.tod2map(tod_spoiled,rnd_pointing,qubic,disp=False)
output_maps_det,cdet=mm.tod2map_perdet(tod,rnd_pointing,qubic,disp=False)
output_maps_det_spoiled,cdet_spoiled=mm.tod2map_perdet(tod_spoiled,rnd_pointing,qubic,disp=False)
Exemplo n.º 2
0
################### Make a MC: make various maps useful later
from pysimulators import FitsArray
dtheta=15.
npointings=5000
calerror=1e-2
nbmc=1000
for n in np.arange(nbmc):
    print(' ')
    print(' ')
    print(' ')
    print('#############################')
    print('####### mc '+str(n))
    print('#############################')
    mapi,mapq,mapu=hp.synfast(spectra[1:],nside,fwhm=fwhmrad,pixwin=True,new=True)
    rnd_pointing=create_random_pointings([racenter, deccenter],npointings,dtheta)
    tod=mm.map2tod(maps,rnd_pointing,qubic)
    tod_spoiled=tod.copy()
    rndcal=np.random.normal(loc=1.,scale=calerror,size=(len(detectors),2))
    for i in np.arange(len(detectors)):
        for j in np.arange(2):
            tod_spoiled[i,:,j]=rndcal[i,j]*tod[i,:,j]

    output_maps_all,call=mm.tod2map(tod,rnd_pointing,qubic,disp=False)
    output_maps_all_spoiled,call_spoiled=mm.tod2map(tod_spoiled,rnd_pointing,qubic,disp=False)
    output_maps_det,cdet=mm.tod2map_perdet(tod,rnd_pointing,qubic,disp=False)
    output_maps_det_spoiled,cdet_spoiled=mm.tod2map_perdet(tod_spoiled,rnd_pointing,qubic,disp=False)
    covmin=np.arange(12*nside**2)
    for i in np.arange(12*nside**2):
        covmin[i]=np.min([call[i],call_spoiled[i],cdet[i],cdet_spoiled[i]])

    strn = str(np.random.randint(1e6))
Exemplo n.º 3
0
from astropy.time import Time, TimeDelta
DOMECLAT = -(75 + 6 / 60)
DOMECLON = 123 + 20 / 60
t0 = pointing.date_obs
dt = TimeDelta(pointing.time, format='sec')
op = (pysimulators.SphericalHorizontal2EquatorialOperator('NE', t0 + dt, DOMECLAT, DOMECLON, degrees=True))
radec = op(np.array([pointing.azimuth, pointing.elevation]).T)

clf()
subplot(2,1,1)
plot(((radec[:,0]+180 + 360) % 360) -180,radec[:,1],',')
subplot(2,1,2,projection='mollweide')
plot(np.radians(((radec[:,0]+180 + 360) % 360) -180),np.radians(radec[:,1]),',')

#### Comparaison des map-makings avec tous les det d'un coup ou bien det par det
tod_all=mm.map2tod(maps,pointing,qubic)

clf()
plot(tod_all[0,:,0])


## All det
output_maps_all,coverage_all=mm.tod2map(tod_all,pointing,qubic)
output_maps_all_new=output_maps_all.copy()
hp.mollview(output_maps_all[:,0])
hp.mollview(output_maps_all[:,1])
hp.mollview(output_maps_all[:,2])


## per det
output_maps_det,coverage_det=mm.tod2map_perdet(tod_all,pointing,qubic)