作业帮 > 综合 > 作业

如何用Mathematica实现下面的问题

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/29 10:32:38
如何用Mathematica实现下面的问题
1、ff={{(-555.443 + 3.55271*10^-14 \[ImaginaryI]) (-2 + c)^2 (-1 +
c) + (993.607\[VeryThinSpace]-
5.68434*10^-14 \[ImaginaryI]) (-3 + c) (-1 +
c)^2 + ((-950.138 - 4.26326*10^-14 \[ImaginaryI]) (-3 + c) (-2 +
c) + (822.843\[VeryThinSpace]-
7.66054*10^-14 \[ImaginaryI]) (-4 + c) (-1 +
c)) c + (1122.4\[VeryThinSpace]+
2.84884*10^-14 \[ImaginaryI]) (-5 + c) c^2},{(-211.125 -
1.59872*10^-14 \[ImaginaryI]) (-2 + c)^2 (-1 +
c) + (377.672\[VeryThinSpace]+
2.84217*10^-14 \[ImaginaryI]) (-3 + c) (-1 +
c)^2 + ((1531.32\[VeryThinSpace]-
1.42109*10^-14 \[ImaginaryI]) (-3 + c) (-2 +
c) - (1326.16\[VeryThinSpace]-
4.17444*10^-14 \[ImaginaryI]) (-4 + c) (-1 +
c)) c + (426.625\[VeryThinSpace]-
1.02298*10^-14 \[ImaginaryI]) (-5 +
c) c^2},{(172.696\[VeryThinSpace]+
6.39488*10^-14 \[ImaginaryI]) (-2 + c)^2 (-1 +
c) - (308.929\[VeryThinSpace]+ 0.\[ImaginaryI]) (-3 + c) (-1 +
c)^2 + ((264.405\[VeryThinSpace]+
6.39488*10^-14 \[ImaginaryI]) (-3 + c) (-2 +
c) - (228.981\[VeryThinSpace]+
4.26326*10^-14 \[ImaginaryI]) (-4 + c) (-1 +
c)) c - (348.972\[VeryThinSpace]-
8.58841*10^-15 \[ImaginaryI]) (-5 + c) c^2},{(-172.696 +
3.90799*10^-14 \[ImaginaryI]) (-2 + c)^2 (-1 +
c) + (308.929\[VeryThinSpace]-
1.42109*10^-14 \[ImaginaryI]) (-3 + c) (-1 +
c)^2 + ((264.405\[VeryThinSpace]-
1.42109*10^-14 \[ImaginaryI]) (-3 + c) (-2 +
c) - (228.981\[VeryThinSpace]+
1.06581*10^-14 \[ImaginaryI]) (-4 + c) (-1 +
c)) c + (348.972\[VeryThinSpace]+
1.43058*10^-15 \[ImaginaryI]) (-5 +
c) c^2}}
把ff中类似于(-2 + c)^2 ,(-1 + c)^2,c^2.项去掉;(就是去掉关于c的次幂大于等于2的项)
2,对 ff 进行了1 中的运算后,在对其进行Normalize
比如 ff 第一项进行1的运算后变为
{ (-950.138 - 4.26326*10^-14 \[ImaginaryI]) (-3 + c) (-2 + c)c + (822.843\[VeryThinSpace]- 7.66054*10^-14 \[ImaginaryI]) (-4 + c) (-1 + c) c}
然后对其系数进行Normalize:

{-0.755929 - 3.39184*10^-17 \[ImaginaryI](-3 + c) (-2 + c)c,
0.654654\[VeryThinSpace]- 6.09472*10^-17 \[ImaginaryI](-4 + c) (-1 + c) c}
之前你都问了这么多模式匹配的问题了,居然还弄不清这种项要怎么去掉吗……:
ff /. a__ b_^c_ d_ -> 0
今天天色已晚,第二问随便写一个……虽然你一直不说你是想要达到什么目的,但是,我发现你的数字虚部很小,那么,你是不是其实想把过小的数舍掉呢?:
ff1 = ff /. a__ b_^c_ d_ -> 0
Expand[#, a_ b__] & /@ Chop[ff1/Sqrt[(ff1 /. a_Complex b__ -> a^2)/c]]
再问: 第一个我改成 ff/. a__ ^c_ -> 0,不然如果换个表达式包含(-2 + c)^3 这样的项则无法删除..... 第二个.......没看懂.....也没运行出来......
再答: 因为昨天是随手写的,所以针对性要强了一些,没有仔细考虑。你的第一个的改法是正确的。 怎么,你的表达式还有别的特征还是怎么的?第二个要把你上面的示例给解决掉是毫无问题的。 你是哪里看不懂呢?Chop翻翻帮助就该明白了吧?你总不会是不认识纯函数吧?总之多看帮助。