从磁数据计算居里深度的python工具
pycurious的Python项目详细描述
磁性数据是地球表面最常见的地球物理数据集之一。居里深度是岩石失去磁性的深度。最常见的磁性矿物是磁铁矿,其居里点为580°C,因此居里深度通常被解释为580°C等温线。
目前求居里深度的方法首先是计算磁异常的方窗上的(快速)傅里叶变换,该磁异常已降到极点。利用径向功率谱的斜率估计磁源的深度和厚度。pycurious
实现了tanaka等。(1999)和boulgand等人。(2009)计算埋磁源厚度的方法。pycurious
摄取磁异常图,并将居里深度的计算分布在多个cpu上。与此软件包捆绑在一起的jupyter笔记本中介绍了常见的计算工作流和对磁性数据的地理空间操作。
活页夹
启动演示导航/笔记本
有两个匹配的jupyter笔记本-一个用于Tanaka实现,另一个用于Bouligand实现。noteboks的boulgand集是贝叶斯推理应用的自然选择。
注意,这些示例可以通过运行:
importpycuriouspycurious.install_documentation(path="Notebooks")
田中
硼配体
- Ex1-Plot-power-spectrum.ipynb
- Ex2-Compute-Curie-depth.ipynb
- Ex3-Posing-the-inverse-problem.ipynb
- Ex4-Spatial-variation-of-Curie-depth.ipynb
- Ex5-Mapping-Curie-depth-EMAG2.ipynb
安装
依赖性
您需要python 2.7或3.5+。 此外,还需要以下软件包:
映射模块和运行笔记本的可选依赖项:
使用pip
安装您可以使用
^{
python2 -m pip install pycurious python3 -m pip install pycurious
所有依赖项将由pip
自动安装。
使用conda
安装您可以使用conda package manager安装pycurious
。
它所需的依赖项可以通过以下方式轻松安装:
conda install numpy scipy cython
以及一整套依赖项:
conda install numpy scipy cython matplotlib pyproj cartopy
然后pycurious
可以与pip
一起安装:
pip install pycuriousConda环境
或者,您可以创建一个自定义
conda environment
其中pycurious
可以与其依赖项一起安装。
克隆存储库:
git clone https://github.com/brmather/pycurious
cd pycurious
从environment.yml
文件创建环境:
conda env create -f environment.yml
激活新创建的环境:
conda activate pycurious
用pip
安装pycurious
:
pip install pycurious
发布GCC
如果pycurious
安装由于an issue with ^{
gxx_linux-64
conda install gxx_linux-64
然后正常安装pycurious
。
使用Docker安装
可以使用Docker部署pycurious
及其所有依赖项的更直接的安装。
安装Docker映像并启动Jupyter笔记本示例:
docker pull brmather/pycurious:latest
docker run --name pycurious -p 8888:8888 brmather/pycurious:latest
用法
py好奇由两个类组成:
CurieGrid
:计算径向功率谱的基类,用于处理的质心,子网格的分解。CurieOptimise
:用于拟合合成功率谱的优化模块(继承curiegrid)。
还包括一个mapping
模块,用于网格化分散的数据点,以及坐标参考系(crs)之间的转换。
下面是计算径向功率谱的简单工作流程:
importpycurious# initialise CurieOptimise object with 2D magnetic anomalygrid=pycurious.CurieOptimise(mag_anomaly,xmin,xmax,ymin,ymax)# extract a square window of the magnetic anomalysubgrid=grid.subgrid(window_size,x,y)# compute the radial power spectrumk,Phi,sigma_Phi=grid.radial_spectrum(subgrid)
一系列测试位于tests子目录中。
为了执行这些测试,克隆存储库并运行^{
git checkout https://github.com/brmather/pycurious.git
cd pycurious
pytest -v
API文档
可以从https://brmather.github.io/pycurious/访问pycurious
中所有函数和类的api。
参考文献
- Boulgand,C.,Glen,J.M.G.,和Blakely,R.J.(2009年)。利用地壳磁化的分形模型绘制美国西部居里温度深度图。地球物理研究杂志,114(b11104),1-25.https://doi.org/10.1029/2009JB006494
- Tanaka,A.,Okubo,Y.,和Matsubayashi,O.(1999)。基于东亚和东南亚磁异常谱分析的居里点深度。构造物理学,306(3-4),461-470。https://doi.org/10.1016/S0040-1951(99)00072-4