Метод последовательного приближения в Excel

Обновлено: 21.11.2024

Модель последовательного приближения (SAM) — это упрощенная версия модели ADDIE, разработанная специально для получения обратной связи и построения рабочих моделей на более ранних этапах процесса. Эта модель, разработанная доктором Майклом Алленом из Allen Interactions, использует рекурсивный, а не линейный процесс разработки курса. Простейшая модель SAM состоит из трех частей: подготовки, итеративного проектирования и итеративной разработки. Ключевое слово здесь "итеративный", которое является основой этой модели и сигнализирует о том, что каждый шаг предназначен для повторения и пересмотра.

Этап подготовки начинается со сбора всей необходимой информации и контекста для проекта; содержание и объем этого этапа будут сильно различаться в зависимости от проекта или курса. Отличительной чертой завершения первой фазы этой модели является «Сообразительное начало», которое поощряет мозговой штурм, наброски и прототипирование и вовлекает как можно больше заинтересованных сторон по мере разработки материала: коллег, консультантов и, если вы вам повезло, что они у вас есть в качестве ресурса, студенты.

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

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

Модель

  1. Этап подготовки: сбор информации и предыстория
  2. Этап итеративного проектирования: проектирование, создание прототипа и проверка
  3. Этап итеративной разработки: разработка, внедрение и оценка

Использование SAM для создания или пересмотра задания или проекта

Многие из вас могут преподавать один и тот же курс семестр за семестром, поэтому вы, вероятно, уже используете ту или иную форму SAM. Вероятно, вы заметили, что что-то в задании или проекте работает не так, как вы предполагали, поэтому вы вносите изменения в эту часть до начала следующего семестра.

Ваш процесс может выглядеть примерно так:

Шаг первый: сбор материалов

Шаг 2. Встретьтесь со своей командой (коллегами, студентами и т. д.)

Шаг третий: создайте прототип задания

Шаг четвертый. Запросите отзыв

Шаг пятый. Внесите изменения

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

Ресурсы

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

Условия задачи предполагают, что x настолько мал, что его можно игнорировать.

<р>1. Соответственно, мы можем аппроксимировать

\[ 1 + x \приблизительно 1 \приблизительно 1 – 2x \]

из которого мы получаем приблизительный результат (называемый первым приближением), x1:

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

теперь мы можем заменить x1 = 0,0200 в правой части, получив второе приближение:

Если мы повторим этот процесс, получится третье приближение:

\[ x_ \приблизительно 0,0182 \]

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

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

поэтому было рассчитано третье приближение. Это третье приближение было почти идентично второму и поэтому было принято за окончательный результат.

Соавторы

Эд Витц (Куцтаунский университет), Джон В.Мур (UW – Мэдисон), Джастин Шорб (Hope College), Ксавьер Прат-Ресина (Университет Миннесоты в Рочестере), Тим Вендорф и Адам Хан.

Вклады и атрибуции

Эта страница находится под лицензией CC BY-NC-SA. Ее авторами, ремиксами и/или кураторами выступили Эд Витц, Джон У. Мур, Джастин Шорб, Ксавье Прат-Ресина, Тим Вендорф и Адам Хан. Подробная история версий изменений исходного контента доступна по запросу.

Иногда математическое выражение, используемое при решении задачи равновесия, можно решить, взяв квадратный корень из обеих частей уравнения. Это можно сделать, если переменные в числителе и в знаменателе выражения равновесия умножить сами на себя (возвести в квадрат).

Если вы можете извлечь квадратный корень из обеих частей, вы потратите меньше времени на решение уравнения!

Наверх Использование квадратного уравнения

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

Например:

  • Переставить в форму: ax 2 + bx + c = 0.
  • Подставьте коэффициенты в квадратное уравнение и найдите x.

Решение уравнений, содержащих x 3 , x 4 и т. д.

Иногда у вас будут возникать проблемы с выражениями равновесия с переменной "x", возведенной в степень "n".

x n = число

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

108 х 5 = 2,4 х 10 -18

х 5 = 2,2 х 10 -20

    Возьмите журнал обеих частей уравнения.

log x 5 = log (2,2 x 10 -20 )

журнал x 5 = -19,66

х = 10-3,93 = 1,2 х 10-4

    На большинстве калькуляторов есть кнопка с надписью:

Часто эта кнопка используется вместе с кнопкой "y x ". Возможно, вам придется нажать «2ND» или «INV» перед кнопкой, чтобы найти n-й корень. Точную процедуру см. в руководстве, прилагаемом к калькулятору.

Метод последовательных приближений

  • примите приблизительное значение переменной, которое упростит уравнение
  • найти переменную
  • используйте ответ как второе приблизительное значение и снова решите уравнение
  • повторяйте этот процесс, пока не будет получено постоянное значение переменной

    Приблизительное значение переменной, которое упростит уравнение.

Поскольку 8,4 x 10 -4 — небольшое число, значение x должно быть небольшим. Предположим, что:

0,200 - х ~ 0,200

0,200 - х = 0,200 - 0,013 = 0,187

Вверх Предполагая, что изменение незначительное

  • Рассчитайте Q, коэффициент реакции, и сравните с K.
  • Создайте диаграмму ICE.
  • Подставьте концентрации в выражение равновесия. Предположим, что [A] - x = [A], упростите уравнение и найдите замену.
  • Проверьте, не составляет ли изменение менее 5 % от начального количества или в пределах, установленных вашим преподавателем.
  • Рассчитайте равновесные суммы, если вас об этом попросят.
  • Проверьте свою работу.

