射线追踪
文章平均质量分 57
商功贤
用心传递知识和欢乐的搬运工,欢迎大家相互学习交流。
以写促学,不收费,不当写手,侵删!!
展开
-
一个简单的MATLAB脚本——快速行进算法(FMM))
介绍快速行进算法(FMM)的简单MATLAB脚本,不到20行代码实现快速行进算法的运算结果,而且计算速度非常快。给了两个实例模型来说明计算结果。原创 2022-12-14 15:04:12 · 1538 阅读 · 16 评论 -
基于ttcrpy的跨孔CT高斯牛顿算法及python代码分享(2)
ttcrpy是加拿大学者伯纳德·吉鲁(Bernard Giroux)于2021年发布的开源python库,详见(https://github.com/groupeLIAMG),参考文献(Giroux B. 2021. ttcrpy: A Python package for traveltime computation and raytracing.)。ttcrpy库包含了三种射线追踪方法:快速扫描算法(FSM)、最短路径法(SPM)、动节点最短路径法(DSPM)。包含其二维与三维的实现。原创 2022-09-12 16:00:48 · 1172 阅读 · 18 评论 -
基于ttcrpy(三维射线追踪)的跨孔CT高斯牛顿算法及python代码分享(1)
ttcrpy是加拿大学者伯纳德·吉鲁(Bernard Giroux)于2021年发布的开源python库,详见(https://github.com/groupeLIAMG),参考文献(Giroux B. 2021. ttcrpy: A Python package for traveltime computation and raytracing.)。ttcrpy库包含了三种射线追踪方法:快速扫描算法(FSM)、最短路径法(SPM)、动节点最短路径法(DSPM)。包含其二维与三维的实现。原创 2022-09-11 21:54:46 · 1551 阅读 · 1 评论 -
基于python的三维射线追踪库-ttcrpy详解(5)
基于python的三维射线追踪库-ttcrpy详解(5)ttcrpy库中包含了矩形网格和三角形网格两种网格剖分形式,对于三角网格,要利用python中的vtk库和pygmsh库,本文研究ttcrpy中三角网格射线追踪。文章目录基于python的三维射线追踪库-ttcrpy详解(5)1、vtk库1.1、vtk库的安装1.2、vtk库的使用2、pygmsh库2.1、pygmsh库安装2.2、pygmsh库使用1、vtk库1.1、vtk库的安装安装:直接在cmd中pip一下即可。(正常情况下会报错,可以原创 2022-05-07 13:41:47 · 1701 阅读 · 0 评论 -
基于python的三维射线追踪库-ttcrpy详解(4)
基于python的三维射线追踪库-ttcrpy详解(4)python库ttcrpy中有三种射线追踪算法,他们是:FSM(快速扫描算法)、SPM(最短路径算法)、DSPM(动节点最短路径算法)。本内容为对比这三种算法的特点。文章目录基于python的三维射线追踪库-ttcrpy详解(4)1、模型一:低速异常体1、FSM(快速扫描算法)2、SPM(最短路径法)3、DSPM(动节点最短路径算法)4、三种方法追踪得到的走时对比5、模型二、高速异常体6、SPM与DSPM计算时间对比7、python代码搬砖不易,走原创 2022-05-02 14:48:48 · 2255 阅读 · 3 评论 -
基于python的三维射线追踪库-ttcrpy详解(3)
基于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@au原创 2022-04-29 16:16:39 · 978 阅读 · 0 评论 -
基于python的三维射线追踪库-ttcrpy详解(2)
基于python的三维射线追踪库-ttcrpy详解(1)二维射线追踪文章目录基于python的三维射线追踪库-ttcrpy详解(1)1、射线追踪效果2、python代码1、射线追踪效果2、python代码# -*- coding: utf-8 -*-"""Created on Wed Apr 27 15:37:28 2022@author: 86159"""import ttcrpy.rgrid as rgimport numpy as npimport matplotli原创 2022-04-28 23:04:03 · 1616 阅读 · 0 评论 -
基于python的三维射线追踪库-ttcrpy详解(1)
三维射线追踪的python库——ttcrpy详解(1)原创 2022-04-26 21:31:59 · 5017 阅读 · 8 评论 -
利用MSFM算法计算程函方程的走时CT胖射线反演法
利用FMM算法计算程函方程的走时CT胖射线反演法基于程函方程的弹性波走时CT胖射线反演方法,是在反演迭代过程中,利用程函方程计算走时场,并得到接收点处的走时数据,用这个数据代替正演数据。每次迭代完成后,速度模型发生了改变,所以FMM算法计算的走时场也会发生改变,正演数据的精度很高。但是层析成像的雅克比偏导数矩阵用胖射线的结果来近似代替,这样避免了反向求解射线路径造成过大的计算量。这种算法的计算速度非常快,比最短路径法快很多,而且收敛效果优于常规胖射线和直射线,反演效果较好。一、速度模型的建立及正演为了原创 2021-12-14 16:27:07 · 3696 阅读 · 42 评论 -
基于Matlab的三维胖射线追踪算法
基于Matlab的三维胖射线追踪算法(1)三维CT更有利于对构造的精细识别,三维CT本质上与二维CT无较大区别,但计算量增加,占用电脑内存大,计算时间更长。文章目录基于Matlab的三维胖射线追踪算法(1)三维胖射线追踪Matlab代码三维胖射线追踪一个中心包含异常体的三维模型的ART反演结果三维胖射线追踪原理Matlab代码1、绘制三维任意倾斜椭球clearclose allclc% pause(0.5)% a = 1;% b = 2;% c = 3;%% e原创 2021-09-30 09:32:20 · 1639 阅读 · 14 评论 -
基于Matlab的跨孔CT胖射线追踪算法(五)
基于Matlab的跨孔CT胖射线追踪算法(五)CT技术是一种无损的工程物探检测技术,因其方法简单、分辨率高、理论上更可靠、结果更直观,被广泛的应用于各种工程。胖射线追踪是CT技术的一种正演算法,本文的代码和示意图,供学习借鉴。1文章目录基于Matlab的跨孔CT胖射线追踪算法(五)胖射线追踪MATLAB代码胖射线追踪胖射线追踪用动画显示胖射线追踪的过程。MATLAB代码逐条射线追踪实现胖射线追踪。clear close allclcxmin = 0;xmax = 10;ymin原创 2021-09-29 20:16:26 · 554 阅读 · 0 评论 -
基于Matlab的跨孔CT胖射线追踪算法(四)
基于Matlab的跨孔CT胖射线追踪算法(四)CT技术是一种无损的工程物探检测技术,因其方法简单、分辨率高、理论上更可靠、结果更直观,被广泛的应用于各种工程。胖射线追踪是CT技术的一种正演算法,本文的代码和示意图,供学习借鉴。1文章目录基于Matlab的跨孔CT胖射线追踪算法(四)胖射线追踪MATLAB代码胖射线追踪MATLAB代码逐条射线追踪实现胖射线追踪。clear close allclcxmin = 0;xmax = 5;ymin = 0;ymax = 5;nex =原创 2021-09-28 18:15:07 · 305 阅读 · 0 评论 -
基于Matlab的跨孔CT胖射线追踪算法(三)
基于Matlab的跨孔CT胖射线追踪算法(二)CT技术是一种无损的工程物探检测技术,因其方法简单、分辨率高、理论上更可靠、结果更直观,被广泛的应用于各种工程。胖射线追踪是CT技术的一种正演算法,本文的代码和示意图,供学习借鉴。1文章目录基于Matlab的跨孔CT胖射线追踪算法(二)胖射线追踪示意图MATLAB代码胖射线追踪胖射线追踪示意图用动画显示胖射线追踪的过程。MATLAB代码逐条射线追踪实现胖射线追踪。clear close allclcxmin = 0;xmax = 10;原创 2021-09-27 22:15:41 · 417 阅读 · 0 评论 -
基于Matlab的跨孔CT胖射线追踪算法(二)
基于Matlab的跨孔CT胖射线追踪算法(二)CT技术是一种无损的工程物探检测技术,因其方法简单、分辨率高、理论上更可靠、结果更直观,被广泛的应用于各种工程。胖射线追踪是CT技术的一种正演算法,本文的代码和示意图,供学习借鉴。1文章目录基于Matlab的跨孔CT胖射线追踪算法(二)胖射线追踪示意图MATLAB代码胖射线追踪胖射线追踪示意图用动画显示胖射线追踪的过程。MATLAB代码逐条射线追踪实现胖射线追踪。clear close allclcxmin = 0;xmax = 10;原创 2021-09-26 18:16:05 · 553 阅读 · 0 评论 -
基于Matlab的跨孔层析成像的最短路径法弯曲射线追踪(二)
基于Matlab的跨孔层析成像的最短路径法弯曲射线追踪(二)在文(一)中展示了曲射线追踪结果和部分源代码,本文说明原理。[^1]文章目录基于Matlab的跨孔层析成像的最短路径法弯曲射线追踪(二)一、原理二、计算结果三、常用最短路径算法四、核心代码分享1、Dijkstra 算法2、Floyd 算法一、原理最短路径法曲射线追踪其实就是在网格单元边上插入节点,假设每个网格单元内的慢度不变,射线只能经过节点相连,且在网格线上无射线,如下图所示,为网格上内插两个节点:在每个网格单元内部,节点间两两相连,原创 2021-05-26 10:03:42 · 1161 阅读 · 1 评论 -
基于Matlab的跨孔电磁波\跨孔雷达的胖射线追踪(一)
基于Matlab的跨孔电磁波\跨孔雷达CT的胖射线追踪(一)CT技术是一种无损的工程物探检测技术,因其方法简单、分辨率高、理论上更可靠、结果更直观,被广泛的应用于各种工程。胖射线追踪是CT技术的一种正演算法,本文的代码和示意图,供学习借鉴。1文章目录基于Matlab的跨孔电磁波\跨孔雷达CT的胖射线追踪(一)胖射线追踪示意图MATLAB代码胖射线追踪的原理胖射线追踪示意图用动画显示胖射线追踪的过程。MATLAB代码为了生成上述动图,编写了如下matlab代码:clear close all原创 2021-05-07 17:33:07 · 508 阅读 · 0 评论 -
基于Matlab的跨孔电磁波\跨孔雷达的直射线追踪(一)
基于Matlab的跨孔电磁波\跨孔雷达CT的直射线追踪(一)CT技术是一种无损的工程物探检测技术,因其方法简单、分辨率高、理论上更可靠、结果更直观,被广泛的应用于各种工程。直射线追踪是CT技术的一种最基础、最直观的正演算法,本文的代码和示意图,供学习借鉴。1文章目录基于Matlab的跨孔电磁波\跨孔雷达CT的直射线追踪(一)直射线追踪示意图MATLAB代码直射线追踪的原理直射线追踪示意图用动画显示直射线追踪的过程。MATLAB代码为了生成上述动图,编写了如下matlab代码:clear c原创 2021-05-07 17:24:44 · 1124 阅读 · 0 评论 -
基于MSFM算法与最速下降法的射线追踪技术
基于MSFM算法与最速下降法的射线追踪技术文章目录基于MSFM算法与最速下降法的射线追踪技术1、射线追踪效果2、技术原理3、代码上面的代码是是主程序代码,包含的两个子函数在网上可以找到,代码较长,我整理成文件夹上传到CSDN资源,欢迎感兴趣的读者下载学习交流。搬砖不易,走过路过的,点个赞支持一下,谢谢!1、射线追踪效果为了方便展示射线追踪的过程,用matlab将射线追踪过程做成了gif动图的形式,直观的展示一下跨孔方式的射线追踪效果,如下图所示,左图是波前走时等值线图(波前走时场),右图是射线路径图。原创 2022-04-22 17:32:43 · 1928 阅读 · 33 评论 -
快速行进算法(fast_marching_kroon)的matlab代码
快速行进算法(fast_marching_kroon)的matlab代码快速行进算法用于求解程函方程得到走时场,源代码转载于link文章目录快速行进算法(fast_marching_kroon)的matlab代码模拟结果模拟结果function [T,Y]=msfm(F, SourcePoints, UseSecond, UseCross)% This function MSFM calculates the shortest distance from a list of% points转载 2021-11-28 20:57:36 · 1837 阅读 · 8 评论 -
MATLAB代码实现射线追踪的快速方法
10行MATLAB代码解决直射线追踪问题文章目录10行MATLAB代码解决直射线追踪问题% 直射线,射线水平的情况 if zFS(i1)==zJS(i2) if mod(zFS(i1),dz) == 0 if zFS(i1) == ymax dr(n,nx*floor(abs(zFS(i1)-1e-6)/dz)+1:nx*(ceil(abs(zFS(i1)-1e-6)/dz)))=delta/原创 2021-10-23 17:02:57 · 5392 阅读 · 11 评论