From Wikipedia, the free encyclopedia
Truncation errors in numerical integration are of two kinds:
- local truncation errors – the error caused by one iteration, and
- global truncation errors – the cumulative error caused by many iterations.
Definitions[edit]
Suppose we have a continuous differential equation
and we wish to compute an approximation of the true solution
at discrete time steps
. For simplicity, assume the time steps are equally spaced:
Suppose we compute the sequence with a one-step method of the form
The function is called the increment function, and can be interpreted as an estimate of the slope
.
Local truncation error[edit]
The local truncation error is the error that our increment function,
, causes during a single iteration, assuming perfect knowledge of the true solution at the previous iteration.
More formally, the local truncation error, , at step
is computed from the difference between the left- and the right-hand side of the equation for the increment
:
[1][2]
The numerical method is consistent if the local truncation error is (this means that for every
there exists an
such that
for all
; see little-o notation). If the increment function
is continuous, then the method is consistent if, and only if,
.[3]
Furthermore, we say that the numerical method has order if for any sufficiently smooth solution of the initial value problem, the local truncation error is
(meaning that there exist constants
and
such that
for all
).[4]
Global truncation error[edit]
The global truncation error is the accumulation of the local truncation error over all of the iterations, assuming perfect knowledge of the true solution at the initial time step.[citation needed]
More formally, the global truncation error, , at time
is defined by:
[5]
The numerical method is convergent if global truncation error goes to zero as the step size goes to zero; in other words, the numerical solution converges to the exact solution: .[6]
Relationship between local and global truncation errors[edit]
Sometimes it is possible to calculate an upper bound on the global truncation error, if we already know the local truncation error. This requires our increment function be sufficiently well-behaved.
The global truncation error satisfies the recurrence relation:
This follows immediately from the definitions. Now assume that the increment function is Lipschitz continuous in the second argument, that is, there exists a constant such that for all
and
and
, we have:
Then the global error satisfies the bound
[7]
It follows from the above bound for the global error that if the function in the differential equation is continuous in the first argument and Lipschitz continuous in the second argument (the condition from the Picard–Lindelöf theorem), and the increment function
is continuous in all arguments and Lipschitz continuous in the second argument, then the global error tends to zero as the step size
approaches zero (in other words, the numerical method converges to the exact solution).[8]
Extension to linear multistep methods[edit]
Now consider a linear multistep method, given by the formula
Thus, the next value for the numerical solution is computed according to
The next iterate of a linear multistep method depends on the previous s iterates. Thus, in the definition for the local truncation error, it is now assumed that the previous s iterates all correspond to the exact solution:
[9]
Again, the method is consistent if and it has order p if
. The definition of the global truncation error is also unchanged.
The relation between local and global truncation errors is slightly different from in the simpler setting of one-step methods. For linear multistep methods, an additional concept called zero-stability is needed to explain the relation between local and global truncation errors. Linear multistep methods that satisfy the condition of zero-stability have the same relation between local and global errors as one-step methods. In other words, if a linear multistep method is zero-stable and consistent, then it converges. And if a linear multistep method is zero-stable and has local error , then its global error satisfies
.[10]
See also[edit]
- Order of accuracy
- Numerical integration
- Numerical ordinary differential equations
- Truncation error
Notes[edit]
- ^ Gupta, G. K.; Sacks-Davis, R.; Tischer, P. E. (March 1985). «A review of recent developments in solving ODEs». Computing Surveys. 17 (1): 5–47. CiteSeerX 10.1.1.85.783. doi:10.1145/4078.4079.
- ^ Süli & Mayers 2003, p. 317, calls
the truncation error.
- ^ Süli & Mayers 2003, pp. 321 & 322
- ^ Iserles 1996, p. 8; Süli & Mayers 2003, p. 323
- ^ Süli & Mayers 2003, p. 317
- ^ Iserles 1996, p. 5
- ^ Süli & Mayers 2003, p. 318
- ^ Süli & Mayers 2003, p. 322
- ^ Süli & Mayers 2003, p. 337, uses a different definition, dividing this by essentially by h
- ^ Süli & Mayers 2003, p. 340
References[edit]
- Iserles, Arieh (1996), A First Course in the Numerical Analysis of Differential Equations, Cambridge University Press, ISBN 978-0-521-55655-2.
- Süli, Endre; Mayers, David (2003), An Introduction to Numerical Analysis, Cambridge University Press, ISBN 0521007941.
External links[edit]
- Notes on truncation errors and Runge-Kutta methods[dead link]
- Truncation error of Euler’s method[dead link]
From Wikipedia, the free encyclopedia
Truncation errors in numerical integration are of two kinds:
- local truncation errors – the error caused by one iteration, and
- global truncation errors – the cumulative error caused by many iterations.
Definitions[edit]
Suppose we have a continuous differential equation
and we wish to compute an approximation of the true solution
at discrete time steps
. For simplicity, assume the time steps are equally spaced:
Suppose we compute the sequence with a one-step method of the form
The function is called the increment function, and can be interpreted as an estimate of the slope
.
Local truncation error[edit]
The local truncation error is the error that our increment function,
, causes during a single iteration, assuming perfect knowledge of the true solution at the previous iteration.
More formally, the local truncation error, , at step
is computed from the difference between the left- and the right-hand side of the equation for the increment
:
[1][2]
The numerical method is consistent if the local truncation error is (this means that for every
there exists an
such that
for all
; see little-o notation). If the increment function
is continuous, then the method is consistent if, and only if,
.[3]
Furthermore, we say that the numerical method has order if for any sufficiently smooth solution of the initial value problem, the local truncation error is
(meaning that there exist constants
and
such that
for all
).[4]
Global truncation error[edit]
The global truncation error is the accumulation of the local truncation error over all of the iterations, assuming perfect knowledge of the true solution at the initial time step.[citation needed]
More formally, the global truncation error, , at time
is defined by:
[5]
The numerical method is convergent if global truncation error goes to zero as the step size goes to zero; in other words, the numerical solution converges to the exact solution: .[6]
Relationship between local and global truncation errors[edit]
Sometimes it is possible to calculate an upper bound on the global truncation error, if we already know the local truncation error. This requires our increment function be sufficiently well-behaved.
The global truncation error satisfies the recurrence relation:
This follows immediately from the definitions. Now assume that the increment function is Lipschitz continuous in the second argument, that is, there exists a constant such that for all
and
and
, we have:
Then the global error satisfies the bound
[7]
It follows from the above bound for the global error that if the function in the differential equation is continuous in the first argument and Lipschitz continuous in the second argument (the condition from the Picard–Lindelöf theorem), and the increment function
is continuous in all arguments and Lipschitz continuous in the second argument, then the global error tends to zero as the step size
approaches zero (in other words, the numerical method converges to the exact solution).[8]
Extension to linear multistep methods[edit]
Now consider a linear multistep method, given by the formula
Thus, the next value for the numerical solution is computed according to
The next iterate of a linear multistep method depends on the previous s iterates. Thus, in the definition for the local truncation error, it is now assumed that the previous s iterates all correspond to the exact solution:
[9]
Again, the method is consistent if and it has order p if
. The definition of the global truncation error is also unchanged.
The relation between local and global truncation errors is slightly different from in the simpler setting of one-step methods. For linear multistep methods, an additional concept called zero-stability is needed to explain the relation between local and global truncation errors. Linear multistep methods that satisfy the condition of zero-stability have the same relation between local and global errors as one-step methods. In other words, if a linear multistep method is zero-stable and consistent, then it converges. And if a linear multistep method is zero-stable and has local error , then its global error satisfies
.[10]
See also[edit]
- Order of accuracy
- Numerical integration
- Numerical ordinary differential equations
- Truncation error
Notes[edit]
- ^ Gupta, G. K.; Sacks-Davis, R.; Tischer, P. E. (March 1985). «A review of recent developments in solving ODEs». Computing Surveys. 17 (1): 5–47. CiteSeerX 10.1.1.85.783. doi:10.1145/4078.4079.
- ^ Süli & Mayers 2003, p. 317, calls
the truncation error.
- ^ Süli & Mayers 2003, pp. 321 & 322
- ^ Iserles 1996, p. 8; Süli & Mayers 2003, p. 323
- ^ Süli & Mayers 2003, p. 317
- ^ Iserles 1996, p. 5
- ^ Süli & Mayers 2003, p. 318
- ^ Süli & Mayers 2003, p. 322
- ^ Süli & Mayers 2003, p. 337, uses a different definition, dividing this by essentially by h
- ^ Süli & Mayers 2003, p. 340
References[edit]
- Iserles, Arieh (1996), A First Course in the Numerical Analysis of Differential Equations, Cambridge University Press, ISBN 978-0-521-55655-2.
- Süli, Endre; Mayers, David (2003), An Introduction to Numerical Analysis, Cambridge University Press, ISBN 0521007941.
External links[edit]
- Notes on truncation errors and Runge-Kutta methods[dead link]
- Truncation error of Euler’s method[dead link]
Ошибка метода Эйлера
Представленный
метод аппроксимации решения задачи
Коши называется разностным. Решение
представляет собой совокупность
отдельных точек, называемых узловыми.
При
использовании разностных методов
существует два источника ошибок: ошибка
дискретизации, возникающая в результаты
замены дифференциального уравнения
разностной аппроксимацией (2.5), и ошибка
округления, накопившаяся при выполнении
арифметических операций. Будем считать,
что значения
вычисляются точно, так что погрешности
обусловлены только ошибкой дискретизации.
Введем величину, равную наибольшему
отклонению аппроксимации от точного
решения на отрезке
|
|
(3.1) |
называемую
глобальной
ошибкой дискретизации
(иногда эту величину называют глобальной
ошибкой усечения).
Отметим, что
зависит от величины шага
,
поскольку предполагается, что приближения
вычисляют при заданном значении
.
Интуитивно ожидаем, что при уменьшении
ошибка дискретизации будет убывать и,
в частности, при стремлении
к нулю, так же будет стремиться к нулю.
Теорема
(ошибка дискретизации метода Эйлера).
Если функция
имеет ограниченную частную производную
по второй переменной и если решение
задачи Коши имеет ограниченную вторую
производную, то глобальная ошибка
дискретизации метода Эйлера
.
Порядок
метода численного интегрирования
показывает, от какой степени шага зависит
величина ошибки.
Локальная
(или шаговая)
ошибка метода – это ошибка, совершаемая
на одном шаге. Очевидно, что от шага к
шагу, т. е. при многократном применении
формулы метода, возможно наложение
ошибок. За
шагов, т. е. в точке
,
образуется глобальная
ошибка.
Порядок
глобальной ошибки (относительно шага
)
на единицу ниже, чем порядок локальной
ошибки, а порядком глобальной ошибки и
определяется порядок соответствующего
численного процесса решения задачи
Коши.
Глобальная
ошибка метода Эйлера есть
,
т. е. данный метод имеет первый порядок.
Иными словами, размер шага и ошибка для
метода Эйлера связаны линейно. Практическим
следствием этого факта является ожидание
того, что при уменьшении
приближенное решение будет все более
точным и при стремлении
к нулю будет стремиться к точному решению
с линейной скоростью
;
т.е. ожидаем, что при уменьшении шага
вдвое ошибка уменьшится примерно в два
раза. Такое поведение ошибки демонстрируется
на следующем примере.
Поскольку
в методе Эйлера ошибка достаточно велика
и от шага к шагу накапливается, а точность
пропорциональна количеству вычислений,
то метод Эйлера обычно применяют для
грубых расчетов, для оценки поведения
системы в принципе. Для точных
количественных расчетов применяют
более точные методы.
Метод Хьюна
Следующий
подход представляет новую идею построения
алгоритмов решения задачи Коши. Пусть
|
на с начальным условием |
Для
получения решения в точке
,
можем воспользоваться теоремой о
вычислнии определенного интеграла:
|
|
где
первообразная от
является
искомой функцией
.
Если разрешить уравнение последнее
уравнение относительно
,
получим
|
|
Теперь
можно применить численные методы
нахождения интеграла. Воспользуемся
методом трапеций с шагом
,
получим:
|
|
Правая
часть формулы включает в себя еще не
найденное значение
.
Для его нахождения воспользуемся методом
Эйлера. Получим конечную формулу,
именуемую методом
Хьюна (синонимы:
метод
Хойна,
метод
Эйлера-Коши):
|
|
Продолжая
процесс, получим последовательность
точек, аппроксимирующих кривую решения
.
Метод Хьюна относится к классу методов
прогноза-коррекции. На каждом шаге метод
Эйлера используется для предсказания,
а метод трапеций для уточнения конечного
значения. Общие формулы для шага метода
Хьюна:
|
|
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
глобальная ошибка
- глобальная ошибка
-
Тематики
- сети вычислительные
Справочник технического переводчика. – Интент.
2009-2013.
Смотреть что такое «глобальная ошибка» в других словарях:
-
Звуковые сигналы BIOS — Информация в этой статье или некоторых её разделах устарела. Вы можете помочь проекту … Википедия
-
отказ — 3.14 отказ: Событие, заключающееся в нарушении работоспособного состояния машины, которое наступает, когда машина утрачивает одну или несколько своих основных функций. Примечание Отказ машины обычно происходит в том случае, когда один или… … Словарь-справочник терминов нормативно-технической документации
-
целостность — 2.15 целостность (integrity): Свойство сохранения правильности и полноты активов. Источник … Словарь-справочник терминов нормативно-технической документации
-
целостность ГНСС — 18 целостность ГНСС: Способность глобальной навигационной спутниковой системы за заданный интервал времени и с заданной вероятностью обеспечивать потребителей ГНСС сигналами тревоги о недостоверности навигационных сигналов ГНСС. Источник: ГОСТ Р… … Словарь-справочник терминов нормативно-технической документации
-
Погрешность — 10. Погрешность По title= РМГ 29 99 ГСИ. Метрология. Основные термины и определения Источник: ГОСТ 12.1.016 79: Система станд … Словарь-справочник терминов нормативно-технической документации
-
точность — 3.1.1 точность (accuracy): Степень близости результата измерений к принятому опорному значению. Примечание Термин «точность», когда он относится к серии результатов измерений, включает сочетание случайных составляющих и общей систематической… … Словарь-справочник терминов нормативно-технической документации
-
ГОСТ Р 54119-2010: Глобальные навигационные спутниковые системы. Судовая многосистемная, многоканальная аппаратура потребителей ГНСС ГЛОНАСС/GPS/ГАЛИЛЕО. Технические характеристики, методы и требуемые результаты испытаний — Терминология ГОСТ Р 54119 2010: Глобальные навигационные спутниковые системы. Судовая многосистемная, многоканальная аппаратура потребителей ГНСС ГЛОНАСС/GPS/ГАЛИЛЕО. Технические характеристики, методы и требуемые результаты испытаний оригинал… … Словарь-справочник терминов нормативно-технической документации
-
Новая хронология (Фоменко) — У этого термина существуют и другие значения, см. Новая хронология. «Новая хронология» (сокращённо НХ[1]) псевдонаучная[2][3][4][5] теория радикального пересмотра истории, созданная группой под руководством академика РАН математика… … Википедия
-
«Новая хронология» Фоменко — «Новая хронология» неакадемическая теория, утверждающая, что общепризнанная хронология исторических событий в целом неверна, и предлагающая свой вариант хронологии и вообще истории человечества. Согласно утверждениям её авторов, основана на… … Википедия
-
Критика естественно-научных методов в «Новой хронологии» Фоменко — «Новая хронология» неакадемическая теория, утверждающая, что общепризнанная хронология исторических событий в целом неверна, и предлагающая свой вариант хронологии и вообще истории человечества. Согласно утверждениям её авторов, основана на… … Википедия
Глобальная ошибка
Cтраница 1
Глобальная ошибка — разность между вычисленным и точным значением величины на каждом этапе реализации численного алгоритма, определяющая суммарную погрешность, накопившуюся с момента начала вычислений.
[1]
Однако глобальная ошибка с уменьшением шага становится меньше.
[2]
Рассмотрим теперь глобальную ошибку дискретизации в фиксированной конечной точке ttf. По мере повышения требований к точности длины шагов hn будут убывать, а общее их число N, необходимое для достижения t1t будет возрастать.
[3]
Далее, глобальная ошибка е может быть представлена как сумма N локальных ошибок с множителями, описывающими устойчивость уравнения.
[4]
Однако это представляется не просто глобальной ошибкой внутреннего ощущения времени, но более тонкой структурной перестройкой временной шкалы восприятия событий. Поскольку в случае стимуляции коры ( учитывая, что она в действительности воспринимается не позднее, чем через полсекунды после ее начала), такая задержка не наблюдается.
[5]
Важно различать между собой две меры ошибок дискретизации: локальную ошибку дискретизации и глобальную ошибку дискретизации. Локальная ошибка дискретизации — это ошибка, сделанная на данном шаге, при условии, что предыдущие значения точны и что нет ошибок округления.
[6]
Если традиционным для теории надежности ( и для обсуждавшихся выше моделей) является представление о том, что система выходит из строя при повреждении элементов, из которых она состоит, то Розен исходит из того, что элементы выходят из строя из-за глобальных ошибок в работе системы при сохранности своих собственных, присущих каждому элементу эксплуатационных качеств. Упреждающая и обратная связи функционально несовершенны, и даже в том случае, если степень их нестабильности не возрастает с течением времени, ее результат становится все более грозным.
[7]
В случае настоящего дифференциального уравнения, где f ( y, t) зависит от у, ошибка на любом интервале зависит от решений, вычисленных для предыдущих интервалов. Вследствие этого глобальная ошибка в общем случае будет больше суммы локальных ошибок, если дифференциальное уравнение неустойчиво, но меньше этой суммы, если дифференциальное уравнение устойчиво. Внимательное изучение рис. 6.4 и 6.5 должно прояснить эти утверждения.
[8]
Ее оценка может производиться на каждом шаге интегрирования, причем она может служить средством косвенного контроля глобальной ошибки дискретизации. Приведенные определения распространяются и на другие методы и задачи.
[9]
Как отмечалось выше, риск при проведении реинжиниринга довольно значителен. Однако необходимо подчеркнуть, что причины неудач заключены не в загадочности реинжиниринга, а в нарушении правил его поведения. Чампи указывают, что с точки зрения риска реинжиниринг подобен игре в шахматы, когда в меру своих знаний и умений играющие могут влиять на результат. Главное — избегать глобальных ошибок.
[10]
Как отмечалось выше, риск при проведении реинжиниринга довольно значителен. Однако необходимо подчеркнуть, что причины неудач заключены не в загадочности реинжиниринга, а в нарушении правил его поведения. Чампи указывают, что с точки зрения риска реинжиниринг подобен игре в шахматы, когда в меру своих знаний и умений играющие могут влиять на результат. Главное — избегать глобальных ошибок.
[11]
Нужно отметить, что при обсуждении численных методов для обыкновенных дифференциальных уравнений слово порядок может иметь несколько различных значений. Порядок дифференциального уравнения — это индекс наивысшей встречающейся в нем производной. Термин порядок системы уравнений иногда относится к числу уравнений системы. Например, y y z, z — у — z есть система второго порядка. Порядок численного метода для решения обыкновенного дифференциального уравнения — это как раз то, что мы здесь обсуждаем. Это степень длины шага, которая появляется в выражении для глобальной ошибки. Например, метод Эйлера имеет первый порядок.
[12]
Страницы:
1
Локальная и глобальная ошибки дискретизации при численном интегрировании дифференциальных уравнений
последовательностью точек x0,x1. в соответствующие моменты времени t0,t1. Значения точек должны удоволетворять приближенному равенству
Если специально не оговорено иное, то предполагается, что моменты времени выбираются через равные интервалы с величиной шага h>0, то есть
Аппроксимируем производную в момент времени tk соотношением
При такой аппроксимации уравнение (1) примет вид:
Формула (2) известна как прямой метод Эйлера.
На рис.1(a) показана графическая интерпретация прямого метода Эйлера. На (k+1)-ом шаге векторное поле предполагается (локально) постоянным со значением f(xk,tk).
Рис.1 Иллюстрация алгоритмов (а) прямого метода Эйлера, (b) обратного метода Эйлера
Меньшее значение величины шага h в итоге дает точки аппроксимации чаще и, как демонстрирует рис.2, приводит к большей точности интегрирования, что приобретает математический смысл, поскольку (2) стремится к (1) при h->0.
Рис.2 Влияние величины шага. Уравнение dx/dt=-6x+5t -t интегрируется от x=1 прямым методом Эйлера при h=0.3 (а) и при h=0.1 (b). Точное решение показано штриховой линией.
Обратный метод Эйлера подобен прямому, но есть одно отличие в аппроксимации для производной
Такая аппроксимация дает формулу обратного метода Эйлера:
На рис.1(b) показана геометрическая интерпретация обратного метода Эйлера. На (k+1)-ом шаге векторное поле предполагается (локально) постоянным со значением f(xk+1,tk+1).
Обратный метод Эйлера — это пример неявного алгоритма интегрирования , где xk+1 является функцией от самой себя. И напротив, прямой метод Эйлера представляет собой явный алгоритм. В неявных алгоритмах для определения xk+1 требуются дополнительные вычисления, но они по сравнению с аналогичными прямыми алгоритмами более устойчивы и дают более высокую точность вычислений (см. рис.3). Возможно это обусловлено наличием члена xk+1 в правой части формулы, что может рассматриваться как вид обратной связи.
Рис.3 Та же система, что и на рис.2 проинтегрирована от x0=1.0 с h=0.3 (a) прямым методом Эйлера, (b) обратным методом Эйлера. Точное решение показано штриховой линией.
Трапецеидальный алгоритм имеет вид:
Имеется целое семейство уравнений Рунге-Кутта второго порядка. Мы рассмотрим модифицированный алгоритм Эйлера-Коши, заданный соотношением:
Из этой формулы следует, что модифицированный алгоритм Эйлера-Коши включает два этапа. На первом этапе с помощью прямого метода Эйлера происходит перемещение на пол шага вперед к моменту времени (tk+h/2):
На втором этапе это промежуточное значение используется для аппроксимации векторного поля с помощью итераций Эйлера прямого типа:
Как и в случае алгоритма второго порядка метод Рунге-Кутта четвертого порядка относится к явным алгоритмам. Он использует промежуточные моменты времени для для вычисления состояния в момент времени tk+1. Следующие формулы определяют алгоритм Рунге-Кутта четвертого порядка:
Для определенных выше алгоритмов на каждом шаге требуется только одна начальная точка xk. Такие алгоритмы называются одношаговыми. Одношаговые алгоритмы высокого порядка имеют высокую точность, но они не эффективны, если велики затраты на вычисление f. Например, алгоритм Рунге-Кутта четвертого порядка требует на шаге четыре значения f. Кроме того, на текущем шаге не выполняются оценки функций с целью их использования на последующих шагах.
В отличие от одношаговых алгоритмов, многошаговые алгоритмы повторно используют предыдущую информацию о траектории. В m-шаговом алгоритме для определения xk+1 используют m предыдущих точек xk, xk-1. xk-m+1 и значения f в этих точках. Общая формула m-шагового алгоритма имеет вид
Локальная ошибка определяется как ошибка на шаге алгоритма:
Для m-шаговых алгоритмов предполагается, что предыдущие m точек xk-i при i=0. m-1 являются точно заданными, т.е.
Ошибка усечения — это локальная ошибка, которая получилась бы в результате выполнения алгоритма на компьютере с бесконечной точностью.
Другими словами, подразумевается, что эта локальная ошибка возникает помимо ошибки округления. Также важно помнить, что для m-шаговых алгоритмов предыдущие m точек xk. xk-m+1 предполагаются точно заданными.
Ошибка усечения берет свое название от алгоритмов, основанных на рядах Тейлора (например, Рунге-Кутта). Эти алгоритмы были бы точными, если бы использовались полные (бесконечные) ряды. Ошибка возникает при усечении ряда до конечного числа членов.
Ошибка усечения зависит только от алгоритма. Она не зависит от используемого компьютера и, следовательно, может быть проанализирована. Для алгоритмов Рунге-Кутта K-го порядка, при подходящих условиях, локальная ошибка усечения представляет собой
где «альфа» зависит от K, f и xk, но не зависит от h. Для многошагового алгоритма K-го порядка локальная ошибка усечения имеет вид
Глобальнае ошибка округления — это простое накопление локальных ошибок округления. Если локальная ошибка составляет «эпсилон», то ошибка округления на единичном интервале будет
Подобно ошибке округления, локальная ошибка усечения также накапливается с каждым шагом. Для одношаговых алгоритмов K-го порядка локальная ошибка усечения составляет
Если пренебречь зависимостью ak от xk, то на единичном интервале времени ошибка усечения будет:
Порядок метода интегрирования.
Дата добавления: 2015-06-12 ; просмотров: 3180 ; Нарушение авторских прав
Главный вопрос при использовании любого численного метода состоит в оценке точности приближенных вычислений 
· ошибка дискретизации, возникающая в результате замены дифференциального уравнения (3.1) разностной аппроксимацией (3.2);
· ошибка округления, накопившаяся при выполнении арифметических операций.
При этом доминирующей является, как правило, ошибка дискретизации.
Будем считать, что все вычисления проводятся точно. Интуитивно ясно, что при 

