技术背景

在分子动力学模拟过程中会遇到一些拓扑结构非常复杂的分子模型,所谓的复杂不仅仅是包含众多的原子,还有各种原子之间的成键关系与成键类型等。这时候就非常能够体现一个好的可视化软件的重要性了,这里我们介绍的VMD是一个业界非常常用、功能也非常强大的一款软件。

VMD的安装

首先访问VMD官方网站,找到适合自己本地OS和硬件系统的版本进行下载。这里我们本地是Ubuntu20.04的系统,所以下载了一个Linux通用的版本:



下载到本地之后,找到一个合适的文件夹进行解压:

dechin@ubuntu2004:~/projects/vmd$ tar -xvf vmd-1.9.4a51.bin.LINUXAMD64-CUDA102-OptiX650-OSPRay185.opengl.tar.gz

解压之后进入主目录,运行configure

dechin@ubuntu2004:~/projects/vmd/vmd-1.9.4a51$ ./configure
using configure.options: LINUXAMD64 OPENGL OPENGLPBUFFER FLTK TK ACTC CUDA IMD LIBSBALL XINERAMA XINPUT LIBOPTIX LIBOSPRAY LIBTACHYON LIBPNG ZLIB VRPN NETCDF COLVARS TCL PYTHON PTHREADS NUMPY SILENT ICC

最后进入src目录,执行make install完成安装:

dechin@ubuntu2004:~/projects/vmd/vmd-1.9.4a51$ cd src/
dechin@ubuntu2004:~/projects/vmd/vmd-1.9.4a51/src$ sudo make install
[sudo] dechin 的密码:
Info: /bin/csh shell not found, installing Bourne shell startup script instead
Make sure /usr/local/bin/vmd is in your path.
VMD installation complete. Enjoy!

安装成功后,在终端窗口中执行vmd会弹出两个窗口,一个用于显示加载的文件和配置:



另一个窗口用于显示输入分子模型的3D结构,如果没有输入任何分子模型数据的情况下,这个界面会展示一个一直旋转的VMD字样的模型:

VMD的使用

VMD的使用方法有很多中,tcl的语言也使得可以执行更高阶更灵活的操作,比如参考链接1中的操作就非常的华丽。但是这里我们仅仅为了可视化静态的3D分子模型,所以只介绍一些基本用法。首先我们需要在本地构建一个分子模型的文件,一般以.xyz结尾。文件的格式为:开头的分子数,第二行的标记,这里使用的是mol这种标记,后面的所有行数是标定每一个分子的具体三维坐标,也就是空间位置。这里直接使用了参考链接1中所给出的xyz文件:

dechin@ubuntu2004:~/projects/gitlab/dechin/src/vmd$ vim file.xyz

具体的file.xyz文件内容如下所示:

24
mol
C -1.615 -0.739 -3.043
C -0.076 -0.706 -3.045
H -1.963 -1.227 -3.929
H -1.959 -1.275 -2.183
C 0.469 -2.145 -3.087
H 0.268 -0.169 -3.905
H 0.272 -0.218 -2.159
H 1.539 -2.122 -3.089
H 0.126 -2.682 -2.227
H 0.122 -2.633 -3.974
C -2.160 0.701 -3.001
C -3.700 0.667 -2.999
H -1.817 1.237 -3.861
H -1.812 1.188 -2.114
C -4.245 2.107 -2.957
H -4.047 0.179 -3.885
H -4.043 0.131 -2.139
H -3.897 2.594 -2.070
H -3.901 2.643 -3.817
C -5.784 2.073 -2.955
O -6.394 1.131 -3.525
N -6.541 3.141 -2.286
H -7.407 2.773 -1.946
H -6.007 3.500 -1.521

保存后,直接运行vmd file.xyz即可弹出相关分子模型的可视化界面:



默认打开的3D分子模型是Line格式的,也就是都被抽象为线条:



此时可以点击界面上的Graphic->Representations,可以弹出一个表示格式的框:



Drawing Method下找到CPK模式,点击Apply即可应用到图层当中:



在这种模式下可以看到每个原子以及原子跟原子之间的成键关系,是非常常用的一个模式。

总结概要

本文重点介绍了VMD分子动力学模拟可视化软件的安装与基本使用方法,VMD是一款非常小而精致的可视化工具,在业界也备受推崇。如果只是用于做分子模型的展示,功能是完全足够的,如果要执行更多的操作,需要掌握tcl语言,当然这也是一个坑点。

版权声明

本文首发链接为:https://www.cnblogs.com/dechinphy/p/vmd.html

作者ID:DechinPhy

更多原著文章请参考:https://www.cnblogs.com/dechinphy/

参考链接

  1. https://www.ks.uiuc.edu/Research/vmd/current/ug/node4.html
  2. https://jerkwin.github.io/2020/03/25/VMD建模示例/

