diff --git a/frontend/textbooks/physics_10_ch6.html b/frontend/textbooks/physics_10_ch6.html index 8ce6010..61f577f 100644 --- a/frontend/textbooks/physics_10_ch6.html +++ b/frontend/textbooks/physics_10_ch6.html @@ -1413,52 +1413,1022 @@ function build_p35(){ function build_p36(){ const box = document.getElementById('p36-body'); let html = ''; - html += makeCard('theory', "Ток в газах. Плазма", "§36", ` -

Ток в газах. Плазма — этот параграф в разработке (Phase 1+).

-

Здесь появятся: теория, формулы, разобранные примеры и 3–4 интерактива в стиле «алгебры 11» — таблицы, симуляции, ползунки, drag-and-drop и автопроверяемые тренажёры.

-

- Phase 0: создан скелет учебника. Phase 6+: наполнение этого § содержанием по учебнику «Физика 10» (Беларусь, 2019). -

+ + /* THEORY 1 — Ионизация газа */ + html += makeCard('theory', "Ионизация газа", "§36", ` +

В нормальных условиях газы — диэлектрики: молекулы электрически нейтральны, свободных зарядов нет.

+

Ионизация — процесс, при котором атом или молекула теряет электрон, превращаясь в положительный ион. В газе образуются:

+ +

Причины ионизации:

+ +

Ионизованный газ проводит ток — носителями заряда служат ионы и электроны.

+

Рекомбинация — обратный процесс: ион $+$ электрон $\\to$ нейтральный атом. Без поддержки ионизатора в обычном газе она быстро прекращает ток.

`); + + /* THEORY 2 — Виды разрядов */ + html += makeCard('rule', "Виды газовых разрядов", "§36", ` +

Несамостоятельный разряд: ток в газе поддерживается только при действии внешнего ионизатора (УФ-лампа, нагрев, радиация). При его удалении ток быстро прекращается из-за рекомбинации.

+

Самостоятельный разряд: ионизация поддерживается самим током — электроны, разогнанные полем, выбивают новые электроны (электронная лавина). Газ светится.

+

Четыре основных вида самостоятельных разрядов:

+ +

Запомни: молния $\\Rightarrow$ искровой, лампа дневного света $\\Rightarrow$ тлеющий, сварка $\\Rightarrow$ дуговой, провода ЛЭП $\\Rightarrow$ коронный.

+ `); + + /* THEORY 3 — Плазма */ + html += makeCard('example', "Плазма — четвёртое состояние вещества", "§36", ` +

Плазма — это четвёртое агрегатное состояние вещества: ионизованный газ с приблизительно равными концентрациями положительных ионов и электронов.

+

В целом плазма электрически квазинейтральна (нейтральна в среднем), но содержит огромное число свободных зарядов.

+

Свойства плазмы:

+ +

Где встречается плазма:

+ +

Удивительно: плазма — самое распространённое состояние видимого вещества во Вселенной — более $99\\%$!

+ `); + + /* INTERACTIVE 1 — Виды разрядов (галерея) */ + html += `
+
ИНТЕРАКТИВ 1
Виды разрядов в газах
+
Пролистай 4 типа разрядов — у каждого свой механизм и характерное применение.
+
+ +
+
+ +
+
+
`; + + /* INTERACTIVE 2 — Плазма и температура */ + html += `
+
ИНТЕРАКТИВ 2
Плазма: степень ионизации
+
При нагреве газа доля ионизованных атомов растёт. При $T \\gtrsim 10^4$ К — почти полная плазма.
+
+ +
+
+ +
+
+
`; + + /* INTERACTIVE 3 — Какой это разряд? */ + html += `
+
ИНТЕРАКТИВ 3
Какой это разряд?
+
Тлеющий — низкое давление и трубки. Дуговой — раскалённые электроды. Искровой — мгновенный пробой. Коронный — острия и провода ЛЭП.
+
Задача 1 / 6Очки: 0 / 6
+
+
+
+
+
`; + + /* INTERACTIVE 4 — Тренажёр плазмы */ + html += `
+
ИНТЕРАКТИВ 4
Тренажёр: газы и плазма
+
5 задач с выбором ответа. Введи номер правильного варианта.
+
Задача 1 / 5Очки: 0 / 5
+
+
+ + +
+
+
+
`; + html += secNav('p35', 'p37'); html += readButton('p36'); + box.innerHTML = html; renderMath(box); + + /* IV1 — Виды разрядов (галерея) */ + (function(){ + const svg = document.getElementById('p36-iv1-svg'); + const out = document.getElementById('p36-iv1-out'); + const NN = document.getElementById('p36-iv1-N'), NL = document.getElementById('p36-iv1-NL'); + const W = 420, H = 240; + const TYPES = [ + { + name:'Несамостоятельный разряд', + desc:'Газ в трубке проводит ток только при действии внешнего ионизатора (УФ-лампа, рентген, нагрев). Уберёшь источник — ток прекратится.', + color:'#0891b2', glow:'#bae6fd' + }, + { + name:'Тлеющий разряд', + desc:'Низкое давление. Холодные электроды. Тонкое розовое или зелёное свечение. Лампы дневного света, неоновая реклама. $U \\sim$ сотни В.', + color:'#9333ea', glow:'#e9d5ff' + }, + { + name:'Дуговой разряд', + desc:'Раскалённые электроды. Яркая дуга между ними при больших токах. Сварка, прожекторы. $I$ от десятков ампер.', + color:'#f59e0b', glow:'#fef3c7' + }, + { + name:'Искровой разряд', + desc:'Мгновенный пробой газа при очень большом напряжении. Молния ($U \\sim 10^9$ В, $I \\sim 10^5$ А), свеча зажигания.', + color:'#dc2626', glow:'#fecaca' + } + ]; + let seen = new Set(), _done = false; + + function draw(){ + const n = +NN.value; + NL.textContent = n + ' / 4'; + const t = TYPES[n-1]; + seen.add(n); + let g = ''; + g += ''; + // Заголовок + g += ''+t.name+''; + + if(n === 1){ + // ванна газа + УФ источник сверху + g += ''; + // электроды + g += ''; + g += ''; + g += ''; + g += '+'; + // УФ-лампа + g += ''; + g += 'УФ-ионизатор'; + for(let k=0; k<7; k++){ + const x = 175 + k*12; + g += ''; + } + // несколько ионов и электронов + for(let k=0; k<5; k++){ + const x = 130 + k*45, y = 130 + (k%2)*30; + g += ''; + g += '+'; + } + for(let k=0; k<5; k++){ + const x = 145 + k*45, y = 160 + (k%2)*15; + g += ''; + g += ''; + } + } else if(n === 2){ + // тлеющий — длинная трубка + g += ''; + g += ''; + // электроды + g += ''; + g += ''; + // свечение + for(let k=0; k<20; k++){ + const x = 90 + k*14; + g += ''; + } + g += 'Газоразрядная трубка (низкое $p$)'; + g += 'Лампа дневного света'; + } else if(n === 3){ + // дуговой — два электрода + яркая дуга + g += ''; + // электроды + g += ''; + g += ''; + // дуга (изогнутая) + g += ''; + g += ''; + // лучи + for(let k=0; k<6; k++){ + const ang = -Math.PI/2 + (k-2.5)*0.25; + const x2 = 210 + Math.cos(ang)*60, y2 = 95 + Math.sin(ang)*30; + g += ''; + } + g += 'Электрическая дуга'; + g += 'сварка, прожекторы'; + } else if(n === 4){ + // искровой — резкая ломаная между точкой и пластиной + g += ''; + // верхняя пластина (туча) + g += ''; + g += 'Туча (−)'; + // молния + g += ''; + g += ''; + // земля + g += ''; + g += 'Земля (+)'; + g += 'молния — искровой разряд'; + } + + svg.innerHTML = g; + out.innerHTML = ''+t.name+'. '+t.desc; + renderMath(out); + + if(!_done && seen.size >= 4){ _done = true; addXp(15, 'p36-iv1'); bumpProgress('p36', 20); } + } + NN.addEventListener('input', draw); + draw(); + })(); + + /* IV2 — Плазма и температура */ + (function(){ + const svg = document.getElementById('p36-iv2-svg'); + const out = document.getElementById('p36-iv2-out'); + const TT = document.getElementById('p36-iv2-T'), TL = document.getElementById('p36-iv2-TL'); + const W = 380, H = 260; + let seen = new Set(), _done = false; + + function alpha(T){ + // эмпирически: доля ионизации растёт с T + const x = (T - 1000) / (100000 - 1000); + return Math.max(0, Math.min(1, Math.pow(x, 0.5))); + } + + function draw(){ + const T = +TT.value; + TL.textContent = T; + const a = alpha(T); + const N = 36; // частиц + const Ni = Math.round(N * a); // ионизованных пар + const Na = N - Ni; + + let g = ''; + g += ''; + g += ''; + g += 'Объём газа при $T = '+T+'$ К'; + + // нейтральные молекулы (зелёные) + let placed = 0; + for(let r=0; r<6 && placed'; + } else { + // ионизированная пара: + ион и - электрон рядом + g += ''; + g += '+'; + g += ''; + } + placed++; + } + } + + // легенда + g += ''; + g += 'нейтр. атомы'; + g += ''; + g += 'ионы (+)'; + g += ''; + g += 'электроны'; + + svg.innerHTML = g; + const pct = (a*100).toFixed(0); + let label = 'слабая ионизация (газ)'; + if(a > 0.3) label = 'частично ионизованный газ'; + if(a > 0.6) label = 'плазма'; + if(a > 0.9) label = 'полностью ионизованная плазма'; + out.innerHTML = '$T = '+T+'$ К $\\Rightarrow$ степень ионизации $\\alpha \\approx '+pct+'\\%$ — '+label+'.'; + renderMath(out); + + seen.add(Math.floor(T/20000)); + if(!_done && seen.size >= 3){ _done = true; addXp(15, 'p36-iv2'); bumpProgress('p36', 20); } + } + TT.addEventListener('input', draw); + draw(); + })(); + + /* IV3 — Какой разряд? */ + (function(){ + const OPTS = ['Тлеющий', 'Дуговой', 'Искровой', 'Коронный']; + const Q = [ + { q:'Лампа дневного света в кабинете…', ans:0, why:'Тлеющий разряд при низком давлении в стеклянной трубке.' }, + { q:'Сварочный аппарат: яркая дуга между электродами…', ans:1, why:'Дуговой разряд с раскалёнными электродами.' }, + { q:'Молния во время грозы…', ans:2, why:'Искровой разряд — мгновенный пробой воздуха.' }, + { q:'Слабое свечение и «гудение» вокруг проводов ЛЭП…', ans:3, why:'Коронный разряд у тонких проводов высокого напряжения.' }, + { q:'Неоновая реклама в витрине магазина…', ans:0, why:'Тлеющий разряд в трубке с неоном при низком давлении.' }, + { q:'Свеча зажигания в двигателе авто…', ans:2, why:'Искровой разряд между электродами свечи поджигает топливо.' } + ]; + let i = 0, score = 0; + const qEl = document.getElementById('p36-iv3-q'); + const oEl = document.getElementById('p36-iv3-opts'); + const fb = document.getElementById('p36-iv3-fb'); + const iEl = document.getElementById('p36-iv3-i'); + const sEl = document.getElementById('p36-iv3-s'); + + function show(){ + if(i >= Q.length){ + qEl.innerHTML = 'Готово! Результат: '+score+' / '+Q.length; + oEl.innerHTML = ''; + if(score === Q.length){ addXp(15, 'p36-iv3'); bumpProgress('p36', 25); } + else if(score >= 4){ addXp(8, 'p36-iv3'); bumpProgress('p36', 15); } + return; + } + iEl.textContent = (i+1); + sEl.textContent = score; + qEl.innerHTML = Q[i].q; + oEl.innerHTML = OPTS.map((t,k) => '').join(''); + fb.style.display = 'none'; + renderMath(qEl); + oEl.querySelectorAll('button').forEach(b => { + b.addEventListener('click', () => { + const v = +b.dataset.v; + if(v === Q[i].ans){ score++; feedback(fb, true, '✓ Верно! '+Q[i].why+' Дальше ▶'); } + else feedback(fb, false, '✗ Верно: '+OPTS[Q[i].ans]+'. '+Q[i].why+' Дальше ▶'); + sEl.textContent = score; + oEl.querySelectorAll('button').forEach(x => x.disabled = true); + i++; + setTimeout(show, 1900); + }); + }); + } + document.getElementById('p36-iv3-restart').addEventListener('click', () => { i = 0; score = 0; show(); }); + show(); + })(); + + /* IV4 — Тренажёр плазмы */ + (function(){ + const Q = [ + { q:'Плазма — это:
1 — четвёртое агрегатное состояние вещества,
2 — жидкость,
3 — твёрдое тело.', ans:1, why:'Плазма — ионизованный газ, выделяемый в отдельное (4-е) состояние вещества.' }, + { q:'Что светится в люминесцентных лампах?
1 — раскалённый металл,
2 — плазма (ионизованный газ),
3 — твёрдый люминофор без газа.', ans:2, why:'В трубке тлеющий разряд возбуждает атомы — плазма излучает УФ, а люминофор переизлучает свет.' }, + { q:'Самое распространённое состояние материи во Вселенной:
1 — твёрдое,
2 — жидкое,
3 — газ,
4 — плазма.', ans:4, why:'Звёзды состоят из плазмы — это $>99\\%$ видимой материи.' }, + { q:'Молния — это разряд какого типа?
1 — тлеющий,
2 — искровой,
3 — дуговой.', ans:2, why:'Молния — мгновенный искровой разряд (плазменный канал длиной до $3$ км).' }, + { q:'При ионизации газа атомы:
1 — притягивают дополнительные ядра,
2 — теряют только нейтроны,
3 — теряют электроны и становятся положительными ионами.', ans:3, why:'Атом теряет электрон $\\Rightarrow$ ион (+) и свободный электрон.' } + ]; + let i = 0, score = 0; + const qEl = document.getElementById('p36-iv4-q'); + const fb = document.getElementById('p36-iv4-fb'); + const iEl = document.getElementById('p36-iv4-i'); + const sEl = document.getElementById('p36-iv4-s'); + const inp = document.getElementById('p36-iv4-inp'); + const bGo = document.getElementById('p36-iv4-go'); + + function show(){ + if(i >= Q.length){ + qEl.innerHTML = 'Готово! Результат: '+score+' / '+Q.length; + inp.disabled = true; bGo.disabled = true; + if(score === Q.length){ addXp(15, 'p36-iv4'); bumpProgress('p36', 25); } + else if(score >= 3){ addXp(8, 'p36-iv4'); bumpProgress('p36', 15); } + return; + } + iEl.textContent = (i+1); + sEl.textContent = score; + qEl.innerHTML = Q[i].q; + fb.style.display = 'none'; + inp.value = ''; inp.disabled = false; bGo.disabled = false; inp.focus(); + renderMath(qEl); + } + function check(){ + if(inp.disabled) return; + const v = parseInt(inp.value, 10); + if(!isFinite(v)){ feedback(fb, false, 'Введи номер ответа (число).'); return; } + if(v === Q[i].ans){ score++; feedback(fb, true, '✓ Верно! '+Q[i].why+' Дальше ▶'); } + else feedback(fb, false, '✗ Верно: '+Q[i].ans+'. '+Q[i].why+' Дальше ▶'); + sEl.textContent = score; + inp.disabled = true; bGo.disabled = true; + i++; + setTimeout(show, 1900); + } + bGo.addEventListener('click', check); + inp.addEventListener('keydown', e => { if(e.key==='Enter') check(); }); + document.getElementById('p36-iv4-restart').addEventListener('click', () => { i = 0; score = 0; inp.disabled=false; bGo.disabled=false; show(); }); + show(); + })(); + wireReadBtn('p36'); } function build_p37(){ const box = document.getElementById('p37-body'); let html = ''; - html += makeCard('theory', "Ток в полупроводниках", "§37", ` -

Ток в полупроводниках — этот параграф в разработке (Phase 1+).

-

Здесь появятся: теория, формулы, разобранные примеры и 3–4 интерактива в стиле «алгебры 11» — таблицы, симуляции, ползунки, drag-and-drop и автопроверяемые тренажёры.

-

- Phase 0: создан скелет учебника. Phase 6+: наполнение этого § содержанием по учебнику «Физика 10» (Беларусь, 2019). -

+ + /* THEORY 1 — Собственная проводимость */ + html += makeCard('theory', "Полупроводники. Собственная проводимость", "§37", ` +

Полупроводники — материалы с проводимостью между металлами и диэлектриками: $\\rho \\sim 10^{-4}-10^4$ Ом$\\cdot$м.

+

Главные представители: кремний (Si), германий (Ge), арсенид галлия (GaAs).

+

Собственная проводимость (в чистом полупроводнике без примесей):

+
    +
  • При $T = 0$ К — все электроны связаны, свободных носителей нет;
  • +
  • При нагреве — часть электронов вырывается из ковалентных связей, оставляя дырку (отсутствие электрона);
  • +
  • Получаются 2 типа носителей: электроны ($-$) и дырки ($+$).
  • +
+

Дырка ведёт себя как положительная частица: когда соседний электрон занимает её место, дырка «переходит» туда, откуда пришёл электрон.

+

Важно — в отличие от металлов: с ростом температуры проводимость полупроводника растёт (появляется больше носителей), а сопротивление падает.

`); + + /* THEORY 2 — Примесная проводимость */ + html += makeCard('rule', "Примесная проводимость: n-тип и p-тип", "§37", ` +

Добавление микроскопических количеств примесей (концентрация $\\sim 10^{-6}$–$10^{-9}$) резко меняет проводимость и определяет тип основных носителей.

+ +

n-тип (от англ. negative)

+

Добавляется донорная примесь — атомы с лишним электроном относительно кремния. Примеры: фосфор (P), мышьяк (As), сурьма (Sb).

+
    +
  • Основные носители: электроны ($-$);
  • +
  • Неосновные: немного дырок (от собственной проводимости).
  • +
+ +

p-тип (от англ. positive)

+

Добавляется акцепторная примесь — атомы с недостатком электрона. Примеры: бор (B), индий (In), галлий (Ga).

+
    +
  • Основные носители: дырки ($+$);
  • +
  • Неосновные: немного электронов.
  • +
+ +

Запомни: донор $\\to$ n-тип (электроны), акцептор $\\to$ p-тип (дырки). Концентрации примесей крошечные, но влияние огромное — на этом стоит вся электроника.

+ `); + + /* THEORY 3 — p-n переход */ + html += makeCard('example', "p-n переход и диод", "§37", ` +

p-n переход — контакт между p- и n-областями в одном кристалле полупроводника.

+

В области контакта:

+
    +
  • Электроны диффундируют из n-области в p-область;
  • +
  • Дырки — наоборот, из p в n;
  • +
  • На границе возникает запирающий слой с электрическим полем от n к p;
  • +
  • Когда диффузия уравновешена этим полем — устанавливается равновесие.
  • +
+ +

Прямое смещение

+

$+$ источника подключают к p-области, $-$ к n:

+
    +
  • Внешнее поле направлено против запирающего;
  • +
  • Запирающий слой сужается;
  • +
  • Через переход идёт большой ток.
  • +
+ +

Обратное смещение

+

$+$ источника к n-области, $-$ к p:

+
    +
  • Внешнее поле усиливает запирающее;
  • +
  • Запирающий слой расширяется;
  • +
  • Ток почти не течёт (только малый ток неосновных носителей).
  • +
+ +

p-n переход — это полупроводниковый диод: пропускает ток в одну сторону и не пропускает в другую.

+

На основе p-n переходов сделаны:

+
    +
  • Диоды — выпрямление переменного тока;
  • +
  • Транзисторы — усиление и переключение сигналов;
  • +
  • Светодиоды (LED): излучают свет при рекомбинации электронов и дырок;
  • +
  • Солнечные батареи: преобразуют свет в электричество;
  • +
  • Микросхемы и процессоры: миллиарды транзисторов на одном кристалле.
  • +
+ `); + + /* INTERACTIVE 1 — p-n переход: прямое и обратное смещение */ + html += `
+
ИНТЕРАКТИВ 1
p-n переход: прямое и обратное смещение
+
$U > 0$ — прямое смещение ($+$ к p): ток течёт. $U < 0$ — обратное: ток почти нулевой. Слева p-область (дырки), справа n-область (электроны).
+
+ +
+
+ +
+
+
`; + + /* INTERACTIVE 2 — n-тип vs p-тип */ + html += `
+
ИНТЕРАКТИВ 2
Примеси: n-тип vs p-тип
+
Кремниевая решётка $+$ один атом примеси. P (фосфор) — донор $\\to$ лишний электрон. B (бор) — акцептор $\\to$ дырка.
+
+ +
+
+ +
+
+
`; + + /* INTERACTIVE 3 — Что за полупроводник? */ + html += `
+
ИНТЕРАКТИВ 3
Что это за полупроводник?
+
Чистый Si/Ge — собственный. P, As, Sb — доноры (n-тип). B, In, Ga — акцепторы (p-тип).
+
Задача 1 / 6Очки: 0 / 6
+
+
+ +
+
`; + + /* INTERACTIVE 4 — Тренажёр */ + html += `
+
ИНТЕРАКТИВ 4
Тренажёр: полупроводники
+
5 задач с выбором ответа. Введи номер правильного варианта.
+
Задача 1 / 5Очки: 0 / 5
+
+
+ + +
+ +
+
`; + html += secNav('p36', 'final6'); html += readButton('p37'); + box.innerHTML = html; renderMath(box); + + /* IV1 — p-n переход */ + (function(){ + const svg = document.getElementById('p37-iv1-svg'); + const out = document.getElementById('p37-iv1-out'); + const UU = document.getElementById('p37-iv1-U'), UL = document.getElementById('p37-iv1-UL'); + const W = 480, H = 260; + let seen = new Set(), _done = false; + + function draw(){ + const U = +UU.value; + UL.textContent = U.toFixed(1); + + // ширина запирающего слоя + let dep = 60; // нейтральная + if(U > 0) dep = Math.max(8, 60 - U*10); // сужается + else dep = 60 - U*8; // расширяется (U<0 → -U>0) + + // ток: ~ 0 при U<0, экспоненциальный рост при U>0 + let I = 0; + if(U > 0.3) I = Math.min(1, (Math.exp(U*0.9) - 1)/30); + else if(U > 0) I = U * 0.05; + else I = -0.01 * (1 - Math.exp(U*0.3)); + + let g = ''; + g += ''; + + // подложка + const x0 = 70, x1 = 410, y0 = 60, y1 = 180; + const midX = (x0+x1)/2; + const depX1 = midX - dep/2, depX2 = midX + dep/2; + + // p-область (синяя/розовая) + g += ''; + // n-область + g += ''; + // запирающий слой + g += ''; + + // подписи + g += 'p-область'; + g += 'дырки (+)'; + g += 'n-область'; + g += 'электроны (−)'; + + // носители: дырки в p + for(let k=0; k<8; k++){ + const px = x0 + 18 + k*(midX-x0-30)/7; + const py = y0 + 18 + (k%2)*(y1-y0-36); + if(px > depX1 - 2) continue; + g += ''; + g += '+'; + } + // электроны в n + for(let k=0; k<8; k++){ + const px = midX + 18 + k*(x1-midX-30)/7; + const py = y0 + 18 + (k%2)*(y1-y0-36); + if(px < depX2 + 2) continue; + g += ''; + g += ''; + } + + // источник снизу — клеммы + const polP = (U >= 0) ? '+' : '−'; + const polN = (U >= 0) ? '−' : '+'; + g += ''+polP+''; + g += ''+polN+''; + + // стрелка тока + if(I > 0.02){ + g += PHYS.drawArrow(midX-40, 232, midX+40, 232, '#16a34a', 2.2, 9); + g += 'ток течёт'; + } else if(U < -0.5){ + g += 'ток ≈ 0 (заперт)'; + } else { + g += 'равновесие'; + } + + // мини-ВАХ внизу + const vx0 = 30, vy0 = 240; + g += 'I'; + svg.innerHTML = g; + + let txt; + if(U > 0.3) txt = 'Прямое смещение: $U = '+U.toFixed(1)+'$ В, ток течёт (запирающий слой сужен).'; + else if(U < -0.3) txt = 'Обратное смещение: $U = '+U.toFixed(1)+'$ В, ток ≈ 0 (запирающий слой расширен).'; + else txt = '$U \\approx 0$: равновесие, тока почти нет.'; + out.innerHTML = txt; + renderMath(out); + + seen.add(U > 0.3 ? 'fwd' : (U < -0.3 ? 'rev' : 'zero')); + if(!_done && seen.size >= 3){ _done = true; addXp(15, 'p37-iv1'); bumpProgress('p37', 25); } + } + UU.addEventListener('input', draw); + draw(); + })(); + + /* IV2 — n-тип vs p-тип */ + (function(){ + const svg = document.getElementById('p37-iv2-svg'); + const out = document.getElementById('p37-iv2-out'); + const NN = document.getElementById('p37-iv2-N'), NL = document.getElementById('p37-iv2-NL'); + const W = 380, H = 260; + const TYPES = [ + { label:'нет (чистый Si)', tag:'Собственная проводимость: только тепловые пары электрон-дырка.' }, + { label:'P (фосфор) — донор', tag:'n-тип: атом P даёт лишний электрон. Основные носители — электроны.' }, + { label:'B (бор) — акцептор', tag:'p-тип: атом B создаёт дырку. Основные носители — дырки.' } + ]; + let seen = new Set(), _done = false; + + function draw(){ + const n = +NN.value; + NL.innerHTML = TYPES[n].label; + + let g = ''; + g += ''; + // решётка кремния + g += 'Кристаллическая решётка Si'; + const cols = 6, rows = 4; + const cellW = 50, cellH = 42; + const ox = (W - cols*cellW)/2, oy = 40; + // узлы решётки — атомы Si + for(let r=0; r'; + if(r < rows-1) g += ''; + } + } + // атомы + for(let r=0; r'; + g += ''+label+''; + } + } + // свободный электрон или дырка рядом с примесью + if(n === 1){ + const x = ox + 3*cellW + cellW/2, y = oy + 1*cellH + cellH/2; + g += ''; + g += ''; + g += 'лишний е'; + } + if(n === 2){ + const x = ox + 3*cellW + cellW/2, y = oy + 1*cellH + cellH/2; + g += ''; + g += '+'; + g += 'дырка'; + } + + // легенда + g += 'Тип: '+TYPES[n].label+''; + + svg.innerHTML = g; + out.innerHTML = TYPES[n].tag; + renderMath(out); + + seen.add(n); + if(!_done && seen.size >= 3){ _done = true; addXp(15, 'p37-iv2'); bumpProgress('p37', 20); } + } + NN.addEventListener('input', draw); + draw(); + })(); + + /* IV3 — Что за полупроводник? */ + (function(){ + const OPTS = ['n-тип', 'p-тип', 'Собственный']; + const Q = [ + { q:'Чистый кристалл кремния (без примесей)…', ans:2, why:'Собственная проводимость: только тепловые пары электрон-дырка.' }, + { q:'Si $+$ фосфор (P) — донор…', ans:0, why:'P даёт лишний электронn-тип.' }, + { q:'Si $+$ бор (B) — акцептор…', ans:1, why:'B создаёт дыркуp-тип.' }, + { q:'Ge $+$ мышьяк (As)…', ans:0, why:'As — донор (V группа), даёт лишний электрон → n-тип.' }, + { q:'Si $+$ индий (In)…', ans:1, why:'In — акцептор (III группа), создаёт дырку → p-тип.' }, + { q:'Чистый кристалл германия (без примесей)…', ans:2, why:'Собственная проводимость — оба типа носителей в равной концентрации.' } + ]; + let i = 0, score = 0; + const qEl = document.getElementById('p37-iv3-q'); + const oEl = document.getElementById('p37-iv3-opts'); + const fb = document.getElementById('p37-iv3-fb'); + const iEl = document.getElementById('p37-iv3-i'); + const sEl = document.getElementById('p37-iv3-s'); + + function show(){ + if(i >= Q.length){ + qEl.innerHTML = 'Готово! Результат: '+score+' / '+Q.length; + oEl.innerHTML = ''; + if(score === Q.length){ addXp(15, 'p37-iv3'); bumpProgress('p37', 25); } + else if(score >= 4){ addXp(8, 'p37-iv3'); bumpProgress('p37', 15); } + return; + } + iEl.textContent = (i+1); + sEl.textContent = score; + qEl.innerHTML = Q[i].q; + oEl.innerHTML = OPTS.map((t,k) => '').join(''); + fb.style.display = 'none'; + renderMath(qEl); + oEl.querySelectorAll('button').forEach(b => { + b.addEventListener('click', () => { + const v = +b.dataset.v; + if(v === Q[i].ans){ score++; feedback(fb, true, '✓ Верно! '+Q[i].why+' Дальше ▶'); } + else feedback(fb, false, '✗ Верно: '+OPTS[Q[i].ans]+'. '+Q[i].why+' Дальше ▶'); + sEl.textContent = score; + oEl.querySelectorAll('button').forEach(x => x.disabled = true); + i++; + setTimeout(show, 1900); + }); + }); + } + document.getElementById('p37-iv3-restart').addEventListener('click', () => { i = 0; score = 0; show(); }); + show(); + })(); + + /* IV4 — Тренажёр полупроводников */ + (function(){ + const Q = [ + { q:'В p-типе основные носители заряда:
1 — электроны,
2 — дырки,
3 — положительные ионы.', ans:2, why:'p-тип создан акцепторной примесью — основные носители дырки.' }, + { q:'В n-типе основные носители заряда:
1 — электроны,
2 — дырки.', ans:1, why:'Донорная примесь дала электроны — они и основные.' }, + { q:'При прямом смещении p-n перехода ток:
1 — течёт,
2 — не течёт.', ans:1, why:'$+$ к p, $-$ к n: запирающий слой сужается, ток течёт.' }, + { q:'Полупроводниковый диод пропускает ток:
1 — в обе стороны,
2 — только в одну сторону.', ans:2, why:'В этом и смысл диода — однонаправленная проводимость.' }, + { q:'При повышении температуры сопротивление полупроводника:
1 — уменьшается,
2 — увеличивается.', ans:1, why:'Появляется больше носителей $\\Rightarrow$ сопротивление падает (в отличие от металлов).' } + ]; + let i = 0, score = 0; + const qEl = document.getElementById('p37-iv4-q'); + const fb = document.getElementById('p37-iv4-fb'); + const iEl = document.getElementById('p37-iv4-i'); + const sEl = document.getElementById('p37-iv4-s'); + const inp = document.getElementById('p37-iv4-inp'); + const bGo = document.getElementById('p37-iv4-go'); + + function show(){ + if(i >= Q.length){ + qEl.innerHTML = 'Готово! Результат: '+score+' / '+Q.length; + inp.disabled = true; bGo.disabled = true; + if(score === Q.length){ addXp(15, 'p37-iv4'); bumpProgress('p37', 25); } + else if(score >= 3){ addXp(8, 'p37-iv4'); bumpProgress('p37', 15); } + return; + } + iEl.textContent = (i+1); + sEl.textContent = score; + qEl.innerHTML = Q[i].q; + fb.style.display = 'none'; + inp.value = ''; inp.disabled = false; bGo.disabled = false; inp.focus(); + renderMath(qEl); + } + function check(){ + if(inp.disabled) return; + const v = parseInt(inp.value, 10); + if(!isFinite(v)){ feedback(fb, false, 'Введи номер ответа (число).'); return; } + if(v === Q[i].ans){ score++; feedback(fb, true, '✓ Верно! '+Q[i].why+' Дальше ▶'); } + else feedback(fb, false, '✗ Верно: '+Q[i].ans+'. '+Q[i].why+' Дальше ▶'); + sEl.textContent = score; + inp.disabled = true; bGo.disabled = true; + i++; + setTimeout(show, 1900); + } + bGo.addEventListener('click', check); + inp.addEventListener('keydown', e => { if(e.key==='Enter') check(); }); + document.getElementById('p37-iv4-restart').addEventListener('click', () => { i = 0; score = 0; inp.disabled=false; bGo.disabled=false; show(); }); + show(); + })(); + wireReadBtn('p37'); } function build_final6(){ const box = document.getElementById('final6-body'); let html = ''; - html += makeCard('theory', "Финал главы 6", "★", ` -

Финал главы 6 — этот параграф в разработке (Phase 1+).

-

Здесь появятся: теория, формулы, разобранные примеры и 3–4 интерактива в стиле «алгебры 11» — таблицы, симуляции, ползунки, drag-and-drop и автопроверяемые тренажёры.

-

- Phase 0: создан скелет учебника. Phase 6+: наполнение этого § содержанием по учебнику «Физика 10» (Беларусь, 2019). -

- `); + + /* Часть А — Шпаргалка главы (4 mini-карточки) */ + const SHEET = [ + { t:'§ 34 · Металлы', icon:'', + body:'Носители — электроны ($\\sim 10^{29}$/м$^3$). $R = \\rho L/S$. $\\rho(t) = \\rho_0(1 + \\alpha t)$. Сверхпроводимость при $T < T_c$.' }, + { t:'§ 35 · Электролиты', icon:'', + body:'Носители — ионы. Закон Фарадея: $m = MIt/(Fn)$. $F = 96\\,500$ Кл/моль. Электролиз, гальваностегия.' }, + { t:'§ 36 · Газы и плазма', icon:'', + body:'Ионизация. Разряды: тлеющий, дуговой, искровой, коронный. Плазма — 4-е состояние, $>99\\%$ вещества Вселенной.' }, + { t:'§ 37 · Полупроводники', icon:'', + body:'Электроны + дырки. n-тип (донор P), p-тип (акцептор B). p-n переход — диод. $R$ падает с $T$.' }, + ]; + + html += `
+
+ ${ICONS.theory} + Шпаргалка главы 6 — Ток в различных средах + Итог +
+
+

Ключевые формулы и идеи четырёх параграфов главы — повтори перед битвой с боссами.

+
+ ${SHEET.map(s => `
+
+ ${s.icon} +
${s.t}
+
+
${s.body}
+
`).join('')} +
+
+
`; + + /* Часть Б — 5 боссов intro */ + html += `
+
+ ${ICONS.rule} + Боссы главы 6 + 5 +
+
+

5 интегрированных задач по §§34–37. За каждого побеждённого босса: +10 XP, +18% к прогрессу. Победишь всех — ачивка «Мастер токов» и +50 XP бонус.

+

Допуск $\\pm 5\\%$. Боссы 3–5 требуют целочисленный номер варианта.

+
+
`; + + html += '
'; + + html += `
+
Прогресс по боссам
+
0 / 5 боссов побеждено
+
+
+
+ +
`; + html += secNav('p37', null); - html += readButton('final6'); + box.innerHTML = html; renderMath(box); - wireReadBtn('final6'); + + /* Боссы */ + const BOSSES = [ + { + n:1, color:'#0ea5e9', + title:'Страж Медной Жилы', + tag:'§ 34', + q:'Медный провод длиной $L = 50$ м, сечение $S = 1$ мм$^2 = 10^{-6}$ м$^2$, $\\rho = 1{,}7 \\cdot 10^{-8}$ Ом$\\cdot$м. Найди $R$ в Ом.', + ans:0.85, tol:0.05, + hint:'$R = \\rho L/S = 1{,}7\\cdot 10^{-8} \\cdot 50 / 10^{-6} = 0{,}85$ Ом.' + }, + { + n:2, color:'#10b981', + title:'Хранитель Фарадея', + tag:'§ 35', + q:'Электролиз меди ($M = 64$ г/моль, $n = 2$), $I = 2$ А, $t = 1$ ч $= 3600$ с, $F = 96\\,500$ Кл/моль. Найди массу выделившейся меди в граммах.', + ans:2.39, tol:0.1, + hint:'$m = MIt/(Fn) = 64\\cdot 2 \\cdot 3600 / (96\\,500 \\cdot 2) \\approx 2{,}39$ г.' + }, + { + n:3, color:'#f59e0b', + title:'Повелитель Разрядов', + tag:'§ 36', + q:'Молния во время грозы — это разряд какого типа?
1 — тлеющий, 2 — дуговой, 3 — искровой, 4 — коронный.', + ans:3, tol:0.1, + hint:'Молния — мгновенный искровой разряд (плазменный канал длиной до 3 км).' + }, + { + n:4, color:'#7c3aed', + title:'Властелин p-n Перехода', + tag:'§ 37', + q:'При прямом смещении p-n перехода ток через диод:
1 — течёт, 2 — не течёт.', + ans:1, tol:0.1, + hint:'$+$ к p-области, $-$ к n: запирающий слой сужается, ток течёт.' + }, + { + n:5, color:'#dc2626', + title:'Магистр Токов', + tag:'§§ 34–37', + q:'В каком из этих материалов проводимость увеличивается при нагреве?
1 — металл, 2 — полупроводник, 3 — сверхпроводник в области $T < T_c$.', + ans:2, tol:0.1, + hint:'Только в полупроводниках сопротивление падает (а проводимость растёт) с ростом $T$ — появляются новые электронно-дырочные пары.' + }, + ]; + + const cont = document.getElementById('ch6-bosses-container'); + const STATE_KEY = 'physics10_ch6_bosses'; + const BOSS_STATE = (function(){ + try{ const s = localStorage.getItem(STATE_KEY); if(s){ const p = JSON.parse(s); if(Array.isArray(p) && p.length === BOSSES.length) return p; } }catch(e){} + return BOSSES.map(()=>({defeated:false})); + })(); + function saveBosses(){ try{ localStorage.setItem(STATE_KEY, JSON.stringify(BOSS_STATE)); }catch(e){} } + + cont.innerHTML = BOSSES.map((b)=>{ + return '
' + +'
' + +'' + +'
Босс '+b.n+': '+b.title+'
' + +'
'+b.tag+'
' + +'
' + +'
'+b.q+'
' + +'
' + +'ответ =' + +'' + +'' + +'' + +'
' + +'' + +'
'; + }).join(''); + renderMath(cont); + + function refreshOverall(){ + const won = BOSS_STATE.filter(s => s.defeated).length; + const txt = document.getElementById('ch6-boss-overall'); + const fill = document.getElementById('ch6-boss-overall-fill'); + if(txt) txt.textContent = won + ' / ' + BOSSES.length + ' боссов побеждено'; + if(fill) fill.style.width = (won * 100 / BOSSES.length) + '%'; + if(won >= BOSSES.length){ + const reward = document.getElementById('ch6-final-reward'); + if(reward && reward.style.display === 'none'){ + reward.style.display = 'block'; + if(!STATE.achievements.has('ch6_done')){ + achievement('ch6_done','Мастер токов'); + addXp(50, 'ch6-bonus'); + bumpProgress('final6', 30); + if(window.confetti){ try{ confetti(); }catch(e){} } + } + } + } + } + + BOSSES.forEach((b, idx)=>{ + const card = document.getElementById('boss6-'+b.n+'-card'); + const goBtn = document.getElementById('boss6-'+b.n+'-go'); + const hintBtn = document.getElementById('boss6-'+b.n+'-hint'); + const ansInp = document.getElementById('boss6-'+b.n+'-ans'); + if(BOSS_STATE[idx].defeated){ + card.style.background = 'linear-gradient(135deg,var(--sec-acc-soft),var(--pri-soft))'; + card.classList.add('glow'); + goBtn.disabled = true; goBtn.style.opacity = .55; goBtn.textContent = '✓ Повержен'; + ansInp.disabled = true; + } + goBtn.addEventListener('click', ()=>{ + if(BOSS_STATE[idx].defeated) return; + const fb = document.getElementById('boss6-'+b.n+'-fb'); + const raw = ansInp.value.replace(',', '.'); + const val = parseFloat(raw); + if(isNaN(val)){ feedback(fb, false, '✗ Введи число.'); return; } + const tol = (typeof b.tol === 'number') ? b.tol : Math.max(0.05 * Math.abs(b.ans), 0.05); + if(Math.abs(val - b.ans) < tol + 0.001){ + BOSS_STATE[idx].defeated = true; saveBosses(); + feedback(fb, true, '✓ Босс '+b.n+' повержен! +10 XP. '+b.hint); + addXp(10, 'boss-ch6-'+b.n); + bumpProgress('final6', 18); + goBtn.disabled = true; goBtn.style.opacity = .55; goBtn.textContent = '✓ Повержен'; + ansInp.disabled = true; + card.style.background = 'linear-gradient(135deg,var(--sec-acc-soft),var(--pri-soft))'; + card.classList.add('glow','pulse'); + setTimeout(()=>card.classList.remove('pulse'), 900); + refreshOverall(); + } else { + feedback(fb, false, '✗ Промах. Попробуй ещё. Подсказка доступна.'); + } + }); + hintBtn.addEventListener('click', ()=>{ + const fb = document.getElementById('boss6-'+b.n+'-fb'); + fb.className = 'feedback ok'; + fb.innerHTML = 'Подсказка: '+b.hint; + fb.style.display = 'block'; + fb.style.background = 'var(--warn-bg)'; + fb.style.color = '#92400e'; + fb.style.borderLeftColor = 'var(--warn)'; + renderMath(fb); + }); + ansInp.addEventListener('keydown', e=>{ if(e.key === 'Enter') goBtn.click(); }); + }); + + refreshOverall(); } /* ===== Search ===== */