Перейти к содержанию

М2 §3. Равновесие трёх сил: почему фонарь висит на двух тросах

Вопросы к М2 §3

Посмотрите вверх на перекрёстке. Над проезжей частью висит фонарь, и держат его два троса: левый пологой оттяжкой тянется к крюку на стене дома, правый круто поднимается к верхушке столба на другой стороне улицы. Фонарь висит неподвижно: не падает вниз, не уезжает вбок, не раскачивается. Значит, он в равновесии — в том самом смысле, который мы определили в прошлом параграфе (М2 §2): равнодействующая всех сил, приложенных к телу, равна нулевому вектору.

Сил здесь три. Вниз тянет сила тяжести \(\vec{F}_{\text{тяж}}\). Вдоль каждого троса тянет сила натяжения — \(\vec{T}_1\) вдоль левого, пологого, \(\vec{T}_2\) вдоль правого, крутого. И вот что важно: ни одна пара из этих трёх сил не лежит на одной прямой. В прошлом параграфе (М2 §2) равновесие выглядело просто — две силы, одна прямая, противоположные векторы, равные модули. Здесь такой картинки нет.

Возьмём конкретные числа; откуда они берутся, вы увидите в §3.3. Фонарь массой 4 кг, коэффициент \(g = 10\) Н/кг, значит \(F_{\text{тяж}} = mg = 40\) Н. Натяжение левого троса \(T_1 = 13\) Н, правого \(T_2 = 37\) Н.

Напомним обозначение из М2 §1: модуль вектора — это длина стрелки в выбранном масштабе, и записывают его либо \(|\vec{T}_1|\), либо просто той же буквой без стрелки — \(T_1\). Все числа в ньютонах, которые вы видите рядом со стрелками на чертежах, — это модули сил.

Проверьте арифметикой: \(13 + 37 = 50\), а вовсе не 40. И \(40 - 13 = 27\), а не 37. Ни одно равенство между модулями не сходится — а фонарь висит. Складывать модули бессмысленно: гасят друг друга не числа, а векторы. Этим и займёмся.

Фонарь, подвешенный между стеной дома и столбом; из точки подвеса выходят три стрелки: вниз сила тяжести 40 Н, вверх-влево пологая стрелка натяжения 13 Н, вверх-вправо крутая стрелка натяжения 37 Н

Три силы на фонаре выходят из одной точки, направлены в три разные стороны, и модули у них разные


Сила натяжения

В прошлом параграфе (М2 §2) мы разбирали силу упругости: растянутая или сжатая пружина тянет обратно то тело, которое её деформировало. Трос — то же самое, только очень жёсткое. Когда фонарь повис, трос чуть-чуть растянулся (глазом этого не видно, но растяжение есть) — и стал тянуть фонарь к точке крепления.

Сила натяжения \(\vec{T}\) — сила, с которой натянутый трос (верёвка, нить, цепь) действует на прикреплённое к нему тело. Она приложена к телу в точке крепления и направлена вдоль троса, от тела к другому концу троса.

Сила натяжения — это не новый вид взаимодействия, а сила упругости растянутого троса, у которой есть своё имя и своя буква. Так же в своё время получили отдельные имена сила тяжести \(\vec{F}_{\text{тяж}}\) и сила реакции опоры \(\vec{N}\): природа у сил разная, а роль в задаче — типовая, и удобно называть её сразу.

Две вещи, которые чаще всего путают. Первое: натяжение направлено вдоль троса, а не «вверх» — у пологой оттяжки оно почти горизонтально. Второе: верёвка умеет только тянуть; толкать она не может. Если в вашем чертеже натяжение направлено от точки крепления к телу — вы нарисовали толкающую верёвку, а таких не бывает.


Вес в список сил на фонарь не входит

Прежде чем складывать, надо решить, что складывать. Тут подстерегает ловушка: к трём силам часто дописывают четвёртую — вес фонаря.

Вспомните определение из прошлого параграфа (М2 §2): вес — это сила, с которой тело действует на опору или подвес. Вес фонаря приложен к тросам. А мы разбираем силы, приложенные к фонарю. Вес фонаря к фонарю не приложен, и в многоугольник сил фонаря он не входит: иначе один и тот же тяжёлый фонарь потянет вниз дважды, и равновесие в расчёте развалится, хотя на улице оно есть.

Правило простое: прежде чем чертить, назовите тело и скажите вслух «складываю силы, приложенные к нему». Для фонаря это ровно три силы: \(\vec{F}_{\text{тяж}}\) от Земли, \(\vec{T}_1\) и \(\vec{T}_2\) от двух тросов.


М2 §3.1. Физика: три силы, которые гасят друг друга

В М2 §1 мы складывали два вектора правилом треугольника: отложить второй вектор от конца первого, соединить начало первого с концом второго. В прошлом параграфе (М2 §2) сил было две, они лежали на одной прямой и были противоположны, а сумма получалась нулевым вектором.

Теперь векторов три, и все смотрят в разные стороны. «Столбиком» их не сложить — числами тут не обойтись. Но правило треугольника никуда не делось: его можно применить дважды. Сначала сложим \(\vec{F}_{\text{тяж}}\) и \(\vec{T}_1\) — получится какой-то промежуточный вектор. Потом к нему прибавим \(\vec{T}_2\). Промежуточный вектор рисовать необязательно: он всё равно пропадёт из ответа. Остаётся цепочка «конец к началу», и у неё есть имя.


Правило многоугольника

Правило многоугольника. Чтобы найти сумму нескольких векторов, откладывают первый вектор; от его конца — второй; от конца второго — третий, и так далее. Сумма (равнодействующая \(\vec{R}\)) — вектор, идущий от начала первого вектора к концу последнего.

Правило треугольника — частный случай правила многоугольника для двух векторов. Порядок, в котором вы выстраиваете цепочку, на ответ не влияет: ломаная получится другая, а вектор от первого начала до последнего конца — тот же самый. Это удобно проверять на черновике: возьмите одну точку, из неё постройте цепочку в порядке 1–2–3, потом из этой же точки — цепочку в порядке 3–1–2, и убедитесь, что конец последней стрелки в обоих случаях пришёл в одно и то же место.

