LALPulsar  6.1.0.1-fe68b98
ConstructPLUT.c File Reference

Construction of the look up table for generating partial Hough maps assuming the use of the stereographic projection. More...

Prototypes

static void PLUTInitialize (HOUGHptfLUT *)
 
static void FillPLUT (HOUGHParamPLUT *, HOUGHptfLUT *, HOUGHPatchGrid *)
 
static void CheckLeftCircle (REAL8, REAL8, REAL8, INT4 *, INT4 *, INT4 *, HOUGHPatchGrid *)
 
static void CheckRightCircle (REAL8, REAL8, REAL8, INT4 *, INT4 *, INT4 *, HOUGHPatchGrid *)
 
static void DrawRightCircle (REAL8, REAL8, REAL8, INT4, INT4, COORType *, HOUGHPatchGrid *)
 
static void DrawLeftCircle (REAL8, REAL8, REAL8, INT4, INT4, COORType *, HOUGHPatchGrid *)
 
static void CheckLineCase (REAL8, REAL8, REAL8, REAL8 *, INT4 *)
 
static void FindLine (REAL8, REAL8, REAL8, REAL8 *, REAL8 *)
 
static void CheckLineIntersection (REAL8, REAL8, REAL8, INT4 *, INT4 *, INT4 *, HOUGHPatchGrid *)
 
static void DrawLine (REAL8, REAL8, REAL8, INT4, INT4, COORType *, HOUGHPatchGrid *)
 
static void Fill1Column (INT4, UINT4 *, HOUGHptfLUT *, HOUGHPatchGrid *)
 
static void FillCaseN1 (INT4, INT4, INT4, HOUGHptfLUT *, HOUGHPatchGrid *)
 
static void FillCaseN2 (INT4, INT4, HOUGHptfLUT *, HOUGHPatchGrid *)
 
static void FillCaseN3 (INT4, INT4, INT4, INT4 *, HOUGHptfLUT *, HOUGHPatchGrid *)
 
static void FillCaseN4 (INT4, INT4, HOUGHptfLUT *, HOUGHPatchGrid *)
 
static void FillCaseN5 (INT4, INT4, INT4, HOUGHptfLUT *)
 
static void FillCaseN6 (INT4, INT4, INT4, HOUGHptfLUT *, HOUGHPatchGrid *)
 
static void FillCaseN7 (INT4, INT4, HOUGHptfLUT *, HOUGHPatchGrid *)
 
static void FillCaseN8 (INT4, INT4, HOUGHptfLUT *, HOUGHPatchGrid *)
 
static void Fill1ColumnAnor (INT4, HOUGHptfLUT *, HOUGHPatchGrid *)
 
static void FillCaseA1 (INT4, INT4, INT4, HOUGHptfLUT *)
 
static void FillCaseA2 (INT4, INT4, INT4, HOUGHptfLUT *)
 
static void FillCaseA3 (INT4, INT4, INT4, HOUGHptfLUT *, HOUGHPatchGrid *)
 
static void InitialCircleCase (UINT4 *, REAL8, REAL8, REAL8, REAL8 *, INT4 *, INT4 *, HOUGHptfLUT *, HOUGHPatchGrid *)
 
static void SecondCircleCase (INT4, UINT4 *, REAL8, REAL8, REAL8, INT4, REAL8 *, INT4 *, INT4 *, INT4 *, HOUGHptfLUT *, HOUGHPatchGrid *)
 
static void FollowCircleCase (INT4, UINT4 *, REAL8, REAL8, REAL8, REAL8, REAL8, INT4 *, INT4 *, INT4 *, HOUGHptfLUT *, HOUGHPatchGrid *)
 
static void InitialLineCase (UINT4 *, REAL8, REAL8, REAL8, INT4 *, HOUGHptfLUT *, HOUGHPatchGrid *)
 
static void SecondLineCase (INT4, UINT4 *, REAL8, REAL8, REAL8, INT4 *, HOUGHptfLUT *, HOUGHPatchGrid *)
 
