# OELoopBuilderOptions¶

Attention

This is a preliminary API until Spring 2021 and may be improved based on user feedback. It is currently available in C++ and Python.

class OELoopBuilderOptions


This class stores the optional parameter sets for building loops OEBuildLoops and OEBuildSingleLoop functions.

## Constructors¶

OELoopBuilderOptions()=default
OELoopBuilderOptions(const OELoopBuilderOptions &)=default


Default and copy constructor that constructs a OELoopBuilderOptions object.

## operator=¶

OELoopBuilderOptions &operator=(const OELoopBuilderOptions &)=default


Assignment operator.

## GetLoopDBFilename¶

std::string GetLoopDBFilename() const


Returns the filename of the loop database used when searching for compatible loops.

## GetUsePackingResidues¶

bool GetUsePackingResidues() const


Returns the boolean whether or not to use crystal packing residues during loop modeling (if available).

## GetCropLength¶

unsigned GetCropLength() const


Returns the number of residues on either side of a gap to remove, since these are known to sometimes be poorly resolved and therefore have configurations that make it difficult to build loops.

## GetTransformThreshold¶

unsigned GetTransformThreshold() const


Returns the number of loops from the database to transform, meaning mutate from their database sequence to target sequence, if they are not 100% sequence matching. Structures with 100% sequence match are not affected by this threshold.

## GetStrictProlineMatch¶

bool GetStrictProlineMatch() const


Returns the boolean of whether or not fuzzy sequence matches have to have proline residues in the correct position. This can be relevant since they have a different backbone conformation than other amino acid residues.

## GetConnectBufferDistance¶

double GetConnectBufferDistance() const


Returns the buffer distance allowed between the anchor atoms (connection points) when searching for fuzzy sequence matches.

## GetBackboneClashRejectThreshold¶

double GetBackboneClashRejectThreshold() const


Returns the threshold of clashing backbone atoms. If the clash level is above this threshold a loop from the database is rejected, and is not processed further.

## GetLoopClashRejectThreshold¶

double GetLoopClashRejectThreshold() const


Returns the threshold of clashing loops atoms. This threshold excludes already considered clashing backbone atoms. If the clash level is above this threshold a loop from the database is rejected, and is not processed further.

## GetOptimizationShell¶

double GetOptimizationShell() const


Returns the radius of atoms being considered when minimizing the loops in place. Since multiple loops are being optimized, it is the union of atoms inside the radius around each starting loop configuration that is considered. This allows comparison of the energies between each loop conformation as the systems are of identical size.

## GetOptimizationTolerance¶

double GetOptimizationTolerance() const


Returns the tolerance used by the optimizer.

## GetOptimizationStage1IterMultiplier¶

unsigned GetOptimizationStage1IterMultiplier() const


Returns the multiplier of optimization steps per residue in the loop used during the initial steepest descent optimization.

## GetOptimizationStage2IterMultiplier¶

unsigned GetOptimizationStage2IterMultiplier() const


Returns the multiplier of optimization steps per residue in the loop used during the secondary BFGS optimization.

## GetOptimizationUseSolventModel¶

bool GetOptimizationUseSolventModel() const


Returns whether or not to use a simplistic solvent model during the loop optimization.

## GetOptimizationInclSurfaceAreaTerm¶

bool GetOptimizationInclSurfaceAreaTerm() const


Returns whether or not to include the surface area term when scoring the loops after optimization.

## GetOptimizationMaxLoops¶

unsigned GetOptimizationMaxLoops() const


Returns the number of loops to optimize, the higher the number the longer the calculation will take, but also includes more structural diversity.

## GetAllowBuildDisulfideBridges¶

bool GetAllowBuildDisulfideBridges() const


Returns whether or not to allow building disulfide bridges between the loop and the protein if possible, requires cystine residues in proximity.

## GetSeqAlignMethod¶

unsigned GetSeqAlignMethod() const


Returns the sequence alignment method, from the OESeqAlignmentMethod namespace, used to compare the provided sequence and the structure for gaps.

## GetSeqAlignGapPenalty¶

int GetSeqAlignGapPenalty() const


Returns the sequence alignment gap penalty, used to compare the provided sequence and the structure for gaps with the OEGetSimpleAlignment function.

## GetSeqAlignExtendPenalty¶

unsigned GetSeqAlignExtendPenalty() const