Слева: цепочка из четырёх векторов «хвост к голове», конец последнего не совпал с началом первого, от начала первого к концу последнего проведён вектор R. Справа: та же цепочка из четырёх векторов, замкнутая в четырёхугольник, подпись «R = 0»

Слева многоугольник не замкнут — есть равнодействующая. Справа замкнут — равнодействующая нулевая


Замкнутый многоугольник — это равновесие

Теперь перенесите три силы фонаря «хвост к голове»: от конца \(\vec{F}_{\text{тяж}}\) отложите \(\vec{T}_1\), от конца \(\vec{T}_1\)\(\vec{T}_2\). Конец последней стрелки попадёт ровно в начало первой. Цепочка замкнулась в треугольник.

Это и есть геометрическая запись равновесия:

Тело, к которому приложено несколько сил, находится в равновесии тогда и только тогда, когда многоугольник сил замкнут: конец последнего вектора цепочки совпадает с началом первого, а равнодействующая равна нулевому вектору \(\vec{0}\).

Обратите внимание, как аккуратно это согласуется с прошлым параграфом (М2 §2). Две силы — «многоугольник» из двух звеньев, и замкнуться он может, только если второй вектор идёт обратно по той же прямой: противоположные векторы, равные модули. Три силы такой строгости уже не требуют — им хватает того, что треугольник вообще складывается.

Три вектора сил фонаря, перенесённые хвост к голове: вниз 40 Н, влево-вверх 13 Н, вправо-вверх 37 Н; ломаная замыкается в треугольник, подпись «сумма = 0»

Те же три силы, выстроенные в цепочку: треугольник со сторонами 40, 13 и 37 замкнут


«В равновесии все силы равны по модулю»

Это самая частая ошибка после прошлого параграфа (М2 §2) — и понятно почему. Там сил было две, и они действительно были равны по модулю: книга на столе, \(N = F_{\text{тяж}}\). Вывод «в равновесии силы равны» запоминается легко, потому что в том частном случае он верен.

Как только сил становится три, он ломается. Посмотрите на треугольник фонаря: его стороны 40, 13 и 37 — три разных числа. Равенство модулей не требуется и почти никогда не выполняется. Требуется другое: чтобы ломаная замкнулась.

Ещё одно следствие, которое стоит проговорить: сумма модулей двух сил не обязана равняться модулю третьей. У нас \(13 + 37 = 50 \ne 40\). Равенство \(|\vec{a}| + |\vec{b}| = |\vec{a} + \vec{b}|\) верно только тогда, когда векторы сонаправлены; в остальных случаях сумма модулей больше. Проверяйте равновесие не арифметикой модулей, а цепочкой векторов.


Треугольник 3, 4, 5

Самый удобный числовой контрпример — прямоугольный треугольник со сторонами 3, 4, 5.

К телу приложены три силы: 3 Н строго вправо, 4 Н строго вверх и 5 Н, направленная влево-вниз. Выстроим цепочку: из точки \(O\) идём на 3 клетки вправо (клетка — 1 Н), затем на 4 клетки вверх, затем стрелка 5 Н возвращает нас из точки \((3;4)\) обратно в \(O\). Ломаная замкнулась — тело в равновесии.

Модули: 3 Н, 4 Н, 5 Н. Все три разные. Никакая пара не противоположна: первая горизонтальна, вторая вертикальна, третья идёт наискосок. И тем не менее равновесие есть. Запомните этот треугольник — он ещё встретится в задачах и в коде.


М2 §3.2. Математика: вычитание векторов

Сложение векторов у нас есть. А как их вычитать? В физике это нужно постоянно: «известна равнодействующая двух сил и одна из них — найдите вторую», «три силы уравновешены, две известны — найдите третью».

Ответ короткий, и он опирается на противоположный вектор из прошлого параграфа (М2 §2): вектор \(-\vec{b}\) — это вектор той же длины, что и \(\vec{b}\), но направленный в противоположную сторону.

Вычитание векторов. Разностью векторов \(\vec{a}\) и \(\vec{b}\) называется сумма вектора \(\vec{a}\) и вектора, противоположного \(\vec{b}\): $\(\vec{a} - \vec{b} = \vec{a} + (-\vec{b}).\)$

Никакого нового построения не требуется: разворачиваем \(\vec{b}\) на противоположное направление и складываем по правилу треугольника. Есть и второй способ увидеть разность: отложите \(\vec{a}\) и \(\vec{b}\) от одной точки; тогда \(\vec{a} - \vec{b}\) — это вектор, идущий от конца \(\vec{b}\) к концу \(\vec{a}\). Оба построения дают одну и ту же стрелку, просто в разных местах чертежа; выбирайте, что удобнее.

Проверка на разумность: \(\vec{a} - \vec{a} = \vec{a} + (-\vec{a}) = \vec{0}\). Вектор, вычтенный сам из себя, даёт нулевой вектор — как и должно быть.

Один чертёж, два построения разности: слева от конца a отложен вектор −b и проведена стрелка a − b; справа a и b отложены от общей точки, стрелка идёт от конца b к концу a; обе стрелки одинаковы по длине и направлению

Два способа построить a − b дают одинаковые стрелки: через противоположный вектор и «от конца b к концу a»


Третья сила через вычитание

Вернёмся к фонарю. Равновесие означает $\(\vec{F}_{\text{тяж}} + \vec{T}_1 + \vec{T}_2 = \vec{0}.\)$

Отсюда сразу следует, чему равно натяжение правого троса: $\(\vec{T}_2 = -\left(\vec{F}_{\text{тяж}} + \vec{T}_1\right).\)$

Минус перед скобкой читается как указание к построению: сложите две известные силы по правилу треугольника, а потом разверните результат в противоположную сторону. Нового действия тут нет — это всё тот же противоположный вектор из прошлого параграфа (М2 §2), только взятый не от одной силы, а от суммы двух.

Словами: третья сила противоположна сумме первых двух. Это рабочий приём: любую недостающую силу в замкнутом многоугольнике находят как «замыкающую» стрелку, взятую в обратную сторону.

Та же логика в другой задаче: если равнодействующая двух сил равна \(\vec{R}\) и одна из них \(\vec{F}_1\) известна, то вторая — это \(\vec{F}_2 = \vec{R} - \vec{F}_1\).

