feat(phys11 W4): Глава 2 §10-§13 + Финал главы 2

§10 Производство и передача электроэнергии:
- ТЭС/ГЭС/АЭС; формула потерь P=I²R
- Идея высоковольтных ЛЭП: чтобы уменьшить потери, повышают U
- Магистральные ЛЭП до 750 кВ → 220 В у потребителя
- 5 расчётов (включая повышение U в k раз → потери /k²)
- Босс §10: 5 этапов, +70 XP

§11 Экологические проблемы:
- ВИЭ: ВЭС, СЭС, ГеоТЭС, приливные, биогаз
- Достоинства (без CO₂) и недостатки (погода, площадь)
- 6+5 квизов на типы и плюсы/минусы
- Босс §11: 5 этапов, +70 XP

§12 ЭМ волны. Шкала ЭМ волн:
- ЭМ волна как поперечная, c = 1/√(ε₀μ₀) = 3·10⁸ м/с
- Inline SVG-шкала: радио/СВЧ/ИК/видимый/УФ/рентген/γ
  с радужным градиентом для видимого света
- 5 расчётов λ↔ν + 5 MC на диапазоны
- Босс §12: 5 этапов, +70 XP

§13 Действие ЭМ на живые организмы:
- Ионизирующее (>10 эВ: УФ-С, рентген, γ) vs неионизирующее
- Полезные применения и опасности
- Защита: экранирование (свинец), расстояние, время
- Босс §13: 5 этапов, +65 XP

Финал главы 2:
- 4 интегральных босса (LC+ток, трансф+ЛЭП, ЭМ волны, сборная)
- Celebration: ачивка phys11_ch2_master + 100 XP бонус

