74 CNode(std::string name,
double lat,
double lon,
double z,
double resolution,
75 double maxDepth,
bool aseismic);
113 bool initialize(std::string name,
double lat,
double lon,
double z,
114 double resolution,
double maxDepth,
bool aseismic);
139 bool linkSite(std::shared_ptr<CSite> site, std::shared_ptr<CNode> node,
140 double distDeg,
double travelTime1, std::string phase1,
141 double travelTime2 = -1, std::string phase2 =
"");
208 std::shared_ptr<CSite>
getSite(std::string siteID);
330 const std::string&
getName()
const;
336 std::string
getID()
const;
362 std::atomic<double> m_dLatitude;
367 std::atomic<double> m_dLongitude;
372 std::atomic<double> m_dDepth;
378 std::atomic<double> m_dMaxDepth;
384 std::atomic<bool> m_bAseismic;
390 std::atomic<double> m_dMaxSiteDistance;
396 std::atomic<double> m_dResolution;
402 std::atomic<bool> m_bEnabled;
408 std::set<std::string> m_SourceSet;
414 std::vector<SiteLink> m_vSiteLinkList;
419 mutable std::mutex m_SiteLinkListMutex;
428 mutable std::recursive_mutex m_NodeMutex;
439 static constexpr
double k_dTravelTimePickSelectionWindow = 120.0;
445 static constexpr
double k_dDepthShellResolutionKm = 100.0;
451 static constexpr
double k_dGridPointVsResolutionRatio = 0.7071;
459 static constexpr
double k_residualDistanceAllowanceFactor = 2.;
double getDepth() const
Get the depth for this node.
Definition: Node.cpp:849
bool unlinkSite(std::shared_ptr< CSite > site)
CNode node-site and site-node unlinker.
Definition: Node.cpp:169
glasscore pick list class
Definition: PickList.h:62
bool getAseismic() const
Gets a flag indicating that the node is in an aseismic area.
Definition: Node.cpp:859
glasscore detection node class
Definition: Node.h:46
std::shared_ptr< CSite > getLastSite()
CNode get last site function.
Definition: Node.cpp:770
int getSiteLinksCount() const
Gets the number of sites linked to this node.
Definition: Node.cpp:817
double getLatitude() const
Get the latitude for this node.
Definition: Node.cpp:834
double getMaxSiteDistance() const
Get the maximum site distance for this node.
Definition: Node.cpp:897
bool initialize(std::string name, double lat, double lon, double z, double resolution, double maxDepth, bool aseismic)
CNode initialization funcion.
Definition: Node.cpp:110
double getSignificance(double tObservedTT, double travelTime, double distDeg)
CNode significance function.
Definition: Node.cpp:703
std::string getID() const
Get the unique id for this web.
Definition: Node.cpp:889
void setEnabled(bool enabled)
Sets a flag indicating that the node is enabled for nucleation. Typically a node is only disabled whe...
Definition: Node.cpp:829
bool unlinkLastSite()
CNode unlink last by distance site from node.
Definition: Node.cpp:238
std::string getSitesString()
Generates a string that contains each site link, including the siteID, latitude, longitude, and depth. This string is generated when optionally creating web files that are used for tuning the web using third party programs.
Definition: Node.cpp:795
geographic coordinate conversion class
Definition: geo.h:25
void clearSiteLinks()
Delink all sites to/from this node.
Definition: Node.cpp:89
void sortSiteLinks()
CNode site link sort function.
Definition: Node.cpp:786
std::shared_ptr< CTrigger > nucleate(double tOrigin, CPickList *parentThread)
CNode Nucleation function.
Definition: Node.cpp:272
bool getEnabled() const
Gets a flag indicating that the node is enabled for nucleation. Typically a node is only disabled whe...
Definition: Node.cpp:824
glass3::util::Geo getGeo() const
Get the combined node location (latitude, longitude, depth) as a CGeo object.
Definition: Node.cpp:864
void setWeb(CWeb *web)
Sets a pointer to the parent CWeb that created and holds this node.
Definition: Node.cpp:878
~CNode()
CNode destructor.
Definition: Node.cpp:67
void clear()
CNode clear function.
Definition: Node.cpp:71
double getResolution() const
Gets the resolution of the web that created this node.
Definition: Node.cpp:844
bool linkSite(std::shared_ptr< CSite > site, std::shared_ptr< CNode > node, double distDeg, double travelTime1, std::string phase1, double travelTime2=-1, std::string phase2="")
CNode node-site and site-node linker.
Definition: Node.cpp:129
CWeb * getWeb() const
Gets a pointer to the parent CWeb that created and holds this node.
Definition: Node.cpp:872
const std::string & getName() const
Gets the name of the parent CWeb that created and holds this node This name is used to ensure that on...
Definition: Node.cpp:884
void addSource(std::string source)
Add to the allowed pick sources for this node.
Definition: Node.cpp:903
double getLongitude() const
Get the longitude for this node.
Definition: Node.cpp:839
The namespace containing the core algorithm.
Definition: Correlation.h:17
CNode()
CNode constructor.
Definition: Node.cpp:54
std::shared_ptr< CSite > getSite(std::string siteID)
CNode site used function.
Definition: Node.cpp:744
double getMaxDepth() const
Get the maximum depth for triggers made at this node.
Definition: Node.cpp:854
glasscore detection web class
Definition: Web.h:46