Решение системы трансцендентных уравнений в excel

Трансцендентные уравнения? «Подбор параметра» в Excel!

Нелинейные, трансцендентные уравнения функции одной переменной – это уравнения вида f (x) = 0, в которых нельзя найти алгебраическими методами корни. Функция f (x) – это, как правило, достаточно сложная и громоздкая функция, содержащая в своем составе.

. тригонометрические, логарифмические, степенные и иные нелинейные функции с различной глубиной вложенности. Например: f (x) = sin (3,14^x) + cos (x) = 0. Уравнения такого вида решаются численными методами.

В этой статье я постараюсь доступно и кратко рассказать и показать на примерах, как и когда такие задачи возникают и как их сегодня быстро и просто можно решать в Excel.

Чуть-чуть истории и теории.

Вы задумывались когда-нибудь — откуда и зачем в головах людей, живших в XVI…XVII веках, родились понятия дифференциалов, производных, интегралов? Объяснение, в общем-то, достаточно простое и понятное – эти ученые искали аналитические пути решения прикладных практических задач. И успешно находили.

Мне сегодня видится приблизительно такая «лестница» с качественными «ступенями инструментов» математики для решения практических и научных задач, которую изобрело человечество:

1. Арифметика — сложение, вычитание, умножение, деление.

2. Алгебра – применение элементарных функций (степенной, логарифмической, тригонометрической, …) и алгебраических уравнений функции одной переменной.

3. Гауссовские системы линейных уравнений.

4. Численные методы решения трансцендентных уравнений.

5. Численные методы решения систем трансцендентных уравнений функций нескольких переменных.

6. Дифференцирование и интегрирование функций одной переменной.

7. Дифференцирование и интегрирование функций нескольких переменных.

8. Системы дифференциальных и интегральных уравнений.

9. Масса разнообразных новых и старых специальных методик и подходов мне не известных и известных, но, безусловно, существующих и работающих.

Предлагаю остановиться и разобраться с достаточно высокой четвертой ступенью «лестницы».

Для численного решения нелинейных уравнений успешно применяются: метод половинного деления, метод простых итераций, метод хорд, метод касательных Ньютона, комбинированный метод секущих-хорд на основе итерационной формулы Ньютона. Для чего ученые-математики придумали множество различных методов решения трансцендентных уравнений? Они старались упростить и ускорить процесс расчетов. Надо помнить и понимать, что у них компьютеров не было, и расчеты выполнялись вручную.

Каждый из методов имеет свои достоинства и недостатки — они подробно описаны в литературе, и углубляться в них мы не будем. Скажу только, что из вышеперечисленных методов мне на практике довелось использовать все. При решении различных (в основном геометрических и теплотехнических) задач по разным причинам было удобно использовать то один, то другой подход. Метод Ньютона хорош своей быстрой сходимостью и простотой формулы. Комбинированный метод секущих-хорд на основе итерационной формулы Ньютона не требует нахождения производных, быстро «сходится», и главное – не требует анализа функции на сходимость. Метод половинного деления медленно сходится, но не требует никакого предварительного анализа функции.

Трансцендентные уравнения. Два метода решения в Excel.

Если у вас на компьютере нет программы MS Excel, то расчеты можно выполнить в программе OOo Calc из бесплатного пакета Open Office.

Задач, которые требуют для получения ответа составления и решения трансцендентных уравнений, вокруг нас очень много. Это — задачи и физики, и теплотехники, и астрономии, и элементарной геометрии в обычной жизни… Инженерам-конструкторам и программистам в повседневной работе необходимо уметь составлять и быстро решать численными методами нелинейные уравнения. На мой взгляд — это один из критериев профессионализма. Более того, уравнения, которые решаются аналитически, сегодня иногда гораздо проще и быстрее при наличии вычислительной техники решить численными методами, поэтому нужно уметь это делать.

Вычисление угла зацепления зубчатой передачи методом Ньютона (методом касательных)

Рассмотрим пример из статьи «Расчет геометрии зубчатой передачи». Необходимо найти угол зацепления зубчатой передачи atw . Я обещал в той статье рассказать, как это делается. Выполняю обещание.

Если расстояние между центрами колеса и шестерни не задано, то угол зацепления можно вычислить путем решения трансцендентного уравнения:

