【LAMMPS学习】二、LAMMPS安装(3)通过Conda/tarball/git安装LAMMPS

2. LAMMPS安装

您可以将LAMMPS下载为可执行文件或源代码。
在下载LAMMPS源代码时,还必须构建LAMMPS。但是对于在构建中包含或排除哪些特性,您有更大的灵活性。当您下载并安装预编译的LAMMPS可执行文件时,您只能安装可用的LAMMPS版本以及这些构建中包含的特性。如果您计划修改或扩展LAMMPS,那么您必须从源代码构建LAMMPS。

[请注意]如果您对预编译的LAMMPS可执行文件有疑问,您需要联系准备这些可执行文件的人员。LAMMPS开发人员无法控制他们如何配置和构建他们的包以及何时更新它们。

2.1.下载适用于 Linux 的可执行文件

2.2.下载 macOS 的可执行文件

2.3.下载适用于 Windows 的可执行文件

2.4.通过 Conda 下载适用于 Linux 或 macOS 的可执行文件

预编译的 LAMMPS 二进制文件可通过 Conda 包管理系统用于 macOS 和 Linux。

首先,必须在系统上设置 Conda 包管理器。按照说明安装 Miniconda,然后为您的 LAMMPS 安装创建一个 conda 环境(命名为 my-lammps-env 或您喜欢的任何名称):

conda config --add channels conda-forge
conda create -n my-lammps-env

LAMMPS 二进制文件是使用 KIM 包构建的,这导致 Conda 在安装 LAMMPS 时也会安装 kim-api 二进制文件。为了使用 openkim.org 的潜力,您可以安装 openkim-models 包

conda install openkim-models

2.5.通过 tarball 形式下载源代码和文档

您可以从 LAMMPS 网站的下载页面或 GitHub(见下文)下载最新的 LAMMPS tarball。

您有两种 tarball 选择:最新的稳定版本或最新的功能版本。稳定版本每年发布几次,并在发布前经过更多测试。此外,在稳定版本之间,功能版本中的错误修复会向后移植,并且 tarball 偶尔也会更新。功能每 4 到 8 周发布一次。所有功能版本中的新内容都列在 LAMMPS 主页的 bug 和功能页面上。

旧版 LAMMPS 版本的 tarball 也可以从此页面下载。

从 LAMMPS 主页下载的 tarball 包括与该版本对应的预编译的 LAMMPS 文档(HTML 和 PDF 文件)。

获得 tarball 后,使用以下命令解压缩它:

tar -xzvf lammps*.tar.gz

这将创建一个 LAMMPS 目录,其名称中包含版本日期,例如lammps-28Mar23。

您还可以从 LAMMPS GitHub 发布站点的“资产”部分下载压缩的 tar 或 zip 存档。文件名为 lammps-<version>.zip,可以使用以下命令解压缩,以创建 lammps-<version> 目录:

unzip lammps*.zip

此版本对应于所选的 LAMMPS 功能或稳定版本(如匹配的 git 标签所示),并且仅包含源代码,没有预构建的文档。

2.6.通过 git 下载 LAMMPS 源代码

LAMMPS 开发是通过“LAMMPS GitHub 站点”协调的。如果将 LAMMPS 存储库克隆到本地计算机上,它具有以下几个优点:

  • 您可以通过一个git命令了解LAMMPS的最新变化。
  • 您可以创建自己的开发分支来向LAMMPS添加代码。
  • 您可以将您的新功能提交回GitHub以包含在LAMMPS中。为此,您应该首先在GitHub上创建自己的分支。

您必须在系统上安装 git 才能使用下面解释的命令与 GitHub 上的 git 服务器进行通信。对于仍在使用 subversion (svn) 的人们,GitHub 还为 subversion 客户端提供有限的支持。

您可以在 4 个不同的 git 分支上关注 LAMMPS 开发:

  • 开发版:这个分支遵循正在进行的开发,并随着拉取请求发布的每个合并提交而更新
  • 发行版;更新总是从开发中快速合并而来
  • 维护版:这个分支收集从开发分支到稳定分支的后移植错误修复。它用于为稳定更新版本更新稳定分支。
  • 稳定版:这个分支在每个稳定版本中都会从发布分支更新,并且当维护分支合并到它中时,也会在每个更新版本中选择错误修复

要访问您机器上的 git 存储库,请使用克隆命令创建 LAMMPS 存储库的本地副本,命令如下:

git clone -b release https://github.com/lammps/lammps.git mylammps

