Зафиксирована накопленная незакоммиченная работа рабочего дерева, КРОМЕ файлов учебника «Химия 7» (migration 046, chemistry_7_*.html, chem7_svg.js, тест — оставлены незакоммиченными по запросу). Включает: модуль биохимии (ядро BIO, 3D VSEPR, химдвижок, баланс, challenges, пути из БД), System Health Level 1 (вердикт/мониторинг), а также frontend- страницы и lab/textbooks-правки параллельной сессии. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
30 KiB
План реализации: Физика 10 (Беларусь, Громыко, 2019)
Источник: fizika_10kl_gromika_rus_2019.pdf (267 стр., 2 части, 6 глав, 37 §)
Издательство: «Адукацыя і выхаванне», 2019
Уровень: базовый + повышенный (с электронным приложением).
Самый большой учебник во всём проекте — 37 параграфов против 19 в Алгебре 9 и 16 в Геометрии 9. Учитывает весь опыт 10 предыдущих учебников: единый KaTeX-эскейп, ноль пикселей в подписях, ноль эмодзи, 3D-движок
g3d.js, snap-точки в slider'ах, цветовая кодировка, drag-to-rotate. Главная фишка — настоящие физические симуляции: броуновское движение, изопроцессы (PV-диаграммы), линии поля, электрические цепи, движение заряженных частиц в магнитном поле, явление индукции.
🎯 Содержание учебника
Часть 1. МОЛЕКУЛЯРНАЯ ФИЗИКА
Глава 1. Основы молекулярно-кинетической теории (§§1–10)
| § | Тема | Ключевые формулы |
|---|---|---|
| §1 | Основные положения МКТ | 3 положения: вещество — частицы, частицы движутся, частицы взаимодействуют |
| §2 | Масса и размеры молекул. Количество вещества | N_A = 6.022 \cdot 10^{23}, M = m \cdot N_A, \nu = N/N_A = m/M |
| §3 | Макро- и микропараметры. Идеальный газ. Основное уравнение МКТ | p = \dfrac{1}{3} n m_0 \overline{v^2} = \dfrac{2}{3} n \overline{E_k} |
| §4 | Тепловое равновесие. Температура | \overline{E_k} = \dfrac{3}{2} kT, шкала Кельвина: T = t + 273 |
| §5 | Уравнение состояния идеального газа | pV = \nu RT, pV = \dfrac{m}{M} RT (Клапейрон–Менделеев) |
| §6 | Изопроцессы | Изотерма pV = \text{const}, изобара V/T = \text{const}, изохора p/T = \text{const} |
| §7 | Строение и свойства твёрдых тел | Кристаллы (моно-, поликристаллы), аморфные тела, анизотропия |
| §8 | Строение и свойства жидкостей | Поверхностное натяжение, смачивание |
| §9 | Испарение и конденсация. Насыщенный пар | Динамическое равновесие, давление насыщенного пара |
| §10 | Влажность воздуха | \varphi = \dfrac{p}{p_н} \cdot 100\%, точка росы, психрометр |
Глава 2. Основы термодинамики (§§11–15)
| § | Тема | Ключевые формулы |
|---|---|---|
| §11 | Внутренняя энергия | U = \dfrac{3}{2} \nu R T (одноатомный газ) |
| §12 | Работа в термодинамике | A = p \Delta V (изобарный), графически площадь под кривой |
| §13 | Количество теплоты | Q = cm \Delta T, Q = \lambda m (плавление), Q = rm (испарение), Q = qm (сгорание) |
| §14 | Первый закон термодинамики | \Delta U = Q + A_{внеш} или Q = \Delta U + A_{газ} |
| §15 | Тепловые двигатели. КПД | \eta = \dfrac{A}{Q_1} = \dfrac{Q_1 - Q_2}{Q_1}, \eta_{Карно} = \dfrac{T_1 - T_2}{T_1} |
Часть 2. ЭЛЕКТРОДИНАМИКА
Глава 3. Электростатика (§§16–24)
| § | Тема | Ключевые формулы |
|---|---|---|
| §16 | Электрический заряд. Закон сохранения | q = ne, e = 1.6 \cdot 10^{-19} Кл, \sum q = \text{const} |
| §17 | Закон Кулона | $F = k \dfrac{ |
| §18 | Электростатическое поле | Силовая характеристика, источник |
| §19 | Напряжённость поля. Принцип суперпозиции | \vec{E} = \dfrac{\vec{F}}{q_{пр}}, \vec{E} = \sum \vec{E_i} |
| §20 | Линии напряжённости | Силовые линии, поле точечного заряда, диполя |
| §21 | Работа поля. Потенциал | A = qU, \varphi = \dfrac{W_p}{q} |
| §22 | Разность потенциалов. Напряжение | U = \varphi_1 - \varphi_2, E = U/d (однородное) |
| §23 | Конденсаторы. Электроёмкость | C = q/U, C = \dfrac{\varepsilon \varepsilon_0 S}{d} |
| §24 | Энергия поля конденсатора | W = \dfrac{CU^2}{2} = \dfrac{q^2}{2C} = \dfrac{qU}{2} |
Глава 4. Постоянный электрический ток (§§25–26)
| § | Тема | Ключевые формулы |
|---|---|---|
| §25 | ЭДС источника тока | \mathcal{E} = A_{ст}/q, ЭДС, сторонние силы |
| §26 | Закон Ома для полной цепи | I = \dfrac{\mathcal{E}}{R + r}, КПД \eta = U/\mathcal{E} |
Глава 5. Магнитное поле. Электромагнитная индукция (§§27–33)
| § | Тема | Ключевые формулы |
|---|---|---|
| §27 | Магнитное поле тока | Опыт Эрстеда, взаимодействие проводников |
| §28 | Индукция магнитного поля | \vec{B}, правило буравчика, линии индукции |
| §29 | Сила Ампера | F_A = BIL\sin\alpha, правило левой руки |
| §30 | Сила Лоренца | F_L = qvB\sin\alpha, движение по окружности: R = \dfrac{mv}{qB} |
| §31 | Магнитный поток. Электромагнитная индукция | \Phi = BS\cos\alpha, опыты Фарадея |
| §32 | Правило Ленца. Закон ЭМИ | \mathcal{E}_i = -\dfrac{d\Phi}{dt} |
| §33 | Самоиндукция. Индуктивность | \mathcal{E}_{si} = -L \dfrac{dI}{dt}, W_L = \dfrac{LI^2}{2} |
Глава 6. Электрический ток в различных средах (§§34–37)
| § | Тема | Ключевые формулы |
|---|---|---|
| §34 | Ток в металлах. Сверхпроводимость | Свободные электроны, \rho(T) = \rho_0(1+\alpha t) |
| §35 | Ток в электролитах | Электролиз, законы Фарадея: m = kIt, k = \dfrac{M}{F n} |
| §36 | Ток в газах. Плазма | Самостоятельный/несамостоятельный разряд, виды разрядов |
| §37 | Ток в полупроводниках | Собственная и примесная проводимость, n-тип, p-тип, p-n-переход |
ИТОГО: 6 глав, 37 параграфов, 2 части.
🎨 SVG-СТАНДАРТ КАЧЕСТВА ДЛЯ ФИЗИКИ
Это первая физика в проекте — нужны новые хелперы. Унаследует всё от математических учебников + добавляет physics-specific.
Унаследованные хелперы (из Алгебры 11 / Геометрии 11)
axes2D(W, H, pad, xmin, xmax, ymin, ymax)— координатная плоскостьplotFunc(f, xmin, xmax, toX, toY, color, N)— график функцииpointWithDrop(x, fx, toX, toY, color, label)— точка с проекциямиasymptote(orientation, value, ...)— асимптотаsnapToValue(value, snaps, tolerance)— snap-точкиrightAngleMark,angleArcAuto,unitVec,deg2radg3d.js— мини-3D движок (для линий магнитной индукции, движения частиц)
Новые physics-specific хелперы (в frontend/js/phys.js)
// === Стрелка вектора (2D) ===
function drawArrow(x1, y1, x2, y2, color, width, headSize) {
// Возвращает SVG: линия + треугольная стрелка на конце
const dx = x2 - x1, dy = y2 - y1;
const len = Math.sqrt(dx*dx + dy*dy);
const ux = dx / len, uy = dy / len;
const px = -uy, py = ux; // перпендикуляр
const h = headSize || 10;
const w = (headSize || 10) * 0.6;
const tipX = x2, tipY = y2;
const baseX = x2 - ux * h, baseY = y2 - uy * h;
const leftX = baseX + px * w, leftY = baseY + py * w;
const rightX = baseX - px * w, rightY = baseY - py * w;
return `<line x1="${x1}" y1="${y1}" x2="${baseX.toFixed(1)}" y2="${baseY.toFixed(1)}" stroke="${color}" stroke-width="${width || 2}"/>`
+ `<polygon points="${tipX},${tipY} ${leftX.toFixed(1)},${leftY.toFixed(1)} ${rightX.toFixed(1)},${rightY.toFixed(1)}" fill="${color}"/>`;
}
// === Линии электрического поля от точечного заряда ===
function fieldLinesPointCharge(cx, cy, sign, scale, numLines) {
// sign: +1 или -1 (от знака заряда)
// numLines: число линий (12-24)
// Возвращает массив SVG-линий — стрелки наружу для +q, внутрь для -q
let s = '';
const N = numLines || 16;
for (let i = 0; i < N; i++) {
const a = 2 * Math.PI * i / N;
const r1 = 15, r2 = scale;
const x1 = cx + r1 * Math.cos(a), y1 = cy + r1 * Math.sin(a);
const x2 = cx + r2 * Math.cos(a), y2 = cy + r2 * Math.sin(a);
if (sign > 0) s += drawArrow(x1, y1, x2, y2, '#dc2626', 1.5);
else s += drawArrow(x2, y2, x1, y1, '#2563eb', 1.5);
}
return s;
}
// === Линии поля диполя (две точечных зарядов противоположных) ===
function fieldLinesDipole(c1, c2, scale, numLines) {
// Параметрически — линия от +q к -q вдоль кривых, перпендикулярных эквипотенциалям
// Упрощённо: использовать numerical integration по полю
// ...
}
// === Электрическая схема: компоненты ===
function batteryEMF(x, y, EMF, orientation) {
// Возвращает SVG условного обозначения батареи (две полоски + подпись ε)
}
function resistor(x, y, w, h, R, orientation) {
// Возвращает SVG зигзага резистора + подпись R
}
function capacitor(x, y, C, orientation) {
// Две параллельные линии + подпись C
}
function ammeter(x, y) {
// Круг с буквой A
}
function voltmeter(x, y) {
// Круг с буквой V
}
function inductor(x, y, L, orientation) {
// Серия маленьких полукругов
}
function lightbulb(x, y) {
// Круг с крестиком (или волной)
}
// === Магнитное поле: стрелки В через плоскость экрана ===
function magneticField(x, y, direction, dx, dy) {
// direction: 'in' (крест) или 'out' (точка)
// Рисует сетку 5x5 крестиков (вошло в плоскость) или точек (вышло из плоскости)
let s = '';
for (let i = 0; i < 5; i++) {
for (let j = 0; j < 5; j++) {
const cx = x + i * dx, cy = y + j * dy;
if (direction === 'in') {
s += `<circle cx="${cx}" cy="${cy}" r="6" fill="none" stroke="#0891b2" stroke-width="1.5"/>`;
s += `<line x1="${cx-4}" y1="${cy-4}" x2="${cx+4}" y2="${cy+4}" stroke="#0891b2" stroke-width="1.5"/>`;
s += `<line x1="${cx-4}" y1="${cy+4}" x2="${cx+4}" y2="${cy-4}" stroke="#0891b2" stroke-width="1.5"/>`;
} else {
s += `<circle cx="${cx}" cy="${cy}" r="6" fill="none" stroke="#0891b2" stroke-width="1.5"/>`;
s += `<circle cx="${cx}" cy="${cy}" r="2" fill="#0891b2"/>`;
}
}
}
return s;
}
// === PV-диаграмма с изопроцессами ===
function pvDiagram(W, H, pad, pMax, vMax) {
// Возвращает axes2D-объект с диапазоном (0..vMax, 0..pMax)
// Подписи осей: P (атм или Па), V (л или м³)
}
// === Молекула газа (частица) ===
function molecule(x, y, r, color) {
return `<circle cx="${x}" cy="${y}" r="${r}" fill="${color}" stroke="#0f172a" stroke-width="0.8"/>`;
}
// === Симуляция броуновского движения / движения молекул газа ===
class GasSimulation {
constructor(opts) {
this.W = opts.W; this.H = opts.H;
this.N = opts.N || 30;
this.particles = [];
for (let i = 0; i < this.N; i++) {
this.particles.push({
x: Math.random() * this.W,
y: Math.random() * this.H,
vx: (Math.random() - 0.5) * opts.speed,
vy: (Math.random() - 0.5) * opts.speed
});
}
}
step(dt) {
this.particles.forEach(p => {
p.x += p.vx * dt; p.y += p.vy * dt;
// отражение от стенок
if (p.x < 0 || p.x > this.W) p.vx = -p.vx;
if (p.y < 0 || p.y > this.H) p.vy = -p.vy;
});
}
render() {
return this.particles.map(p => molecule(p.x, p.y, 4, '#2563eb')).join('');
}
}
Цветовая кодировка для физики
- Положительный заряд — красный (
#dc2626) - Отрицательный заряд — синий (
#2563eb) - Электрическое поле $\vec{E}$ — оранжевый (
#ea580c) - Магнитное поле $\vec{B}$ — фиолетовый (
#7c3aed) - Сила — зелёный (
#10b981) - Скорость — голубой (
#0891b2) - Молекулы газа — синие точки
- Температура — градиент от синего (холод) к красному (горячо)
- Ток — янтарный (
#d97706) - Резистор / провод — тёмно-серый (
#374151) - Изотерма (P-V) — оранжевый
- Изобара (V-T) — синий
- Изохора (P-T) — зелёный
Правила (обязательны с §1)
- Все единицы измерения через KaTeX —
\\text{Н},\\text{м}^2$,\text{Дж/(моль·К)}` — никогда сырой текст. - Slider'ы — в реальных физических величинах с разумными диапазонами:
- Температура: 100..500 К (или
-100..200°C) - Давление: 0.5..5 атм или
10^4..10^6Па - Объём: 1..10 л или
0.001..0.01м³ - Заряд:
\pm 10^{-9}..10^{-6}Кл (нКл, мкКл) - Расстояние между зарядами: 0.01..1 м
- Напряжение: 1..220 В
- Ток: 0.01..10 А
- Магнитная индукция:
10^{-3}..1Тл
- Температура: 100..500 К (или
- Snap-точки на эталонных значениях:
T = 273К (0°C),T = 0K,p = 1атм. - Все формулы с КаTeX, двойные backslash.
- Векторы — со стрелками через
drawArrow. Никогда→в тексте — через KaTeX\\vec{E}. - Подписи единиц измерения — обязательны на всех осях графиков, во всех результатах калькуляторов.
- Симуляции — через
requestAnimationFrameс возможностью паузы и сброса. - Эмодзи запрещены.
- Никаких пикселей в подписях — всё в СИ или производных единицах.
Типы интерактивов по темам
| Тип | Применение |
|---|---|
| Симуляция движения молекул | §1 (МКТ), §3 (давление как удары о стенку), §9 (испарение) |
| PV/VT/PT диаграммы | §6 (изопроцессы — главное!), §15 (цикл Карно) |
| Калькулятор Клапейрона–Менделеева | §5 |
| Психрометрический анализ | §10 |
| Поток теплоты симуляция | §13 |
| Цикл Карно — анимированная PV-диаграмма | §15 |
| Закон Кулона: 3D-визуализатор сил | §17 |
| Линии напряжённости электрического поля | §20 (главный визуал электростатики) |
| Эквипотенциальные поверхности | §22 |
| Конденсатор-конструктор | §23 |
| Электрическая цепь — конструктор | §25, §26 |
| Правило буравчика / левой руки — 3D | §28, §29, §30 |
| Движение заряженной частицы в B-поле — 3D-траектория | §30 (главный визуал магнетизма) |
| Опыты Фарадея — анимация катушки и магнита | §31 |
| Самоиндукция — LR-цепь, ток как функция времени | §33 |
| p-n переход — визуализация дырок и электронов | §37 |
🚀 ПОРЯДОК РЕАЛИЗАЦИИ
Учитывая 37 параграфов — самый большой проект, разбиваем на 8 фаз.
Phase 0: Архитектура (фундамент)
physics_10_hub.html— палитра yellow/amber (классический физический цвет) или orange- 6 ch-файлов:
physics_10_ch1.html(МКТ),_ch2.html(термодинамика),_ch3.html(электростатика),_ch4.html(пост. ток),_ch5.html(магнитное поле),_ch6.html(ток в средах) - Миграция
0XX_physics_10_hub.sql(следующий доступный номер) frontend/js/phys.js— новый модуль physics-хелперов (drawArrow, fieldLines, magneticField, схемы, GasSimulation, pvDiagram)- 2D-хелперы (axes2D, plotFunc, etc.) и G3D подключены в каждый ch
- KaTeX CDN + auto-render
- POLISH CSS + bump-score JS
Phase 1: Молекулярная физика — Глава 1 (10 §) — 5 волн
Самая большая глава учебника. По 2 §§ на волну.
- Wave 1: §1 (МКТ основные положения, БРОУНОВСКОЕ ДВИЖЕНИЕ симуляция) + §2 (масса/количество вещества, калькулятор
N,\nu,m). - Wave 2: §3 (давление через удары молекул, симуляция
p = \frac{1}{3} n m \overline{v^2}) + §4 (температура, шкалы,\overline{E_k} = \frac{3}{2}kT). - Wave 3: §5 (уравнение Клапейрона–Менделеева, калькулятор) + §6 (изопроцессы — главный визуал главы: PV/VT/PT диаграммы с slider'ом T, V, p).
- Wave 4: §7 (твёрдые тела, виды кристаллов SVG) + §8 (жидкости, поверхностное натяжение симуляция).
- Wave 5: §9 (испарение, насыщенный пар, динамическое равновесие симуляция) + §10 (влажность, психрометрический калькулятор) + Финал главы 1 (7 боссов + ачивка «Мастер МКТ»).
Phase 2: Молекулярная физика — Глава 2 «Термодинамика» (5 §) — 3 волны
- Wave 1: §11 (внутренняя энергия,
U = \frac{3}{2} \nu R T) + §12 (работа в термодинамике, площадь под P-V кривой). - Wave 2: §13 (количество теплоты — все 4 формулы) + §14 (первый закон термодинамики, применение к изопроцессам).
- Wave 3: §15 (тепловые двигатели, цикл Карно — анимация PV-цикла, КПД) + Финал главы 2 (5 боссов + ачивка «Мастер термодинамики»).
Phase 3: Электростатика (9 §) — 5 волн
- Wave 1: §16 (заряд, закон сохранения) + §17 (закон Кулона — визуализатор сил, slider
q_1, q_2, r). - Wave 2: §18 (электрическое поле) + §19 (напряжённость, суперпозиция).
- Wave 3: §20 (линии напряжённости — главный визуал — поле точечного заряда, диполя, двух одноимённых) + §21 (работа поля, потенциал).
- Wave 4: §22 (разность потенциалов, напряжение,
E = U/d) + §23 (конденсаторы,C = \varepsilon \varepsilon_0 S/d). - Wave 5: §24 (энергия поля конденсатора) + Финал главы 3 (7 боссов + ачивка «Мастер электростатики»).
Phase 4: Постоянный ток (2 §) — 1 волна
- Wave 1: §25 (ЭДС, сторонние силы) + §26 (закон Ома для полной цепи, конструктор электрической цепи) + Финал главы 4 (5 боссов).
Phase 5: Магнитное поле и индукция (7 §) — 4 волны
- Wave 1: §27 (опыт Эрстеда, симуляция) + §28 (индукция, правило буравчика, 3D-линии магнитной индукции вокруг проводника).
- Wave 2: §29 (сила Ампера, правило левой руки, симуляция) + §30 (сила Лоренца — 3D-движение частицы по спирали в B-поле).
- Wave 3: §31 (магнитный поток, опыты Фарадея — анимация катушки и магнита) + §32 (правило Ленца, закон ЭМИ).
- Wave 4: §33 (самоиндукция, индуктивность, LR-цепь) + Финал главы 5 (7 боссов + ачивка «Мастер магнетизма»).
Phase 6: Ток в различных средах (4 §) — 2 волны
- Wave 1: §34 (металлы, сверхпроводимость) + §35 (электролиты, законы Фарадея).
- Wave 2: §36 (газы, плазма, виды разрядов) + §37 (полупроводники, p-n переход — визуализация дырок и электронов, n-/p-тип) + Финал главы 6 (5 боссов + ачивка «Мастер токов»).
Phase 7: Финал курса Физика 10
- Итоговая шпаргалка (6 mini-карточек: МКТ, термодинамика, электростатика, ток, магнетизм, ток в средах)
- 10 интегрированных боссов, комбинирующих темы из разных глав:
- МКТ + термодинамика:
UиTмоноатомного газа - Изопроцесс + работа:
Aза изобарное расширение - Цикл Карно: КПД при
T_1 = 600К,T_2 = 300К - Закон Кулона + суперпозиция: сила на 3-й заряд от двух источников
- Конденсатор + энергия:
WотC,U - Закон Ома для полной цепи + КПД
- Сила Лоренца + радиус:
R = mv/(qB) - Закон ЭМИ Фарадея:
\mathcal{E}_iотd\Phi/dt - Самоиндукция + энергия:
W_L = LI^2/2 - Магистр электродинамики: синтез
- МКТ + термодинамика:
- Ачивка «Магистр физики 10» (+150 XP — крупнейший курс)
- Кнопка «К каталогу учебников» →
/textbooks
📦 Структура каждого § (стандарт)
Wave 0 главы — skeleton (включено в Phase 0)
- CSS + цветовая палитра 3 акцентов на §
- Sections + stub-builders
- Hub-карточка обновляется
- Миграция в БД
Wave N — наполнение § (по 2 § на волну)
Каждый § содержит:
- 3 теоретические карточки (
theory,rule,example) с SVG-схемами/графиками - 4 интерактива (
.wgвиджеты):- Симуляция или 3D/SVG-визуализатор (главный)
- Калькулятор закона (ввод параметров → формула с подстановкой → результат с единицами)
- DnD/Квикфайр (понятийный)
- Тренажёр расчётных задач (5-6 задач с числовым ответом, допуск 1-5%)
- Кнопка «Я прочитал § (+10 XP)»
- Прогресс/XP: IV1 15%/10XP, IV2 15%/10XP, IV3 25%/15XP, IV4 25%/15XP, чтение 30%/10XP
Wave финал главы
- Итоговая шпаргалка с формулами
- 5-7 интегрированных боссов (синтез тем главы)
- Ачивка «Мастер главы N» + 50 XP + confetti
- Кнопка перехода к следующей главе
📊 Оценка объёма
| Глава | § | LOC |
|---|---|---|
| Phase 0: skeleton + phys.js | — | 2500 |
| Глава 1 МКТ (§§1-10) | 10 | 13 000 |
| Глава 2 Термодинамика (§§11-15) | 5 | 6 500 |
| Глава 3 Электростатика (§§16-24) | 9 | 12 000 |
| Глава 4 Пост. ток (§§25-26) | 2 | 3 000 |
| Глава 5 Магнетизм (§§27-33) | 7 | 10 500 |
| Глава 6 Ток в средах (§§34-37) | 4 | 5 500 |
| Phase 7 финал курса | — | 1 500 |
| Итого | 37 | ~54 500 LOC |
Это больше, чем Геометрия 11 (~30K) или Алгебра 9 (~30K). Самый объёмный курс.
⚠️ Критические правила (опыт всех 10 предыдущих учебников)
❌ НЕ делать
- Slider'ы в пиксельных диапазонах (40..150). Только в реальных физических единицах с правильным масштабом отрисовки.
- Подписи без единиц измерения (
p = 100— это что? Па? атм?). Всегда:p = 1атм= 10^5Па. - Эмодзи (
⚠,🌡️,🔋). Только inline SVG. - Одиночный
\перед буквой в JS template literals:\dfrac,\sin,\vec. ВСЕГДА\\dfrac. - Сырой KaTeX в
<option>— KaTeX там не рендерится. Только unicode-текст в<option>. - Эталонные значения вместо реальных — в задачах используй
\pi = 3.14,g = 10м/с²,k_B = 1.38 \cdot 10^{-23}Дж/К ровно. - Symbol
\degreeне существует в KaTeX. Используй^\\circдля °. - Бесконечные симуляции без паузы — всегда кнопка «Пауза / Сброс» и
cancelAnimationFrameпри unmount.
✅ Обязательно
- Все единицы СИ в формулах — никаких ватт в задаче без обозначения «Вт».
- Snap-точки в slider'ах для эталонных значений:
T = 273К,p = 1атм,g = 10м/с². - Цветовая кодировка едина по всем § (заряд+/−, поле $E$/
B, сила, скорость, ток). - KaTeX-аудит через
nodeпосле каждого Wave (паттерн[^\\]\\[a-z]{2,}в JS-блоках). - JS parse-check через
new Function(scriptBody)после каждого Wave. - Авторов нет — в hub footer'е только «Интерактивный учебник «Физика — 10 класс» · LearnSpace» (как сделали для остальных).
- Симуляции должны иметь паузу, перезапуск, и быть физически корректными: реальная скорость, реальная масса, реальные коэффициенты.
🎬 Запуск
Phase 0: skeleton 6 ch-файлов + hub + миграция + новый модуль phys.js со всеми physics-хелперами.
Палитра hub: yellow/amber (классическая для физики) — --pri:#ca8a04 (yellow-600), --pri-d:#a16207 (yellow-700), --pri-soft:#fef3c7. Header gradient: linear-gradient(110deg,#713f12 0%,#ca8a04 55%,#fde047 100%). Эта палитра отличается от Алгебры 11 (teal) и Геометрии 11 (cyan).
После Phase 0 → Phase 1 Wave 1 (§1 МКТ + §2 масса молекул).
После завершения всех 8 Phase Физика 10 — план одного 10-класса завершён (можно потом план Алгебры 10 + Геометрии 10).