ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 07.12.2021
Просмотров: 2268
Скачиваний: 1
46
4.
Выполнить
основную
расчетную
часть
лабораторной
работы
в
системе
MathCAD.
Следует
скопировать
в
файл
отчета
вектор
коэффициентов
i
C
пробных
решений
и
набрать
в
отчете
решения
с
этими
коэффициентами
.
Так
же
необходимо
скопировать
в
этот
файл
пункт
«6.
Выводы
».
5.
Оформить
и
распечатать
файл
отчета
по
лабораторной
работе
,
который
должен
содержать
титульный
лист
,
математическую
постановку
задачи
,
результаты
выполнения
подготовительных
расчетов
,
основные
результаты
расчетов
на
ЭВМ
,
выводы
о
возможностях
использованных
методов
и
наиболее
приближенное
к
точному
аналитическое
решение
.
6.
Защитить
отчет
.
2.9.
Программа
в
системе
MathCAD
и
тестирующий
пример
В
данном
разделе
приведен
текст
программы
ODE.mcd,
разработанной
для
решения
краевой
задачи
для
линейного
обыкновенного
дифференциального
уравнения
второго
порядка
методами
Галеркина
,
Ритца
и
интегральным
методом
наименьших
квадратов
.
В
тексте
разбирается
получение
пробного
решения
)
(
5
x
y
(
т
.
е
.
задается
5
n
)
на
отрезке
1
,
0
для
краевой
задачи
.
4
1
1
,
1
0
0
,
2
6
2
2
3
2
y
y
y
y
x
x
y
y
y
(2.41)
Лабораторная
работа
«
Решение
краевой
задачи
для
линейного
обыкновенного
дифференциального
уравнения
второго
порядка
»
Задание
на
лабораторную
работу
1.
В
пункте
«
Постановка
задачи
»
ввести
вместо
данных
примера
непрерывные
функции
: p(x), q(x), f(x)
и
числовые
параметры
задачи
: a, b, a0, a1,
a2, b0, b1, b2
своего
варианта
.
2.
В
пункте
«
Получение
приближенного
решения
с
помощью
программного
блока
в
системе
MathCAD»
показано
,
как
в
системе
MathCAD
краевая
задача
сводится
к
задаче
Коши
и
решается
с
помощью
стандартной
функции
.
Необходимо
скопировать
график
полученной
интегральной
кривой
в
файл
отчета
.
3.
В
пункте
«
Получение
приближенного
решения
методом
Галеркина
»
ввести
вместо
данных
примера
полученную
самостоятельно
систему
пробных
функций
V(k, x) –
многочленов
вида
(2.26).
Выполнить
построение
приближенных
решений
задачи
y
n
(x),
взяв
в
качестве
поверочных
функций
пробные
и
функции
Лежандра
.
Скопировать
в
файл
отчета
вектор
коэффициентов
C
k
пробных
решений
и
набрать
в
отчете
решения
с
этими
коэффициентами
.
47
4.
В
пункте
«
Получение
приближенного
решения
вариационным
методом
Ритца
»
ввести
вместо
данных
примера
полученную
самостоятельно
систему
пробных
функций
V1(k, x) –
функций
вида
(2.34) – (2.36).
Выполнить
построение
приближенных
решений
задачи
y
n
(x),
взяв
в
качестве
пробных
функций
многочлены
(2.26)
и
функции
вида
(2.34) – (2.36).
Скопировать
в
файл
отчета
вектор
коэффициентов
C
k
пробных
решений
и
набрать
в
отчете
решения
с
этими
коэффициентами
.
5.
В
пункте
«
Получение
приближенного
решения
интегральным
методом
наименьших
квадратов
»
ввести
вместо
данных
примера
полученную
самостоятельно
систему
пробных
функций
V2(k, x) –
многочленов
вида
(2.29).
Выполнить
построение
приближенных
решений
задачи
y
n
(x),
взяв
в
качестве
пробных
функций
многочлены
(2.26)
и
многочлены
(2.29).
Скопировать
в
файл
отчета
вектор
коэффициентов
C
k
пробных
решений
и
набрать
в
отчете
решения
с
этими
коэффициентами
.
6.
Скопировать
результаты
пункта
«
Выводы
»
в
файл
отчета
,
и
,
анализируя
их
,
сделать
в
файле
отчета
выводы
о
точности
построенных
решений
методами
Галеркина
,
Ритца
и
методом
наименьших
квадратов
.
Постановка
задачи
Требуется
на
отрезке
[a,b]
найти
решение
y(x)
дифференциального
уравнения
2
x
y
d
d
2
p x
( )
x
y
d
d
q x
( )
y
f x
( )
удовлетворяющее
условиям
a0 y a
( )
a1
x
y a
( )
d
d
a2
b0 y b
( )
b1
x
y b
( )
d
d
b2
Введите
(
вместо
уже
введенных
для
примера
данных
)
непрерывные
функции
p(x), q(x), f(x)
и
числовые
параметры
a, b, a0, a1, a2, b1, b2
задачи
p x
( )
3
q x
( )
2
f x
( )
2
x
2
6
x
2
a
0
b
1
a0
1
a1
1
a2
1
b0
1
b1
1
b2
4
Получение
приближенного
решения
с
помощью
программного
блока
в
системе
MathCAD
Найдем
«
точное
решение
» y(x),
используя
стандартные
функции
системы
MathCAD.
Для
этого
представим
дифференциальное
уравнение
в
виде
нормальной
системы
дифференциальных
уравнений
первого
порядка
,
полагая
y0=y, y1=y':
48
x
y0
d
d
y1
x
y1
d
d
p x
( )
y1
q x
( )
y0
f x
( )
Граничные
условия
:
a0 y0 a
( )
a1 y1 a
( )
a2
b0 y0 b
( )
b1 y1 b
( )
b2
Чтобы
решить
эту
краевую
задачу
,
сведем
ее
сначала
к
задаче
Коши
D x y
(
)
y
1
p x
( )
y
1
q x
( )
y
0
f x
( )
xf
a
b
2
Введем
в
вектор
v1
возможные
значения
y(a),
если
a0 = 0,
и
y'(a)
в
противном
случае
,
в
вектор
v2 – y(b),
если
b0=0,
и
y'(b)
в
противном
случае
(
начальные
приближения
).
v1
0
1
v2
0
1
load1 a v1
(
)
if a0
0
v1
0
a2
a0
a1
a0
v1
0
if a0
0
a2
a1
v1
0
load2 b v2
(
)
if b0
0
v2
0
b2
b0
b1
b0
v2
0
if b0
0
b2
b1
v2
0
score xf y
(
)
y
S
bvalfit v1 v2
a
b
a
b
2
D
load1
load2
score
S
0.153224 0.062349
(
)
Первый
коэффициент
вектора
S –
точное
значение
y(a),
если
a0=0,
и
y'(a)
в
противном
случае
,
второй
коэффициент
–
точное
значение
y(b),
если
b0=0,
и
y'(b)
в
противном
случае
.
Т
.
е
.
свели
краевую
задачу
к
задаче
Коши
.
Найдем
решение
этой
задачи
Коши
,
разбив
отрезок
на
N
частей
y0
if a0
0
a2
a0
a1
a0
S
T
0
S
T
0
y1
if a0
0
S
T
0
a2
a1
49
Для
нахождения
решения
задачи
Коши
для
обыкновенных
дифференциальных
уравнений
используется
метод
Рунге
-
Кутта
,
заложенный
в
программный
блок
odesolve(x,b,[step]),
где
x –
переменная
интегрирования
, b –
конечная
точка
, [step] –
число
частичных
отрезков
(
в
примере
10000).
Найдем
решение
задачи
:
Given
Y'' x
( )
p x
( )
Y' x
( )
q x
( )
Y x
( )
f x
( )
Y
0
( )
y0
Y'
0
( )
y1
Yk
Odesolve x b
10000
(
)
Интегральная
кривая
имеет
вид
0
0.5
1
0
0.5
1
Yk x
( )
x
Скопируйте
график
полученной
интегральной
кривой
в
файл
отчета
.
В
некоторых
случаях
возможно
найти
точное
аналитическое
решение
.
Для
данного
примера
решение
имеет
вид
Y x
( )
e
2
7
2
e
2
e
e
x
7
e
3
e
2
e
e
2
x
x
2
Сравним
аналитическое
и
компьютерное
решения
0
0.5
1
0
2
10
13
4
10
13
Y x
( )
Yk x
( )
x
Наибольшая
разность
равна
3.414 10
13
т
.
е
.
компьютерное
решение
найдено
достаточно
точно
.
Построим
решения
краевой
задачи
методами
Галеркина
,
Ритца
и
методом
наименьших
квадратов
.
Введите
порядок
пробного
решения
n
k
k
n
x
k
V
C
x
V
U
1
)
,
(
)
,
0
(
:
n
5
50
Получение
приближенного
решения
методом
Галеркина
Введите
систему
пробных
функций
вида
(2.26):
V k x
(
)
if k
0 6
5
x
1
x
x
k
1
k
2
Введем
оператор
,
соответствующий
левой
части
уравнения
L k x
V
(
)
2
x
V k x
(
)
d
d
2
p x
( )
x
V k x
(
)
d
d
q x
( )
V k x
(
)
1.
В
качестве
поверочных
функций
возьмем
пробные
W k x
(
)
V k x
(
)
Найдем
коэффициенты
системы
уравнений
AC=B
для
определения
коэффициентов
пробных
решений
C
k
i
1 n
j
1 n
B
i
1
a
b
x
f x
( )
L
0
x
V
(
)
(
)
W i x
(
)
d
A
i
1
j
1
a
b
x
L j x
V
(
)
W i x
(
)
d
Решая
систему
уравнений
AC=B
матричным
методом
,
получим
вектор
коэффициентов
C
k
C
A
1
B
C
T
1.132936
2.499320
2.647392
0.073920
1.213380
(
)
Скопируйте
в
файл
отчета
этот
вектор
.
Подставив
коэффициенты
C
k
,
наберите
в
файле
отчета
получившееся
пробное
решение
.
Пробное
решение
U(x)
для
n
5
имеет
вид
U x
( )
V
0
x
(
)
1
n
k
C
k
1
V k x
(
)
Найдем
вектор
коэффициентов
C
k
для
предыдущего
пробного
решения
.
Для
этого
решим
систему
уравнений
A
1
C=B
1
,
где
A
1
–
угловая
матрица
(
1
n
)-
го
порядка
матрицы
A,
а
B
1
–
вектор
-
столбец
,
содержащий
первые
(
1
n
)
элементы
столбца
B.
C1
if n
1
submatrix A
0
n
2
0
n
2
(
)
(
)
1
submatrix B
0
n
2
0
0
(
)
10
UP x
( )
if n
1
V
0
x
(
)
1
n
1
k
C1
k
1
V k x
(
)
V
0
x
(
)
C
равним
полученные
решения
для
n
5
и
4
n