如何设计一个底层的数学函数库?
设计目标:
第一是性能,第二是高精度
设计原则如下:
第一 函数的实现,第一目标是性能,代码的可读性,可维护性等指标让位于代码的执行性能。
第二 函数的包体系结构,函数的命名必须符合它的直观的含义,降低调用者的应用成本。
第三 函数的使用方法必须给出示例,详细说明函数是如何被调用的。
第四 术语给出一个术语表,规范它的含义。
第五 错误消息的统一定义
数学库的概述
向量的运算,矩阵的运算,复数的运算,任意长度的大数据的运算,多项式的运算
线性方程组的求解运算,数理统计与概率分析的运算,插值运算,微积分的运算,符号运算
基本运算
函数的包名称
第一级命名为numjs
第二级包括如下的 vector ,matrix,complex,bigdata,equation,statics
命名规范参考mathematica的函数名进行命名。
函数的代码实现,参考fortran程序的算法程序集。
需要解决的问题
上溢出,下溢出的问题