![](https://secure.gravatar.com/avatar/cfe8857a24d561e8e700ab18e3ba7ec8.jpg?s=120&d=mm&r=g)
Friedrich Foerster wrote: > i spread imp throughout the world. even in exotic bavaria imp is > functional now. > here, i am trying ever more challenging things: i am using restraints > from different sources and want to weight these terms differently. for > that purpose, i want to employ a common strategy in x-ray: the different > restraints are weighted according to the inverse magnitude of the > corresponding derivatives. > Do you know a way how to get the derivatives of a particle with respect > to a specific restraint set in IMP. Particle.get_derivative uses the > full scoring function as i understand it...
It's not something that's immediately possible, as I see it, in IMP currently. But I suppose you could go through every *other* restraint and call set_is_active(false). Otherwise, if what you want to do is precisely that - weight the restraints by the derivatives - then perhaps we could add extra functionality to the DerivativeAccumulator to allow for that.
Ben
![](https://secure.gravatar.com/avatar/f242853dd4064d5ec26005ca96a58a64.jpg?s=120&d=mm&r=g)
On Jun 25, 2008, at 5:02 PM, Ben Webb wrote:
> Friedrich Foerster wrote: >> i spread imp throughout the world. even in exotic bavaria imp is >> functional now. >> here, i am trying ever more challenging things: i am using restraints >> from different sources and want to weight these terms differently. >> for >> that purpose, i want to employ a common strategy in x-ray: the >> different >> restraints are weighted according to the inverse magnitude of the >> corresponding derivatives. >> Do you know a way how to get the derivatives of a particle with >> respect >> to a specific restraint set in IMP. Particle.get_derivative uses the >> full scoring function as i understand it... > > It's not something that's immediately possible, as I see it, in IMP > currently. But I suppose you could go through every *other* restraint > and call set_is_active(false). Otherwise, if what you want to do is > precisely that - weight the restraints by the derivatives - then > perhaps > we could add extra functionality to the DerivativeAccumulator to allow > for that. To expand a little, it wouldn't be too hard to have the DA compute some metric on the derivatives it has been used to accumulate and then have a restraint set which looks at this value and uses it to compute its weight. The DA doesn't have any way of differentiating between different attributes though, in case that matters.
![](https://secure.gravatar.com/avatar/00e8a4fe04b75e38bbd3bff42d9eec80.jpg?s=120&d=mm&r=g)
thanks. i will employ ben's solution for the time being. if it my method is successful and of use for others i will bug you to find a more elegant and faster solution.
best
frido
On Jun 26, 2008, at 4:30 PM, Daniel Russel wrote:
> > On Jun 25, 2008, at 5:02 PM, Ben Webb wrote: > >> Friedrich Foerster wrote: >>> i spread imp throughout the world. even in exotic bavaria imp is >>> functional now. >>> here, i am trying ever more challenging things: i am using >>> restraints >>> from different sources and want to weight these terms differently. >>> for >>> that purpose, i want to employ a common strategy in x-ray: the >>> different >>> restraints are weighted according to the inverse magnitude of the >>> corresponding derivatives. >>> Do you know a way how to get the derivatives of a particle with >>> respect >>> to a specific restraint set in IMP. Particle.get_derivative uses the >>> full scoring function as i understand it... >> >> It's not something that's immediately possible, as I see it, in IMP >> currently. But I suppose you could go through every *other* restraint >> and call set_is_active(false). Otherwise, if what you want to do is >> precisely that - weight the restraints by the derivatives - then >> perhaps >> we could add extra functionality to the DerivativeAccumulator to >> allow >> for that. > To expand a little, it wouldn't be too hard to have the DA compute > some metric on the derivatives it has been used to accumulate and > then have a restraint set which looks at this value and uses it to > compute its weight. The DA doesn't have any way of differentiating > between different attributes though, in case that matters.
participants (3)
-
Ben Webb
-
Daniel Russel
-
Friedrich Foerster