Files
Learn_System/plans/textbooks-7/PLAN_PHYSICS_7.md
T
Maxim Dolgolyov d701d824ba docs(plans): план реализации учебника Физика 7 (Исаченкова, 2022)
Полный план в стиле PLAN_PHYSICS_8: 5 содержательных глав, 42 параграфа,
6 виртуальных ЛР, 8 фаз реализации, ~62 800 LOC.

Особенности курса:
- Новая глава §§1–7 «Методы познания»: измерения, СИ, цена деления, погрешность.
- Глава 4 «Давление» — гидростатика, закон Паскаля, барометры (нет в phys 8).
- Глава 5 «Работа/мощность/энергия» — закон сохранения механической энергии.
- Палитра sky/blue (#0284c7), не пересекается с violet phys 8, amber phys 10, teal phys 11.
- Новые хелперы в phys.js: forceVector, dynamometer, connectedVessels,
  hydraulicPress, mercuryBarometer, HillSlideSim, PendulumSim и др.
- Учтены уроки phys 9: cache-busting ?v=YYYYMMDD, sidebar-фикс на desktop,
  delimiters для renderMathInElement, скобка вне $..$.

Главный визуал курса — закон сохранения механической энергии
(горка с тележкой / маятник, графики E_к(t)/E_п(t)/E_полн(t)).
ИТОГО: 5-й физический курс проекта, первый учебник 7 класса по физике.
2026-05-30 10:12:48 +03:00

49 KiB
Raw Blame History

План реализации: Физика 7 (Беларусь, Исаченкова, 2022)

Источник: fizika_Isachenkova_7kl_rus_2022.pdf (≈170 стр., 5 содержательных глав + лабораторный практикум) Издательство: «Народная асвета», Минск, 2022 (2-е издание, пересмотренное и дополненное) Уровень: базовый (для 7 класса УОСО с русским языком обучения). Авторы (исходник, в hub НЕ показываем): Л. А. Исаченкова, Е. В. Громыко, Ю. Д. Лещинский.

Первый курс физики у школьника. Унаследует ВСЁ из инфраструктуры Физики 8 (phys.js, optics.js тут не нужен, slider'ы в СИ, snap-точки, drawArrow, createGasSim, molecule, thermometer, tempColor). Новый блок — методология науки (§§1–7): измерения, СИ, цена деления, погрешности — этого нет ни в одном существующем курсе и требует отдельных интерактивов («виртуальная линейка с погрешностью», «термометр-конвертер»). Также новые блоки — гидростатика (Паскаль, сообщающиеся сосуды, барометр) и энергия + закон сохранения (горка/маятник). Это четвёртый физический учебник в проекте после Физики 8, 9, 10.


🎯 Содержание учебника

Глава 1. Физические методы познания природы (§§1–7)

§ Тема Ключевые понятия
§1 Физика — наука о природе. Связь с другими науками. Физика и техника Природа, тело, явление; связь с астрономией, химией, биологией; роль техники
§2 Физическое тело, физическое явление, физическая величина Тело vs вещество vs явление; величина — численная характеристика
§3 Методы исследования в физике Наблюдение, эксперимент, гипотеза, теория
§4 Роль измерений. Прямые и косвенные измерения Прямое: l линейкой. Косвенное: S = ab по двум прямым
§5 Единицы измерения физических величин. СИ Основные ед.: м, кг, с, А, К, моль, кд. Кратные/дольные: к, М, м, мк, н
§6 Действия над физическими величинами 1\,км/ч = 0{,}278\,м/с, 1\,г/см^3 = 1000\,кг/м^3
§7 Измерительные приборы. Цена деления. Погрешность C = (X_2 - X_1)/N, \Delta X = C/2, запись X \pm \Delta X

Глава 2. Строение вещества (§§8–13)

§ Тема Ключевые понятия
§8 Дискретное строение вещества Молекула, атом, d_{мол} \sim 10^{-10} м
§9 Тепловое движение частиц Хаотическое движение, диффузия, v_{мол} зависит от T
§10 Взаимодействие частиц вещества Притяжение/отталкивание, равновесное расстояние r_0
§11 Газообразное, жидкое и твёрдое состояния Расстояния, силы, форма/объём для трёх состояний
§12 Тепловое расширение \Delta l \sim \Delta T; биметалл, рельсы, мостовые швы
§13 Температура. Измерение температуры. Термометры t, °C, шкала Цельсия; жидкостный/электрический термометр

Глава 3. Движение и силы (§§14–27)

§ Тема Ключевые формулы
§14 Механическое движение. Относительность покоя и движения СО, тело отсчёта
§15 Траектория, путь, время. Единицы пути и времени s — длина траектории; [s] = м, [t] = с
§16 Равномерное движение. Скорость. Единицы скорости v = s/t, [v] = м/с
§17 Графики пути и скорости при равномерном прямолинейном движении s(t) — прямая, v(t) — горизонталь
§18 Неравномерное (переменное) движение. Средняя скорость \langle v\rangle = s_{полн}/t_{полн}
§19 Почему изменяется скорость движения. Инерция Закон инерции Галилея
§20 Масса тела. Плотность вещества. Единицы плотности m, [m] = кг; \rho = m/V, [\rho] = кг/м^3
§21 Сила \vec{F} — мера взаимодействия; величина и направление
§22 Явление тяготения. Сила тяжести \vec{F}_т — к центру Земли; F_т = mg, g = 9{,}8 \approx 10\,Н/кг
§23 Сила упругости Деформация → F_{упр}; закон Гука (качественно)
§24 Вес тела P = mg (на горизонтальной опоре); вес ≠ сила тяжести (точка приложения)
§25 Единица силы. Измерение силы. Динамометр [F] = Н; пружинный динамометр со шкалой
§26 Сложение сил. Равнодействующая сила Сонаправленные: R = F_1 + F_2; противоположные: $R =
§27 Трение. Сила трения F_{тр} \sim N; покоя / скольжения / качения

Глава 4. Давление (§§28–35)

§ Тема Ключевые формулы
§28 Давление. Единицы давления p = F/S, [p] = Па
§29 Давление газа Удары молекул о стенки; p растёт с T и плотностью
§30 Передача давления газами и жидкостями. Закон Паскаля p передаётся одинаково во все стороны; гидравлический пресс
§31 Давление жидкости, обусловленное её весом p = \rho g h
§32 Сообщающиеся сосуды Однородная жидкость → один уровень
§33 Газы и их вес Атмосфера имеет массу; столб воздуха давит
§34 Атмосферное давление Опыт Торричелли; p_0 = 760\,мм\,рт.\,ст. = 101\,325\,Па
§35 Измерение атмосферного давления. Барометры и манометры Ртутный/анероидный барометр; жидкостный манометр

Глава 5. Работа. Мощность. Энергия (§§36–42)

§ Тема Ключевые формулы
§36 Механическая работа. Единицы работы A = Fs\cos\alpha (для 7-го: A = Fs при \vec F \parallel \vec s); [A] = Дж
§37 Полезная и совершённая работа. КПД \eta = A_{полез}/A_{полн} \cdot 100\%
§38 Мощность. Единицы мощности P = A/t, [P] = Вт; 1\,л.\,с. = 736\,Вт
§39 Кинетическая энергия E_к = mv^2/2, [E] = Дж
§40 Потенциальная энергия E_п как «запас» работы; гравитационная и упругая
§41 Расчёт потенциальной энергии E_п = mgh (грав.), E_п = k\Delta l^2/2 (упругая, качественно)
§42 Закон сохранения механической энергии E_к + E_п = \text{const} (без трения)

Глава 6. Лабораторный эксперимент (6 ЛР — отдельная страница physics_7_lab.html)

Тема Связан с §
ЛР-1 Определение цены деления шкалы измерительного прибора §7
ЛР-2 Измерение длины §4, §7
ЛР-3 Измерение объёма §4 (косвенно)
ЛР-4 Изучение неравномерного движения §18
ЛР-5 Измерение плотности §20
ЛР-6 Изучение силы трения §27

ИТОГО: 5 содержательных глав, 42 параграфа, 6 виртуальных лабораторных работ.


🎨 SVG-СТАНДАРТ КАЧЕСТВА

Унаследовано из Физики 8/9/10 (phys.js — БЕЗ изменений)

  • drawArrow(x1,y1,x2,y2,color,width,headSize)
  • molecule(x,y,r,color) — для §§811
  • createGasSim(opts) — МКТ-симуляция, §8–11
  • thermometer(x, y, h, tMin, tMax, tValue) — §13
  • tempColor(t, tMin, tMax) — §12 (тепловое расширение, цветовой градиент)
  • phaseGraphTT — НЕ нужен в 7 (фазовые переходы в 8 классе)
  • 2D-математика (axes2D, plotFunc) — для §17 (графики s(t), v(t))
  • Конвертеры: kgToGrams, mToKm, metersPerSecToKmH (новые, см. ниже)

НОВЫЕ хелперы в phys.js (для главы 3-5 физики 7)

// === Стрелка СИЛЫ на теле (с подписью) ===
// Вход: точка приложения, модуль F (Н), угол (deg), цвет, scale (px/Н)
function forceVector(x, y, F, angleDeg, color, label, scale){
  // drawArrow + текст рядом с концом
}

// === Динамометр (пружина + шкала + указатель) ===
function dynamometer(x, y, h, Fmax, Fcurr){
  // Корпус + пружина-зигзаг + шкала 0..Fmax + указатель + подпись "F = X Н"
}

// === Брусок с грузами ===
function blockOnSurface(x, y, w, h, label, weights){
  // Прямоугольник + опционально гири сверху + подпись массы
}

// === Сообщающиеся сосуды (вода в U-образной/двух разной формы) ===
function connectedVessels(x, y, shapeA, shapeB, levelY, fluidColor){
  // Два сосуда соединены трубкой внизу; единый уровень
}

// === Гидравлический пресс ===
function hydraulicPress(x, y, sSmall, sLarge, fSmall, fluidColor){
  // Цилиндр1 (малая S) → жидкость → Цилиндр2 (большая S); стрелки сил F1 и F2
}

// === Ртутный барометр Торричелли ===
function mercuryBarometer(x, y, hMm){
  // Сосуд с ртутью + перевёрнутая трубка; уровень 0..760 мм рт. ст.
}

// === Анероид (стрелочный барометр) ===
function aneroidBarometer(x, y, r, pressurePa){
  // Круглый прибор со стрелкой 720..780 мм рт. ст. / 960..1040 гПа
}

// === Жидкостный U-манометр ===
function uManometer(x, y, w, h, deltaH, fluidColor){
  // U-трубка + разница уровней Δh для измерения давления газа
}

// === Тележка на горке (для §42 — закон сохранения) ===
class HillSlideSim {
  // Горка с переменной высотой; тележка с m, v, h, E_к, E_п, E_полн.
  // Опции: friction on/off.
  // Анимация скатывания + графики E_к(x), E_п(x), E_полн(x).
}

// === Маятник (для §42 — закон сохранения) ===
class PendulumSim {
  // Нить L, шарик m, начальное отклонение φ_0.
  // Анимация колебаний + индикаторы E_к, E_п.
}

// === Линейка с погрешностью (для §7) ===
function rulerWithError(x, y, len, divisions, valueShown){
  // Шкала + подвижная риска + всплывающее "X = (5.4 ± 0.1) см"
}

// === Биметаллическая пластина (для §12) ===
function bimetal(x, y, w, h, deltaT){
  // Двухслойная пластина, гнущаяся при ΔT (наглядно)
}

// === Тепловое расширение стержня (для §12) ===
function expandingRod(x, y, l0, alpha, deltaT){
  // Брусок + индикатор Δl относительно холодного состояния
}

Цветовая палитра Физики 7

Главная palette: SKY/BLUE 600 (отличается от violet Phys 8, amber Phys 10, teal Phys 11)

  • --pri: #0284c7 (sky-700), --pri-d: #075985, --pri-soft: #e0f2fe
  • Header gradient: linear-gradient(110deg, #0c4a6e 0%, #0284c7 55%, #7dd3fc 100%)

Цвета по тематике:

  • Тёплое/нагрев — красный (#dc2626)
  • Холод — синий (#2563eb)
  • Температурный градиент — HSL hue=240·(1-t) (как в phys 8)
  • Твёрдое тело — индиго (#4f46e5)
  • Жидкость — циан-голубой (#0891b2)
  • Газ — серый (#64748b)
  • Сила тяжести $\vec F_т$ — фиолетовый (#7c3aed)
  • Сила упругости $\vec F_{упр}$ — оранжевый (#ea580c)
  • Сила трения $\vec F_{тр}$ — коричневый (#92400e)
  • Нормальная реакция $\vec N$ — серый (#475569)
  • Вес $\vec P$ — индиго (#4338ca)
  • Равнодействующая $\vec R$ — зелёный (#10b981)
  • Давление — янтарный (#d97706)
  • Атмосфера — голубой (#0ea5e9)
  • Работа — зелёный (#10b981)
  • Мощность — оранжевый (#ea580c)
  • Энергия кинетическая — красно-оранжевый (#ef4444)
  • Энергия потенциальная — синий-фиолетовый (#6366f1)

Правила (обязательны с §1, наследие Физики 8/9/10)

  1. Все единицы измерения через KaTeX\\text{Н}, \\text{Па}, \\text{Дж}, \\text{кВт}, \\text{мм рт.ст.}. Никогда сырой текст.
  2. Slider'ы — в реальных физических величинах:
    • Длина: 0{,}1..10 м (snap на 1, 2)
    • Масса: 0{,}01..100 кг (snap на 0.1, 1, 10, 50)
    • Время: 1..3600 с (snap на 60, 600, 3600)
    • Скорость: 0..30 м/с (snap на 1, 5, 10, 20)
    • Объём: 0{,}001..1 м³ (отображать в л, считать в м³)
    • Плотность: из таблицы (вода 1000, лёд 900, алюминий 2700, железо 7800, ртуть 13600, …)
    • Сила: 0{,}1..1000 Н (snap на 1, 10, 100)
    • Площадь: 0{,}0001..1 м² (отображать в см², считать в м²)
    • Давление: 1..200\,000 Па (snap на 100000)
    • Глубина: 0{,}1..100 м (snap на 1, 10)
    • Работа: 1..10\,000 Дж (snap на 1000)
    • Мощность: 1..10\,000 Вт (snap на 1000)
    • Высота для E_п: 0..50 м (snap на 1, 5, 10)
    • Температура: -50..150 °C (snap на 0, 20, 100)
  3. Snap-точки на эталонных значениях: g = 9{,}8\,Н/кг, \rho_{вода} = 1000\,кг/м^3, \rho_{ртути} = 13600, p_{атм} = 101\,325\,Па = 760\,мм\,рт.\,ст.
  4. Все формулы — KaTeX, двойной backslash: \\dfrac{F}{S}, \\rho g h, \\vec{F}.
  5. Векторы — со стрелками через drawArrow (силы, скорости). В KaTeX — \\vec{F}, \\vec{v}.
  6. Подписи единиц измерения — обязательны на всех осях, во всех результатах.
  7. СимуляцииrequestAnimationFrame с паузой / сбросом / cancelAnimationFrame при unmount.
  8. Эмодзи запрещены. Только inline SVG .ic или HTML-сущности (✓, ★, ✦).
  9. Никаких пикселей в подписях — всё в СИ или производных единицах; масштаб K = px/единица в каждом виджете.
  10. Авторов нет — в hub footer'е только «Интерактивный учебник «Физика — 7 класс» · LearnSpace». Раздел «От авторов» из учебника не переносим. Сборку «Дорогие семиклассники!» не переносим. QR-коды учебника — не переносим (они на видеоопыты издателя, в нашем проекте — свои симуляции).
  11. innerHTML для строк с HTML-сущностями (а не textContent).
  12. KaTeX-аудит после каждого Wave: регексп [^\\]\\[a-zA-Z]{2,} по JS-блокам в HTML.
  13. JS parse-check после каждого Wave: new Function(scriptBody) в скрипте-проверке.
  14. Cache-busting ?v=YYYYMMDD для всех /js/phys.js и /js/phys7_*.js — урок из истории с phys9 (см. коммит a3f7e99).

Типы интерактивов по темам

Тип Применение
Калькулятор цены деления + симулятор линейки/термометра с погрешностью §7
Конвертер единиц СИ (кратные/дольные, км/ч ↔ м/с, г/см³ ↔ кг/м³) §5, §6
Drag-and-drop «тело / вещество / явление / величина» §1, §2
МКТ-симуляция трёх состояний (slider T, поведение молекул меняется) §8, §9, §11
Диффузия (две жидкости/газа смешиваются — анимация) §9
Тепловое расширение стержня (slider \Delta T\Delta l визуально) §12
Биметаллическая пластина (slider T → изгиб) §12
Виртуальный термометр (slider T, шкала Цельсия с snap на 0, 100) §13
Конвертер °C ↔ К (для любознательных, опционально) §13
Симуляция относительности движения (2 СО, переключатель) §14
Калькулятор средней скорости (как в физ 9 §7, но упрощённо, без графиков) §16, §18
График s(t) и $v(t)$ для равномерного движения §17
Калькулятор плотности \rho = m/V + таблица материалов §20
Конструктор сил на теле — главный визуал главы 3: drag-and-drop стрелок \vec F_т, \vec F_{упр}, \vec F_{тр}, \vec N + расчёт равнодействующей §21, §22, §26
Виртуальный динамометр (slider m → пружина растягивается → F = mg) §22, §25
Сложение сил (slider F_1, F_2 → результирующая, наглядно через drawArrow) §26
Симулятор трения (slider N, \muF_{тр}; брусок едет/стоит) §27
Калькулятор давления p = F/S с примерами (гвоздь / тапок / трактор) §28
Симуляция давления газа (slider T, V → удары молекул, p растёт/падает) §29
Гидравлический пресс — главный визуал главы 4: slider S_1, S_2, F_1F_2 = F_1 \cdot S_2/S_1 §30
Калькулятор $p = \rho g h$ + столб жидкости разной формы §31
Сообщающиеся сосуды (slider формы 2-го сосуда, заливаем воду → выравнивание) §32
Виртуальный барометр Торричелли (slider высоты места → атм. давление) §34, §35
Калькулятор $A = Fs$ + симуляция «толкаем брусок» §36
Калькулятор КПД \eta = A_{полез}/A_{полн} + примеры (наклонная плоскость) §37
Калькулятор мощности P = A/t + таблица мощностей (человек, машина, …) §38
Калькулятор $E_к = mv^2/2$ + симулятор (растёт квадратично от v) §39
Калькулятор $E_п = mgh$ + симулятор подъёма/падения §41
Главный визуал курса — Закон сохранения энергии: горка с тележкой / маятник; графики E_к(t), E_п(t), E_{полн}(t) §42

🚀 ПОРЯДОК РЕАЛИЗАЦИИ

42 параграфа + 6 ЛР → 8 фаз (как у Физики 8).

Phase 0: Архитектура (фундамент)

  • physics_7_hub.html — палитра sky/blue (по обложке учебника — бирюзовый с акцентом на синий из «ФИЗИКА»): --pri:#0284c7 (sky-700), --pri-d:#075985, --pri-soft:#e0f2fe. Header gradient linear-gradient(110deg,#0c4a6e 0%,#0284c7 55%,#7dd3fc 100%). Палитра не пересекается с Физикой 8 (violet), 9 (orange/amber-yellow), 10 (yellow/amber), 11 (teal/cyan).
  • 5 ch-файлов: physics_7_ch1.html (методы познания), _ch2.html (строение вещества), _ch3.html (движение и силы), _ch4.html (давление), _ch5.html (работа/мощность/энергия)
  • 1 отдельная страница: physics_7_lab.html (6 ЛР)
  • Миграция 039_physics_7_hub.sql (следующий свободный номер после 038_physics_9_hub.sql)
  • Расширение frontend/js/phys.js: новые хелперы — forceVector, dynamometer, blockOnSurface, connectedVessels, hydraulicPress, mercuryBarometer, aneroidBarometer, uManometer, rulerWithError, bimetal, expandingRod, классы HillSlideSim, PendulumSim
  • 2D-хелперы (axes2D, plotFunc) подключены в каждый ch
  • KaTeX CDN + auto-render (с delimiters: [{left:'$$',right:'$$',display:true},{left:'$',right:'$',display:false}] — урок из phys9 ch1)
  • POLISH CSS + bump-score JS из общего phys-textbook-widgets.css
  • Тестовая страница physics_7_test.html (рендер всех новых хелперов) — НЕ публикуется
  • В каждом .html хедере подключение JS — обязательно с ?v=YYYYMMDD для cache-busting (урок из истории с phys9, коммит a3f7e99)
  • Sidebar-фикс: добавить @media(min-width:981px){#sidebar-btn{display:none}.col-side-backdrop.show{display:none}} сразу (урок из коммита 9d5a295)

Phase 1: Глава 1 «Физические методы познания природы» (§§1–7) — 3 волны

  • Wave 1: §1 (физика как наука: drag-and-drop «связь с астрономией/химией/биологией/техникой») + §2 (тело / вещество / явление / величина — DnD-классификатор: 12 карточек по 4 корзинам).
  • Wave 2: §3 (методы исследования — quiz «опыт vs наблюдение vs гипотеза») + §4 (прямые/косвенные измерения — калькулятор косвенных: S = ab, V = abc, \rho = m/V) + §5 (СИ-конвертер — slider кратных/дольных, табличный тренажёр).
  • Wave 3: §6 (действия над величинами — конвертер км/ч ↔ м/с, г/см³ ↔ кг/м³, Вт ↔ кВт ↔ л.с.) + §7 (главный визуал главы 1: виртуальная линейка с подвижной риской и шкалами разной цены деления — symbolic «как изменится погрешность, если разделить шкалу на 10») + Финал главы 1 (5 боссов: цена деления, СИ, конвертация, погрешность, косвенное измерение; ачивка «Юный физик»).

Phase 2: Глава 2 «Строение вещества» (§§8–13) — 3 волны

  • Wave 1: §8 (дискретное строение — иллюстрация d_{мол} vs d_{волоса}, конструктор молекулы H₂O/CO₂) + §9 (тепловое движение — симуляция диффузии: чернила в воде с slider T, createGasSim из phys.js).
  • Wave 2: §10 (взаимодействие частиц — симуляция «равновесное расстояние» r_0: график F(r)) + §11 (главный визуал главы 2: переключатель «твёрдое / жидкое / газообразное» — три режима МКТ-симуляции).
  • Wave 3: §12 (тепловое расширение — симуляция стержня и биметалла с slider \Delta T) + §13 (виртуальный термометр — slider T от $-50..150$°C, шкала Цельсия) + Финал главы 2 (5 боссов: молекулы, диффузия, состояния, расширение, термометр; ачивка «Знаток вещества»).

Phase 3: Глава 3 «Движение и силы» — часть 1: кинематика (§§14–20) — 3 волны

  • Wave 1: §14 (относительность — 2 СО, drag-переключатель «откуда смотрим») + §15 (траектория / путь / время — DnD).
  • Wave 2: §16 (равномерное движение — симулятор автомобиля с slider v, измеряем путь за t) + §17 (главный визуал кинематики: интерактивный график s(t) + v(t) для равномерного движения; slider v_0, s_0).
  • Wave 3: §18 (средняя скорость — калькулятор двух участков, аналог phys 9 ch1 §7 но упрощённо) + §19 (инерция — симуляция «убираем силу, тело продолжает движение») + §20 (плотность — калькулятор \rho = m/V, таблица материалов, ВАХ-плоттер для «угадай вещество по $\rho$»).

Phase 4: Глава 3 «Движение и силы» — часть 2: силы (§§21–27) — 3 волны

  • Wave 1: §21 (что такое сила — DnD «какая сила действует?» с картинками) + §22 (сила тяжести — калькулятор F_т = mg, slider m, snap на яблоко 100 г, ребёнок 30 кг, машина 1000 кг) + §23 (сила упругости — симуляция растягивающейся пружины с динамометром).
  • Wave 2: §24 (вес тела — конструктор «тело на опоре / на подвесе»; разница «сила тяжести vs вес») + §25 (виртуальный динамометр — slider F от 0 до F_{max} → растяжение пружины → показание стрелки).
  • Wave 3: §26 (главный визуал главы 3: «Конструктор сил на теле» — drag-and-drop стрелок \vec F_т, \vec F_{упр}, \vec F_{тр}, \vec N, расчёт равнодействующей \vec R + текстовый вывод «тело в равновесии / ускоряется») + §27 (симулятор трения — slider N и \muF_{тр}, brick едет/стоит при F_{тяги}) + Финал главы 3 (10 боссов: путь, скорость, средняя скорость, плотность, сила тяжести, вес, динамометр, равнодействующая, трение, инерция; ачивка «Мастер движения»).

Phase 5: Глава 4 «Давление» (§§28–35) — 3 волны

  • Wave 1: §28 (давление — калькулятор p = F/S, примеры «гвоздь / тапок / трактор / лыжи на снегу») + §29 (давление газа — симуляция: молекулы бьют о стенки, slider T, Vp).
  • Wave 2: §30 (закон Паскаля — иллюстрация: «надавили на воздушный шар сверху — стрелки наружу»; гидравлический пресс: slider S_1, S_2, F_1F_2 = F_1 S_2/S_1) + §31 (давление жидкости — калькулятор p = \rho g h, столб разной формы, парадокс «гидростатический парадокс») + §32 (сообщающиеся сосуды — slider формы 2-го сосуда → единый уровень; калькулятор «однородная vs неоднородная»).
  • Wave 3: §33 (газы и их вес — расчёт «масса воздуха в комнате»: slider V, \rho_{возд}) + §34 (атмосферное давление — опыт Магдебургских полушарий, симуляция; калькулятор p_0 на разной высоте) + §35 (главный визуал главы 4: ртутный барометр Торричелли + анероид + U-манометр — три прибора, slider p, наблюдаем разные шкалы) + Финал главы 4 (7 боссов: давление, Паскаль, гидравлический пресс, гидростатика, сообщ. сосуды, атм. давление, барометр; ачивка «Властелин давления»).

Phase 6: Глава 5 «Работа. Мощность. Энергия» (§§36–42) — 3 волны

  • Wave 1: §36 (механическая работа — калькулятор A = Fs, симуляция «двигаем брусок по поверхности», работа силы трения отрицательная) + §37 (КПД — калькулятор \eta = A_{полез}/A_{полн}, примеры подъёма груза по наклонной vs вертикально).
  • Wave 2: §38 (мощность — калькулятор P = A/t, таблица мощностей: человек 100 Вт, лошадь 736 Вт, машина 100 кВт, ракета 100 МВт) + §39 (кинетическая энергия — калькулятор E_к = mv^2/2, симуляция «удвоили vE_к выросло в 4 раза») + §40 (потенциальная энергия — введение, симулятор подъёма груза, E_п как запас работы).
  • Wave 3: §41 (расчёт E_п = mgh — slider m, h, snap на 1 кг, 10 м; калькулятор E_п для гравитационной и упругой деформации пружины) + §42 (главный визуал курса: «Горка с тележкой / маятник» — HillSlideSim / PendulumSim: тележка скатывается, E_к + E_п = \text{const}; графики E_к(t), E_п(t), E_{полн}(t) в реальном времени; toggle «с трением / без») + Финал главы 5 (7 боссов: работа, КПД, мощность, E_к, E_п, E_п упругая, сохранение; ачивка «Энергетик»).

Phase 7: Лабораторный практикум (physics_7_lab.html) — 1 волна

Отдельная страница с 6 виртуальными ЛР. Каждая ЛР = карточка с интро + методическими подсказками («Цель», «Оборудование», «Проверь себя», «Ход работы», «Контрольные вопросы», «Вывод», «Суперзадание») + симуляция + таблица измерений + расчётная формула + автогенерируемый отчёт + кнопка «Сдать ЛР».

  • ЛР-1 цена деления (§7) — виртуальные приборы (мензурка, термометр, амперметр, линейка), задание определить цену деления и снять отсчёт.
  • ЛР-2 измерение длины (§4, §7) — виртуальная линейка с подвижной риской, snap на мм, оценка погрешности.
  • ЛР-3 измерение объёма (§4) — мензурка + тело неправильной формы (вытеснение жидкости); расчёт V = V_2 - V_1.
  • ЛР-4 неравномерное движение (§18) — шарик на наклонной плоскости, slider угла, secunbomer + лента; расчёт \langle v\rangle на двух участках.
  • ЛР-5 плотность (§20) — весы + мензурка + 3 образца; расчёт \rho и определение вещества по таблице.
  • ЛР-6 сила трения (§27) — динамометр + брусок с грузами на разных поверхностях; расчёт F_{тр} и сравнение «дерево / резина / металл».

Ачивка «Лаборант 7 класса» (+80 XP) за прохождение всех 6 ЛР.

Phase 8: Финал курса Физика 7

  • Итоговая шпаргалка (5 mini-карточек: методы, вещество, движение/силы, давление, работа/энергия)
  • 10 интегрированных боссов, комбинирующих темы из разных глав:
    1. Цена деления + измерение: линейка с делением 0.5 см, отсчёт.
    2. Плотность + масса: найти V алюминиевого бруска массой 270 г.
    3. Сила тяжести + динамометр: показание динамометра для m = 250 г на Земле и на Луне (g_{Л} = 1{,}6 Н/кг).
    4. Равнодействующая + Ньютон: 3 силы под углами, найти \vec R (для 7-го — только параллельные).
    5. Давление + гидростатика: давление на дне бассейна глубиной 3 м.
    6. Закон Паскаля + гидравлика: малый поршень 2 см², большой 200 см²; на малый давит F_1 = 50 Н; что поднимает большой?
    7. Атмосферное давление + барометр: разница давлений между этажами 30-этажного дома.
    8. Работа + сила трения: работа силы трения при перемещении бруска на 5 м с F_{тр} = 20 Н.
    9. КПД наклонной плоскости: поднимаем груз 50 кг по наклону длиной 4 м, высота 1 м, прикладывая 150 Н. Найти \eta.
    10. Магистр физики 7 (закон сохранения): тело массой 0.5 кг падает с 10 м без сопротивления; найти v у земли.
  • Ачивка «Магистр физики 7» (+150 XP).
  • Кнопка «К каталогу учебников» → /textbooks.

📦 Структура каждого § (стандарт, наследует Физику 8)

Каждый § содержит:

  • 3 теоретические карточки (theory, rule, example) с SVG-схемами/графиками.
  • 4 интерактива (.wg виджеты):
    1. Главная симуляция / визуализатор (специфичный для темы)
    2. Калькулятор закона (ввод параметров → формула с подстановкой → результат с единицами)
    3. DnD / Квикфайр (понятийный тренажёр)
    4. Тренажёр расчётных задач (5–6 задач с числовым ответом, допуск 1–5 %)
  • Кнопка «Я прочитал § (+10 XP)»
  • Прогресс/XP: IV1 15 % / 10 XP, IV2 15 % / 10 XP, IV3 25 % / 15 XP, IV4 25 % / 15 XP, чтение 30 % / 10 XP

Финал главы:

  • Итоговая шпаргалка с формулами и единицами.
  • 5–10 интегрированных боссов (синтез тем главы)
  • Ачивка «Мастер главы N» + 50 XP + confetti
  • Кнопка перехода к следующей главе

📊 Оценка объёма

Глава § LOC
Phase 0: skeleton + расширение phys.js 3 500
Глава 1 Методы познания (§§1–7) 7 8 000
Глава 2 Строение вещества (§§8–13) 6 7 500
Глава 3 Движение и силы (§§14–27) 14 17 000
Глава 4 Давление (§§28–35) 8 10 500
Глава 5 Работа / Мощность / Энергия (§§36–42) 7 9 500
Phase 7: Лабораторный практикум (6 ЛР) 5 000
Phase 8: финал курса 1 800
Итого 42 ~62 800 LOC

Это чуть больше Физики 8 (~61 000) из-за главы методологии (§§1–7) — для семиклассника-новичка введение в науку нужно объяснять с нуля, плюс новые типы интерактивов (конвертеры СИ, симулятор линейки с погрешностью).


⚠️ Критические правила (унаследовано + новое)

НЕ делать

  • Slider'ы в пиксельных диапазонах (40..150). Только в реальных физических единицах с правильным масштабом отрисовки (K = px/единица).
  • Подписи без единиц измерения (F = 12 — это что? Н? кгс?). Всегда: F = 12 Н.
  • Эмодзи (, 🌡️, 💧, ⚖️). Только inline SVG .ic или HTML-сущности (✓, ★).
  • Одиночный \ перед буквой в JS template literals: \dfrac, \sin, \vec, \rho. ВСЕГДА \\dfrac, \\rho.
  • Сырой KaTeX в <option> — KaTeX там не рендерится. Только unicode-текст (F/S, Δt, ρgh).
  • \degree не существует в KaTeX — используй ^\\circ.
  • Скобка вне $..$: ($v_1+v_2)/2$ — это БАГ (KaTeX парсит v_1+v_2)/2 с orphan-скобкой). Правильно: $(v_1+v_2)/2$. (Урок из коммита a3f7e99 для phys 9.)
  • renderMathInElement(box) без delimiters — auto-render по умолчанию знает только $$..$$, \(..\), \[..\], но НЕ $..$. Всегда передавать {delimiters: [{left:'$$',right:'$$',display:true},{left:'$',right:'$',display:false}], throwOnError:false}. (Тот же урок.)
  • textContent для строк с HTML-сущностями — только innerHTML.
  • Бесконечные симуляции без паузы — всегда кнопка «Пауза / Сброс» и cancelAnimationFrame при закрытии виджета.
  • Авторов в hub / footer — Исаченкову, Громыко, Лещинского НЕ упоминаем.
  • Дублирование Физики 8 — не копировать §1 «Внутренняя энергия» из 8 в 7. В 7-м МКТ изучается БЕЗ понятия внутренней энергии.
  • Симуляции с нарушенной размерностью — например, плотность в г/см³ нельзя подставлять в p = \rho g h, надо переводить в кг/м³.
  • QR-коды учебника — НЕ переносим (они на видеоопыты издателя; у нас свои симуляции).
  • Backdrop без скрытия на desktop — на ≥981px #sidebar-btn должен быть display:none (см. фикс 9d5a295).
  • Подключение JS без cache-busting — обязательно ?v=YYYYMMDD для phys.js, phys7_*.js (фикс a3f7e99).

Обязательно

  • Все единицы СИ в формулах и подписях, табличные значения — с указанием единиц (Н, Па, Дж, Вт, кг/м³).
  • Snap-точки в slider'ах для эталонных значений: g = 9{,}8 Н/кг, \rho_{вода} = 1000 кг/м³, \rho_{ртути} = 13600 кг/м³, p_0 = 101\,325 Па.
  • Цветовая кодировка едина по всем § (сила тяжести/упругости/трения/нормальная — каждая своим цветом; жидкость голубая, газ серый, твёрдое индиго).
  • KaTeX-аудит через node после каждого Wave (паттерн [^\\]\\[a-zA-Z]{2,} в JS-блоках).
  • JS parse-check через new Function(scriptBody) после каждого Wave.
  • Поиск по коду — ТОЛЬКО ast-index, никакого grep (правило проекта).
  • Push после каждого Wave: git add <files> && git commit -m "feat(phys7 chN): Wave M — описание" && git push origin master.
  • Реалистичные значения в задачах: g = 9{,}8\,Н/кг, \rho_{вода} = 1000, \rho_{ртути} = 13600, \rho_{алюминия} = 2700, \rho_{железа} = 7800, p_0 = 101\,325\,Па = 760\,мм\,рт.\,ст., 1\,л.\,с. = 736\,Вт.
  • Sidebar-фикс на desktop в самом начале каждого ch — добавить @media-rule сразу.

🎬 Запуск

Phase 0: skeleton 5 ch + physics_7_hub.html + physics_7_lab.html + миграция 039_physics_7_hub.sql + расширение phys.js (силы, давление, барометры, hill/pendulum sims).

Палитра hub: sky/blue (по обложке учебника). После Phase 0 → Phase 1 Wave 1 (§1 «Физика — наука о природе» + §2 «Физическое тело, явление, величина»).

После завершения всех 8 Phase Физика 7 → 5-й физический курс проекта и первый учебник, полностью покрывающий физику с нуля для самого младшего класса в линейке. Это закрывает «нижнюю» ступень физики и завершает линейку 7→8→9→10→11 (хотя для 11 есть только phys11_chN, без полного hub-комплекта).


🔗 Связи с системой

  • Миграция БД: 039_physics_7_hub.sql — добавить записи в textbooks:
    • parent physics-7 (slug, title «Физика — 7 класс», grade 7, author '', html_path physics_7_hub.html, para_count 48 = 42 § + 6 ЛР, color sky, sort_order 3)
    • 5 children + lab (как в 037_physics_8_hub.sql, идемпотентная)
  • Маршруты: /textbooks/physics-7 → hub, /textbooks/physics-7/ch1..5, /textbooks/physics-7/lab.
  • Каталог: появляется на frontend/textbooks.html в секции 7 класса (рядом с Алгеброй 7, Геометрией 7).
  • Достижения: 5 ачивок глав («Юный физик», «Знаток вещества», «Мастер движения», «Властелин давления», «Энергетик») + 1 лаб («Лаборант 7 класса») + 1 финальная («Магистр физики 7»). Все добавляются через миграцию или скрипт-сидер.
  • XP: ~42 § × ~60 XP + 5 ач × 50 + лаб ач 80 + финал 150 ≈ 2 980 XP за полное прохождение курса.

🧠 Чем Физика 7 отличается от Физики 8

Аспект Физика 7 Физика 8
Целевая аудитория Новичок, первый курс физики Знаком с понятиями физ. величины и СИ
Глава методологии Есть (§§1–7, новый блок) Нет (предполагается изучено в 7)
МКТ Качественно: 3 состояния, диффузия, расширение Количественно: внутренняя энергия, теплоёмкость
Силы Сонаправленные/противоположные, без векторной алгебры (нет — электрические силы в gl. 2)
Гидростатика Есть (p = \rho g h, Паскаль, сосуды, Архимед НЕТ) Нет
Атмосфера и барометры Есть Нет
Работа/энергия A = Fs (параллельные), E_к, E_п, закон сохранения Нет (тепло — Q = cm\Delta T)
Электричество Нет Есть (вся глава 2)
Оптика Нет Есть (вся глава 3)
Векторы Стрелки на схеме, без проекций Стрелки на схеме (поля \vec E, \vec B)
Главный визуал курса Закон сохранения механической энергии (горка/маятник) Линза-конструктор (§38)

Курсы дополняют друг друга. Физика 7 закладывает базу (как мыслить физически, как измерять), Физика 8 расширяет на новые феномены (тепло, электричество, свет).


📚 Ссылки на родственные планы

  • PLAN_PHYSICS_8.md — модель архитектуры, переиспользуем 80% инфраструктуры.
  • PLAN_PHYSICS_9.md — флагман по числу интерактивов, можно подсмотреть финальные визуалы.
  • PLAN_PHYSICS_10.md — первоисточник phys.js, базовая палитра расчётных виджетов.