'
+ 'Когда направление силы $\\vec F$ совпадает с направлением перемещения $\\vec s$: '
+ '$$A = F \\cdot s$$ '
+ '$[A] = $ Дж (джоуль). $1$ Дж $= 1$ Н $\\cdot$ $1$ м.');
h += makeCard('rule', 'Знак работы', '§ 36.2',
'Работа может быть:'
+ '
'
+ '
Положительной ($A > 0$) — сила в направлении движения. Тело набирает энергию.
'
+ '
Отрицательной ($A < 0$) — сила против движения (например, трение). Тело теряет энергию.
'
+ '
Нулевой ($A = 0$) — если $F = 0$, или $s = 0$, или сила перпендикулярна перемещению (например, тяжесть при горизонтальном движении).
'
+ '
');
h += makeCard('example', 'Толкаем ящик', '§ 36.3',
'Грузчик толкает ящик с силой $F = 50$ Н по горизонтали на расстояние $s = 4$ м. '
+ 'Работа грузчика: $A_F = F \\cdot s = 50 \\cdot 4 = 200$ Дж (положительная). '
+ 'Если есть трение $F_{тр} = 20$ Н, то работа трения: $A_{тр} = -F_{тр} \\cdot s = -80$ Дж (отрицательная — против движения). '
+ 'Работа силы тяжести $A_g = 0$ — сила вертикальна, перемещение горизонтально.');
/* IV-1 СИМ */
h += wgWrap('p36-iv1', 'СИМ', 'Работа силы при движении', 'Меняй силу и путь — увидь работу.',
'
'
+ ''
+ ''
+ '
'
+ ''
+ '');
/* IV-2 КАЛЬК */
h += wgWrap('p36-iv2', 'КАЛЬК', 'Калькулятор $A = F s$', '',
'
'
+ quizQuestion('p36-tr', 0, '$F = 200$ Н, $s = 3$ м. Работа?', ['200 Дж','300 Дж','600 Дж','1000 Дж'], 2, '$A = 200 \\cdot 3 = 600$ Дж.')
+ quizQuestion('p36-tr', 1, 'Сила трения $F_{тр} = 15$ Н, перемещение $s = 8$ м. Работа трения?', ['+120 Дж','−120 Дж','0','+1200 Дж'], 1, 'Трение против движения, $A_{тр} = -15 \\cdot 8 = -120$ Дж.')
+ quizQuestion('p36-tr', 2, 'Шкафу применили силу $F = 80$ Н, но он не сдвинулся. Работа?', ['80 Дж','40 Дж','0','Зависит от времени'], 2, 'Если $s = 0$, то $A = F \\cdot 0 = 0$.')
+ quizQuestion('p36-tr', 3, 'Поднимаем груз $m = 5$ кг на $h = 2$ м (g=10). Какова минимальная работа?', ['10 Дж','50 Дж','100 Дж','500 Дж'], 2, '$A = mg h = 50 \\cdot 2 = 100$ Дж.')
+ quizQuestion('p36-tr', 4, '$1$ кДж $= ?$ Дж', ['10','100','1 000','10 000'], 2)
+ '
');
h += readButton('p36');
body.innerHTML = h;
function draw36(){
const F = +document.getElementById('p36-F-r').value;
const s = +document.getElementById('p36-s-r').value;
document.getElementById('p36-F').textContent = F;
document.getElementById('p36-s').textContent = s;
const A = F * s;
const W = 380, H = 130, baseY = 100;
let svg = '';
svg += '';
for(let i = 0; i < 18; i++) svg += '';
const bx = 30, bw = 50;
svg += '';
// Стрелка пути
const sPx = Math.min(280, s * 14);
svg += '';
svg += '';
svg += 's = ' + s + ' м';
// Стрелка силы F
const fLen = Math.min(60, F * 0.5);
if(fLen > 2){
svg += '';
svg += '';
}
// Подпись F направо
svg += 'F = ' + F + ' Н →';
svg += 'A = ' + A + ' Дж';
document.getElementById('p36-svg').innerHTML = svg;
document.getElementById('p36-info').innerHTML = '$A = F \\cdot s = ' + F + ' \\cdot ' + s + ' = $ ' + A + ' Дж';
renderMath(document.getElementById('p36-info'));
}
['p36-F-r','p36-s-r'].forEach(id => document.getElementById(id).addEventListener('input', draw36));
draw36();
const upd36c = () => {
const F = +document.getElementById('p36c-F-r').value;
const s = +document.getElementById('p36c-s-r').value;
document.getElementById('p36c-F').textContent = F;
document.getElementById('p36c-s').textContent = s.toFixed(1);
const A = F * s;
document.getElementById('p36c-A').textContent = A.toFixed(0);
document.getElementById('p36c-Akj').textContent = (A / 1000).toFixed(2);
};
['p36c-F-r','p36c-s-r'].forEach(id => document.getElementById(id).addEventListener('input', upd36c));
upd36c();
wireDnd('p36-dnd', [
{ id:'a1', cat:'pos' },{ id:'a2', cat:'pos' },{ id:'a3', cat:'neg' },
{ id:'a4', cat:'neg' },{ id:'a5', cat:'zero' },{ id:'a6', cat:'zero' }
]);
wireQuiz('p36-tr-host', () => { if(window.addXp) window.addXp(15, 'tr-p36'); });
wireReadBtn('p36');
renderMath(body);
}
/* ========================================================== */
/* §37 — Полезная и совершённая работа. КПД */
/* ========================================================== */
function add_p37(){
const body = document.getElementById('p37-body');
if(!body) return;
let h = '';
h += makeCard('theory', 'Полезная и полная работа', '§ 37.1',
'Когда мы используем устройство (рычаг, наклонную плоскость, блок), часть энергии тратится '
+ '«не на дело» — на трение, нагрев, преодоление веса самого механизма.
'
+ '$A_{полез}$ — то, что мы хотели сделать (поднять груз и т.п.). '
+ '$A_{полн}$ — всё, что пришлось затратить. '
+ 'Всегда $A_{полез} \\le A_{полн}$.');
h += makeCard('rule', 'Коэффициент полезного действия', '§ 37.2',
'$$\\eta = \\dfrac{A_{полез}}{A_{полн}} \\cdot 100\\%$$ '
+ 'У идеальной машины $\\eta = 100\\%$. В жизни всегда меньше:'
+ '
'
+ '
Двигатель внутреннего сгорания: $\\eta \\approx 25..40$ %.
'
+ quizQuestion('p38-tr', 0, '$A = 600$ Дж за $t = 30$ с. $P$?', ['10 Вт','20 Вт','30 Вт','60 Вт'], 1, '$P = 600/30 = 20$ Вт.')
+ quizQuestion('p38-tr', 1, 'Двигатель $P = 3$ кВт работал $t = 5$ мин. $A$?', ['600 Дж','9 кДж','15 кДж','900 кДж'], 3, '$t = 300$ с, $A = Pt = 3000 \\cdot 300 = 900\\,000$ Дж $= 900$ кДж.')
+ quizQuestion('p38-tr', 2, 'Один человек поднял груз за $10$ с, другой — за $20$ с. У кого мощность больше?', ['У первого','У второго','Одинакова','Нельзя сказать'], 0)
+ quizQuestion('p38-tr', 3, '$2$ кВт $= ?$ Вт', ['200','2 000','20 000','200 000'], 1)
+ quizQuestion('p38-tr', 4, '$1$ л. с. в Вт (округли):', ['100','500','736','1000'], 2)
+ '
');
h += readButton('p38');
body.innerHTML = h;
const upd38 = () => {
const A = +document.getElementById('p38-A-r').value;
const t = +document.getElementById('p38-t-r').value;
document.getElementById('p38-A').textContent = A;
document.getElementById('p38-t').textContent = t.toFixed(1);
const P = A / t;
document.getElementById('p38-P').textContent = P.toFixed(1);
document.getElementById('p38-Pkw').textContent = (P/1000).toFixed(3);
document.getElementById('p38-Pls').textContent = (P/736).toFixed(2);
let cmp;
if(P < 30) cmp = 'Уровень зарядки телефона.';
else if(P < 200) cmp = 'Уровень бытовой лампы / человека.';
else if(P < 3000) cmp = 'Чайник / утюг.';
else if(P < 200000) cmp = 'Автомобиль.';
else if(P < 10000000) cmp = 'Локомотив.';
else cmp = 'Электростанция (МВт-ГВт уровень).';
document.getElementById('p38-cmp').textContent = cmp;
};
['p38-A-r','p38-t-r'].forEach(id => document.getElementById(id).addEventListener('input', upd38));
upd38();
const upd38s = () => {
const tA = +document.getElementById('p38s-tA-r').value;
const tB = +document.getElementById('p38s-tB-r').value;
document.getElementById('p38s-tA').textContent = tA;
document.getElementById('p38s-tB').textContent = tB;
const A = 1000; // фикс. работа 1000 Дж
const PA = A / tA;
const PB = A / tB;
const winner = PA > PB ? 'А' : (PB > PA ? 'Б' : 'равны');
document.getElementById('p38s-info').innerHTML = 'Каждый совершил работу $A = ' + A + '$ Дж (одинаковую). '
+ '$P_А = ' + A + '/' + tA + ' = ' + PA.toFixed(0) + '$ Вт '
+ '$P_Б = ' + A + '/' + tB + ' = ' + PB.toFixed(0) + '$ Вт '
+ 'Мощнее: ' + winner + ' (он сделал ту же работу быстрее).';
renderMath(document.getElementById('p38s-info'));
};
['p38s-tA-r','p38s-tB-r'].forEach(id => document.getElementById(id).addEventListener('input', upd38s));
upd38s();
wireDnd('p38-dnd', [
{ id:'a1', cat:'low' },{ id:'a2', cat:'low' },{ id:'a3', cat:'mid' },
{ id:'a4', cat:'mid' },{ id:'a5', cat:'high' },{ id:'a6', cat:'high' }
]);
wireQuiz('p38-tr-host', () => { if(window.addXp) window.addXp(15, 'tr-p38'); });
wireReadBtn('p38');
renderMath(body);
}
/* ========================================================== */
/* §39 — Кинетическая энергия */
/* ========================================================== */
function add_p39(){
const body = document.getElementById('p39-body');
if(!body) return;
let h = '';
h += makeCard('theory', 'Энергия движения', '§ 39.1',
'Кинетическая энергия $E_к$ — это энергия, которой обладает движущееся тело.
'
+ '$$E_к = \\dfrac{m v^2}{2}$$ '
+ '$[E] = $ Дж. У покоящегося тела ($v = 0$) кинетическая энергия равна нулю.');
h += makeCard('rule', 'Квадратичная зависимость от $v$', '§ 39.2',
'Из формулы видно: при удвоении скорости энергия растёт в 4 раза; при увеличении в 3 раза — в 9 раз.
'
+ 'Поэтому тормозной путь автомобиля при удвоении скорости — в 4 раза длиннее.');
h += makeCard('example', 'Сколько энергии у машины?', '§ 39.3',
'Автомобиль $m = 1000$ кг едет $v = 20$ м/с (72 км/ч). '
+ '$E_к = mv^2/2 = 1000 \\cdot 400/2 = 200\\,000$ Дж $= 200$ кДж.
'
+ 'При $v = 40$ м/с (144 км/ч): $E_к = 1000 \\cdot 1600/2 = 800$ кДж — в 4 раза больше! '
+ 'Эту энергию тормоза должны рассеять как тепло.');
/* IV-1 КАЛЬК */
h += wgWrap('p39-iv1', 'КАЛЬК', 'Калькулятор $E_к = mv^2/2$', '',
'
');
h += readButton('p39');
body.innerHTML = h;
const upd39 = () => {
const m = +document.getElementById('p39-m-r').value;
const v = +document.getElementById('p39-v-r').value;
document.getElementById('p39-m').textContent = m.toFixed(1);
document.getElementById('p39-v').textContent = v.toFixed(1);
const Ek = m * v * v / 2;
document.getElementById('p39-Ek').textContent = Ek.toLocaleString('ru-RU', { maximumFractionDigits: 0 });
document.getElementById('p39-Ekkj').textContent = (Ek/1000).toFixed(2);
let cmp;
if(Ek < 10) cmp = 'Меньше энергии летящего камня.';
else if(Ek < 1000) cmp = 'Уровень бегуна или мяча.';
else if(Ek < 100000) cmp = 'Уровень велосипедиста / лёгкой машины.';
else if(Ek < 1e6) cmp = 'Уровень автомобиля на шоссе.';
else cmp = 'Огромная — грузовик или поезд.';
document.getElementById('p39-cmp').textContent = cmp;
};
['p39-m-r','p39-v-r'].forEach(id => document.getElementById(id).addEventListener('input', upd39));
upd39();
// §39 IV-2 — parabola
function draw39s(){
const v = +document.getElementById('p39s-v-r').value;
document.getElementById('p39s-v').textContent = v.toFixed(1);
const W = 360, H = 200, pad = 30;
const vMax = 20, EkMax = vMax * vMax / 2; // m=1
function toX(vv){ return pad + (W - 2*pad) * vv / vMax; }
function toY(ek){ return H - pad - (H - 2*pad) * ek / EkMax; }
let s = '';
// Оси
s += '';
s += '';
s += 'v, м/с';
s += 'E_к, Дж';
// Ticks
for(let vv = 0; vv <= vMax; vv += 5){
const x = toX(vv);
s += '';
if(vv > 0) s += '' + vv + '';
}
for(let ek = 0; ek <= EkMax; ek += 50){
const y = toY(ek);
s += '';
if(ek > 0) s += '' + ek + '';
}
// Парабола
let path = '';
for(let i = 0; i <= 60; i++){
const vv = vMax * i / 60;
const ek = vv * vv / 2;
path += (i === 0 ? 'M' : 'L') + toX(vv).toFixed(1) + ' ' + toY(ek).toFixed(1) + ' ';
}
s += '';
// Текущая точка
const Ek = v * v / 2;
const cx = toX(v), cy = toY(Ek);
s += '';
s += '';
s += '';
document.getElementById('p39s-svg').innerHTML = s;
document.getElementById('p39s-info').innerHTML = '$v = ' + v.toFixed(1) + '$ м/с · $E_к = v^2/2 = $ ' + Ek.toFixed(1) + ' Дж';
renderMath(document.getElementById('p39s-info'));
}
document.getElementById('p39s-v-r').addEventListener('input', draw39s);
draw39s();
wireDnd('p39-dnd', [
{ id:'a1', cat:'small' },{ id:'a2', cat:'small' },{ id:'a3', cat:'mid' },
{ id:'a4', cat:'mid' },{ id:'a5', cat:'big' },{ id:'a6', cat:'big' }
]);
wireQuiz('p39-tr-host', () => { if(window.addXp) window.addXp(15, 'tr-p39'); });
wireReadBtn('p39');
renderMath(body);
}
/* ========================================================== */
/* §40 — Потенциальная энергия (введение) */
/* ========================================================== */
function add_p40(){
const body = document.getElementById('p40-body');
if(!body) return;
let h = '';
h += makeCard('theory', 'Потенциальная энергия', '§ 40.1',
'Потенциальная энергия $E_п$ — это «запас» работы, который сила (тяжести, упругости) сможет совершить над телом.
'
+ 'Камень, поднятый на гору, ничего не делает — но если его столкнуть, он покатится вниз, разгонится и сможет сдвинуть препятствие. '
+ 'Запас энергии у камня — потенциальная.');
h += makeCard('rule', 'Два вида $E_п$', '§ 40.2',
'
'
+ '
Гравитационная — у тела, поднятого над землёй (или над любым выбранным уровнем). $E_п = mgh$.
'
+ '
Упругая — у деформированного тела (пружины, лука). У школьной пружины: $E_п \\sim \\Delta l^2$ (растёт быстро с растяжением).
'
+ '
'
+ 'Чем выше тело — тем больше гравит. потенциальная. Чем сильнее сжата пружина — тем больше упругой.');
h += makeCard('example', 'Запас работы', '§ 40.3',
'
'
+ '
Вода в водохранилище — гравитационная $E_п$. Запускают вниз через турбину — генерирует электричество (ГЭС).
'
+ '
Сжатая пружина в часах — упругая $E_п$. Расправляется — крутит стрелки.
');
/* IV-1 СИМ: подъём груза */
h += wgWrap('p40-iv1', 'СИМ', 'Поднимем груз — увеличим запас', 'Меняй высоту — увидь рост $E_п$.',
''
+ ''
+ '');
/* IV-2 КВИЗ */
h += wgWrap('p40-iv2', 'КВИЗ', 'Что такое потенц. энергия', '',
'
'
+ quizQuestion('p40-q', 0, 'Что обладает потенциальной энергией?', ['Любое движущееся тело','Тело в поле силы (например, поднятый камень)','Только электрические заряды','Только пружины'], 1)
+ quizQuestion('p40-q', 1, 'Какие два главных вида $E_п$ в механике?', ['Тепловая и магнитная','Гравитационная и упругая','Постоянная и переменная','Открытая и закрытая'], 1)
+ quizQuestion('p40-q', 2, 'У камня, висящего на потолке, $E_п$:', ['Нулевая','Существует — он может упасть и совершить работу','Отрицательная','Только если он движется'], 1)
+ quizQuestion('p40-q', 3, 'Сжатая пружина обладает:', ['Кинетической','Упругой потенциальной','Гравитационной','Никакой'], 1)
+ '
'
+ quizQuestion('p40-tr', 0, 'Когда $E_п$ гравитационная больше: на $1$ м или на $10$ м (для того же тела)?', ['На 1 м','На 10 м','Одинаково','Зависит от массы'], 1)
+ quizQuestion('p40-tr', 1, 'Можно ли $E_п$ превратить в $E_к$?', ['Нет','Да, например при падении','Только в особых условиях','Только с помощью двигателя'], 1)
+ quizQuestion('p40-tr', 2, 'Что является источником энергии ГЭС?', ['$E_к$ ветра','$E_п$ воды на высоте','$E_к$ молекул','Магнетизм'], 1)
+ quizQuestion('p40-tr', 3, 'Тело с $E_п = 100$ Дж может совершить работу не больше…', ['10 Дж','100 Дж','1000 Дж','Сколько угодно'], 1)
+ '
');
h += readButton('p40');
body.innerHTML = h;
function draw40(){
const hVal = +document.getElementById('p40-h-r').value;
document.getElementById('p40-h').textContent = hVal;
const W = 320, H = 220, baseY = 200;
let s = '';
s += '';
for(let i = 0; i < 14; i++) s += '';
// Шкала высоты
for(let hh = 0; hh <= 20; hh += 5){
const y = baseY - hh * 8;
s += '';
s += '' + hh + ' м';
}
s += '';
// Тело
const y = baseY - hVal * 8 - 14;
s += '';
s += '1 кг';
// Линия высоты
if(hVal > 0){
s += '';
s += '';
s += 'h = ' + hVal + ' м';
}
// Подпись Ep
const Ep = 1 * 10 * hVal; // m=1, g=10
s += 'E_п = ' + Ep + ' Дж';
document.getElementById('p40-svg').innerHTML = s;
document.getElementById('p40-info').innerHTML = 'Тело $m = 1$ кг на высоте $h = ' + hVal + '$ м: $E_п = mgh = 1 \\cdot 10 \\cdot ' + hVal + ' = $ ' + Ep + ' Дж.';
renderMath(document.getElementById('p40-info'));
}
document.getElementById('p40-h-r').addEventListener('input', draw40);
draw40();
wireDnd('p40-dnd', [
{ id:'a1', cat:'k' },{ id:'a2', cat:'k' },{ id:'a3', cat:'pg' },
{ id:'a4', cat:'pg' },{ id:'a5', cat:'pe' },{ id:'a6', cat:'pe' }
]);
wireQuiz('p40-q-host', () => { if(window.addXp) window.addXp(10, 'q-p40'); });
wireQuiz('p40-tr-host', () => { if(window.addXp) window.addXp(15, 'tr-p40'); });
wireReadBtn('p40');
renderMath(body);
}
/* ========================================================== */
/* §41 — Расчёт потенциальной энергии $E_п = mgh$ */
/* ========================================================== */
function add_p41(){
const body = document.getElementById('p41-body');
if(!body) return;
let h = '';
h += makeCard('theory', 'Формула гравитационной $E_п$', '§ 41.1',
'$$E_п = m g h$$ '
+ '$m$ — масса тела (кг), $g \\approx 9{,}8$ Н/кг, $h$ — высота над выбранным уровнем (м). '
+ '$[E_п] = $ Дж.
'
+ 'Чем тяжелее тело и чем выше — тем больше его запас энергии.');
h += makeCard('rule', 'Высота от чего?', '§ 41.2',
'$E_п$ зависит от выбора нулевого уровня. Например, лампа на потолке: '
+ 'относительно пола высота $h_1 = 3$ м, относительно стола $h_2 = 2$ м, относительно стула $h_3 = 2{,}5$ м.
'
+ 'Обычно за «ноль» берут поверхность Земли (землю) — но это условность. '
+ 'Главное — разность $E_п$ при перемещении тела всегда определена однозначно: $\\Delta E_п = mg\\Delta h$.');
h += makeCard('example', 'Подъём яблока', '§ 41.3',
'Яблоко $m = 0{,}15$ кг поднимаем на стол высотой $h = 0{,}8$ м. '
+ '$E_п = mgh = 0{,}15 \\cdot 10 \\cdot 0{,}8 = 1{,}2$ Дж. '
+ 'Чтобы его поднять, нам понадобилось совершить работу $\\ge 1{,}2$ Дж (без учёта трения о воздух).');
/* IV-1 КАЛЬК */
h += wgWrap('p41-iv1', 'КАЛЬК', 'Калькулятор $E_п = mgh$', '',
'
В верхней точке траектории $v = 0 \\Rightarrow E_к = 0$, вся энергия — потенциальная.
'
+ '
В самой низкой точке траектории $h = 0 \\Rightarrow E_п = 0$, вся энергия — кинетическая.
'
+ '
');
h += makeCard('example', 'Свободное падение', '§ 42.3',
'Камень $m = 0{,}5$ кг падает с высоты $h_0 = 10$ м без сопротивления воздуха. '
+ 'В начале: $E_п = mgh_0 = 50$ Дж, $E_к = 0$. Полная $E = 50$ Дж. '
+ 'У земли ($h = 0$): $E_п = 0$, $E_к = 50$ Дж. '
+ '$\\dfrac{mv^2}{2} = 50 \\Rightarrow v = \\sqrt{2 \\cdot 50/0{,}5} = \\sqrt{200} \\approx 14{,}1$ м/с.
'
+ 'В присутствии трения часть энергии превращается в тепло. Тогда $E_к + E_п < E_0$.');
/* IV-1 ГЛАВНЫЙ ВИЗУАЛ — горка с тележкой */
h += wgWrap('p42-iv1', 'СИМ', 'Главный визуал курса: тележка скатывается с горки', 'Запусти симуляцию и наблюдай, как $E_п$ превращается в $E_к$. С трением — часть переходит в тепло.',
'
'
+ ''
+ ''
+ ''
+ ''
+ '
'
+ ''
+ '
'
+ '
$E_к$
0 Дж
'
+ '
$E_п$
0 Дж
'
+ '
$E_к + E_п$
0 Дж
'
+ '
');
/* IV-2 СИМ маятник */
h += wgWrap('p42-iv2', 'СИМ', 'Маятник: вечный обмен энергиями', 'В крайних точках вся энергия потенциальная; в нижней — вся кинетическая.',
'
'
+ quizQuestion('p42-q', 0, 'Камень падает (без сопротивления). $E_к$ и $E_п$ изменяются как?', ['Обе растут','$E_к$ растёт, $E_п$ падает','Обе падают','$E_к$ падает, $E_п$ растёт'], 1)
+ quizQuestion('p42-q', 1, 'В нижней точке маятника:', ['Вся энергия потенциальная','Вся энергия кинетическая','Равно поровну','Нулевая'], 1)
+ quizQuestion('p42-q', 2, 'При наличии трения $E_к + E_п$:', ['Растёт','Сохраняется','Уменьшается (уходит в тепло)','Становится нулевой'], 2)
+ quizQuestion('p42-q', 3, 'Камень брошен вверх со скоростью $v$. На какой высоте $E_к = 0$?', ['На земле','На максимальной высоте','В любой точке','Нигде'], 1, 'В верхней точке $v = 0$, вся энергия — потенциальная.')
+ '