当前位置: 首页 > news >正文

CESM2代码下载

这半年忙着毕业写论文,好久好久好久不更新了∠( °ω°)/ ,今天准备开个新坑 ๑乛◡乛๑,学习一下CESM(Community Earth System Model),它是一个完全耦合的全球气候模型,可用于地球过去、现在和未来气候状态的模拟。

1 安装CESM2依赖的库

首先安装一些依赖的库,具体参考官网:
Introduction (CESM2.2)
在这里插入图片描述
这里其实和我之前写的教程WRF/CMAQ 安装教程有很多重复的部分,就不过多赘述了,另外lapack和blas的安装可以参考:lapack和blas安装教程;Cmake的安装可以参考:Linux安装CMake;ESMF的安装可以参考:CESM2移植全攻略

💡 注意:
1.NetCDF必须使用与CESM相同的Fortran编译器构建(我都用的intel)。
2.Parallel-netCDF(pnetcdf)是可选的。如果使用pnetcdf,则应该使用1.7.0或更高版本。它是一个文件格式与netCDF兼容的库,并通过MPI-IO提供更高的性能。pnetcddf通过设置Makefile中的$PNETCDF_PATH变量来启用。

2 CESM2代码下载

接下来就是下载CESM2的代码了,

{navigate to your home or work directory}
git clone https://github.com/ESCOMP/CESM.git src_cesm2_3_beta08
cd src_cesm2_3_beta08
git tag --list '*beta08*'  #to see options of tags
git checkout cesm2_3_beta08
./manage_externals/checkout_externals

前面都好好的,到这里就下载不动了ㄟ( ▔, ▔ )ㄏ ,看了一下官网的说明Downloading CESM2 (CESM2.2):

Access to the code requires both git and Subversion client software in
place that is compatible with GitHub and our Subversion server
software. You will need access to the command line clients, git (v1.8
or greater) and svn (v1.8 or greater but less than v1.11). Currently,
our Subversion server software is at version 1.8.17. For more
information or to download open source tools, visit Subversion and git
downloads.

