基于matlab中点放炮各类地震波时距曲线程序

完整程序:

clear all

dx=50;x=-500:dx:500;%炮检距

h=100;V1=1500;

theta=25*pi/180;

V2=V1/sin(theta);

t1=sqrt(x.*x+4*h*h)/V1;%反射波时距曲线

t2=abs(x)./V1;%直达波时距曲线

%折射波时距曲线

xm=2*h*tan(theta);%求盲区

k=1;

for i=1:length(x)

if x(i)<-xm

t3_1(k)=2*h*cos(theta)/V1+abs(x(i))/V2;

x_1(k)=x(i);

k=k+1;

end

end

k=1;

for i=1:length(x)

if x(i)>xm

t3_2(k)=2*h*cos(theta)/V1+abs(x(i))/V2;

x_2(k)=x(i);

k=k+1;

end

end

plot(x,t1,'b')

hold on

plot(x,t2,'k-.');

plot(x_1,t3_1,'r:');

plot(x_2,t3_2,'r:');

set(gca,'ydir','reverse')

xlabel('Shot-receiver distance(m)');

ylabel('Two-way traveltime(s)');

legend('反射波','直达波','折射波')

相关推荐
碧海银沙音频科技研究院13 小时前
4 BES2710编译环境搭建方法
嵌入式硬件·算法
老师我太想进步了202613 小时前
C语言版讲解函数递归
c语言·开发语言
mifengxing13 小时前
LeetCode 238 除自身以外数组的乘积|无除法O(n)时间+O(1)空间双解法
java·算法·leetcode
猿长大人13 小时前
C# | 函数式编程入门
开发语言·c#·.net
W_3260013 小时前
Python 组合数据类型——序列(列表 & 元组)
开发语言·python
Billy1213813 小时前
Day10-C++20 Ranges(上):惰性求值与组合式数据处理
开发语言·c++进阶学习
依然鸣14 小时前
PTA团体程序设计天梯赛L2真题讲解L2-045-048
数据结构·c++·经验分享·学习·算法·pat考试·pat
有点。14 小时前
C++深度优先搜索(二)
开发语言·c++·深度优先
丢掉幻想准备斗争14 小时前
5.5树与二叉树的应用
算法
二进制杯莫停14 小时前
A和B环境的python版本相同,B环境无法安装pip依赖,离线安装
开发语言·python·pip