static void FollowLineCase (INT4, UINT4 *, REAL8, REAL8, REAL8, REAL8, INT4, INT4 *, HOUGHptfLUT *, HOUGHPatchGrid *)
 
void LALHOUGHConstructPLUT (LALStatus *status, HOUGHptfLUT *lut, HOUGHPatchGrid *patch, HOUGHParamPLUT *par)
 

Detailed Description

Construction of the look up table for generating partial Hough maps assuming the use of the stereographic projection.

Author
Sintes, A and Krishnan, B

Description

This module is the core of the Hough transform. The LAL function LALHOUGHConstructPLUT() constructs the look up tables that will be used to build the so-called partial-Hough maps. Each look up table is valid for a given sky-patch, time, and frequency range around a certain f0 value. The look up table contains all the necessary information regarding the borders of the annuli clipped on the projected' two dimensional sky-patch.

The inputs are: HOUGHPatchGrid containing the grid patch information. This is independent of the sky location of the patch, and HOUGHParamPLUT with all the other parameters needed.

The output is the look up table HOUGHptfLUT

More detailed documentation can be found in the source code itself.

Definition in file ConstructPLUT.c.

Go to the source code of this file.

Function Documentation

◆ PLUTInitialize()

static void PLUTInitialize ( HOUGHptfLUT lut)
static

Definition at line 244 of file ConstructPLUT.c.

◆ FillPLUT()

