LTspice 在一个简单的两电阻分压器上失败了。我该如何解决?
该问题是已知的,并且仅在 2019 年 5 月(或 6 月?不记得)之后的 LTspice XVII 版本中发生。在此之前的版本或 LTspice IV 中不会发生。如果您在 1 Ω 电阻上添加一个值为 1 的 VCVS,您将获得正确的电压。
在LTspice 组中搜索修改陷阱的问题。还有与您类似的文件,ProblemWithModTrap.asc
并且ProblemWithModTrap2.asc
(您需要注册,以避免垃圾邮件)。
我将尝试解决至少部分G36 的评论。
正如Ste Kulov在评论中提到的那样,帮助(LTspice > 集成方法)中有一个页面试图解释为什么使用修改后的梯形求解器会有这样的读数。该页面有两部分:第一部分解释了修改后的陷阱是如何工作的,第二部分解释了为什么读数是这样的。虽然第一部分很好地解释了修改后的陷阱是如何工作的,但在我个人看来,第二部分是错误的,原因如下:
完全相同的原理图与 2019 年 5 月之前的 LTspice XVII 或 LTspice IV 版本一起使用,并且具有完全相同的设置,但不会表现出相同的行为。因此,无论新版本的 LTspice 中影响响应的内容是什么,都必须在 2019 年 5 月左右或之后推出。
原理图(如帮助中所示)由一个简单的电压源和一个电阻分压器组成。没有反应元素,没有行为表达,因此没有状态。不仅没有调用积分例程,而且它只是一个简单的正弦电压和分压器问题,因此不会有任何振荡。没有振荡意味着没有平均值,应该看到的唯一波形是 1 mV 峰值波形。更重要的是,对于 2019 年 5 月之后的 LTspice 版本,如果使用正常的陷阱求解器,则没有伪影,这只会强化没有振荡的想法,因此不会因为平均而出现任何伪影。
可以确定的是:修改后的陷波主要是应用于波形的后处理。如果存在振荡,它们在求解器找到它们时仍然存在,但由于这种后处理,它们不会显示出来。
如果您使用Gear或梯形作为默认积分方法,事情将按预期计算。您可以在控制面板的 SPICE 选项卡下找到它。您仍然需要使用双精度数学(numdgt=15 设置)。
编辑:
既然您询问了 LTspice 中集成方法的差异,这里是 Mike Engelhardt(LTspice 背后的大脑)在 alt.sci.engineering 中发表的一篇文章,2004 年 2 月 21 日。
积分方法解释:
与陷阱相比,齿轮的优势在于它在数值上更稳定,但精度较低。原则上,它的定义更好,因为 Steven Gear 甚至指定何时更改积分顺序和时间步长。PSpice 是硬连线使用 Gear(好吧,文档说它是一种专有算法,但它的行为类似于 Gear。) Gear 的不准确性来自于它抑制电路的事实。衰减量随着步长的减小而减小。梯形更快,通常更准确。有时它在数值上不太稳定,尤其是在运行用宏观模型描述的非物理电路时。它的缺点是它可以作为模拟神器响起。这可能会让 SPICE 新手用户感到不安。大多数 SPICE 程序都默认使用某种形式的梯形积分。陷阱实现有相当大的余地,所以我亲切地称它们为牛仔集成。
Modified-trap是一种专有算法,具有trap的速度和准确性,但精确地取消了传统的trap振铃。这是我所知道的最准确的方法。
如果您使用的是 LTspice,请使用默认的修改陷阱。仅将陷阱和齿轮用作诊断。Gear 可以让你复制一些 PSpice 模拟。例如,如果 LTspice 说电路不稳定但 PSpice 说它稳定,您可以切换 LTspice 以使用与 PSpice 基本相同的集成方法来复制其错误结果以用于诊断目的。如果您想查看您的电路是否在陷阱振铃,请切换到纯陷阱而不是修改陷阱。如果 Modified-trap 取消的陷阱振铃分布在多个电路节点上,则取消可能无法正常工作。使用纯陷阱可以让您调查潜在的模拟伪影。
还有另一种方法称为反向欧拉。在 SPICE 程序中,mod-trap、trap 和 Gear 都作为二阶方法实现,反向欧拉是一阶方法。一阶 mod-trap、trap 和 Gear 都是相同的,简称为反向 Euler。您可以通过将 SPICE 指令“.options maxord=1”添加到您的仿真来使用此方法。Backward Euler 与 Gear 一样稳定,但它是所有方法中最慢和最不准确的。
求解器说明:
备用求解器在稀疏矩阵包中的内部精度提高了大约 1000 倍,但模拟速度只有一半。它的优点是解决了某些收敛问题。这是一个简单的套牌,证明它比普通求解器更准确:*
V1 1 0 ac 1
R1 1 2 1T
C1 2 X 1
R2 X 3 1T
C2 3 0 1
.ac oct 10 1 1Meg
.end对于所有频率,节点 V(x) 应为 -6dB。然而,普通求解器(和其他 SPICE 程序)在求解该矩阵时会出错。如果您切换到 LTspice 的备用求解器,您将接近正确答案。备用求解器于 2003 年 6 月 13 日发布,并在本组的第 434 号消息中进行了讨论。
在 Gear vs. Trap 中,这里有一个电路可以说明 Gear 过于稳定,也就是说,为了避免收敛问题,它错误地抑制了电路:
*
L1 1 0 10u Rser=0 Rpar=0
C1 1 0 100p
I1 1 0 PWL(0 0 .1u 1 .2u 0)
.tran 1m 1m
.end(Mod-)Trap 会给出正确的答案,即电流尖峰启动 tank 振铃,然后振铃会无限期地继续。如果您在 PSpice 中运行该电路,它只会响几声。Gear 的这种过度稳定性会导致错误,这也是许多电路收敛于 PSpice 而不是 LTspice 的原因。PSpice 给了你错误的答案。