基于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('反射波','直达波','折射波')

相关推荐
m沐沐8 小时前
【计算机视觉】OpenCV 物体跟踪——原理、算法与CSRT跟踪器实战
人工智能·python·深度学习·opencv·算法·计算机视觉·人脸识别
前鼻音太阳熊8 小时前
【MES系统】- 工业HMI状态机可视化实践:从手写SVG到Cytoscape.js的技术选型与踩坑
开发语言·javascript·ecmascript
阿米亚波8 小时前
【C++ STL】std::array
java·开发语言·c++
wuyk5559 小时前
66.嵌入式C语言进阶:共用体(Union)实战指南——单片机内存省一半的神级技巧
c语言·开发语言·stm32·单片机·嵌入式硬件
Ivanqhz9 小时前
Rust #[derive(Serialize)]浅析
开发语言·后端·rust
怪奇云呼军9 小时前
闪电智能 Voice Agent 怎样根据语速、停顿和追问方式切换话术?策略引擎拆解
开发语言·人工智能·网络协议·算法·语音识别·web app
稚南城才子,乌衣巷风流9 小时前
树链剖分(树剖)算法详解:从原理到实现
算法·深度优先
Ivanqhz9 小时前
Rust parse() 浅析
开发语言·后端·rust
jz_ddk9 小时前
[信号处理] 数学与工程之美:相邻差分共轭乘积
数学·算法·信号处理·差分·共轭
神仙别闹9 小时前
基于C++实现(控制台)景区旅游管理系统
开发语言·c++·旅游