Главная  Длительная эволюция 

[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [ 12 ] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86]

2.2. Подстановки 39

нужно сделать в одном конкретном выражении или же в нескольких, то по мере возникновения в этом необходимости применяется другой механизм, использующий функцию Rule.

Выражение Rule[lhs,rhs], или Ihs-> rhs, задает правило, в соответствии с которым может быть сделана подстановка вычисленного выражения rhs вместо Ihs. Выражение rhs вычисляется в момент задания Rule. Если rhs целесообразно вычислять в момент применения правила, то употребляется функция RuleDelayed, или Ihs :> rhs.

После того как подстановка определена в виде правила г1 = X а, она может быть применена к конкретному выражению с помощью функций ReplaceAlI (постфиксная форма /.):

ReplaceAll[Expand[(x--У + а)"2],г1], или Expand[(x-f у--а)2] /. г1

Подстановку целесообразно отдельно задавать и присваивать в качестве значения какому-либо символу только тогда, когда есть основания полагать, что она будет применяться несколько раз в ходе вычислений. Если же подстановка применяется один раз, то ее можно задать в виде второго аргумента функции ReplaceAlI непосредственно в момент соверщения подстановки:

(х + у-На)-2 /. х-а (2а+ 6)2

Функция ReplaceAlI позволяет осуществить несколько подстановок одновременно. Тогда эти подстановки должны быть оформлены в виде списка и заданы вторым аргументом этой функции:

(х--у + а)2 /. {х-а,у-> Ь} (2а+ 6)2



Иногда возникает необходимость делать подстановки повторно. Предположим, что в выражении Expand[(x-by-f-a)~2] нужно избавиться от х и заменив i на а, у на ах, т.е. в конечном счете у на а. Тогда можно сделать либо подстановку {у ах,х а}, либо применить два раза подстановку {х а,у ах}. Последнее делают с помощью функции ReplaceRepeated, или в постфиксной форме .{ха,у ах):

Expand[(x + у + а)2 .{х а,у ах}] 4а2 -f- 4аЗ -f- а

После подстановки могут возникнуть выражения вида (х*)", которые можно привести к виду х*" с помощью функции Power Expand. Эта функция преобразует (хк)п в х-пкп и {х-к)п в х{кп), какого бы вида ни было п. Преобразования, сделанные с помощью PowerExpand, корректны в общем случае, только если п есть целое, а х и fc положительные.

2.3. Преобразования рациональных выражений

Дробь, числитель и знаменатель которой - полиномы, называется рациональным выражением. Уже знакомые нам функции Expand и Factor могут применяться к рациональным выражениям. Функция Expand раскрывает произведения и целые положительные степени в числителе и представляет рациональное выражение в виде суммы дробей, знаменатели которых совпадают со знаменателем исходного выражения, а числители есть отдельные слагаемые в раскрытом числителе:

ratnl = (х -f- у)(х-2 - у-2)/(х-3 - уЗ)

{х + у){х~у) хЗ-уЗ



eratnl = Expand[ratnl]

ху . ху уЗ

2;3 уЗ з-З уЗ J.3 уЗ J.3 уЗ

функция Apart раскладывает рациональное выражение на дроби с простыми знаменателями:

aratnl = Apart [rat nl]

X + xy + y

функция Factor, примененная к сумме рациональных выражений, приводит их к общему знаменателю и раскладывает на множители числитель и знаменатель полученного рационального выражения:

fratnl = Factor[aratnl]

jx + y) х + ху + у

функция Together приводит сумму рациональных выражений к общему знаменателю и сокращает общие множители в числителе и знаменателе:

tratnl = Together[aratnl]

х+2ху + у х + ху + у

Общие множители в числителе и знаменателе рационального выражения не сокращаются автоматически. Чтобы их сократить, прибегают к функции Cancel:

Cancel[ratnl]

х + ху + у



[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [ 12 ] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86]

0.0011