【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最简单的安装方法(含全程视频演示)。在老师的指导下将过程详细记录,方便以后查阅。

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

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

相关文章

【Linux】线程概念及线程互斥

目录 线程概念 线程优点 线程缺点 线程异常 线程系统编程接口 线程创建及终止 线程等待 使用线程系统接口封装一个小型的C线程库并实现一个抢票逻辑 线程互斥 互斥量的接口 线程互斥实现原理 使用系统加锁接口封装LockGuard 实现自动化加锁 线程安全和可重入函数 …

HTML1:html基础

HTML 冯诺依曼体系结构 运算器 控制器 存储器 输入设备 输出设备 c/s(client客户端) 客户端架构软件 需要安装,更新麻烦,不跨平台 b/s(browser浏览器) 网页架构软件 无需安装,无需更新,可跨平台 浏览器 浏览器内核: 处理浏览器得到的各种资源 网页: 结构 HTML(超…

【Rust】生命周期

Rust 生命周期机制是与所有权机制同等重要的资源管理机制。 之所以引入这个概念主要是应对复杂类型系统中资源管理的问题。 引用是对待复杂类型时必不可少的机制,毕竟复杂类型的数据不能被处理器轻易地复制和计算。 但引用往往导致极其复杂的资源管理问题&#x…

Elasticsearch:我们如何演化处理二进制文档格式

作者:来自 Elastic Sean Story 从二进制文件中提取内容是一个常见的用例。一些 PDF 文件可能非常庞大 — 考虑到几 GB 甚至更多。Elastic 在处理此类文档方面已经取得了长足的进步,今天,我们很高兴地介绍我们的新工具 —— 数据提取服务&…

SCI一区 | Matlab实现NGO-TCN-BiGRU-Attention北方苍鹰算法优化时间卷积双向门控循环单元融合注意力机制多变量时间序列预测

SCI一区 | Matlab实现NGO-TCN-BiGRU-Attention北方苍鹰算法优化时间卷积双向门控循环单元融合注意力机制多变量时间序列预测 目录 SCI一区 | Matlab实现NGO-TCN-BiGRU-Attention北方苍鹰算法优化时间卷积双向门控循环单元融合注意力机制多变量时间序列预测预测效果基本介绍模型…

解决JavaWeb中IDEA2023新版本无法创建Servlet的问题

出现问题:IDEA右键创建Servlet时,找不到选项 原因分析:IDEA的2023版的已经不支持Servlet了,如果还要使用的话,需要自己创建模板使用 创建模板 右击设置,选择(File and Code Templates&#x…

Selenium的简单防反爬和浏览器配置

# Selenium的简单使用:https://zhuanlan.zhihu.com/p/557463669 # 防反爬参考:https://blog.csdn.net/weixin_51368459/article/details/125462178 from selenium import webdriver from selenium.webdriver.edge.options import Options# 设置浏览器驱动…

UNIAPP(小程序)每十个文章中间一个广告

三十秒刷新一次广告 ad-intervals"30" <template><view style"margin: 30rpx;"><view class"" v-for"(item,index) in 100"><!-- 广告 --><view style"margin-bottom: 20rpx;" v-if"(inde…

vue3和vue2项目中如何根据不同的环境配置基地址?

在不同环境下取出的变量的值是不同的, 像这样的变量称为环境变量 为什么要使用环境变量呢? 开发环境生产环境下的接口地址有可能是不一样的&#xff0c;所以我们需要根据环境去配置不同的接口基地址 1、vue2环境变量配置 在根目录创建&#xff1a;.env.development和.env.p…

全栈的自我修养 ———— react中router入门+路由懒加载

router 下载router配置view创建目录配置index.js 下载router npm install react-router-dom配置view 如下将组件倒出 const Login () > {return <div>这是登陆</div> } export default Login创建目录 配置index.js React.lazy有路由懒加载的功能&#xff0…

LLMOps快速入门,轻松开发部署大语言模型

大家好&#xff0c;如今我们能够与ChatGPT进行轻松互动&#xff1a;只需输入提示&#xff0c;按下回车&#xff0c;就能迅速得到回应。然而&#xff0c;这个无缝互动的底层&#xff0c;是一系列复杂而有序的自动执行步骤&#xff0c;即大型语言模型运营&#xff08;LLMOps&…

SpringBoot快速入门笔记(4)

文章目录 一、Vue框架1、前端环境准备2、简介3、快速开始4、事件绑定 二、Vue组件化开发1、NPM2、Vue Cli3、组件化开发4、SayHello自定义组件5、Movie自定义组件 一、Vue框架 1、前端环境准备 编码工具&#xff1a;VSCode 依赖管理&#xff1a;NPM 项目构建&#xff1a;VueCl…

JDI LCD 驱动时序介绍

1. 引言 绝大多数 STM32 MCU 都可应用于图形界面&#xff0c;而且很多系列还内置图形硬件 LTDC&#xff0c;支持驱动 RGB 接口的 LCD。但是存在少数类型的 LCD&#xff0c;如 JDI 屏&#xff0c;除了 STM32L4P5 支持外&#xff0c;其它 MCU 只能根据屏的接口时序要求&#xff…

数学与人工智能:共舞于数字时代的奥秘

数学&#xff0c;这一源远流长的学科&#xff0c;长久以来一直为人类社会的发展与进步提供了坚实的基础。与此同时&#xff0c;随着科技的迅猛发展&#xff0c;人工智能这一新兴领域正逐渐改变着我们的生活方式。这两者之间&#xff0c;似乎存在着一种难以言喻的紧密联系。本文…

hbuilderX创建的uniapp项目转移到vscode

场景&#xff1a;一直使用hbuilderX开发的朋友想转移到vscode获取更好的TypeScript支持&#xff0c;所以想把整个项目目录拖到vscode进行开发&#xff0c;但发现运行不了&#xff0c;提示没有package.json等&#xff0c;并且不能执行pnpm命令 首先&#xff0c;我们先来看一下h…

软件测试(测试用例详解)(三)

1. 测试用例的概念 测试用例&#xff08;Test Case&#xff09;是为了实施测试而向被测试的系统提供的一组集合。 测试环境操作步骤测试数据预取结果 测试用例的评价标准&#xff1a; 用例表达清楚&#xff0c;无二义性。。用例可操作性强。用例的输入与输出明确。一条用例只有…

力扣---反转链表 II ***

给你单链表的头指针 head 和两个整数 left 和 right &#xff0c;其中 left < right 。请你反转从位置 left 到位置 right 的链表节点&#xff0c;返回 反转后的链表 。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5], left 2, right 4 输出&#xff1a;[1,4,3,…

【MATLAB】GA_BP神经网络时序预测算法

有意向获取代码&#xff0c;请转文末观看代码获取方式~ 1 基本定义 GA_BP神经网络时序预测算法是一种结合了遗传算法(GA)和反向传播(BP)神经网络的时序预测方法。它利用了遗传算法的全局搜索和优化能力&#xff0c;以及BP神经网络的学习和逼近能力&#xff0c;可以更有效地预…

Ubuntu中文输入法设置指南:从添加输入源到自定义设置的完整步骤

文章目录 Ubuntu设置中文输入法教程步骤1&#xff1a;打开“设置”应用程序步骤2&#xff1a;进入“区域与语言”设置步骤3&#xff1a;添加中文输入源步骤4&#xff1a;选择中文输入法步骤5&#xff1a;设置默认输入源&#xff08;可选&#xff09;步骤6&#xff1a;使用中文输…