Nemo - a Sunyaev-Zel’dovich effect galaxy cluster and source finder
Nemo is a millimeter-wave Sunyaev-Zel’dovich galaxy cluster and compact source detection package, originally developed for the Atacama Cosmology Telescope project, and capable of analyzing maps that will be produced by the Simons Observatory.
Documentation: https://nemo-sz.readthedocs.io
License: BSD 3-Clause
Authors: Matt Hilton, with contributions from Simone Aiola, David Alonso, Boris Bolliet, Matthew Hasselfield, Kevin Huffenberger, Toby Marriage, Niall MacCrann, Sigurd Naess, Cristóbal Sifón, and Íñigo Zubeldia (not all reflected on GitHub).
Installation:
pip install nemo-sz
Support: Please use the GitHub issues page, and/or contact Matt Hilton.
Nemo is written in Python and provides several modules that may be useful for analyzing ACT/SO data, in addition to the command-line programs provided in the package.
Nemo is not the pipeline used for Hasselfield et al. (2013), but implements many of the ideas presented there. It is the package that was used to produce the ACT DR3 cluster catalog, and the ACT DR5 cluster catalog. All ACT data products are available from LAMBDA.
Nemo is under active development, and not all documentation or example config files are up to date (some may contain references to files that are not yet publicly available). The package also contains some experimental features that are not necessarily well tested.
If you need to acknowledge the use of Nemo, please cite Hilton et al. (2021).
- Installation
- Quickstart: Finding Sources and Clusters
- Nemo Commands
- Configuration File Parameters
- Output
- Advanced Topics
- Tutorials
- Contributing to Further Development
- Testing
- API Reference
- catalogs
addFootprintColumnToCatalog()
catalog2DS9()
catalogListToTab()
checkCrossMatch()
crossMatch()
flagTileBoundarySplits()
generateRandomSourcesCatalog()
generateTestCatalog()
getCatalogWithinImage()
getTableRADecKeys()
makeLongName()
makeName()
makeOptimalCatalog()
removeCrossMatched()
removeDuplicates()
selectFromCatalog()
tabToCatalogList()
writeCatalog()
- completeness
FootprintError
SelFn
SelFn.SNRCut
SelFn.footprint
SelFn.applyMFDebiasCorrection
SelFn.zStep
SelFn.zMax
SelFn.tileNames
SelFn.WCSDict
SelFn.areaMaskDict
SelFn.scalingRelationDict
SelFn.Q
SelFn.RMSDict
SelFn.totalAreaDeg2
SelFn.fRelDict
SelFn.mockSurvey
SelFn.addPDetToCatalog()
SelFn.checkCoordsInAreaMask()
SelFn.cutCatalogToSurveyArea()
SelFn.generateMockSample()
SelFn.getMassLimit()
SelFn.projectCatalogToMz()
SelFn.projectCatalogToMz_simple()
SelFn.update()
calcCompleteness()
calcCompletenessContour()
calcMassLimit()
calcTileWeightedAverageNoise()
completenessByFootprint()
downsampleRMSTab()
getRMSTab()
getTileTotalAreaDeg2()
loadAreaMask()
loadFlagMask()
loadIntersectionMask()
loadMassLimitMap()
loadRMSMap()
makeFullSurveyMassLimitMapPlot()
makeIntersectionMask()
makeMassLimitMapsAndPlots()
makeMassLimitVRedshiftPlot()
makeMzCompletenessPlot()
tidyUp()
- filters
ArnaudModelFilter
ArnaudModelMatchedFilter
ArnaudModelRealSpaceMatchedFilter
BattagliaModelFilter
BattagliaModelMatchedFilter
BattagliaModelRealSpaceMatchedFilter
BeamFilter
BeamMatchedFilter
BeamRealSpaceMatchedFilter
MapFilter
MapFilter.label
MapFilter.params
MapFilter.diagnosticsDir
MapFilter.selFnDir
MapFilter.tileName
MapFilter.filterFileName
MapFilter.unfilteredMapsDictList
MapFilter.wcs
MapFilter.shape
MapFilter.beamSolidAnglesDict
MapFilter.buildAndApply()
MapFilter.loadFRelWeights()
MapFilter.makeForegroundsPower()
MapFilter.makeNoiseMap()
MapFilter.makeRadiansMap()
MapFilter.makeRealSpaceFilterProfile()
MapFilter.makeSignalTemplateMap()
MapFilter.saveRealSpaceFilterProfile()
MatchedFilter
RealSpaceMatchedFilter
filterMaps()
- gnfw
- maps
MapDict
MapDictList
TileDict
addWhiteNoise()
applyPointSourceMask()
autotiler()
checkMask()
chunkLoadMask()
convertToDeltaT()
convertToY()
convolveMapWithBeam()
estimateContamination()
estimateContaminationFromInvertedMaps()
estimateContaminationFromSkySim()
getPixelAreaArcmin2Map()
makeDegreesDistanceMap()
makeExtendedSourceMask()
makeMaskFromDS9PolyRegionFile()
makeModelImage()
maskOutSources()
noiseBiasAnalysis()
plotContamination()
positionRecoveryAnalysis()
saveFITS()
saveTilesDS9RegionsFile()
shrinkWCS()
simCMBMap()
simNoiseMap()
smoothMap()
sourceInjectionTest()
subtractBackground()
- MockSurvey
MockSurvey
MockSurvey.areaDeg2
MockSurvey.zBinEdges
MockSurvey.z
MockSurvey.log10M
MockSurvey.a
MockSurvey.delta
MockSurvey.rhoType
MockSurvey.mdef
MockSurvey.transferFunction
MockSurvey.H0
MockSurvey.Om0
MockSurvey.Ob0
MockSurvey.sigma8
MockSurvey.ns
MockSurvey.volumeMpc3
MockSurvey.numberDensity
MockSurvey.clusterCount
MockSurvey.numClusters
MockSurvey.numClustersByRedshift
MockSurvey.calcNumClustersExpected()
MockSurvey.drawSample()
MockSurvey.getPLog10M()
MockSurvey.setSurveyArea()
MockSurvey.update()
- photometry
- pipelines
- plotSettings
- signals
BeamProfile
M500cToMdef()
MDef1ToMDef2()
QFit
calcFRel()
calcMass()
calcPMass()
calcR500Mpc()
calcRDeltaMpc()
calcTheta500Arcmin()
calcWeightedFRel()
fSZ()
fitQ()
getFRelWeights()
getM500FromP()
loadFRelWeights()
makeArnaudModelProfile()
makeArnaudModelSignalMap()
makeBattagliaModelProfile()
makeBattagliaModelSignalMap()
makeBeamModelSignalMap()
y0FromLogM500()
- startUp
NemoConfig
NemoConfig.parDict
NemoConfig.rootOutDir
NemoConfig.filteredMapsDir
NemoConfig.diagnosticsDir
NemoConfig.unfilteredMapsDictList
NemoConfig.tileNames
NemoConfig.MPIEnabled
NemoConfig.comm
NemoConfig.rank
NemoConfig.size
NemoConfig.addAutoTileDefinitions()
NemoConfig.getTileCoordsDict()
NemoConfig.restoreConfig()
NemoConfig.setFilterSet()
parseConfigFile()
- catalogs