其中“mylammps”是您希望在计算机上创建的目录的名称,“release”是上面列出的 3 个分支之一。 (请注意,您实际上下载了所有 3 个分支;您可以随时使用“git checkout <branch name>”在它们之间切换。)

命令完成后,您的目录将包含与解压当前 LAMMPS tarball 相同的文件,但不包括 HTML 文档文件。通过在 doc 目录中键入 make html ,可以根据 doc/src 中提供的内容生成它们。

初始克隆后,随着 LAMMPS 中添加错误修复和新功能,您可以通过在“mylammps”目录中键入以下 git 命令来保持最新状态:

git checkout release      # not needed if you always stay in this branch
git checkout stable       # use one of these 4 checkout commands
git checkout develop      # to choose the branch to follow
git checkout maintenance
git pull

执行“拉取”不会更改您添加到 LAMMPS 目录结构中的任何文件。它也不会更改您编辑的任何现有 LAMMPS 文件,除非这些文件在存储库中已更改。在这种情况下,git 将尝试将存储库文件中的更改与您的文件版本合并,并告诉您是否存在任何冲突。有关详细信息,请参阅 git 文档。

如果您想访问 LAMMPS 的特定先前发布版本,您可以“签出”带有已发布标签的任何版本。有关标签列表,请参阅 git tag -l 的输出。执行此操作的 git 命令如下。

git checkout tagID

本页讨论了稳定版本以及特定稳定版本使用的 tagID。请注意,此命令将打印一些警告,因为为了返回到最新版本并能够再次使用 git pull 进行更新,您将需要执行 git checkout release (或检查首先出任何其他所需的分支)。

使用 git pull (或 git checkout )更新本地文件后,如果任何源文件发生更改,您仍然需要重新构建 LAMMPS。如何执行此操作取决于您正在使用的构建系统。

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

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

相关文章

202303 CSP认证 | LDAP

LDAP 好好好&#xff0c;难度直线上升&#xff0c;是一道又有了字符串处理味道的第三题 第一把写官网40分&#xff0c;acwing TLE且只通过了一道数据…本文是自己这题奋斗过程 的一个记录 先贴个40分的代码&#xff1a; #include<bits/stdc.h> using namespace std; t…

C++面试100问(九)

C中typdef和#define区别&#xff1f; #define是预处理命令&#xff0c;在预处理是执行简单的替换&#xff0c;不做正确性的检查&#xff1b;typedef是在编译时处理的&#xff0c;它是在自己的作用域内给已经存在的类型一个别名。 C中有哪些调试程序的方法&#xff1f; windows…

Servlet两种配置

通过xml配置 <servlet><servlet-name>MyServlet</servlet-name><servlet-class>MyServlet</servlet-class> </servlet> <servlet-mapping><servlet-name>MyServlet</servlet-name><url-pattern>/MyServlet</ur…

【nuget】如何移动 nuget 缓存文件夹

如何移动 nuget 缓存文件夹 一、了解NuGet包的默认存放路径二、为什么需要修改NuGet包的默认存放路径?使用下面的命令查看本地包位置三、更改下载的NuGet包存储位置四、修改VS离线包引用地址五、验证修改的新路径是否成功默认情况下,NuGet下载的包存放在系统盘(C盘中),这样一…

RecyclerView源码分析之二 滚动时候的ViewHolder的回收和复用

源码版本&#xff1a;androidx1.3.2 分析场景&#xff1a; RecyclerView 使用线性布局&#xff0c;方向为竖直方向&#xff0c;布局从上到下。第一次设置 LayoutManager 和 Adapter &#xff0c;正常显示数据以后&#xff0c;滚动 RecyclerView。 先说下结论&#xff1a; 在…

【C++通关攻略 · 基础篇】数据类型

✍作者&#xff1a;黑洞极客 &#x1f4d4;专栏&#xff1a;C&#xff1a;通关攻略 本篇文章将介绍 C 中的数据类型&#xff0c;有帮助的话别忘点赞收藏&#xff0c;关注专栏哦&#xff01; 数据类型 数据类型&#xff0c;顾名思义&#xff0c;就是内存中存储的数据的类型&…

U盘变本地磁盘?数据恢复有妙招!

一、U盘异变本地磁盘现象 在日常工作和生活中&#xff0c;U盘作为便携式的存储设备&#xff0c;广受大家喜爱。然而&#xff0c;有时我们会遇到一个奇怪的现象&#xff1a;原本应该显示为可移动磁盘的U盘&#xff0c;在插入电脑后却变成了“本地磁盘”。这种情况不仅让人困惑&…

论文解读之Attention-based Deep Multiple Instance Learning