Пока всё это — чертёж: линейка, карандаш, аккуратность. Ответ получается с точностью до толщины грифеля. Дальше мы переведём векторы в числа, и чертёж станет расчётом.


М2 §3.3. Математика: проекции и координаты

Чертить многоугольники — способ честный, но неточный: длину стрелки вы измеряете линейкой, направление ставите на глаз, и уже на третьем векторе ошибка заметна. Хочется считать.

Приём такой. Положим векторы на координатную плоскость и опишем каждый двумя числами вместо стрелки. Идея древняя, как тень: представьте, что солнце светит строго сверху вниз. Тень вектора, упавшая на ось \(Ox\), показывает, на сколько вектор «продвинулся» вправо или влево. Свет сбоку даёт тень на оси \(Oy\) — продвижение вверх или вниз.

Тень — это отрезок, у неё есть только длина. Но нам нужно ещё и направление: вправо или влево. Поэтому к длине тени добавляют знак.


Проекция вектора на ось

Проекцией вектора на ось называется число, равное разности координат конца и начала вектора по этой оси. Если вектор идёт из точки \(A(x_A;\, y_A)\) в точку \(B(x_B;\, y_B)\), то $\(F_x = x_B - x_A, \qquad F_y = y_B - y_A.\)$

Проекция — число со знаком, а не отрезок и не вектор. Знак отвечает на вопрос «в какую сторону оси смотрит вектор»: плюс, если в сторону положительного направления оси, минус — если против. Модуль проекции \(|F_x|\) отвечает на вопрос «на сколько клеток».

Пример по сетке. Вектор \(\vec{F}\) выходит из точки \((1;\,6)\) и приходит в точку \((4;\,2)\). Тогда $\(F_x = 4 - 1 = 3, \qquad F_y = 2 - 6 = -4.\)$ Вектор ушёл на 3 клетки вправо и на 4 клетки вниз. Ровно это и говорят два числа: «+3» — вправо, «−4» — вниз.

Вектор на клетчатой сетке с осями Ox и Oy: из точки (1;6) в точку (4;2); пунктирные линии опущены на обе оси, на оси Ox отмечен отрезок длиной 3 с подписью F_x = 3, на оси Oy — отрезок длиной 4 с подписью F_y = −4, у самой стрелки подпись |F| = 5

Проекции — это «тени» вектора на осях, взятые со знаком: вправо на 3, вниз на 4


Проверьте себя: две проекции

Три быстрых вопроса — на них уходит минута, а без них дальше читать бессмысленно. Найдите проекции вектора на обе оси:

  1. вектор идёт из точки \((5;\,2)\) в точку \((1;\,2)\);
  2. вектор идёт из точки \((0;\,0)\) в точку \((0;\,-7)\);
  3. вектор идёт из точки \((-3;\,-1)\) в точку \((2;\,4)\).

Считайте по определению: из координаты конца вычитаем координату начала — сначала по \(x\), потом по \(y\). И сверяйте знак со здравым смыслом: если стрелка ушла влево, \(F_x\) обязан быть отрицательным.

Ответы: 1) \((-4;\ 0)\); 2) \((0;\ -7)\); 3) \((5;\ 5)\).


Координаты вектора

Две проекции полностью описывают вектор на плоскости: зная, на сколько он идёт вправо и на сколько вверх, вы восстановите и его длину, и его направление. Поэтому пару проекций записывают вместе.

Координатами вектора на плоскости называют пару его проекций на оси: \(\vec{F}\,(F_x;\, F_y)\). Первое число — проекция на \(Ox\), второе — на \(Oy\).

Эта запись вам уже знакома. В М1 §2 перемещение задавалось парой \((\Delta x;\, \Delta y)\) — «на столько по горизонтали, на столько по вертикали». Это и были координаты вектора перемещения, только слова «координаты вектора» мы тогда не произносили. Новым здесь оказывается имя, а не сама пара чисел.

Важное свойство: вектор не помнит, где его нарисовали. Стрелка из \((1;6)\) в \((4;2)\) и стрелка из \((0;0)\) в \((3;-4)\) — это один и тот же вектор \((3;\,-4)\): одинаковая длина, одинаковое направление. Поэтому для расчёта силы всё равно, из какой точки её отложили; для чертежа, конечно, нет — там мы рисуем силу из точки её приложения.

Три силы фонаря в координатах: $\(\vec{F}_{\text{тяж}}\,(0;\,-40), \qquad \vec{T}_1\,(-12;\,5), \qquad \vec{T}_2\,(12;\,35).\)$

Откуда взялись именно эти числа? Их сняли с чертежа по клеткам в масштабе «1 клетка = 1 Н»: стрелка силы тяжести уходит на 40 клеток вниз, стрелка \(\vec{T}_1\) — на 12 клеток влево и 5 вверх, стрелка \(\vec{T}_2\) — на 12 клеток вправо и 35 вверх. Полный порядок действий описан ниже, в пункте «Как снять проекции с чертежа», а в задаче B1 вы проделаете это сами, начиная с чистого листа.


Модуль вектора по координатам

Проекции — катеты прямоугольного треугольника, сам вектор — гипотенуза. Отсюда длина вектора считается по теореме Пифагора, той же формулой расстояния, которой мы пользовались в М1 §2:

\[|\vec{F}| = \sqrt{F_x^{\,2} + F_y^{\,2}}.\]

Проверим на наших числах. Вектор \((3;\,-4)\): \(\sqrt{9 + 16} = \sqrt{25} = 5\). Натяжение \(\vec{T}_1\,(-12;\,5)\): \(\sqrt{144 + 25} = \sqrt{169} = 13\) Н. Натяжение \(\vec{T}_2\,(12;\,35)\): \(\sqrt{144 + 1225} = \sqrt{1369} = 37\) Н. Вот откуда взялись числа из вопросов к главе.

Заметьте: под корнем стоят квадраты, а квадрат отрицательного числа положителен. Поэтому модуль не зависит от знаков проекций — векторы \((3;4)\), \((-3;4)\), \((3;-4)\) и \((-3;-4)\) имеют одну и ту же длину 5 и четыре разных направления.


