Контрольная работа по "Методы физического и математического моделирования"
Автор: Albi • Апрель 10, 2018 • Контрольная работа • 2,435 Слов (10 Страниц) • 928 Просмотры
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
НИЖНЕКАМСКИЙ ХИМИКО-ТЕХНОЛОГИЧЕСКИЙ ИНСТИТУТ (ФИЛИАЛ)
ГОСУДАРСТВЕННОГО ОБРАЗОВАТЕЛЬНОГО УЧРЕЖДЕНИЯ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
«КАЗАНСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ»
Кафедра математики и информатики
Контрольная работа
по дисциплине: Методы физического и математического моделирования
Вариант 9
Выполнил: студент группы
Проверил: доц. Садыков А.В.
г. Нижнекамск, 2017 г.
Задача 1. Решить систему линейных уравнений с трехдиагональной матрицей методом прогонки: а) вручную; б) с помощью программы в QBasic:
[pic 1]
Решение.
а) Прямая прогонка:
[pic 2]
[pic 3]
Вычислим прогоночные коэффициенты: [pic 4]
[pic 5] [pic 6]
[pic 7] [pic 8]
[pic 9] [pic 10]
[pic 11] [pic 12]
Обратная прогонка.
Определим [pic 13] по формуле: [pic 14].
Таким образом [pic 15]
Остальные неизвестные определим по формуле: [pic 16].
[pic 17]
[pic 18]
[pic 19]
[pic 20]
Проверка: подставим полученные значения в одно из уравнений системы, например, в первое:
[pic 21]
Ответ:
х1=1,7798
х2 = 1,6604
х3 = -0,7892
х4=4,0228
х5 = 0,3257
б) Программа
CLS
n = 5
DIM x(n), a(n), b(n), c(n), p(n - 1), q(n - 1)
b(1) = 3: c(1) = 1: d(1) = 7
p(1) = -c(1) / b(1)
q(1) = d(1) / b(1)
FOR i = 2 TO n - 1
a(2) = 1: a(3) = 2: a(4) = 1
b(2) = 4: b(3) = -4: b(4) = 5
c(2) = -2: c(3) = 1: c(4) = -1
d(2) = 10: d(3) = 10.5: d(4) = 19
p(i) = -c(i) / (b(i) + a(i) * p(i - 1))
q(i) = (d(i) - q(i - 1) * a(i)) / (a(i) * p(i - 1) + b(i))
NEXT i
a(5) = 1: b(5) = 3: d(5) = 5
x(n) = (d(n) - a(n) * q(n - 1)) / (a(n) * p(n - 1) + b(n))
FOR i = n - 1 TO 1 STEP -1
x(i) = p(i) * x(i + 1) + q(i)
NEXT i: PRINT "reshenie"
FOR i = 1 TO n
PRINT "x("; i; ")="; x(i)
NEXT i
PRINT "proverka"
FOR i = 2 TO n - 1
z = a(i) * x(i - 1) + b(i) * x(i) + c(i) * x(i + 1) - d(i)
PRINT "nesootvetstvie="; z; "dla uravnenia"; i
NEXT i
END
Результат вычисления на компьютере:
reshenie
x( 1 )=1.779816
x( 2 )= 1.660551
x( 3 )=- .7889907
x( 4 )= 4.022936
x( 5 )= .3256881
proverka
nesootvetstvie= 0 dla uravnenia 2
nesootvetstvie=0 dla uravnenia 3
nesootvetstvie=1.907349Е-06 dla uravnenia 4
Задача 2. Дана краевая задача для линейного обыкновенного дифференциального уравнения II порядка:
[pic 22]
Здесь
[pic 23], [pic 24], [pic 25], а=1; b=1,3
Найти численное решение задачи методом конечных разностей ( при n = 3 – вручную, при n = 5 – с помощью программы)
Полученные результаты представить графически.
Решение.
[pic 26]
[pic 27]
а) Решим вручную при n = 3.
[pic 28] – шаг.
Разобьем отрезок [pic 29] на части с шагом [pic 30]. Получим: [pic 31], где [pic 32] – конечные точки, [pic 33] – внутренние.
Преобразуем данное дифференциальное уравнение с учетом: [pic 34]
Получаем: [pic 35]
Преобразуем полученное уравнение, умножив на [pic 36]:
[pic 37]
[pic 38]
[pic 39]
[pic 40]
[pic 41]
[pic 42]
[pic 43]
[pic 44]
[pic 45]
[pic 46]
[pic 47]
Составим систему уравнений:
[pic 48]
[pic 49]
Решим данную систему методом прогонки.
Прямая прогонка.
[pic 50]
Вычислим прогоночные коэффициенты:
[pic 51]
[pic 52]
...