(在 Mnova Lite 中不可用)
导入波谱参数 "功能允许 Mnova 用户将原始数据文件中的任何变量纳入参数表。此外,用户还可以创建 "参数模板",以便在所有处理过的波谱中获得相同的参数。在实现该功能之前,只有标准波谱参数可以包含在相应的表格中。
用户可以轻松添加、创建、删除或修改任何波谱参数,甚至创建模板,以便在任何处理过的波谱中获得相同的参数。
要自定义参数表,只需按照菜单操作即可:View/Parameters 并点击 "Customize(自定义)"图标,即可显示 "Customize Parameters(自定义参数)"对话框。

点击 "更多>>"按钮将显示 "当前频谱参数 "窗口,如下图所示。用户只需在 "文件/块 "框中选择所需的文件,即可从任何原始数据文件(procs、acqus、 title 等......)中获取任何参数(见下图):

在 "自定义参数 "对话框中,用户将看到一维和二维通用的 "实验参数模板"(上图中 的红色方框)(包含标题、起源、所有者、溶剂、温度等信息)和 "尺寸参数模板"(上 图中的红色方框)。尺寸参数模板"(上图中绿色方框)包含 "波谱仪频率"、"获取尺寸"、"波谱宽度 "等信息)。这两个部分的最后位置都有空白行,以便添加更多参数。
您可以从原始数据中轻松添加任何现有参数。首先,点击表格中 "模板 "列的相关单元格(如下截图中的第 25 个单元格),选择参数在 实验或尺寸参数模板中的位置。选中后,双击所需的参数(从 "当前频谱参数 "框中选取;下例中为 procpar)。这将把所选参数(如下截图中的 CF)添加到模板中。

现在我们来看看如何从 "parm.txt "文件(布鲁克公司)中添加标题:
1:选择参数在实验参数模板中的位置。
第二步: 在 "当前波谱参数 "组合框中选择 "parm.txt"。
第 3 步双击所需参数(本例中为 NAME)。
第 4 步点击 "OK(确定)"将参数添加到模板中。

然后,您将在参数表中看到标题:

最后,只需点击 "报告 "按钮(上图中红色突出显示),即可将参数表添加到频谱中。
您可以使用包含多行标题的第一行。为此,只需在参数 Title 模板下键入以下函数:=(function(aTitle){return aTitle.split("\n")[0];})(title())
这就是将 "简单 "参数添加到 "参数表 "的方法。不过,还有一些参数需要通过不同的程序从 "parm.txt "文件添加到表中。例如,一些名称相同的参数(如 2D 参数)可以写两次(如频谱频率 f1 和 f2)。此外,有些参数还有单位。parm.txt文件解析的语法可以处理这两种情况(既可以得到一个数字,也可以得到一个带单位的数 字,甚至只得到单位)。
请注意,"parm.txt "解析的语法是
parm.txt(PARAMNAME[;OCCURENCE;FIRST_WORD;NUMBER_OF_WORDS])
让我们通过一个实际例子来看看它是如何工作的,在这个例子中,我们希望包含 f1 和 f2 的频谱频率值。如下图所示,在parm.txt文件中,参数 "SF "有两个值(一个是 f2,另一个是 f1):

我们不能沿用前几页在参数表中插入标题的相同步骤,因为现在我们有两个名称相同(SF)的不同参数(一个用于 f2,另一个用于 f1)。
因此,我们需要使用parm.txt解析语法,在 "f2 模板 "单元格中键入:parm.txt(SF;1;1;1) 其中SF是参数名称,第一个数字("1")表示出现的顺序(在 parm.txt 文件中,f2 参数比 f1 参数出现得早)。第二个和第三个数字分别表示字符串的第一个字和字数。在本例中,参数有两个字:值 (500.1299707) 和单位 (MHz),但我们对获取单位不感兴趣,因此键入 (SF;1;1;1)。如果我们还想获得单位,则必须键入: (SF;1;1;2)。
在 "f1 模板 "单元格中,我们将键入:parm.txt(SF;2;1;1),因为 f1 的 SF 参数出现在第二个位置(在 f2 的 SF 值之后):

