Ubuntu 20.04 系统如何优雅地安装NCL?

一、什么是NCL?

      NCAR Command Language(NCL)是由美国大气研究中心(NCAR)推出的一款用于科学数据计算和可视化的免费软件。

      它有着非常强大的文件输入和输出功能,可读写netCDF-3、netCDF-4 classic、HDF4、binary、ASCII数据,支持对HDF-EOS2、HDF-EOS5、GRIB1、GRIB2和OGR数据(Shapefile, MapInfo, GMT, TIGER)的读入操作,基本实现了无缝对接各类气象数据和模式数据。

      在数据计算上,大气科学研究中几乎所有的常用计算方法都已被NCL集成至其内置的函数和程序中,比如经验正交函数分解(EOF)、奇异值分解(SVD)、功率谱分析,1维、2维、3维数据的插值,等等。

      NCL是一种高级语言,但是在2020年NCL维护团队宣布转向Python,彻底作为放弃语言的身份,成为python的一个包,即地球科学社区分析工具包(GeoCAT),包括PyNGL、PyNIO、wrf-python 和 GeoCAT-Comp。

      NCL目前已经停止更新,最后版本为6.6.2。因此,我们选择安装NCL6.6.2版本。

二、从预编译的二进制文件安装NCL(X)

      从预编译的二进制文件安装NCL,也就是tar.gz文件,但是作者倒在了下载这一步,下载地址极其不稳定,多次尝试仍无法下载,即使使用魔法,也毫无作用。所以,直接推,放弃安装。

三、使用conda下载NCL(✓)

(一)安装conda

      Conda 是一个包管理系统,使您能够通过“conda”命令轻松地从 UNIX 命令行安装软件:

      首先通过miniconda 或Anaconda下载并安装 conda 。如果磁盘空间是一个问题(Anaconda 相当大),建议使用 miniconda,因为这是一个更小的系统,需要更少的磁盘空间。

# 更新系统包
sudo apt update
sudo apt upgrade
# 下载miniconda
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

安装过程中可以自定义安装路径,这里选择安装在 /home/ubuntu(用户名)/miniconda3

得到:

为了能让所有用户都能使用Mniconda,要修改.bashrc 文件

# 打开.bashrc文件
vi ~/.bashrc
# 添加以下代码
export PATH=/home/ubuntu(用户名)/miniconda3/bin:$PATH
# 启动环境
source ~/.bashrc
# 查找conda
which conda
# 查看conda版本
conda --version

得到

(二)安装NCL

# 更新conda包
conda update -n root --all
# 创建名为:ncl_stable 环境 并安装ncl
conda create -n ncl_stable -c conda-forge ncl
# 激活环境
source activate ncl_stable   
#测试NCL.1
ncl -V

得到:

# 测试NCL.2
ncl $NCARG_ROOT/lib/ncarg/nclex/gsun/gsun02n.ncl

# 测试NCL.3
ncl $NCARG_ROOT/lib/ncarg/nclex/nug/NUG_multi_timeseries.ncl

得到:


  当使用NCL时,则需要激活ncl_stable环境  

#激活环境
source activate ncl_stable   
#退出环境
conda deactivate

      到这里,NCL的安装就结束了,祝大家使用愉快!

参考资料

1.使用conda安装NCL官方教程How to install NCL using condaicon-default.png?t=N7T8https://www.ncl.ucar.edu/Download/conda.shtml

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/277902.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【遍历方法】浅析Java中字符串、数组、集合的遍历

目录 前言 字符串篇 1.1 使用 for 循环和 charAt 方法 1.2 使用增强 for 循环(forEach 循环) 1.3 使用 Java 8 的 Stream API 最终效果 数组篇 2.1 使用普通 for 循环 2.2 使用增强型 for 循环( forEach 循环) 2.3 使用 Arrays.asList 和 forE…

C#调用Halcon出现尝试读取或写入受保护的内存,这通常指示其他内存已损坏。System.AccessViolationException

一、现象 在C#中调用Halcon,出现异常提示:尝试读取或写入受保护的内存,这通常指示其他内存已损坏。System.AccessViolationException 二、原因 多个线程同时访问Halcon中的某个公共变量,导致程序报错 三、测试 3.1 Halcon代码 其中tsp_width…

用户视角的比特币和以太坊外围技术整理

1. 引言 要点: 比特币L2基本强调交易内容的隐蔽性,P2P交易(尤其是支付)成为主流,给用户带来一定负担(闪电网络)在以太坊 L2 中,一定程度上减少了交易的隐蔽性,主流是实…

C语言 数据在内存中的存储

目录 前言 一、整数在内存中的存储 二、大小端字节序和字节序判断 2.1.练习一 2.2 练习二 2.3 练习三 2.4 练习四 2.5 练习五 2.6 练习六 三、浮点数在内存中的存储 3.1 浮点数存的过程 3.2 浮点数取的过程 总结 前言 数据在内存中根据数据类型有不同的存储方式,今…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的火焰与烟雾检测系统详解(深度学习模型+UI界面升级版+训练数据集)

摘要:本研究详细介绍了一种集成了最新YOLOv8算法的火焰与烟雾检测系统,并与YOLOv7、YOLOv6、YOLOv5等早期算法进行性能评估对比。该系统能够在包括图像、视频文件、实时视频流及批量文件中准确识别火焰与烟雾。文章深入探讨了YOLOv8算法的原理&#xff0…

