02_Geoist的基础知识

内容摘要:Geoist软件集成了多个功能模块,要想灵活地使用和扩展它,并应用它来处理地球科学问题,首先要知道它的体系结构。因此,今天介绍一下使用Geoist之前,应该知道那些事情。

1、Geoist的结构

Geoist软件包集成的模块是以路径形式组织,共包含10个文件夹。按照功能划分,每个文件夹内部的程序通常用于解决一类问题。下面简单介绍一下:

  • catalog 文件夹:地震目录分析相关的程序
  • flex 文件夹:估算岩石圈有效弹性厚度的程序
  • gravity 文件夹:重力平差相关的程序
  • gridder 文件夹:离散数据网格化相关程序
  • magmod 文件夹:地磁模型解算相关程序
  • inversion 文件夹: 地球物理反演求解算法程序
  • pfm 文件夹:位场数据处理和模型反演程序
  • snoopy 文件夹:时间序列数据处理和异常检测程序
  • vis 文件夹:可视化相关程序
  • others 文件夹: 数据管理等辅助功能程序

在了解上述文件夹下面集成的程序功能类别后,大家可以根据自己的需要进行选择和扩展。需要注意的是,有时候为了解决一个问题,往往需要多个目录下的程序相互辅助才能完成,因此,不同目录下的程序之间可能是有相互依赖关系的,不建议直接删除不需要的模块/路径来使用Geoist(这样做极有可能会出现错误)。

2、Geoist的工作路径

任何程序或软件在运行过程中,都需要进行数据交换(远程和本地,内存和磁盘),因此需要本地路径暂存数据。Geoist为方便管理,提供了统一的工作路径。用户只需要调用统一的命令就可以使用系统路径,不依赖于操作系统。这样做的好处是避免程序中出现本地路径,给移植造成不必要的麻烦(因为你的代码copy给其他人,但是他的电脑上没有你的路径)。

用法示例如下:

import geoist
print(geoist.USER_DATA_PATH)
print(geoist.TEMP_PATH)
print(geoist.DATA_PATH)
print(geoist.EXAMPLES_PATH)

运行结果(Print的信息)如图1所示。

图1 Win10下获取的工作路径地址

3、数据获取功能

在地球物理数据处理和计算之前,通常需要获取远程的数据,可能是一个URL地址,或者Restful的API形式。Geoist软件包在others的目录下提供了fetch_data.py程序,实现了这些功能(当然您也可以根据实际情况扩展它)。

  • API形式:一些API地址有时候不容易记忆,以USGS的地震目录为例,用户不必记住具体地址和参数,通过usgs_catalog函数就可以实现了,下面代码usgsfile变量是下载后本地的存储文件名。
from geoist.others.fetch_data import usgs_catalog
usgsfile = 'usgsca.csv'
localpath2 = usgs_catalog(usgsfile, '1970-01-01', '2020-01-01', '15','55','70','135',minmag = '5')
print(localpath2) 

运行结果(Print的信息如下)

C:\Users\chens\AppData\Local\geoist\geoist\data\usgsca.csv
  • URL形式:也可以是一个指定的URL地址,下面是从内网的服务器地址下载一个地震目录文件的方法。当然,任何支持下载的URL都可以复用该函数。
import geoist.others.fetch_data as data
from geoist.others.fetch_data import _retrieve_file as downloadurl
url = data.ispec_catalog_url
print(url)
filename = '2020-03-25CENC-M4.7.dat'
localpath = downloadurl(url+filename, filename)
print(localpath) 

运行结果(Print的信息如下)

http://10.2.14.222/catalog/
C:\Users\chens\AppData\Local\geoist\geoist\data\2020-03-25CENC-M4.7.dat

小哥推荐使用git仓库来存放示例数据,这样无论您的程序部署到哪里,都不需要依赖太多的本地环境,而且还不必要因为数据文件太大,而影响程序下载和安装效率。

3、Geoist的日志服务

Python提供了强大的日志功能,Geoist对其进行了二次封装。在安装Geoist软件后,会在本地的USER_DATA_PATH路径下,会产生一个geoist.log的文本文件,里面会记录用户期望记录的日志内容。无论是您使用geoist,还是在geoist模块中,当期望记录程序使用或模块被调用时的输出信息,都可以调用geoist的log函数实现,目前,该函数提供info,debug,error三种类别的日志。方法如下:

import geoist
geoist.log.info('info message')
geoist.log.debug('debug message')
geoist.log.error('error message')

如果您已经安装geoist,可以找到本地USER_DATA_PATH下的日志文件,类似图2所示。是不是什么时间用过geoist,使用那些模块信息都一目了然了呢!

日志是程序运行出现错误,排查问题和定位bug的重要手段,用好日志信息可以事半功倍呦!

图2 打开geoist.log后的信息

ps:有了这个log文件,再结合前面小哥介绍的云端部署和ES检索等技术,是不是又可以扩展了。如:用ELK提供的filebeat工具+这些log信息,是不是妥妥好搭档

一句话总结:今天内容比较简单,算是给屏幕前,期望使用Geoist软件包的用户们的一点入门知识(毕竟Geoist是开源软件,还没钱雇佣专业文档写手和测试人员完善该软件,现阶段全靠口口相传吧)。后续我们还将继续介绍geoist之中已经集成和测试好的各种实用功能,想让小哥多写点哪方面的功能用法,可以在下面留言啊!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,406评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,732评论 3 393
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,711评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,380评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,432评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,301评论 1 301
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,145评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,008评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,443评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,649评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,795评论 1 347
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,501评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,119评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,731评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,865评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,899评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,724评论 2 354

推荐阅读更多精彩内容