Задание 2. Графическое представление вычисленной плоской волны.
Научившись вычислять плоскую волну (10) с точностью = 0.01, построим графическое изображение этой волны. Так как плоская волна (10) обладает цилиндрической симметрией, то явно выделим две цилиндрические координатыz,, а также волновое число электронаk.
(15)
Здесь коэффициенты инайдены в предыдущем задании, и будут использоваться во всех дальнейших заданиях в лабораторной работе 3 и лабораторной работе 4.
Обратим внимание на устранимую особенность в формуле (15) при kr0. Из справочника специальных функций находим формулу для бесселевых функций при малых значения аргумента.
(15a)
Здесь (p) - гамма функция. Используя формулу (15a) выясним поведение членов суммы (15) приkr0.
(15b)
Из формулы (15b) видно, что все члены ряда (15) стремятся к нулю приkr0, кроме члена сl=0. Этот член стремиться к единице.
(15c)
Отсюда следует, что ряд (15) равен единице при kr=0.
Напишем код функции (15) в пакете Mathematica, с учетом условия (15c), и с найденными значениями коэффициентови.

Далее мы собираемся полученную функцию (15) представить в графическом виде. Для этого заметим, что функция зависит от двух пространственных переменных zи. В цилиндрической системе координат радиуслежит в пределах
![]()
Формально в силу симметрии в формуле (15) этот интервал можно расширить.
![]()
Это будет означать, что плоская волна рассматривается в точках некоторой плоскости проходящей через ось Oz, как это показано на рисунке 8.

Рис. 8
Построим зависимость действительной части функции (15) от переменных zис помощью функцииPlot3D[].

Результат показан на рисунке 9.

Рис. 8
Изображение плоской волны получилось не слишком гладким. Это связано с тем, что функция Plot3D[].строит 3Dповерхность по умолчанию по 15 точкам вдоль каждой оси. Чтобы получить гладкую поверхность увеличим число точек вдоль осиzдо 51 точки. Вдоль осичисло точек можно уменьшить до 5 точек, так как в этом направлении функция (15) почти не изменяется. Изменение числа точек можно выполнить с помощью опцииPlotPoints{51,5}.
![]()
Улучшенный результат показан на рисунке 9.

Рис. 9
Для анализа полученной 3Dповерхности полезно построить линии уровня с помощью функцииContourPlot[]. Для примера построим поверхность для следующей функции
![]()
Применяем функцию Plot3D[].
![]()
Результат показан на рисунке 10.

Рис. 10
Применяем функцию ContourPlot[] для построения линий уровня.

Результат показан на рисунке 11.

Рис. 11
Задание состоит в следующем.Берем функцию Myexp[k,z,], вычисляющую плоскую волну. Используя графические функцииPlot3D[], иContourPlot[].строим 3Dповерхности и линии уровня для действительной части плоской волны в области –4z4 , –22 при различных волновых числахk= 0.1, 0.5, 1.0, 2.0, 5.0.
Кроме того, 3Dповерхность на рисунке 9 надо рассечь плоскостью=z/2, как это показано на рисунке 12.


Рис. 12
Затем необходимо изобразить полученную в сечении кривую с помощью функции Plot[].
Далее приведен пример расчета для k= 1.5.



Рис. 13
