public class ClusterFellwalker extends Object implements stream.Processor
Modifier and Type | Field and Description |
---|---|
String |
areaKey |
String |
arrivaltimePosKey |
String |
cogKey |
int |
minShowerpixel |
String |
morphologyKey |
String |
photonchargeKey |
String |
showerKey |
String |
sourcePositionKey |
Constructor and Description |
---|
ClusterFellwalker() |
Modifier and Type | Method and Description |
---|---|
static double |
boundAngleSum(FactCluster[] showerCluster) |
static double |
boundContentRatio(FactCluster[] showerCluster) |
int |
countAirPixel(ArrayList<Integer> gapPixel,
int[] showerClusterID) |
static double |
distanceCenter(FactCluster[] showerCluster) |
double |
distanceCog(FactCluster[] showerCluster,
double cogX,
double cogY) |
double |
distanceSource(FactCluster[] showerCluster,
CameraCoordinate sourcePosition) |
int |
findMaxChargeLargeNeighbour(int currentPixel,
double[] photoncharge) |
int |
findMaxChargeNeighbour(ArrayList<CameraPixel> usableNeighbours,
int currentPixel,
double[] photoncharge) |
void |
findNeighbors(FactCluster[] showerSet,
int[] showerClusterID) |
static double |
getChargeMaxCluster(FactCluster[] showerCluster) |
static double |
getMorphMaxCluster(FactCluster[] showerCluster) |
static double |
idealBoundDiff(FactCluster[] showerCluster) |
static void |
markBoundaryPixel(FactCluster[] clusterSet,
int[] showerClusterID) |
FactCluster |
maxCluster(FactCluster[] showerCluster) |
double |
neighborClusterMean(FactCluster[] showerCluster) |
int |
NextStartPixel(int[] clusterID,
int[] shower) |
static void |
pathToExistingCluster(int[] clusterID,
ArrayList<Integer> aktuellerPfad,
int clusterNum) |
static void |
pathToNewCluster(int[] clusterID,
ArrayList<Integer> aktuellerPfad,
int clusterNum) |
stream.Data |
process(stream.Data data) |
FactCluster[] |
removeCluster(FactCluster[] clusterSet,
int minShowerpixel) |
int |
searchForCompactGroups(FactCluster[] showerCluster,
int[] showerClusterID)
Method to search for all neighbor clusters of all clusters in the camera image.
|
double |
stdArrTime(FactCluster[] showerCluster,
double[] arrivaltime) |
static double |
stdNumPixel(FactCluster[] showerCluster) |
@Parameter(required=false, description="Minimal number of pixels a cluster must contain to be labeled as \'showerCluster\'", defaultValue="2") public int minShowerpixel
@Parameter(required=true, description="Input key for pixel set (aka shower pixel). Used to keep/remove cluster if areaKey=null.") public String showerKey
@Parameter(required=false, description="Input key for arrivaltime positions", defaultValue="arrivalTimePos") public String arrivaltimePosKey
@Parameter(required=false, description="Input key for calculated photon charge", defaultValue="photoncharge") public String photonchargeKey
@Parameter(required=false, description="Value chosen for clustering. Could be photoncharge, arrival times or mean correlation.", defaultValue="photoncharge") public String morphologyKey
@Parameter(required=false, description="Input key for soure position", defaultValue="sourcePositionKey") public String sourcePositionKey
@Parameter(description="Key to CameraCoordinate of the cog as calculated bei HillasParameters", defaultValue="cog") public String cogKey
@Parameter(required=false, description="Pixel set to cluster. If null, cluster all camera pixel; in that case decide which clusters should be kept via pixelSetKey", defaultValue="null") public String areaKey
public stream.Data process(stream.Data data)
process
in interface stream.Processor
public int NextStartPixel(int[] clusterID, int[] shower)
public int findMaxChargeNeighbour(ArrayList<CameraPixel> usableNeighbours, int currentPixel, double[] photoncharge)
public int findMaxChargeLargeNeighbour(int currentPixel, double[] photoncharge)
public static void pathToNewCluster(int[] clusterID, ArrayList<Integer> aktuellerPfad, int clusterNum)
public static void pathToExistingCluster(int[] clusterID, ArrayList<Integer> aktuellerPfad, int clusterNum)
public FactCluster[] removeCluster(FactCluster[] clusterSet, int minShowerpixel)
public static void markBoundaryPixel(FactCluster[] clusterSet, int[] showerClusterID)
public static double boundContentRatio(FactCluster[] showerCluster)
public static double idealBoundDiff(FactCluster[] showerCluster)
public static double boundAngleSum(FactCluster[] showerCluster)
public static double distanceCenter(FactCluster[] showerCluster)
public double distanceCog(FactCluster[] showerCluster, double cogX, double cogY)
public double distanceSource(FactCluster[] showerCluster, CameraCoordinate sourcePosition)
public int searchForCompactGroups(FactCluster[] showerCluster, int[] showerClusterID)
public double neighborClusterMean(FactCluster[] showerCluster)
public void findNeighbors(FactCluster[] showerSet, int[] showerClusterID)
public FactCluster maxCluster(FactCluster[] showerCluster)
public static double getMorphMaxCluster(FactCluster[] showerCluster)
public static double getChargeMaxCluster(FactCluster[] showerCluster)
public double stdArrTime(FactCluster[] showerCluster, double[] arrivaltime)
public static double stdNumPixel(FactCluster[] showerCluster)
Copyright © 2019. All rights reserved.