«Проекция — это длина, значит она положительна»

Слово «тень» подводит: тень — отрезок, у отрезка длина неотрицательна, значит и проекция вроде бы неотрицательна. Нет.

Возьмите вектор \(\vec{F}\,(-3;\,-4)\) — он смотрит влево и вниз. Его проекции: \(F_x = -3\), \(F_y = -4\). Обе отрицательны. Его модуль: \(|\vec{F}| = \sqrt{(-3)^2 + (-4)^2} = 5\) — положителен, как и положено длине.

Три разных числа, которые легко перепутать:

  • \(F_x = -3\)проекция: и сколько, и куда;
  • \(|F_x| = 3\)модуль проекции: только сколько;
  • \(|\vec{F}| = 5\)модуль вектора: длина самой стрелки.

Отсюда простая проверка. Если в вашем расчёте равновесия все проекции на какую-то ось оказались положительными, ошибка есть наверняка: сумма положительных чисел положительна и нулём стать не может. Чтобы сумма обнулилась, среди слагаемых обязаны быть числа обоих знаков (нули не мешают) — иначе гасить нечем.


Знаки проекций по направлениям

Знак проекции определяется только направлением вектора относительно осей — не тем, где он нарисован. Соберём это в таблицу; оси считаем обычными: \(Ox\) вправо, \(Oy\) вверх.

Куда смотрит вектор \(F_x\) \(F_y\)
вправо и вверх \(+\) \(+\)
влево и вверх \(-\) \(+\)
влево и вниз \(-\) \(-\)
вправо и вниз \(+\) \(-\)
строго вправо \(+\) \(0\)
строго вниз \(0\) \(-\)

Две последние строки стоит запомнить отдельно: если вектор параллелен оси, его проекция на другую ось равна нулю. Сила тяжести всегда даёт \((0;\, -F_{\text{тяж}})\), горизонтальный трос — \((\pm T;\, 0)\). Половина проекций в школьной задаче обнуляется сама, и это сильно сокращает счёт.


Как снять проекции с чертежа

Порядок действий, который годится для любой задачи этой главы.

  1. Назовите тело и выпишите все силы, приложенные к нему. Вес тела в этот список не входит — он приложен к опоре или подвесу.
  2. Нарисуйте оси: \(Ox\) — горизонтально вправо, \(Oy\) — вертикально вверх. Других осей мы в этой главе не берём; повёрнутые оси понадобятся с числами — позже.
  3. Отложите каждую силу из точки приложения. Для сил, направленных наискосок, посчитайте по клеткам, на сколько клеток вправо (влево) и вверх (вниз) идёт стрелка.
  4. Умножьте число клеток на масштаб (например, 1 клетка = 10 Н) и поставьте знаки по таблице.
  5. Запишите каждую силу парой \((F_x;\, F_y)\) и проверьте модуль по Пифагору — он должен совпасть с заданным в условии.

Пятый пункт пропускать не стоит: он ловит арифметические ошибки до того, как они уйдут в ответ.


Сложение и вычитание в координатах

Теперь главное упрощение всей главы. В координатах геометрия исчезает: сложение векторов превращается в сложение чисел по каждой оси отдельно.

Если \(\vec{a}\,(a_x;\, a_y)\) и \(\vec{b}\,(b_x;\, b_y)\), то

\[\vec{a} + \vec{b} = (a_x + b_x;\ a_y + b_y), \qquad -\vec{b} = (-b_x;\ -b_y),\]
\[\vec{a} - \vec{b} = \vec{a} + (-\vec{b}) = (a_x - b_x;\ a_y - b_y).\]

Для нескольких векторов правило многоугольника выглядит так:

\[R_x = F_{1x} + F_{2x} + \dots + F_{nx}, \qquad R_y = F_{1y} + F_{2y} + \dots + F_{ny}.\]

Один длинный чертёж заменился двумя столбиками чисел. Проверим на фонаре:

\[R_x = 0 + (-12) + 12 = 0, \qquad R_y = -40 + 5 + 35 = 0.\]

Обе суммы — нули, значит \(\vec{R} = \vec{0}\), значит фонарь висит. Ту же проверку линейкой и транспортиром вы делали бы минут пять и всё равно не были бы уверены в ответе.


Условие равновесия в проекциях

Соберём результат в рабочее правило — им вы будете пользоваться до конца школьной физики.

Условие равновесия в проекциях. Тело находится в равновесии (равнодействующая приложенных к нему сил равна \(\vec{0}\)) тогда и только тогда, когда сумма проекций всех сил на каждую ось равна нулю: $\(R_x = 0 \quad \text{и} \quad R_y = 0.\)$

Одно векторное условие превратилось в два числовых уравнения. Это выгодная сделка: уравнения решать умеют все, а векторы складывать линейкой — почти никто аккуратно.

И обратите внимание на слово «каждую». Равенства \(R_x = 0\) мало: тело с \(R_x = 0\), но \(R_y = 5\) Н никуда не поедет вбок, а вверх — поедет. Оба уравнения нужны сразу.

Если равновесия нет, эти же две суммы дают равнодействующую целиком: её координаты \((R_x;\, R_y)\), её модуль \(|\vec{R}| = \sqrt{R_x^2 + R_y^2}\), а направление читается по знакам.


М2 §3.4. Физика: разложение силы

До сих пор мы шли в одну сторону: даны силы — найди равнодействующую. Бывает нужно ровно наоборот: дана одна сила, а требуется заменить её двумя, каждая из которых удобна для разговора.

Пример из жизни. Вы тянете санки за верёвку. Верёвка идёт наискосок вверх — иначе рука окажется на снегу. Куда девается ваше усилие? Часть его тащит санки вперёд, часть — приподнимает их. Пока сила одна и наклонная, сказать об этом что-то количественное трудно. Разделим её на две.

Это обратная задача к правилу параллелограмма из М2 §1. Там по двум сторонам параллелограмма строили диагональ; здесь по диагонали (данной силе) и двум заданным направлениям строим стороны.


Разложение силы на составляющие

Разложить силу на составляющие — значит заменить её двумя силами по заданным направлениям так, чтобы их равнодействующая равнялась исходной силе. Эти две силы называются составляющими.

