基于python的三维射线追踪库-ttcrpy详解(3)

继续研究ttcrpy二维射线追踪,实现多发射点,多接收点的射线追踪。

文章目录

  • 基于python的三维射线追踪库-ttcrpy详解(3)
    • 1、模型一
    • 2、模型二
    • 3、模型三
    • 4、python代码
      • 此代码在spyder上运行
  • 搬砖不易,走过路过,点个赞可好

1、模型一



2、模型二



3、模型三



4、python代码

# -*- coding: utf-8 -*-
"""
Created on Wed Apr 27 15:37:28 2022@author: 86159
"""import ttcrpy.rgrid as rg
import numpy as np
import matplotlib.pyplot as plt
import time# 创建网格
x = np.arange(1,11.0)
z = np.arange(1,12.0)# 创建速度模型
v = 2000*np.ones((x.size,z.size))
v1 = 4000*np.ones((4, 4))# index = [2,3]
# v[5:7,5:8] = v1
v[2:6,2:6] = v1fig, ax = plt.subplots()cs = plt.pcolor(v,cmap='jet')
fig.colorbar(cs)
plt.show()# 给定发射点和接收点的坐标
srcs = np.array([[1,1.5],[1,2.5],[1,3.5],[1,4.5],[1,5.5],[1,6.5],[1,7.5],[1,8.5]])
# src = np.array([[1,1.5]])
rcv = np.array([[10,1.5],[10,2.5],[10,3.5],[10,4.5],[10,5.5],[10,6.5],[10,7.5],[10,8.5]])# 离散网格
grid = rg.Grid2d(x, z, cell_slowness=False)# 速度转换为慢度
slowness = 1./vtt_all = np.empty(0)
rays_all = list()
for s in srcs:src = np.array([s])tt, rays = grid.raytrace(src, rcv, slowness, return_rays=True)tt_all = np.append(tt_all,tt)rays_all = rays_all + rays# print(src)
# print(rcv)
# tt, rays = grid.raytrace(src, rcv, slowness, return_rays=True)
# 绘制走时图
plt.figure(2)
plt.plot(tt_all, 'r-o')
plt.show()plt.figure(3)
# 绘制射线路径图
for r in rays_all:plt.plot(r[:,0],r[:,1],'r-*')

此代码在spyder上运行

搬砖不易,走过路过,点个赞可好

基于python的三维射线追踪库-ttcrpy详解(3)相关推荐

  1. 匿名函数python_基于python内置函数与匿名函数详解

    内置函数 Built-in Functions abs() dict() help() min() setattr() all() dir() hex() next() slice() any() d ...

  2. python基础编程:基于Python对象引用、可变性和垃圾回收详解

    下面小编就为大家带来一篇基于Python对象引用.可变性和垃圾回收详解.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 变量不是盒子 在示例所示的交互式控制台中,无法使用 ...

  3. python制作二维码_基于Python生成个性二维码过程详解

    一.问题描述 通过调用MyQR模块来实现生成个人所需二维码. 安装: pip install myqr 二.代码实现 1.普通二维码 from MyQR import myqr # 普通二维码 myq ...

  4. 基于Python Selenium - Unittest框架的PO设计模式详解

    接下来我们步入正文,这篇文章从以下几个内容讲述: 1.什么是PO设计模式(Page Object Model) 2.为什么要使用PO设计模式 3.使用PO设计模式要点 4.PO设计模式实例 1.什么是 ...

  5. 基于Python的开源人脸识别库:离线识别率高达99.38%

    基于Python的开源人脸识别库:离线识别率高达99.38% 2019年04月18日 18:13:18 AI终结者 阅读数 1233 项目地址:https://github.com/ageitgey/ ...

  6. Python人脸识别教程 - 基于Python的开源人脸识别库:离线识别率高达99.38%

    Python人脸识别教程 - 基于Python的开源人脸识别库:离线识别率高达99.38% 仅用 Python 和命令行就可以实现人脸识别的库开源了.该库使用 dlib 顶尖的深度学习人脸识别技术构建 ...

  7. 基于python的土壤细菌在kobas库的功能预测代码

    以下是一个基于Python的土壤细菌在KOBAS库的功能预测代码.在运行之前,需要先安装相关的Python库,如biopython.pandas.numpy.matplotlib等. # 导入必要的库 ...

  8. 【PLA】基于Python实现的线性代数算法库之斯密特正交化

    [PLA]基于Python实现的线性代数算法库之斯密特正交化 算法包下载链接:https://download.csdn.net/download/qq_42629529/79481514 from ...

  9. Python爬虫之selenium库使用详解

    Python爬虫之selenium库使用详解 本章内容如下: 什么是Selenium selenium基本使用 声明浏览器对象 访问页面 查找元素 多个元素查找 元素交互操作 交互动作 执行JavaS ...

  10. python远程linux服务器执行命令_基于使用paramiko执行远程linux主机命令(详解)

    paramiko是python的SSH库,可用来连接远程linux主机,然后执行linux命令或者通过SFTP传输文件. 关于使用paramiko执行远程主机命令可以找到很多参考资料了,本文在此基础上 ...

最新文章

  1. 用计算机采集卡检测压力传感器信号故障,计算机联网检测系统应用研究
  2. 如何使用 Python 操作 Git 代码?GitPython 入门介绍
  3. 和plc哪个简单点_怎么看PLC梯形图
  4. 动态网页制作PHP常用的正则表达式
  5. 《Android传感器开发与智能设备案例实战》——第1章,第1.2节Android的巨大优势...
  6. python os 文件锁_python 中给文件加锁——fcntl模块
  7. node随笔-数据流Stream
  8. 630. 课程表 III
  9. 数据结构C语言版第二版答案 严蔚敏 李冬梅 吴伟民 编著
  10. BP神经网络拟合函数
  11. 【Unity】Jay 开发日志(一)——人物的移动、死亡与平台跳跃
  12. 目前得前端框架都有哪些?
  13. linux 命令行获取时间,【Linux】让命令提示符显示日期和时间
  14. css修改谷歌浏览器和火狐浏览器的滚动条样式
  15. 【Python作业】对股票数据分析处理
  16. python元祖格式_python中元祖
  17. java输出hello world_java输出Hello World
  18. 时间获取相关函数mktime()、gmtime()
  19. 计算机应用格式工厂部分教案,格式工厂
  20. SC16IS750芯片SPI转串口

热门文章

  1. 第十一章:项目风险管理 - (11.1 规划风险管理)
  2. MySQL之环境变量配置
  3. mbot机器人自动超声波模式程序_测评 | mBot机器人秒变编程达人
  4. Qt中清空layout中所有控件
  5. 在线matlab,亲测好用
  6. CC2500规格书参考资料替代
  7. html把中文转成英文,html转换中英文
  8. 10个优秀个android项目,精选|快速开发
  9. 【Python】SVM分类 特征标准化+网格搜索最优模型参数+十折交叉验证
  10. 步进电机正反转实验_电机正反转控制电路图原理图解