24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 10147  |  回复: 12
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

baobiao007

木虫 (职业作家)

中国特色

[交流] 分享用matlab显示地震记录的波形变面积图 已有9人参与

wigb函数是网上找的,自己添了个主程序方便使用。


主程序
function PlotRecord_Wigb(filename,nx,nt,dx,dt,zy)
%波形变面积显示地震记录
% clear; clf;clc;
% nx=200; %道数
% nt=2001; %采样点数
% dx=10.;     %道间距
% dt=0.001;   %时间采样间隔
% zy=1.0;     %增益
% filename='r200-2001-1ms.dat';
clf;
fid=fopen(filename,'r');
[A,COUNT]=fread(fid,[nt,nx],'float32');
fclose(fid);


x=0:dx: (nx-1)*dx;
z=0:dt: (nt-1)*dt;
wigb(A,zy,x,z);

end

子函数
function wigb (a,scal,x,z,amx)
%WIGB: Plot seismic data using wiggles.
%
%  WIGB(a,scal,x,z,amx)
%
%  IN    a:     seismic data
%        scale: multiple data by scale
%        x:     x-axis;
%        z:     vertical axis (time or depth)
%
%         If only 'a' is enter, 'scal,x,z,amn,amx' are decided automatically;
%         otherwise, 'scal' is a scalar; 'x, z' are vectors for annotation in
%         offset and time, amx are the amplitude range.
%
%
%  Author(s): Xingong Li (Exxon-Mobil)
%  Copyright 1998-2003 Xingong
%  Revision: 1.2  Date: Dec/2002
%  
%  Signal Analysis and Imaging Group (SAIG)
%  Department of Physics, UofA
%

if nargin == 0, nx=10;nz=10; a = rand(nz,nx)-0.5; end;

[nz,nx]=size(a);

trmx= max(abs(a));
if (nargin <= 4); amx=mean(trmx);  end;
if (nargin <= 2); x=[1:nx]; z=[1:nz]; end;
if (nargin <= 1); scal =1; end;

if nx <= 1 ; disp(' ERR: PlotWig: nx has to be more than 1');return;end;

% take the average as dx
        dx1 = abs(x(2:nx)-x(1:nx-1));
        dx = median(dx1);

dz=z(2)-z(1);
xmx=max(max(a)); xmn=min(min(a));

if scal == 0; scal=1; end;
a = a * dx /amx;
a = a * scal;

fprintf(' PlotWig: data range [%f, %f], plotted max %f \n',xmn,xmx,amx);

% set display range
x1=min(x)-2.0*dx; x2=max(x)+2.0*dx;
z1=min(z)-dz; z2=max(z)+dz;

set(gca,'NextPlot','add','Box','on', ...
  'XLim', [x1 x2], ...
  'YDir','reverse', ...
  'YLim',[z1 z2]);


        fillcolor = [0 0 0];
        linecolor = [0 0 0];
        linewidth = 0.1;

        z=z';         % input as row vector
        zstart=z(1);
        zend  =z(nz);

for i=1:nx,
   
  if trmx(i) ~= 0;    % skip the zero traces
        tr=a(:,i);         % --- one scale for all section
          s = sign(tr) ;
          i1= find( s(1:nz-1) ~= s(2:nz) );        % zero crossing points
        npos = length(i1);


        %12/7/97
        zadd = i1 + tr(i1) ./ (tr(i1) - tr(i1+1)); %locations with 0 amplitudes
        aadd = zeros(size(zadd));

        [zpos,vpos] = find(tr >0);
        [zz,iz] = sort([zpos; zadd]);         % indices of zero point plus positives
        aa = [tr(zpos); aadd];
        aa = aa(iz);

        % be careful at the ends
                if tr(1)>0,         a0=0; z0=1.00;
                else,                 a0=0; z0=zadd(1);
                end;
                if tr(nz)>0,         a1=0; z1=nz;
                else,                 a1=0; z1=max(zadd);
                end;
                       
        zz = [z0; zz; z1; z0];
        aa = [a0; aa; a1; a0];
               
        zzz = zstart + zz*dz -dz;

        patch( aa+x(i) , zzz,  fillcolor);

        line( 'Color',[1 1 1],'EraseMode','background',  ...
         'Xdata', x(i)+[0 0], 'Ydata',[zstart zend]); % remove zero line

%'LineWidth',linewidth, ...
%12/7/97 'Xdata', x(i)+[0 0], 'Ydata',[z0 z1]*dz);        % remove zero line

        line( 'Color',linecolor,'EraseMode','background',  ...
         'LineWidth',linewidth, ...
         'Xdata', tr+x(i), 'Ydata',z);        % negatives line

   else % zeros trace
        line( 'Color',linecolor,'EraseMode','background',  ...
         'LineWidth',linewidth, ...
         'Xdata', [x(i) x(i)], 'Ydata',[zstart zend]);
   end;