Ключевое слово — «заменить». Составляющие действуют на тело точно так же, как исходная сила: не сильнее и не слабее.

Пока направления не заданы, задача решается бесконечным числом способов: любую диагональ можно достроить до параллелограмма как угодно. Направления всегда диктует физика: вдоль движения и поперёк него, вдоль наклонной доски и поперёк неё, горизонтально и вертикально.

Самый частый случай — составляющие вдоль осей \(Ox\) и \(Oy\). Тогда искать ничего не нужно: их модули — это модули проекций. Сила \((40;\, 30)\) раскладывается на горизонтальную составляющую 40 Н и вертикальную 30 Н. Проверка Пифагором: \(\sqrt{1600 + 900} = 50\) — это и есть модуль исходной силы.


Санки за верёвку

Вы тянете санки с силой 50 Н. Верёвка натянута так, что на клетчатой сетке стрелка силы идёт на 4 клетки вправо и 3 клетки вверх; масштаб — 10 Н в клетке. Значит, координаты силы тяги: \(\vec{F}\,(40;\, 30)\), и её модуль \(\sqrt{40^2 + 30^2} = 50\) Н — сходится с условием.

Разложение читается сразу:

  • горизонтальная составляющая 40 Н — она и тянет санки вперёд;
  • вертикальная составляющая 30 Н — она тянет санки вверх и потому разгружает опору.

Второе интереснее. Пусть масса санок с грузом 20 кг, то есть \(F_{\text{тяж}} = mg = 200\) Н. По вертикали на санки действуют три силы: тяжесть \((0;\,-200)\), вертикальная составляющая тяги \((0;\,+30)\) и реакция снега \(\vec{N}\,(0;\,+N)\). Санки по вертикали не движутся, значит \(R_y = 0\):

\[-200 + 30 + N = 0 \quad \Rightarrow \quad N = 170\ \text{Н}.\]

Снег давит на санки не с силой 200 Н, а с силой 170 Н: наклонная тяга разгрузила опору на 30 Н. Сила тяжести при этом не изменилась — она как была 200 Н, так и осталась; изменилась только реакция опоры.

Чем эта разгрузка полезна, мы аккуратно посчитаем в следующей главе, когда появится сила трения: она тем меньше, чем слабее тело прижато к опоре. Пока запомним сам факт: наклонная тяга вверх уменьшает \(N\).

Санки на снегу, наклонная стрелка силы тяги 50 Н от точки крепления верёвки; штриховыми линиями достроен прямоугольник, показаны горизонтальная составляющая 40 Н вдоль снега и вертикальная составляющая 30 Н вверх

Сила тяги 50 Н заменена двумя: 40 Н везут санки вперёд, 30 Н разгружают опору


Брусок на наклонной доске

Второй классический случай — тело на наклонной поверхности. Положите брусок на доску и приподнимите её край.

На брусок действует сила тяжести — строго вниз, как всегда. Но говорить о ней «вниз» здесь неудобно: брусок-то поедет не вниз, а вдоль доски. Поэтому оси разворачивают: одну — вдоль доски, другую — поперёк неё. И силу тяжести раскладывают на две составляющие по этим направлениям:

  • одна составляющая направлена вдоль доски вниз — она тянет брусок съезжать;
  • другая прижимает брусок к доске — ей противодействует сила реакции опоры \(\vec{N}\), направленная перпендикулярно поверхности.

Чем круче доска, тем больше первая составляющая и тем меньше вторая; при почти горизонтальной доске — наоборот. Это объясняет, почему на пологой горке санки стоят, а на крутой съезжают сами.

Считать эти составляющие числом мы пока не будем: для этого нужен угол наклона и тригонометрия, а её в 7 классе ещё не было. Наклонная плоскость вернётся к нам с числами позже — вместе с силой трения.

Брусок на наклонной доске; вниз от бруска стрелка силы тяжести, штриховыми линиями показаны две её составляющие — вдоль доски вниз и перпендикулярно доске; отдельной стрелкой от поверхности к бруску показана сила реакции опоры N

На наклонной доске силу тяжести удобно разложить вдоль доски и поперёк неё


«Разложив силу, мы добавили телу две новые силы»

Соблазн такой: нарисовали силу тяги 50 Н, потом дорисовали составляющие 40 Н и 30 Н — на чертеже стало три стрелки, и все три уходят в расчёт. Ответ получается вдвое больше правильного.

Составляющие заменяют исходную силу, а не добавляются к ней. Либо вы работаете с \(\vec{F}\,(40;\,30)\), либо с парой \((40;\,0)\) и \((0;\,30)\) — но никогда со всеми тремя сразу.

Посчитайте сами. Правильный список: \((40;\,30)\), равнодействующая \((40;\,30)\), модуль 50 Н. Ошибочный список: \((40;\,30)\), \((40;\,0)\), \((0;\,30)\); тогда \(R_x = 80\), \(R_y = 60\), модуль \(\sqrt{6400+3600} = 100\) Н. Ровно вдвое больше — потому что сила посчитана дважды.

Как страховаться: после разложения зачеркните исходную стрелку на чертеже (обычно её перечёркивают двумя штрихами) или, наоборот, чертите составляющие пунктиром. Тогда в список сил не попадёт лишний вектор. Через несколько минут мы проверим оба списка программой и увидим два разных числа.


М2 §3.5. Информатика: равнодействующая программой

Что мы, собственно, делаем руками? Складываем все \(F_x\), складываем все \(F_y\), извлекаем корень из суммы квадратов, сравниваем результат с нулём. Три силы — терпимо. Пять сил, да ещё в четырёх вариантах задачи — уже полчаса арифметики, и половина ошибок будет не в физике, а в знаках.

Компьютеру эта работа подходит идеально: она однообразная и полностью описана правилом. Сила — это пара чисел, а список сил — список пар. Дальше цикл, две суммы, Пифагор и проверка.

Весь расчёт укладывается в четыре шага:

  1. взять список пар \((F_x;\, F_y)\) — по паре на каждую силу;
  2. сложить все \(F_x\) в \(R_x\) и все \(F_y\) в \(R_y\);
  3. извлечь корень из суммы квадратов — это модуль равнодействующей \(|\vec{R}| = \sqrt{R_x^2 + R_y^2}\);
  4. сравнить обе проекции с нулём и сказать, в равновесии тело или поедет.