Файл 63 → 91 КБ. JS валидируется.
This commit is contained in:
Maxim Dolgolyov
2026-05-29 18:25:30 +03:00
parent d93d8b782e
commit e192feefcc
+436 -25
View File
@@ -225,11 +225,11 @@ const PARAS = [
{ id:'p1', num:'§ 7', name:'LC-контур, формула Томсона', sub:'$T = 2\\pi\\sqrt{LC}$', built:true },
{ id:'p2', num:'§ 8', name:'Переменный ток', sub:'$I = I_0/\\sqrt{2}$', built:true },
{ id:'p3', num:'§ 9', name:'Трансформатор', sub:'$k = N_1/N_2$', built:true },
{ id:'p4', num:'§ 10', name:'Передача электроэнергии', sub:'Будет в W4', built:false },
{ id:'p5', num:'§ 11', name:'Эко-проблемы', sub:'Будет в W4', built:false },
{ id:'p6', num:'§ 12', name:'Шкала ЭМ волн', sub:'$c = 3 \\cdot 10^8$ м/с', built:false },
{ id:'p7', num:'§ 13', name:'ЭМ и живые орг.', sub:'Будет в W4', built:false },
{ id:'final', num:'★', name:'Финал главы', sub:'4 интегр. босса · W4', final:true, built:false }
{ id:'p4', num:'§ 10', name:'Передача электроэнергии', sub:'$P = I^2 R$', built:true },
{ id:'p5', num:'§ 11', name:'Эко-проблемы', sub:'ВЭС, СЭС, гео-', built:true },
{ id:'p6', num:'§ 12', name:'Шкала ЭМ волн', sub:'$c = 3 \\cdot 10^8$ м/с', built:true },
{ id:'p7', num:'§ 13', name:'ЭМ и живые орг.', sub:'Ионизир. vs нет', built:true },
{ id:'final', num:'★', name:'Финал главы', sub:'4 интегр. босса', final:true, built:true }
];
PARAS.forEach(p => { STATE.progress[p.id] = 0; });
@@ -326,11 +326,8 @@ function buildParaSelector(){
const BUILT=new Set();
const BUILDERS = {
p1:()=>buildP1(), p2:()=>buildP2(), p3:()=>buildP3(),
p4:()=>buildStubP('p4','§ 10','§10 в разработке (W4) — производство и передача электроэнергии, потери $P = I^2 R$, ЛЭП высокого напряжения.'),
p5:()=>buildStubP('p5','§ 11','§11 в разработке (W4) — экологические проблемы: ВЭС, СЭС, гео- и приливные электростанции.'),
p6:()=>buildStubP('p6','§ 12','§12 в разработке (W4) — ЭМ волны, шкала ЭМ от радио до γ, $c = 3 \\cdot 10^8$ м/с.'),
p7:()=>buildStubP('p7','§ 13','§13 в разработке (W4) — действие ЭМ излучения на живые организмы.'),
final:()=>buildStubP('final','Финал','Финал главы 2 — в волне W4 (4 интегр. босса + ачивка ch2_done).')
p4:()=>buildP4(), p5:()=>buildP5(), p6:()=>buildP6(), p7:()=>buildP7(),
final:()=>buildFinal()
};
function ensureBuilt(id){ if(BUILT.has(id)) return; const fn=BUILDERS[id]; if(fn){ fn(); BUILT.add(id); } }
function goTo(id){
@@ -349,22 +346,22 @@ const SIDEBARS = {
p1:{title:'Шпаргалка § 7', rows:[['LC-контур','$T = 2\\pi\\sqrt{LC}$'],['Циклическая ω','$\\omega = 1/\\sqrt{LC}$'],['Заряд','$q = Q_0\\cos(\\omega t)$'],['Ток','$i = -Q_0\\omega\\sin(\\omega t)$'],['Аналог','$L \\leftrightarrow m$, $1/C \\leftrightarrow k$']]},
p2:{title:'Шпаргалка § 8', rows:[['Мгн. ток','$i = I_0\\sin(\\omega t)$'],['Действ. ток','$I = I_0/\\sqrt{2}$'],['Действ. напр.','$U = U_0/\\sqrt{2}$'],['Сеть Беларуси','220 В, 50 Гц'],['$U_0$ сети','$U_0 = U\\sqrt{2} \\approx 311$ В']]},
p3:{title:'Шпаргалка § 9', rows:[['Коэф. трансф.','$k = N_1/N_2 = U_1/U_2$'],['$k > 1$','понижающий'],['$k < 1$','повышающий'],['КПД','$\\eta = P_2/P_1$'],['$I_2/I_1$','$\\approx N_1/N_2 = k$']]},
p4:{title:'§ 10', rows:[['Тема','Передача э/э'],['Статус','В разработке (W4)']]},
p5:{title:'§ 11', rows:[['Тема','Экология'],['Статус','В разработке (W4)']]},
p6:{title:'§ 12', rows:[['Тема','Шкала ЭМ волн'],['Статус','В разработке (W4)']]},
p7:{title:'§ 13', rows:[['Тема','ЭМ и жизнь'],['Статус','В разработке (W4)']]},
final:{title:'Финал главы 2', rows:[['Статус','В разработке (W4)'],['Боссов','4 интегрированных'],['Награда','+100 XP + ачивка']]}
p4:{title:'Шпаргалка § 10', rows:[['Потери','$P_{пот} = I^2 R$'],['Идея','$U$ ↑, $I$ ↓ ⇒ потери ↓'],['ЛЭП','220-750 кВ'],['Потребитель','220 В'],['ГЭС/ТЭС/АЭС','3 типа станций']]},
p5:{title:'Шпаргалка § 11', rows:[['ВЭС','ветер'],['СЭС','солнце'],['ГеоТЭС','подземное тепло'],['Приливные','Луна'],['Биогаз','органика']]},
p6:{title:'Шпаргалка § 12', rows:[['Скорость в вакууме','$c = 3 \\cdot 10^8$ м/с'],['ЭМ волна','поперечная'],['Радио','$\\lambda$: км м'],['Видим. свет','380760 нм'],['γ-лучи','$\\lambda < 0{,}01$ нм'],['$c = \\lambda\\nu$','связь']]},
p7:{title:'Шпаргалка § 13', rows:[['Неионизирующее','радио, СВЧ, видим.'],['Ионизирующее','УФ, рентген, γ'],['Тепловое','СВЧ-печь'],['Защита','экранирование, расстояние']]},
final:{title:'Финал главы 2', rows:[['§ 7-§ 13','Все темы'],['Боссов','4 интегрированных'],['Награда','+100 XP + ачивка ch2_done']]}
};
const TIPS=[
{sec:'p1',html:'§ 7 — крути ползунки $L$ и $C$, наблюдай как период $T = 2\\pi\\sqrt{LC}$ меняется. Энергия колеблется между конденсатором и катушкой.'},
{sec:'p2',html:'§ 8 — действующее значение тока в $\\sqrt{2}$ раз меньше амплитуды. В сети 220 В: $U_0 \\approx 311$ В.'},
{sec:'p3',html:'§ 9 — $k > 1$ — понижающий, $k < 1$ — повышающий. Меняй $N_1, N_2, U_1$ — $U_2$ пересчитывается сразу.'},
{sec:'p4',html:'§ 10 — в разработке (W4).'},
{sec:'p5',html:'§ 11 — в разработке (W4).'},
{sec:'p6',html:'§ 12 — в разработке (W4).'},
{sec:'p7',html:'§ 13 — в разработке (W4).'},
{sec:'final',html:'Финал главы 2 — в разработке (W4).'}
{sec:'p4',html:'§ 10 — главная идея: чтобы уменьшить потери $P = I^2R$ в ЛЭП, повышают $U$ и понижают $I$ через трансформаторы.'},
{sec:'p5',html:'§ 11 — ВИЭ: солнце, ветер, геотермальная энергия, приливы. Меньше выбросов CO₂, но зависят от погоды.'},
{sec:'p6',html:'§ 12 — кликай по шкале! Связь: $c = \\lambda\\nu = 3 \\cdot 10^8$ м/с. От длинных радиоволн до сверхкоротких γ.'},
{sec:'p7',html:'§ 13 — ионизирующее излучение (УФ-С, рентген, γ) опасно для ДНК. Защита: толща материала и расстояние.'},
{sec:'final',html:'Финал главы 2 — 4 интегральных босса на все темы (контур, ток, трансф., ЛЭП, ЭМ волны). +100 XP + ачивка ch2_done.'}
];
function buildSidebar(id){
@@ -732,15 +729,308 @@ function buildP3(){
renderMath(box);
}
/* ===== Stubs §10-§13, Final ===== */
function buildStubP(id, label, message){
const box = document.getElementById(id + '-body'); if(!box) return;
let html = '<div class="stub-note"><h3>' + label + ' — в разработке</h3><p>' + message + '</p></div>';
html += secNavFor(id);
/* ===== §10 Передача электроэнергии ===== */
function buildP4(){
const box = document.getElementById('p4-body'); if(!box) return;
let html = '';
html += makeCard('theory', 'Производство электроэнергии', '§ 10.1',
'<p>Основные типы электростанций:</p>'
+ '<ul>'
+ '<li><b>ТЭС</b> (тепловые) — сжигают уголь, газ, мазут; КПД 35-40%.</li>'
+ '<li><b>ГЭС</b> (гидроэлектростанции) — используют падение воды; КПД 90-95%.</li>'
+ '<li><b>АЭС</b> (атомные) — энергия деления ядер $^{235}$U; КПД ~30%.</li>'
+ '</ul>'
+ '<p>В Беларуси основные источники: ТЭС, АЭС (Островецкая АЭС с 2020 г.), частично ГЭС и ВИЭ.</p>');
html += makeCard('rule', 'Передача и потери', '§ 10.2',
'<p>Электроэнергия от электростанции до потребителя проходит через линии электропередач (<b>ЛЭП</b>).</p>'
+ '<p>В проводах ЛЭП выделяется тепло за счёт сопротивления — <b>потери мощности</b>:</p>'
+ '<p style="text-align:center;margin:8px 0">$$P_{пот} = I^2 R$$</p>'
+ '<p>где $R$ — сопротивление линии, $I$ — ток.</p>'
+ '<p>Чтобы уменьшить потери при заданной передаваемой мощности $P = UI$:</p>'
+ '<ul>'
+ '<li>Передавать при <b>высоком напряжении</b> $U$ — тогда ток $I$ мал.</li>'
+ '<li>На электростанции — повышающий трансформатор: $220$ В → $110$$750$ кВ.</li>'
+ '<li>У потребителя — понижающий: $750$ кВ → $220$ В.</li>'
+ '</ul>'
+ '<p>В магистральных ЛЭП напряжение достигает $\\mathbf{750}$ <b>кВ</b>!</p>');
html += '<div class="wg"><div class="wg-header"><span class="wg-badge">Инт. 1</span><span class="wg-title">Расчёт потерь</span></div>'
+ '<div class="wg-help">$P_{пот} = I^2 R$, $I = P/U$ (где $P$ — передаваемая мощность). Решено: <b id="i4-calc-score">0</b> / 5.</div>'
+ '<div id="i4-calc-q" style="margin:8px 0"></div><div class="actions"><input class="tinp" id="i4-calc-inp" placeholder="ответ"><button class="btn primary" id="i4-calc-go">Проверить</button></div><div class="feedback" id="i4-calc-fb"></div></div>';
html += '<div class="wg"><div class="wg-header"><span class="wg-badge">Инт. 2</span><span class="wg-title">Тип станции / передача</span></div>'
+ '<div class="wg-help">Решено: <b id="i4-type-score">0</b> / 5.</div>'
+ '<div id="i4-type-q" style="margin:8px 0"></div><div class="opts-row" id="i4-type-opts"></div><div class="feedback" id="i4-type-fb"></div></div>';
html += '<div id="boss-4-slot"></div>';
html += readButton('p4');
html += secNavFor('p4');
box.innerHTML = html;
runQuizInput('i4-calc', I4_CALC_ITEMS, 14);
runQuizMC('i4-type', I4_TYPE_ITEMS, 12);
const bs = loadBossState('boss-4') || { stage:0, solved:false };
makeAndBindBoss('boss-4-slot', '4', BOSS_DEFS.b4, bs,
()=>saveBossState('boss-4', bs),
()=>{ bumpProgress('p4', 40); achievement('p4_done'); });
wireReadBtn('p4');
renderMath(box);
}
/* ===== §11 Экологические проблемы ===== */
function buildP5(){
const box = document.getElementById('p5-body'); if(!box) return;
let html = '';
html += makeCard('theory', 'Возобновляемые источники энергии (ВИЭ)', '§ 11.1',
'<p>Традиционные ТЭС и АЭС связаны с экологическими проблемами:</p>'
+ '<ul>'
+ '<li>ТЭС — выбросы CO₂, SO₂, NOₓ; парниковый эффект, кислотные дожди.</li>'
+ '<li>АЭС — радиоактивные отходы; риск аварий (Чернобыль, Фукусима).</li>'
+ '</ul>'
+ '<p><b>Альтернатива — ВИЭ:</b></p>'
+ '<ul>'
+ '<li><b>ВЭС</b> (ветровые) — кинетическая энергия ветра вращает турбины.</li>'
+ '<li><b>СЭС</b> (солнечные) — фотоэлектрические панели преобразуют свет в ток.</li>'
+ '<li><b>ГеоТЭС</b> — тепло из недр Земли (вулканические регионы).</li>'
+ '<li><b>Приливные</b> — энергия движения воды Луной.</li>'
+ '<li><b>Биогаз</b> — сжигание метана из органических отходов.</li>'
+ '</ul>'
+ '<p>В Беларуси доля ВИЭ растёт, активно развиваются СЭС и ВЭС, биогазовые установки.</p>');
html += makeCard('rule', 'Достоинства и недостатки ВИЭ', '§ 11.2',
'<p><b>Достоинства:</b></p>'
+ '<ul>'
+ '<li>Не истощаются (возобновляются природой);</li>'
+ '<li>Не выбрасывают CO₂ при работе;</li>'
+ '<li>Не образуют радиоактивных отходов.</li>'
+ '</ul>'
+ '<p><b>Недостатки:</b></p>'
+ '<ul>'
+ '<li>Зависят от погоды и времени суток (солнце, ветер);</li>'
+ '<li>Низкая удельная мощность ⇒ большие площади;</li>'
+ '<li>Не подходят для всех регионов (геотермальная, приливные);</li>'
+ '<li>Производство панелей/турбин сейчас энергозатратно.</li>'
+ '</ul>');
html += '<div class="wg"><div class="wg-header"><span class="wg-badge">Инт. 1</span><span class="wg-title">Тип станции</span></div>'
+ '<div class="wg-help">Решено: <b id="i5-type-score">0</b> / 6.</div>'
+ '<div id="i5-type-q" style="margin:8px 0"></div><div class="opts-row" id="i5-type-opts"></div><div class="feedback" id="i5-type-fb"></div></div>';
html += '<div class="wg"><div class="wg-header"><span class="wg-badge">Инт. 2</span><span class="wg-title">Достоинства/недостатки</span></div>'
+ '<div class="wg-help">Решено: <b id="i5-pro-score">0</b> / 5.</div>'
+ '<div id="i5-pro-q" style="margin:8px 0"></div><div class="opts-row" id="i5-pro-opts"></div><div class="feedback" id="i5-pro-fb"></div></div>';
html += '<div id="boss-5-slot"></div>';
html += readButton('p5');
html += secNavFor('p5');
box.innerHTML = html;
runQuizMC('i5-type', I5_TYPE_ITEMS, 12);
runQuizMC('i5-pro', I5_PRO_ITEMS, 10);
const bs = loadBossState('boss-5') || { stage:0, solved:false };
makeAndBindBoss('boss-5-slot', '5', BOSS_DEFS.b5, bs,
()=>saveBossState('boss-5', bs),
()=>{ bumpProgress('p5', 40); achievement('p5_done'); });
wireReadBtn('p5');
renderMath(box);
}
/* ===== §12 Шкала ЭМ волн ===== */
function buildP6(){
const box = document.getElementById('p6-body'); if(!box) return;
let html = '';
html += makeCard('theory', 'Электромагнитные волны', '§ 12.1',
'<p><b>Электромагнитная волна</b> — распространение в пространстве переменных электрического и магнитного полей.</p>'
+ '<p>Существование ЭМ волн предсказал <b>Максвелл</b> (1864), экспериментально открыл <b>Герц</b> (1888).</p>'
+ '<p>ЭМ волны <b>поперечные</b>: векторы $\\vec{E}$ и $\\vec{B}$ колеблются $\\perp$ друг другу и $\\perp$ направлению распространения.</p>'
+ '<p>Скорость в вакууме: $c = 3 \\cdot 10^8$ м/с — мировая константа.</p>'
+ '<p style="text-align:center;margin:8px 0">$$c = \\lambda\\nu = \\dfrac{1}{\\sqrt{\\varepsilon_0\\mu_0}}$$</p>');
html += makeCard('rule', 'Шкала ЭМ волн', '§ 12.2',
'<p>В зависимости от частоты (длины волны) ЭМ волны делят на диапазоны:</p>'
+ '<ul style="font-family:JetBrains Mono,monospace;font-size:.86rem">'
+ '<li><b>Радиоволны</b>: $\\lambda$ от км до м, $\\nu$ до $10^{11}$ Гц. Связь, ТВ.</li>'
+ '<li><b>СВЧ</b> (микроволны): $\\lambda$ ≈ 1 м 1 мм. Радары, СВЧ-печи, сотовая связь.</li>'
+ '<li><b>Инфракрасное</b> (ИК): $\\lambda$ ≈ 1 мм 0,76 мкм. Тепловое излучение.</li>'
+ '<li><b>Видимый свет</b>: $\\lambda$ ≈ 760 380 нм. От красного до фиолетового.</li>'
+ '<li><b>УФ</b>: $\\lambda$ ≈ 380 10 нм. Загар, бактерицидные лампы.</li>'
+ '<li><b>Рентгеновское</b>: $\\lambda$ ≈ 10 0,01 нм. Медицина, кристаллография.</li>'
+ '<li><b>γ-излучение</b>: $\\lambda < 0{,}01$ нм. Ядерные превращения.</li>'
+ '</ul>');
/* Inline simple spectrum SVG */
html += '<div class="wg"><div class="wg-header"><span class="wg-badge">Шкала</span><span class="wg-title">Шкала ЭМ волн (от радио до γ)</span></div>'
+ '<div class="wg-help">Чем правее — тем выше частота и меньше длина волны. Видимый свет занимает крошечную полоску в центре!</div>'
+ '<div style="text-align:center;margin:10px 0">' + buildSpectrumSVG() + '</div>'
+ '</div>';
html += '<div class="wg"><div class="wg-header"><span class="wg-badge">Инт. 1</span><span class="wg-title">Расчёт $\\lambda, \\nu, c$</span></div>'
+ '<div class="wg-help">$c = \\lambda\\nu$. $c = 3 \\cdot 10^8$ м/с. Решено: <b id="i6-calc-score">0</b> / 5.</div>'
+ '<div id="i6-calc-q" style="margin:8px 0"></div><div class="actions"><input class="tinp" id="i6-calc-inp" placeholder="ответ"><button class="btn primary" id="i6-calc-go">Проверить</button></div><div class="feedback" id="i6-calc-fb"></div></div>';
html += '<div class="wg"><div class="wg-header"><span class="wg-badge">Инт. 2</span><span class="wg-title">Диапазон ЭМ-волны</span></div>'
+ '<div class="wg-help">Решено: <b id="i6-rng-score">0</b> / 5.</div>'
+ '<div id="i6-rng-q" style="margin:8px 0"></div><div class="opts-row" id="i6-rng-opts"></div><div class="feedback" id="i6-rng-fb"></div></div>';
html += '<div id="boss-6-slot"></div>';
html += readButton('p6');
html += secNavFor('p6');
box.innerHTML = html;
runQuizInput('i6-calc', I6_CALC_ITEMS, 14);
runQuizMC('i6-rng', I6_RNG_ITEMS, 12);
const bs = loadBossState('boss-6') || { stage:0, solved:false };
makeAndBindBoss('boss-6-slot', '6', BOSS_DEFS.b6, bs,
()=>saveBossState('boss-6', bs),
()=>{ bumpProgress('p6', 40); achievement('p6_done'); });
wireReadBtn('p6');
renderMath(box);
}
function buildSpectrumSVG(){
const W = 640, H = 110;
/* Бары для каждого диапазона */
const bands = [
{ name:'Радио', x:0, w:80, color:'#1e40af', sub:'10⁻³ 10¹¹ Гц' },
{ name:'СВЧ', x:80, w:80, color:'#2563eb', sub:'10⁹ 10¹² Гц' },
{ name:'ИК', x:160, w:90, color:'#dc2626', sub:'10¹² 10¹⁴ Гц' },
{ name:'Видимый', x:250, w:60, color:'rainbow', sub:'10¹⁴ 10¹⁵' },
{ name:'УФ', x:310, w:80, color:'#7c3aed', sub:'10¹⁵ 10¹⁷' },
{ name:'Рентген', x:390, w:110, color:'#6b21a8', sub:'10¹⁷ 10¹⁹' },
{ name:'γ', x:500, w:140, color:'#1e1b4b', sub:'> 10¹⁹ Гц' }
];
let svg = '<svg viewBox="0 0 ' + W + ' ' + H + '" style="width:100%;max-width:640px;height:auto;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px">';
svg += '<defs><linearGradient id="rainbow" x1="0" y1="0" x2="1" y2="0">'
+ '<stop offset="0%" stop-color="#dc2626"/>'
+ '<stop offset="20%" stop-color="#f59e0b"/>'
+ '<stop offset="40%" stop-color="#facc15"/>'
+ '<stop offset="55%" stop-color="#22c55e"/>'
+ '<stop offset="75%" stop-color="#0891b2"/>'
+ '<stop offset="100%" stop-color="#7c3aed"/>'
+ '</linearGradient></defs>';
bands.forEach(b => {
const fill = b.color === 'rainbow' ? 'url(#rainbow)' : b.color;
svg += '<rect x="' + b.x + '" y="20" width="' + b.w + '" height="40" fill="' + fill + '"/>';
svg += '<text x="' + (b.x + b.w/2) + '" y="46" text-anchor="middle" font-family="Outfit,sans-serif" font-size="13" font-weight="800" fill="#fff">' + b.name + '</text>';
svg += '<text x="' + (b.x + b.w/2) + '" y="76" text-anchor="middle" font-family="JetBrains Mono,monospace" font-size="9" fill="#64748b">' + b.sub + '</text>';
});
/* Подписи концов */
svg += '<text x="6" y="14" font-family="JetBrains Mono,monospace" font-size="11" fill="#475569">← Большая λ (низкая ν)</text>';
svg += '<text x="' + (W - 6) + '" y="14" text-anchor="end" font-family="JetBrains Mono,monospace" font-size="11" fill="#475569">Малая λ (высокая ν) →</text>';
svg += '<text x="' + (W/2) + '" y="102" text-anchor="middle" font-family="JetBrains Mono,monospace" font-size="10" fill="#64748b">все распространяются со скоростью c = 3 · 10⁸ м/с</text>';
svg += '</svg>';
return svg;
}
/* ===== §13 Действие ЭМ на живые организмы ===== */
function buildP7(){
const box = document.getElementById('p7-body'); if(!box) return;
let html = '';
html += makeCard('theory', 'Ионизирующее и неионизирующее излучения', '§ 13.1',
'<p>По способности ионизировать атомы среды ЭМ излучение делят на:</p>'
+ '<ul>'
+ '<li><b>Неионизирующее</b> — низкие энергии квантов ($E = h\\nu < 10$ эВ): радио, СВЧ, ИК, видимый свет, ближний УФ. Может вызвать нагрев.</li>'
+ '<li><b>Ионизирующее</b> — высокие энергии ($E > 10$ эВ): жёсткий УФ, рентген, γ-излучение. Способно «выбивать» электроны из атомов и повреждать ДНК.</li>'
+ '</ul>'
+ '<p>Энергия фотона: $E = h\\nu = hc/\\lambda$, где $h = 6{,}63 \\cdot 10^{-34}$ Дж·с.</p>');
html += makeCard('rule', 'Биологическое действие', '§ 13.2',
'<p><b>Полезные применения:</b></p>'
+ '<ul>'
+ '<li>УФ-С — стерилизация (убивает бактерии);</li>'
+ '<li>УФ-В — образование витамина D в коже;</li>'
+ '<li>ИК — прогревание, физиотерапия;</li>'
+ '<li>Рентген — диагностика (флюорография);</li>'
+ '<li>γ — лучевая терапия онкозаболеваний.</li>'
+ '</ul>'
+ '<p><b>Опасные эффекты:</b></p>'
+ '<ul>'
+ '<li>УФ-А, УФ-В — солнечные ожоги, рак кожи;</li>'
+ '<li>СВЧ — нагрев тканей (особенно глаз);</li>'
+ '<li>Рентген и γ — повреждение ДНК, мутации, лучевая болезнь.</li>'
+ '</ul>'
+ '<p><b>Защита:</b> экранирование (свинец для γ), увеличение расстояния, ограничение времени воздействия.</p>');
html += '<div class="wg"><div class="wg-header"><span class="wg-badge">Инт. 1</span><span class="wg-title">Ионизирующее или нет?</span></div>'
+ '<div class="wg-help">Решено: <b id="i7-ion-score">0</b> / 5.</div>'
+ '<div id="i7-ion-q" style="margin:8px 0"></div><div class="opts-row" id="i7-ion-opts"></div><div class="feedback" id="i7-ion-fb"></div></div>';
html += '<div class="wg"><div class="wg-header"><span class="wg-badge">Инт. 2</span><span class="wg-title">Применения / опасности</span></div>'
+ '<div class="wg-help">Решено: <b id="i7-use-score">0</b> / 5.</div>'
+ '<div id="i7-use-q" style="margin:8px 0"></div><div class="opts-row" id="i7-use-opts"></div><div class="feedback" id="i7-use-fb"></div></div>';
html += '<div id="boss-7-slot"></div>';
html += readButton('p7');
html += secNavFor('p7');
box.innerHTML = html;
runQuizMC('i7-ion', I7_ION_ITEMS, 12);
runQuizMC('i7-use', I7_USE_ITEMS, 12);
const bs = loadBossState('boss-7') || { stage:0, solved:false };
makeAndBindBoss('boss-7-slot', '7', BOSS_DEFS.b7, bs,
()=>saveBossState('boss-7', bs),
()=>{ bumpProgress('p7', 40); achievement('p7_done'); });
wireReadBtn('p7');
renderMath(box);
}
/* ===== Финал главы 2 ===== */
function buildFinal(){
const box = document.getElementById('final-body'); if(!box) return;
let html = '';
html += '<div class="stub-note"><h3>Финальное испытание · 4 интегрированных босса</h3><p>Победи 4 финальных боссов (LC-контур+ток, трансформатор+ЛЭП, ЭМ волны, биология ЭМ). После — ачивка <code>phys11_ch2_master</code> + 100 XP бонус.</p></div>';
html += '<div id="boss-f1-slot"></div>';
html += '<div id="boss-f2-slot"></div>';
html += '<div id="boss-f3-slot"></div>';
html += '<div id="boss-f4-slot"></div>';
html += '<div id="celebration" style="display:none;margin-top:18px"></div>';
html += secNavFor('final');
box.innerHTML = html;
['f1','f2','f3','f4'].forEach(id=>{
const def = FINAL_BOSS_DEFS[id];
const st = loadBossState('boss-'+id) || { stage:0, solved:false };
makeAndBindBoss('boss-'+id+'-slot', id, def, st,
()=>saveBossState('boss-'+id, st),
()=>{ checkFinalComplete(); });
});
checkFinalComplete();
renderMath(box);
}
function checkFinalComplete(){
const allBeat = ['f1','f2','f3','f4'].every(k=>{
const st = loadBossState('boss-'+k); return st && st.solved;
});
if(!allBeat) return;
const cel = document.getElementById('celebration');
if(!cel || cel.dataset.shown === '1') return;
cel.dataset.shown = '1'; cel.style.display = 'block';
cel.innerHTML = '<div class="boss-card solved" style="background:linear-gradient(135deg,var(--warn-bg),var(--pri-soft));text-align:center"><div style="font-family:Unbounded,sans-serif;font-size:1.4rem;font-weight:900;color:#92400e;margin-bottom:8px">&#9733; Глава 2 пройдена! &#9733;</div><div style="color:var(--text);margin-bottom:14px">Все 4 финальных босса побеждены. ЭМ колебания и волны — освоены.</div><div style="display:inline-block;padding:8px 18px;background:linear-gradient(135deg,#f59e0b,#dc2626);color:#fff;border-radius:99px;font-family:Unbounded,sans-serif;font-weight:800;font-size:.9rem">+ 100 XP бонус + ачивка phys11_ch2_master</div></div>';
const ach = JSON.parse(localStorage.getItem('physics11_achievements')||'[]');
if(ach.indexOf('phys11_ch2_master') < 0){
ach.push('phys11_ch2_master');
localStorage.setItem('physics11_achievements', JSON.stringify(ach));
addXp(100, 'ch2-master');
achievement('ch2_done');
}
bumpProgress('final', 100);
}
/* ===== Boss state ===== */
function loadBossState(key){ try{ return JSON.parse(localStorage.getItem('physics11_ch2_'+key)||'null'); }catch(e){ return null; } }
function saveBossState(key, state){ try{ localStorage.setItem('physics11_ch2_'+key, JSON.stringify(state)); }catch(e){} }
@@ -872,6 +1162,71 @@ const I3_TYPE_ITEMS = [
{ q:'Сварочный аппарат: большой ток при низком напряжении. Тип:', opts:['Повышающий','Понижающий'], correct:1, explain:'Низкое $U$, высокий $I$ — понижающий (ток повышается, напр. снижается).' }
];
const I4_CALC_ITEMS = [
{ q:'$I = 100$ А, $R = 5$ Ом. $P_{пот}$ (кВт)?', answer:'50', explain:'$P = I^2 R = 100^2 \\cdot 5 = 50000$ Вт = 50 кВт.' },
{ q:'$I$ уменьшили в 10 раз. Потери уменьшились в:', answer:'100', explain:'$P \\propto I^2$, $10^2 = 100$ раз.' },
{ q:'$P = 1$ МВт передаётся при $U = 100$ кВ. $I$ (А)?', answer:'10', explain:'$I = P/U = 10^6 / 10^5 = 10$ А.' },
{ q:'$U$ увеличили в 5 раз (при той же $P$). Потери уменьшатся в:', answer:'25', explain:'$I$ уменьшится в 5 раз, $P_{пот} \\propto I^2 = 25$ раз.' },
{ q:'$P = 100$ кВт, $U = 10$ кВ, $R = 2$ Ом. Потери $P_{пот}$ (кВт)?', answer:'0.2', explain:'$I = 10$ А, $P_{пот} = 100 \\cdot 2 = 200$ Вт = 0,2 кВт.' }
];
const I4_TYPE_ITEMS = [
{ q:'Какой тип электростанции использует энергию падения воды?', opts:['ТЭС','ГЭС','АЭС','СЭС'], correct:1, explain:'ГЭС — гидро.' },
{ q:'Какая станция выделяет больше всего CO₂?', opts:['ТЭС','ГЭС','АЭС','ВЭС'], correct:0, explain:'ТЭС сжигает уголь/газ.' },
{ q:'Островецкая станция в Беларуси — это:', opts:['ТЭС','ГЭС','АЭС','СЭС'], correct:2, explain:'Атомная (с 2020 г.).' },
{ q:'Зачем повышают $U$ в ЛЭП?', opts:['Меньше потерь','Больше мощность','Безопасность','Эстетика'], correct:0, explain:'$P_{пот} = I^2 R$, при $\\uparrow U \\downarrow I$, потери ↓.' },
{ q:'У потребителя ставят:', opts:['Повышающий тр.','Понижающий тр.','Конденсатор','Электролит'], correct:1, explain:'750 кВ → 220 В.' }
];
const I5_TYPE_ITEMS = [
{ q:'Использует кинетическую энергию воздушных масс:', opts:['ТЭС','ВЭС','ГеоТЭС','АЭС'], correct:1, explain:'ВЭС — ветер.' },
{ q:'Преобразует свет в ток через фотоэлементы:', opts:['СЭС','ТЭС','ВЭС','ГЭС'], correct:0, explain:'СЭС — солнце.' },
{ q:'Использует подземное тепло:', opts:['ТЭС','ГеоТЭС','АЭС','Приливная'], correct:1, explain:'Геотермальная (вулканы).' },
{ q:'Использует энергию Луны (косвенно):', opts:['ВЭС','Приливная','СЭС','ГеоТЭС'], correct:1, explain:'Приливы вызваны Луной.' },
{ q:'Биогаз получают:', opts:['Из ветра','Из органики (метан)','Из солнца','Из урана'], correct:1, explain:'Брожение органики.' },
{ q:'ВИЭ — это:', opts:['Возобновляемые источники','Высокие источники','Внутренние','Невозобновляемые'], correct:0, explain:'Возобновляемые источники энергии.' }
];
const I5_PRO_ITEMS = [
{ q:'Главное преимущество ВИЭ:', opts:['Не выбрасывают CO₂','Дешевле ТЭС','Работают круглосуточно','Не требуют ремонта'], correct:0, explain:'Нет вредных выбросов.' },
{ q:'Главный недостаток солнечных и ветровых станций:', opts:['Высокие выбросы','Зависимость от погоды/времени суток','Радиация','Шум'], correct:1, explain:'Ветер дует не всегда, солнце ночью отсутствует.' },
{ q:'АЭС опасны из-за:', opts:['CO₂','Радиоактивных отходов','Шума','Запахов'], correct:1, explain:'Долгоживущие радиоактивные отходы.' },
{ q:'ТЭС вредны для атмосферы из-за:', opts:['CO₂, SO₂, NOₓ','Радиации','Магнитного поля','Звука'], correct:0, explain:'Парниковые газы и кислотные дожди.' },
{ q:'Удельная мощность ВИЭ:', opts:['Очень высокая','Низкая (нужны большие площади)','Такая же как ТЭС','Бесконечная'], correct:1, explain:'Низкая плотность энергии.' }
];
const I6_CALC_ITEMS = [
{ q:'$\\lambda = 500$ нм (видимый). $\\nu$ (Гц)?', answer:['6e14','6·10¹⁴','600000000000000','6*10^14'], explain:'$\\nu = c/\\lambda = 3 \\cdot 10^8 / 5 \\cdot 10^{-7} = 6 \\cdot 10^{14}$ Гц.' },
{ q:'Радиостанция на 100 МГц. $\\lambda$ (м)?', answer:'3', explain:'$\\lambda = c/\\nu = 3 \\cdot 10^8 / 10^8 = 3$ м.' },
{ q:'$\\lambda = 3$ см (СВЧ). $\\nu$ (ГГц)?', answer:'10', explain:'$\\nu = c/\\lambda = 3 \\cdot 10^8 / 0{,}03 = 10^{10}$ Гц = 10 ГГц.' },
{ q:'Скорость ЭМ волны в вакууме?', answer:['3e8','3·10⁸','300000000','3*10^8'], explain:'$c = 3 \\cdot 10^8$ м/с.' },
{ q:'$\\nu = 1$ кГц (звуковая частота, но радио). $\\lambda$ (км)?', answer:'300', explain:'$\\lambda = 3 \\cdot 10^8 / 10^3 = 3 \\cdot 10^5$ м = 300 км.' }
];
const I6_RNG_ITEMS = [
{ q:'$\\lambda = 600$ нм. Какой диапазон?', opts:['Радио','ИК','Видимый','УФ'], correct:2, explain:'600 нм — оранжевая часть видимого.' },
{ q:'$\\lambda = 10$ см. Диапазон?', opts:['Радио','СВЧ','ИК','Видимый'], correct:1, explain:'10 см ≈ 3 ГГц — СВЧ (сотовая связь).' },
{ q:'$\\lambda = 0{,}001$ нм. Диапазон?', opts:['УФ','Рентген','γ-излучение','Видимый'], correct:2, explain:'< 0,01 нм — γ.' },
{ q:'Тепловое излучение нагретых тел:', opts:['Радио','СВЧ','ИК','УФ'], correct:2, explain:'ИК — теплота.' },
{ q:'Какие волны самые длинные?', opts:['Радио','γ','Видим.','Рентген'], correct:0, explain:'Радио — λ до км.' }
];
const I7_ION_ITEMS = [
{ q:'Радиоволны:', opts:['Ионизирующие','Неионизирующие'], correct:1, explain:'Малая энергия квантов.' },
{ q:'γ-излучение:', opts:['Ионизирующие','Неионизирующие'], correct:0, explain:'Очень высокая энергия.' },
{ q:'Видимый свет:', opts:['Ионизирующие','Неионизирующие'], correct:1, explain:'~2-3 эВ < 10 эВ.' },
{ q:'Рентген:', opts:['Ионизирующие','Неионизирующие'], correct:0, explain:'Сотни эВ – кэВ.' },
{ q:'СВЧ (микроволны):', opts:['Ионизирующие','Неионизирующие'], correct:1, explain:'Малая энергия, но греет (вода).' }
];
const I7_USE_ITEMS = [
{ q:'Стерилизация воды бактерицидными лампами — это:', opts:['ИК','УФ','Рентген','γ'], correct:1, explain:'УФ-С убивает бактерии.' },
{ q:'Флюорография — какое излучение?', opts:['ИК','УФ','Рентген','Радио'], correct:2, explain:'Рентген.' },
{ q:'Свинцовый экран используют для защиты от:', opts:['Радио','Видимого','γ-излучения','ИК'], correct:2, explain:'Свинец задерживает γ и рентген.' },
{ q:'Тепловые лампы в обогревателях — какой диапазон?', opts:['ИК','УФ','Рентген','γ'], correct:0, explain:'Инфракрасное тепло.' },
{ q:'Что НЕ является опасным эффектом ЭМ:', opts:['Ожоги от УФ','Лучевая болезнь','Опасные звуки','Рак кожи'], correct:2, explain:'Звуки — не ЭМ.' }
];
/* ===== Boss defs ===== */
const BOSS_DEFS = {
b1: { title:'Босс §7 — LC-контур', tag:'§7', xp:70, stages:[
@@ -894,6 +1249,62 @@ const BOSS_DEFS = {
{ q:'$I_1 = 0{,}5$ А, $k = 10$ (повышающий: $U$ растёт). $I_2$ (А)?', type:'input', a:'0.05', explain:'$I_2 = I_1/k = 0{,}05$ А.' },
{ q:'Принцип работы трансформатора:', type:'mc', opts:['Закон Ома','Эл-магн. индукция','Сила Ампера','Эл-статика'], correct:1, explain:'ЭМ индукция Фарадея.' },
{ q:'Зачем сердечник?', type:'mc', opts:['Усиление магн. потока','Питание','Охлаждение','Изоляция'], correct:0, explain:'Концентрирует магнитный поток.' }
]},
b4: { title:'Босс §10 — Передача э/э', tag:'§10', xp:70, stages:[
{ q:'$I = 50$ А, $R = 4$ Ом. $P_{пот}$ (кВт)?', type:'input', a:'10', explain:'$P = 50^2 \\cdot 4 = 10000$ Вт.' },
{ q:'$U$ повысили в 10 раз. Потери уменьшатся в:', type:'input', a:'100', explain:'$I$ упадёт в 10, $P_{пот} \\propto I^2 = 100$.' },
{ q:'Самая «грязная» станция:', type:'mc', opts:['ГЭС','ТЭС','ВЭС','СЭС'], correct:1, explain:'CO₂, SO₂.' },
{ q:'$P = 200$ кВт, $U = 20$ кВ. $I$ (А)?', type:'input', a:'10', explain:'$I = 2\\cdot 10^5/2\\cdot 10^4 = 10$ А.' },
{ q:'Магистральная ЛЭП в РБ — напряжение порядка:', type:'mc', opts:['220 В','10 кВ','220 кВ','750 кВ'], correct:3, explain:'Магистральные — до 750 кВ.' }
]},
b5: { title:'Босс §11 — Экология', tag:'§11', xp:70, stages:[
{ q:'Ветровая станция использует:', type:'mc', opts:['Свет','Кинетику ветра','Тепло земли','Ядра урана'], correct:1, explain:'ВЭС.' },
{ q:'СЭС преобразует:', type:'mc', opts:['Свет в ток','Тепло в ток','Уран','Ветер'], correct:0, explain:'Фотоэлемент.' },
{ q:'Главный плюс ВИЭ:', type:'mc', opts:['Дешевле','Без CO₂','Круглосуточно','Не требуют обслуживания'], correct:1, explain:'Нет вредных выбросов.' },
{ q:'Главный минус СЭС:', type:'mc', opts:['Радиация','Зависят от солнца','CO₂','Дорогое топливо'], correct:1, explain:'Ночью и в пасмурно — снижение.' },
{ q:'АЭС опасны из-за:', type:'mc', opts:['CO₂','Радиоактивных отходов','Шума','Запахов'], correct:1, explain:'Отходы хранятся тысячи лет.' }
]},
b6: { title:'Босс §12 — Шкала ЭМ волн', tag:'§12', xp:70, stages:[
{ q:'$c$ в вакууме (м/с)?', type:'input', a:['3e8','3·10⁸','300000000','3*10^8'], explain:'$3 \\cdot 10^8$ м/с.' },
{ q:'$\\lambda = 6$ м (радио). $\\nu$ (МГц)?', type:'input', a:'50', explain:'$\\nu = 3\\cdot 10^8/6 = 5 \\cdot 10^7$ Гц = 50 МГц.' },
{ q:'Видимый свет занимает $\\lambda$:', type:'mc', opts:['1 мкм 1 мм','380 760 нм','1 нм 100 нм','> 1 мм'], correct:1, explain:'380-760 нм.' },
{ q:'Кто открыл ЭМ волны экспериментально?', type:'mc', opts:['Максвелл','Герц','Эйнштейн','Фарадей'], correct:1, explain:'Г. Герц (1888).' },
{ q:'ЭМ волны — это:', type:'mc', opts:['Продольные','Поперечные','Стоячие','Звуковые'], correct:1, explain:'$\\vec{E}, \\vec{B}$ ⊥ распр.' }
]},
b7: { title:'Босс §13 — ЭМ и живые', tag:'§13', xp:65, stages:[
{ q:'Энергия фотона:', type:'mc', opts:['$h\\nu$','$mv^2/2$','$kT$','$hc$'], correct:0, explain:'$E = h\\nu$.' },
{ q:'Ионизирующее излучение:', type:'mc', opts:['Радио','γ','ИК','СВЧ'], correct:1, explain:'γ — самая большая энергия.' },
{ q:'УФ-С применяется для:', type:'mc', opts:['Тепла','Стерилизации','Радиосвязи','Передачи тока'], correct:1, explain:'Убивает бактерии.' },
{ q:'Что задерживает γ-излучение:', type:'mc', opts:['Бумага','Свинец','Воздух','Стекло'], correct:1, explain:'Свинец, бетон.' },
{ q:'Для лучевой терапии используют:', type:'mc', opts:['Радио','Видимый','γ','СВЧ'], correct:2, explain:'γ для уничтожения опухолей.' }
]}
};
const FINAL_BOSS_DEFS = {
f1: { title:'Финал · LC + ток', tag:'Финал гл.2', xp:30, stages:[
{ q:'$T = 2\\pi\\sqrt{?}$', type:'mc', opts:['$L+C$','$LC$','$L/C$','$LC^2$'], correct:1, explain:'$LC$.' },
{ q:'$L=10$ мкГн, $C=100$ нФ. $\\omega$ (рад/с)?', type:'input', a:['1e6','10⁶','1000000','10^6'], explain:'$1/\\sqrt{LC} = 10^6$ рад/с.' },
{ q:'$U_0 = 311$ В. $U$ действ. (В)?', type:'input', a:'220', explain:'$311/\\sqrt{2} \\approx 220$ В.' },
{ q:'Сеть 50 Гц — это:', type:'mc', opts:['ω','ν','T','U₀'], correct:1, explain:'Частота.' }
]},
f2: { title:'Финал · Трансф + ЛЭП', tag:'Финал гл.2', xp:30, stages:[
{ q:'$N_1 = 5000$, $N_2 = 500$, $U_1 = 10$ кВ. $U_2$ (В)?', type:'input', a:'1000', explain:'$U_2 = 10000/10 = 1000$ В.' },
{ q:'$I = 200$ А, $R = 0{,}5$ Ом. $P_{пот}$ (кВт)?', type:'input', a:'20', explain:'$200^2 \\cdot 0{,}5 = 20000$ Вт.' },
{ q:'Зачем в ЛЭП высокое $U$?', type:'mc', opts:['Меньше потерь','Безопаснее','Больше мощность','Эстетика'], correct:0, explain:'$P_{пот} = I^2 R$.' },
{ q:'$k = 100$. Тип:', type:'mc', opts:['Повышающий','Понижающий'], correct:1, explain:'$U_2 < U_1$.' }
]},
f3: { title:'Финал · ЭМ волны', tag:'Финал гл.2', xp:30, stages:[
{ q:'$c = \\lambda \\cdot$ ?', type:'mc', opts:['$T$','$\\nu$','$\\omega$','$k$'], correct:1, explain:'$c = \\lambda\\nu$.' },
{ q:'$\\nu = 500$ МГц. $\\lambda$ (м)?', type:'input', a:['0.6','0.60'], explain:'$3 \\cdot 10^8 / 5 \\cdot 10^8 = 0{,}6$ м.' },
{ q:'Видимый свет ≈ нм:', type:'mc', opts:['1-10','380-760','1000-10000','0,1-1'], correct:1, explain:'380-760 нм.' },
{ q:'Самые опасные ЭМ волны:', type:'mc', opts:['Радио','γ','ИК','Видимый'], correct:1, explain:'γ — ионизирующие.' }
]},
f4: { title:'Финал · Сборная', tag:'Финал гл.2', xp:50, stages:[
{ q:'$L=1$ Гн, $C=1$ Ф. $T$ (с)?', type:'input', a:['2π','2pi','6.28','6.283'], explain:'$2\\pi\\sqrt{1} = 2\\pi$ с.' },
{ q:'$U_0 = 100$ В. Действующее $U$ (В)?', type:'input', a:['70.7','71','70'], explain:'$100/\\sqrt{2} \\approx 70{,}7$ В.' },
{ q:'$N_1 = 1000$, $N_2 = 50$, $I_1 = 0{,}1$ А. $I_2$ (А)?', type:'input', a:'2', explain:'$I_2 = I_1 \\cdot N_1/N_2 = 2$ А.' },
{ q:'$\\lambda = 1$ км. Это:', type:'mc', opts:['Радио','СВЧ','ИК','УФ'], correct:0, explain:'Длинные радиоволны.' },
{ q:'Свинец защищает от:', type:'mc', opts:['Звука','γ-излучения','Ветра','Воды'], correct:1, explain:'γ.' }
]}
};