virtual-pcr-sim — Virtual PCR 시뮬레이션Lab
Wallace + SantaLucia NN + Owczarzy Mg²⁺-corrected Tm, cycle-by-cycle (1+E)^n amplification, gel band SVG, and Learning/Sandbox mode toggle (zero external libs, ko/en/ja).
Gene Auto-Search
20 popular gene fixture + NCBI Entrez direct search. Auto-fills primer / amplicon / anneal temp.
Note: NCBI search needs NCBI_API_KEY in .env.local + Vercel env. 20 popular genes work without a key.
⚠ Warning — Ta > Tm+5℃. Primer binding failure (learning mode). Lower Ta to Tm-5℃.
Ta - Tm = 9.1 ℃ / binding eff = 0%
Amplicon Exponential Growth — (plateau applied)
Gel Electrophoresis
Key terms (hover) — 24
Tool Guide
Definition
virtual-pcr-sim is a free PCR simulator that renders the three-step cycle (Denature 95°C / Anneal Tm−5°C / Extend 72°C) as a node graph with cycle-by-cycle (1+E)^n amplification and gel band SVG. Full Tm stack — Wallace 1979 (≤14 nt) 2(A+T)+4(G+C), SantaLucia 1998 nearest-neighbour ΔH/ΔS + Na⁺ correction, Owczarzy 2004/2008 Mg²⁺ correction — all self-implemented in JS. Learning mode (default, guard box on Tm violation) and Sandbox mode (multi-band free exploration) toggle supports both undergrad baseline learning and free inference (zero npm).
Purpose
(1) NEB Tm Calculator / Thermo Primer Analyzer — English-only and not visual → ko/en/ja interactive entry (2) Undergraduate textbooks teach only Wallace → step up to NN + Mg²⁺ correction (3) Abstract PCR cycles → gel band visualisation makes amplicon exponentiation intuitive (4) Learning mode = Tm−5°C guard box (undergrad baseline) / Sandbox mode = Ta=40°C violations free for multi-band exploration (self-directed inference) (5) HDR efficiency 5-38% slider (Chen 2017 + eLife 2014) — donor concentration baseline (6) Zero external libs
How to Use
① Pick a mode in the top-right toggle — 🎓 Learning (default, guard box) / 🔬 Sandbox (free exploration, multi-band) ② Enter the primer sequence (5-50 nt) + Mg²⁺ concentration slider (0-5 mM) + Na⁺ concentration ③ Tm auto-calculated — Wallace (≤14 nt) / SantaLucia NN (≥14 nt) + Owczarzy Mg²⁺ correction ΔTm shown ④ Enter the anneal temperature → recommended Tm−5°C. Learning mode: violation triggers binding failure + ko/en/ja guard box / Sandbox mode: non-specific multi-band, no warning (self-directed) ⑤ Extension Efficiency E slider (0.6-0.95, Henegariu 1997) + cycle count (10/20/30) → amplicon (1+E)^n auto ⑥ Gel band SVG (cycle 0/10/20/30 comparison) — in-house SVG `<rect>` ⑦ Hover 18 academic terms (Tm / primer dimer / GC clamp / Taq / annealing / amplicon / Wallace / nearest-neighbor / SantaLucia / Owczarzy, etc.) ⑧ sessionStorage `bp_pcr_mode` saves mode + `bp_intro_shown_virtual-pcr-sim` IntroAnimation
Examples
Example 1) Wallace 20 nt ACGTACGTACGTACGTACGT → Tm = 2·10 + 4·10 = 60°C (undergrad baseline) Example 2) SantaLucia NN 24 nt GC=12 → matches R primer3 ±0.5°C Example 3) Owczarzy Mg²⁺ 1.5 mM correction → ΔTm > 0 (Mg²⁺ ↑ ⇒ Tm ↑) Example 4) Learning mode + Anneal Tm+5°C violation → binding failure + ko/en/ja guard box Example 5) Sandbox mode + Ta=40°C → non-specific multi-band, no warning (self-directed inference) Example 6) 30 cycles + E=0.95 + initial 100 → amplicon ≈ (1.95)^30 × 100 ≈ 4.3 × 10¹¹ (exponentiation verified)