def distepi(lat_epi, lon_epi, lat, lon): """ Returns the distance, in km, from the epicenter whose latitude, longitude are lat_epi and lon_epi, respectively, and a generic location whose latitude and longitude are lat and lon, respectively. All arguments are assumed in degrees. The returned distance is the arc of the great circle passing for the epicenter and the given location """ return deg2km(greatarc_dist(lat_epi, lon_epi, lat, lon))
def __call__(self, lat, lon): #TO BE IMPLEMENTED #getting constants: xEP1, xEP2, xEP3, xEP4, xEP5 = self.__constants dist_epi_sta = deg2km(greatarc_dist(self.lat, self.lon, lat, lon)) M = self.m #magnitude depth = self.depth return xEP1*M + xEP2*log10(depth) + xEP3 - xEP4*0.5*log10((dist_epi_sta/depth)**2 + 1) - xEP5*(sqrt(dist_epi_sta**2 + depth**2)-depth)
def centralasia_emca_1(M, lat_hyp, lon_hyp, depth_hyp, lat_sta, lon_sta): #h=Depth, R=distanza in R2 tra epicentro e stazione. DISTANZE IN KM!!!! """ Computed intensity prediction equation for central asia. Parameters: M magnitude lat_hyp, lon_hyp, depth_hyp: coordinates of the hypocenter (latitude, longitude, depth, respectively). depth must be positive lat_sta, lon_sta: coordinates of the station (latitude and longitude, respectively) Returns: a number """ dist_epi_sta = deg2km(greatarc_dist(lat_hyp,lon_hyp,lat_sta, lon_sta)) return _centralasia_emca_1(M, depth_hyp,dist_epi_sta)
def centralasia_emca_1( M, lat_hyp, lon_hyp, depth_hyp, lat_sta, lon_sta ): #h=Depth, R=distanza in R2 tra epicentro e stazione. DISTANZE IN KM!!!! """ Computed intensity prediction equation for central asia. Parameters: M magnitude lat_hyp, lon_hyp, depth_hyp: coordinates of the hypocenter (latitude, longitude, depth, respectively). depth must be positive lat_sta, lon_sta: coordinates of the station (latitude and longitude, respectively) Returns: a number """ dist_epi_sta = deg2km(greatarc_dist(lat_hyp, lon_hyp, lat_sta, lon_sta)) return _centralasia_emca_1(M, depth_hyp, dist_epi_sta)