- •Оглавление
- •Введение
- •1. Программирование задач на языке basic
- •Программирование линейных вычислительных процессов
- •1.1.2. Справочный материал.
- •1.1.5. Вопросы для самопроверки
- •1.2.3. Пример:
- •20 Input “a b “ ; a , b input “a b “ ; a , b
- •1.2.4. Задание к лабораторной работе.
- •Определённые циклы
- •1.3.4. Задания к лабораторной работе.
- •Определённые циклы. Суммирование членов функционального ряда
- •Input “X, m%, h% “ ; X , m% , h%
- •1.4.4. Задания к лабораторной работе.
- •Файлы прямого и последовательного доступа
- •Input “X m h “ ; X , m% , h
- •Программирование итерационных вычислительных процессов
- •10 Input "Введите значения X,r,k,e" ; X,r,k,e
- •1.6.5. Вопросы для самопроверки
- •1.7.5. Вопросы для самопроверки
- •Формирование и обработка одномерных массивов
- •1.8.5. Вопросы для самопроверки
- •Формирование двумерных массивов и выполнение операций с матричными элементами
- •160 Next I
- •160 Next j
- •150 Next j
- •1.9.5. Вопросы для самопроверки
- •Программирование сложных программ с использованием подпрограмм
- •40 Read X( I ) : next I
- •45 Data 1, 2.1, -3, -4.1, 1.7, 1.8, 1.9, 14.2, -5, -4.3, 11.2, 10.8
- •140 Return
- •90 Read X( I ) : next I
- •100 Data 1, 2.1, -3, -4.1, 1.7, 1.8, 1.9, 14.2, -5, -4.3, 11.2, 10.8
- •1.10.5. Вопросы для самопроверки
- •Программирование цепочек текстовых переменных
- •1.11.5. Вопросы для самопроверки
- •Литература к главе 1
- •2.1.5. Вопросы для самопроверки
- •Решение нелинейного уравнения графическим методом
- •2.2.5. Вопросы для самопроверки
- •Решение НелинейноГо уравнениЯ МетодОм простых итераций
- •2.3.5. Вопросы для самопроверки
- •Решение нелинейного уравнения методом касательных
- •2.4.3. Пример.
- •2.4.5. Вопросы для самопроверки
- •Решение систем Нелинейных уравнений графическим методом
- •2.5.5. Вопросы для самопроверки
- •Решение систем Нелинейных уравнений методом пРостых итераЦиЙ
- •2.6.3. Пример.
- •2.6.5. Вопросы для самопроверки
- •Численное интегрирование:метод прямоугольников и трапеций, формула симпсона
- •2.7.5. Вопросы для самопроверки
- •Численное решение обыкновеНноГо дифференциального уравнениЯ МетодОм эЙлера и рунге-кутта
- •2.8.5. Вопросы для самопроверки
- •Численное решение систем обыкновеНнЫх дифференциальных уравнениЙ МетодОм эЙлера
- •3. Математическое моделирование на пэвм
- •3.1. Системы тел сосредоточенными массами
- •3.1.1. Математическое моделирование теплообмена для тел сосредоточенных масс с окружающей средой
- •3.1.2. Собственные колебания
- •Лабораторная работа № 3.1 исследование автономной линейной системы уравнений
- •Лабораторная работа № 3.2 исследование автономной нелинейной системы уравнений
- •Лабораторная работа № 3.3 решение жестких систем обыкновенных дифференциальных уравнений (оду)
- •3.1.3. Математическая модель стабильности позвоночника
- •Результаты численных расчетов
- •3.2. Системы с распределенными параметрами
- •3.2.1. Математическое моделирование процесса переноса частиц
- •3.2.2. Математическое моделирование процесса прерванного посола рыбы
- •Отметим, что критерий устойчивости счета методом прогонки к ошибкам округления выполнен, так как
- •Как следует из рекуррентных соотношений (3.2.32), для начала расчета необходимо иметь значения e1 и w1, которые определяются с помощью левого граничного условия (3.2.23)
- •3.2.3. Моделирование процесса переноса частиц на основе гиперболической системы уравнений
- •3.2.4. Математическое моделирование нестационарного двумерного процесса переноса частиц (теплопереноса)
- •Система разностных уравнений (3.2.45) дополнялась начальными и граничными условиями (3.2.40 – 3.2.44) и решалась методом обыкновенной прогонки попеременно в двух направлениях.
- •3.3. Повышение порядка точности аппроксимации дифференциальных уравнений
- •3.3.1. Повышение порядка точности аппроксимации обыкновенных дифференциальных уравнений
- •3.3.2. Повышение порядка точности аппроксимации дифференциальных уравнений гиперболического типа
- •3.4. Интерполяция функций
- •3.4.1. Линейная интерполяция
- •3.4.2. Квадратичная интерполяция
- •3.4.3. Интерполяционная формула Лагранжа
- •3.4.4. Сплайны
- •3.4.5. Алгоритм решения обратных задач по заданным показателям качества
- •Литература к главе 3
3. Математическое моделирование на пэвм
3.1. Системы тел сосредоточенными массами
3.1.1. Математическое моделирование теплообмена для тел сосредоточенных масс с окружающей средой
Уравнение теплообмена для тела сосредоточенной массой с окружающей средой имеет вид:
, (3.1.1)
где T0 = 100 C0 - начальное значение температуры тела; Tok = 20 C0 – температура окружающей среды; α = 0.01 c-1 скорость охлаждения тела.
Для выяснения счетной устойчивости и точности численного решения по явным и неявным разностным схемам сравним результаты численного решения уравнения (3.1) по этим схемам с его аналитическим решением [III,18]. Аналитическое решение уравнения, приведенного выше, определяется формулой:
T(t) = (T0 – Tok) e-αt + Тok . (3.1.2)
Для численного решения уравнения (3.1.1) по явным и неявным разностным схемам дискретизируем его, т. е. введем равномерную сетку по переменной t:
t0 = t0 < t1 < …<tj… < tk-1 < tk = tk, (3.1.3)
где tj = j τ; τ = ( tk ) / k; j = 0 , 1, … ,k; k = 100.
Зададим Tj = T(tj). Тогда численное решение по явной разностной схеме записывается следующим образом:
или , (3.1.4)
а численное решение по неявной разностной схеме имеет вид:
или . (3.1.5)
Сравнивая численное решение дифференциального уравнения (3.1.1) по явной разностной схеме (3.1.4) на одном шаге (t = τ) c аналитическим решением (3.1.2) путем несложных преобразований, можно показать, что формула (3.1.5) совпадает с формулой (3.1.4) при условии
е-ατ = 1 - ατ , (3.1.6)
т. е. если разложить экспоненту е-ατ в ряд Тейлора, удержав нулевой и первый члены ряда, а это возможно только при условии ατ<<1 или τ<<1/α. Таким образом, явная разностная схема (3.1.4) условно устойчива (в том случае, если ατ > 1, то выражение в скобках в формуле (3.1.4) меняет знак), а точность вычислений будет определяться значением шага интегрирования по времени τ (τ<<1/α) [III, 19].
В это же время неявная разностная схема (3.1.5) является, безусловно, устойчивой, так как всегда будет выполняться условие:
. (3.1.7)
Текст программы алгоритма решения дифференциального уравнения (3.1.1), написанной на блочно-структурном языке системы MATHCAD и числовые данные, приведены ниже.
где T, Te, Tn – решения уравнения (3.1.1), полученные на основе аналитического выражения (3.1.2) и по явной, и неявной разностных схемах, соответственно.
На рис. 3.1 приведены результаты решения обыкновенного дифференциального уравнения (3.1.1) при τ = 10с (α·τ = 0.1), а на рис. 3.2 - при τ = 200с (α·τ = 2). При этом введены следующие обозначения: Т – аналитическое решение; Те – численное решение по явной разностной схеме; Тn – численное решение по неявной разностной схеме. Сопоставление всех трех кривых при малых значениях шага интегрирования по времени τ порядка 10с указывает, как это следовало из теоретических предпосылок, приведенных выше, явная и неявная разностные схемы достаточно хорошо аппроксимируют исходное дифференциальное уравнение (3.1.1).
При больших значениях τ порядка 200с (α·τ = 2), как это обсуждалось выше, неявная разностная схема продолжает удовлетворительно аппроксимировать дифференциальное уравнение, несмотря на малое число точек (j = 3), а решение уравнения по явной схеме носит знакопеременный осциллирующий характер, что и следует из результатов численного решения дифференциального уравнения (3.1.1), приведенных на рис. 3.2.
Рис. 3.1.Аналитическое решение - сплошная Рис.3.2. То же, что и на рис. 3.1,
кривая; решение по явной разностной схеме но только для шага τ = 200с
- пунктирная кривая; по неявной – штрих
пунктирная кривая, при шаге τ = 10 с
Таким образом, как это следует из теоретических и численных исследований, неявные разностные схемы являются счетно-устойчивыми для любых значений шагов интегрирования и аппроксимируют дифференциальные уравнения с первым порядком точности 0(τ), а явные разностные схемы могут быть использованы только при малых значениях шагов интегрирования, что приводит к их низкой счетной эффективности [III, 7, 10-12, 17-20].
Покажем, что первая производная температуры по времени, аппроксимирующая формулой
, (3.1.7)
имеет первый порядок точности. Для этого разложим в ряд Тейлора дискретную функцию Тj+1 в окрестности точки j по формуле:
. (3.1.8)
Подставляя выражение (3.1.8) в правую часть в формулу (3.1.7), получаем . (3.1.9)
Из выражения (3.1.9) следует, что правая разностная производная аппроксимирует производную в точке j и члены бесконечного ряда порядка 0(τ), а это и требовалось доказать.
Задание. Исследовать на сходимость явные и неявные разностные схемы численного решения уравнения теплообмена при следующих значениях T0, Tok и α:
Таблица 3.1
№ |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
T0 C0 |
80 |
70 |
60 |
50 |
45 |
40 |
35 |
30 |
25 |
30 |
TokC0 |
15 |
20 |
25 |
30 |
35 |
35 |
40 |
45 |
50 |
55 |
α, c-1 |
0,011 |
0,015 |
0,02 |
0,025 |
0,03 |
0,035 |
0,03 |
0,025 |
0,02 |
0,015 |