Всем привет, сегодня дед Иван расскажет вам от том, как построить номограмму по заданному уравнению (функция может быть в неявном виде, но всё-таки должна соответствовать некоторым требованиям, рассмотренным в этой статье) с использованием компьютерных программ (для построения графиков на плоскости я использую Graph). Поехали!
Вступление
Итак, что такое номограмма? Как говорит википедия, это графическое представление функции от нескольких переменных, позволяющее с помощью простых геометрических операций (например, прикладывания линейки) исследовать функциональные зависимости без вычислений. То есть, для заданных значений переменных можно найти значение функции без расчётов. Где это может пригодиться? Например, при определении значения функции, когда рассчитывать на калькуляторе это значение либо долго, либо невозможно (привет, интегралы👋). Ну или же просто для удобства: одно дело носить с собой калькулятор, а другое - сложенный несколько раз лист А4. Переходим непосредственно к изучению алгоритмов построения.
Случай 1: y=f(a, x)
Для построения номограммы сначала нужно выбрать диапазон возможных значений переменной x и параметра a (буквы могут быть разные, а параметром лучше сделать переменную, у которой меньше диапазон, либо требования к точности ниже). Затем приравнять параметр к какому-либо значению, после этого построить график функции y=f(a1, x) в заданном диапазоне x. Потом выбрать другое значение a и снова построить график. Когда параметр выйдет за границы выбранного диапазона, закончить работу. Думаю, здесь ничего сложного нет. Пример построения номограммы представлен на изображении. Хочу заметить, что начало координат можно сместить таким образом, чтобы график для заданных диапазонов переменных был только в одной четверти.
Случай 2: f(a, x, y)=0
Здесь мы имеем дело с функцией, заданной в неявном виде. Что делать? Все действия такие же, как в предыдущем случае, только для построения функции мы нажимаем кнопку x<y на верхней панели (Замечание: как в этом, так и в следующем методе значений функции может быть несколько, так как она в неявном виде).
Однако, есть ещё один метод построения. Он также используется, когда параметров несколько. Суть: можно попробовать привести функцию к виду (здесь мы рассматриваем наш случай неявной функции с одним параметром)
Для построения номограммы нам понадобится первая и вторая четверть координатной плоскости, при этом ось OX в одной четверти обозначает сами значения х, а в другой четверти - значения y (формирование значений y на оси мы выбираем сами, для этого задаём функцию y = f(x), и подставляем её туда, где есть y). Ось OY обозначает значение p. То есть мы строим график зависимости p и от x, и от y. Непонятно? Пример:
Итак, нужно построить номограмму определения значения y в диапазоне a = 1..3; x = -1.5..0.5.
Пусть p = y*ln(y), тогда приходим к системе
Попробуем построить графики
Как вам эта номограмма? По-моему, ужас. Что нужно поменять? Во-первых, пусть ось OY (вместо y написано p) пересекает ось ОХ в точке -1.5. Во-вторых, нужно изменить функцию значений y от х (потому что, например, при x = 0.5 и а = 1 найти y будет не очень удобно). Результат:
Здесь мы приняли, что y = -x-1. Теперь для любого значения x и a мы сможем определить значение y. Для примера, найдём значение y при a = 1, x = 0. Получили примерно 1.75.
Есть ещё одна фишка. В рассмотренном примере мы ввели параметр p. Но ведь могли ввести 2*p, p/2+10, p+4 и т.д. То есть графики можно масштабировать и смещать относительно оси OY (оси значений p).
Случай 3: f(a, b, x, y)=0
Чтобы построить номограмму для этого случая, уравнение нужно привести к виду h(параметр1, y) = g(параметр2, x) и приравнять обе части к p. В одной четверти будет график функции h, в другой - функции g. То есть что-то вроде этого:
Но что делать, если к такому виду уравнение f(a, b, x, y)=0 привести нельзя? Хм, тут многое зависит от самой функции и требованиям к номограмме. Можно x взять в качестве параметра, можно сделать несколько номограмм, каждая из которых составлена для определённого значения одного из параметров, можно попробовать использовать разложение в ряд.
Случай 4: f(a1, a2, ..., aN, x, y) = 0
Итак, чтобы построить номограмму для этого случая, необходимо создать цепочку функций, которые, имея в качестве входных данных параметр, а также аргумент или предыдущую функцию в цепочке, приведут нас к значению y. Должно получиться так:
- f1(параметр1, x, p1) = 0
- f2(параметр2, p1, p2) = 0
- f2(параметр3, p2, p3) = 0
K. fK(параметрK, pK-1, pK) = 0
N. fN(параметрN, pN-1, y) = 0
В первой строке задана функция p1 в неявном виде (как я раньше говорил, Graph сможет её построить, поэтому функция не обязана иметь явный вид). Во второй - функция p2 в неявном виде и т.д. Непонятно? Вот вам пример для трёх параметров:
Так как мы делим, x не равен 0, но 0 не входит в заданный отрезок, поэтому рассматривать случай x=0 не нужно. Дальше просто измените точку пересечения оси ОХ с осью OY, постройте графики, выполните масштабирование (осторожно, следите за ОДЗ) и градуировку оси значений y. Тяжело? Согласен, посмотрите сначала, как сделал это я:
Взгляните на уравнения графиков. Заметили p1, p2, p3? Эти функции я ввёл в программу для наглядности и для упрощения работы. Вот они сами:
Теперь вопрос: как выполнить градуировку значений y? Всё просто: подставьте значение по оси OY в крайнюю функцию (p3). Получившееся число и будет новым значением y. Почему пропустили другие функции? Предлагаю вам подумать самим и написать ответ в комментариях. Можете там же и написать, что делать в случае, когда параметров больше 4. Чтобы вы до конца смогли разобраться в теме, прикрепляю ссылку на крайнюю номограмму, открыть файл вы сможете программой Graph: Номограмма_3_параметра. Остались вопросы? Есть дополнения? Пишите, не стесняйтесь, но лучше ставьте лайки и подписывайтесь! Всем пока!