Компьютерный практикум по методам математической физики с использованием системы Mathematica. Уравнения в частных производных и интегральные уравнения. Дорофеев Д.Л - 24 стр.

UptoLike

двух элементов с именами x и y. Вот примеры работы с такими шабло-
нами:
In :x
2
t
3
r/. smth
_
_
2
x
2
t
3
r/.
_
n
_
n
Out :4r
6r
Приведенные примеры демонстрируют использование имени шабло-
на.
Важно отметить, что Mathematica не проверяет эквивалентность
двух выражений с математической точки зрения. Так, шаблону (1+x
_
)
n
-
соответствуют выражения (1+a)
2
или (1+b
3
)
5
, а выражение 1+2a+a
2
нет. Чтобы узнать, какой шаб лон использует Mathematica при прове рке
шаблонов (pattern matching), можно воспользоват ься уже извест ной
функцией FullForm:
In :FullForm[1 + 2a + a
2
]
FullForm[(1 + a)
2
]
Out :Plus[1, Times[2, a], Power[a, 2]]
Power[Plus[1, a], 2]
Таким образом, несмотря на математическую эквивалентность двух
выражений, их внутреннее представление в Mathematica различно.
В Mathematica имее тся ряд функций, которые могут выбирать вы-
ражения, с о о т в етствующие шаблону: Select, Cases, Count, Position.
Пусть имеется список {
x
y
,
x
y
2
, x, x y} и нам надо выбрать все элем енты, в
которых x делится на y. Для эт ой цели воспольз уемся функцией Cases.
Функция Cases выбирает из исходного с писка эле м енты, которые соот-
ветствую заданному шаблону. Прежде чем использовать ее, следует вы-
яснить, какой шаблон необходимо применять для поиска. Во спользуемся
функцией FullForm:
In : FullForm[
x
y
]
Out : Times[x, Power[y, 1]]
Теперь, используя полученный шаблон, найдем искомые элементы
24
двух элементов с именами x и y. Вот примеры работы с такими шабло-
нами:

                 In :x2t3r/. smth_∧ _ → 2
                     x2t3r/. _∧ n_ → n
                Out :4r
                     6r

      Приведенные примеры демонстрируют использование имени шабло-
на.
     Важно отметить, что Mathematica не проверяет эквивалентность
двух выражений с математической точки зрения. Так, шаблону (1+x _)n-
соответствуют выражения (1+a)2 или (1+b3)5, а выражение 1+2a+a2 –
нет. Чтобы узнать, какой шаблон использует Mathematica при проверке
шаблонов (pattern matching), можно воспользоваться уже известной
функцией FullForm:

              In :FullForm[1 + 2a + a2]
                  FullForm[(1 + a)2]
             Out :Plus[1, Times[2, a], Power[a, 2]]
                  Power[Plus[1, a], 2]

    Таким образом, несмотря на математическую эквивалентность двух
выражений, их внутреннее представление в Mathematica различно.
    В Mathematica имеется ряд функций, которые могут выбирать вы-
ражения, соответствующие шаблону: Select, Cases, Count, Position.
                      x x
Пусть имеется список { , 2 , x, x y} и нам надо выбрать все элементы, в
                      y y
которых x делится на y. Для этой цели воспользуемся функцией Cases.
Функция Cases выбирает из исходного списка элементы, которые соот-
ветствую заданному шаблону. Прежде чем использовать ее, следует вы-
яснить, какой шаблон необходимо применять для поиска. Воспользуемся
функцией FullForm:
                                        x
                        In : FullForm[    ]
                                        y
                        Out : Times[x, Power[y, −1]]

      Теперь, используя полученный шаблон, найдем искомые элементы



                                     24