Компьютерная алгебра в программе Mathematica 4

         

Векторный анализ —VectorAnalysis



Векторный анализ —VectorAnalysis

Подпакет VectorAnalysis содержит множество функций, используемых при выполнении векторного анализа. Здесь надо иметь в виду, что речь идет не о векторах как представителях одномерных массивов, которые рассматривались ранее. В данном случае вектор — это направленный отрезок прямой в пространстве, заданном той или иной системой координат.

Системы координат и их преобразования

Заметная часть функций подпакета VectorAnalysis относится к заданию и преобразованию координат:

  • Coordinates [ ] — возвращает имена переменных текущей системы координат;


  • Coordinates [coordsys] — возвращает имена переменных системы координат coordsys;
  • SetCoordinates [coordsys] — устанавливает систему координат coordsys с текущими переменными;
  • Coordinates [coordsys, {vars}] — устанавливает систему координат coordsys с переменными, заданными списком {vars }.
Ниже даны названия систем координат и соответствующие им представления.

Наименование

Представление

Прямоугольные

Cartesian [х, у, z]

Цилиндрические

Cylindrical [r, theta, z]

Сферические

Spherical [r, theta, phi]

Параболические цилиндрические

ParabolicCylindrical [u, v, z]

Параболические

Paraboloidal [u, v, phi]

Эллиптические цилиндрические

EllipticCylindrical [u, v, z, a]

Вытянутые сфероидальные

ProlateSpheroidal [xi, eta, phi, a]

Сплющенные сфероидальные

OblateSpheroidal [xi, eta, phi, a]

Биполярные

Bipolar[u, v, z, a]

Бисферические

Bispherical [u, v, phi, a]

Тороидальные

Toroidal [u, v, phi, a]

Конические

Conical [lambda, mu, nu, a, b]

Конфокальные эллипсоидальные

ConfocalEllipsoidal [lambda, rnu, nu, a, b, c]

Конфокальные параболические