Пример. Определите концентрацию каждого вида, присутствующего в 0,500 М растворе слабокислой ГК. ГК реагирует с водой по уравнению:

HA(водн.) + H2O(водн.) H3O + (водн.) + A - (водн.) Ka = 4,6 х 10 -8

В этом примере изначально нет продуктов, поэтому Q = 0. K > Q, поэтому реакция будет идти в прямом направлении. Однако K и Q представляют собой

HA(водн.) H3O + (водн.)< /td> A - (водн.)
Исходная конц. (M) 0,500 0 0
Изменение конц. (M) - x + x + x
Equilibirum Conc. (М) 0,500 - x x x

(0,00015/0,500) x 100 = 0,03%

Изменение составляет всего 0,03% от начального значения и незначительно.

[H3O + ] = [A - ] = x = 1,5 x 10 -4 M

[HA] = 0,500–1,5 x 10 -4 = 0,500 М

K и Q лежат на противоположных сторонах одной (K>>Q или K

    Когда K>>Q и K > 1, предполагают 100% конверсию в продукты с последующей обратной реакцией для установления равновесия. Когда К

    Первоначально [HI] = 0, поэтому K >> Q и K > 1. Изменение концентрации каждого вида будет большим, поэтому мы рассчитываем количество образовавшегося продукта, предполагая 100% конверсию.

100% конверсия приведет к образованию 1,24 М HI (соотношение 1 к 1 к 2) без остатка реагента.

Изменение HI равно "2x" или 2(0,044) = 0,088 М

(0,088/1,24) x 100 = 7,1 %

Это больше 5%. Используя один из других методов решения (квадратичного, последовательных приближений или программируемого калькулятора), мы получаем:

Ниже приведена подпрограмма, в которой используется метод Ньютона для нахождения корня уравнения относительно x. Уравнение определено в публичной функции f, а его производная — в публичной функции fdash. Для использования:

<р>1. Создайте книгу Excel с уравнением/функцией в ячейке b3. (Опустите f(x) или y = и = 0).
2. Введите производную в ячейку b4.
3. Введите исходное предположение в ячейку b5.
4. Введите максимальное количество итераций для процедуры в ячейку b6.
5. Введите точность (т.е. разницу между последовательными приближениями в ячейке b7)
6. Нажмите Alt-F11, чтобы перейти к редактированию Visual Basic, и вставьте приведенный ниже код.
7. Создайте кнопку и назначьте ей подпрограмму Newton.

Примечание. Если ваше уравнение не является многочленом, вы должны ввести его и его производную в код для f и fdash.

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

Надеюсь, это поможет,

Public Function f(x As Double) As Double
'Уравнение для нахождения корня.
'Измените ячейку b3, если вы хотите использовать другой полином.
'Если уравнение не является полиномом, введите его в последней строке
'и удалите кавычки.

Тусклый эффект как строка

fx = CStr(Range("b3").Value)
'Debug.Print fx
f = Evaluate(Replace(fx, "x", x))
'f = x + Exp(x)
Конечная функция

Открытая функция fdash(x As Double) As Double
'Производная функции f.
'Введите это в ячейку b4, если производная является полиномом.
'В противном случае раскомментируйте последнюю строку и поместите в нее производную.
Тусклый fdashx как строка

fdashx = CStr(Range("b4").Value)
fdash = Evaluate(Replace(fdashx, "x", x))
'fdash = 1 + Exp(x)
Завершить функцию


Public Sub newton()
'Эта подпрограмма использует метод Ньютона для нахождения корня f(x)
Dim x_n As Double, x_nplus1 As Double, error_val As Double < br />Размять точность как двойное, угадать как двойное
Размерить как целое, макситер как целое
Размерить b7 как двойное, b5 как двойное, b6 как целое
Размерить производное как двойное
Dim deriv как двойное
>Const deriv_zero As Double = 0,001

b7 = Trim(CStr(Range("b7").Value))
b5 = Trim(CStr(Range("b5").Value))
b6 = Trim(CStr(Range ("b6").Значение))

Если нет (IsNumeric(b5) и IsNumeric(b6) и IsNumeric(b7)) тогда

MsgBox ("По крайней мере один параметр не является числом" & vbCrLf & _
"Исправьте это и повторите попытку")
Выход из подпрограммы

'Параметры чтения
precision = CDbl(b7)
guess = CDbl(b5)
maxiter = CInt(b6)

'Проверить недопустимые параметры

Если макситер 1 То

MsgBox ("Число итераций не является положительным целым числом" & vbCrLf & _
"Исправьте это и повторите попытку")
Выход из подпрограммы

'Установить начальные значения

x_n = предположение,
iter = 0
Range("g:h").Value = ""
Range("g1").Value = "Итерация"
Range("h1").Value = "Приблизительный корень"


'Цикл до ошибки аппроксимации в пределах точности
'или до тех пор, пока не произойдет максимальное количество итераций.

При ошибке Перейти к err_handler: 'поместите это до возникновения ошибки!

deriv = fdash(x_n)
Если deriv = 0 Then deriv = deriv + deriv_zero ' защита от деления на ноль ниже
При ошибке Перейти к err_handler:
x_nplus1 = x_n - f(x_n ) / производное

Читайте также: