design_primers.single: Design Primers for a Single Direction

View source: R/optimization_algo.R

design_primers.singleR Documentation

Design Primers for a Single Direction

Description

Designs primers for a single direction.

Usage

design_primers.single(
  template.df,
  sample.name,
  mode.directionality = c("fw", "rev"),
  settings,
  timeout,
  opti.algo,
  allowed.region.definition,
  init.algo,
  max.degen,
  conservation,
  target.temps,
  required.cvg,
  fw.primers = NULL,
  cur.results.loc = NULL,
  primer.df = NULL,
  updateProgress = NULL
)

Arguments

template.df

Template data frame with sequences for which primers shall be designed.

sample.name

Identifier for the templates.

mode.directionality

Template strands for which primers shall be designed. Primers can be designed either only for forward strands, only for reverse strands, or both strand directions.

settings

A DesignSettings object specifying the criteria for designing primers.

timeout

Timeout in seconds for the optimization with ILPs.

opti.algo

The algorithm to be used for solving the primer set covering problem.

allowed.region.definition

Definition of the target binding sites used for evaluating the coverage. If allowed.region.definition is "within", primers have to lie within the allowed binding region. If allowed.region.definition is "any", primers have to overlap with the allowed binding region. The default is that primers have to bind within the target binding region.

init.algo

The algorithm to be used for initializing primers. If init.algo is naive, then primers are constructed from substrings of the input template sequences. If init.algo is tree, phylogenetic trees are used to form degenerate primers whose degeneracy is bounded by max.degen.

max.degen

Maximal degeneracy of merged primers.

conservation

When using the tree-based primer initialization, consider only the conservation percentile of regions with the highest conservation.

target.temps

Target melting temperatures for optimized primer sets in Celsius. Only required when optimizing primers for both strand directions and one optimization was already performed.

required.cvg

The target ratio of covered template sequences. If the target ratio cannot be reached, the constraint settings are relaxed up to the relaxation limits.

fw.primers

List with optimized primer data frames corresponding to target.temps. Only required for optimizing both strand directions and only in the second optimization run in order to check for cross dimerization.

cur.results.loc

Directory for storing results of the primer design procedure.

primer.df

A data frame of evaluated primer candidates that can be optimized directly.

updateProgress

Shiny progress callback function.

Value

A list containing the results of the primer design procedure:

opti:

A Primers object representing the set of optimized primers.

all_results:

A list containing the optimal results for each sampled melting temperature range in terms of a Primers object in case that the melting_temp_diff constraint was active. Otherwise, all_results only has a single entry representing a primer set relating to an undefined melting temperature.

used_constraints:

A DesignSettings object with the (adjusted) analysis settings.

filtered:

A Primers object containing the primer candidates that passed the filtering procedure and which gave rise to the final optimal set.


matdoering/openPrimeR documentation built on July 4, 2025, 3:59 a.m.