Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...
Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
Топ:
Определение места расположения распределительного центра: Фирма реализует продукцию на рынках сбыта и имеет постоянных поставщиков в разных регионах. Увеличение объема продаж...
Когда производится ограждение поезда, остановившегося на перегоне: Во всех случаях немедленно должно быть ограждено место препятствия для движения поездов на смежном пути двухпутного...
Генеалогическое древо Султанов Османской империи: Османские правители, вначале, будучи еще бейлербеями Анатолии, женились на дочерях византийских императоров...
Интересное:
Средства для ингаляционного наркоза: Наркоз наступает в результате вдыхания (ингаляции) средств, которое осуществляют или с помощью маски...
Национальное богатство страны и его составляющие: для оценки элементов национального богатства используются...
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Dim c1 As Double, c2 As Double, Fa As Double, Fb As Double, Fc As Double
Fa = nel_ur_1(a)
Fb = nel_ur_1(b)
If Fa * Fb > 0 Then
MsgBox ("Интервал [a, b] выбран неправильно")
Exit Function
End If
Do
c2 = c1
c1 = a - (b - a) / (Fb - Fa) * Fa
Fc = nel_ur_1(c)
If Fc * Fa > 0 Then b = c1: Fb = Fc Else a = c1: Fa = Fc
Loop Until Abs(c1 - c2) > delta
Horda = Format(c1, "0.0000000000")
End Function
Затем, например, в ячейке K 35 с помощью мастера функций fx вызвать этот модуль.
В появившемся окне Аргументы функции подставить значения ячеек E 8, F 8 и G 5, как показано на рис. 2.3.1 и, нажав кнопку OK, получить результат
-1.71 3 80 47138.

Рис. 2.3.1
Как и при реализации метода дихотомии в разделе 2.2 и метода Ньютона в разделе 2.3 недостатком использования функции VBA является то, что функция возвращает только один параметр и определить количество итераций в данном случае невозможно.
К достоинствам использования функции VBA также относится то, что можно изменять значение точности вычислений без построения достаточно объёмной таблицы.
Решение второго нелинейного уравнения
Для решения второго по заданию нелинейного уравнения, например, вида 3 sin (x /2) = 2 x 2 - 4, необходимо выполнить следующие действия:
– выделить на листе Excel диапазон ячеек, в которых решалось первое уравнение, то есть в данной адресации A 1: T 38;
– скопировать выделенный фрагмент, например, со строки 42, как показано на рис. 2.4.1;

