XYlocate(Rquake)
XYlocate()所属R语言包:Rquake
Locate Earthquake with UTM projection
找到地震与UTM投影
译者:生物统计家园网 机器人LoveR
描述----------Description----------
Non-linear hypocenter location with UTM geographical projection. Used for locating earthquakes in local or regional settings.
非线性震源的位置,UTMGEO投影。用于定位的地震在当地或区域设置。
用法----------Usage----------
XYlocate(Ldat, EQ, vel, maxITER = 10, distwt = 10, lambdareg = 100, FIXZ
= FALSE, REG = TRUE, WTS = TRUE, STOPPING = TRUE, RESMAX = c(.4,.5), tolx = 0.005, toly = 0.005, tolz = 0.01, PLOT = FALSE)
参数----------Arguments----------
参数:Ldat
list, must inlude: x,y,err, sec, cor (see details)
列表,必须inlude:X,Y,错了,秒,肺心病(见详情)
参数:EQ
list, must inlude: x,y,z, t
列表,必须inlude:X,和z,叔
参数:vel
list, 1D velocity structure
列表中,一维速度结构
参数:maxITER
Maximum number of iterations
最大迭代次数
参数:distwt
distance weighting factor
距离权重系数
参数:lambdareg
regularization parameter for damping
正则化参数的阻尼
参数:FIXZ
logical, TRUE = fix depth, i.e. only calculate x,y,t
逻辑,TRUE =的修正深度,即只计算X,Y,T
参数:REG
logical, TRUE=use regularization
逻辑,TRUE =使用正规化
参数:WTS
logical, TRUE==use weighting
逻辑,TRUE ==使用权
参数:STOPPING
logical, TRUE=use stopping criteria
逻辑,TRUE =使用停止准则
参数:RESMAX
vector, residual max for P and S, default=c(4,5)
向量,剩余的最大P波和S,默认目录为C(4,5)
参数:tolx
numeric, tolerance in km in x direction
数字,宽容公里,在x方向
参数:toly
numeric, tolerance in km in y direction
数字,宽容公里,在y方向
参数:tolz
numeric, tolerance in km in z direction
数字,宽容公里,在z方向
参数:PLOT
logical, plot results during iterations
在迭代过程中的逻辑,图结果
Details
详细信息----------Details----------
Input pick list must have at x,y,z, sec, cor, err elements for each station. If no station correction is available it is set to zero. If no uncertainty (err) is available, it is set to 0.05 sec. Each station must have a finite x-y coordinate and arrival time in seconds. Events are located relative to the minute.
输入选择列表中必须有X,Y,Z,秒,肺心病,犯错各站的内容。如果没有电台校正是可用的,它被设置到零。如果没有不确定性(错误)是可用的,它被设置为0.05秒。每个站必须具有有限的xy坐标和到达时间(秒)。事件的相对位置的分钟。
Routine uses the svd in a sequence of linear inversions to estimate the nonlinear location.
例程使用SVD线性倒置在一个序列中,估计的非线性的位置。
值----------Value----------
List:
列表:
参数:EQ
list, Earthquake hypocenter and time
列表中,地震震源和时间
参数:its
number of iterations
迭代次数
参数:rms
rms residual
RMS残留
参数:wrms
wheighted rms residual
wheighted RMS残留
参数:used
vector, index of used equations
矢量,索引使用的方程
参数:guesses
list of x,y,z,t intermediate locations when converging
收敛时的X,Y,Z,T中间位置的列表
注意----------Note----------
This routine should be called by a wrapper (Vlocate) that applies the algorithm several times and changes parameters based on the quality.
这个例程应该调用一个适用的算法几次变化参数为基础,质量的包装(Vlocate)。
If RESMAX is used and the robust approach yields fewer than 4 equations, the best (smallest) four residuals will be used to determiine the event location.
,如果RESMAX使用和可靠的方法产生了不到4个方程,是最好的(最小)4残差,将用于determiine事件的位置。
(作者)----------Author(s)----------
Jonathan M. Lees<jonathan.lees@unc.edu>
参见----------See Also----------
Vlocate
Vlocate
实例----------Examples----------
data(GH)
g1 = GH$pickfile
data(VELMOD1D)
vel= VELMOD1D
w1 = which(!is.na(g1$STAS$lat))
sec = g1$STAS$sec[w1]
N = length(sec)
Ldat = list(
name = g1$STAS$name[w1],
sec = g1$STAS$sec[w1],
phase = g1$STAS$phase[w1],
lat=g1$STAS$lat[w1],
lon = g1$STAS$lon[w1],
z = g1$STAS$z[w1],
err= g1$STAS$err[w1],
yr = rep(g1$LOC$yr , times=N),
jd = rep(g1$LOC$jd, times=N),
mo = rep(g1$LOC$mo, times=N),
dom = rep(g1$LOC$dom, times=N),
hr =rep( g1$LOC$hr, times=N),
mi = rep(g1$LOC$mi, times=N) )
MLAT = median(Ldat$lat)
MLON = median(Ldat$lon)
proj = setPROJ(type=2, LAT0=MLAT, LON0=MLON)
#### get station X-Y values in km[###站的X-Y值公里]
XY = GLOB.XY(Ldat$lat, Ldat$lon, proj)
### add to Ldat list[##添加到LDAT列表]
Ldat$x = XY$x
Ldat$y = XY$y
wstart = which.min(Ldat$sec)
EQ = list(x=XY$x[wstart], y=XY$y[wstart], z=6, t=Ldat$sec[wstart] )
maxITER = 7
###print(EQ)[##(EQ)]
AQ = XYlocate(Ldat,EQ,vel,
maxITER = maxITER,
distwt = 1,
lambdareg =10 ,
FIXZ = FALSE,
REG = TRUE,
WTS = TRUE,
STOPPING = TRUE,
RESMAX = c(0.1,0.1),
tolx = 0.001,
toly = 0.001 ,
tolz = 0.5, PLOT=FALSE)
######## update the new location[#######更新新的位置]
AXY = XY.GLOB(AQ$EQ$x, AQ$EQ$y, proj)
AQ$EQ$lat = AXY$lat
AQ$EQ$lon = AXY$lon
if(AQ$EQ$lon>180) { AQ$EQ$lon = AQ$EQ$lon-360 }
plot(c(Ldat$x, AQ$EQ$x) , c(Ldat$y,AQ$EQ$y), type='n' , xlab="km",
ylab="km" )
points(Ldat$x, Ldat$y, pch=6)
points(AQ$EQ$x, AQ$EQ$y, pch=8, col='red')
points(EQ$x, EQ$y, pch=4, col='blue')
legend("topright", pch=c(8,4, 6), col=c("red", "blue", "black"),
legend=c("Final location", "Initial guess", "Station"))
print(AQ)
EQ$x = 10
EQ$y = 2
转载请注明:出自 生物统计家园网(http://www.biostatistic.net)。
注:
注1:为了方便大家学习,本文档为生物统计家园网机器人LoveR翻译而成,仅供个人R语言学习参考使用,生物统计家园保留版权。
注2:由于是机器人自动翻译,难免有不准确之处,使用时仔细对照中、英文内容进行反复理解,可以帮助R语言的学习。
注3:如遇到不准确之处,请在本贴的后面进行回帖,我们会逐渐进行修订。
|