................ SHORT DOC .............................................
CONE: Smallest enclosing cone or best fit cone calculation (with conicity index).
Reference:
Petitjean M.,
Analytical algorithms for ligand cone angles calculations.
Application to triphenylphosphine palladium complexes.
Compt. Rend. Chim., 2015, 18[6], 678-684 (see Appendix).
DOI 10.1016/j.crci.2015.04.004
mailto: petitjean.chiral@gmail.com
CONE computes the best cone of fixed apex fitting N points in E^d
from minimization of the sum of the squared distances of the
ending points of the N unit vectors to the surface of the cone.
When the dimension d=3, CONE optionnally computes the smallest cone
enclosing the N points (the convex hull computation is included).
CONE reads first the input file name.
Data sets are concatenated in the input file,
according to the following format:
For each dataset:
First line: 4 values can be entered:
1. The number of points M (M=1+N : apex plus N points).
2. The dimension d
3. The third value is the standard deviation of the isotropic
normal law to perturbate each of the N coordinates.
4. When d=3, an optional integer is read:
0: best fit cone calculation
1: smallest enclosing full cone calculation
2: smallest enclosing half cone calculation
N+1 next lines:
cartesian coordinates of the apex and of the N points
(allowed separators: space, comma, semi-colon, slash)
Examples of input datasets:
(no vertical alignment of the data is required):
5 3 0.d0 2
0.9 0.9 0.9
1. 1. 1.
1. 0. 0.
0. 1. 0.
0. 0. 1.
6 4 0.d0
0. 0. 0. 0.
1. 1. 1. 1.
1. 0. 0. 0.
0. 1. 0. 0.
0. 0. 1. 0.
0. 0. 0. 1.
Output: the axis and the angle of the cone, followed
either by the conicity index (best fit cone)
or by the list of the contact points (2 ou 3)
at the surface of the cone (smallest enclosing cone).
Remarks:
The conicity index is in [0;1], 0 meaning that the N points
lie at the surface of the cone.
Maximal input values: N=100000, D=100, line buffer: 255 characters
................ END SHORT DOC .........................................