2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Дифур методом стрельбы
Сообщение18.08.2014, 16:04 
Дано уравнение
$y''+y' \sin(x)+ y \cos(x)=0$ с краевыми условиями
$y(0)=\alpha$, $y'(\frac{\pi}{4})=\beta$

Я поступал так: приведём уравнение второго ряда к системе уравнений первого ряда
$z=y'$, $z'=y''$
Тогда имеем:
$z'+z \sin(x) + y \cos(x)=0$
$z=y'$
$y(0)=\alpha$, $z(\frac{\pi}{4})=\beta$

Или в другой записи
$\vec y' = \vec f (\vec y, x)$, где
$\vec y=(y, z)^T$, $\vec f=(-z' \sin (x) - y \cos (x), y)^T$
И, соответственно, краевые условия
$\vec r(\vec y(0), \vec y(\frac{\pi}{4}))=(y(0)-\alpha, z(\frac{\pi}{4})-\beta)=\vec 0$
Затем я решаю задачу
$\vec y(0)=(y(0), z(0))=\vec \alpha = (\alpha, \alpha')$ и получаю решение $\vec y(\vec \alpha, x)$
и затем с помощью метода Ньютона нахожу корень уравнения
$\vec F(\vec y(\alpha, x))=\vec r(\vec \alpha, \vec y (\vec \alpha, \frac{\pi}{4}))=0$
То есть итерации
$\vec \alpha_{k+1}=\vec \alpha_k - F'^{-1} (\vec \alpha_k) \cdot F(\alpha)$, где
$F' (\vec \alpha_k)=\begin{pmatrix} \frac{\partial F_{1}}{\partial \alpha_1} & \frac{\partial F_{1}}{\partial \alpha_2}  \\ \frac{\partial F_{2}}{\partial \alpha_1}  & \frac{\partial F_{2}}{\partial \alpha_2}  \end{pmatrix}$, но

$F' (\vec \alpha_k)=\begin{pmatrix} -1 & 0  \\ 0  & 0 \end{pmatrix}$, а эта матрица обратной матрицы не имеет, что в этом случае делать?

 
 
 
 Re: Дифур методом стрельбы
Сообщение18.08.2014, 16:20 
Felt в сообщении #897092 писал(а):
Дано уравнение
$y''+y' \sin(x)+ y \cos(x)=0$ с краевыми условиями
$y(0)=\alpha$, $y'(\frac{\pi}{4})=\beta$

Пусть $Y(x)$ -- фундаментальная матрица системы $y'=z,\quad z'=...$
Вам надо найти численно $W=Y(\pi/4)$, а потом решить систему линейных уравнений
$W\cdot(\alpha,v)^T=(u,\beta)^T$ относително неизвестных $u,v$

 
 
 
 Re: Дифур методом стрельбы
Сообщение18.08.2014, 18:59 
Ну не обязательно использовать метод Ньютона - попробуйте метод половинного деления. Только не всегда, наверное, эта задача будет иметь решение. Там вроде цикл есть, через который не перескочить интегральной кривой - wolfram.

 
 
 
 Re: Дифур методом стрельбы
Сообщение18.08.2014, 19:07 
Yu_K в сообщении #897129 писал(а):
Там вроде цикл есть, через который не перескочить интегральной кривой


Не пойдет. Система неавтономная

-- Пн авг 18, 2014 19:09:42 --

задача имеет решение и при том единственное при любых значениях $\alpha,\beta$

-- Пн авг 18, 2014 19:15:58 --

$$W\simeq \left( \begin{matrix}0.7461& 0.6499 \\ -0.5275 & 0.5404 \end{matrix} \right) $$

 
 
 
 Re: Дифур методом стрельбы
Сообщение19.08.2014, 08:59 
Felt в сообщении #897092 писал(а):
Дифур методом стрельбы

Метод пристрелки актуален для поиска собственных чисел, у Вас же -- просто фиксированная краевая задача, в которой правые части линейны по параметрам. Потому воспользуйтесь советом Oleg Zubelevich, расшифровав всё им зашифрованное (в частности, заменив слово "фундаментальная" на более уместное).

 
 
 
 Re: Дифур методом стрельбы
Сообщение19.08.2014, 12:35 
У меня задание - решить это уравнение именно методом стрельбы.
Но выход есть другой: воспользоваться тем, что краевые условия линейны и можно даже обойтись без итераций и найти нужные начальные условия только решив систему уравнений, поскольку если условия выглядят как:
$U \vec y (0) + V \vec y(b) = c$
то найдя решение
$\varphi_i (x)$, являющееся решением уравнения с начальными условями $\vec y (a) = e_i$ и $\vec y(x, 0)$ решение условий $\vec y(a)=\vec 0$. Обозначим $\varphi (x) = (\varphi_1, ..., \varphi_n)$, тогда $\vec y(x, \alpha) (x)=\varphi (x) \cdot \vec \alpha + \vec y(x, 0)$ является решением условия $\vec y(a)=\vec \alpha$. Благодаря линейности
$U \alpha + V \varphi (b) \cdot \vec \alpha + V \vec y (b,0)=(U + V \varphi (b)) \cdot \vec \alpha + V \vec y (b,0)= c$
остается только решить систему для $\vec \alpha$ и найти нужные начальные условия.

 
 
 
 Re: Дифур методом стрельбы
Сообщение19.08.2014, 13:28 
Felt в сообщении #897349 писал(а):
У меня задание - решить это уравнение именно методом стрельбы.

Значит, задавальщик просто не понимает, что такое метод стрельбы.

Felt в сообщении #897349 писал(а):
остается только решить систему для $\vec \alpha$ и найти нужные начальные условия.

Это всё тоже в данном случае довольно бессмысленно. Надо просто взять два решения (найденные, естественно, численно): $y_0(x)$, удовлетворяющее условию $y_0(0)=0$, и $y_1(x)$, удовлетворяющее условию $y_1(0)=1$. Условия на производную в нуле можно взять какие угодно (но, естественно, $y_0'(0)\neq0$); например, для определённости пусть $y_0'(0)=1,\ y_1'(0)=0$, т.е. пусть это пара канонических решений, хотя такой выбор и необязателен. В любом случае решением исходной задачи будет просто $y(x)=\alpha\,y_1(x)+\dfrac{\beta-\alpha\,y_1'(b)}{y_0'(b)}\,y_0(x)$.

 
 
 [ Сообщений: 7 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group