前言 多实例学习是由监督学习演变而来的&#xff0c;我们都知道&#xff0c;监督学习在训练的时候是一个实例&#xff08;或者说一个样本、一条训练数据&#xff09;对应一个确定的标签。而多实例的特点就是&#xff0c;我们在训练的时候的输入是多个实例对应一个确定的标签&a…

JUC之CAS比较并交换

CAS 原子类引入 加入原子整型类的操作后&#xff0c;无锁化的操作 CAS 比较并交换 硬件级别的保证 源码分析 引出UnSafe类 UnSafe源码分析 unsafe中的do-while保证自旋 public final int getAndAddInt(Object var1, long var2, int var4) {int var5;do {var5 this…

JSON基础知识

目录 一、定义二、作用三、特点四、语法JSON具有以下这些形式&#xff1a;4.1 对象(JSONObject)&#xff1a;4.2 数组(JSONArray)&#xff1a;4.3 值4.4 字符串4.5 数值 五、常用的JSON解析方式5.1 org.json解析5.1.1 常用api5.1.2 get方法与opt方法对比5.1.3 使用示例5.1.3 参…

jS 正则

概念 正则表达式是用于匹配字符串中字符组合的模式。在 JavaScript中&#xff0c;正则表达式也是对象。这些模式被用于 RegExp 的 exec 和 test 方法, 以及 String 的 match、matchAll、replace、search 和 split 方法。 创建正则表达式 两种方法&#xff1a;字面量方式、构造…

Spring-3

目录 Spring AOP和AspectJ AOP 在Spring AOP 中&#xff0c;关注点和横切关注的区别 Spring 框架中的单例 Bean 是线程安全的吗 Spring 是怎么解决循环依赖的&#xff1f; 事务隔离级别 事务的传播级别 Spring 事务实现方式 Spring框架的事务管理有哪些优点 事务注解的…

2、高级语言的语法描述

常用的高级程序设计语言 程序语言的定义 语法 一组规则&#xff0c;用它可以形成和产生合适的程序 词法规则&#xff1a;单词符号的形成规则。 单词符号的形成规则单词符号是语言中具有独立意义的最基本结构 一般包括:常数、标识符、基本字、算符、界符等 描述工具:有限自动机…

膨胀 卷积

1.作用 Dilated convolution、Atrous convolution 增大感受野保持原输入大小 2.膨胀因子 描述的是相邻元素之间的距离 r 2 3.gridding effect 不合理的多个膨胀卷积之前&#xff0c;设计的膨胀因子不合理导致&#xff0c;在增大感受野的同时丢失了细节信息。 丢失&…

7.测试教程-自动化测试selenium-2

文章目录 1.webdriver API1.1元素的定位1.2id定位1.3name 定位1.4tag name 定位和class name 定位1.5CSS 定位(常用)1.5.1概念1.5.2实操1.5.3语法 1.6XPath 定位1.6.1概念1.6.2实操1.6.3语法 1.7link text定位1.8Partial link text 定位1.9一个简单的测试实战1.10CSS定位和XPat…

sqllab第二十六A关通关笔记

知识点&#xff1a; 布尔注入 只能爆破出不带空格的语句信息database() version() 等空格、注释都被过滤了错误不回显了 感觉和26关应该差不多 构造payload:id0||11 发现可以绕过 尝试进行错误注入 构造payload:id||exp(710)1 发现页面没有有价值的回显信息&#xff1b;…

一个可商用私有化部署的基于JAVA的chat-gpt网站

目录 介绍一、核心功能1、智能对话2、AI绘画3、知识库4、一键思维导图5、应用广场6、GPTS 二、后台管理功能1、网站自定义2、多账号登录支持3、商品及会员系统4、模型配置5、兑换码生成6、三方商户用户打通 结语 介绍 java语言的私有化部署的商用网站还是比较少的 这里给大家介…

C语言经典面试题目(十七)

1、C语言中的位域和结构体对齐有什么关系&#xff1f; 在C语言中&#xff0c;位域是一种特殊的结构体成员&#xff0c;用于对结构体中的位进行分组和命名。结构体对齐是指编译器根据平台和数据类型的要求将结构体成员按照一定的规则进行内存对齐。 位域和结构体对齐的关系在于…

Go语言gin框架中加载html/css/js等静态资源

Gin框架没有内置静态文件服务&#xff0c;但可以使用gin.Static或gin.StaticFS中间件来提供静态文件服务。 效果图如下&#xff1a; 一、gin 框架加载 Html 模板文件的方法 方式1&#xff1a;加载单个或多个html文件&#xff0c;需要指明具体文件名 r.LoadHTMLFiles("vie…