Введем величину 














Очевидно, что повышение порядка метода позволяет повысить точность интегрирования при той же величине шага интегрирования 
Рассмотрим, например, явный одношаговый метод Хьюна (или метод Рунге – Кутты второго порядка). Он определяется формулой
Сравнивая его с методом Эйлера легко заметить, что значение 


Наиболее знаменитым из методов Рунге – Кутты, а возможно и из всех методов численного интегрирования, является классический метод четвертого порядка, задаваемый формулой
где



Суть метода в том, что вектор-функция правых частей системы ОДУ определяется не только в узлах сетки, но и в промежуточных точках интервала 


Как видно, повышение порядка метода связано с повышением затрат на вычисление значений функции 
Для многошаговых методов порядок напрямую связан с объемом информации, используемой на каждом шаге. В частности, двух и трехшаговые методы Адамса – Бишфорта, задаваемые формулами (3.10) и (3.11) имеют второй и третий порядок, соответственно.
3.2.6. Процедуры численного моделирования
с автоматическим выбором шага
Данный раздел касается не выбора того или иного метода интегрирования, а реализации самой процедуры интегрирования на ЭВМ.
Выше уже отмечалось, что выбор шага интегрирования связан с динамическими свойствами моделируемого объекта. Для явных методов он должен быть меньше минимальной постоянной времени объекта, с тем, чтобы обеспечить устойчивость и позволить моделировать самые высокочастотные составляющие процесса. Неявные методы позволяют использовать больший шаг, но общий характер зависимости остается тем же самым. В то же время, на интервале моделирования характер моделируемых процессов может меняться. Например, в большинстве реальных систем высокочастотные составляющие переходного процесса затухают быстрее, чем низкочастотные, и процесс со временем приобретает более плавный характер. Это наводит на мысль организовать процедуру моделирования таким образом, чтобы шаг интегрирования менялся в процессе работы алгоритма. Там, где решение меняется плавно, можно вести интегрирование с относительно большим шагом. В областях же, где решение изменяется резко, необходимо считать с маленьким шагом. Проблема заключается в том, как определить величину шага, с которым следует начать следующий шаг интегрирования.
На выбор шага, как обычно влияют два фактора – точность и устойчивость. Шаг целесообразно поддерживать таким, чтобы погрешность интегрирования не превышала допустимого значения и величина шага при этом была максимально возможной.
Обычный подход состоит в оценке локальной ошибки дискретизации и, в зависимости от ее величины, уменьшении или увеличении текущего значения шага.
Два простых способа состоят либо в прохождении последнего шага интегрирования с половинным шагом и сравнении двух полученных результатов, либо в использовании двух методов интегрирования, имеющих разный порядок. Оба эти способа требуют дополнительных вычислений значений 
Первый способ реализует правило Рунге [29, 23], при котором ошибка дискретизации определяется по формуле

