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

相关推荐
程序猿编码6 小时前
C++/CUDA 手写 LLM 推理引擎:拆解 vLLM 核心 PagedAttention 与连续批处理
开发语言·c++·深度学习·神经网络·推理·vllm
hold?fish:palm6 小时前
44 二叉搜索树中第K小的元素
开发语言·c++·算法
凉茶钱7 小时前
【吃透C++】万字解析类和对象
开发语言·c++
白杨尚青7 小时前
C++入门篇(十):string(上)——认识string:构造与三大遍历(一条龙讲透operator[]、迭代器、auto、范围for)
java·开发语言·c++·笔记·stl
可乐鸡翅yeah_7 小时前
hls.js 切换多个视频源,新手开发常见踩坑
开发语言·前端·javascript·ios·ffmpeg·音视频·safari
Tanshu_API君7 小时前
API 聚合平台选型指南:从参数拆解到生产落地的十个评估维度
开发语言·api
Chen—LSN7 小时前
C语言——⽂件操作(1)
c语言·开发语言·c++·经验分享·笔记·算法·链表
狗凯之家源码网7 小时前
PHP 开源 IM 即时通讯系统效果实测与功能展示
开发语言·开源·php
anew___7 小时前
《从零手写操作系统 (11):文件系统初探——initrd与VFS抽象层》
java·javascript·算法
辛苦才能7 小时前
C++ map/set 深度解析:从关联式容器的本质到 operator[] 的三重身份
开发语言·c++