inv ( atw )=tg ( atw ) — atw =2* xs *tg ( a )/( z2 + T * z1 )+ tg ( at ) — at

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

inv ( atw )=0,020910

f ( atw )=tg ( atw )— atw -0,020910=0

Используем метод Ньютона, потому что взять производную представленной выше функции элементарно просто, а итерационная формула очень проста и компактна:

f’( atw )=1/(cos ( atw ))^2—1

atw (i+1) = atw i — f ( atw ) i/ f’( atw ) i

Открываем файл Excel и начинаем работу.

Исходные данные будем традиционно писать в ячейки со светло-бирюзовой заливкой. Результаты расчетов будем считывать в ячейках со светло-желтой заливкой.

1. Инволюту угла зацепления inv( atw ) заносим

в ячейку D3: 0,020910

2. Значение угла зацепления в нулевом приближении atw 0 в радианах записываем

3. Итерационную формулу atw (i+1)= atw i f( atw )i/ f’( atw )i заносим

в D5: =D4- (TAN (D4) -D4-$D$3)/(1/(COS (D4))^2-1) =0,591706

atw 1= atw 0- (tg ( atw 0) — atw 0- inv ( atw ))/(1/(cos ( atw 0))^2-1)

и копируем в ячейки D6… D14

4. Видим, что уже после шестой итерации угол зацепления atw в радианах вычислен с нулевой абсолютной и относительной ошибкой:

atw =D13- (TAN (D13) -D13-$D$3)/(1/(COS (D13))^2-1) =0,389140

Решение найдено, расчет в Excel завершен!

Решение задачи ландшафтного дизайна с помощью сервиса «Подбор параметра» в Excel

Задача:

Вдоль отмостки стены дома длиной 14 метров необходимо разбить цветник в виде сегмента круга площадью ровно 16 квадратных метров. На сколько метров цветник будет отстоять от края отмостки по центру стены? Каким радиусом необходимо выполнить границу цветника?

1. Длину отмостки стены дома — хорды сегмента круга x в метрах записываем

в ячейку D17: 14,000

2. Площадь цветника – сегмента круга S в квадратных метрах вписываем

в D18: 16,000

3. Предположительное произвольное (не нулевое) значение центрального угла сегмента a в радианах пишем

Трансцендентное уравнение a / sin( a /2 ) -2*cos ( a /2) — (8* S / x ^2) *sin( a /2)=0 вводим

в объединенную ячейку E19F19: =D19/SIN (D19/2) -2*COS (D19/2) — (8*D18/D17^2)*SIN (D19/2)

Включаем сервис «Подбор параметра» в Excel: «Сервис» – «Подбор параметра». Пишем в появившемся окне все как на рисунке слева и нажимаем кнопку OK.

В появившемся новом окне видим, что решение найдено, снова нажимаем на кнопку OK.

Считываем искомое значение центрального угла сегмента a в радианах

в D19: 0,950057

При этом видим, что значение трансцендентного уравнения равно нулю; считываем

в объединенной ячейке E19F19: =D19/SIN (D19/2) -2*COS (D19/2) — (8*D18/D17^2)*SIN (D19/2) =0

4. Радиус наружной границы цветника – радиус сегмента круга r в метрах рассчитывается

в D20: =D17/2/SIN (D19/2) =15,305

r = x /2/sin( a /2)

5. Максимальная ширина цветника – высота сегмента круга h в метрах рассчитывается

в ячейке D21: =D20*(1-COS (D19/2)) =1.695

h = r *(1- cos( a /2))

Ответы получены, вторая задача успешно решена!

Я не приводил вывода использованных формул потому, что это не по теме поста, и, думаю, с геометрией и тригонометрией вы легко разберетесь. Будут вопросы – обращайтесь.

Чтобы получать информацию о выходе новых статей вам нужно подписаться на анонсы в окне, расположенном вверху страницы. Введите адрес своей электронной почты и нажмите на кнопку «Получать анонсы статей». С этого момента к вам на почтовый ящик будет приходить небольшое уведомление о появлении на моем блоге новой статьи.

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

1. Итерационными численными методами удобно и быстро можно решать трансцендентные уравнения и громоздкие нелинейные алгебраические.

