它的工作原理

差分引擎原理

差分引擎之所以被称为差分引擎,是因为它们所基于的数学原理,即有限差分方法。一般来说,计算多项式的值可能需要加法、减法、乘法和除法中的任何一个或全部。

有限差分法的一个优点是它消除了乘除的需要,并且只允许使用简单的加法计算多项式的值。使用齿轮相加两个数字比乘法或除法更容易实现,因此该方法简化了其他复杂的机制。

如果多项式的前几个值已知,其余的可以用简单的重复加法计算。上图显示了函数F(x)=x的方法2+ 4. x的值显示在第一列中,每次递增1(x=1、2、3、4…)。函数的值x个2+ 4显示在第二列中,前四个值通过心算或手动计算(5、8、13、20)。

下一步是计算第一和第二个差异。第一个差异显示在第三列中,通过从上一列中减去连续值来计算,如从左到右的实心箭头所示(8-5=3,13-8=5等)。第二个差异是通过减去第一个差异对来计算的,这些差异对显示在最后一列中。

通过计算这些初始值,可以通过反转过程来计算函数的其余值。我们希望计算的值显示在上面的虚线下方。对于这个多项式,第二个差是一个常数(2)。为了计算x=5的函数值,将常数差(2)与第一差(7)相加以获得下一个第一差(9)(红色箭头),然后将其与最后的函数值(蓝色箭头)相加以产生F(5)=29。这是所需的结果,无需执行乘法即可实现。

然后可以重复该过程以得到下一个第一差分(11),该差分可以加到最后一个函数值上,从而得到F(6)=40等。使用该方法,可以用这种方法计算任何二次多项式,更常见的是,可以计算任何n次多项式第个从n开始,仅使用加法即可计算次数多项式第个差异。

巴贝奇的2号差异引擎具有“寄存器”,用于保存表中每列的一个数字(例如20、7、2)。它会将第二个差异添加到第一个差异中,然后将该结果添加到函数值中,以计算表中的下一个条目。有足够的“寄存器”用于七个差异,允许它计算项高达x的多项式的31位值7.