摘 要: 提出了一個(gè)基于CODIC的計(jì)算Bernstein多項(xiàng)式的移位-加算法。該算法可以在存在于許多領(lǐng)域的基本計(jì)算系統(tǒng)中實(shí)現(xiàn)。證明了算法的收斂性,給出了誤差分析,做了數(shù)值實(shí)驗(yàn),驗(yàn)證了算法的有效性和效率。
關(guān)鍵詞: Bernstein多項(xiàng)式;CORDIC;移位-加算法;基本計(jì)算系統(tǒng)
在高級(jí)計(jì)算系統(tǒng)中,可以很容易地找到Bernstein多項(xiàng)式的算法[3]。例如,在Mathematica中,可以用BernsteinBasis[n,i,t]計(jì)算。用高級(jí)語言編程計(jì)算Bernstein多項(xiàng)式也非常容易。本文討論如何在基本計(jì)算系統(tǒng)(僅具備移位、加和邏輯運(yùn)算功能的計(jì)算系統(tǒng))中計(jì)算Bernstein多項(xiàng)式?;居?jì)算系統(tǒng)存在于許多系統(tǒng)中,例如工業(yè)控制系統(tǒng)、軍事應(yīng)用系統(tǒng)、醫(yī)療應(yīng)用系統(tǒng)等。典型的有單片機(jī)系統(tǒng)和FPGA(Field Programmable Gate Arrays)等。
CORDIC算法是可計(jì)算多種基本初等函數(shù)的移位-加算法[4-6]。參考文獻(xiàn)[7-8]擴(kuò)展了CORDIC算法,其收斂性和誤差估計(jì)在參考文獻(xiàn)[7]中做了分析。隨著硬件技術(shù)的發(fā)展,這些快速統(tǒng)一移位-加算法可以用硬件實(shí)現(xiàn),而且不需使用乘法器[9],成本較低,也可以用匯編語言編程實(shí)現(xiàn)。本文提出一個(gè)基于CORDIC算法的Bernstein多項(xiàng)式移位-加算法。
參考文獻(xiàn)
[1] NATARAJ P S V, AROUNASSALAME M. A new subdivision algorithm for the bernstein polynomial approach to global optimization[J]. International Journal of Automation and Computing, 2007,4(4):342-352.
[2] FARIN G. Curves and surfaces for computer-aided geometric design: a practical guide, 4th Ed. Academic Press, San Diego, 1997.
[3] FENG Jieqing, PENG Qunsheng. Fast algorithm for composition of the bernstein polynomials[J]. Journal of Computer-Aided Design & Computer Graophics, 2001,13(2).
[4] VOLDER J E. The CORDIC computing technique[J]. IRE Transactions on Electronic Computers, 1959,8(9):330-334.
[5] MULLER J M. Elementary functions, algorithms and implementation. Birkhauser Boston, 1st edition,1997. 2nd edition, 2006:133-156.
[6] EKLUND N. CORDIC: elementary function computation using recursive sequences[C]. International Conference on Technology, 1998.
[7] GU Feng. Convergence and error estimation of coordinate rotating algorithm and its expansion[J]. Chinese Journal of Numerical Mathematics and Applications, 2006,28(2):1-9.
[8] HU Xiaobo, HARBER R, BASS S. Expanding the range of convergence of the CORDIC algorithm[J]. IEEE Transactions on Computers, 1991,40(1):13-21.
[9] ANDRAKA R. A survey of CORDIC algorithms for FPGA based computers[C]. In Proceedings of the 1998 ACM/SIGDA Sixth International Symposium on Field Programmable Gate Arrays(FPGA) 1998:191-200.