2. При написании расчетных модулей программ в Excel, если нежелательны лишние остановки по ходу вычислений, можно использовать вставки блоков с классическими методами решения нелинейных уравнений или макросов с вызовом инструмента «Подбор параметра».

3. Использование инструмента «Подбор параметра» в Excel является сегодня, безусловно, наиболее оптимальным и эффективным методом решения нелинейных, трансцендентных уравнений функций одной переменной, а также проведения анализа типа «Что будет? Если…».

Умение применять в работе сервис «Подбор параметра» существенно повышает ваш уровень, как специалиста вообще, так и как пользователя Excel – в частности.

Буду очень рад увидеть ваши комментарии к статье, уважаемые читатели!

Решение алгебраических и трансцендентных уравнений в среде Microsoft Excel

Презентация к уроку

Загрузить презентацию (641 кБ)

В общем случае процесс решения задачи с использованием ЭВМ состоит из следующих этапов:

1. Постановка задачи и построение математической модели (этап моделирования);

2. Выбор метода и разработка алгоритма (этап алгоритмизации);

3. Запись алгоритма на языке, понятном ЭВМ (этап программирования);

4. Отладка и использования программы на ЭВМ (этап реализации);

5. Анализ полученных результатов (этап интерпретации).

В данной работе показано решение алгебраических и трансцендентных уравнений в среде Microsoft Excel. Уточнения корня производилось различными методами: методом бисекции; методом итераций; методом секущих; методом Ньютона.

Самый простейший из методов уточнения корня является метод половинного деления и используется во многих стандартных программных средствах.
Метод хорд в отличие от метода дихотомии, обращающего внимание лишь на знаки значений функции, но не на сами значения. Он требует, чтобы один конец отрезка, на котором ищется корень был не подвижен. Берется один из концов отрезка. Метод является двухточечным, его сходимость монотонная и односторонняя. Метод хорд использует пропорциональное деление интервала.

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

У метода хорд и у метода Ньютона имеется общий недостаток: на каждом шаге проверяется точность значения.

Решение системы уравнений в Microsoft Excel

Умение решать системы уравнений часто может принести пользу не только в учебе, но и на практике. В то же время, далеко не каждый пользователь ПК знает, что в Экселе существует собственные варианты решений линейных уравнений. Давайте узнаем, как с применением инструментария этого табличного процессора выполнить данную задачу различными способами.

Варианты решений

Любое уравнение может считаться решенным только тогда, когда будут отысканы его корни. В программе Excel существует несколько вариантов поиска корней. Давайте рассмотрим каждый из них.

Способ 1: матричный метод

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

    Заполняем матрицу числами, которые являются коэффициентами уравнения. Данные числа должны располагаться последовательно по порядку с учетом расположения каждого корня, которому они соответствуют. Если в каком-то выражении один из корней отсутствует, то в этом случае коэффициент считается равным нулю. Если коэффициент не обозначен в уравнении, но соответствующий корень имеется, то считается, что коэффициент равен 1. Обозначаем полученную таблицу, как вектор A.

Отдельно записываем значения после знака «равно». Обозначаем их общим наименованием, как вектор B.

Аргумент «Массив» — это, собственно, адрес исходной таблицы.

Итак, выделяем на листе область пустых ячеек, которая по размеру равна диапазону исходной матрицы. Щелкаем по кнопке «Вставить функцию», расположенную около строки формул.

Выполняется запуск Мастера функций. Переходим в категорию «Математические». В представившемся списке ищем наименование «МОБР». После того, как оно отыскано, выделяем его и жмем на кнопку «OK».

Итак, после этого программа производит вычисления и на выходе в предварительно выделенной области мы имеем матрицу, обратную данной.

Теперь нам нужно будет умножить обратную матрицу на матрицу B, которая состоит из одного столбца значений, расположенных после знака «равно» в выражениях. Для умножения таблиц в Экселе также имеется отдельная функция, которая называется МУМНОЖ. Данный оператор имеет следующий синтаксис:

Выделяем диапазон, в нашем случае состоящий из четырех ячеек. Далее опять запускаем Мастер функций, нажав значок «Вставить функцию».

В категории «Математические», запустившегося Мастера функций, выделяем наименование «МУМНОЖ» и жмем на кнопку «OK».

