gpt4 book ai didi

根据导数或指数级别对 Mathematica 中的公式进行排序

转载 作者:行者123 更新时间:2023-12-02 18:43:43 25 4
gpt4 key购买 nike

我有一个阻抗方程,我已将其转移到 Mathematica,希望能简化它。它代表了电路原理图,电路阻抗(Z,来自 V = iZ)是 s 平面中多项的很大一部分。

作为一个简短的示例,它可能如下所示:

 L0s + (R1/(1 + R1 C1 s) + R3b + L3s + V3/s)/(R2a L2a s/(R2a + L2a s))

我想将数据重新排列为:

k1*s^-1 + k2*s^0 + k3*s^1 ...  

所有的k值代表多余的数据(各种R、L和C值的分数)。

什么公式操作最适合用来制作这些类型的结构?
.
.
.
我相信 Collect 函数无法根据 s 的指数处理分离事物,即使方程经过简化然后展开全部,因为项之间的划分级别 - 有几个层 Unresolved 分数。

在想知道这个问题的同时,我也很好奇,如果我将所有内容都转换到时域,是否可以按素数(导出/积分的次数)排序?

S c0 + c1 + d/dt*c2 + d^2/dt^2*c3 ...

最佳答案

您的函数不是 ss^(-1) 中的多项式。我能理解你的问题的最接近的方法是将你的表达式发展成围绕 s==0 的级数,然后确定级数系数。这可以使用SeriesCoefficient来完成:

In[80]:= SeriesCoefficient[
L0*s + (R1/(1 + R1*C1*s) + R3b + L3s + V3/s)/(R2a*
L2a*(s/(R2a + L2a*s))), {s, 0, n}]

Out[80]= Piecewise[{
{(R1*((-C1)*R1)^n*(L2a - C1*R1*R2a))/(L2a*R2a), n > 1},
{L0 + (C1*R1^2*(-L2a + C1*R1*R2a))/(L2a*R2a), n == 1},
{((-C1)*R1^2*R2a + L2a*(L3s + R1 + R3b))/(L2a*R2a), n == 0},
{V3/L2a, n == -2},
{(L3s*R2a + R1*R2a + R2a*R3b + L2a*V3)/(L2a*R2a), n == -1}
}, 0]

希望这对您有所帮助。

关于根据导数或指数级别对 Mathematica 中的公式进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5071381/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com