Пифагор через math.sqrt

Начнём с одного кирпича. Квадратный корень живёт в библиотеке math — вы её подключали ещё в М0 §1 и пользовались ею в М2 §1, когда считали длину пути черепахи. Здесь она нужна ровно за тем же.

import math

print(math.sqrt(3*3 + 4*4))
5.0

Обратите внимание: напечатано 5.0, а не 5. Функция math.sqrt всегда возвращает дробное число, даже если корень извлёкся нацело. Для физики это как раз естественно: модуль силы редко бывает целым.


Функция resultant

Теперь соберём расчёт целиком. Функция получает список сил — список пар чисел — и печатает всё, что нам нужно знать: обе проекции равнодействующей, её модуль и вердикт о равновесии.

Пара записывается в круглых скобках через запятую — как координаты \((F_x;\, F_y)\), только с запятой вместо точки с запятой. Квадратные скобки — список, круглые — пара; здесь одно вложено в другое: список пар.

import math

def resultant(forces):
    rx = 0
    ry = 0
    for fx, fy in forces:
        rx = rx + fx
        ry = ry + fy
    r = math.sqrt(rx*rx + ry*ry)
    print(f"Rx = {rx} Н, Ry = {ry} Н, |R| = {r} Н")
    if math.isclose(rx, 0, abs_tol=0.01) and math.isclose(ry, 0, abs_tol=0.01):
        print("равновесие")
    else:
        print("тело поедет")

lamp = [(0, -40), (-12, 5), (12, 35)]
resultant(lamp)
Rx = 0 Н, Ry = 0 Н, |R| = 0.0 Н
равновесие

Разберём четыре места, которые здесь новые или почти новые.

Строка for fx, fy in forces:. Элемент списка forces — это пара, например (-12, 5). Записав в заголовке цикла сразу два имени, вы просите Python разложить пару по этим именам: на этом шаге fx станет равным -12, а fy5. Так короче и понятнее, чем доставать числа из пары по отдельности.

Накопление. Переменные rx и ry заводятся нулями до цикла и на каждом шаге подрастают. Это тот же приём, что и накопление списка через append в М0 §1, только копим мы не элементы, а сумму.

Буква f перед кавычками. Это f-строка, знакомая по М0 §1. Внутри неё всё, что стоит в фигурных скобках, при печати заменяется на значение: вместо {rx} встанет число, лежащее сейчас в rx, а буквы «Rx = » и «Н» напечатаются как написаны. Уберёте букву f — и на экран выйдут сами фигурные скобки.

Вердикт. Функция ничего не возвращает — она печатает. Такой функции достаточно, пока результат нужен человеку, а не следующему вычислению.

Вывод для фонаря — две нулевые проекции, нулевой модуль и слово «равновесие». Ровно то, что мы получили в §3.3 карандашом.

Одна оговорка про печать. Пока проекции целые, строка выглядит опрятно. Если же проекции дробные — а с динамометра они приходят именно такими, — число может напечататься с длинным хвостом вроде 1.4000000000000001. Почему так, разберём прямо сейчас; лечится это округлением перед печатью: round(rx, 2).


Что будет, если трос оборвётся

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

import math

def resultant(forces):
    rx = 0
    ry = 0
    for fx, fy in forces:
        rx = rx + fx
        ry = ry + fy
    r = math.sqrt(rx*rx + ry*ry)
    print(f"Rx = {rx} Н, Ry = {ry} Н, |R| = {r} Н")
    if math.isclose(rx, 0, abs_tol=0.01) and math.isclose(ry, 0, abs_tol=0.01):
        print("равновесие")
    else:
        print("тело поедет")

broken = [(0, -40), (12, 35)]
resultant(broken)
Rx = 12 Н, Ry = -5 Н, |R| = 13.0 Н
тело поедет

Равнодействующая получилась ненулевой: \(R_x = 12\) Н, \(R_y = -5\) Н, модуль 13 Н. Знаки читаются как направление — вправо и вниз: фонарь качнётся в сторону уцелевшего троса и вниз. И модуль 13 Н не случаен: это ровно то натяжение, которое раньше держал левый трос. Убрали одну силу — осталась сила, ей противоположная.

Сравните два списка: они отличаются одной строчкой, а вердикт — противоположный. Это и есть ответ на вопрос «чем равновесный набор сил отличается от неравновесного».


Почему не Rx == 0

В функции стоит math.isclose(rx, 0, abs_tol=0.01), а не rx == 0. Это не придирка. Проекции реальных сил дробные — их снимают с динамометра, и в них попадаются десятые доли ньютона. А дробные числа хранятся в конечном числе двоичных разрядов, и десятичная дробь вроде 0.1 в такой формат целиком не укладывается (М1 §1). Сумма, которая на бумаге даёт ровный ноль, в памяти может дать ноль с крошечным хвостом.

rx = 0.3 - 0.1 - 0.2
print(rx)
print(rx == 0)
print(abs(rx) < 0.01)
-2.7755575615628914e-17
False
True

Первая строка вывода — не ноль, а очень маленькое отрицательное число. Читается такая запись так: e-17 означает «сдвинуть запятую на 17 разрядов влево», то есть первая значащая цифра стоит на 17-м месте после запятой — примерно \(-0{,}000\,000\,000\,000\,000\,027\). Это и есть хвост от хранения дробей в двоичном виде. Вторая строка поэтому False: строгое сравнение с нулём проваливается. Третья — True: если спрашивать «меньше ли модуль хвоста, чем 0.01 Н», ответ разумный.

Компьютер здесь не ошибается — он хранит число так, как умеет, в конечном числе разрядов. Ошиблись бы мы, потребовав от него точного нуля. Поэтому проверка равновесия всегда идёт с допуском: либо abs(rx) < 0.01, либо math.isclose(rx, 0, abs_tol=0.01) — в наших задачах обе записи работают одинаково, и обе вам знакомы по прошлому параграфу (М2 §2).

Допуск выбирают по задаче. 0.01 Н — это сотая доля ньютона, меньше, чем различит школьный динамометр; принять такую равнодействующую за ноль честно.


