VMD使用

1 删除已经加载到窗口的分子

第一种:在“ VMD main”中选定该分子,然后在“VMD Main”中,Molecule——Delete Molecule

第二种:在“VMD Main”中,Extentions——Tk Console,然后在“VMD TkConsole"中,输入 mol delete all,然后按回车,就删掉啦。

2 显示原子名称,键长,键角,二面角。

一开始在VMD中打开一个分字,将鼠标放到openGL Display中,鼠标还是一个箭头。

如何在open GL中pick一个原子:在VMD Main中,选择pick,此时在open GL中,鼠标会变成一个十字,这时可以通过单击选择原子,点一下,在命令行中就会显示:Info) User Pick: mol0 atom: 1249。(注意:pick时,Mouse必须在Rotate Mode下。

在openGL中标记原子,键长以及键角二面角等:在VMD Main中,Mouse——Lable然后选就可以了。(长度单位是A,角度是度)

3 同时加载两个分子时,如何用不同的颜色显示显示了俩份子?尤其当两个分子形状相似,有较大重叠的时候。

(1)将两个分子同时加载到VMD中。

(2)在VMD Main中,Graphics-----representations中,通过调整selected molecules,将两个分子的coloring methods,都修改为Molecule。

(3)在VMD Main中,Grapics---Colors---categories中,改为Molecule,然后分别在Names中选择不同的分子,将它们的颜色改了。

4 如何创建不同的Rep,并用不同的形式表示出来。

(1)点击Creat Rep,会创建出一个和现有的一模一样的的。

(2)接下来,让阴影放在新建的Rep上,在Selected Atoms这块删掉all,输入新的。例如,可以输入resname HEM;    resname SO4 CO; 或者输入resid 93 64 等等,输完以后记得按enter,不然不生效。

(3)分别修改各自的Drawing Methods, 例如resname HEM 可以用Licorice,   resname SO4 CO可以用VDW,   resid 93 64可以用CPK。

5 显示蛋白的结构,并按照二级结构显色。

(1)加载进去蛋白之后,在Graphical Representations中,将Selected atom改为backbone,按enter,这时候除了蛋白骨架外的所有蛋白都会消失。

(2)在绘图方法中选择NewCartoon,然后在着色方法中(coloring methods)选择二级结构,按照二级结构对骨架进行显色。

6 如何保存高清图片?(渲染图像)

(1)File---Render...,打开File Render Controls,然后将Render the current scene using:选为Tachyon,下边的两个文本框都是默认值。

(2)点击Start Rendering,此时在工作目录中会多出一个vmdscene.dat.tga的文件。

7 关于Graphics里边的Representations里的Selected atoms,可以这样描述:

(1)某个残基周围10A内的原子:先创建一个Rep,然后输入 within 10 of resid 94

        这样子选出了距离这个残基周围10A范围内的原子。

(2)x>5   选出了所有X坐标大于5的原子

(3)mass>12 and mass<14  选出了所有质量大于12而且小于14的原子。

8 计算两个分子的rmsd

先将两个分子加载到VMD中,例如两个分子的ID分别为0和1

然后打开TKConsole,输入:

set sel1 [atomselect 0 "backbone"]

set sel2 [atomselect 1 "backbone"]

measure rmsd $sel1 $sel2

计算0和1两个分子骨架的rmsd

 

 

### 如何在 MATLAB 中使用 VMD(变分模态分解) VMD 是一种信号处理技术,用于将复杂信号分解成若干个本征模态函数(IMF)。通过该方法可以提取信号中的不同频率成分。MATLAB 提供了一个实现 VMD 的工具箱,可以从指定链接下载并安装到本地环境。 #### 下载与安装 要使用 VMD,在 MATLAB 中需先从 MathWorks File Exchange 页面下载对应的文件包[^1]。解压后将其路径添加至 MATLAB 路径列表中: ```matlab addpath('VMD-code'); % 将 'VMD-code' 替换为实际解压后的目录名 savepath; % 保存更改以便下次启动时自动加载 ``` #### 参数说明 VMD 函数的核心参数包括输入信号 `f` 和两个主要控制变量:K 表示期望分离出来的模式数量;α 则是一个正则化参数,影响各模式间的带宽约束程度。其他可选参数如 τ、DC、init 和 tol 可进一步调整算法行为。 #### 实现指南及实例 下面展示一段简单的代码来演示如何调用 VMD 并分析结果: ```matlab % 输入信号定义 fs = 10e3; % 采样率 t = (0:1/fs:1); % 时间向量 frequencies = [50, 200]; % 组成复合波形的两个基础频率 signal = sin(2*pi*frequencies(1)*t) + sin(2*pi*frequencies(2)*t); % 设置 VMD 参数 alpha = 2000; % 正则化参数 tau = 0; % 偏差容忍度 K = 2; % 预期分解得到的 IMF 数目 DC = 0; % 是否去除直流偏移 init = 1; % 初始化方式选择 tol = 1e-7; % 收敛精度阈值 % 执行 VMD 分解 [u, u_hat, omega] = vmd(signal, alpha, tau, K, DC, init, tol); % 结果可视化 figure; for i = 1:K subplot(K+1, 1, i); plot(t, u(i,:)); title(['Mode ', num2str(i)]); end subplot(K+1, 1, K+1); plot(t, signal); title('Original Signal'); ``` 上述脚本创建了一段由两组正弦波叠加而成的人工信号,并应用 VMD 方法对其进行分解。最终绘图展示了原始数据以及每种模式下的重构部分。 #### 性能评估 为了验证分解效果的好坏,可以通过比较重建误差或者观察频谱特性等方式来进行定量评价。例如计算总能量保留比例或均方根误差(RMSE): ```matlab reconstructed_signal = sum(u, 1)'; RMSE = sqrt(mean((signal - reconstructed_signal).^2)); disp(['Reconstruction RMSE: ', num2str(RMSE)]); ``` 此片段衡量了原序列与基于所有 IMFs 合成的新版本之间的差异大小。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值