1. 程式人生 > >實現MASW分析以及速度反演的工具包——MASWaves

實現MASW分析以及速度反演的工具包——MASWaves

MASWaves軟體包研究

研究一下前面看的瑞利波反演S波速度的一個matlab工具包,這個是它的原理說明。

文獻來源:

Tool for analysis of multichannel analysis of surface waves (MASW) field data and evaluation of shear wave velocity profiles of soils,Elin Asta Olafsdottir, Sigurdur Erlingsson, and Bjarni Bessason

這個軟體叫做MASWaves,分為(MASWaves Dispersion)和 (MASWaves Inversion),前者從t-d域生成頻散影象,後者利用頻散曲線進行速度反演。

面波分析主要有兩種 SASW:spectral analysis of surface waves, 以及 MASW:multichannel analysis of surface waves。現在多用MASW,好處在於資料採集更快,明企鵝更少噪聲,也更易於識別;以及可以提取高階頻散曲線;最後,可以在相同的impact load的情況下,對更深的S波速度成像。

文中還提到:The observed difference between results obtained by MASW and direct borehole measurements has been estimated as approximately 15% or less and random (Xia et al. 2002). 也就是說MASW反演出來的結果有15%左右的誤差。

MASW的最大探測深度約等於最長的Rayleigh波長的一半(經驗公式),通常來說是幾十米,這是在假設impulsive active source的基礎上的結果。

MASWaves (Multichannel Analysis of Surface Waves for assessing shear wave velocity profiles of soils)

The MASW method is divided into three main steps: field measurements, dispersion analysis, and inversion analysis。

主要考慮第2,3步驟,其中畫出頻散曲線可以有以下幾種方法: the frequency–wave number (f–k) transform (Yilmaz 1987), the slowness–frequency (p–omega) transform (McMechan and Yedlin 1981), and the phase shift method (Park et al. 1998).  也就是f-k域,慢度頻率域,以及相移法。有人比較得到結論,相移法的結果是最efficient和robust的。

如下圖所示,和之前一樣,先做資料採集,然後生成dispersion map,然後做inversion,速度反演的方法是,先假定一個速度,然後正演得到一個dispersion map,然後繼續通過迭代iterative的方法得到最終結果。

下面的圖2解釋了一些基本概念。

The inversion problem encountered in MASW can be regarded as a nonunique and nonlinear optimization problem where the objective is to minimize the misfit between the theoretical and the experimental dispersion curves (Foti et al. 2015). 對於MASW方法來說,inversion的操作就是一個優化問題,min的是理論dispersion和實際的dispersion的misfit,在做inversion的過程中,既可以只考慮fundamental mode,也可以考慮higher modes,只考慮fundamental的話,計算較為簡單,容易實現,但是加上higher mode 會在有些情況下更好的約束inversion。

這個opensource的軟體用的是fundamental mode作對比的。

Dispersion analysis的實現(瑞利波的頻散曲線)

首先放出它的流程圖workflow:

上面的流程的基本原理是:先把輸入逐trace做FFT,得到omega-d的影象,那麼這個影象是複數的,分成A和phi,也就是振幅和相位,這裡的相位實際上就是某個頻率在此處的相位,因此可以表徵相速度。複數的相位角(圓頻率)函式如下:

可以看出,c(omega) 是每個頻率omega對應的相速度phase velocity。對u進行norm是為了去除衰減等影響。

然後對於給出的頻率和相速度範圍,進行掃描和疊加,最終得到dispersion map。

這裡提到了體波的影響,作為任務可以著重瞭解這幾篇reference:

The analysis of the multichannel surface wave records is based on the assumption that the wave front of the Rayleigh wave is
plane. Hence, propagation of nonplanar surface waves and interference of body waves near the impact load point, referred to as
near-field effects, can bias the experimental dispersion curve estimate (Ivanov et al. 2008; Park and Carnevale 2010; Yoon and Rix 2009).

Velocity Inversion 的實現

其中,第一步根據dispersion curve 估計出 h 厚度,beta S波速度。然後估計一個密度和泊松比(縱波速度與密度的比值),以此作為初始化,然後進行迭代。減少misfit。

2018年11月04日20:16:46

讓青春吹動了你的長髮讓它牽引你的夢
不知不覺這紅塵的歷史已記取了你的笑容
紅紅心中藍藍的天是個生命的開始
春雨不眠隔夜的你曾空獨眠的日子

—— 【追夢人】

相關推薦

實現MASW分析以及速度工具——MASWaves

MASWaves軟體包研究 研究一下前面看的瑞利波反演S波速度的一個matlab工具包,這個是它的原理說明。 文獻來源: Tool for analysis of multichannel analysis of surface waves (MASW) field d

平衡二叉搜尋樹:AVL樹的實現分析 以及 統一重平衡演算法 (C++)

平衡二叉搜尋樹 既然二叉搜尋樹的效能主要取決於高度,故在節點數目固定的前提下,應儘可能地降低高度。 相應地,應儘可能地使兄弟子樹的高度彼此接近,即全樹儘可能地平衡。 等價變換 等價二叉搜尋樹:若兩棵二叉搜尋樹的中序遍歷序列相同,則稱它們彼此等價;反之亦然。

BeanUtils的copyProperties,populate實現方式分析以及容易引發的Bug

