• 大小: 936KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-23
  • 语言: 其他
  • 标签: 瑞雷面波  

资源简介

是一个关于瑞雷面波的演示程序,方便初学者进行理解,程序里面有注释,并有PPT做了详细的说明,希望能帮助初学者更深的了解

资源截图

代码片段和文件信息


%%   %%%%%%%%%%%%%% function rayleigh_waves

%%  %%%%%%%%%%%%%%%%本程序是显示瑞雷面波的程序%%%%%%%%%%%%%
clc 

clear 

close 

filename= ‘forward.gif‘; %%%%%%%%%%%%%%%%生成波场快照的文件名%%%%%%%%%%%%%%%%%%%%

set_delay = 1/24;%%%%%%%%%%%%%%%%%%每一幅图和每一幅图的时间延迟,注意人眼识别每分钟24幅图画

f = 0.5;

T = 1/f;

omega = 2*pi*f;

vel = 3000;

ncol = 7;

% Set up array of depths
x = [0:300:15000];

z = [0:-100:-2000];

Ax = 200;

Az = 200;

nx = length(x);

nz = length(z);

k = 2*pi*f/vel;

lamda = 750;

%Start time step loop
n=40;

M=moviein(n);

for it=1:n
  
    t=T*(it)/n;
 
    for ix=1:nx
   
        dx(ix) = 0.001*(x(ix)+Ax*exp(z(1)/lamda)*sin(k*x(ix)-omega*t));
   
       
        dz(ix) = 0.001*(z(1)+Az*exp(z(1)/lamda)*cos(k*x(ix)-omega*t));
  
    end
    
    
    figure
  
 
    plot(dxdz‘o-‘)
 
    hold on
  
    plot(dx(20)dz(20)‘or‘)
  
    axis([-0.215.2-2.051])
  
    title(‘Rayleigh wave   f=0.5 Hz‘)
 
    ylabel (‘depth(km)‘)
  
    xlabel (‘(km)‘)
   
   
   
    for iz=2:ncol-1
    
        for ix=1:nx
      
            dx(ix) = 0.001*(x(ix)+Ax*exp(z(iz)/lamda)*sin(k*x(ix)-omega*t));
      
            dz(ix) = 0.001*(z(iz)+Az*exp(z(iz)/lamda)*cos(k*x(ix)-omega*t));
    
        end
        
        plot(dxdz‘o‘)
 
    end
    
    
    for ix=1:nx
    
        dx(ix) = 0.001*(x(ix)+Ax*exp(z(ncol)/lamda)*sin(k*x(ix)-omega*t));
   
        dz(ix) = 0.001*(z(ncol)+Az*exp(z(ncol)/lamda)*cos(k*x(ix)-omega*t));
  
    end
    
    plot(dxdz‘ro‘)
     
 
    for iz=ncol+1:nz
   
        for ix=1:nx
      
            dx(ix) = 0.001*(x(ix)+Ax*exp(z(iz)/lamda)*sin(k*x(ix)-omega*t));
       
            dz(ix) = 0.001*(z(iz)+Az*exp(z(iz)/lamda)*cos(k*x(ix)-omega*t));
    
        end
        
        plot(dxdz‘o‘)
  
    end
    
    
    set(gcf‘color‘[1 1 1])
  
  
    saveas(gcfstrcat(‘第‘num2str(it))‘bmp‘)
  
    frame=getframe;%%%%%%%%%%%%%把每一幅图当做一帧%%%%%%%%%%%%%%%%%
    
    im=frame2im(frame);%%%%%%%%%%%%%%%%%%%读入%%%%%%%%%%%%%%%%%%%%%%%
    
  
    [Imap]=rgb2ind(im256);%%%%%%%%%%%%%%%%%%%颜色变为数值%%%%%%%%%%%%%%%%%%%%%%%
    
     
    if it==1;
       
        imwrite(Imapfilename‘gif‘‘Loopcount‘inf...
            ‘DelayTime‘set_delay);%loopcount第一个波场快照格式?
    
    else
        imwrite(Imapfilename‘gif‘‘WriteMode‘‘append‘...
            ‘DelayTime‘set_delay);%l后面波场快照格式
     
    end
    
    
    hold off
   
   
  
    M(:it)=getframe;
  
end
  
movie(M10)

close all

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     984543  2015-05-23 11:16  1_瑞雷面波演示\天然源微震及数据处理技术研究_ok.pptx

     文件       2660  2015-05-17 21:44  1_瑞雷面波演示\程序\rayleigh_waves_lzm.m

     目录          0  2015-05-23 11:15  1_瑞雷面波演示\程序

     目录          0  2015-05-23 11:16  1_瑞雷面波演示

----------- ---------  ---------- -----  ----

               987203                    4


评论

共有 条评论

相关资源