Функция zip()

Данные не всегда приходят парами. Часто проекции снимают колонками: отдельно все \(F_x\), отдельно все \(F_y\). Чтобы пройти по двум спискам одновременно, в Python есть zip.

zip(a, b) идёт по двум спискам сразу и на каждом шаге отдаёт пару: первый элемент списка a с первым элементом b, второй со вторым, и так далее. Останавливается, когда кончается более короткий список.

Название говорит само за себя: zip — застёжка-молния, которая сцепляет два ряда зубчиков в один. Вы уже видели zip в работе — в мини-лаборатории М0 §1, где мы печатали таблицу «время — путь» по двум спискам. Тогда он мелькнул без объяснений; теперь у него есть имя и определение.


Таблица сил через zip

Запишем три силы фонаря двумя колонками и напечатаем по ним таблицу — с координатами и модулем каждой силы.

import math

xs = [0, -12, 12]
ys = [-40, 5, 35]

for fx, fy in zip(xs, ys):
    print(f"({fx}; {fy})  модуль = {math.sqrt(fx*fx + fy*fy)} Н")
(0; -40)  модуль = 40.0 Н
(-12; 5)  модуль = 13.0 Н
(12; 35)  модуль = 37.0 Н

Три строки вывода — три силы. Модули совпали с теми, что заявлены в вопросах к главе: 40 Н, 13 Н и 37 Н. Заголовок цикла выглядит так же, как в resultant: zip отдаёт пары, а пара тут же раскладывается на fx и fy.


zip останавливается на коротком списке

Одна ловушка, о которой лучше узнать заранее.

xs = [3, -1, -2]
ys = [0, 4]

for fx, fy in zip(xs, ys):
    print(fx, fy)
3 0
-1 4

Сил в первом списке три, а во втором — две проекции. zip напечатал только две пары: третье значение -2 осталось без пары и было молча отброшено. Ошибки Python не покажет.

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


Многоугольник сил черепахой

Необязательный блок: нужен графический вывод, поэтому запускайте его в Replit или в локальном Python.

Замкнутость многоугольника можно не только посчитать, но и увидеть. Черепаха идёт по цепочке сил: из текущей точки — на \(F_x\) вправо и \(F_y\) вверх, потом от нового места — следующая сила, и так до конца списка. Чтобы треугольник не оказался микроскопическим, каждую проекцию умножаем на масштаб: одному ньютону соответствуют 4 точки экрана.

import turtle

forces = [(0, -40), (-12, 5), (12, 35)]
scale = 4

t = turtle.Turtle()
t.speed(0)

for fx, fy in forces:
    t.goto(t.xcor() + fx * scale, t.ycor() + fy * scale)

print(round(t.xcor() / scale))
print(round(t.ycor() / scale))

На экране получится треугольник, а черепаха вернётся туда, откуда вышла. Печатаем мы не сами экранные координаты, а поделённые на масштаб — то есть снова ньютоны. Две напечатанные величины — нули: конец последнего вектора совпал с началом первого. Замкнутость видна и картинкой, и числом.

Поменяйте одну проекцию — например, вместо (12, 35) поставьте (12, 30) — и ломаная не сойдётся: между концом и началом останется просвет, а числа покажут 0 и -5. Этот просвет и есть равнодействующая: 5 Н, направленные вниз.

Ещё одна мелочь для локального запуска: допишите последней строкой turtle.done(), иначе окно с рисунком закроется сразу, как только программа кончится, и вы решите, что ничего не нарисовалось.


М2 §3.6. Задачи

Уровень A: узнавание

A1. Определите знаки проекций каждого вектора: \(\vec{a}\) смотрит влево и вверх; \(\vec{b}\) — вправо и вниз; \(\vec{c}\) — строго вниз; \(\vec{d}\) — строго вправо. Оси обычные: \(Ox\) вправо, \(Oy\) вверх.

A2. Замкнут ли многоугольник сил? Наборы проекций (в ньютонах): а) \((2;\,3)\), \((-5;\,1)\), \((3;\,-4)\); б) \((1;\,2)\), \((-4;\,0)\), \((3;\,-1)\). Если не замкнут — скажите, в какую сторону поедет тело.

A3. Груз висит на двух верёвках, закреплённых на потолке под разными углами. Назовите три силы, действующие на груз, и для каждой скажите: какое тело её создаёт и к какому телу она приложена. Почему вес груза в этот список не входит?

A4. Дан вектор \(\vec{a}\,(-8;\,6)\). Запишите координаты противоположного вектора и найдите его длину.

A5. Сила направлена строго горизонтально влево, её модуль 15 Н. Запишите её координаты.

Подсказка к A2: считайте суммы отдельно по каждой оси; модуль равнодействующей для ответа не нужен.


Уровень B: расчёт сил по проекциям

B1. Груз массой 2 кг (\(g = 10\) Н/кг) висит на двух тросах. Левый трос горизонтален и тянет груз влево. Правый закреплён так, что его стрелка на клетчатой сетке идёт на 3 клетки вправо и 4 клетки вверх. Найдите модули натяжения обоих тросов.

B2. На тело действуют три силы: 3 Н вправо, 4 Н вверх и сила модулем 5 Н с проекциями \((-3;\,-4)\). Найдите координаты и модуль равнодействующей. В равновесии ли тело?

B3. На тело действуют силы с проекциями \((6;\,-2)\), \((-2;\,5)\) и \((-1;\,1)\) (в ньютонах). Найдите \(R_x\), \(R_y\), модуль равнодействующей и опишите словами, куда тело поедет.

B4. Санки везут за верёвку с силой 50 Н; проекции силы тяги — \((40;\,30)\). Масса санок с грузом 20 кг, \(g = 10\) Н/кг. Найдите силу реакции опоры. На сколько ньютонов она отличается от той, что была бы при горизонтальной тяге?

Подсказка к B1: по вертикали груз держит только правый трос, значит его вертикальная проекция равна модулю силы тяжести. Направление правого троса задано клетками: 4 клетки вверх и 3 вправо. Раз на 4 клетки по вертикали приходится найденное число ньютонов, посчитайте, сколько ньютонов приходится на одну клетку, — и умножьте на 3, чтобы получить горизонтальную проекцию. Дальше модуль по Пифагору, а натяжение левого троса — из условия \(R_x = 0\).


