Цель лекции: Показать способы решения операторных уравнений а гильбертовом пространстве. Реализовать с помощью объектно-ориентированного программирования на C# классы для решения этих задач.
Как мы уже отмечали, многие математические задачи могут быть записаны в виде операторных уравнений. И одной из основных задач при рассмотрении операторных уравнений является нахождение обратного оператора. Мы рассмотрим методы решения операторных уравнений, основанные на методе Галеркина. Основным модельным примером в нашем рассмотрении будет краевая (двухточечная) задача для обыкновенного дифференциального уравнения второго порядка.
Мы будем рассматривать следующее уравнение$$-y''(x)+p(x)y'(x)+q(x)y(x)=f(x),\ x\in(0,\pi),$$ со следующими краевыми условиями$$y(0)=y(\pi)=0$$ Коэффициенты $$p(x)$$ и $$q(x)$$, а также функция $$f(x)$$ считаются известными. Однако в этой лекции мы будем рассматривать лишь случай, когда $$p(x)\equiv0$$, а $$q(x)\equiv q\ge0$$.
Используя результаты предыдущей лекции, мы будем рассматривать
следующее гильбертово пространство $$L_2(0,\pi)$$, в котором в
качестве базисных функций выбраны функции$$e_k=\sqrt{\frac{2}{\pi}}\sin kx,\ k=1,2,\dots.$$
Введем еще одно пространство, которое обозначим $$H^2(0,\pi)$$. Мы
будем говорить, что функция $$u\in L_2(0,\pi)$$ принадлежит
пространству $$H^2(0,\pi)$$, если
Операторный подход позволяет довольно просто получить решение
задачи 11.3. Чтобы вывести аналитико-численные формулы,
для решения задачи 11.3 представим функцию $$f$$ разложением
в ряд:$$f(x)=\sum\limits_{k=1}^\infty f_k\sqrt{\frac{2}{\pi}}\sin kx,$$
где
Единственный нетривиальный момент при применении нашего операторного подхода состоит в том, чтобы получить разложение правой части по выбранному базису. Однако поскольку для получения этого разложения нужно вычислять скалярные произведения, то мы можем воспользоваться ранее созданными классами для гильбертовых пространств.
Перейдем к программированию классов для реализации операторного подхода к решению задачи 11.1 - 11.2.
$$\begin{verbatim} // класс для вычисления оператора class TOE { TD2Q D2Q; public TOE(double q, TRFunc F) { D2Q = new TD2Q(q, new TL2Right(F)); } public double Y(double x) { return D2Q.Calc(x); } } // класс оператора class TD2Q : TL2Operator { double q; public TD2Q(double q, THElement u) : base(u) { if (q < 0) { this.q = 0; } else { this.q = q; } } public override double alpha(int k) { double kx = (double)k; return 1.0 / (kx * kx + q); } } \end{verbatim}$$ $$\begin{verbatim} // класс - базисные функции class TE_k : TRFunc { int k; public TE_k(int k) : base(0, Math.PI) { this.k = k; } protected override TElement CalcVal(double x) { TElement res = new TElement(Math.Sqrt(2.0 / Math.PI) * Math.Sin((double)k * x)); return res; } } \end{verbatim}$$ $$\begin{verbatim} // класс - правые части уравнения class TL2Right : TL2Element { protected TLSpace Ld; protected TRFunc F; public TL2Right(TRFunc F) { Ld = new TLSpace(); this.F = F; } // разложение по базису public override double a(int k) { TE_k e_k = new TE_k(k); return Ld.inner(F, e_k); } } class TRight1 : TRFunc { public TRight1() : base(0, Math.PI) { } protected override TElement CalcVal(double x) { TElement res = new TElement(1.0); return res; } } \end{verbatim}$$ $$\begin{verbatim} class TRight2 : TRFunc { public TRight2() : base(0, Math.PI) { } protected override TElement CalcVal(double x) { TElement res = new TElement(Math.Sin(x)); return res; } } class TRight3 : TRFunc { public TRight3() : base(0, Math.PI) { } protected override TElement CalcVal(double x) { TElement res = new TElement(Math.Cos(x)); return res; } } \end{verbatim}$$Теперь будем решать численно нашу задачу для разных значений $$q$$ и правых частей $$f(x)$$.
$$\begin{verbatim} TRight1 F1 = new TRight1(); TOE OE = new TOE(0, F1); Console.WriteLine("q = 0; f(x)=1; Y(1) = {0}", OE.Y(1.0)); TRight2 F2 = new TRight2(); OE = new TOE(0, F2); Console.WriteLine("q = 0; f(x)=sin(x); Y(1) = {0}", OE.Y(1.0)); TRight3 F3 = new TRight3(); OE = new TOE(0, F3); Console.WriteLine("q = 0; f(x)=cos(x); Y(1) = {0}", OE.Y(1.0)); OE = new TOE(10.0, F1); Console.WriteLine("q = 10; f(x)=sin(x); Y(1) = {0}", OE.Y(1.0)); OE = new TOE(10.0, F2); Console.WriteLine("q = 10; f(x)=sin(x); Y(1) = {0}", OE.Y(1.0)); OE = new TOE(10.0, F3); Console.WriteLine("q = 10; f(x)=cos(x); Y(1) = {0}", OE.Y(1.0)); \end{verbatim}$$В итоге получим следующие результаты:
$$\begin{verbatim} q = 0; f(x)=1; Y(1) = 1.07079628676603 q = 0; f(x)=sin(x); Y(1) = 0.841470984797919 q = 0; f(x)=cos(x); Y(1) = 0.176922106919835 q = 10; f(x)=sin(x); Y(1) = 0.0956527832996927 q = 10; f(x)=sin(x); Y(1) = 0.0764973622552322 q = 10; f(x)=cos(x); Y(1) = 0.0453741941981012 \end{verbatim}$$Сравним наши результаты с точными решениями при $$q=0$$. Задача$$-y''(x)=1,\ x\in(0,\pi),$$ $$y(0)=y(\pi)=0$$ Имеет точное решение$$y(x)=-\frac{1}{2}x^2+\frac{\pi}{2}x,$$ значение $$y(1)$$ равно$$y(1)=-\frac{1}{2}+\frac{\pi}{2}=1.0707963267948966192313216916398\dots.$$ Задача$$-y''(x)=\sin(x),\ x\in(0,\pi),$$ $$y(0)=y(\pi)=0$$ Имеет точное решение$$y(x)=\sin(x)$$ значение $$y(1)$$ равно$$y(1)=0.8414709848078965066525023216303\dots.$$ Задача$$-y''(x)=\cos(x),\ x\in(0,\pi),$$ $$y(0)=y(\pi)=0$$ Имеет точное решение$$y(x)=\cos x +\frac{2}{\pi}x-1$$ значение $$y(1)$$ равно$$y(1)=0.17692207823572106047647166093303\dots.$$ Мы видим, что наши численные результаты довольно точны. Однако если бы мы использовали аналитические выражения для коэффициентов Фурье, то точность и скорость вычислений были бы значительно выше. Это выражает тот факт, что использование теоретических знаний при конструировании численных методов могут значительно увеличить эффективность последних.
Ключевые термины
Гильбертово пространство $$L_2(0,\pi)$$ - наиболее известное
гильбертово
Краевая задача - дифференциальное уравнение с заданными условиями на решение на концах отрезка.
Метод Галеркина - общий метод для приближенного нахождения решений операторных уравнений.
Краткие итоги: Подробно рассмотрены методы численного решения краевой задачи для дифференциального уравнения второго порядка. С помощью реализованных классов, проведены различные вычислительные эксперименты.
Продемонстрировать на характерных примерах реализацию линейных операторов в сепарабельных гильбертовых пространствах.
Будем рассматривать абстрактное гильбертово пространство $$H$$, которое задано с помощью своего ортонормированного базиса $$e_k$$. Если в качестве пространства $$H$$ взять гильбертово пространство $$L_2(0,\pi)$$, то в качестве ортонормированного базиса можно взять систему функций$$e_0=\frac{1}{\sqrt{\pi}},$$ $$e_k=\sqrt{\frac{2}{\pi}}\cos kx,\quad k=1,2,\ldots.$$
Рассмотрим реализацию линейного оператора, действующего в пространстве $$H$$, заданного с помощью бесконечной матрицы. Зададим формально бесконечную матрицу $$\Lambda$$ как множество$$\Lambda=\{\lambda_{ij}\}_{i,j=0}^\infty,$$ где $$\lambda_{ij}$$ суть комплексные числа, которые убывают по модулю достаточно быстро.
Действие оператора $$\Lambda$$ на некоторый элемент$$x=\sum\limits_{k=0}^\infty x_ke_k$$ можно вычислить по формуле$$\Lambda x=\sum\limits_{k=0}^\infty\left(\sum\limits_{l=0}^\infty\lambda_{kl}x_l\right)e_k.$$ Мы будем предполагать, что все возникающие у нас ряды являющиеся сходящимися.
На лекциях мы встречались с операторами, которые представлялись
диагональной матрицей, и по сути сводились к умножению
В качестве примера рассмотрим оператор $$\Lambda_1$$, который задается матрицей$$\Lambda_1=\left\{\frac{1}{1+i^2+j^2}\right\}_{i,j=0}^\infty,$$ здесь - $$\lambda_{ij}=\frac{1}{1+i^2+j^2}$$.
Пусть мы рассматриваем пространство $$L_2(0,\pi)$$ с заданным выше ортонормированным базисом. Рассмотрим функцию $$f(x)=x$$. Эта функция представляется следующим рядом Фурье$$f(x)=\frac{1}{2}\pi^2+ \sum\limits_{k=1}^\infty\frac{2}{\pi}\frac{1}{k^2}((-1)^k-1)\cos kx$$ После действия нашим оператором $$\Lambda_1$$ мы получим функцию, которая представляется следующим рядом Фурье
$$\Lambda_1f(x)=\frac{1}{2}\pi^2+ \sum\limits_{k=1}^\infty\frac{2}{\pi}\sum\limits_{l=0}^\infty \frac{1}{1+k^2+l^2}\frac{1}{l^2}((-1)^l-1)\cos kx$$Рассмотрим еще интересный оператор $$\Lambda_2$$, действие которого можно описать следующим образом. Пусть задан элемент пространства $$H$$ своим рядом Фурье$$x=\sum\limits_{k=0}^\infty x_ke_k.$$ Тогда элемент $$y=\Lambda_2x$$ будет задаваться следующим рядом Фурье$$y=\sum\limits_{k=1}^\infty x_{k-1}e_k.$$ Посмотрим как действует этот оператор в пространстве $$L_2(0,\pi)$$. Рассмотрим простейшую функцию $$f(x)=1$$. Представим эту функцию в виде ряда Фурье$$1=\sqrt{\pi}e_0+0e_1+0e_2+\ldots$$ После действия оператора $$\Lambda_2$$ на эту функцию мы получим функцию $$\Lambda_2f(x)$$, представимую в виде$$\Lambda_2f(x)=\sqrt{\pi}e_1=\sqrt{\pi}\sqrt{\frac{2}{\pi}}\cos x=\sqrt{2}\cos x.$$
Для оператора $$\Lambda_2$$ можно привести обратный оператор $$\Lambda_3$$, который действует согласно следующей формуле$$\Lambda_3\left(\sum\limits_{k=1}^\infty x_ke_k\right)=\sum\limits_{k=0}^\infty x_{k+1}e_k.$$ Легко видеть, что для любого элемента $$x\in H$$ имеет место$$\Lambda_3\Lambda_2x=x.$$ Равенство$$\Lambda_2\Lambda_3x=x.$$ верно только для таких $$x\in H$$, для которых $$x_0=0$$.
Продемонстрировать на характерных примерах реализацию линейных операторов в сепарабельных гильбертовых пространствах.
Матричный оператор в сепарабельном гильбертовом пространстве вводится следующим образом. Пусть в рассматриваемом гильбертовом пространстве $$H$$ задан ортонормированный базис $$e_k$$. Действие матричного оператора $$\Lambda$$ на некоторый элемент$$x=\sum\limits_{k=0}^\infty x_ke_k$$ можно вычислить по формуле$$\Lambda x=\sum\limits_{k=0}^\infty\left(\sum\limits_{l=0}^\infty\la_{kl}x_l\right)e_k.$$ Предполагая, что все возникающие ряды являющиеся сходящимися.
Цель лекции: Показать способы решения операторных уравнений а гильбертовом пространстве. Реализовать с помощью объектно-ориентированного программирования на C# классы для решения этих задач.
Как мы уже отмечали, многие математические задачи могут быть записаны в виде операторных уравнений. И одной из основных задач при рассмотрении операторных уравнений является нахождение обратного оператора. Мы рассмотрим методы решения операторных уравнений, основанные на методе Галеркина. Основным модельным примером в нашем рассмотрении будет краевая (двухточечная) задача для обыкновенного дифференциального уравнения второго порядка.
Мы будем рассматривать следующее уравнение$$-y''(x)+p(x)y'(x)+q(x)y(x)=f(x),\ x\in(0,\pi),$$ со следующими краевыми условиями$$y(0)=y(\pi)=0$$ Коэффициенты $$p(x)$$ и $$q(x)$$, а также функция $$f(x)$$ считаются известными. Однако в этой лекции мы будем рассматривать лишь случай, когда $$p(x)\equiv0$$, а $$q(x)\equiv q\ge0$$.
Используя результаты предыдущей лекции, мы будем рассматривать
следующее гильбертово пространство $$L_2(0,\pi)$$, в котором в
качестве базисных функций выбраны функции$$e_k=\sqrt{\frac{2}{\pi}}\sin kx,\ k=1,2,\dots.$$
Введем еще одно пространство, которое обозначим $$H^2(0,\pi)$$. Мы
будем говорить, что функция $$u\in L_2(0,\pi)$$ принадлежит
пространству $$H^2(0,\pi)$$, если
Операторный подход позволяет довольно просто получить решение
задачи 11.3. Чтобы вывести аналитико-численные формулы,
для решения задачи 11.3 представим функцию $$f$$ разложением
в ряд:$$f(x)=\sum\limits_{k=1}^\infty f_k\sqrt{\frac{2}{\pi}}\sin kx,$$
где
Единственный нетривиальный момент при применении нашего операторного подхода состоит в том, чтобы получить разложение правой части по выбранному базису. Однако поскольку для получения этого разложения нужно вычислять скалярные произведения, то мы можем воспользоваться ранее созданными классами для гильбертовых пространств.
Перейдем к программированию классов для реализации операторного подхода к решению задачи 11.1 - 11.2.
$$\begin{verbatim} // класс для вычисления оператора class TOE { TD2Q D2Q; public TOE(double q, TRFunc F) { D2Q = new TD2Q(q, new TL2Right(F)); } public double Y(double x) { return D2Q.Calc(x); } } // класс оператора class TD2Q : TL2Operator { double q; public TD2Q(double q, THElement u) : base(u) { if (q < 0) { this.q = 0; } else { this.q = q; } } public override double alpha(int k) { double kx = (double)k; return 1.0 / (kx * kx + q); } } \end{verbatim}$$ $$\begin{verbatim} // класс - базисные функции class TE_k : TRFunc { int k; public TE_k(int k) : base(0, Math.PI) { this.k = k; } protected override TElement CalcVal(double x) { TElement res = new TElement(Math.Sqrt(2.0 / Math.PI) * Math.Sin((double)k * x)); return res; } } \end{verbatim}$$ $$\begin{verbatim} // класс - правые части уравнения class TL2Right : TL2Element { protected TLSpace Ld; protected TRFunc F; public TL2Right(TRFunc F) { Ld = new TLSpace(); this.F = F; } // разложение по базису public override double a(int k) { TE_k e_k = new TE_k(k); return Ld.inner(F, e_k); } } class TRight1 : TRFunc { public TRight1() : base(0, Math.PI) { } protected override TElement CalcVal(double x) { TElement res = new TElement(1.0); return res; } } \end{verbatim}$$ $$\begin{verbatim} class TRight2 : TRFunc { public TRight2() : base(0, Math.PI) { } protected override TElement CalcVal(double x) { TElement res = new TElement(Math.Sin(x)); return res; } } class TRight3 : TRFunc { public TRight3() : base(0, Math.PI) { } protected override TElement CalcVal(double x) { TElement res = new TElement(Math.Cos(x)); return res; } } \end{verbatim}$$Теперь будем решать численно нашу задачу для разных значений $$q$$ и правых частей $$f(x)$$.
$$\begin{verbatim} TRight1 F1 = new TRight1(); TOE OE = new TOE(0, F1); Console.WriteLine("q = 0; f(x)=1; Y(1) = {0}", OE.Y(1.0)); TRight2 F2 = new TRight2(); OE = new TOE(0, F2); Console.WriteLine("q = 0; f(x)=sin(x); Y(1) = {0}", OE.Y(1.0)); TRight3 F3 = new TRight3(); OE = new TOE(0, F3); Console.WriteLine("q = 0; f(x)=cos(x); Y(1) = {0}", OE.Y(1.0)); OE = new TOE(10.0, F1); Console.WriteLine("q = 10; f(x)=sin(x); Y(1) = {0}", OE.Y(1.0)); OE = new TOE(10.0, F2); Console.WriteLine("q = 10; f(x)=sin(x); Y(1) = {0}", OE.Y(1.0)); OE = new TOE(10.0, F3); Console.WriteLine("q = 10; f(x)=cos(x); Y(1) = {0}", OE.Y(1.0)); \end{verbatim}$$В итоге получим следующие результаты:
$$\begin{verbatim} q = 0; f(x)=1; Y(1) = 1.07079628676603 q = 0; f(x)=sin(x); Y(1) = 0.841470984797919 q = 0; f(x)=cos(x); Y(1) = 0.176922106919835 q = 10; f(x)=sin(x); Y(1) = 0.0956527832996927 q = 10; f(x)=sin(x); Y(1) = 0.0764973622552322 q = 10; f(x)=cos(x); Y(1) = 0.0453741941981012 \end{verbatim}$$Сравним наши результаты с точными решениями при $$q=0$$. Задача$$-y''(x)=1,\ x\in(0,\pi),$$ $$y(0)=y(\pi)=0$$ Имеет точное решение$$y(x)=-\frac{1}{2}x^2+\frac{\pi}{2}x,$$ значение $$y(1)$$ равно$$y(1)=-\frac{1}{2}+\frac{\pi}{2}=1.0707963267948966192313216916398\dots.$$ Задача$$-y''(x)=\sin(x),\ x\in(0,\pi),$$ $$y(0)=y(\pi)=0$$ Имеет точное решение$$y(x)=\sin(x)$$ значение $$y(1)$$ равно$$y(1)=0.8414709848078965066525023216303\dots.$$ Задача$$-y''(x)=\cos(x),\ x\in(0,\pi),$$ $$y(0)=y(\pi)=0$$ Имеет точное решение$$y(x)=\cos x +\frac{2}{\pi}x-1$$ значение $$y(1)$$ равно$$y(1)=0.17692207823572106047647166093303\dots.$$ Мы видим, что наши численные результаты довольно точны. Однако если бы мы использовали аналитические выражения для коэффициентов Фурье, то точность и скорость вычислений были бы значительно выше. Это выражает тот факт, что использование теоретических знаний при конструировании численных методов могут значительно увеличить эффективность последних.
Ключевые термины
Гильбертово пространство $$L_2(0,\pi)$$ - наиболее известное
гильбертово
Краевая задача - дифференциальное уравнение с заданными условиями на решение на концах отрезка.
Метод Галеркина - общий метод для приближенного нахождения решений операторных уравнений.
Краткие итоги: Подробно рассмотрены методы численного решения краевой задачи для дифференциального уравнения второго порядка. С помощью реализованных классов, проведены различные вычислительные эксперименты.
Продемонстрировать на характерных примерах реализацию линейных операторов в сепарабельных гильбертовых пространствах.
Будем рассматривать абстрактное гильбертово пространство $$H$$, которое задано с помощью своего ортонормированного базиса $$e_k$$. Если в качестве пространства $$H$$ взять гильбертово пространство $$L_2(0,\pi)$$, то в качестве ортонормированного базиса можно взять систему функций$$e_0=\frac{1}{\sqrt{\pi}},$$ $$e_k=\sqrt{\frac{2}{\pi}}\cos kx,\quad k=1,2,\ldots.$$
Рассмотрим реализацию линейного оператора, действующего в пространстве $$H$$, заданного с помощью бесконечной матрицы. Зададим формально бесконечную матрицу $$\Lambda$$ как множество$$\Lambda=\{\lambda_{ij}\}_{i,j=0}^\infty,$$ где $$\lambda_{ij}$$ суть комплексные числа, которые убывают по модулю достаточно быстро.
Действие оператора $$\Lambda$$ на некоторый элемент$$x=\sum\limits_{k=0}^\infty x_ke_k$$ можно вычислить по формуле$$\Lambda x=\sum\limits_{k=0}^\infty\left(\sum\limits_{l=0}^\infty\lambda_{kl}x_l\right)e_k.$$ Мы будем предполагать, что все возникающие у нас ряды являющиеся сходящимися.
На лекциях мы встречались с операторами, которые представлялись
диагональной матрицей, и по сути сводились к умножению
В качестве примера рассмотрим оператор $$\Lambda_1$$, который задается матрицей$$\Lambda_1=\left\{\frac{1}{1+i^2+j^2}\right\}_{i,j=0}^\infty,$$ здесь - $$\lambda_{ij}=\frac{1}{1+i^2+j^2}$$.
Пусть мы рассматриваем пространство $$L_2(0,\pi)$$ с заданным выше ортонормированным базисом. Рассмотрим функцию $$f(x)=x$$. Эта функция представляется следующим рядом Фурье$$f(x)=\frac{1}{2}\pi^2+ \sum\limits_{k=1}^\infty\frac{2}{\pi}\frac{1}{k^2}((-1)^k-1)\cos kx$$ После действия нашим оператором $$\Lambda_1$$ мы получим функцию, которая представляется следующим рядом Фурье
$$\Lambda_1f(x)=\frac{1}{2}\pi^2+ \sum\limits_{k=1}^\infty\frac{2}{\pi}\sum\limits_{l=0}^\infty \frac{1}{1+k^2+l^2}\frac{1}{l^2}((-1)^l-1)\cos kx$$Рассмотрим еще интересный оператор $$\Lambda_2$$, действие которого можно описать следующим образом. Пусть задан элемент пространства $$H$$ своим рядом Фурье$$x=\sum\limits_{k=0}^\infty x_ke_k.$$ Тогда элемент $$y=\Lambda_2x$$ будет задаваться следующим рядом Фурье$$y=\sum\limits_{k=1}^\infty x_{k-1}e_k.$$ Посмотрим как действует этот оператор в пространстве $$L_2(0,\pi)$$. Рассмотрим простейшую функцию $$f(x)=1$$. Представим эту функцию в виде ряда Фурье$$1=\sqrt{\pi}e_0+0e_1+0e_2+\ldots$$ После действия оператора $$\Lambda_2$$ на эту функцию мы получим функцию $$\Lambda_2f(x)$$, представимую в виде$$\Lambda_2f(x)=\sqrt{\pi}e_1=\sqrt{\pi}\sqrt{\frac{2}{\pi}}\cos x=\sqrt{2}\cos x.$$
Для оператора $$\Lambda_2$$ можно привести обратный оператор $$\Lambda_3$$, который действует согласно следующей формуле$$\Lambda_3\left(\sum\limits_{k=1}^\infty x_ke_k\right)=\sum\limits_{k=0}^\infty x_{k+1}e_k.$$ Легко видеть, что для любого элемента $$x\in H$$ имеет место$$\Lambda_3\Lambda_2x=x.$$ Равенство$$\Lambda_2\Lambda_3x=x.$$ верно только для таких $$x\in H$$, для которых $$x_0=0$$.
Продемонстрировать на характерных примерах реализацию линейных операторов в сепарабельных гильбертовых пространствах.
Матричный оператор в сепарабельном гильбертовом пространстве вводится следующим образом. Пусть в рассматриваемом гильбертовом пространстве $$H$$ задан ортонормированный базис $$e_k$$. Действие матричного оператора $$\Lambda$$ на некоторый элемент$$x=\sum\limits_{k=0}^\infty x_ke_k$$ можно вычислить по формуле$$\Lambda x=\sum\limits_{k=0}^\infty\left(\sum\limits_{l=0}^\infty\la_{kl}x_l\right)e_k.$$ Предполагая, что все возникающие ряды являющиеся сходящимися.
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.