~~NOTOC~~
====== Box of Contributing Particles ======
----
With this option it is possible to include only some atoms of a configuration in the optimization. This only affects forces; energies and stresses will **ALWAYS** be calculated for the entire configuration.
To enable support for this feature add the ''--enable-contrib'' command line argument to the ''waf configure'' command. e.g.:
./waf configure -i pair -m tab --enable-contrib
----
Currently there are two different possibilities to specify the atoms - they have to be either in a box or a sphere.
All of the additional required coordinates have to be given in the [[config:main#Header|header]] of a configuration and can be different for different configurations.
Atoms created by periodic boundary conditions will never contribute, even if the box or sphere of contributing atoms extends beyond the original box.
===== Box =====
A box containing the contributing atoms can be defined by four vectors, given in the header of a configuration:
#B_O x y z
#B_A x y z
#B_B x y z
#B_C x y z
''B_O'' is the vector pointing to the origin of the box and ''B_A'', ''B_B'' and ''B_C'' are the three vectors spanning the box. There is no restriction on the orientation or size of this inner box.
You can only have one box of contributing particles per configuration. If you need more, include the configuration more often and add a different box each time.
===== Sphere =====
Only atoms inside the sphere will be contributing to the error sum and thus the optimization.
To add such a sphere to a configuration, add the following line to the header of a configuration:
#B_S x y z r
The first three numbers will be interpreted as the center of the sphere and r as the radius.
It is possible to add several spheres to a single configuration, simply add more ''#B_S'' lines to the configuration header.
===== Combinations =====
It is possible to combine a box and spheres, but the same restrictions apply as before. You can only have a single box but several spheres per configuration:
#B_S x y z r // Sphere 1
#B_S x y z r // Sphere 2
#B_S x y z r // Sphere 3
#B_O x y z // origin of box
#B_A x y z // vector A
#B_B x y z // vector B
#B_C x y z // vector C