洛马普里埃塔地震

这个例子展示了如何分析和可视化真实世界的地震数据 。 Authors: C. Denham, 1990, C. Moler, August, 1992.
需要这些哦
matlab软件
电脑
方式/
1号令行键入:

load quake e n v
whos e n v

2按“Enter”键 。
如图1所示 。

洛马普里埃塔地震

文章插图

3号令窗口键入:
g = 0.0980;
e = g*e;
n = g*n;
v = g*v;
delt = 1/200;
t = delt*(1:length(e))';
这是加快度的曲线图 。
号令行键入:
yrange = [-250 250];
limits = [0 50 yrange];
subplot(3,1,1), plot(t,e,'b'), axis(limits), title('East-West acceleration')
subplot(3,1,2), plot(t,n,'g'), axis(limits), title('North-South acceleration')
subplot(3,1,3), plot(t,v,'r'), axis(limits), title('Vertical acceleration')

4按“Enter”键 。
如图2所示 。
洛马普里埃塔地震

文章插图

5号令行键入:
t1 = 8*[1;1];
t2 = 15*[1;1];
subplot(3,1,1)
hold on
plot([t1 t2],yrange,'k','LineWidth',2)
hold off
subplot(3,1,2)
hold on
plot([t1 t2],yrange,'k','LineWidth',2)
hold off
subplot(3,1,3)
hold on
plot([t1 t2],yrange,'k','LineWidth',2)
hold off

6按“Enter”键 。
如图3所示 。
洛马普里埃塔地震

文章插图

7号令行键入:

trange = sort([t1(1) t2(1)]);
k = find((trange(1)<=t) & (t<=trange(2)));
e = e(k);
n = n(k);
v = v(k);
t = t(k);
ax = [trange yrange];


subplot(3,1,1)
plot(t,e,'b')
axis(ax)
title('East-West acceleration')
subplot(3,1,2)
plot(t,n,'g')
axis(ax)
title('North-South acceleration')
subplot(3,1,3)
plot(t,v,'r')
axis(ax)
title('Vertical acceleration')

8按“Enter”键 。
如图4所示 。
洛马普里埃塔地震

文章插图

9号令行键入:

subplot(1,1,1)
k = length(t);
k = round(max(1,k/2-100):min(k,k/2+100));
plot(e(k),n(k),'.-')
xlabel('East'), ylabel('North');
title('Acceleration During a One Second Period');

10按“Enter”键 。
如图5所示 。
洛马普里埃塔地震

文章插图

11将加快度积分两次 , 计较三维空间中点的速度和位置 。

号令行键入:
edot = cumsum(e)*delt;
edot = edot - mean(edot);
ndot = cumsum(n)*delt;
ndot = ndot - mean(ndot);
vdot = cumsum(v)*delt;
vdot = vdot - mean(vdot);


epos = cumsum(edot)*delt;
epos = epos - mean(epos);
npos = cumsum(ndot)*delt;
npos = npos - mean(npos);
vpos = cumsum(vdot)*delt;
vpos = vpos - mean(vpos);


subplot(2,1,1);
plot(t,[edot+25 ndot vdot-25]);
axis([trange min(vdot-30) max(edot+30)])

推荐阅读