Активируется окно аргументов функции МУМНОЖ. В поле «Массив1» заносим координаты нашей обратной матрицы. Для этого, как и в прошлый раз, устанавливаем курсор в поле и с зажатой левой кнопкой мыши выделяем курсором соответствующую таблицу. Аналогичное действие проводим для внесения координат в поле «Массив2», только на этот раз выделяем значения колонки B. После того, как вышеуказанные действия проведены, опять не спешим жать на кнопку «OK» или клавишу Enter, а набираем комбинацию клавиш Ctrl+Shift+Enter.

  • После данного действия в предварительно выделенной ячейке отобразятся корни уравнения: X1, X2, X3 и X4. Они будут расположены последовательно. Таким образом, можно сказать, что мы решили данную систему. Для того, чтобы проверить правильность решения достаточно подставить в исходную систему выражений данные ответы вместо соответствующих корней. Если равенство будет соблюдено, то это означает, что представленная система уравнений решена верно.
  • Способ 2: подбор параметров

    Второй известный способ решения системы уравнений в Экселе – это применение метода подбора параметров. Суть данного метода заключается в поиске от обратного. То есть, основываясь на известном результате, мы производим поиск неизвестного аргумента. Давайте для примера используем квадратное уравнение

      Принимаем значение x за равное 0. Высчитываем соответствующее для него значение f(x), применив следующую формулу:

    Вместо значения «X» подставляем адрес той ячейки, где расположено число 0, принятое нами за x.

    Переходим во вкладку «Данные». Жмем на кнопку «Анализ «что если»». Эта кнопка размещена на ленте в блоке инструментов «Работа с данными». Открывается выпадающий список. Выбираем в нем позицию «Подбор параметра…».

    Запускается окно подбора параметров. Как видим, оно состоит из трех полей. В поле «Установить в ячейке» указываем адрес ячейки, в которой находится формула f(x), рассчитанная нами чуть ранее. В поле «Значение» вводим число «0». В поле «Изменяя значения» указываем адрес ячейки, в которой расположено значение x, ранее принятое нами за 0. После выполнения данных действий жмем на кнопку «OK».

    После этого Эксель произведет вычисление с помощью подбора параметра. Об этом сообщит появившееся информационное окно. В нем следует нажать на кнопку «OK».

  • Результат вычисления корня уравнения будет находиться в той ячейке, которую мы назначили в поле «Изменяя значения». В нашем случае, как видим, x будет равен 6.
  • Этот результат также можно проверить, подставив данное значение в решаемое выражение вместо значения x.

    Способ 3: метод Крамера

    Теперь попробуем решить систему уравнений методом Крамера. Для примера возьмем все ту же систему, которую использовали в Способе 1:

      Как и в первом способе, составляем матрицу A из коэффициентов уравнений и таблицу B из значений, которые стоят после знака «равно».

    Далее делаем ещё четыре таблицы. Каждая из них является копией матрицы A, только у этих копий поочередно один столбец заменен на таблицу B. У первой таблицы – это первый столбец, у второй таблицы – второй и т.д.

    Теперь нам нужно высчитать определители для всех этих таблиц. Система уравнений будет иметь решения только в том случае, если все определители будут иметь значение, отличное от нуля. Для расчета этого значения в Экселе опять имеется отдельная функция – МОПРЕД. Синтаксис данного оператора следующий:

    Таким образом, как и у функции МОБР, единственным аргументом выступает ссылка на обрабатываемую таблицу.

    Итак, выделяем ячейку, в которой будет выводиться определитель первой матрицы. Затем жмем на знакомую по предыдущим способам кнопку «Вставить функцию».

    Активируется окно Мастера функций. Переходим в категорию «Математические» и среди списка операторов выделяем там наименование «МОПРЕД». После этого жмем на кнопку «OK».

    Запускается окно аргументов функции МОПРЕД. Как видим, оно имеет только одно поле – «Массив». В это поле вписываем адрес первой преобразованной матрицы. Для этого устанавливаем курсор в поле, а затем выделяем матричный диапазон. После этого жмем на кнопку «OK». Данная функция выводит результат в одну ячейку, а не массивом, поэтому для получения расчета не нужно прибегать к нажатию комбинации клавиш Ctrl+Shift+Enter.

    Функция производит подсчет результата и выводит его в заранее выделенную ячейку. Как видим, в нашем случае определитель равен -740, то есть, не является равным нулю, что нам подходит.

    Аналогичным образом производим подсчет определителей для остальных трех таблиц.

    На завершающем этапе производим подсчет определителя первичной матрицы. Процедура происходит все по тому же алгоритму. Как видим, определитель первичной таблицы тоже отличный от нуля, а значит, матрица считается невырожденной, то есть, система уравнений имеет решения.

  • Теперь пора найти корни уравнения. Корень уравнения будет равен отношению определителя соответствующей преобразованной матрицы на определитель первичной таблицы. Таким образом, разделив поочередно все четыре определителя преобразованных матриц на число -148, которое является определителем первоначальной таблицы, мы получим четыре корня. Как видим, они равны значениям 5, 14, 8 и 15. Таким образом, они в точности совпадают с корнями, которые мы нашли, используя обратную матрицу в способе 1, что подтверждает правильность решения системы уравнений.
  • Способ 4: метод Гаусса

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

      Опять последовательно записываем коэффициенты в таблицу A, а свободные члены, расположенные после знака «равно» — в таблицу B. Но на этот раз сблизим обе таблицы, так как это понадобится нам для работы в дальнейшем. Важным условием является то, чтобы в первой ячейке матрицы A значение было отличным от нуля. В обратном случае следует переставить строки местами.

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

    Если вы расположили матрицы по-другому, то и адреса ячеек формулы у вас будут иметь другое значение, но вы сможете высчитать их, сопоставив с теми формулами и изображениями, которые приводятся здесь.

    После того, как формула введена, выделите весь ряд ячеек и нажмите комбинацию клавиш Ctrl+Shift+Enter. К ряду будет применена формула массива и он будет заполнен значениями. Таким образом мы произвели вычитание из второй строки первой, умноженной на отношение первых коэффициентов двух первых выражений системы.

    После этого копируем полученную строку и вставляем её в строчку ниже.

    Выделяем две первые строки после пропущенной строчки. Жмем на кнопку «Копировать», которая расположена на ленте во вкладке «Главная».

    Пропускаем строку после последней записи на листе. Выделяем первую ячейку в следующей строке. Кликаем правой кнопкой мыши. В открывшемся контекстном меню наводим курсор на пункт «Специальная вставка». В запустившемся дополнительном списке выбираем позицию «Значения».

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

    После ввода формулы выделяем весь ряд и применяем сочетание клавиш Ctrl+Shift+Enter.

    Теперь следует выполнить обратную прогонку по методу Гаусса. Пропускаем три строки от последней записи. В четвертой строке вводим формулу массива:

    Таким образом, мы делим последнюю рассчитанную нами строку на её же третий коэффициент. После того, как набрали формулу, выделяем всю строчку и жмем сочетание клавиш Ctrl+Shift+Enter.

    Поднимаемся на строку вверх и вводим в неё следующую формулу массива:

    Жмем привычное уже нам сочетание клавиш для применения формулы массива.

    Поднимаемся ещё на одну строку выше. В неё вводим формулу массива следующего вида:

    Опять выделяем всю строку и применяем сочетание клавиш Ctrl+Shift+Enter.

  • Теперь смотрим на числа, которые получились в последнем столбце последнего блока строк, рассчитанного нами ранее. Именно эти числа (4, 7 и 5) будут являться корнями данной системы уравнений. Проверить это можно, подставив их вместо значений X1, X2 и X3 в выражения.
  • Как видим, в Экселе систему уравнений можно решить целым рядом способов, каждый из которых имеет собственные преимущества и недостатки. Но все эти методы можно условно разделить на две большие группы: матричные и с применением инструмента подбора параметров. В некоторых случаях не всегда матричные методы подходят для решения задачи. В частности тогда, когда определитель матрицы равен нулю. В остальных же случаях пользователь сам волен решать, какой вариант он считает более удобным для себя.

    Помимо этой статьи, на сайте еще 12689 инструкций.
    Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.

    Отблагодарите автора, поделитесь статьей в социальных сетях.


    источники:

    http://urok.1sept.ru/articles/674326

    http://lumpics.ru/how-solve-system-equations-excel/