где 







Для метода Эйлера формула Рунге дает

для метода Рунге – Кутты 4-го порядка

Величина погрешности аппроксимации на каждом шаге 


При автоматическом выборе шага наиболее популярным является алгоритм «трех зон» [29]:
где 

где 
3.2.7. Особенности численного интегрирования
технических систем
Обширный набор методов численного интегрирования, которым обладают современные пакеты моделирования, позволяет эффективно решать самые различные задачи исследования технических систем, но при этом возникает проблема выбора наиболее подходящего метода
и правильного задания его параметров. Очень часто пользователь задает только интервал интегрирования и не обращает внимания на другие опции решателя. При решении простых задач с умеренной точностью такой подход вполне допустим, однако при решении сложных задач неудачный выбор метода либо неправильное задание его параметров может привести к неоправданно большим затратам машинного времени либо, вообще, к невозможности получить правильное решение.
Таким образом, для профессиональной работы с любым моделирующим программным обеспечением пользователь должен обладать некоторыми знаниями о реализованных в нем численных методах
и применимости их к требуемому кругу задач.
Практика показала, что наличие в технических системах объектов различной физической природы приводит к тому, что процессы в них характеризуются разнотемповостью, т.е. наличием быстрых и медленных составляющих движения. Кроме того, возможно одновременное присутствие как монотонных, так и медленно затухающих гармонических составляющих. Свойство системы содержать в своем переходном процессе существенно различные по своим спектральным характеристикам составляющие принято называть жесткостью[27].
Примером жесткой системы может служить робототехническая система, в которой быстрые составляющие связаны с включением тормозных устройств и демпферов, взятием или освобождением груза.
Жесткость часто является следствием избыточности модели, связанной с введением в нее малозначащих составляющих. Однако на этапе предварительных исследований такой избыточности трудно избежать. С другой стороны, часто жесткость имеет принципиальный характер и неучет быстрых движений может привести к неадекватности модели.
Жесткие системы требуют особого подхода к процедуре численного интегрирования, так как наличие быстрых и медленных составляющих в спектре движений предъявляет совершенно разные требования к методам интегрирования. Необходимо уметь оценивать характеристики жесткости и использовать эти оценки для выбора или настройки процедуры интегрирования.
Пусть исследуемая система 

