Skip to main content
Simulate TaqMan probe binding using nearest-neighbor thermodynamics.

Overview

The probe binding module calculates probe-template binding characteristics:
  • Probe Tm - Melting temperature using nearest-neighbor method
  • Binding Efficiency - Efficiency across temperature range
  • Position Analysis - Optimal probe placement within amplicon

Python API

simulate_probe_binding_api

from primerlab.api import simulate_probe_binding_api

result = simulate_probe_binding_api(
    probe_sequence="ATGCGATCGATCGATCGATCG",
    amplicon_sequence="...",  # Optional
    min_temp=55.0,
    max_temp=72.0,
)

print(f"Probe Tm: {result['probe_tm']}°C")
print(f"Optimal: {result['optimal_temp']}°C")
print(f"Grade: {result['grade']}")

Core Functions

from primerlab.core.qpcr import (
    calculate_probe_binding_tm,
    simulate_probe_binding,
    analyze_probe_position,
    optimize_probe_position,
)

# Calculate Tm
tm = calculate_probe_binding_tm("ATGCGATCGATCGATCGATCG")

# Full simulation
result = simulate_probe_binding("ATGCGATCGATCGATCGATCG")
print(f"Binding curve: {len(result.binding_curve)} points")

Probe Design Guidelines

TaqMan Probe Requirements

PropertyOptimalAcceptable
Length18-24 bp15-30 bp
Tm68-70°C65-72°C
GC%40-60%30-80%
5’ baseNot GAny

Tm Relationship

  • Probe Tm should be 8-10°C higher than primer Tm
  • Ensures probe binds before primers during annealing

5’ G Rule

Avoid G at the 5’ end of the probe:
  • G can quench FAM fluorescence even when free
  • Reduces signal-to-noise ratio

Output

ProbeBindingResult

@dataclass
class ProbeBindingResult:
    probe_sequence: str
    probe_tm: float
    binding_efficiency: float
    optimal_temp: float
    binding_curve: List[Dict]
    warnings: List[str]
    grade: str
    score: float

See Also