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

【VASP学习】在Ubuntu系统安装vasp.5.4.4的全过程(包括VASP官方学习资料、安装过程中相关编辑器的配置、VASP的编译及VASP的测试)

在Ubuntu系统安装vasp.5.4.4的全过程

  • VASP的简介与相关学习资料
  • 安装前的准备工作及说明
  • 安装过程
    • intel编译器的安装
    • VASP的编译
    • VASP的测试
  • 参考来源

VASP的简介与相关学习资料

在这里插入图片描述
VASP(Vienna Ab initio Simulation Package)是基于第一性原理对原子尺度的材料进行模拟计算的软件。比如可以进行原子尺度材料的电子结构计算、分子动力学过程的模拟分析等。
在这里插入图片描述


官方网站提供了软件学习的examples与tutorials:
Examples:https://www.vasp.at/wiki/index.php/Category:Examples
在这里插入图片描述


Tutorials:https://www.vasp.at/wiki/index.php/Category:Tutorials
(从原子、分子到块体结构,再到表面结构)
在这里插入图片描述

安装前的准备工作及说明

【安装所处的环境】:linux环境;Ubuntu系统,版本为20.04.6 LTS
【安装包的准备】:(这部分的文件需要自己去找)

  • intel编译器的安装包及Licenses文件,本文选择的版本是:Intel® Parallel Studio XE 2020 Cluster Edition
  • VASP的安装包,本文选择的版本为:vasp.5.4.4.tar.gz

安装过程

intel编译器的安装


已知VASP的编译需要很多编译器,包括:

  • Compilers for Fortran (at least F2008 compliant), C, and C++.
  • Numerical libraries: FFTW, BLAS, LAPACK, and ScaLAPACK.
  • An implementation of the Message Passing Interface (MPI).

因此我们可以去找已经把以上编译器和相关库组合好的软件,安装软件即可,这就是为什么安装Intel® Parallel Studio XE 2020的原因。


【安装过程】

  1. 解压Intel® Parallel Studio XE 2020的安装包,tar -xzf 安装包名称
  2. 本文选择纯文本环境下安装,因此进入解压后的文件夹,cd 解压后的安装包名称
  3. 进入文件夹后,执行./install.sh,启动安装程序,界面如下:
    在这里插入图片描述
  4. 回车,输入空格到达底部,输入:accept,然后回车
    在这里插入图片描述
  5. 同意软件收集系统的信息,输入:1,然后回车
    在这里插入图片描述
  6. 安装过程识别了系统信息后,弹出以下界面,输入:1,然后回车
    在这里插入图片描述
  7. 软件权限选择识别license file,因此先输入:2,然后回车
    在这里插入图片描述
  8. 选择离线选择license file,输入:1,然后回车,然后输入你的license file所在路径(这里要自己去找这个软件的Licenses文件夹,路径就是这个文件夹所在的路径),回车
    在这里插入图片描述
  9. 识别license成功后,弹出计划安装的配置选择,输入:1,然后回车;进入安装的组件选择,我们这里要选择自定义安装,只选择安装VASP编译所需要的组件,因此输入:2,然后回车
    在这里插入图片描述
  10. 取消勾选“IA-32”,保留“Intel® 64”的选择,因此输入:1,然后回车;继续回车,进入下一步的选择
    在这里插入图片描述
    在这里插入图片描述
  11. 进入具体组件的选择(Change components to install),因此输入:3,然后回车;
    在这里插入图片描述
  12. 分别进入2-16的选项,仅保留以下组件的安装:
  • Intel C++ Compiler 19.1 Update 3

  • Intel Fortran Compiler 19.1 Update 3

  • Intel Math Kernel Library 2020 Update 4 for C/C++下的Intel MKL core libraries for C/C++和Cluster support for C/C++
    在这里插入图片描述

  • Intel Math Kernel Library 2020 Update 4 for Fortran下的Intel MKL core libraries for Fortran、Cluster support for Fortran和Fortran 95 interfaces for BLAS and LAPACK
    在这里插入图片描述

  • Intel Threading Building Blocks 2020 Update 3

  • Intel MPI Library 2019 Update 9下的Intel MPI Library for applications running on Intel® 64 Architecture
    在这里插入图片描述

  1. 其他组件均不选择,最后的选择结果显示见下,选择结束后,进入回车然后进入下一步的安装
    在这里插入图片描述
    在这里插入图片描述
  2. 提示缺少32-bit libraries,选择跳过(Skip prerequisites),继续下一步,开始安装以上选择的组件,需要一点时间。出现以下界面即为安装成功。
    在这里插入图片描述
    在这里插入图片描述
  3. 下面配置Intel® Parallel Studio XE 2020的运行环境,找到安装该软件所在路径下的psxevars.sh,一般在intel文件夹下(如,我的路径是:/home/intel/parallel_studio_xe_2020/psxevars.sh)。接着将代码(source /home/intel/parallel_studio_xe_2020/psxevars.sh)加入到bashrc文件末尾。具体步骤为,先回到主目录下:cd ~,进入bashrc文件,vim .bashrc,输入i进入编辑模式,将代码source /home/intel/parallel_studio_xe_2020/psxevars.sh复制在文件最后,输入Esc进入取消编辑状态,然后按住shift,输入:wq,保存编辑并退出。回到命令行窗口,输入source .bashrc,显示以下界面即可配置环境成功。
    在这里插入图片描述
  4. 使用cd进入/home/intel/compilers_and_libraries_2020.4.304/linux/mkl/interfaces/fftw3xf所在目录,然后在命令行执行make libintel64命令,运行后当前目录下会产生libfftw3xf_intel.a库文件。界面提示见下图。
    在这里插入图片描述
  5. 将以上步骤严格执行后,便完成了intel编译器的安装!