BeanUtils的copyProperties方法用來將orig中的成員變數的值複製給dest,即將已經存在的dest變為orig的副本。 public void copyProperties(Object dest, Object orig) {  .......

區塊鏈教程Fabric1.0原始碼分析putils(protos/utils工具

  區塊鏈教程Fabric1.0原始碼分析putils(protos/utils工具包),2018年下半年,區塊鏈行業正逐漸褪去發展之初的浮躁、迴歸理性,表面上看相關人才需求與身價似乎正在回落。但事實上,正是初期泡沫的漸退,讓人們更多的關注點放在了區塊鏈真正的技術之上。 Fabric1.0原始碼筆記之put

Hash表分析以及Java實現

   這篇部落格主要探討Hash表中的一些原理/概念,及根據這些原理/概念,自己設計一個用來存放/查詢資料的Hash表,並且與JDK中的HashMap類進行比較。 我們分一下七個步驟來進行。  一。    Hash表概念 二 . &n

ngnix實現負載均衡以及像代理

    本篇文章也不講什麼是負載均衡和反像代理了,就講怎麼配置把,,,  1.ngnix實現反向代理  找到ngnix名為ngnix.conf的配置檔案,我這裡使用的是xftp 集成了notepad++,所以我改檔案就使用編

介面BlockingQueue分析以及實現多個介面時的一點問題

在java併發包中,每種阻塞佇列BlockingQueue都有各自的特性,但是他們都是BlockingQueue的實現,因此分析併發包中的具體實現的BlockingQueue不如先了解BlockingQueue介面各方法的意義,然後具體分析某一個具體BlockingQueue佇列實現,最後推

Java編譯工具-JD-GUI下載以及使用

介紹 Java反編譯工具-JD-GUI 下載 https://download.csdn.net/download/badao_liumang_qizhi/10798142 使用 下載工具,雙擊exe檔案開啟 開啟之後 選擇左上角File--Open File

KMeans聚類演算法分析以及實現

KMeans KMeans是一種無監督學習聚類方法, 目的是發現數據中資料物件之間的關係,將資料進行分組,組內的相似性越大,組間的差別越大,則聚類效果越好。 無監督學習,也就是沒有對應的標籤,只有資料記錄.通過KMeans聚類,可以將資料劃分成一個簇,進而發現數據之間的關係.

Java原始碼分析——java.util工具解析(四)——四大引用型別以及WeakHashMap類解析

    WeakHashMap是Map的一種很獨特的實現,從它的名字可以看出,它是存貯弱引用的對映的,先來複習一下Java中的四大引用型別: 強引用:我們使用的大部分引用實際上都是強引用,這是使用最普遍的引用。強引用的物件垃圾回收器絕不

Java編譯工具JD-GUI以及Eclipse的編譯外掛

什麼是反編譯 高階語言源程式經過編譯變成可執行檔案,反編譯就是逆過程。但是通常不能把可執行檔案變成高階語言原始碼,只能轉換成彙編程式。 反編譯是一個複雜的過程,所以越是高階語言,就越難於反編譯,但目前還是有許許多多的反編譯軟體:通過對他人軟體的目標程式(可執行程式)進行

受限玻爾茲曼機(RBM)原理分析以及在Tensorflow的實現

簡介 受限玻爾茲曼機是一種無監督,重構原始資料的一個簡單的神經網路。  受限玻爾茲曼機先把輸入轉為可以表示它們的一系列輸出;這些輸出可以反向重構這些輸入。通過前向和後向訓練,訓練好的網路能夠提取出輸入中最重要的特徵。 為什麼RBM很重要? 因為它能夠自動地從輸入中提

OpenCV兩種畸變校正模型原始碼分析以及CUDA實現

http://www.cnblogs.com/riddick/p/7811877.html 影象演算法中會經常用到攝像機的畸變校正,有必要總結分析OpenCV中畸變校正方法,其中包括普通針孔相機模型和魚眼相機模型fisheye兩種畸變校正方法。 普通相機模型畸變校正函式針對OpenCV中的c

搶紅包案例分析以及程式碼實現

概述電商的秒殺、搶購,春運搶票,微信QQ搶紅包,從技術的角度來說,這對於Web 系統是一個很大的

搶紅包案例分析以及程式碼實現(三)

前文回顧接下來我們使用樂觀鎖的方式來修復紅包超發的bug樂觀鎖樂觀鎖是一種不會阻塞其他執行緒併發

希爾排序的Java實現、效能分析以及適用場景

1.希爾排序的Java實現: 程式碼如下: package com.zm.testSort; /** *希爾排序的最優化 * @author zm */ public class ShellS

三種工廠模式的分析以及C++實現

以下是我自己學習設計模式的思考總結。 1.簡單工廠模式 簡單工廠模式是工廠模式中最簡單的一種,他可以用比較簡單的方式隱藏建立物件的細節,一般只需要告訴工廠類所需要的型別,工廠類就會返回需要的產品類,但客戶端看到的只是產品的抽象物件,無需關心到底是返回了哪

編譯操作以及編譯工具

前幾天下了一個手機遊戲–植物大戰殭屍,想看一看它的原始碼是什麼樣的,於是傳到電腦上直接解壓,得出來的資料夾是這樣的 我想看看它的配置檔案AndroidManifest.xml開啟後是這樣的 要想看到它的原始碼就必須反編譯了,下面就要介紹反編譯的工具了。 1

搶紅包案例分析以及程式碼實現(三) 侵立刪

轉自:https://mp.weixin.qq.com/s/Pp-nCYrzXXXfLcFFS_ttWg   前文回顧 搶紅包案例分析以及程式碼實現(一) 搶紅包案例分析以及程式碼實現(二) 接下來我們使用樂觀鎖的方式來修復紅包超發的bug

搶紅包案例分析以及程式碼實現(二) 侵立刪

轉自:https://mp.weixin.qq.com/s/F1U1nUK2KF5R0nxT8lmfBg   概述 上一篇文章中使用ssm+mysql實現,存在併發超發問題,這裡我們使用悲觀鎖的方式來解決這個邏輯錯誤,並驗證資料一致性和效能狀況。 超發問題分析 針對