如下图所示,类似的程序还可用于包含 f2 和 f1 的 LB 参数:

这就是结果:

想象一下,有一个参数出现在另一个参数的中间。例如,NOESY 波谱(来自布鲁克公司)的 "混合时间 "参数;该参数以如下格式出现在 acqus 文件中:
##$D= (0..63)
3e-06 0.9643645 0 0 0 0 0 0 0 .06 0 0.03 2e-05 3e-06 0 0 0.0002 0 0 0.00025
1e-05 1e-05 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0
在这种情况下,您希望显示 D9,因此需要在参数模板列表中输入acqus($D[9]),如下图所示:

用户还可以通过双击表格并输入相应的参数名称(位于 "引号 "之间)和值来添加自己的参数。在下图中,我们在 "原始名称 "字段中手动添加了文本 "2018 年 1 月 15 日",并将 "日期 "作为 "可见名称"。

用户还可以输入等号,然后输入所需的公式(数字或参数),例如:=sum(a, b),或 =div(acqus($TD), 2),从而引入公式(脚本中提供)。请注意,公式区分大小写,应使用小写。
例如,默认情况下,获取的尺寸值是用 TD 值除以 2 得出的(因为 TD 是实点和虚点的总数),因此我们使用此模板进行计算=Utl.div(acqus($TD), 2)

但如果出于某种原因,您只想将 TD 值显示为 "获取的大小"(而不是将 TD 值除以 2),您可以将模板保留为:acqus($TD)
下面的示例显示了以秒为单位显示 "时间延迟 "的过程。首先,我们需要双击 "当前频谱参数 "列表中的所需参数,将其添加到 "参数模板 "中:

默认情况下,"时间延迟 "以毫秒为单位显示,因此我们需要将该值除以 1000 才能得到以秒为单位的值。因此,用户需要在 "参数模板 "中键入"=div(acqus($DE),1000)",以获得除数。这样,用户就可以在参数表中获得以秒为单位的 "时间延迟 "值,如下图所示:

要获得瓦里安数据集中的"实验时间"(通过将 "d1 "加上 "at " 并将结果乘以 "nt "获得) ,我们可以使用以下函数:
=(function(d1, at, nt){return (parseFloat(d1) + parseFloat(at))*parseFloat(nt);})(procpar(d1), procpar(at), procpar(nt))

如果用户移除 "可见 "列上的相应勾号,参数将在表格显示中隐藏。用户也可以从表格中删除任何参数,方法是选中每个参数并点击 "删除 "按钮。
恢复 "按钮用于恢复默认模板。点击 "保存模板 "图标,用户可以保存自己的模板。 .要加载模板,只需点击 "打开模板 "按钮 . 单击 "OK(确定)"后,模板将保存在注册表中,Mnova 将记住它以备将来使用。应用 "按钮用于直接查看参数表中任何更改的效果,而无需关闭 "自定义参数 "对话框。
您还可以使用脚本引擎从原始数据集的任何其他文件中解析任何参数。例如,下面的脚本可用于解析 audita.txt 文件中的 ICON-NMR 用户:
function iconNMRUser(aFilePath) {
"严格使用";
var newPath = aFilePath.replace(/\/g, "/")、
f, str, audita = "", re=/^\s*ICON-NMR User ID:\s+(.+)$/gm, result;
f = new File(newPath);
f.open(File.ReadOnly);
str = new TextStream(f);
audita = str.readAll();
f.close();
result = re.exec(audita);
if (result && result.length>1) {
return result[1];
}
return "";
}
要使用该脚本,请将其复制到硬盘中的一个文件夹中。接下来运行 Mnova,按照菜单 "文件/首选项/脚本",将该文件夹添加到脚本目录中:

接下来,重新启动 Mnova,加载 NMR 数据集,然后单击参数表的 "自定义 "按钮,添加以下模板的新参数:
=iconNMRUser(audita.txt(_FILEPATH_))

单击 "确定 "按钮,您会发现新参数已添加到您的表中:

另请参见:
脚本
|