Матрица 


Составляющие движения (обычно называемые модами), связанные с собственными значениями 
Исходя из распределения собственных значений матрицы Якоби на комплексной плоскости, можно назвать жесткой системой ОДУ такую систему, у которой матрица Якоби имеет различающиеся на несколько порядков максимальное и минимальное по модулю собственные значения.
Оценкой жесткости системы ОДУ обычно считается число обусловленности матрицы Якоби

где 

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

К жестким относят системы ОДУ, у которых 
Для нелинейной системы матрицу Якоби можно определить после ее линеаризации в рабочей точке, как это описано в разд. 3.2.2.
Элементами матрицы Якоби являются частные производные от
нелинейной вектор функции 

При умеренных значениях числа обусловленности 

При моделировании такой системы в начальный момент времени инициируются все, или большинство мод, как быстрых так и медленных. Однако через некоторое время быстрые моды затухают и решение сходится к медленному движению.
Исследователя могут интересовать и быстрые и медленные составляющие движения. В этом случае, целесообразно использование явных методов в сочетании с эффективной процедурой изменения величины шага интегрирования в зависимости от состояния моделируемой системы. Это позволит достаточно точно смоделировать быстрые движения и избежать чрезмерных затрат машинного времени, так как явные методы требуют минимальных временных затрат на каждый шаг интегрирования.
Если исследователя мало интересуют быстро затухающие движения, но отбросить их на этапе формирования модели у него нет достаточных оснований, предпочтительными являются неявные методы, которые в сумме способны дать меньшее время интегрирования при удовлетворительном качестве. Такие методы подавляют все составляющие решения, соответствующие большим по модулю собственным значениям (если только шаг не выбран очень малым).
Изложенные рекомендации по выбору методов интегрирования жестких систем предполагают, что исследователь хорошо знаком с особенностями объекта. Например, если речь идет о проектировании или оптимизации системы управления некоторого хорошо изученного объекта, то выбор метода интегрирования может быть проведен путем сравнения нескольких вариантов. Если же объект недостаточно исследован, то эффективными могут оказаться процедуры, обладающие элементами адаптации к особенностям объекта.
Некоторые современные моделирующие программные комплексы содержат наборы методов, расчетные формулы которых настраиваются на решаемую задачу, используя для этого оценки некоторых параметров, обычно, собственных значений якобиана. Особенно перспективными считаются явные адаптивные методы, не требующие при своей реализации вычисления матрицы Якоби и решения алгебраических уравнений [27]. Такие методы есть, в частности, среди решателей ОДУ программного комплекса «МВТУ».
3.3. Моделирование гибридных (событийно-управляемых)
технических систем
Технические системы, по определению, относятся к сложным техническим системам. Одной из особенностей этих систем является то, что поведение многих из них определяется событиями, происходящими как внутри этих систем, так и в окружающей среде. Соответственно, они обладают как непрерывной, так и дискретной динамикой, находящимися в сложном взаимодействии. Подобные системы часто называют гибридными системами [20, 21]. В отечественной литературе также используются синонимы – непрерывно-дискретные, системы с переменной структурой, реактивные, событийно-управляемые.
Примерами гибридных технических систем могут служить системы управления, используемые в промышленности (автоматизированные технологические процессы), в быту (сложные бытовые приборы), в военной области (высокотехнологичные виды вооружений), в сфере космонавтики, транспорта и связи.
Гибридное поведение может быть связано со следующими факторами:
· совместное функционирование непрерывных и дискретных объектов. Подобное поведение является типовым для непрерывных объектов (механических, гидравлических и т.д.) управляемых цифровыми регуляторами, например, для ИСЗ. Управление может формироваться как в фиксированные моменты времени, так и асинхронно, в зависимости от изменения фазовых координат объекта;
· гибридное поведение, связанное с особенностями физических процессов в непрерывных объектах. Например, учет в моделях механических систем таких эффектов как сухое трение или люфт может быть реализован в виде некоторых логических условий, меняющих модель системы;
· гибридное поведение, обусловленное изменением состава системы.
Все перечисленные факторы являются типичными для технических систем.
Учет дискретной динамики приводит к тому, что фазовое пространство гибридных систем разбивается на области с различным поведением, при этом фазовая траектория в зависимости от происходящих событий оказывается то в одной области фазового пространства, то в другой. Достижение фазовой траекторией границы областей является событием, приводящим к смене поведения.
События могут быть как внутренними, так и внешними. Например, при моделировании робота-манипулятора внутренние события могут быть связаны с типовыми нелинейностями механической части, а внешние – являться следствием взаимодействия со средой.
Очевидной и удобной моделью систем, управляемых событиями, является конечно-автоматная модель. Например, можно использовать конечный автомат, чтобы описать автоматическую передачу автомобиля. Передача имеет ряд состояний: парковка, нейтраль, движение, реверс и т.д. Система переходит из одного состояния в другое, когда водитель перемещает рычаг из одной позиции в другую, например, из позиции парковка в нейтральное положение.
При всей ее простоте и наглядности конечно-автоматная модель достаточно строга и формальна. Однако классическое графическое представление конечных автоматов обладает рядом недостатков. Главным недостатком является отсутствие понятия времени, что предполагает статичность состояний. Другие недостатки – отсутствие иерархии состояний, обобщения переходов, средств выражения прерываний
и продолжения нормальной работы после их обработки [11].
Для полноценного компьютерного моделирования физики процессов необходимо обеспечить сопряжение непрерывной составляющей поведения системы и логики работы управляющих ей устройств (дискретная компонента). Математический аппарат описания в данном случае – это система уравнений, но не дифференциальных, а дифференциально-алгебраическо-логических, для которых отсутствует стройная теория и единый подход.
В настоящее время для моделирования систем, управляемых событиями, широко используется предложенный Д. Харелом [7] визуальный формализм – Statechart (карты состояний и переходов). Карты состояния были разработаны применительно к моделированию дискретных систем, однако они могут служить хорошей основой и для моделирования гибридных систем, т.е. с их помощью можно описать поведение системы как в дискретном, так и в непрерывном времени [8]. Основные
неграфические компоненты таких диаграмм – это событие и действие, основные графические компоненты – состояние и переход.
Событие – нечто, происходящее вне рассматриваемой системы, возможно требующее некоторых ответных действий. События могут быть вызваны поступлением некоторых данных или некоторых задающих сигналов со стороны человека или некоторой другой части системы. События считаются мгновенными.
Действия –это реакции моделируемой системы на события. Подобно событиям, действия принято считать мгновенными.
Состояние –условия, в которых моделируемая система пребывает некоторое время, в течение которого она ведет себя одинаковым образом. В диаграмме переходов состояния представлены прямоугольными полями со скругленными углами.
Переход – изменение состояния, обычно вызываемое некоторым событием. Как правило, состояние соответствует промежутку времени между двумя такими событиями. Переходы показываются в диаграммах переходов линиями со стрелками, указывающими направление перехода. Каждому переходу могут быть сопоставлены условия, при выполнении которых переход осуществляется.
С каждым переходом и каждым состоянием могут быть соотнесены некоторые действия. Действия могут дополнительно обозначаться как действия, выполняемые однократно при входе в состояние; действия, выполняемые многократно внутри некоторого состояния; действия, выполняемые однократно при выходе из состояния.
В [25] качестве примера простой дискретной системы (частного случая гибридной системы) рассмотрена диаграмма (карта) состояний и переходов цифровых часов, представленная на рис. 3.4.
Рис. 3.4. Диаграмма состояний и переходов цифровых часов
На часах имеется две кнопки: Кнопка Режима и Кнопка Увеличения. Нажатие любой из них генерирует событие, которое может вызывать переход из одного состояния в другое. Имеются три состояния: Дисплей, Установка Часов и Установка Минут. Состояние Дисплей – начальное состояние (что обозначается стрелкой, направленной от блока перехода по умолчанию в виде черного круга). Нажатие кнопки Режимы в состоянии Дисплей вызывает появление события Режимы и переход в состояние Установка часов. В состоянии Установка Часов, событие Режимы вызывает переход к состоянию Установка Минут, тогда как событие Увеличение увеличивает текущее время (число часов), которое отображается на экране, причем это происходит без изменения состояния. Каждому состоянию часов соответствует действие, записанное ниже горизонтальной линии. Оно начинает выполняться после того, как переход в это состояние произошел.
В [21] в качестве примера рассмотрена модель, которая описывает поведение маятника в виде шарика на нити, у которого в некоторый момент времени (событие «Обрыв») рвется нить. У этой модели два состояния – «Колебания» и «Полет». Оба описываются системами дифференциальных уравнений, каждая из которых является динамической системой. Карта поведений представляет собой совокупность состояний и переходов. В любой момент времени только одно состояние является текущим.
На рис. 3.5, а показана карта состояний обрывающегося маятника, на которой кроме двух обычных состояний помещены два особых состояния – начальное и конечное.
Рис. 3.5. Карта состояний и карта поведений обрывающегося маятника
В общем случае для состояния могут быть определены входные воздействия, выходные воздействия, а также локальная деятельность. Последовательность входных воздействий выполняется при каждом входе в состояние, последовательность выходных действий – при каждом выходе. Локальные действия выполняются все время, пока состояние является текущим.
Рис. 3.5, а отражает качественное поведение маятника. Для получения количественной картины необходимо связать с каждым состоянием локальное действие, в частности, интегрирование систем уравнений «Модель колебаний» и «Модель полета», как это сделано на рис. 3.5, b. Карта состояний, дополненная моделями состояний, названа в [20] картой поведения гибридной системы.
Одна из доступных реализаций концепции гибридного моделирования реализована в пакете StateFlow среды MATLAB, который кратко описан в главе 5. Также следует выделить отечественный пакет Model Vision Studium, ориентированный на моделирование сложных поведений [19].
Глава 4
Автоматизированное моделирование
технических объектов
Исторический экскурс. Необходимость автоматизации процессов моделирования технических объектов возникла практически одновременно с появлением вычислительных машин. Однако, исторически, разные этапы моделирования автоматизировались в разное время. Первым этапом следует считать создание библиотек численных методов исследования систем. Сами численные методы были разработаны задолго до появления ЭВМ и предназначались, прежде всего, для решения задач небесной механики. Так как первоначально расчеты велись вручную, алгоритмы методов были хорошо отлажены и оптимизированы. К концу 70-х годов прошлого столетия были созданы специализированные коллекции численных методов практически для всех областей численного анализа.
Дальнейшие шаги на пути автоматизации моделирования были связаны с разработкой систем автоматизированного проектирования (САПР) и систем автоматизации вычислительного эксперимента – пакетов прикладных программ. Автоматизации подлежали стандартные расчеты и оформление результатов экспериментов. Как правило, эти системы создавались под определенную предметную область, прежде всего, в наукоемких отраслях (космическая, авиация и т.д.). Для создания большинства пакетов прикладных программ для численных расчетов использовался язык Фортран, хорошо приспособленный именно для этих целей. Подобные пакеты создавались годами, их модификация и развитие требовали специальных знаний в предметной области, численных методах и программировании.
Наиболее трудно автоматизируемым этапом явился процесс построения модели. Ручная подготовка модели сложного технического объекта связана с большим объемом преобразований, в которых легко допустить ошибку. Использование систем автоматизации моделирования (САМ) позволило существенно повысить производительность труда, снизить число ошибок и, во многих случаях, исключить необходимость привлечение программистов к решению конкретных предметных задач. Опираясь на САМ, специалист в предметной (прикладной) области может самостоятельно создавать достаточно сложные модели.
При использовании системы автоматизированного моделирования исследователь формулирует математическую модель исследуемой системы на формальном входном языке моделирования. На ранних этапах развития САМ, когда отсутствовали возможности прямого изображения структуры модели на экране монитора, использовались методы кодирования структурной информации [1, 6]. Программа модели представляла собой последовательность вызовов процедур, каждая из которых являлась моделью структурного компонента. После связывания с модулями исполняющей системы пакета моделирования список компонентов преобразовывался в независимую исполняемую программу.
В современных системах автоматизированного моделирования, исходя из соображений удобства восприятия человеком, используются, как правило, графические средства задания исходной информации о модели. Переход к изображению структуры системы на экране монитора позволил исключить этап ручного кодирования схемы, однако потребовал разработки нового принципа организации самого процесса численных расчетов – принципа Data Flow, или принципа потока данных.
Можно отметить следующие факторы, способствующие внедрению систем автоматизированного моделирования:
· трудоемкость получения математической модели сложных технических объектов, связанная с опасностью совершить ошибку в многочисленных преобразованиях модельных выражений;
· необходимость многовариантного моделирования, при котором необходимо иметь для одного объекта несколько моделей, отличающихся по сложности;
· желание иметь дружественный интерфейс с программой и возможность оперативно вносить изменения в модель, что проще всего на основе использования графических языков задания исходной информации.
4.1. Особенности современных систем
автоматизированного моделирования
Современные профессиональные САМ имеют следующие отличительные черты [31]:
· поддержка иерархического проектирования как сверху – вниз, так и снизу – вверх, за счет реализации многоуровневого моделирования и метода локальной детализации модели;
· компонентное моделирование на основе использования библиотек, содержащих большое число графических и функциональных описаний компонентов, причем эти библиотеки открыты для добавления в них новых описаний, которые может сделать сам пользователь;
· графический пользовательский интерфейс, сочетающий графические средства формирования визуального образа исследуемого технического устройства с автоматической генерацией модели всей схемы по ее структурному описанию;
· наличие интерактивной рабочей среды проектирования (управляющей оболочки, монитора), т.е. специальной программы, из которой можно запускать все или большинство других программ пакета, не обращаясь к услугам штатной операционной системы;
· наличие в современных САПР и САМ постпроцессоров моделирования, что позволяет не только просматривать в удобной для пользователя форме результаты моделирования, но и обрабатывать эти результаты;
· наличие встроенных средств численного моделирования рабочего процесса в режиме реального времени или в режиме масштабирования модельного времени;
· реализация механизмов продвижения модельного времени, основанных как на принципе 

