pele.takestep.group#
Created on Jun 7, 2012
@author: vr274
- class pele.takestep.group.GroupSteps[source]
-
class GroupSteps(TakestepInterface):group several takestep objects
This class is a wrapper for takestep objects to group several takestep objects into one and perform all takesteps simultaneously.
- Parameters:
- steptakerslist of takestep objects
list of takestep objects to combine to a single one
- class pele.takestep.group.BlockMoves[source]
-
class BlockMoves(TakestepInterface):block based step taking
This class is a wrapper for takestep objects to group several takestep objects into one and perform takestep moves block wise, changing the takestep mechanism after a given amount of steps.
Takestep objects can be added with addBlock
step1 = RandomDisplacement() step2 = RandomRotation() step = BlockMoves() step.addBlock(100, step1) step.addBlock(100, step2)
- BlockMoves.addBlock()[source]
-
def addBlock(self, nsteps, takestep):add a takestep object
- Parameters:
- nsteps: integer
number of steps to perform this type of step
- takestep: takestep object
takestep object to call for this block
- class pele.takestep.group.Reseeding[source]
-
class Reseeding(TakestepInterface):Reseeding if energy did not improve
This class wraps 2 takestep objects, one for a regular takestep move, and a reseeding step which is executed if the energy of the basin hopping run did not improve after a given number of steps.
The energy is considered as improved if it is lower than the lowest energy found during the current cycle.
- Parameters:
- takesteptakestep object
takestep object to perform regular step taking
- reseedtakestep object
takestep object to do reseeding, e.g. generate a new random configuration
- maxnoimproveinteger
do 1 reseeding step if the energy did not improve after so many steps.