SHTOOLS-球面谐波工具

pyshtools的Python项目详细描述


DocumentationDOIPaperJoin the chat at https://gitter.im/SHTOOLS/SHTOOLSTwitter

shtools/pysthools是一个fortran-95/python库,可以用来 进行球面谐波变换,对 球面、函数到slepian基的展开和标准 全球重力和磁场数据操作

功能

  • 广泛支持的球谐函数:
    • 真实而复杂,
    • 所有标准规范化(大地测量学4π,施密特半规范化, 正射标准化,非标准化),
    • Condon Shortley相位因子为(-1)m
  • 球面谐波变换的干净实现:
    • 使用driscoll和 Healy(1994)或Gauss-Legendre求积
    • 精确快速到约2800度,
    • OpenMP兼容和OpenMP线程安全。
  • 选定的应用程序和例程:
    • 全局谱分析、球谐旋转和wigner 3J符号,
    • 局部化多峰谱分析与Slepian展开 基函数
    • 标准重磁场计算 大地水准面和地形的有限振幅势。
  • SHTOOLS是开源软件(3条款BSD许可证)

安装

python的pyshtools

Linux/MacOS/Windows二进制安装:

pip install pyshtools

升级到新版本:

pip install --upgrade pyshtools

从源代码生成:

pip install pyshtools --no-binary pyshtools

Python的pyshtools

使用Fortran绑定安装fftw3,然后使用 pip

conda install -c eumetsat fftw3
pip install pyshtools

面向开发人员的pyshtools

Linux要求:

sudo apt-get install libblas-dev liblapack-dev g++ gfortran libfftw3-dev tcsh

MacOS要求:

brew install fftw

安装开发分支:

pip install git+https://github.com/SHTOOLS/SHTOOLS@develop

或者,克隆shtools repo,然后安装:

git clone https://github.com/SHTOOLS/SHTOOLS.git
cd shtools
pip install .  # install into the active python environment lib folder, or
pip install -v -e .  # install into the SHTOOLS/pyshtools folder and link to the active python environment

Fortran库

克隆shtools repo,然后执行以下命令之一 在shtools目录中:

make fortran
make fortran-mp  # for OpenMP Fortran routines

或者使用brew包管理器(macos):

brew tap shtools/shtools
brew install shtools
brew install shtools --with-openmp # to install shtools with the OpenMP components.

更多的安装说明和选项可以在web documentation中找到。

如何使用

shtools可以在任何fortran 95或python程序中调用。核心 软件是用fortran 95编写的,python包装器允许 访问fortran编译的例程各种python笔记本 其中包含的示例文件演示了 图书馆。

要开始,请查看以下python教程笔记本:

开发人员

我们处理develop分支,只将发布推送到master。 请将所有请求基于develop

引文

Mark A.Wieczorek和Matthias Meschede(2018年)SHTOOLS-工具 使用球谐函数,地球化学,地球物理学, 地理系统,19,2574-2592, 内政部:10.1029/2018GC007529

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
JavaHTTP。请求侦听器   java Selenium webdriver遍历行并仅检索某些列   JavaSpring批处理在启动运行方法之前启动SimpleZoblancher运行方法   maven如何使用Maven2从javadoc生成java源代码?   java为什么我的Unicodont(Slick2D)不画画?   java取消对未使用对象的引用是否会提高冗长方法的性能?   java可执行Jar的画布比使用Eclipse Runner的小   为什么我的for循环在Android studio中与eclipse(java)产生不同的结果   java代码段字节数组到端口号   java在DynamoDB范围键中插入项   java 安卓。看法WindowManager$BadTokenException:无法添加窗口,您的活动正在运行吗?   java我想要两个列表视图同时滚动   java测试数据分离   java Saxon:每次重新部署后都需要重新启动Glassfish