[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [IMP-dev] Proposal: replace BasicScoreFuncParams with PairPotential




On Jan 4, 2008, at 11:59 AM, Ben Webb wrote:

Daniel Russel wrote:
Maybe some pseudocode
would elucidate this.
So lets look at evaluating an excluded volume potential for all nearby
pairs.
...

OK, looks reasonable, but could you show it with derivatives as well? I
want to see how you propose combining these.
Ummm, sure. I don't see how that complicates anything. Separate email.



If we decided we want to move to a realish Leonard Jones potential

The reason I chose a harmonic term for the example is because both the
mean and the standard deviation would have to be tweaked, and I don't
see how you propose to do that with your proposal.
I skipped changing the mean because you don't really have to. If the case if a repulsive potential, what you really want is a harmonic lower bound on the distance between the two spheres (not between their centers). So I passed the distance between the two spheres to the ScoreFunc instead of changing the mean.

My proposal has to be made more complicated if you want to change the standard deviation on a per-pair basis (rather than on a per-restraint basis), but I think if you are doing that you have moved beyond a general ScoreFunc into something more specific. We can always add subclasses of ScoreFunc which take extra parameters if needed (and the replacement for SphereDistanceScore could get the values for these parameters from the particles as it does with the radius).

(And it's odd that you say LJ isn't a simple function of distance,
because Modeller does have a 6-12 math form, so there's nothing to stop
you restraining an angle with a 6-12 form if you were sufficiently
inclined.)
What I meant is that the shape changes as you change the radius of the particles, it is not just a shift of the minimum. So you can't just shift the origin for computations as you can in the harmonic case. You could have a 6-12 ScoreFunc and pass it the ratio of the radii to the distance, but this would require (in my proposal) a different PairScoreFunction, or in the current model, a whole new restraint.