Уровень B: векторы в координатах

B5. Дан вектор \(\vec{a}\,(-6;\,8)\). Найдите его длину и координаты противоположного вектора.

B6. Даны \(\vec{a}\,(3;\,-5)\) и \(\vec{b}\,(-7;\,2)\). Найдите координаты \(\vec{a} + \vec{b}\) и \(\vec{a} - \vec{b}\). Длина какого из этих двух векторов больше — ответьте до вычислений, глядя на координаты, а потом проверьте счётом. Корни извлекать не нужно: чей квадрат длины больше, того и длина больше.

B7. Модуль силы равен 13 Н, её проекция на ось \(Ox\) равна 5 Н. Найдите проекцию на ось \(Oy\). Сколько у задачи ответов и чем они различаются физически?

B8. Вектор идёт из точки \((2;\,-1)\) в точку \((-4;\,7)\). Запишите его координаты и найдите длину.

Подсказка к B7: воспользуйтесь формулой модуля и вспомните, что квадраты противоположных чисел равны.


Уровень C: перенос

C1. Три силы уравновешивают друг друга. Две известны: \(\vec{F}_1\,(7;\,-24)\) и \(\vec{F}_2\,(-7;\,4)\) (в ньютонах). Найдите координаты и модуль третьей силы. Постройте замкнутый треугольник сил на клетчатой бумаге и убедитесь, что построение согласуется с расчётом.

C2. Мальчик тянет санки за верёвку с силой 50 Н, проекции силы \((40;\,30)\). Объясните, какая составляющая двигает санки, а какая разгружает опору. Что произойдёт с каждой из составляющих, если взять верёвку подлиннее и потянуть более полого, сохранив модуль силы 50 Н?

C3. Фонарь из вопросов к главе перевесили: оба троса стали одинаково наклонными, и теперь их натяжения имеют проекции \((-15;\,20)\) и \((15;\,20)\). Проверьте, держат ли они тот же фонарь массой 4 кг. Найдите модули натяжений и сравните с прежними 13 Н и 37 Н. Какой подвес выгоднее для тросов и почему?

C4 (программная). Напишите функцию resultant(forces) заново, не подглядывая в §3.5: она получает список пар-проекций, печатает \(R_x\), \(R_y\), модуль равнодействующей и вердикт о равновесии с допуском 0.01 Н. Проверьте её на четырёх наборах: из задач B2, B3, C1 (все три силы) и на наборе фонаря из C3 вместе с силой тяжести.

Подсказка к C1: третья сила противоположна сумме первых двух — сначала сложите, потом смените оба знака.


Предскажите вывод программы

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

D1. Что напечатает программа?

import math

def resultant(forces):
    rx = 0
    ry = 0
    for fx, fy in forces:
        rx = rx + fx
        ry = ry + fy
    r = math.sqrt(rx*rx + ry*ry)
    print(f"Rx = {rx} Н, Ry = {ry} Н, |R| = {r} Н")
    if math.isclose(rx, 0, abs_tol=0.01) and math.isclose(ry, 0, abs_tol=0.01):
        print("равновесие")
    else:
        print("тело поедет")

resultant([(6, 0), (-2, 3), (-4, -3)])

D2. Функция та же, что в D1, но у последней силы поменяли знак второй проекции. Что изменится в выводе — обе строки или только одна?

resultant([(6, 0), (-2, 3), (-4, 3)])

D3. Ловушка. Здесь в список попали и сила тяги санок \((40;\,30)\), и обе её составляющие. Предскажите три числа и вердикт — и объясните, почему модуль вышел именно таким.

resultant([(40, 30), (40, 0), (0, 30)])

Подсказка к D3: вернитесь к разбору заблуждения в §3.4 — что происходит, когда одну и ту же силу учитывают дважды.


М2 §3.7. Итог

Глава добавила в ваш инструментарий семь вещей.

  • Сила натяжения \(\vec{T}\) — сила упругости натянутого троса, приложенная к телу и направленная вдоль троса от тела к точке крепления.
  • Правило многоугольника — способ сложить любое число векторов: цепочка «конец к началу», сумма от начала первого к концу последнего. Равновесие = замкнутая цепочка.
  • Вычитание векторов\(\vec{a} - \vec{b} = \vec{a} + (-\vec{b})\); недостающая сила в замкнутом многоугольнике противоположна сумме остальных.
  • Проекция вектора на ось — число со знаком: сколько и в какую сторону. Знак — не ошибка и не опечатка, а часть ответа.
  • Координаты вектора \((F_x;\, F_y)\) и модуль \(|\vec{F}| = \sqrt{F_x^2 + F_y^2}\): два числа полностью заменяют стрелку, а сложение векторов превращается в сложение чисел по каждой оси отдельно.
  • Условие равновесия в проекциях: \(R_x = 0\) и \(R_y = 0\) — одно векторное равенство, записанное двумя числовыми.
  • Разложение силы на составляющие — замена силы двумя по заданным направлениям с той же равнодействующей.

В программировании прибавилось четыре: функция resultant, которая складывает список пар и печатает вердикт; распаковка пары прямо в заголовке цикла for fx, fy in ...; проверка равновесия с допуском вместо сравнения с нулём; и zip, сцепляющий две колонки чисел в пары.

Главное же — способ действий. Любая задача на равновесие теперь решается по одному маршруту: назвать тело → выписать силы, приложенные к нему → выбрать оси → снять проекции со знаками → приравнять обе суммы нулю. Дальше остаётся арифметика, и её можно поручить машине.


Мост к М2 §4

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

Так не бывает. Есть сила трения, и она устроена хитрее уже знакомых: её модуль зависит от того, насколько сильно тело прижато к опоре, — то есть от той самой \(\vec{N}\), которую мы научились считать через проекции. А направление её всегда против движения, и это делает многоугольник сил куда интереснее.

Следующая глава вводит силу трения; наклонная доска получит числа, когда появится тригонометрия. Останется и один давний долг: слово «инерция», обещанное в прошлом параграфе (М2 §2), ждёт своей главы в девятом классе — там оно наконец получит определение, а не одно упоминание.