Цель лекции: Показать как работать с неограниченными линейными операторами в бесконечномерных пространствах.
В функциональном анализе большое
Если пространства $$\Bbb{X}$$ и $$\Bbb{Y}$$ банаховы пространства, то можно рассматривать непрерывные операторы. Оператор $$A$$ называется непрерывным, если $${\cal D}(A)=\Bbb{X}$$ и для любой сходящейся в $$\Bbb{X}$$ последовательности $$x_n$$ имеет место$$\lim\limits_{n\to\infty}Ax_n=A\lim\limits_{n\to\infty}x_n.$$ Для любого ограниченного оператора можно ввести конечную норму этого оператора по формуле$$\|A\|=\sup\limits_{x\in\Bbb{X},x\ne0}\frac{\|Ax\|_\Bbb{Y}}{\|x\|_\Bbb{X}}= \sup\limits_{x\in\Bbb{X},\|x\|_\Bbb{X}\le1}\|Ax\|_\Bbb{Y}.$$ Соответственно, любой линейный непрерывный оператор является ограниченным (верно и обратное).
В конечномерном случае, когда $$\Bbb{X}=\Bbb{R}^n$$, $$\Bbb{Y}=\Bbb{R}^n$$ линейные операторы являются матрицами $$n\times n$$. Примером неограниченного оператора является оператор дифференцирования. Пусть $$\Bbb{X}=\Bbb{Y}=C[a,b]$$, множество $$D$$ состоит из непрерывных на $$[a,b]$$ функций, имеющих непрерывную производную, тогда оператор$$A[f]=\frac{df}{dx}$$ является линейным оператором.
Мы будем рассматривать линейные операторы в бесконечномерных гильбертовых пространствах. Пусть $$\Bbb{H}$$ - такое гильбертово пространство, что существует бесконечная последовательность линейно независимых элементов $$e_k\in\Bbb{H}$$ таких, что$$(e_k,e_l)_\Bbb{H}=0,\quad k\ne l$$ и$$(e_k,e_k)_\Bbb{H}=1.$$ Также будем предполагать, что любой элемент пространства $$\Bbb{H}$$ однозначно представляется рядом$$u=\sum\limits_{k=1}^\infty u_ke_k,$$ где ряд сходится по метрике пространства $$\Bbb{H}$$. Элементы $$\{e_k\}$$ называются ортонормированным базисом, а сам ряд - абстрактными рядом Фурье. Числа $$u_k$$ называются коэффициентами Фурье, и для них имеет место следующая формула$$u_k=(u,e_k)_\Bbb{H}.$$ Имеет место следующее равенство, называемое равенство Парсеваля $$\|u\|_\Bbb{H}=\left(\sum\limits_{k=1}^\infty|u_k|^2\right)^{1/2}.$$
Таким образом, чтобы задать любой элемент пространства $$\Bbb{H}$$
достаточно задать последовательность
Иногда удобно рассматривать ряды, где $$k=0,1,\cdots$$ или $$k=0,\pm1,\pm2,\cdots$$. Для этих случаев все аналогично.
Любой оператор в гильбертовом пространстве можно задать как
преобразование последовательности
Большой интерес представляют такие линейные операторы, которые можно представить последовательностью чисел (вообще говоря, комплексных) $$\alpha_k$$, а действие этого оператора на элемент следующим образом. Для любого$$u=\sum\limits_{k=1}^\infty u_ke_k$$ имеем$$A[u]=\sum\limits_{k=1}^\infty \alpha_ku_ke_k.$$ Если имеет место оценка $$|\alpha_k|\le M$$, то такой оператор будет ограниченным (и непрерывным). Такие операторы мы будем называть диагональными.
Классическим примером гильбертова пространства является пространство $$L_2(0,2\pi)$$ - измеримых на $$[0,2\pi]$$ функций и имеющих интегрируемый по Лебегу квадрат модуля на $$[0,2\pi]$$. Скалярное произведение задается формулой$$(f,g)_{L_2(0,2\pi)}=\int\limits_0^{2\pi}f(x)\overline{g(x)}dx.$$ Базис в этом пространстве можно задать с помощью следующих функций$$e_k=\frac{1}{\sqrt{2\pi}}e^{ikx},\quad k=0,\pm1,\pm2,\cdots.$$ Зададим в это пространстве линейный оператор с помощью последовательности $$\alpha_k=ik$$, тогда этот оператор будет оператором дифференцирования. Как мы видим, этот оператор не будет ограниченным и будет определен не на всех функциях, а только на тех функциях, на которых будет сходится ряд$$\sum\limits_{k=0}^\infty|\alpha_ku_k|^2<\infty.$$ С помощью разложения по базису достаточно легко можно вычислять действие оператора. Разумеется, что такое разложение оператора зависит от выбора базиса, который можно выбирать многими способами.
Обратимся к вопросу об объектно-ориентированнной реализации элементов гильбертовых
пространств и линейных диагональных операторов.$$\begin{verbatim}
abstract class THElement
{
abstract public double a(int k);
}
abstract class THOperator
{
THElement u;
public THOperator(THElement u)
{
this.u = u;
}
abstract protected double alpha(int k);
public double a(int k)
{
return alpha(k) * u.a(k);
}
}
\end{verbatim}$$
Здесь мы описали два абстрактных класса. Первый $$THElement$$
предназначен для описания
Рассмотрим пространство $$L_2(0,\pi)$$ в котором выберем следующий
базис$$e_k=\sqrt{\frac{2}{\pi}}\sin kx,\quad k=1,2,\cdots.$$
Рассмотрим функцию$$f(x)=x(\pi-x).$$
В разложении по нашему базису эта функция имеет следующий вид$$f(x)=\sum\limits_{k=1}^\infty
-\frac{4}{\pi}\frac{(-1)^k-1}{k^3}\sin kx.$$
Здесь
Проверим наши теоретические выкладки с помощью компьютерного моделирования на C#. Для этого мы реализуем следующие классы.$$\begin{verbatim} abstract class TL2Element : THElement { public double Calc(double x) { double res = 0; for (int k = 1; k <= 1000; k++) { res += a(k) * Math.Sin((double)k * x); } res *= Math.Sqrt(2.0 / Math.PI); return res; } } class TL2F1 : TL2Element { public override double a(int k) { double kx = (double)k; if ((k % 2) == 0) { return 0; } else { return -2.0 * Math.Sqrt(2.0 / Math.PI) * (-2.0) * (1.0 / (kx * kx * kx)); } } } \end{verbatim}$$ $$\begin{verbatim} class TL2F2 : TL2Element { public override double a(int k) { double kx = (double)k; if ((k % 2) == 0) { return 0; } else { return - Math.Sqrt(2.0 / Math.PI) * (-2.0) * (1.0 / kx); } } } \end{verbatim}$$ $$\begin{verbatim} abstract class TL2Operator : THOperator { public TL2Operator(THElement u) : base(u) { } public double Calc(double x) { double res = 0; for (int k = 1; k <= 1000; k++) { res += a(k) * Math.Sin((double)k * x); } res *= Math.Sqrt(2.0 / Math.PI); return res; } } class TD2Operator : TL2Operator { public TD2Operator(THElement u) : base(u) { } public override double alpha(int k) { double kx = (double)k; return -(kx * kx); } } \end{verbatim}$$ Теперь попробуем вычислить значения действия оператора в заданной точке.$$\begin{verbatim} TL2F1 F1 = new TL2F1(); TL2F2 F2 = new TL2F2(); TD2Operator D2 = new TD2Operator(F1); Console.WriteLine("D2[x(pi-x)](1) = {0}", D2.Calc(1.0)); D2 = new TD2Operator(F2); Console.WriteLine("D2[1](1) = {0}", D2.Calc(1.0)); \end{verbatim}$$ В итоге получим:$$\begin{verbatim} D2[x(pi-x)](1) = -1.99914825586894 D2[1](1) = 425.069483543905 \end{verbatim}$$ Как видим, первое значение довольно точно совпадает с точным, а второе значение показывает, что применять оператор $${\cal D}^2$$ к функции $$f(x)=1$$ нельзя.
Ключевые термины
Абстрактный ряд Фурье - аналог ряда Фурье в гильбертовом пространстве.
Диагональный оператор - оператор, который можно задать путем умножения коэффициентов абстрактного ряда Фурье на числа.
Линейный оператор - линейное отображение одного линейного пространства в другое.
Непрерывный оператор - непрерывное отображение одного метрического пространства в другое.
Краткие итоги: Приведена конструкционная реализация линейных неограниченных операторов в гильбертовом пространстве. Реализованы классы операторов, для представления линейных операторов на языке C#.
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.