Returns the sequence alignment extend penalty, used to compare the provided sequence and the structure for gaps with the OEGetSimpleAlignment function.

## SetLoopDBFilename¶

void SetLoopDBFilename(std::string filename)


Sets the filename of the loop database to use when searching for compatible loops.

## SetUsePackingResidues¶

void SetUsePackingResidues(bool usePackingResidues)


Sets whether or not to use crystal packing residues during loop modeling (if available).

## SetCropLength¶

void SetCropLength(unsigned cropLength)


Returns the number of residues on either side of a gap to remove, since these are known to sometimes be poorly resolved and therefore have configurations that make it difficult to build loops.

## SetTransformThreshold¶

void SetTransformThreshold(unsigned transformThreshold)


Sets the number of loops from the database to transform, meaning mutate from their database sequence to target sequence, if they are not 100% sequence matching. Structures with 100% sequence match are not affected by this threshold.

## SetStrictProlineMatch¶

void SetStrictProlineMatch(bool strictProline)


Sets whether or not fuzzy sequence matches have to have proline residues in the correct position. This can be relevant since they have a different backbone conformation than other amino acid residues.

## SetConnectBufferDistance¶

void SetConnectBufferDistance(double buffer)


Sets the buffer distance allowed between the anchor atoms (connection points) when searching for fuzzy sequence matches.

## SetBackboneClashRejectThreshold¶

void SetBackboneClashRejectThreshold(double bbClashThreshold)


Sets the threshold of clashing backbone atoms. If the clash level is above this threshold a loop from the database is rejected, and is not processed further.

## SetLoopClashRejectThreshold¶

void SetLoopClashRejectThreshold(double loopClashThreshold)


Sets the threshold of clashing loops atoms. This threshold excludes already considered clashing backbone atoms. If the clash level is above this threshold a loop from the database is rejected, and is not processed further.

## SetOptimizationShell¶

void SetOptimizationShell(double optimizationShellRadius)


Set the radius of atoms being considered when minimizing the loops in place. Since multiple loops are being optimized, it is the union of atoms inside the radius around each starting loop configuration that is considered. This allows comparison of the energies between each loop conformation as the systems are of identical size.

## SetOptimizationTolerance¶

void SetOptimizationTolerance(double optimizationTolerance)


Sets the tolerance used by the optimizer.

## SetOptimizationStage1IterMultiplier¶

void SetOptimizationStage1IterMultiplier(unsigned stage1multiplier)


Sets the multiplier of optimization steps per residue in the loop used during the initial steepest descent optimization.

## SetOptimizationStage2IterMultiplier¶

void SetOptimizationStage2IterMultiplier(unsigned stage2multiplier)


Sets the multiplier of optimization steps per residue in the loop used during the secondary BFGS optimization.

## SetOptimizationUseSolventModel¶

void SetOptimizationUseSolventModel(bool useSolventModel)


Sets whether or not to use a simplistic solvent model during the loop optimization.

## SetOptimizationInclSurfaceAreaTerm¶

void SetOptimizationInclSurfaceAreaTerm(bool useSATerm)


Sets whether or not to include the surface area term when scoring the loops after optimization.

## SetOptimizationMaxLoops¶

void SetOptimizationMaxLoops(unsigned maxOptLoops)


Sets the number of loops to optimize, the higher the number the longer the calculation will take, but also includes more structural diversity.

## SetAllowBuildDisulfideBridges¶

void SetAllowBuildDisulfideBridges(bool allowBuildDisulfideBridges)


Sets whether or not to allow building disulfide bridges between the loop and the protein if possible, requires cystine residues in proximity.

## SetSeqAlignMethod¶

unsigned SetSeqAlignMethod(unsigned seqAlignMethod)


Sets the sequence alignment method, from the OESeqAlignmentMethod namespace, used to compare the provided sequence and the structure for gaps.

## SetSeqAlignGapPenalty¶

void setSeqAlignGapPenalty(int gapPenalty)


Set the sequence alignment gap penalty, used to compare the provided sequence and the structure for gaps with the OEGetSimpleAlignment function.

## GetSeqAlignExtendPenalty¶

void SetSeqAlignExtendPenalty(int extendPenalty) const


Set the sequence alignment extend penalty, used to compare the provided sequence and the structure for gaps with the OEGetSimpleAlignment function.