ConfocalParaboloidal [lambda, mu, nu, a, bj

Например, параболическую систему координат можно задать следующим образом:

SetCoordinates[Paraboloidal[x, у, z] ]

Paraboloidal [x, у, z]

{CoordinateSystem, Coordinates[]}

{Paraboloidal, {x, y, z}}

Ряд функций служит для контроля и установки параметров систем координат:

  • CoordinateRanges [ ] — возвращает пределы изменения переменных текущей координатной системы;
  • Parameters [ ] — возвращает параметры текущей координатной системы;
  • ParametersRanges [ ] — возвращает пределы изменения параметров текущей координатной системы;
  • CoordinateRanges [coordsys] — возвращает пределы изменения переменных координатной системы coordsys;
  • Parameters [coordsys] — возвращает параметры координатной системы coordsys;
  • ParametersRanges [coordsys] — возвращает пределы изменения параметров координатной системы coordsys;
  • SetCoordinates [coordsys, {vars,param} ] — устанавливает параметры текущей координатной системы как параметры coordsys с переменными vars и параметрами param.
Ниже представлены примеры применения этих функций:

CoordinateRanges[]

{0<Х<бесконечности,0<Y<бесконечность,-л<Z<=л}

Parameters[]

{}

ParameterRanges[ ]

Coordinates[Conical], CoordinateRanges[Conical]

{{Llanibda, Мmu, Nnu}, {-бесконечность< Llambda< бесконечность, l< Mmu2 < 4, Nnu2< 1}}

Parameters[Bipolar],ParameterRanges[Bipolar]

{{1}, 0< #1<бесконечность}

Для преобразования координат служат следующие функции:

  • CoordinatesToCartesian [pt] — преобразование текущих координат в декартовы;
  • CoordinatesToCartesian [pt, coordsys] — преобразование координат coordsys в декартовы;
  • CoordinatesFromCartesian [pt] — преобразование из декартовых координат в текущие;
  • CoordinatesFromCartesian [pt, coordsys] — преобразование из декартовых координат в координаты coordsys.
Эти примеры демонстрируют преобразования координат:

CoordinatesToCartesian[{I, Pi/3, Pi/3}, Spherical]

CoordinatesToCartesian [u, v, phi}, Bipolar]

CoordinatesFromCartesian [ {x, y, z} , Bipolar]

{-2Im[ArcCoth[x+ Iy]] , 2Re[ArcCoth[x+ Iy] ] , z}

Функции векторного анализа

Помимо функций для задания и преобразования систем координат подпакет Vector An a lysis содержит ряд функций собственно векторного анализа:

  • DotProduct [vl, v2] — возвращает скалярное произведение векторов vl и v2, заданных в текущей системе координат;
  • CrossProduct [vl,v2] — возвращает векторное произведение векторов vl и v2, заданных в текущей системе координат;
  • ScalarTripleProduct [vl, v2, v3 ] — возвращает тройное скалярное произведение для векторов vl, v2 и v3, заданных в текущей системе координат;
  • DotProduct [vl, vl, coordsys ] — возвращает скалярное произведение векторов vl и v2, заданных в системе координат coordsys;
  • CrossProduct [vl, v2, coordsys] — возвращает векторное произведение векторов vl и v2, заданных в системе координат coordsys.
Примеры выполнения этих операций представлены ниже:

SetCoordinates[ParabolicCylindrical[ ]]

ParabolicCylindrical[Uu, W, Zz]

DotProduct[{1.2, 1.1, 0}, {5.4, -2, 1.2}]

-12.8093

CrossProduct[{1.2, 1.1, 0}, {5.4, -2, 1.2}]

{-1.78157, 0.0774597, -17.8476}

ScalarTripleProduct[{1, 0, 1}, {1, 1, 0}, {0, 1, 1}, Cartesian]

2

Для вычисления производной дуги служат функции:

  • ArcLengthFactor [ { fx, f у, f z}, t] — дает дифференциал длины дуги, заданной параметрически с параметром t в текущей системе координат;
  • ArcLengthFactor [ {fx, f у, fz}, t, coordsys] — дает дифференциал длины дуги, заданной параметрически с параметром t в системе координат coordsys
Примеры вычисления дифференциалов и длин дуг с помощью этих функций:

param = {Cos[t], Sin[t], t}

{Cos[t], Sin[t], t}

ArcLengthFactor[ param, t, Cartesian] //Simplify

корень из 2

f[x_, y_, z_] := x^2 y^2 z

Integrate[ f[param] ArcLengthFactor[

param, t, Cartesian], {t, 0, 2 Pi}] // Simplify

Ряд функций служит для создания матрицы Якоби (матрицы частных производных) и вычисления относящихся к ней понятий:

  • JacobianMatrix [ ] — возвращает матрицу Якоби, определенную в текущих координатах;
  • JacobianMatrix [pt] — возвращает матрицу Якоби в точке pt и в текущих координатах;
  • JacobianMatrix [coordsys] — возвращает матрицу Якоби, определеннук в системе координат coordsys;
  • JacobianMatrix [pt, coordsys] — возвращает матрицу Якоби в точке pt, определенную в системе координат coordsys;
  • JacobianDeterminant [], JacobianDeterminant [pt] и т. д. — вычисление детерминанта матрицы Якоби при указанных выше определениях;
  • ScaleFactor [ ], ScaleFactor [pt] и т. д. — вычисление масштабного фактора при указанных выше определениях.
Применение этих функций поясняют следующие примеры:

JacobianMatrix[Cartesian[x, у, z]]

{{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}

JacobianMatrix[Spherical[r, t, p] ]

{{Cos[p] Sin[t] , rCos[p] Cos[t] ,-rSin[p] Sin[t]},

{Sin[p] Sin[t] , rCos[t] Sin[p] , rCos[p] Sin[t]},

{Cos[t] , -rSin[t], 0}}

JacobianDeterminant[Spherical[r, t, p] ]

r^2Sin[t]

Integrate[r^2 JacobianDeterminant[ Spherical[r, theta, phi]],

{r, 0, 2}, {theta, 0, Pi}, {phi, -Pi, Pi}]

128n/5

Следующие функции определяют ряд характеристик векторного поля:

  • Div[f] — возвращает дивергенцию векторного поля f в текущей системе координат;
  • Curl [f ] — возвращает вихрь (ротор) векторного поля f в текущей системе координат;
  • Grad[f ] — возвращает градиент векторного поля f в текущей системе координат;
  • Laplasian [f] — возвращает лапласиан векторного поля f в текущей системе координат;
  • Вiharmonic [f] — возвращает лапласиан лапласиана векторного поля f в текущей системе координат;
  • Div [f, coordsys], Curl [f, coordsys] и т. д. — указанные выше функции в системе координат coordsys.
Приведем примеры использования этих функций:

Laplacian[x*y^2*z^3,ProlateSpheroidal[х, у, z]]

(Csc[y] Csch[x] (y2z3Cosh[x] Sin [у] +

2xyz3Cos[y] Sirih[x] +2xz3Sin[y] Sinh[x] +

6xy2zCsc[y] Csch[x] (Sin[y]2+ Sinh[x]2))) /

(Sin[y]2+Sinh[x]2)

Grad[x^2 y^3 z^4,ProlateSpheroidal[x, у, z]]



Содержание раздела