zoukankan      html  css  js  c++  java
  • CentOS 下安装SAC(Seismic Analysis Code)

    简介

    最近相关工作接触到了一些地震信号处理内容,需要将下载的mseed地震数据进行处理,因此用到SAC工具,此处记录CentOS下安装SAC步骤。

    什么是SAC?

    Seismic Analysis Code,简写为SAC,是天然地震学领域使用最广泛的数据分析软件包之一。
    SAC是一个软件,主要在命令行下操作,通过各种命令来处理时间序列数据,尤其是地震波形数据,同时也提供了一个简单的图形界面,使得用户可以方便地查看波形并拾取震相。SAC同时还是一种数据格式,定义了以何种方式存储时间序列数据及其元数据。SAC格式是地震学的标准数据格式之一,有很多工具可以实现SAC格式与其它地震数据格式间的相互转换。SAC实现了地震数据处理过程中的常用操作,包括重采样、插值、自/互相关、震相拾取、快速Fourier变换与反变换、谱估计、滤波、信号叠加等;同时为了满足数据批处理的需求,SAC设计了一个基础的编程语言,包含了变量、参数、条件判断、循环控制等特性。

    CentOS下安装SAC

    CentOS下安装SAC,可以直接安装官方提供的二进制包。由于SAC协议规定了用户没有分发SAC软件包的权利,因此使用需要向IRIS申请安装包。SAC软件包申请地址为:http://ds.iris.edu/ds/nodes/dmc/forms/sac/

    1.安装依赖

    $ sudo yum install glibc libSM libICE libXpm libX11
    $ sudo yum install zlib ncurses
    

    2.安装二进制包
    将官方提供的二进制包直接解压缩到安装目录

    $ tar -xvf sac-101.6a-linux_x86_64.tar.gz # 解压
    $ sudo mv sac /root/local                 # 安装
    

    3.配置变量
    分别向~/.bashrc 和 ~/.bash_profile中加入如下语句配环境变量和SAC全局变量:

    $ vim ~/.bashrc
    $ vim ~/.bash_profile
    
    $ export SACHOME=/usr/local/sac
    $ export SACAUX=${SACHOME}/aux
    $ export PATH=${SACHOME}/bin:${PATH}
    $ export SAC_DISPLAY_COPYRIGHT=1
    $ export SAC_PPK_LARGE_CROSSHAIRS=1
    $ export SAC_USE_DATABASE=0
    $ export SAC_PPK_LARGE_CROSSHAIRS=1
    $ export SAC_USE_DATABASE=0
    

    修改完~/.bashrc 和 ~/.bash_profile之后,执行以下命令使配置环境变量生效:

    $ source ~/.bashrc
    $ source ~/.bash_profile
    

    4.启动SAC
    终端输入sac,如下显示即为安装成功:

    SAC使用过程中出现的问题

    SAC Plot

    在绘制地震波形时,使用SAC的plot命令出现X11未安装错误。**X11 screen does not exist*。这是由于实验是在阿里云服务器下运行的,需要安装可视化图形界面。在CentOS7(CentOS8下此方法无用)下安装X11步骤如下:
    1.更新系统软件:

    $ yum -y upgrade
    

    2.在终端下执行如下两行命令,安装MATE桌面环境。

    $ yum groups install "X Window System"
    $ yum groups install "MATE Desktop"
    

    3.执行如下命令,设置默认使用图形化桌面花境启动系统(可选)

    $ systemctl set-default graphical.target
    

    安装成功后,该问题得以解决。成功显示制图。

  • 相关阅读:
    jQuery的遍历方法
    xampp配置host和httpd可以随意访问任何本机的地址
    JavaScript的this简单实用
    移动端rem布局和百分比栅格化布局
    你知道用AngularJs怎么定义指令吗?
    谈谈Angular关于$watch,$apply 以及 $digest的工作原理
    深入了解Angularjs指令中的ngModel
    如何将angularJs项目与requireJs集成
    requireJS(二)
    requireJS(一)
  • 原文地址:https://www.cnblogs.com/ysfurh/p/14317953.html
Copyright © 2011-2022 走看看