Раздел: Документация
0 ... 73 74 75 76 77 78 79 ... 177 7.5. Выполнение подстановки и замены переменных •> 241 7.5. Выполнение подстановки и замены переменных Очень часто при символьных расчетах возникают ситуации, требующие замены перемен ной в выражении на другую переменную или некоторое выражение, Например, замена может понадобиться для упрощения вида выражения илн уменьшения его размеров. Наиболее просто подстановку можно осуществить, воспользовавшись специальным символьным оператором substitute (Заместить). Для этого проделайте следующую последовательность действии. 1.Выбрав соответствующую команду панели Symbolic (Символьные), введите оператор substitute (Заместить). 2.В левый маркер оператора внесите выражение или его имя. 3.В правом маркере сделайте запись вида а=Ь, где а — замещаемая переменная, b — подставляемое значение, Если заместить нужно две переменные, то через запятую делается еще одно аналогичное присваивание. В качестве знака равенства в данном случае следует использовать логическое равенство (Bold Equal — СМ+-). Оператор substitute позволяет замещать ire только переменные, по и функции и даже целые выражения. Например, чтобы заместить sin(x) на с, в правом маркере оператора substitute достаточно набрать «sin(x)-t*. Пример 7.11, Упрощение выражения с подстановкой Задача: упростить выражение вида х -2x+Vb при условии, ЧТО 1 - л/Ь Решение: выполняем подстановку выражении для х с помощью оператора substitute, а затем упрощаем выражение с использованием оператора simplify. -x2-2x+N/b substitute, х = 1 -Vb simplify При проведении аналитических преобразований операция подстановки весьма востребована. Причина этого зактючаетя в следующем. То, насколько эффективно символьный процессор будет проводить операции вроде разложения на множители или поиска корней, очень сильно зависит от вида выражения. Так, если в выражении есть корни, то система с ним работает неважно. Однако эффективность работы аналитического процессора можно резко повысить, если выполнить такую замену, чтобы корни исчезли. Сильно упрощенный пример, демонстрирующий описанный подход, приведен ниже. С более реалистичными примерами мы встретимся в следующем разделе. Пример 7.12. Приведение выражения к более простому виду посредством замены переменных Если попытаться разложить выражение н его первоначала ом виде, то должного упрощения произведено не будет. I 1 4*+4уi % \ а -expand —>---х н---у х-ух-у х-у Символьный jrponeccop плохо справляется с вьгражепкчмн с корнями, поэтому нужно осуществить такую подстановку, чтобы корпи исчезли. J*+ 4у 2 2 m+n - substitute ,Vx = m,Vy =n,x = m ,y = n —►- x~y2 2 m - n Теперь выражение будет разложено так, как нужно. глл- п-1 expand 2 2п - m m -n Выполняем обратную подстановку, получая окончательный ответ. 1г г-1 substitute ,m = Vx,n = \/y 2 2 x -у 7.6. Комплексное упрощение выражений На практике упрощение выражений редко сводится к проведению операций какого-то одного рода. Чаще для того, чтобы преобразовать выражение в более простую форму, требуется задействовать несколько операций. Например, над результатом символьного дифференцирования может понадобиться сначала провести операцию приведения к подобным слагаемым, а уж затем попытаться вынести общие множители за скобку. Упрощение, для осуществления которого нужно провести несколько операций различного рода, мы будем называть комплексным, В простейших случаях аналитический процессор Mathcad способен проводить комплексное упрощение выражений. Служит .тля гнтго специальный символьный оператор simplify ( Упростить), По большому счету, возможности оператора simplify представляют собой частичную сумму возможностей остальных операторов алгебраических преобразований. Он может, подобно оператору expand, проводить разложение выражений. Аналогично оператору factor, simplify может осуществить приведение двух дробей к общему знаменателю. Как и collect, simplify способен вынести общий множитель за скобку. Кроме того, simplify «умеет» приводить подобные слагаемые и производить арифметические расчеты. Главное же достоинство рассматриваемого оператора — ОН способен совмещать все эти операции так, чтобы упрощение было максимальным. Пример 7.13. Упрощение выражений э х - у 3 simplify —» х + х-у + у 2 Х2-У: 2 х+у simplify —► х- 3 х - а simplify -¥ х -(а+ 3)-х + За х+ у Очень часто глубина упрощения выражения и результат этой операции зависят от того, какие значения могут принимать входящие в выражения величины. По умолчанию Mathcad рассматривает все неизвестные как комплексные числа. По этой причине довольно интересный результат будет получен при попытке извлечь корень из квадрата переменной: Функция csgn - это функция знака комплексного числа. Она равна 0 - если Х-0,1 — если действительная часть числа больше 0 (или если действительная часть равна О, а мнимая положительна); -1 — если действительная часть отрицательна (или если действительна! часть равна 0, а мнимая отрицательна). Хотя полученный ответ вполне корректен при предположении, что х - это комплексное число, в подавляющем большинстве случаев он неприемлем. Необходимо как-то указать аналитическому процессору, что х следует рассматривать как действительное число. Сделать это позволяет символьный оператор assume (Принимает). Оператор assume имеет два маркера. В левый вводится оператор, результат работы которого должен быть получен исходя из некоторого условия (в нашем случае это будет оператор simplify), В правом маркере определяется само условие. Условие может быть ограничивающим либо область определения переменной, либо ее тип. Ввести ограничения на область можно с помощью логических операторов панели Boolean (Булевы). Для того же, чтобы задать тип переменной илн параметра, нужно обратиться к панели специальных ключевых слов Modifier (Модификация) панели Symbolic (Символьные). Панель Modifier содержит четыре ключевых слова. Вводить их можно и просто набором с клавиатуры. □assume (Принимает). Слово-заготовка для создания оператора модификации. □real (Действительное). При использовании этого служебного слова система будет воспринимать переменную как действительную □RealRange(a,b) (Действительная область). С помощью этого оператора вы можете ограничить область изменения переменной или константы отрезком между действительными числами а и о. Обратите внимание на то, что при вызове данного оператора с панели Modifier его название начинается со строчной буквы. Поскольку Mathcad чувствителен к регистру, следует вручную заменить строчные буквы «г» в названии оператора па прописные «R» так, чтобы его вид соответствовал изображенному на панели Modifier. Легче же всего просто ввести данный оператор с клавиатуры. 0 ... 73 74 75 76 77 78 79 ... 177
|