end;


[ Last edited by baobiao007 on 2012-4-9 at 10:41 ]
回复此楼

» 收录本帖的淘帖专辑推荐

地球物理资源集锦 小胖的专辑

» 本帖已获得的红花(最新10朵)

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

我同意叔本华的观点,人们投身艺术和科学领域的强烈愿望之一就是逃离痛苦、残酷和枯燥无味的现实生活,逃离自己飘忽不定的七情六欲的桎梏。--爱因斯坦
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sapyren

银虫 (小有名气)


小木虫: 金币+0.5, 给个红包,谢谢回帖
fname附件贴出来啊,这样看好没劲!
做纯粹的自己,享受责任与自由!!!
6楼2012-04-26 20:07:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 13 个回答

smithjohn

金虫 (正式写手)

0.8

板块做地震的不多
楼主试过实际地震资料么?
2楼2012-04-09 18:13:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

baobiao007

木虫 (职业作家)

中国特色

没有,实际地震资料要根据具体的数据格式来弄,勘探地震有自己行业标准的数据格式。 天然地震的就不清楚了
我同意叔本华的观点,人们投身艺术和科学领域的强烈愿望之一就是逃离痛苦、残酷和枯燥无味的现实生活,逃离自己飘忽不定的七情六欲的桎梏。--爱因斯坦
3楼2012-04-09 18:21:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
谢谢分享
4楼2012-04-11 10:29:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 求调剂 有机化学考研356分 +3 Nadiums 2026-03-25 4/200 2026-03-29 00:50 by 544594351
[考研] 各位老师好,我的一志愿为北京科技大学085601材料专硕 +6 Koxui 2026-03-28 6/300 2026-03-29 00:36 by 544594351
[考研] 295求调剂 +4 wei-5 2026-03-26 4/200 2026-03-28 23:20 by 小木虫tim
[考研] 081200-11408-276学硕求调剂 +5 崔wj 2026-03-26 5/250 2026-03-28 21:37 by 小木虫tim
[考研] 070300求调剂306分 +4 26要上岸 2026-03-27 4/200 2026-03-28 13:06 by 唐沐儿
[考研] 【求调剂】085601材料工程专硕 | 总分272 | +6 脚滑的守法公民 2026-03-27 6/300 2026-03-28 11:02 by gjlllb
[考研] 311求调剂 +3 希望上岸阿小杨 2026-03-23 3/150 2026-03-28 07:57 by 热情沙漠
[考研] 张芳铭-中国农业大学-环境工程专硕-298 +4 手机用户 2026-03-26 4/200 2026-03-28 07:17 by mmm just
[考研] 求调剂推荐 材料 304 +15 荷包蛋hyj 2026-03-26 15/750 2026-03-28 04:13 by fmesaito
[考研] 315分求调剂 +7 26考研上岸版26 2026-03-26 7/350 2026-03-28 04:05 by fmesaito
[有机交流] 高温高压反应求助 10+4 chibby 2026-03-25 4/200 2026-03-27 21:08 by BT20230424
[考研] 化学调剂 +4 爱吃番茄的旭 2026-03-24 5/250 2026-03-27 17:50 by kiokin
[考研] 一志愿南师大0703化学 275求调剂 +4 Ripcord上岸 2026-03-27 4/200 2026-03-27 17:00 by zhyzzh
[考研] 【双一流院校新能源、环境材料,材料加工与模拟招收大量调剂】 +4 Higraduate 2026-03-22 8/400 2026-03-26 20:34 by Higraduate
[考研] 材料调剂 5+4 想要一壶桃花水 2026-03-25 10/500 2026-03-26 19:56 by 不吃魚的貓
[考研] 297求调剂 +6 田洪有 2026-03-26 6/300 2026-03-26 15:55 by 不吃魚的貓
[考研] 一志愿北化315 求调剂 +3 akrrain 2026-03-24 3/150 2026-03-24 19:35 by 了了了了。。
[考研] 一志愿吉大化学322求调剂 +4 17501029541 2026-03-23 6/300 2026-03-24 10:21 by 戴围脖的小蚊子
[考研] 269求调剂 +4 我想读研11 2026-03-23 4/200 2026-03-23 21:25 by pswait
[考研] 石河子大学(211、双一流)硕博研究生长期招生公告 +3 李子目 2026-03-22 3/150 2026-03-22 21:01 by 怎么释怀
信息提示
请填处理意见