in my eyes, a theoretically sound scale roughly by the number of
voxels, which is the amount of information. a fudge solution would
probably be a scale ~N, which i also did for the saxs restraint.
however, as the solution of scaling different kinds of restraints is
not really solved anyways, i do not quite see the point of putting a
pre-fixed solution, as it pretends to have found a solution for
something where it has actually not been found.
I agree that we aren't too a point where we can have a bulletproof
solution. However, given that the problem comes up again and again, it
seems reasonable to take people's experience so far and use it to
develop guidelines for how restraints should behave and rules of thumb
to provide better starting points for other users. In addition, the
more awareness of an issue like things permeates things, the less
likely it will be that someone is surprised. For example, if the docs
for the EM restraint say something about "The EM restraint should be
wrapped by the ScaledEMRestraint wrapper which scales the CC scaled by
the number of particles and a factor for X so as to bring it into
scale with the other restraints", then anyone who uses the EM
restraint will know to think about scaling.
As it is, people will, as Keren did, occasionally simply add
restraints to a Model without thinking about scaling. Or will change
their representation scale, and wonder why nothing works any more.
I suspect that we can get 80% of the way there (with something like
what I suggested), which should be good enough for many applications
and to keep a bunch of users happy.