Parade Series - Web Streamer Low Latency

Parade Series - FFMPEG (Stable X64) 延时测试秒表计时器 ini/config.ini [system] homeserver storestore\nvr.db versionV20240312001 verbosefalse [monitor] listrtsp00,rtsp01,rtsp02 timeout30000 [rtsp00] typelocal deviceSurface Camera Front schemartsp ip127…

软件杯 深度学习 python opencv 动物识别与检测

文章目录 0 前言1 深度学习实现动物识别与检测2 卷积神经网络2.1卷积层2.2 池化层2.3 激活函数2.4 全连接层2.5 使用tensorflow中keras模块实现卷积神经网络 3 YOLOV53.1 网络架构图3.2 输入端3.3 基准网络3.4 Neck网络3.5 Head输出层 4 数据集准备4.1 数据标注简介4.2 数据保存…

前端框架vue的样式操作,以及vue提供的属性功能应用实战

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

基于Springboot+Vue+Sercurity实现的大学生健康管理平台

1.项目介绍 大学生健康档案管理系统,通过电子健康档案管理系统这个平台,可以实现人员健康情况的信息化、网络化、系统化、规范化管理,从繁杂的数据查询和统计中解脱出来,更好的掌握人员健康状况。系统的主要功能包括:…

2024年5家香港服务器推荐,性价比top5

​​香港服务器是中小企业建站、外贸建站、个人博客建站等领域非常受欢迎的服务器,2024年有哪些云厂商的香港服务器是比较有性价比的?这里根据小编在IT领域多年服务器使用经验,给大家罗列5家心目中最具性价比的香港服务器厂商。 这五家香港服…

StarRocks面试题及答案整理,最新面试题

StarRocks 的 MV(物化视图)机制是如何工作的? StarRocks 的物化视图(MV)机制通过预先计算和存储数据的聚合结果或者转换结果来提高查询性能。其工作原理如下: 1、数据预处理: 在创建物化视图时…

【静夜思】为什么我们会如此喜欢夜晚呢

作为一名大学生,熬夜对我来说已是常态。每天都是近乎一点钟才有困意,觉得应该上床睡觉了,即使明天早八,即使明天有很多课。我也观察过身边的朋友,他们中大多数也和我一样,基本都是在12点过后才入睡。当今的…

HTML静态网页成品作业(HTML+CSS)——家乡广州介绍设计制作(5个页面)

🎉不定期分享源码,关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 🏷️本套采用HTMLCSS,未使用Javacsript代码,共有5个页面。 二、作品演示 三、代…

爱普生晶振发布RTC模块晶振(压电侠)

爱普生晶振一直以”省,小,精”技术作为资深核心,并且已经建立了一个原始的垂直整合制造模型,可以自己创建独特的核心技术和设备,使用这些作为基地的规划和设计提供独特价值的产品. 世界领先的石英晶体技术精工爱普生公…

Jmeter+Ant 接口自动化环境配置指南

一 、Jmeter安装与配置 https://blog.csdn.net/tester_sc/article/details/80746405 注:Jmeter5.0的环境变量配置与4.0或历往老版本有部分小差异,笔者用的Jmeter 5.0 二 、Ant的安装与配置 # Ant下载地址(下载到指定目录后,进行解压到当前…

在 Rust 中使用 Serde 处理json

在 Rust 中使用 Serde 处理json 在本文中,我们将讨论 Serde、如何在 Rust 应用程序中使用它以及一些更高级的提示和技巧。 什么是serde? Rust中的serde crate用于高效地序列化和反序列化多种格式的数据。它通过提供两个可以使用的traits来实现这一点&a…

【CesiumJS-5】绘制动态路线实现飞行航线、汽车轨迹、路径漫游等

实现效果 前言 Cesium中,动态路线绘制的核心是借助CZML格式,CZML是一种用来描述动态场景的JSON数组,可以用来描述点、线、多边形、体、模型及其他图元,同时定义它们是怎样随时间变化的; CZML主要做三件事: 1.添加模型信息 2.添加…

zookeeper快速入门一:zookeeper安装与启动

本文是zookeeper系列之快速入门中的第一篇,欢迎大家观看与指出不足。 写在前面: 不影响教程,笔者安装zookeeper用的是WSL(windows下的linux子系统),当然你想直接在windows上用zookeeper也是可以的。 如果你也想用ws…

Linux学习(4)——使用编辑器

1.gedit编辑器 简单易懂,依赖图形界面。可以使用ctrlc ctrlv等快捷键,ctrls进行保存,与windows系统中相类似。 2.vi/vim编辑器 vi/vim可以直接通过控制台的终端完成文本的编辑,不依赖图形界面,使用范围更广。它的编辑…

数字IC实践项目(9)—SNN加速器的设计和实现(tiny_ODIN)

数字IC实践项目(9)—基于Verilog的SNN加速器 写在前面的话项目整体框图完整电路框图 项目简介和学习目的软件环境要求 Wave&CoverageTiming,Area & Power总结 写在前面的话 项目介绍: SNN硬件加速器是一种专为脉冲神经网…