杰维斯·穆恩迪数值算法与复杂性Jenkins-Traub算法2013年5月 介绍 该项目包含提供Jenkin-Traub算法实现的代码。 该算法比牛顿法(具有2阶,即二次收敛)的算法更快,可以找到多项式的根。 它可以处理复杂的系数和根,并且不会遇到稳定性问题。 对于该算法的概述,有关该算法的是一个很好的起点。 更完整的细节可以在Jenkins和Traub于1968年撰写并于1970年发表的找到。 要求 已在Python 2.7+上测试 怎么跑 该程序接受两个参数,其中之一是必需的。 这些在下面描述。 python main.py -p [Polynomial] -e [error] Where: [Polynomial] Required Parameter. This is a listing of all coefficients of t
2022-09-10 03:15:20 10KB Python
1
文件构造了一个较完整的多项式类,可以实现多项式的常用运算: 1、可通过 Poly P 声明一个多项式 P; 2、可通过 P.read(string P_str) 直接从 手写习惯的多项式字符串 读入多项式; 3、可通过 P.newTerm(double Coef, int Exp) 增添多项式的项,如果含有同类项,则合并; 4、可直接通过 P = Q 给多项式 P 赋值; 5、可直接通过 cout << P 以手写习惯输出多项式; 5、可通过 P.clear() 清除一个多项式; 6、可直接通过 +、-、*、/、% 进行多项式间的运算; 7、可通过 gcd(Poly P, Poly Q)、lcm(Poly P, Poly Q) 求两个多项式的最大公因式、最小公倍式; 8、可以获取多项式的各种信息:   8.1、可通过 P.deg() 获取多项式的次数;   8.2、可通过 P.mainCoef() 获取多项式的主系数;   8.3、可通过 P.coef(int n) 获取多项式 P 的 n 次项系数;   8.4、可通过 P.eval(double x)、P.eval(Complex x) 获取多项式 P 在给定值 x 处的取值;(其中 Complex 类已经构造好,可直接使用)   8.5、可通过 P.com(Q) 计算多项式 P 与 Q 的复合;   8.6、可通过 P.diff() 计算多项式 P 的导多项式; 9、可通过 P.roots() 求任意次多项式的所有根(包括复根),其返回值类型为vector 。
2022-02-26 11:39:18 56KB 多项式类 多项式求根
1
三角插值matlab代码数值分析方法 概述 这是我为数值分析类编写的MATLAB函数的集合: 多项式求根方法 函数插值方法 三角曲面 要求 为了运行此代码,您需要具有MATLAB的工作副本以及使用它的一些以前的经验。
2021-11-02 15:47:13 16KB 系统开源
1
Müller 的方法使用三个点,它通过这三个点构造一条抛物线,并取 x 轴与抛物线的交点作为下一个近似值。 Müller 方法的收敛阶数约为 1.84。 如果寻找复杂的根,这种方法可能是有利的,因为即使以前的迭代是真实的,任何迭代也可能是复杂的。 运行代码的过程: 按 F5 或 RUN,然后在命令窗口中将显示一条消息-“n 阶多项式函数的类型为:a[1]X^n+a[2]X^(n-1)+ ..+ a[n]X^1+a[n+1] 输入 Coeff 为“[ 1 2 3 ...]”,即行向量形式。 根据上述顺序输入值。 如果多项式大于一阶,它会要求迭代的三个初始猜测。 请提供三个不同的数字,否则将显示错误消息。 例如按顺序输入系数? [1 2 3 4 5] 给出三个初始猜测点 [x0, x1, x2]: [-1 0 1] 或任何其他三个不同的数字, 如果解的范围已知,则使用接近该范围的值可能会
2021-10-30 16:39:00 3KB matlab
1