static void FillPLUT ( HOUGHParamPLUT par,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 332 of file ConstructPLUT.c.

◆ CheckLeftCircle()

static void CheckLeftCircle ( REAL8  xc,
REAL8  yc,
REAL8  radius,
INT4 yyminP,
INT4 yymaxP,
INT4 noInP,
HOUGHPatchGrid patch 
)
static

Definition at line 2128 of file ConstructPLUT.c.

◆ CheckRightCircle()

static void CheckRightCircle ( REAL8  xc,
REAL8  yc,
REAL8  radius,
INT4 yyminP,
INT4 yymaxP,
INT4 noInP,
HOUGHPatchGrid patch 
)
static

Definition at line 2340 of file ConstructPLUT.c.

◆ DrawRightCircle()

static void DrawRightCircle ( REAL8  xc,
REAL8  yc,
REAL8  radius,
INT4  yymin,
INT4  yymax,
COORType column,
HOUGHPatchGrid patch 
)
static

Definition at line 2586 of file ConstructPLUT.c.

◆ DrawLeftCircle()

static void DrawLeftCircle ( REAL8  xc,
REAL8  yc,
REAL8  radius,
INT4  yymin,
INT4  yymax,
COORType column,
HOUGHPatchGrid patch 
)
static

Definition at line 2546 of file ConstructPLUT.c.

◆ CheckLineCase()

static void CheckLineCase ( REAL8  epsilon,
REAL8  ang1,
REAL8  ang2,
REAL8 epsP,
INT4 lineCaseP 
)
static

Definition at line 1105 of file ConstructPLUT.c.

◆ FindLine()

static void FindLine ( REAL8  alpha,
REAL8  delta,
REAL8  eps,
REAL8 xA,
REAL8 yA 
)
static

Definition at line 1189 of file ConstructPLUT.c.

◆ CheckLineIntersection()

static void CheckLineIntersection ( REAL8  alpha,
REAL8  xA,
REAL8  yA,
INT4 yyminP,
INT4 yymaxP,
INT4 noInP,
HOUGHPatchGrid patch 
)
static

Definition at line 1213 of file ConstructPLUT.c.

◆ DrawLine()

static void DrawLine ( REAL8  alpha,
REAL8  xA,
REAL8  yA,
INT4  yymin,
INT4  yymax,
COORType column,
HOUGHPatchGrid patch 
)
static

Definition at line 1291 of file ConstructPLUT.c.

◆ Fill1Column()

static void Fill1Column ( INT4  currentBin,
UINT4 lastBorderP,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 2639 of file ConstructPLUT.c.

◆ FillCaseN1()

static void FillCaseN1 ( INT4  lb1,
INT4  rb1,
INT4  currentBin,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 2723 of file ConstructPLUT.c.

◆ FillCaseN2()

static void FillCaseN2 ( INT4  lb1,
INT4  currentBin,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 2768 of file ConstructPLUT.c.

◆ FillCaseN3()

static void FillCaseN3 ( INT4  lb1,
INT4  lb2,
INT4  currentBin,
INT4 lastBorderP,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 2794 of file ConstructPLUT.c.

◆ FillCaseN4()

static void FillCaseN4 ( INT4  rb1,
INT4  currentBin,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 2842 of file ConstructPLUT.c.

◆ FillCaseN5()

static void FillCaseN5 ( INT4  rb1,
INT4  rb2,
INT4  currentBin,
HOUGHptfLUT lut 
)
static

Definition at line 2873 of file ConstructPLUT.c.

◆ FillCaseN6()

static void FillCaseN6 ( INT4  lb2,
INT4  rb2,
INT4  currentBin,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 2908 of file ConstructPLUT.c.

◆ FillCaseN7()

static void FillCaseN7 ( INT4  lb2,
INT4  currentBin,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 2951 of file ConstructPLUT.c.

◆ FillCaseN8()

static void FillCaseN8 ( INT4  rb2,
INT4  currentBin,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 2977 of file ConstructPLUT.c.

◆ Fill1ColumnAnor()

static void Fill1ColumnAnor ( INT4  currentBin,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 3023 of file ConstructPLUT.c.

◆ FillCaseA1()

static void FillCaseA1 ( INT4  rb1,
INT4  rb2,
INT4  currentBin,
HOUGHptfLUT lut 
)
static

Definition at line 3107 of file ConstructPLUT.c.

◆ FillCaseA2()

static void FillCaseA2 ( INT4  lb1,
INT4  lb2,
INT4  currentBin,
HOUGHptfLUT lut 
)
static

Definition at line 3138 of file ConstructPLUT.c.

◆ FillCaseA3()

static void FillCaseA3 ( INT4  lb1,
INT4  rb1,
INT4  currentBin,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 3169 of file ConstructPLUT.c.

◆ InitialCircleCase()

static void InitialCircleCase ( UINT4 lastBorderP,
REAL8  alpha,
REAL8  ang1,
REAL8  ang2,
REAL8 rcOldP,
INT4 directionP,
INT4 ifailP,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 1374 of file ConstructPLUT.c.

◆ SecondCircleCase()

static void SecondCircleCase ( INT4  currentBin,
UINT4 lastBorderP,
REAL8  alpha,
REAL8  ang1,
REAL8  ang2,
INT4  directionPlus,
REAL8 rcOldP,
INT4 pathologyP,
INT4 directionP,
INT4 ifailP,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 1612 of file ConstructPLUT.c.

◆ FollowCircleCase()

static void FollowCircleCase ( INT4  currentBin,
UINT4 lastBorderP,
REAL8  alpha,
REAL8  ang1,
REAL8  ang2,
REAL8  rCritic,
REAL8  rcOld,
INT4 pathologyP,
INT4 directionP,
INT4 ifailP,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 1868 of file ConstructPLUT.c.

◆ InitialLineCase()

static void InitialLineCase ( UINT4 lastBorderP,
REAL8  alpha,
REAL8  delta,
REAL8  eps,
INT4 ifailP,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 626 of file ConstructPLUT.c.

◆ SecondLineCase()

static void SecondLineCase ( INT4  currentBin,
UINT4 lastBorderP,
REAL8  alpha,
REAL8  delta,
REAL8  eps,
INT4 ifailP,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 759 of file ConstructPLUT.c.

◆ FollowLineCase()

static void FollowLineCase ( INT4  currentBin,
UINT4 lastBorderP,
REAL8  alpha,
REAL8  delta,
REAL8  eps,
REAL8  rcOld,
INT4  direction,
INT4 ifailP,
HOUGHptfLUT lut,
HOUGHPatchGrid patch 
)
static

Definition at line 899 of file ConstructPLUT.c.