原来需要git(v1.8或更高版本)和svn(v1.8或更高版本,但低于v1.11)。
查了一下git的版本符合要求(git --version),但是svn版本有点低(svn --version),于是更新了一下,参考了【Linux】centos7.x 升级svn版本到指定版本
(P.S. 因为毕业了,暂时莫得服务器用(;´д`)ゞ,所以这里用的是我之前的CentOS7虚拟机)
更新完了再重新:

./manage_externals/checkout_externals

结果:

ERROR: In directory/home/pc/src_cesm2_3_beta08/components 
Process did not run successfully; returned status 128:git clone --quiet https://github.com/ESCOMP/ctsm/ clm 
See above for output from failed command.

em…冲个浪找到:
安装CESM记录里面有:
在这里插入图片描述

git config --global http.sslverify “false”
git config --global url.“https://”.insteadOf git://

再试一下

./manage_externals/checkout_externals

又有报错(╬ ̄皿 ̄):

ERROR: Failed with output:fatal: bad config value for 'http.sslverify' in /home/pc/.gitconfig

继续冲浪找到fatal bad boolean config value ‘false;‘ for ‘http.sslverify‘解决问题(~ ̄▽ ̄)~ :

[pc@localhost src_cesm2_3_beta08]$ ./manage_externals/checkout_externals
Processing externals description file : Externals.cfg
Checking status of externals: ccs_config, cam, cice, cice6, cmeps, cdeps, cpl7, share, mct, parallelio, cime, cism, clm, fms, mom, mosart, pop, rtm, ww3, ww3dev, 
Checking out externals: ccs_config, cime, cam, Processing externals description file : Externals_CAM.cfg
Checking out externals: chem_proc, atmos_phys, atmos_cubed_sphere, mpas, carma, clubb, cosp2, pumas, pumas-frozen, silhs, 
cdeps, Processing externals description file : Externals_CDEPS.cfg
Checking out externals: fox, genf90, 
cice, cice6, Processing externals description file : Externals.cfg
Checking out externals: cice, 
cism, Processing externals description file : Externals_CISM.cfg
Checking out externals: source_cism, 
clm, Processing externals description file : Externals_CLM.cfg
Checking out externals: fates, 
cmeps, cpl7, mosart, pop, Processing externals description file : Externals_POP.cfg
Checking out externals: cvmix, marbl, 
rtm, ww3, mct, parallelio, share, 
[pc@localhost src_cesm2_3_beta08]$ ls
ccs_config          cime_config         doc            manage_externals
ChangeLog           CODE_OF_CONDUCT.md  Externals.cfg  README.rst
ChangeLog_template  components          libraries      share
cime                describe_version    LICENSE.txt

成功后可以用以下命令检查组件的情况:

[pc@localhost src_cesm2_3_beta08]$ ./manage_externals/checkout_externals -S
Processing externals description file : Externals.cfg
Processing externals description file : Externals_CAM.cfg
Processing externals description file : Externals.cfg
Processing externals description file : .gitmodules
Processing submodules description file : .gitmodules
Processing externals description file : Externals_CDEPS.cfg
Processing externals description file : Externals_CISM.cfg
Processing externals description file : Externals_CLM.cfg
Processing externals description file : Externals_POP.cfg
Checking status of externals: ccs_config, cam, chem_proc, carma, cosp2, clubb, silhs, pumas, pumas-frozen, atmos_phys, atmos_cubed_sphere, mpas, cice, cice6, cice, icepack, cmeps, cdeps, fox, genf90, cpl7, share, mct, parallelio, cime, cism, source_cism, clm, fates, fms, mom, mosart, pop, cvmix, marbl, rtm, ww3, ww3dev, ./ccs_config./cime./components/cam./components/cam/chem_proc./components/cam/src/atmos_phys./components/cam/src/dynamics/fv3/atmos_cubed_sphere./components/cam/src/dynamics/mpas/dycore./components/cam/src/physics/carma/base./components/cam/src/physics/clubb./components/cam/src/physics/cosp2/src./components/cam/src/physics/pumas./components/cam/src/physics/pumas-frozen./components/cam/src/physics/silhs./components/cdeps./components/cdeps/fox./components/cdeps/share/genf90./components/cice./components/cice6./components/cice6/src./components/cice6/src/icepack./components/cism./components/cism/source_cism./components/clm./components/clm/src/fates./components/cmeps./components/cpl7
e-o ./components/mom./components/mosart./components/pop./components/pop/externals/CVMix./components/pop/externals/MARBL./components/rtm./components/ww3
e-o ./components/ww3dev
e-o ./libraries/FMS./libraries/mct./libraries/parallelio./share
[pc@localhost src_cesm2_3_beta08]$

终于下载下来好啦ヾ(o・ω・)ノ

相关文章:

CESM2代码下载

这半年忙着毕业写论文,好久好久好久不更新了∠( ω)/ ,今天准备开个新坑 ๑乛◡乛๑,学习一下CESM(Community Earth System Model),它是一个完全耦合的全球气候模型,可用于地球过去、…...

编写OpenCL程序的基本步骤

opencl pyopencl OpenCL-Headers OpenCL(全称为Open Computing Langugae,开放运算语言)是第一个面向异构系统(此系统中可由CPU,GPU或其它类型的处理器架构组成)的并行编程的开放式标准。 它是跨平台的。 OpenCL由两部分组成,一是用于编写…...

计算机网络之TCP/IP协议第一篇:网络基础知识

文章目录 写给自己的话 一:前言 1:手握金刚钻的TCP/IP 2:计算机中的协议 3:分组...

虚拟机扩容

系统环境centos8,分两步,第一步先在vmware扩容,第二部在虚拟机内部扩容 1.vmware分配磁盘空间 2.虚拟机内部扩容 查看当前磁盘信息,这个是扩容之前的,扩容完成才会显示新的 df -h查看系统分区信息 fdisk -l查看目录…...

Linux下的系统编程——进程间的通信(九)

一、进程间通信常用方式 IPC方式: Linux环境下,进程地址空间相互独立,每个进程各自有不同的用户地址空间。任何一个进程的全局变量在另一个进程中都看不到,所以进程和进程之间不能相互访问,要交换数据必须通过内核&am…...

Qt QtableWidget、QtableView表格删除选中行、删除单行、删除多行

文章目录 Qt QtableWidget表格删除选中行只能选择一行,点击按钮后,删除一行可以选择中多行,点击按钮后,删除多行选中某一列中的不同行,点击按钮后,删除多行 QTableWidgetSelectionRange介绍QTableWidget的选…...

【代码随想录day24】不同的二叉搜索树

题目 给你一个整数 n ,求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种?返回满足题意的二叉搜索树的种数。 示例 1: 输入:n 3 输出:5示例 2: 输入:n 1 输出&#xf…...

数学建模--Subplot绘图的Python实现

目录 1.Subplot函数简介 2.Subplot绘图范例1:绘制规则子图 3.Subplot绘图范例2:绘制不规则子图 4.Subplot绘图范例3:gridspec辅助实战1 5.Subplot绘图范例4:gridspec辅助实战2 1.Subplot函数简介 """ 最近在数学建模种需要绘制多张子图,发现对于subplot函…...

JMeter(三十九):selenium怪异的UI自动化测试组合

文章目录 一、背景二、JMeter+selenium使用过程三、总结一、背景 题主多年前在某社区看到有人使用jmeter+selenium做UI自动化测试的时候,感觉很是诧异、怪异,为啥?众所周知在python/java+selenium+testng/pytest这样的组合框架下,为啥要选择jmeter这个东西[本身定位是接口测…...

c++ 移动构造方法为什么要加noexcept

背景: 最近看了候捷老师的c的教程, 他说移动构造方法要加noexcept, 在vector扩容的时候, 如果有移动构造方法没有加noexcept,是不会调用的. 个人感觉有些神奇, 这就去查下一探究竟. 过程: 测试代码如下: #include <iostream> #include <vector> struct A {A(){s…...

鸿鹄工程项目管理系统 Spring Cloud+Spring Boot+前后端分离构建工程项目管理系统

工程项目管理软件&#xff08;工程项目管理系统&#xff09;对建设工程项目管理组织建设、项目策划决策、规划设计、施工建设到竣工交付、总结评估、运维运营&#xff0c;全过程、全方位的对项目进行综合管理 工程项目各模块及其功能点清单 一、系统管理 1、数据字典&am…...

手把手教你搭建园林园艺小程序商城

现如今&#xff0c;随着互联网的快速发展&#xff0c;小程序成为了企业和个人展示产品和服务的新方式。在园林园艺行业&#xff0c;构建一个园林园艺小程序能够更好地推广和销售自己的产品和服务。那么&#xff0c;如何构建一个园林园艺小程序呢&#xff1f;下面我们来详细介绍…...

Java Iterator(迭代器)

Java迭代器&#xff08;Iterator&#xff09;是 Java 集合框架中的一种机制&#xff0c;是一种用于遍历集合&#xff08;如列表、集合和映射等&#xff09;的接口。 它提供了一种统一的方式来访问集合中的元素&#xff0c;而不需要了解底层集合的具体实现细节。 Iterator 是 …...

Logstash同步MySQL数据到ElasticSearch

当MySQL数据到一定的数量级&#xff0c;而且索引不能实现时&#xff0c;查询就会变得非常缓慢&#xff0c;所以使用ElasticSearch来查询数据。本篇博客介绍使用Logstash同步MySQL数据到ElasticSearch&#xff0c;再进行查询。 测试环境 Windows系统MySQL 5.7Logstash 7.0.1El…...

【C++】运算符重载的示例实现和应用

C运算符重载的格式&#xff1a; operator 运算符 比如要重载 ! 运算符 &#xff1a; operator ! 下面是一个例子&#xff1a; class DemoText{DemoText(string str, int num){m_text str; m_number num;}string m_text;int m_number; }这里来定义两个对象&#xff1a;…...

Kubernetes禁止调度

在Kubernetes中&#xff0c;您可以通过几种方式来禁止某个Pod调度到节点上。以下是一些方法&#xff1a; Node Selector&#xff1a;您可以使用Node Selector来限制Pod只能调度到带有特定标签的节点上。如果您希望完全禁止Pod调度到某些节点上&#xff0c;可以确保这些节点不拥…...

CocosCreator3.8研究笔记(七)CocosCreator 节点和组件的介绍

相信很多新手朋友&#xff0c;肯定会问&#xff0c;CocosCreator 中什么是节点&#xff1f;什么是组件&#xff1f; 一、什么是组件&#xff08;Component&#xff09;&#xff1f; Cocos Creator 3.8 的工作流程是以组件式开发为核心&#xff0c;即以组合而非继承的方式进行游…...

Ceph入门到精通-C++入门知识点

C中的双冒号(::)是作用域分解运算符&#xff08;scope resolution operator&#xff09;。 它主要有以下两种用法&#xff1a; 用于区分同名的不同成员&#xff0c;例如在不同类中声明了同名的成员函数或成员变量&#xff0c;可以使用A::B的方式来特指A类的B成员。当全局变量…...

Ansible之playbook详解和应用实例

目录 一、playbook简介 1.什么是playbook 2.playbook组成 二、应用实例 1.使用playbook安装启用httpd服务 2.使用playbook安装启用nginx服务 三、ansible-playbook其他用法 1.检查yaml文件的语法是否正确 2.检查tasks任务 3.检查指定的主机 4.指定从某个task开始运行…...

经验萃取方法

【经验萃取】 经验萃取不是简单的总结提炼归纳&#xff01; 经验萃取需经过还原、复盘分析、萃取重构 一.经验萃取前三个准备 1.定主题&#xff1a; 萃取主题选择&#xff08;阐述原因、确定级别、差距/问题是源头&#xff09;->多维评分&#xff1a;普遍性、重要性、迫切…...

三维GIS开发cesium智慧地铁教程(5)Cesium相机控制

一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点&#xff1a; 路径验证&#xff1a;确保相对路径.…...

《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)

CSI-2 协议详细解析 (一&#xff09; 1. CSI-2层定义&#xff08;CSI-2 Layer Definitions&#xff09; 分层结构 &#xff1a;CSI-2协议分为6层&#xff1a; 物理层&#xff08;PHY Layer&#xff09; &#xff1a; 定义电气特性、时钟机制和传输介质&#xff08;导线&#…...

理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端

&#x1f31f; 什么是 MCP&#xff1f; 模型控制协议 (MCP) 是一种创新的协议&#xff0c;旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议&#xff0c;它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...

Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)

引言&#xff1a;为什么 Eureka 依然是存量系统的核心&#xff1f; 尽管 Nacos 等新注册中心崛起&#xff0c;但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制&#xff0c;是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...

ElasticSearch搜索引擎之倒排索引及其底层算法

文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...

鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/

使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题&#xff1a;docker pull 失败 网络不同&#xff0c;需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...

【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)

升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点&#xff0c;但无自动故障转移能力&#xff0c;Master宕机后需人工切换&#xff0c;期间消息可能无法读取。Slave仅存储数据&#xff0c;无法主动升级为Master响应请求&#xff…...

STM32HAL库USART源代码解析及应用

STM32HAL库USART源代码解析 前言STM32CubeIDE配置串口USART和UART的选择使用模式参数设置GPIO配置DMA配置中断配置硬件流控制使能生成代码解析和使用方法串口初始化__UART_HandleTypeDef结构体浅析HAL库代码实际使用方法使用轮询方式发送使用轮询方式接收使用中断方式发送使用中…...

【Android】Android 开发 ADB 常用指令

查看当前连接的设备 adb devices 连接设备 adb connect 设备IP 断开已连接的设备 adb disconnect 设备IP 安装应用 adb install 安装包的路径 卸载应用 adb uninstall 应用包名 查看已安装的应用包名 adb shell pm list packages 查看已安装的第三方应用包名 adb shell pm list…...

4. TypeScript 类型推断与类型组合

一、类型推断 (一) 什么是类型推断 TypeScript 的类型推断会根据变量、函数返回值、对象和数组的赋值和使用方式&#xff0c;自动确定它们的类型。 这一特性减少了显式类型注解的需要&#xff0c;在保持类型安全的同时简化了代码。通过分析上下文和初始值&#xff0c;TypeSc…...