我想改变Maple中平方方程中所有符号的符号。例如,这些方程产生相同的答案:
现在假设我已经使用以下代码在 Maple 中编写了第一个函数:
测试 := (-苹果 + 香蕉 - 樱桃 + 枣)^2/(苹果 - 香蕉)
然后我可以轻松地将它们替换为:
numer(test)/denom(test),因为 numer() 改变了符号。
但是,如果我使用不同的标签,例如将“苹果”与“质量”交换,这将不再起作用。
测试 := (-质量 + 香蕉 - 樱桃 + 枣)^2/(苹果 - 香蕉); 数字(测试)/分母(测试)
您能解释一下为什么以及如何实现它吗?
这是处理示例的一种方法,
它作用于表达式中所有和的平方。它将
-
映射到总和子表达式上。
sw:=e->subsindets(e,`+`^2,
u->subsop(1=map(`-`,op(1,u)),u)):
expr:=((-a+b-c+d)^2)/(a-b):
sw(expr);
(a-b+c-d)^2/(a-b)
test:=(-quality+banana-cherry+date)^2/(quality-banana):
sw(test);
(quality-banana+cherry-date)^2/(quality-banana)
这是一个变体。
sw:=e->subsindets(e,`+`^2,
u->map(`-`,op(1,u))^2):
您也可以让它在其他偶数功率上工作。
sw:=e->subsindets(e,`+`^even,
u->map(`-`,op(1,u))^op(2,u)):
expr2:=(a-b)/(-a+b-c+d)^4:
sw(expr2);
(a-b)/(a-b+c-d)^4