Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа 6.doc
Скачиваний:
13
Добавлен:
25.09.2019
Размер:
220.67 Кб
Скачать

6.2. Разложение функции в ряд Тейлора.

Для приближенного определения значения функции f(x) разложим данную функцию в Ряд Тейлора в окрестности точки x=a.

7. Встроенные функции решения краевых задач, заданных в форме Коши

Обыкновенными дифференциальными уравнениями (ОДУ) можно описывать задачи движения системы взаимодействующих материальных точек, химической кинетики, электрических цепей, сопротивления материалов (например, статический прогиб упругого стержня) и многие другие. Ряд важных задач для уравнений в частных производных также сводится к задачам для ОДУ. Так бывает, если многомерная задача допускает разделение переменных (например, задачи на нахождение собственных колебаний упругих балок и мембран простейшей формы). Таким образом, решение ОДУ занимает важное место среди прикладных задач физики, химии и техники.

Рассмотрим ОДУ первого порядка, записанное в общем виде:

. (1)

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

y(x0) = y0. (2)

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

 

7.2 Функция Odesolve()

Для решения краевых задач может использоваться функция Odesolve (x, b, [step]), где

x - имя переменной дифференцирования искомой функции (в данном случае t);

b – максимальное значение изменение переменной x (область поиска решения);

[step] – необязательный параметр, указывающий количество шагов внутри указанной области.

 

Пример решения дифференциального уравнения второго порядка с учетом граничных условий

Порядок выполнения решения с помощью функции Odesolve()

Набрать слово Given

Ниже введенного слова набрать левую часть уравнения

Выбрать логическое равно “=” из меню “Boolean” математической панели (либо Ctrl+=)

Ввести правую часть уравнения

Аналогичным образом набрать граничные условия (для набора символа ‘ использовать комбинацию Сtrl+F7)

Указать имя искомой функции и присвоить ему найденное решения, возвращаемое функцией

Например: x :=Odesolve(t,150)

Построить график полученного решения на интервале от 0 до 150;

 

7.2 Функция Rkfixed()

Порядок выполнения задания c помощью функции Rkfixed(y, x1, x2, npoints, D), где

y - вектор начальных значений;

x1, x2 – начальная и конечные точки поиска решения;

npoints - количество точек расчета;

D - вектор производных задачи.

 

Рассмотрим такой же пример решения краевой задачи типа Коши, как и в случае с функцией Odesolve():

Приведем данную краевую задачу к виду:

Пусть x0(t)=x(t); x1(t)=x’(t)

Тогда можно записать:

x0’(t)=x1(t)

Указать область поиска решения;

Например: t0:=0 t1:=150

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

Указать число шагов внутри указанной области (количество точек расчета) N:=200;

Задать вектор производных. Для данной задачи он имеет вид:

 

(набор индексов в переменной (X1) осуществлять как обращение к элементу (Xn) матрицы на панели Matrix)

Найти решение краевой задачи с помощью функции

Например: S:=rkfixed(ic,t0,t1,N,D) S – возвращаемая матрица значений

Переопределить матрицу найденных значений:

  • -          Выделить вектор независимой переменной (t) T:=S<0>

  • -         Выделить вектор значений искомой функции (x(t)) X:=S<1>

(S<0> означает обращение в первому (нулевому) столбцу возвращаемой матрицы значений, и

вводится данное обращение через панель Matrix и кнопку M<>)

Построить график функции X(T)

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