· интегрируемость с другими пакетами аналогичного назначения, которая обеспечивается соответствующими программами – конверторами, позволяющими импортировать и экспортировать данные из одной системы в другую;
· наличие средств, обеспечивающие формирование виртуальных аналогов измерительно-управляющей аппаратуры.
Если САМ предназначена для решения исследовательских задач, то к перечисленным качествам добавляются возможности активного вычислительного эксперимента [21]. В частности:
· визуализация результатов во время эксперимента;
· возможность интерактивного вмешательства в ход моделирования;
· возможность использования 2D и 3D анимации.
4.2. Иерархическое проектирование
и многоуровневое моделирование технических систем
С точки зрения инженера, основное назначение моделирования – поддержка процедур проектирования технических объектов и систем. Процедуры проектирования работают с моделями объектов реального мира и должны быть подстроены под их свойства.
Сложные системы имеют, как правило, иерархическую структуру. Естественные возможности человека позволяют оперативно обрабатывать не более 
Такой подход, известный как иерархическое проектирование [21, 31], является типовым при разработке сложных технических объектов и заключается в разбиении исходной задачи на подзадачи.
В процессе проектирования сложной системы формируются определенные представления о системе, отражающие ее существенные свойства с той или иной степенью подробности. В этих представлениях можно выделить составные части – уровни проектирования. В один уровень, как правило, включаются представления, имеющие общую физическую основу и допускающие для своего описания использование одного и того же математического аппарата. Уровни проектирования можно выделять по степени подробности, с какой отражаются свойства проектируемого объекта. Тогда их называют горизонтальными (иерархическими) уровнями проектирования.
В результате такого подхода объект проектирования декомпозируется на фрагменты (подсхемы) и проектирование каждого из них ведется в определенном смысле самостоятельно. На каждом уровне иерархии этот принцип применяется вновь, что позволяет заменить решение одной сложной задачи многократным решением задач меньшей размерности.
При иерархическом проектировании разработчику достаточно держать в поле зрения лишь один фрагмент объекта. Остальные части лишь имитируют внешнюю среду, т.е. взаимодействие проектируемого фрагмента с другими частями объекта.
Использование принципа иерархического проектирования позволяет ограничить текущую сложность проекта на приемлемом уровне, за счет того, что в каждый момент времени разработчик имеет дело только с двумя смежными уровнями декомпозиции объекта – структурным описанием проектируемого в данный момент фрагмента и функциональным описанием внешней среды.
Инструментальной поддержкой иерархического проектирования является многоуровневое моделирование.При многоуровневом моделировании различные фрагменты представляются на различных уровнях иерархии, т.е. с разной степенью детальности. Например, проектируемая в настоящий момент времени часть объекта раскрыта до уровня элементарных динамических компонентов и имитируется структурной моделью, а остальные фрагменты представлены на соседнем более высоком уровне в виде функциональных моделей.
Завершив проектирование одного фрагмента, разработчик может свернуть его в функциональный блок и перейти к детальной модели следующего фрагмента, с которым он собирается работать. Эта процедура повторяется многократно, на разных уровнях иерархии проектируемого объекта. Достоинством такого подхода является то, что в поле зрения разработчика находится в каждый момент времени минимум
необходимой информации, не перегруженной лишними деталями. Описанный метод проектирования называется методом локальной детализации объекта.
Программной поддержкой многоуровневого моделирования, реализованной в большинстве языков графического программирования, является процедура инкапсуляции, которая позволяет «свернуть» любой смысловой фрагмент графического представления в единичный блок. Кроме того, что инкапсуляция служит основой получения иерархически структурированных моделей, она так же позволяет расширить библиотеку базовых блоков блоками пользователя, которые, впоследствии, можно многократно использовать (например, типовые динамические звенья).
Такой возможностью обладает, в частности, пакет LabVIEW, пакет Simulink и основанные на нем пакеты SimMechanics и SimPower. Пакеты IDEF-моделирования (ERWIN, BPWIN) принципиально основаны на многоуровневом изображении объектов.
4.4. Архитектура программ
автоматизированного моделирования
Существующие инструментальные средства автоматизированного моделирования могут относиться к разным предметным областям и существенно различаться по своим возможностям, но их модульные структуры мало отличаются друг от друга. На рис. 4.1 представлена типовая структура современного пакета визуального компонентного моделирования. Рассмотрим более детально назначение и особенности основных элементов этой структуры.
4.4.1. Графический интерфейс программ математического
моделирования динамических систем
Графический интерфейс является в настоящее время стандартным компонентом современной САМ. Он создает дружественный интерфейс между пользователем и программой, дает возможность оперировать с графическими образами вместо аналитических выражений. Это значительно облегчает работу в САМ и снижает вероятность ошибок при вводе информации о системе.
Рис. 4.1. Модульная структура
системы автоматизированного моделирования
Графический пользовательский интерфейс позволяет вводить информацию об исследуемой системе путем «рисования» на экране монитора проектируемой схемы в виде, понятном широкому кругу специалистов. Формой графического представления информации о моделируемой системе могут быть [16]:
· операторно-структурные схемы, принятые в ТАУ;
· функциональные и принципиальные схемы различных физических устройств;
· кинематические схемы механизмов;
· блок-схемы алгоритмов и другие графические модели.
Однако простым «рисованием» роль графического интерфейса не ограничивается. Задачами графического интерфейса, кроме того, могут быть [16]:
· контроль за соблюдением некоторых правил в процессе создания графического изображения на экране монитора (обычно накладываются ограничения на способы соединения компонентов и т.п.);
· преобразование информации о схеме в команды для моделирующей программы (моделятора);
· контроль за процессом моделирования, визуализация результатов моделирования.
П.5. Локальные и глобальные погрешности одношаговых методов решения ДУ
(метода Эйлера и методов Рунге-Кутта 2го, 4го порядка).
Теорема 6.1:
Если локальная погрешность метода 