分子动力学模拟软件VMD的安装与使用的更多相关文章

  1. 增强采样软件PLUMED的安装与使用

    技术背景 增强采样(Enhanced Sampling)是一种在分子动力学模拟中常用的技术,其作用是帮助我们更加快速的在时间轴上找到尽可能多的体系结构及其对应的能量.比如一个氢气的燃烧反应,在中间过程 ...

  2. 网络运维必回的模拟器-GNS软件下载和安装

    网络运维必回的模拟器-GNS软件下载和安装 作者:尹正杰  版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.GNS简介 1>.什么是GNS GNS3是一款具有图形化界面可以运行在多平台( ...

  3. 发现护考上机考试的一个bug:附软件截图(模拟软件)

    目录: 一.文章主旨 二.问题发现的起因 三.bug(问题)描述 四.软件截图 五.我的思考 六.一点期盼 一.文章主旨: 2019年5月18.19.20日,又是一年一度的护资考试(上机考),考试前夕 ...

  4. 用JSON-server模拟REST API(一) 安装运行

    用JSON-server模拟REST API(一) 安装运行 在开发过程中,前后端不论是否分离,接口多半是滞后于页面开发的.所以建立一个REST风格的API接口,给前端页面提供虚拟的数据,是非常有必要 ...

  5. Ubuntu安装软件提示”需要安装不能信任的软件包”解决办法

    用 Ubuntu 安装输入法软件包时提示"需要安装不能信任的软件包","这个动作需要从没有授权的软件源来安装软件包",赋予权限执行仍然无法安装,上网查了一下,只 ...

  6. PfSense基于BSD的软件防火墙的安装、配置与应用

    PfSense基于BSD的软件防火墙的安装.配置与应用 PfSense是一个FreeBSD下的免费开源的防火墙和路由器软件,他为了在X86平台上面建立一个高集成性的防火墙项目,下面就为大家展示如何配置 ...

  7. 一些常用软件的静默安装参数(nsis,msi,InstallShield,Inno)

    打包的时候,经常需要安装一些其它的环境库,而又不想让用户繁锁的去选择,这时就需要静默安装,而不同的文件所加的参数了不一致,比如VS的环境库vcredist_x86.exe(这是32位的环境库)后面加/ ...

  8. RAMPS1.4 3D打印控制板:软件下载\连接\安装\测试

    RAMPS1.4 3D打印控制板:软件下载\连接\安装\测试 特别说明: 电源接反,电机驱动板接反将有可能烧毁芯片和电路,请再三确认后再进行通电. 如何使用: 1.需要用到的模块或器件: Arduin ...

  9. CentOS下下载软件,不安装的方法

    今天来说下在CentOS下下载软件,不安装的方法: 方法一:通过yum自带一个工具:yumdownloader[root@web1 ~]#  rpm -qa |grep yum-utils[root@ ...

随机推荐

  1. 使用当前主流的github管理项目代码(记我的第一次项目创建)

    先创建一个github的账号 网址:https://github.com/ 然后下载一个git工具并安装 网址:https://gitforwindows.org/ 下载安装注册完成后, 创建一个新的 ...

  2. Java概述与准备

    Java概述 Java语言背景介绍 Java之父:詹姆斯·高斯林(James Gosling)   java语言的三个版本: JavaSE: Java 语言的(标准版),用于桌面应用的开发,是其他两个 ...

  3. JS逆向-抠代码的第四天【手把手学会抠代码】

    今天是md5巩固项目,该项目比昨天的复杂一些,但方法思路是一样的. 今天的目标:https://www.webportal.top/ 打开网站,填入账号密码(密码项目以123456做测试).点击登录抓 ...

  4. Linux tar 使用笔记

    常用语法 打包和压缩包 仅打包不压缩:tar -cvf usr.tar /usr 将 /usr 目录打包为 usr.tar 打包并以 gz 格式压缩:tar -czvf usr.tar.gz /usr ...

  5. Ubuntu20.04linux内核(5.4.0版本)编译准备与实现过程-编译过程(2)

    前面因为博客园维修,所以内核编译过程一直没有发出来,现在把整个内核过程分享出来.本随笔给出内核的编译实现过程,在编译前需要参照我前面一篇随笔: Ubuntu20.04linux内核(5.4.0版本)编 ...

  6. 使用C# (.NET Core) 实现装饰模式 (Decorator Pattern) 并介绍 .NET/Core的Stream

    该文章综合了几本书的内容. 某咖啡店项目的解决方案 某咖啡店供应咖啡, 客户买咖啡的时候可以添加若干调味料, 最后要求算出总价钱. Beverage是所有咖啡饮料的抽象类, 里面的cost方法是抽象的 ...

  7. Mybatis日志源码探究

    一.项目搭建 1.pom.xml <dependencies> <dependency> <groupId>log4j</groupId> <ar ...

  8. 从网络请求过程看OkHttp拦截器

    前言 之前我们结合设计模式简单说了下OkHttp的大体流程,今天就继续说说它的核心部分--拦截器. 因为拦截器组成的链其实是完成了网络通信的整个流程,所以我们今天就从这个角度说说各拦截器的功能. 首先 ...

  9. python mac地址计算

    思路是10/16进制的转换和字符串的处理 开始造轮子 1.判断是否是mac地址 正则匹配是否符合条件 1 import re 2 3 def isMac(string): 4 preg = re.co ...

  10. 以Aliyun体验机为例,从零搭建LNMPR环境(下)

    使用云服务器搭建 Web 运行环境,尤其是搭建常见的 LNMPR(Linux+Nginx+MySQL+PHP+Redis) 环境,对于开发人员是必备的职场基本技能之一.在这里,借着搭建我的" ...