目前计算机整编水文资料中,很多用的是人工定线,输入节点,用插值法来推流、推沙和进行其他计算。所用的插值公式有拉格朗日插值公式和三阶样条函数插值公式。
1.拉格朗日插值公式
假定已知函数y=f(x)在n+1个相异点x 0、x 1、x 2、…、x n处的函数值y 0=f(x 0)、y 1=f(x 1)、y 2=f(x 2)、…、y n=f(x n),插值的目的就是求一个简单的函数φ(x),它在给定的n+1个点x 0、x 1、…、x n上取值φ(x 0)=y 0、φ(x 1)=y 1、φ(x 2)=y 2、…、φ(x n)=y n,而在其他点上φ(x)可以近似地代替f(x),函数φ(x)称为f(x)对于点x 0、x 1、x 2、…、x n的插值函数。通常插值函数用多项式表示,所以插值函数又称为插值多项式。x 0、x 1、x 2、…、x n称为插值点或节点。用拉格朗日方法建立起来的插值公式,称为拉格朗日插值多项式。拉格朗日插值多项式的形式为
若拉格朗日插值多项式中n=2,拉格朗日多项式是最高次为2的抛物线,此时的插值公式称为抛物线插值公式。
2.单一曲线插值公式的应用
水文资料整编中所遇到的线型,一般为直线的不多,因此电算整编中最常用到的是抛物线插值。对于一条水位流量关系曲线,水位Z表示自变量,流量Q表示因变量,若选取有n个节点(n>3),其曲线的一段如图7.4所示,水位Z所对应的流量Q用下式计算
式(7.15)需要3个节点,又称为一元三点插值。
一条曲线一般选取若干个节点,插值时选取最靠近插值点的3点代入插值公式,因此对于一条曲线并不是一个插值公式,而是采取分段连续插值的方法把曲线所使用范围的每一水位对应的流量计算出来。
一条曲线插值时,若选取较多的节点,可以保证插值的质量。但节点太多,所占用的内存较多,且增加了穿孔的工作量,则不经济。为此要求在保证精度的前提下,尽量地减少节点数目,最少不得少于3个节点。
图7.4 一元三点插值公式使用示意图(www.xing528.com)
节点密度的大小,一般与所求水文要素的精度要求有关,与曲线的曲率变化情况有关。对于一固定曲线,精度要求得越高,节点数目应越多。由于抛物线插值公式的一阶导数为直线方程,在曲率变化较大,曲率变化可能不为直线变化时应加密节点,来减少曲线曲率的不均匀变化引起的误差。
3.在处理复杂的水位流量关系时插值公式的应用
复杂的水位流量关系曲线可以看作若干条单一曲线的组合。因此,用插值法处理复杂的水位流量关系,就是把复杂的水位流量关系曲线分解成若干条单一曲线之后分别插值。
用临时曲线法进行资料整编的测站,各个时段的临时曲线可以看作为一条条的单一曲线。而用绳套曲线法进行资料整编的测站,则应把绳套曲线分解成涨水支线和落水支线,分解时一般以峰顶峰谷作分界点,分解出的涨水、落水曲线则当成单独的单一曲线进行插值。如图7.5中的绳套曲线,可以作为6条单一曲线来推求流量。
图7.5 绳套型水位流量关系曲线用插值法推流处理示意图
复杂的水位流量关系使用插值法推流的关键是分解出的一条条的单一曲线间的过渡与连接,即从一条曲线到另一条曲线的自动跳线问题。
实现自动跳线的方法很多。可以输入用每条曲线推流的次数,用某条曲线推流时,当推流次数达到给定的次数后,则自动地跳向另一条曲线推流。也可以给出每条曲线使用的时间,这样和人工进行资料整编的思路一样,在曲线使用的时段内用给定的曲线节点进行插值。也可以给予跳线的第一个水位或时间数据加上一定的信息,当用水位推求流量时判别水位含此信息,则自动地跳向下一条曲线进行推流。
通过较多数据的对比分析,一般一元三点插值基本上能满足推流的精度要求。但在曲线曲率变化较大时,两节点的中点会出现流量不连续的现象。这是因为,中点处若用两组节点代入插值公式,计算出同水位的流量数值经常不等,因此在选取节点时应尽量避免这种现象。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。