5 #define HEALPIX_ORDER 4 // initial skymap resolution
6 #define RESAMPLING 4 // resampling from initial resolution
8 #define DISPLAY_FULL_SKYMAP
14 #define N 5 // set the frequency of the injected function
15 #define OFFSET 0.3 // offset in degrees of the injected function
20 for(
int l=0;
l<
L;
l++) {
23 double p = sin(TMath::TwoPi()*(th+45-
OFFSET)/180.*
N);
24 double q = cos(TMath::TwoPi()*(ph-
OFFSET)/180.*
N/2.);
32 cout <<
"resampling : " << order <<
" to " << order+
RESAMPLING << endl;
41 for(
int l=0;
l<=alm.
Lmax();
l++) {
42 int limit = TMath::Min(
l,alm.
Mmax());
43 for (
int m=0;
m<=limit;
m++) {
44 double mod = pow(alm(
l,
m).real(),2)+pow(alm(
l,
m).imag(),2);
45 norm+=
m==0 ? mod : 2*mod;
49 cout <<
"norm : " << norm << endl;
54 for(
int i=0;
i<
L;
i++) en+=pow(sm.
get(
i),2);
56 cout <<
"EN " << en*dw << endl;
60 cout <<
"L = " << L << endl;
61 cout <<
"sqrt(ds) = " << sqrt(ds) << endl;
69 for(
int l=0;
l<
L;
l++) {
73 #ifdef DISPLAY_FULL_SKYMAP
74 if(sqrt(pow(th-90,2)+pow(ph-0,2))>
RADIUS)
continue;
76 if(sqrt(pow(th-90,2)+pow(ph-0,2))>
RADIUS) {sm.
set(
l,0);
continue;}
81 double mph = sm.
getPhi(imax);
83 cout <<
"imax " << imax << endl;
84 cout <<
"max " << max << endl;
85 cout <<
"mth " << mth << endl;
86 cout <<
"mph " << mph << endl;
int Lmax() const
Returns the maximum l.
double getTheta(size_t i)
void Draw(int dpaletteId=0, Option_t *option="colfz")
int Mmax() const
Returns the maximum m.
void set(size_t i, double a)
param: sky index param: value to set
double get(size_t i)
param: sky index
void ResampleSkymapFunction()