VASP的编译

【安装步骤】

  1. 解压vasp.5.4.4.tar.gz安装包:tar -xzf vasp.5.4.4.tar.gz

  2. 进入解压后的文件夹:cd vasp.5.4.4

  3. 继续进入该目录下的arch文件夹:cd arch

  4. 复制该目录下的makefile.include.linux_intel文件到上一级目录,并改名为makefile.include
    在这里插入图片描述

  5. 使用vim打开文件makefile.includevim makefile.include

  6. 找到OFLAG参数,在其后面添加-xhost,保存并退出(vim的编辑与保存操作参考步骤15)
    在这里插入图片描述

  7. 在此目录下,命令行窗口输入命令make all开始进行VASP的编译。
    在这里插入图片描述
    在这里插入图片描述

  8. 编译成功后,回到home目录cd ~,进入.bashrc文件vim .bashrc,将路径代码(export PATH=$PATH:/home/vasp.5.4.4/bin)加入到.bashrc文件末尾,保存编辑并退出(vim的编辑与保存操作参考步骤15)。在命令行执行source .bashrc,便可使用VASP。

VASP的测试

VASP安装成功后,在bin文件夹下产生三个可执行文件(vasp_gam、vasp_ncl、vasp_std),我们主要使用的是vasp_std。下面将调用vasp_std测试VASP的运行。
在这里插入图片描述

  1. 从VASP官网的Tutorial中找一个案例,比如我找的是Atoms and Molecules模块中的O atom(https://www.vasp.at/wiki/index.php/O_atom)。
    在这里插入图片描述

  2. 下载其输入文件,解压文件夹,并进入该文件夹。在命令行执行mpirun -np 4 vasp_std开始vasp的计算,计算结束后产生一系列文件。
    在这里插入图片描述

  3. 检查结果文件OUTCAR,计算过程完整且正常输出即说明vasp安装成功。
    在这里插入图片描述

参考来源

本文主要是参考了卢天老师的博文:VASP最简单的安装方法(含全程视频演示)。在老师的指导下将过程详细记录,方便以后查阅。

相关文章:

【VASP学习】在Ubuntu系统安装vasp.5.4.4的全过程(包括VASP官方学习资料、安装过程中相关编辑器的配置、VASP的编译及VASP的测试)

在Ubuntu系统安装vasp.5.4.4的全过程 VASP的简介与相关学习资料安装前的准备工作及说明安装过程intel编译器的安装VASP的编译VASP的测试 参考来源 VASP的简介与相关学习资料 VASP(Vienna Ab initio Simulation Package)是基于第一性原理对原子尺度的材料进行模拟计算的软件。比…...

PyTorch|Dataset与DataLoader使用、构建自定义数据集

文章目录 一、Dataset与DataLoader二、自定义Dataset类(一)\_\_init\_\_函数(二)\_\_len\_\_函数(三)\_\_getitem\_\函数(四)全部代码 三、将单个样本组成minibatch(Data…...

4.6(信息差)

🌍 山西500千伏及以上输电线路工程首次采用无人机AI自主验收 🌋 中国与泰国将开展国际月球科研站等航天合作 ✨ 网页版微软 PowerPoint 新特性:可直接修剪视频 🍎 特斯拉开始在德国超级工厂生产出口到印度的右舵车 1.马斯克&…...

关于C#操作SQLite数据库的一些函数封装

主要功能:增删改查、自定义SQL执行、批量执行(事务)、防SQL注入、异常处理 1.NuGet中安装System.Data.SQLite 2.SQLiteHelper的封装: using System; using System.Collections.Generic; using System.Data.SQLite; using System.…...

LeetCode-79. 单词搜索【数组 字符串 回溯 矩阵】

LeetCode-79. 单词搜索【数组 字符串 回溯 矩阵】 题目描述:解题思路一:回溯 回溯三部曲。这里比较关键的是给board做标记,防止之后搜索时重复访问。解题思路二:回溯算法 dfs,直接看代码,很容易理解。visited哈希,防止…...

游戏引擎之高级动画技术

一、动画混合 当我们拥有各类动画素材(clips)时,要将它们融合起来成为一套完整的动画。 最经典的例子就是从走的动画自然的过渡到跑的动画。 1.1 线性插值 不同于上节课的LERP(同一个clip内不同pose之间)&#xff…...

Oracle 数据库中的全文搜索

Oracle 数据库中的全文搜索 0. 引言1. 整体流程2. 创建索引2-1. 创建一个简单的表2-2. 创建文本索引2-3. 查看创建的基础表 3. 运行查询3-1. 运行文本查询3-2. CONTAINS 运算符3-3. 混合查询3-4. OR 查询3-5. 通配符3-6. 短语搜索3-7. 模糊搜索(Fuzzy searches&…...

代码随想录阅读笔记-二叉树【二叉搜索树中的众数】

题目 给定一个有相同值的二叉搜索树(BST),找出 BST 中的所有众数(出现频率最高的元素)。 假定 BST 有如下定义: 结点左子树中所含结点的值小于等于当前结点的值结点右子树中所含结点的值大于等于当前结点的…...

AcWing-游戏

1388. 游戏 - AcWing题库 所需知识:博弈论,区间dp 由于双方都采取最优的策略来取数字,所以结果为确定的,有可能会有多个不同的过程,但是我们只需要关注最终结果就行了。 方法一: 定义dp[i][j] 表示区间…...

Mybatis——一对一映射

一对一映射 预置条件 在某网络购物系统中,一个用户只能拥有一个购物车,用户与购物车的关系可以设计为一对一关系 数据库表结构(唯一外键关联) 创建两个实体类和映射接口 package org.example.demo;import lombok.Data;import …...

Web 安全之 SSL 剥离攻击详解

目录 SSL/TLS简介 SSL 剥离攻击原理 SSL 剥离攻击的影响 SSL 剥离攻击的防范措施 小结 SSL 剥离攻击(SSL Stripping Attack)是一种针对安全套接层(SSL)或传输层安全性(TLS)协议的攻击手段,…...

数据结构——顺序表(C语言)

目录 一、顺序表概念 二、顺序表分类 1.静态顺序表 2.动态顺序表 三、顺序表的实现 1.顺序表的结构体定义 2. 顺序表初始化 3.顺序表销毁 4.顺序表的检验 5.顺序表打印 6.顺序表扩容 7.顺序表尾插与头插 8.尾删与头删 9.在pos处插入数据 10.在pos处删除数据 11.查找数据 …...

利用Idea实现Ajax登录(maven工程)

一、新建一个maven工程(不会建的小伙伴可以参考Idea引入maven工程依赖(保姆级)-CSDN博客),工程目录如图 ​​​​​​​ js文件可以上up网盘提取 链接:https://pan.baidu.com/s/1yOFtiZBWGJY64fa2tM9CYg?pwd5555 提取码&…...

环信IM集成教程——Web端UIKit快速集成与消息发送

写在前面: 千呼万唤始出来,环信Web端终于出UIKit了!🎉🎉🎉 文档地址:https://doc.easemob.com/uikit/chatuikit/web/chatuikit_overview.html 环信单群聊 UIKit 是基于环信即时通讯云 IM SDK 开…...

Anaconda如何切换国内镜像源

一、anaconda如何切换阿里镜像源 在Anaconda中切换到阿里云镜像源可以通过以下步骤进行: 1、打开终端(Windows)或者命令行界面(macOS/Linux)。 2、执行以下命令来配置阿里云镜像源: conda config --add…...

Android 14.0 添加自定义服务,并生成jar给第三方app调用

1.概述 在14.0系统ROM产品定制化开发中,由于需要新增加自定义的功能,所以要增加自定义服务,而app上层通过调用自定义服务,来调用相应的功能,所以系统需要先生成jar,然后生成jar 给上层app调用,接下来就来分析实现的步骤,然后来实现相关的功能 从而来实现所需要的功能 …...

解决沁恒ch592单片机在tmos中使用USB总线时,接入USB Hub无法枚举频繁Reset的问题

开发产品时采用了沁恒ch592,做USB开发时遇到了一个奇葩的无法枚举问题。 典型症状 使用USB线直连电脑时没有问题,可以正常使用。 如果接入某些特定方案的USB Hub(例如GL3510、GL3520),可能会出现以下2种情况&#xf…...

nvm保姆级安装使用教程

✅作者简介:大家好,我是Leo,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉 🍎个人主页:Leo的博客 💞当前专栏: 开发环境篇 ✨特色专栏: M…...

大语言模型LLM《提示词工程指南》学习笔记02

文章目录 大语言模型LLM《提示词工程指南》学习笔记02设计提示时需要记住的一些技巧零样本提示少样本提示链式思考(CoT)提示自我一致性生成知识提示 大语言模型LLM《提示词工程指南》学习笔记02 设计提示时需要记住的一些技巧 指令 您可以使用命令来指…...

【realme x2手机解锁BootLoader(简称BL)】

realme手机解锁常识 https://www.realme.com/cn/support/kw/doc/2031665 realme手机解锁支持型号 https://www.realmebbs.com/post-details/1275426081138028544 realme x2手机解锁实践 参考:https://www.realmebbs.com/post-details/1255473809142591488 1 下载apk…...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

超短脉冲激光自聚焦效应

前言与目录 强激光引起自聚焦效应机理 超短脉冲激光在脆性材料内部加工时引起的自聚焦效应,这是一种非线性光学现象,主要涉及光学克尔效应和材料的非线性光学特性。 自聚焦效应可以产生局部的强光场,对材料产生非线性响应,可能…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)

HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...

从WWDC看苹果产品发展的规律

WWDC 是苹果公司一年一度面向全球开发者的盛会,其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具,对过去十年 WWDC 主题演讲内容进行了系统化分析,形成了这份…...

渲染学进阶内容——模型

最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...

对WWDC 2025 Keynote 内容的预测

借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...

2021-03-15 iview一些问题

1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...

html css js网页制作成品——HTML+CSS榴莲商城网页设计(4页)附源码

目录 一、👨‍🎓网站题目 二、✍️网站描述 三、📚网站介绍 四、🌐网站效果 五、🪓 代码实现 🧱HTML 六、🥇 如何让学习不再盲目 七、🎁更多干货 一、👨‍&#x1f…...

DiscuzX3.5发帖json api

参考文章:PHP实现独立Discuz站外发帖(直连操作数据库)_discuz 发帖api-CSDN博客 简单改造了一下,适配我自己的需求 有一个站点存在多个采集站,我想通过主站拿标题,采集站拿内容 使用到的sql如下 CREATE TABLE pre_forum_post_…...