找回密码
 注册
Simdroid-非首页
查看: 147|回复: 3

[1.符号] 简单的复数表达式化简在maple中却不容易实现

[复制链接]
发表于 2012-12-12 11:07:08 | 显示全部楼层 |阅读模式 来自 湖南湘潭
如下2个例子:
1、
(1/6*I)*(-3+I*sqrt(3))*sqrt(3)    ...(1)
用simplify的各种方法都不行。
用expand却可以得到:-1/2-(1/2*I)*sqrt(3)

2、
若(1)式是某矩阵中的某个元素,用simplify和expand方法都不行。如下:
Matrix(3, 3, {(1, 1) = 1, (1, 2) = ((1/6)*I)*(-3+I*sqrt(3))*sqrt(3), (1, 3) = ((1/6)*I)*(3+I*sqrt(3))*sqrt(3), (2, 1) = 1, (2, 2) = ((1/6)*I)*(3+I*sqrt(3))*sqrt(3), (2, 3) = ((1/6)*I)*(-3+I*sqrt(3))*sqrt(3), (3, 1) = 1, (3, 2) = 1, (3, 3) = 1})
当需要化简的元素个数少时,可以一个个expand。
但是矩阵较大或需要化简的元素个数较多时,该用什么办法呢?


 楼主| 发表于 2012-12-12 17:30:25 | 显示全部楼层 来自 湖南湘潭
Simdroid开发平台
参考了evalc函数,仍不奏效。
http://forum.simwe.com/thread-1054792-1-1.html

自己动手,找到一种折中的方法:
newA := Re(A)+I*Im(A)
不知大家有无更好的方法?
回复 不支持

使用道具 举报

发表于 2012-12-14 07:32:24 | 显示全部楼层 来自 吉林长春
表达式简单的话,复数情况evalc比较常用,
矩阵可以用map命令
回复 不支持

使用道具 举报

发表于 2013-2-3 15:39:29 | 显示全部楼层 来自 北京
本帖最后由 chyanog 于 2013-2-3 15:39 编辑
  1. map(radnormal, mat)

  2. map(expand, mat)
复制代码
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-4-24 14:08 , Processed in 0.040685 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表