как и при численном интегрировании, при переходе от локальной погрешности к глобальной, точность метода уменьшается на порядок. (6.8):
| Методы | Локальная | Глобальная |
| Эйлер | const*h 2 | const*h |
| Р.–К. 2го порядка по времени | const*h 3 | const*h 2 |
| Р.–К. 2го порядка по производной | const*h 3 | const*h 2 |
| Р.–К. 4го порядка | const*h 5 | const*h 4 |
Как и при численном интегрировании, порядок метода – степень h в глобальной погрешности.
П.6. Многошаговые методы решения ДУ и СДУ.
Все рассмотренные ранее методы – одношаговые, т.к. для нахождения 



В k-шаговом методе используются значения с k предыдущих шагов.
Многошаговые методы, как правило, дают лучший результат, чем одношаговые, в силу того, что более устойчивы к вычислительным погрешностям. Многошаговых методов много, самый распространенный среди них – метод Милна.
Формулы метода Милна:

Метод Милна – 4х шаговый (т.к. использует 4 предыдущих значения) и имеет 4-ый порядок точности. Перед применением метода Милна нам надо знать 4y, следовательно, необходимо сделать хотя бы 3 шага каким-нибудь одношаговым методом.
П.7. Оценка погрешности решения ДУ и СДУ методом двойного пересчета. Коррекция решения.
Используя такую же идею, как и в численном интегрировании, находим решение ДУ на [a,b] дважды с шагом h и с шагом h/2. Получим следующую картину:


Сравниваем попарно, если расхождение между 


Метод двойного пересчёта при решении ДУ и СДУ практически единственный имеет возможность для оценки погрешностей, так как иные формулы очень сложны и требуют оценок различных производных.
Как и при ЧИ, при решении ДУ и СДУ после 2го пересчёта в качестве точного решения выгодно брать не 


Метод двойного пересчёта применим не только лишь при ЧИ, при решении ДУ и СДУ, но и при решении других численных методов.
П.7. Краевые задачи для дифференциальных уравнений.
Выше рассматривалось решение ДУ и СДУ с начальными условиями, заданными в одной точке, так называемую задачу Коши, но для ДУ высших порядков часто бывает необходимо решить не з. Коши, а так называемую краевую задачу, т.е. начальные условия, которые заданы в разных точках.
Рассмотрим простейшую краевую задачу для ДУ 2го порядка:

А мы умеем решать:

В (6.11) нам известно 

Метод стрельб
После пристрелки и определения интервала [a,b],
где идёт смена знака, запускаем МПД или МХ.
На практике это выглядит так, как будто мы
решаем уравнение 

