
License: Salis Lab Promoter Calculator has a GPL-3.0 license. Please refer to the license for full terms.
This constraint is open source. Any third-party models, product names, or trademarks referenced are the property of their respective owners, and Proto is not affiliated with them.

Constraint contributors
dguo8412
Evaluate bacterial promoter strength using Salis Lab Promoter Calculator.
This constraint function uses the Salis Lab Promoter Calculator to predict
E. coli sigma-70 promoter strength. The calculator scans sequences for canonical
promoter elements (-10 and -35 boxes) and computes either binding free energy (dG)
or predicted transcription initiation rate (tx_rate).
The constraint returns penalty scores where lower values indicate stronger
promoters. The penalty mapping differs based on scoring type:
- dG scoring: Promoters with dG < -3.0 kcal/mol are strong (penalty 0.0-0.5)
- tx_rate scoring: Promoters with tx_rate > 10000 are strong (penalty 0.0-0.5)
API Reference
Configuration for promoter strength constraint using Salis Lab Promoter Calculator.This class defines configuration parameters for evaluating bacterial promoter
strength using the Salis Lab Promoter Calculator, a biophysical model that
predicts RNA polymerase binding affinity and transcription initiation
rates for sigma-70 promoters in E. coli. The calculator identifies promoter elements
(-10 and -35 boxes, spacer regions) and computes binding free energy (dG) and
predicted transcription rates.
The Salis Lab Promoter Calculator specifically models E. coli sigma-70 promoters.Penalty scores are mapped from raw predictions:
- For dG scoring: Strong promoters (dG < -3.0) get low penalties (0.0-0.5), moderate promoters (-3.0 to -1.5) get medium penalties (0.5-1.0), weak or unlikely promoters (> -1.5) get maximum penalty (1.0).
- For tx_rate scoring: Strong promoters (>10000) get low penalties (0.0-0.5), moderate promoters (3000-10000) get medium penalties (0.5-1.0), weak promoters (<3000) get maximum penalty (1.0).
boolean
default:"False"
If True, adds flanking nucleotides to short sequences to meet calculator length minimums
integer
default:"10"
Number of ‘A’ nucleotides to add on each end when add_context=True
integer
default:"8"
Number of threads for parallel processing of promoter calculations
boolean
default:"False"
If True, treat sequences as circular for promoter detection across ends
enum
default:"dG"
Score type to use: ‘dG’ (binding free energy) or ‘tx_rate’ (transcription rate). Defaults to ‘dG’.Options:
dG, tx_rateReturnsConstraintOutput
One result per sequence. Score ranges from 0.0 (strong
promoter) to 1.0 (weak/no promoter). metadata carries a single
promoter_strength dict:When promoter is found:penalty: Float penalty score (0.0-1.0)tx_rateORdG_rate: Float best promoter strength value (depending on scoring_type)raw_output: List of dictionaries with detailed promoter predictions including -10/-35 box positions, sequences, spacer length, and individual energy terms
penalty: Float 1.0 (maximum penalty)reason: String “no_promoter_found”raw_output: Empty list []
Usage
Evaluating promoter strength using dG scoring:python