This command calculates and selects new restraints that are a spline approximation of the selected restraints of the specified type. The type is specified byform(see Section 5.3.1),feature(Section 5.3.1) andgroup(Table 6.1). It unselects the approximated restraints.

The restraint is approximated in a certain range only, determined differently for different mathematical forms. For example, the poly-Gaussian range is from to , where and are the minimal and maximal means of the basis pdfs, and and are their corresponding standard deviations.

The spline points are distributed evenly over this range with an interval ofspline_dx.spline_dxshould be equal to the scale of the peaks of the restraint that you want to approximate reliably. The value of the restraint beyond the range is determined by linear extrapolation using the first derivatives at the bounds.

If the x-range andspline_dxare such that the number of spline points would be less thanspline_min_points,spline_dxis decreased so that there arespline_min_pointsdefining the ``splined'' restraint.

Ifoutputis set to'SPLINE', then tables are also written out comparing each pair of original and splined restraints.

**Example:** See **Restraints.make()** command.