решение задачи Коши (6.11) в точке b при
П.9. Что делать, если ДУ не может быть разрешено относительно старшей производной?
Так как ДУ не может быть решено относительно старшей производной, то тогда на каждом шаге решаем нелинейное уравнение относительно y ( n) (все остальные неизвестные y,y’,y”,…, y ( n-1) -к этому моменту уже известны).
Решать уравнение относительно старшей производной любым методом(Хорд, МПД, Ньютона).
Замечание:
Таким образом, если ДУ не разрешается относительно старшей производной, то у нас возникает дополнительный цикл (самый внутренний) при написании программы.
Типы и классификация ошибок численного интегрирования
Современный численный метод одновременно с решением задачи Коши должен вычислять значение или оценку ошибки. Первый такой метод был предложен Мсрсоном в 1959 году (метод Рунгс-Кутта-Мсрсона). Теоретически таких методов описано достаточно много. Однако хороших практических реализаций в виде алгоритмов или прикладных программ мало. Рассмотрим причины возникновения ошибки при решении задачи Коши. Эта ошибка складывается из следующих компонент.
- 1. Неустранимая погрешность исходных данных. На нее повлиять нельзя, но учесть необходимо.
- 2. Локальная ошибка метода. Ее величина определяется порядком р используемого метода и зависит от шага: е,
()(h p *’). Эта ошибка связана с отбрасыванием остатка ряда при разложении точного решения в ряд по шагу при условии, что вес исходные данные заданы точно и вычисления проводятся без ошибок округления.
Если производить расчет на малом отрезке интегрирования, то ошибкой округления можно пренебречь, и преобладающей становится ошибка метода. Но когда количество шагов велико, ошибки округления накапливаются и становятся преобладающими. Экспериментально устаО а
количестве шагов взаимодействуют, в результате возникает общая ошибка, накопленная на веем отрезке интегрирования при применении данного метода. Эта общая ошибка ?г называется глобальной ошибкой. Известно, что при интегрировании на отрезке |0; Т|
Здесь множитель Т)(Т) зависит только от вида функции f(x) и нс зависит от шага интегрирования. Соотношение (7.9) называют правилом Рунге.
Общая ошибка ?у, порожденная всеми составляющими, сеть их сумма (рис. 7.1). Существует оптимальное значение шага /Г, обеспечивающее наименьшую суммарную ошибку. В случае, изображенном на рис. 7.1, отклонение от этого оптимального значения нс вызывает силь-
„ _ , „ , ного изменения ошибки. Возможно, однако, си-
Рнс.7.1. Суммарная ошибка
численного интегрирования туация, когда график суммарной ошибки столь крут, что даже малое изменение шага вызывает резкий рост суммарной ошибки. Такая ситуация характеризует вычислительную неустойчивость процесса интегрирования.
Полученную в результате интегрирования ошибку нужно уметь оценивать. Кроме того, полезно иметь возможность сознательно так выбирать шаг интегрирования, чтобы влиять на величину ошибки.
Наиболее популярный метод вычисления локальной ошибки основан на разложении решения в ряд по шагу. Если используется метод порядка р. то остаток ряда начинается с члена, содержащего
Очевидно, именно этот член и характеризует величину ошибки. Значит, следует оценить значение величины R. Будем считать, что при малом /| на протяжении шага R = const. Пусть на некотором шаге с номером г выбрана точка t е [tr‘,tnl]. Тогда x(t’) — точное, а х*/, — вычисленное при интегрировании с шагом /; значение искомой функции. Можно считать, что на шаге
Теперь разобьем шаг на два, длины —. и вычислим то же значение,
выполнив два шага интегрирования. Будем считать, что величина R при этом нс изменилась. Получим:
Вычитая уравнения, можно получить
И можно считать, что при интегрировании с постоянным шагом И верно соотношение
Таким образом, схема выбора величины /г на шаге для достижения заданной точности Очакова:
1. при известном х, с шагом /г вычислить тг+/;
источники:
http://life-prog.ru/2_14935_poryadok-metoda-integrirovaniya.html
http://megalektsii.ru/s20945t2.html
http://bstudy.net/718789/ekonomika/tipy_klassifikatsiya_oshibok_chislennogo_integrirovaniya
Глобальные ошибки человечества. «Я изменю весь мир, лишь бы не менять себя! Или Путь Осознания, что мы проходим на пути к Душе?»
Итак, вот уже много лет в практической работе с людьми и проблемами, возникающими в нашей жизни (что абсолютно естественно, так как мы приходим сюда учиться)? я замечаю интересный факт. Что бы негативное не происходило в жизни человека, одна из самых распространённых реакций на проблему: найти кого-то, кто в ней виноват. Каких только «виновных» в наших проблемах я не слышала от клиентов на приёме: родители, супруги, дети, коллеги, домашние животные, знакомые, незнакомые люди, обстоятельства, «случай», магия — и этот список можно продолжать до бесконечности. Задавшись вопросом, почему же происходит именно так? Я получила множество ценных уроков от жизни и людей, которые привели к некоей системе понимания этого феномена, которой и хочу поделиться с вами.
Критика, в особенности самокритика (в эпоху потребительского или эгоистичного отношения к миру, которое набирает уже глобальные обороты), или так называемая «совесть» — это единственный способ вернуть человека к трезвой реакции на происходящие события. Сама по себе критика имеет всегда только позитивные мотивы(!): показать самому себе или другому его ошибки и помочь в их решении (если эта критика конструктивна и не нацелена на прямое нанесение вреда другому). Так что же заставляет нас не воспринимать по сути помощь и от внутреннего голоса, и от других в изменении себя к лучшему и переоценке собственного поведения, нацеленных на саморазвитие и духовный рост?
Ответ на этот вопрос мне в раннем детстве предложила моя бабушка, мудрейшая из ведьм того времени: 7 внутренних демонов. Или 7 грехов, если говорить терминами христианства. Дискуссировать об этом можно бесконечно много, однако я постараюсь передать основную суть, к которой пришла сама, посредством опыта и жизненных уроков, через которые мне позволили пройти.
- Гордыня — родоначальница всех остальных грехов/демонов (впоследствии буду писать слово грехи — мнения, идеи человека, которые переходят в действия, наносящее вред самому человеку, другим людям, и/или всему человечеству в целом). Гордыня — базовый и самый сложный в осознании и трансформации в добродетель грех. Базируется гордыня на превозношении Себя над людьми и явлениями. То есть программа или мысль человека, о том, что он лучше других. «Я лучше знаю что-то, чем другие-другой». «Я лучше, чем кто-то, делаю то-то». «Я лучше понимаю что-то«. И многое другое. Таких примеров тысячи, сотни тысяч, и именно на гордыне основывается выражение: «Благими намерениями вымощена дорога в Ад«. Так, например, жена требует от мужа, чтобы он срочно купил стиральную машину. Как правило, она сама оправдывает своё требование целой кучей аргументов, что так будет лучше всем. И за этими «всеми» скрывается она сама. Её эгоизм. Распространённый пример с родителями, которые учат ребёнка: «Тебе нужно учиться, работать, жениться. Делать то-то и то-то». Не подозревая о желаниях самого ребёнка или полностью их подавляя в угоду своих эгоистичных потребностей в реализации за счёт успеха ребёнка. И мало кто из родителей понимает, что, разрушая и подавляя волю собственного ребёнка, они могут добиться только проблем и конфликтов внутри его личности. Что в конечном итоге приводит к психическим расстройствам и заболеваниям их «возлюбленного» дитя. Также сюда можно отнести ситуацию с бесконечностью советов и рекомендаций наших друзей и родственников, когда об этом совете не просили. Часто наблюдаю такую картину, что женщина приходит к подруге поплакаться о жизни своей «дырявой». И тут же получает целый поток советов и «правильных» моделей поведения в ситуаций, по мнению этой самой подруги, которая, чаще всего, даже близко не оказывалась в подобных ситуациях. И, к тому же, об этих советах её никто и не просил. Мотивацией такого поведения людей, как и в тысячах других примеров, является гордыня, которая скрывается под речевой программой: «Я же хочу, как лучше для него». Дальше позволю себе немного эмоций в тексте. Откуда, чёрт возьми, Ты знаешь, как будет лучше для кого-либо? Ты что, Господь Бог, чтобы решать вместо человека и за него, «как ему будет лучше»? Кто дал тебе право нарушать чужую Волю? Чужие потребности и желания? Подавлять мотивы самого человека, заменяя их своими?
Единственное, что мы можем и на что действительно имеем право по всем законам мироздания и человечества — так это работать над собой! Гордыня отрабатывается только полным смирением и принятием перед всем, что происходит, и всеми людьми вокруг нас, их поступками, словами и пр. И самый эффективный способ научиться смирению — это позволить людям быть такими, какие они есть. Позволить событиям просто происходить, останавливая и осознавая любые субъективные оценки этого, возникающие в мыслях. Наблюдать за всем вокруг себя и, извлекая уроки, которые собственного говоря и приносят нам ситуации и люди, менять самого себя в абсолютной благодарности за те уроки, которые даны нам через эти ситуации и людей!
Именно из гордыни рождаются все остальные грехи человека.
- Скупость (алчность) — неумеренная склонность к получению материальных благ. Корни этого греха рождаются в непомерном желании потреблять всё, что только можно, так как «я же заслуживаю купаться в изобилии«. Жажда халявы, наживы, получения всего, чего только не захочет человеческий эгоизм. Бабушка называла этот грех — «безмерным голодом «тёмного» сознания». Или «хочухами». И сводится этот грех к гордыне! «Я лучше других, поэтому я должен иметь всё, чего пожелаю, даже если мне это не нужно и это может нанести вред другому. Но я же лучше других!»
Освобождение от этого греха возможно только через осознание того, что на самом деле нам необходимые для жизни вещи просты и весьма просто достижимы. И благодарностью за то, что уже имеем. Если сводить это к формуле, то: «Удовлетворение себя одним необходимым». Сейчас я живу в одной квартире с женщиной, страдающей шизофренией. Она учит этому осознанию через пример: насколько мало на самом деле нам нужно для жизни. Периодически она живёт на улице, практически не имея тёплой одежды. Питается редко и мало. В ней полностью отсутствуют требования жить как-то иначе. И даже за тарелку супа она безмерно благодарна.
А теперь, задумайтесь, так ли уж вам необходимо иметь пентхаус, Бентли и сотни поклонников?
- Зависть — желание, часто переходящее в жажду обладания тем, что есть у другого. «У него есть что-то, лучше, чем у меня, но я же лучше него»! Зависть порождает целую цепочку негативных энергий, которые разрушают не только вашу энергетическую структуру, но и «отравляют» человека, которому вы завидуете, и всё пространство вокруг вас. В общем, ровно также, как и все остальные грехи. Лечится зависть только глобальным осознанием: «Раз мне нравится «это» и этого смог добиться/получить другой, то он сможет помочь мне, научить меня достигнуть «этого» самому, если у него будет на то желание». Бабушка говорила: «Есть великая добродетель: учиться у жизни. Но ещё большая добродетель — учиться у другого, понимая и принимая то, что он смог сделать что-то, чего сейчас не можешь сделать ты. В этом проявление Божественной мудрости». Сюда же можно отнести выражение: «Учиться на чужих ошибках».
- Гнев — яркая эмоция или целая плеяда негативных эмоций, по отношению к человеку или явлению, которые, по нашему мнению, несправедливы к нам. Освободиться от гнева можно только принятием и милосердием по отношению к тому человеку, который, может, и имеет право ошибаться (опять же по вашему мнению), выражать своё мнение и недовольство о нас и нами в системе своего мировоззрения! Мы не имеем никакого право навязывать другим людям свою картину мира! Мы можем только попытаться объяснить человеку, почему нам кажется(!), что он не прав. И это его и только его Воля — принимать наши объяснения или нет!
«Милосердие — Высшая из добродетелей человека, которая рождается в любви к себе и другому. Проявляющий милосердие — подобен Богу в безусловной любви», — говорила Бабушка.
- Похоть и Обжорство — это высшая степень «голода» в эпоху потребления. «В похоти и обжорстве страшный голод получать всё, что только можно любыми путями. Люди, которые позволяют себе обжираться (и это касается не только еды, но и сексуальных желаний, и жажды получения денег и пр.), навеки Рабы своих бесконечных желаний и служат Тьме, становясь Вампирами всего сущего. Похотение — деяния, рождающиеся в бесконечных «хотелках». (прим. Сергина Ксения Николаевна)
Также я называю эти два греха «высшим проявлением алчности». Лечить это возможно только через абсолютную благодарность всему и всем, что и кто вас окружает. И Служением на благо другому. То есть помощи посильной тем, кто эту помощь просит.
- Уныние и Лень. Лень — стремление человека отказаться от преодоления трудностей, устойчивое нежелание совершать волевое усилие и действие. Уныние — есть лень, превратившаяся в неблагодарность к жизни, за те дары, которые она даёт нам. «Лень поселяется в сердце человека, который убеждён, что долгами обросли все к нему, и должно ему все и вся на блюде да с золотой каёмкой подносить блага, желаемые гордыней его. Не получая этого, закрепляется внутри человека Бес Уныния, и ведёт он его разум по кругам похоти и душевного безобразия. Согласившийся иметь уныние и леность внутри себя — унижает и разрушает Душу свою, отсутствием деяний во истинное божественное благо, для которого мы и рождаемся на Земле». (Сергина К.Н.)
Исцелить человека от уныния и лени может только дисциплинированный и системный труд! Постоянная работа, как внутри, так и снаружи себя.
В зависимости от стадии развития этого порока человеку необходимо заниматься служением другим и постоянным физическим трудом. Работа, домашние дела, спорт и т.д. И находить блага(!!!), радость и удовольствие в этих занятиях!!! Благодарить, за то, что можешь совершать их.
Вспомните, сколько людей прикованы к инвалидным креслам, страдают тяжёлыми телесными и душевными недугами, и как сильно в них присутствует желание жить, творить, делать, совершать! Они уже прошли урок уныния. Но, подумайте, так ли вы уж хотите доводить свою лень до таких жёстких уроков от Вселенной?
В русском чернокнижии каждому из пороков соответствует свой «демон». И существа эти бесконечно мудры и обладают вселенскими знаниями. Их невозможно обмануть. От них нереально откупиться деньгами и даже жизнью. Уважение перед ними — одна из первых ступеней осознания и изменения самого себя.
Ясновидящие, психологи, психотерапевты и многие другие могут лишь показать вам, какой из Бесов управляет вашим сознанием, параллельно работая и со своими грехами. Волшебная палочка, освобождающая вас от пороков, есть только у вас самого/самой!
P.S.: «Пороки человеческие похожи на брёвна в глазах своих, что незримы из-за слепоты Гордыни. Желающий действительно жить пройдёт через всю боль осознания своих пороков, и все этапы изменения и искушения, обретая истинные качества Души своей. Нежелающий и ищущий бесконечно лживые оправдания своим демонам подобен мертвецу. Встречая таких, помни простое правило жизни: покойников нужно хоронить». (Сергина Ксения Николаевна, моя бабушка.)
Удачи и осознания вам!
Читайте также
|
Весь наш мир состоит из форм. Любая форма состоит из материала. Материал универсален. Он просто есть. Материал — это содержание, что тоже является формой. Любое понятие: мысль, чувство, предмет, энергия, пустота — есть форма единого целого. Любая сущность, в том числе и человек, находится в процессе… Читать дальше |
О, сколько же мудрых слов людей мудрых мы с вами в рунете видим, читаем и, конечно, по-своему понимаем. Как лично вы понимаете фразу, предложенную Гессе? — Что тут понимать? Всё же ясно и понятно! Вопрос… Читать дальше |
|
Ангелы, наставники, хранители — это проявление человеческой сути. Чем она осознаннее, тем большей помощью обладает человек. |
Когда рождается маленький человечек — у него уже есть память. Откуда? Из прошлых воплощений. И вот представьте: родились неподалёку друг от друга 3 девочки. Вроде бы все одинаковые, живут в обычных семьях. Только одна пришла в этот мир и принесла с собой из прошлой жизни программу «Я — рабыня» (служанка… Читать дальше |
Здравствуйте, уважаемые коллеги и друзья!
Ошибки блоггеров – это главная заноза, которая мешает продвижению блога. Эта статья целиком и полностью посвящена тому, кто ведет свой блог совсем недавно, а может уже и больше года или даже двух, но все таки повторяет самые банальные ошибки блоггеров!
Знаете в чем очень важная особенность этих ошибок? Их совершают практически все новички блоггинга, поэтому сильно не расстраивайтесь, если Вы оказались в их числе. Это нормальное явление! Главное вовремя эти ошибки осознать и исправить, а в частности эта ошибка всего одна, но глобальная. Лечение от нее мне стало известно около месяца назад. Что это за волшебная пилюля? Читайте в этой статье
Глобальные ошибки блоггеров
Итак, друзья мои, давайте для начала разберемся чем является для Вас блог. Самовыражением, увлечением, площадкой для заработка денег, виртуальной визиткой, средством общения, помощником в поиске единомышленников, показателем продвинутости и компетентности или у Вас есть свой вариант?
Ответили? Отлично! Что у Вас получилось? Напишите, пожалуйста, в комментариях. Мне будет интересно! А сейчас я Вам расскажу свое отношение к блогу до декабря 2011 года и после.
Ну, поехали! Свой первый блог www.best-info-product.ru я начал вести в феврале 2011 года по программе школы Start Up и, конечно же, главная цель была заработать! Так меня научили и это моя первая фундаментальная ошибка! Да, да, да! Это первая и глобальная пропасть, в которую я провалился. В эту трясину попадают 99,9% всех владельцев блога, потому что мы наслышаны и даже видели реальные доказательства, что на блоге можно заработать. ДА, МОЖНО! Но только тогда, когда он будет хорошо раскручен, наполнен уникальным контентом и иметь большую популярность среди целевой аудитории. Подпишитесь на обновления блога, если хотите развиваться вместе со мной, четкий план уже есть, через пару дней опубликую.
«Нифига себе! Это сколько нужно времени, чтобы всего этого добиться?». Да, Работать надо не покладая рук, хотя если смотреть в перспективе, то не так уж и много, как кажется на первый взгляд. Поймите, уважаемые коллеги, что Никто не будет ничего у Вас покупать или постоянно читать Ваш блог и, вообще, иметь общее дело, до тех пор, пока Вас не станут уважать как ЛИЧНОСТЬ!!! Запомните это раз и навсегда!
Короче, свой первый блог я «украсил» партнерскими баннерами, ссылками со статей и контекстной рекламой. «Вот Вам, уважаемые посетители, покупайте через меня все подряд, пожалуйста, кликайте по рекламе, а я буду получать за это бабки и жить припеваючи» — думал я. Такой наивный был:) Ужас просто!
Посмотрите на успешных блоггеров и интернет предпринимателей. Почему они зарабатывают большие «бабки»? Потому, что их слушают и уважают! И ещё, разве у них завешаны блоги контекстной рекламой и баннерами? Зато у молодых блоггеров их хоть отбавляй Кстати, о грамотном размещении рекламы будет отдельная статья, подпишитесь на обновления блога, чтобы не пропустить ее.
Отсюда вывод: Убирайте все «украшения» с Вашего блога, пока он не достигнет посещаемости, хотя бы 300 человек в сутки!!!
Что в итоге у меня получилось? Блог забросил, начал вести новый (вот этот), но наступил на новые грабли! Они заключались в том, что я даже и не думал о собственном бренде. Зачем он мне? Что я, фирма что ли какая-то крутая? Думал и так смогу зарабатывать, нафига для этого быть уважаемой личностью. Редко писал статьи, можно сказать, «для галочки», вследствие чего блог залетел в АГС к Яндексу. Ладно, не буду Вас томить своими ошибками, а лучше расскажу проверенный мою рецепт от глобальной ошибки начинающих блоггеров.
Кстати, а в чем она заключается? Вот ответ:
Халатное отношение к своему блогу!!!
Грубо? Может быть. Но как еще можно это назвать, когда пишешь в блог не регулярно (меньше 3-х раз в неделю), статьи оптимизируешь плохо (не подгоняешь под 100% релевантность), дружелюбную атмосферу среди читателей не налаживаешь, конкурсы не проводишь, посетителей блога никак не поощряешь… Ну, скажите мне, как еще это можно назвать??? Или у Вас таких «косяков» никогда не было?
Примерно, месяц назад, когда я прослушал аудиокурс Александра Борисова «КАК СТАТЬ БЛОГГЕРОМ ТЫСЯЧНИКОМ», то понял, насколько я Халатно относился к своему блогу. Мое отношение резко изменилось к своему детищу, до моего серого вещества, наконец-таки, дошло, что мой блог — это часть меня, часть моей души и отражение мой личности. А как Вы относитесь к своему блогу? Чем он является для Вас?
Свой блог нужно любить и уважать, вкладывать в него не только усердный труд, время и деньги, но душу и сердце. Блог должен быть дополнением и продолжением Вас, а не какой-то отдельной частью. Только тогда он будет приносить Вам хороший доход, только тогда Вы будете иметь грандиозный успех. Даю голову на отсечение!
Хороший промыв мозгов я вам устроил, новички? Стыдно стало? Вот и мне стало стыдно, когда я все это осознал. Слава Богу, что я вовремя прослушал курс Александра и познакомился с ним лично. Саня, я твой должник!
Буквально 3 дня назад Александр Борисов выпустил в свет мультимедийный обучающий курс «КАК СТАТЬ БЛОГГЕРОМ ТЫСЯЧНИКОМ», который поможет любому блоггеру исправить глобальную ошибку всех новичков и добиться посещаемости свыше 1000 человек в сутки. Когда мы с ним записывали интервью на тему «Секреты успешного ведения блога», то Саша признался, что хорошие деньги блог начинает приносить только тогда, когда становится тысячником! В принце, это очевидно. Но вот как стать тысячником? Ответ здесь
Теперь Вы знаете свою глобальную ошибку и знаете как её исправить! Теперь Все в ваших руках, мои дорогие! Действуйте…
P.S. Также рекомендую протестировать инструменты, которые я использую для ведения блога, они помогут вам вести блог эффективнее и значительно сэкономят время на выполнение части необходимых задач.
P.S.S Ах, да! Чуть не забыл:) Многие до сих пор не провели мероприятия по защите своего блога. Как это сделать? Смотрите здесь.







