Рис. 2.4.1
– создать модули VBA для нового уравнения, в данном случае, 3 sin (x /2) = 2 x 2 – 4:
Function nel_ur_2(x)
nel_ur_2 = 3 * Sin(x / 2) - 2 * x ^ 2 + 4
End Function
Function nel_ur_2D(x)
nel_ur_2D = 3 * Cos(x / 2) + 1 / 2 - 2 * x
End Function
Function Pol_del2(a As Double, b As Double, e As Double)
Dim c As Double
10 c = (a + b) / 2
If nel_ur_2(a) * nel_ur_2(c) < 0 Then b = c Else a = c
If Abs(a - b) <= e Then Pol_del2 = Format(c, "0.0000000000") Else GoTo 10
End Function
Function Newton2(a As Double, e As Double)
x = a
x1 = x - nel_ur_2(x) / nel_ur_2D(x)
While Abs(x - x1) > e
x = x1
x1 = x - nel_ur_2(x) / nel_ur_2D(x)
Wend
Newton2 = Format(x1, "0.0000000000")
End Function
Public Function Horda2(a As Double, b As Double, delta As Double)
Dim c1 As Double, c2 As Double, Fa As Double, Fb As Double, Fc As Double
Fa = nel_ur_2(a)
Fb = nel_ur_2(b)
If Fa * Fb > 0 Then
MsgBox ("Интервал [ a, b ] выбран неправильно")
Exit Function
End If
Do
c2 = c1
c1 = a - (b - a) / (Fb - Fa) * Fa
Fc = nel_ur_2(c)
If Fc * Fa > 0 Then b = c1: Fb = Fc Else a = c1: Fa = Fc
Loop Until Abs(c1 - c2) > delta
Horda2 = Format(c1, "0.0000000000")
End Function
– заменить в диапазоне ячеек B 46: B 66 функцию = nel _ ur _1 на функцию = nel _ ur _2, рис. 2.4.1;
– подобрав значения ячеек A 46 и D 43, выполнить этап отделения корней для второго уравнения, то есть для функции nel _ ur _2, в данном случае ячейками, в которых функция nel _ ur _2 меняет знак, являются ячейки A 54 и A 55;
– скопировать значение ячейки A 54 в ячейку E 49, то есть записать E 49= A 54;
– скопировать значение ячейки A 55 в ячейку F 49, то есть записать F 49= A 55;
– заменить в диапазоне ячеек H 49: J 64 функцию = nel _ ur _1 на функцию = nel _ ur _2, рис. 2.4.1;
– в ячейке K 63 в данной адресации появится сообщение корень = -1.1000030518 за 15 шагов (для решаемого варианта задания).
Таким образом, нелинейное уравнение 3 sin (x /2) = 2 x 2 – 4 в среде Excel решено методом дихотомии и корень уравнения равен -1.1000030518.
При этом заданная точность решения e = 0.00001 достигнута за 15 итераций.
Для решения заданного уравнения в среде VBA необходимо, например в ячейке K 67, с помощью мастера функций fx вызвать модуль Pol_del2.
В появившемся окне Аргументы функции подставить значения ячеек E 49, F 49 и G 46, как показано на рис. 2.4.2 и, нажав кнопку OK, получить результат -1.1021057129.

Рис. 2.4.2
Для решения второго по заданию нелинейного уравнения, вида 3 sin (x /2) = 2 x 2 - 4, методом Ньютона необходимо выполнить следующие действия:
– скопировать значение ячейки A 54 в ячейку E 72, то есть записать E 72= A 54;
– заменить в диапазоне ячеек F 72: F 79 функцию = nel _ ur _1 на функцию = nel _ ur _2, рис. 2.4.1;
– заменить в диапазоне ячеек G 72: G 79 функцию = nel _ ur _1 D на функцию = nel _ ur _2 D, рис. 2.4.1;
– в ячейке H 77 в данной адресации появится сообщение корень = -1.1021004844 за 5 шагов (для решаемого варианта задания).
Таким образом, нелинейное уравнение 3 sin (x /2) = 2 x 2 – 4 в среде Excel решено методом Ньютона и корень уравнения равен -1.1021004844.
При этом заданная точность решения e = 0.00001 достигнута за 15 итераций.
Для решения заданного уравнения в среде VBA необходимо, например, в ячейке J 76, с помощью мастера функций fx вызвать модуль Newton2.
В появившемся окне Аргументы функции подставить значения ячеек E 49, F 49 и G 46, как показано на рис. 2.4.3 и, нажав кнопку OK, получить результат -1.1021004844.

Рис. 2.4.3
Для решения заданного уравнения в среде VBA методом Хорд необходимо, например, в ячейке K 76, с помощью мастера функций fx вызвать модуль Horda2.
В появившемся окне Аргументы функции подставить значения ячеек E 49, F 49 и G 46, как показано на рис. 2.4.4 и, нажав кнопку OK, получить результат -1.1020377217.

Рис. 2.4.4
Как и при реализации метода дихотомии и метода Ньютона недостатком использования функции VBA является то, что функция возвращает только один параметр и определить количество итераций в данном случае невозможно.
К достоинствам использования функции VBA относится то, что можно изменять значение точности вычислений без построения достаточно объёмной таблицы.
|
|
|
Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...
Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!