Цель лекции: Реализовать важный инструмент современной
математики -
В современной математике часто изложение построено на
использовании
Метрическим пространством называется пара $$(\Bbb{X},\varrho)$$, где $$\Bbb{X}$$ некоторое множество произвольной природы, а $$\varrho$$ числовая функция$$\varrho:\Bbb{X}\times\Bbb{X}\to\Bbb{R},$$ удовлетворяющая следующим условиям для любых $$x,y,z\in\Bbb{X}$$:
В этом случае функция $$\varrho$$ называется метрикой или расстоянием.
Метрика позволяет ввести фундаментальное понятие сходимости в
Приведем некоторые примеры
Пространство $$\Bbb{R}^n$$ с евклидовой метрикой$$\varrho(x,y)=|x-y|=\sqrt{(x_1-y_1)^2+\cdots+(x_n-y_n)^2}$$ является полным метрическим пространством.
Пространство непрерывных на $$[a,b], -\infty<a<b<\infty$$ функций $$C[a,b]$$ является полным метрическим пространством с метрикой$$\varrho(f,g)=\max\limits_{x\in[a,b]}|f(x)-g(x)|.$$ Это пространство в отличии от $$\Bbb{R}^n$$ является бесконечномерным функциональным пространством.
Во множестве непрерывных на $$[a,b]$$ функций можно ввести другую
метрику$$\varrho(f,g)=\int\limits_a^b|f(x)-g(x)|dx.$$
Это
Реализуем теперь абстрактное
Проверим "в бою" наши классы. Попробуем вычислить длину диагонали единичного куба.$$\begin{verbatim} TRn A = new TRn(3); TRn B = new TRn(3); A[1] = 0; A[2] = 0; A[3] = 0; B[1] = 1; B[2] = 1; B[3] = 1; TRnMetric M = new TRnMetric(); Console.WriteLine("R = {0}", M.rho(A, B)); \end{verbatim}$$ Запустим и увидим:$$\begin{verbatim} R = 1.73205080756888 \end{verbatim}$$ Длина диагонали единичного куба, как раз, и равна $$R=\sqrt{3}$$.
Среди
Сразу заметим, что любая норма порождает в нормированном пространстве метрику по формуле$$\varrho(x,y)=\|x-y\|.$$ Нормированное пространство, являющаяся полным, называется банаховым пространством. Рассмотренные ранее примеры метрических пространств являются также и нормированными пространствам:$$\|x\|_{\Bbb{R}^n}=\sqrt{x_1^2+\cdots+x_n^2},$$ $$\|f\|_{C[a,b]}=\max\limits_{x\in[a,b]}|f(x)|,$$ $$\|f\|_{L[a,b]}=\left(\int\limits_a^b|f(x)|^2dx\right)^{1/2}.$$ Соответственно пространства $$\Bbb{R}^n$$ и $$C[a,b]$$ являются банаховыми пространствами, а пространство $$L[a,b]$$ только нормированным.
Посмотрим как на C# выглядят нормированные (банаховы) пространства.$$\begin{verbatim} abstract class TNormSpace { public abstract double norm(object x); } class TCNormSpace : TNormSpace { public override double norm(object x) { double res = 0; TRFunc F = (TRFunc)x; double t = 0; // задаем шаг для расчета max double dt = (F.Get_b() - F.Get_a()) / 1000; while (t < F.Get_b()) { if (Math.Abs(F.CalcY(t)) > res) { res = Math.Abs(F.CalcY(t)); } t += dt; } return res; } } \end{verbatim}$$ Мы реализовали абстрактное нормированное пространство $$TNormSpace$$, а потом реализуем класс-наследник для пространства $$C[a,b]$$. Чтобы вычислить нормы некоторых функций реализуем эти функции.$$\begin{verbatim} class TXSinFunc : TRFunc { public TXSinFunc(double a, double b) : base(a, b) { } protected override TElement CalcVal(double x) { TElement res = new TElement(x * Math.Sin(x)); return res; } } class TXXFunc : TRFunc { public TXXFunc(double a, double b) : base(a, b) { } protected override TElement CalcVal(double x) { TElement res = new TElement(x * (1 - x)); return res; } } \end{verbatim}$$ Теперь посчитаем нормы этих функций.$$\begin{verbatim} TXSinFunc XSin = new TXSinFunc(0, 2.0 * Math.PI); TXXFunc XX = new TXXFunc(0, 1); TCNormSpace C = new TCNormSpace(); Console.WriteLine("||x*sin(x)||={0}", C.norm(XSin)); Console.WriteLine("||x*(1-x)||={0}", C.norm(XX)); \end{verbatim}$$ После запуска мы увидим$$\begin{verbatim} ||x*sin(x)||=4.81446969901559 ||x*(1-x)||=0.25 \end{verbatim}$$
Чтобы вычислять метрику между двумя функциями в пространстве с
помощью нормы реализуем еще один класс, который будет представлять
разность двух
Однако в некоторых
Предгильбертово пространство является также и нормированным и, соответственно, метрическим. Скалярное произведение порождает норму по формуле$$\|x\|=(x,x)^{1/2}.$$ Полное предгильбертово пространство называется гильбертовым.
Конечномерное пространство $$\Bbb{R}^n$$ является гильбертовым со скалярным произведением$$(x,y)_{\Bbb{R}^n}=x_1y_1+\cdots+x_ny_n.$$ В пространстве $$L[a,b]$$ также можно ввести скалярное пространство по формуле$$(f,g)_{L[a,b]}=\int\limits_a^bf(x)\overline{g(x)}dx.$$ Однако это пространство не будет полным, и, соответственно, гильбертовым.
Для двух ненулевых элементов вещественного предгильбертова
пространства можно ввести понятие угла $$\varphi$$. Пусть $$x\ne0$$ и $$y\ne0$$, тогда углом между этими элементами является величина$$\varphi=\arccos\frac{(x,y)}{\|x\|\|y\|}.$$
Теперь вычислим некоторые скалярные произведения.$$\begin{verbatim} TLSpace LSpace = new TLSpace(); Console.WriteLine("(sin x, cos x) = {0}", LSpace.inner(Sin, Cos)); Console.WriteLine("(sin x, sin x) = {0}", LSpace.inner(Sin, Sin)); Console.WriteLine("(x(1-x), sin x) = {0}", LSpace.inner(XX, Sin)); \end{verbatim}$$ В результате получим:$$\begin{verbatim} (sin x, cos x) = 3.94784157532637E-07 (sin x, sin x) = 3.14159265334141 (x(1-x), sin x) = 0.0779244027546068 \end{verbatim}$$ А теперь посчитаем углы между этими функциями. Для этого добавим в класс $$THSpace$$ метод для подсчета угла.$$\begin{verbatim} abstract class THSpace { public abstract double inner(object x, object y); public double Angle(object x, object y) { return Math.Acos(inner(x, y) / Math.Sqrt((inner(x, x) * inner(y, y)))); } } \end{verbatim}$$ Теперь выполним следующий код.$$\begin{verbatim} Console.WriteLine("Angle(sin x, cos x) = {0}", LSpace.Angle(Sin, Cos)); Console.WriteLine("Angle(sin x, sin x) = {0}", LSpace.Angle(Sin, Sin)); Console.WriteLine("Angle(x(1-x), sin x) = {0}", LSpace.Angle(XX, Sin)); \end{verbatim}$$ И получим следующий результат.$$\begin{verbatim} Angle(sin x, cos x) = 1.57079620111863 Angle(sin x, sin x) = 0 Angle(x(1-x), sin x) = 1.32760476887546 \end{verbatim}$$ Мы видим, что угол между $$\sin(x)$$ и $$\cos(x)$$ равен $$\frac{\pi}{2}=90^\circ$$, для таких элементов говорят, что они ортогональны. А угол между $$\sin(x)$$ и $$\sin(x)$$ равен нулю, что предсказуемо.
Ключевые термины
Банахово пространство - полное нормированное пространство.
Гильбертово пространство - полное предгильбертово пространство.
Метрика - функция на паре элементов метрического пространства, соответствующий аналог расстояния между элементами.
Метрическое пространство - абстрактное пространство в котором введена метрика.
Норма - функция на элементах нормированного пространства, аналог длинны.
Нормированное пространство - линейное пространство, в котором введена норма.
Предгильбертово пространство - линейное пространство, в котором введено скалярное произведение.
Скалярное произведение - функция на паре элементов предгильбертова пространства, удовлетворяющая аксиомам скалярного произведения.
Краткие итоги: Рассмотрены наиболее важные понятия
функционального анализа - метрические, нормированные, банаховы,
гильбертовы пространства. Даны объектно-ориентированные реализации этих
пространств. Проведены вычислительные эксперименты,
демонстрирующие
Цель лекции: Реализовать важный инструмент современной
математики -
В современной математике часто изложение построено на
использовании
Метрическим пространством называется пара $$(\Bbb{X},\varrho)$$, где $$\Bbb{X}$$ некоторое множество произвольной природы, а $$\varrho$$ числовая функция$$\varrho:\Bbb{X}\times\Bbb{X}\to\Bbb{R},$$ удовлетворяющая следующим условиям для любых $$x,y,z\in\Bbb{X}$$:
В этом случае функция $$\varrho$$ называется метрикой или расстоянием.
Метрика позволяет ввести фундаментальное понятие сходимости в
Приведем некоторые примеры
Пространство $$\Bbb{R}^n$$ с евклидовой метрикой$$\varrho(x,y)=|x-y|=\sqrt{(x_1-y_1)^2+\cdots+(x_n-y_n)^2}$$ является полным метрическим пространством.
Пространство непрерывных на $$[a,b], -\infty<a<b<\infty$$ функций $$C[a,b]$$ является полным метрическим пространством с метрикой$$\varrho(f,g)=\max\limits_{x\in[a,b]}|f(x)-g(x)|.$$ Это пространство в отличии от $$\Bbb{R}^n$$ является бесконечномерным функциональным пространством.
Во множестве непрерывных на $$[a,b]$$ функций можно ввести другую
метрику$$\varrho(f,g)=\int\limits_a^b|f(x)-g(x)|dx.$$
Это
Реализуем теперь абстрактное
Проверим "в бою" наши классы. Попробуем вычислить длину диагонали единичного куба.$$\begin{verbatim} TRn A = new TRn(3); TRn B = new TRn(3); A[1] = 0; A[2] = 0; A[3] = 0; B[1] = 1; B[2] = 1; B[3] = 1; TRnMetric M = new TRnMetric(); Console.WriteLine("R = {0}", M.rho(A, B)); \end{verbatim}$$ Запустим и увидим:$$\begin{verbatim} R = 1.73205080756888 \end{verbatim}$$ Длина диагонали единичного куба, как раз, и равна $$R=\sqrt{3}$$.
Среди
Сразу заметим, что любая норма порождает в нормированном пространстве метрику по формуле$$\varrho(x,y)=\|x-y\|.$$ Нормированное пространство, являющаяся полным, называется банаховым пространством. Рассмотренные ранее примеры метрических пространств являются также и нормированными пространствам:$$\|x\|_{\Bbb{R}^n}=\sqrt{x_1^2+\cdots+x_n^2},$$ $$\|f\|_{C[a,b]}=\max\limits_{x\in[a,b]}|f(x)|,$$ $$\|f\|_{L[a,b]}=\left(\int\limits_a^b|f(x)|^2dx\right)^{1/2}.$$ Соответственно пространства $$\Bbb{R}^n$$ и $$C[a,b]$$ являются банаховыми пространствами, а пространство $$L[a,b]$$ только нормированным.
Посмотрим как на C# выглядят нормированные (банаховы) пространства.$$\begin{verbatim} abstract class TNormSpace { public abstract double norm(object x); } class TCNormSpace : TNormSpace { public override double norm(object x) { double res = 0; TRFunc F = (TRFunc)x; double t = 0; // задаем шаг для расчета max double dt = (F.Get_b() - F.Get_a()) / 1000; while (t < F.Get_b()) { if (Math.Abs(F.CalcY(t)) > res) { res = Math.Abs(F.CalcY(t)); } t += dt; } return res; } } \end{verbatim}$$ Мы реализовали абстрактное нормированное пространство $$TNormSpace$$, а потом реализуем класс-наследник для пространства $$C[a,b]$$. Чтобы вычислить нормы некоторых функций реализуем эти функции.$$\begin{verbatim} class TXSinFunc : TRFunc { public TXSinFunc(double a, double b) : base(a, b) { } protected override TElement CalcVal(double x) { TElement res = new TElement(x * Math.Sin(x)); return res; } } class TXXFunc : TRFunc { public TXXFunc(double a, double b) : base(a, b) { } protected override TElement CalcVal(double x) { TElement res = new TElement(x * (1 - x)); return res; } } \end{verbatim}$$ Теперь посчитаем нормы этих функций.$$\begin{verbatim} TXSinFunc XSin = new TXSinFunc(0, 2.0 * Math.PI); TXXFunc XX = new TXXFunc(0, 1); TCNormSpace C = new TCNormSpace(); Console.WriteLine("||x*sin(x)||={0}", C.norm(XSin)); Console.WriteLine("||x*(1-x)||={0}", C.norm(XX)); \end{verbatim}$$ После запуска мы увидим$$\begin{verbatim} ||x*sin(x)||=4.81446969901559 ||x*(1-x)||=0.25 \end{verbatim}$$
Чтобы вычислять метрику между двумя функциями в пространстве с
помощью нормы реализуем еще один класс, который будет представлять
разность двух
Однако в некоторых
Предгильбертово пространство является также и нормированным и, соответственно, метрическим. Скалярное произведение порождает норму по формуле$$\|x\|=(x,x)^{1/2}.$$ Полное предгильбертово пространство называется гильбертовым.
Конечномерное пространство $$\Bbb{R}^n$$ является гильбертовым со скалярным произведением$$(x,y)_{\Bbb{R}^n}=x_1y_1+\cdots+x_ny_n.$$ В пространстве $$L[a,b]$$ также можно ввести скалярное пространство по формуле$$(f,g)_{L[a,b]}=\int\limits_a^bf(x)\overline{g(x)}dx.$$ Однако это пространство не будет полным, и, соответственно, гильбертовым.
Для двух ненулевых элементов вещественного предгильбертова
пространства можно ввести понятие угла $$\varphi$$. Пусть $$x\ne0$$ и $$y\ne0$$, тогда углом между этими элементами является величина$$\varphi=\arccos\frac{(x,y)}{\|x\|\|y\|}.$$
Теперь вычислим некоторые скалярные произведения.$$\begin{verbatim} TLSpace LSpace = new TLSpace(); Console.WriteLine("(sin x, cos x) = {0}", LSpace.inner(Sin, Cos)); Console.WriteLine("(sin x, sin x) = {0}", LSpace.inner(Sin, Sin)); Console.WriteLine("(x(1-x), sin x) = {0}", LSpace.inner(XX, Sin)); \end{verbatim}$$ В результате получим:$$\begin{verbatim} (sin x, cos x) = 3.94784157532637E-07 (sin x, sin x) = 3.14159265334141 (x(1-x), sin x) = 0.0779244027546068 \end{verbatim}$$ А теперь посчитаем углы между этими функциями. Для этого добавим в класс $$THSpace$$ метод для подсчета угла.$$\begin{verbatim} abstract class THSpace { public abstract double inner(object x, object y); public double Angle(object x, object y) { return Math.Acos(inner(x, y) / Math.Sqrt((inner(x, x) * inner(y, y)))); } } \end{verbatim}$$ Теперь выполним следующий код.$$\begin{verbatim} Console.WriteLine("Angle(sin x, cos x) = {0}", LSpace.Angle(Sin, Cos)); Console.WriteLine("Angle(sin x, sin x) = {0}", LSpace.Angle(Sin, Sin)); Console.WriteLine("Angle(x(1-x), sin x) = {0}", LSpace.Angle(XX, Sin)); \end{verbatim}$$ И получим следующий результат.$$\begin{verbatim} Angle(sin x, cos x) = 1.57079620111863 Angle(sin x, sin x) = 0 Angle(x(1-x), sin x) = 1.32760476887546 \end{verbatim}$$ Мы видим, что угол между $$\sin(x)$$ и $$\cos(x)$$ равен $$\frac{\pi}{2}=90^\circ$$, для таких элементов говорят, что они ортогональны. А угол между $$\sin(x)$$ и $$\sin(x)$$ равен нулю, что предсказуемо.
Ключевые термины
Банахово пространство - полное нормированное пространство.
Гильбертово пространство - полное предгильбертово пространство.
Метрика - функция на паре элементов метрического пространства, соответствующий аналог расстояния между элементами.
Метрическое пространство - абстрактное пространство в котором введена метрика.
Норма - функция на элементах нормированного пространства, аналог длинны.
Нормированное пространство - линейное пространство, в котором введена норма.
Предгильбертово пространство - линейное пространство, в котором введено скалярное произведение.
Скалярное произведение - функция на паре элементов предгильбертова пространства, удовлетворяющая аксиомам скалярного произведения.
Краткие итоги: Рассмотрены наиболее важные понятия
функционального анализа - метрические, нормированные, банаховы,
гильбертовы пространства. Даны объектно-ориентированные реализации этих
пространств. Проведены вычислительные эксперименты,
демонстрирующие
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.