The most common uses for constraints are to group \(\rm U_{iso}\) values with parameter equivalences and to constrain the sum of occupancies for shared sites, since it is only possible to quantify vacancies when multiple types of data are being used.
One other common place where constraints are used is on phase fractions, though this is completely optional. Note that the phase fractions are on an arbitrary scale as if all phase fractions were to be multiplied by a constant and the histogram scale factor was divided by that constant, there would be no change in the resulting pattern. Since phase abundance (mass or weight fractions) are determined from the phase fraction ratios, they too would be unchanged. It is common to constrain the total phase fraction to a constant (typically 1, but that number is arbitrary) and then refine all phase fractions and the scale factors. The reason this constraint is optional is because one can choose to vary all the phase fractions and not vary the scale factor. It is also possible to refine the scale factor and all but one phase fraction. This is what I typically do.
While these are typical uses of constraints, there are many other ways that constraints can be used. The tools that GSAS-II provides are very flexible and there are many possible ways they can be used to simplify models. This is often very important in obtaining a good fit with a chemically plausible model to powder diffraction data.
The one problem with constraints is that they are “baked” into the model. If you add a constraint, it becomes part of the model and there will be no indication that you have forced an assumption that is actually in conflict with the data. One important point to realize is that while the agreement between the computed powder diffraction pattern and the observations will always improve as more parameters are introduced, that improvement will be slight. That can be measured by the \(R_{wp}\) value, the reduced \(\chi ^2\) or the GOF. If constraints are reasonable, then removing them may result in the fitted parameters changing greatly and may result in an unstable refinement where all parameters cannot be refined, but it should not result in a significant change in the \(R_{wp}\) value. To use our example where the \(\rm U_{iso}\) values are constrained to the same value, if I drop the constraint from the model, I may see highly unrealistic values for individual \(\rm U_{iso}\) values, and I might have to refine only one \(\rm U_{iso}\) value at a time for the four O atoms, but if the \(R_{wp}\) value changes only by a small fraction then it has indicated that the data are insensitive to these individual \(\rm U_{iso}\) values, as we expected. The data are not able to help us distinguish between models that have realistic and unrealistic \(\rm U_{iso}\) values, so it makes sense to choose a simplified model that is reasonable. On the other hand, if having an unrealistic \(\rm U_{iso}\) value for any of the O atoms produces a significantly better fit to the data (which would significantly improve the \(R_{wp}\) value), then the data are in conflict with the constraint, and this likely means that there is something wrong. In this case, I would suspect oxygen vacancies in a site or perhaps an atom has been incorrectly assigned in the structure. In the next chapter we will look at restraints, which are an alternative way to force a model to follow our expectations. It is easier to see when a restraint is in conflict with the data.