将双精度复数转换成有理数形式的实部与虚部分别表示
发布时间
阅读量:
阅读量
Mathematica中涉及到下面的几个函数:
RealDigits
将一个数值分解为各位数字及其十进制指数的形式(不可逆转地失去符号信息)。
FromDigits
从RealDigits的结果中重建数值,并以有理数形式表达(不可逆地失去原始数值的信息)。
Sign
由于在操作过程中可能会导致正负号信息丢失,则需通过调用该函数获取原始的正负号信息,并将其与后续计算过程相结合使用。
这些主要涉及对实数值运算,在处理复数值时则需要通过分离出其实部与虚部分别进行运算;接着将分离出来的实部与虚部分别乘以对应的单位后进行相加运算得到最终结果。
对于向量和矩阵操作的时候,可能用到Map, Apply之类的命令(函数)。
举例来说可能会更加生动且具有操作性
如何把它们都变成有理数表示的形式呢?
先用Import导入数据:
data=Import["e:\ Downloads\ data1.mat"];
所得到的data是一个包含了两个元素的List:
复数矩阵A_{18\times 18}位于data[[1]]$中,并且实数向量$b_{18\times 1}$位于data[[2]]$中。将它们转换为代码的形式分别为:
(Map[FromDigi
全部评论 (0)
还没有任何评论哟~
