так что этот вопрос, скорее всего, очень прост, и я видел здесь подобные вопросы, но ни один из них, похоже, не работает для меня. Я довольно любитель с Mathematica, так как у меня никогда не было особых причин использовать ее, поэтому, пожалуйста, не думайте, что у меня много технических знаний. Моя проблема довольно проста, я пытаюсь упростить шесть выражений, которые включают два генератора x, y, которые наверняка не коммутируют. На самом деле yx=x^2y. Я хотел бы получить что-то вроде (x+...)(y+...)(...) или тому подобное, но всякий раз, когда я использую Mathematica (я использовал пакет NCAlgebra), я не могу кажется, заставить его работать. Любая помощь будет очень высоко ценится.
Как упростить или факторизовать выражение некоммутирующих переменных
comment
Можете ли вы показать, что вы пытались до сих пор? Это значительно облегчает вам помощь.
- person SuperBiasedMan   schedule 21.05.2015
comment
Ну, я не совсем продвинулся далеко. Я никогда раньше не использовал Mathematica, и поэтому я изучаю веревки по ходу дела. До сих пор я просто пытался факторизовать или упростить что-то вроде x^3+xyx, используя команды NCSimpify[] и Factor[].
- person John D Evans   schedule 21.05.2015
Ответы (1)
В новейшей версии NCAlgebra вы можете использовать NCStrongCollect
и NCCollect
для создания чего-то вроде:
<< NC`
<< NCAlgebra`
expr = x^3 + x ** y ** x
NCStrongCollect[expr, {x, y}]
что приводит к
x ** (x + y) ** x
or
NCCollect[expr, {x, y}, ByTotalDegree -> True]
что в данном случае дает тот же результат.
Существуют и другие инструменты «упрощения», такие как NCSimplifyRational
. Подробности смотрите в документации.
person
Mauricio de Oliveira
schedule
21.04.2017