4.13 不常使用的关键字

$\triangleright $ variable ordering_active

Meaning: 通过局部有序参数打开有偏见的变量算符。

Default: 1

Format:

1 : ordering_active

$\triangleright $ variable symmetrize

Meaning: 把所有结构转换为可以适应对称性的结晶学设置。

Default: 0

Format:

1 : symmetrize

$\triangleright $ variable valenceElectr

Meaning: 每种原子类型的价电子数。

Default: 所有原子的值都是常量,我们已经将它们制成了表,不需要特别设置。

Format:

% valenceElectr
2 6
% EndValenceElectr

$\triangleright $ variable percSliceShift

Meaning: 在所有维度内进行块移动(在遗传中用到)的概率, 1.0 代表 100%.

Default: 1.0

Format:

0.5 : percSliceShift

$\triangleright $ variable dynamicalBestHM

Meaning: 当keepBestHM为上限值时,设置在计算中存活的 最优结构的数量是否不同。可能的值(整数):0=没有突变;1和2=看注解

Default: 2

Format:

1 : dynamicalBestHM

注意: 如果你设置dynamicalBestHM=1,那么代码就会选择keepBestHM的 最低能量结构(没有重复结构,这可以定义为有低于用户定义的toleranceBestHM的指纹距离)。 如果dynamicalBestHM=2(我们的优先选择),在与bestFrac相一致的全部能量间隔内, 聚类算法恰好选择了keepBestHM的最大不同的结构,并且最佳toleranceBestHM值是 自动决定的——在保留最优结构记忆的同时促进了多样性的发展。

$\triangleright $ variable softMutOnly

Meaning: 仅由软模变异可以产生多少代。

Default: 0

Format:

% softMutOnly
1-5
% EndSoftOnly

注意: 在上面的例子中,仅由软模变异产生的代数可以达到5$^{th}$代(当然, 包括第一代)。注意根据软模变异,每个亲代产生两个软模变异突变体。你也可以在运行的 过程中给定经过软模变异的特殊的几代,例如,每10$^{th}$代软模变异一次,你可以这样写:

% softMutOnly
2 12 22 32 42
% EndSoftOnly

$\triangleright $ variable maxDistHeredity

Meaning: 给定参与遗传的结构之间的最大余弦距离。它指定了与该 结构能够匹配的能量面半径。

Default: 0.5

Format:

0.5 : maxDistHeredity

$\triangleright $ variable manyParents

Meaning: 明确是否应该要超过两片(或超过两个亲代结构)被用于遗传。 这对大体系来说是有用的。

可能的值 (整数):

0 — 仅用两个亲代,每个一个片段。

1 — 许多结构被用作亲代,每个一个片段。

2 — 两个结构被用于亲代,许多片段(用参数minSlicemaxSlice动态决定)可以从 每个亲代中独立选择。

3 — 两个结构被用于亲代,许多片段(用参数minSlicemaxSlice不断变化决定) 是从有特定设置的晶胞中切下来。这是适用于大体系的较好的选择。 例如:我们将两个结构切成近似相等厚度的薄片,然后从亲代1中选择偶数片, 从亲代2中选择奇数片,制成多层的“三明”或是“斑马”。

Default: 0

Format:

3 : manyParents

minSlice, maxSlice: 决定了切片的最小和最大厚度,单位为$\text {\r{A}}$, 他们将会从亲代中删掉来参加子代结构的产生。我们期望这些薄片足够薄,能够携带一些亲代 的信息(但是不是太薄,以至于对遗传没有影响)。这些参数的合适值分别大约是1和6 $\text {\r{A}}$

对于团簇,你可以直接给定参与遗传的亲代数(但是我们发现这几乎没有用):

$\triangleright $ variable numberparents

Meaning: 定义了团簇中遗传的亲代数。

Default: 2

Format:

2 : numberparents