计算方法
文章平均质量分 67
iiTzSimple
这个作者很懒,什么都没留下…
展开
-
【计算方法】数值积分
牛顿-科特斯求积公式数值积分是为了解决在求定积分时原函数复杂时的情形,通过采用p(x)来近似代替f(x);p(x)通常采用拉格朗日插值多项式。对于公式的证明,由上述提到的用拉格朗日插值法做p(x),然后换元求导证明,下面证明,辛普森公式组合求积公式但是单一的公式并不能具备很好的精度,这个时候我们通过组合求积公式来减小误差。组合梯形公式例题【问题描述】组合梯形公式求函数f(x)=2+sin(2*sqrt(x))的积分近似值。【输入形式】在屏幕上依次输入积分上限、下限和等距子区间个数原创 2021-06-08 09:13:20 · 1350 阅读 · 0 评论 -
【计算方法】曲线拟合——多项式拟合
概述给出n个数据点,并给定m个线性无关的函数f(x),则F(x)为几个f(x)的线性组合。抽象起来,其实在机器学习中相当于给n个训练样本,m个特征值,那么显然这里可以使用正规方程进行求解正规方程推导过程例题【问题描述】根据N个数据点构造最小二乘多项式拟合。【输入形式】在屏幕上依次输入多项式的次数m,数据点的个数N,和N对数据点的x和y坐标。【输出形式】输出最小二乘多项式和误差。如果有多位小数,则保留6位有效数字。【样例1输入】24-3 30 12 14 3【样例1输出】0.原创 2021-05-14 12:24:56 · 2438 阅读 · 0 评论 -
【计算方法】曲线拟合-最小二乘拟合
曲线拟合综述为什么要曲线拟合呢。由于我们的数据总归是有限的,我们无法做到我们的模拟出来的数据满足每个点,因而我们需要做的是拟合出这样一条曲线,使它的代价最小即可。其实这和机器学习很像,该拟合也可以用正规方程来解的。误差分析公式推导而在运用来求拟合直线时,我们可以这么看待公式指数函数的拟合这里指数函数的底数默认为e在处理如y=Ceax形式的指数时,我们可以取对数,将式子写作lny=ax+lnc,那么我们令Y=lny,b=lnc即可写作拟合直线的式子Y=ax+b,这是再将我们的数据进行线性原创 2021-05-07 18:00:07 · 3688 阅读 · 0 评论 -
【计算方法】牛顿插值法
牛顿多项式拉格朗日多项式的公式不具备递推性,每个多项式需要单独构造。但很多时候我们需要从若干个逼近多项式选择一个。这个时候我们就需要一个具有递推关系的方法来构造——牛顿多项式这里的的a0,a1…等可以通过逐一带入点的值来求得。但是当项数多起来时,会发现式子变得很大,这个时候我们便要引入差商的概念(利用差分思想)具体见式子能更好理解这里在编程实现中我们可以推出相应的差商推导方程d(k,0)=y(k)d(k,j)=(d(k,j-1)-d(k-1,j-1)) / (x(k)-x(k-j))例题原创 2021-04-30 12:20:31 · 2943 阅读 · 2 评论 -
【计算方法】拉格朗日插值法
概念设f(x)在N+1个点(x0,y0)…(xn,yn)处的值已知,其中值xk在区间【a,b】上,xk互不相同,满足a≤x0<x1<…<xn≤b,yk=f(xk)。求任一插值点x对应的y。插值法的思路在于通过构造一个N次多项式P(x),使其通过N+1个点,然后求x处的函数值y。拉格朗日逼近例题【问题描述】考虑[0.0,1.2]内的函数y=f(x)=cos(x)。利用多个(2,3,4等)节点构造拉格朗日插值多项式。【输入形式】在屏幕上依次输入在区间[0.0,1.2]内的一个值原创 2021-04-27 08:41:17 · 2776 阅读 · 7 评论 -
【计算方法】迭代法(线性方程组求解)
解线性方程组的方法有如下两类直接法:高斯消去法,三角分解法等,这些方法可用于求解低阶稠密方程组迭代法:雅可比迭代法,高斯-赛德尔迭代法等,用于求解高阶稀疏方程组雅可比迭代法高斯-赛德尔迭代法收敛问题首先时矩阵A应具有严格的对角优势–在矩阵的每一行中,对角线的上的元素的绝对值大于其它元素的绝对值的和。当且仅当此时,雅可比迭代才具有唯一解。且经过数学家证明此时高斯-赛德尔迭代法同样会收敛。那么如何判断收敛呢?迭代跳出条件个人所设置的最大迭代次数。收敛时所计算的精度问题。具体展示为前后原创 2021-04-24 16:51:23 · 3987 阅读 · 0 评论 -
【计算方法】三角分解法(线性方程组的求解)
接着我们联立AX=B,A=LU可得到LUX=B;到这里我们假设UX=Y,则原式又转变为LY=B。到这里我们需要逆向思维进行求解,我们采用前向替代法解的Y,然后对UX=Y采用回代法也就是求解上三角线性方程组的方法进行求解,最终解的X。回代法在之前blog写过了,这里不再赘述。前向替代法其实就是将回代法反过来用。例题【问题描述】为求解一个线性方程组,首先采用偏序选主元策略的三角分解法构造矩阵L,U和P,再用前向替换法对方程组LY=PB求解Y,最后用回代法对方程组UX=Y求解X。【输入形式】在屏幕上.原创 2021-04-24 15:30:31 · 2761 阅读 · 0 评论 -
【计算方法】高斯消去法(线性方程组的求解)
在本章,我们需要了解一些基本的线性代数基础知识。如非奇异矩阵,矩阵的初等变换等。高斯消元法我们以一个例子来讲解高斯消元法那么,我们可以将它抽象为一个增广矩阵,该矩阵由系数矩阵和y矩阵组成。我们采用初等变换的方法将系数矩阵转换为上三角矩阵,该做法即为高斯消去法。其中要注意,在做初等交换时,若akk=0,则为需要将k行去与其下面的行进行交换,寻求非零元,若不存在非零元,则该系数矩阵时退化矩阵,该线性方程组也寻求不到唯一解。若化简成功则只需要应用上次讲的上三角线性方程组求解的解法即可解的答案。有回代的原创 2021-04-24 15:13:50 · 7523 阅读 · 0 评论 -
【计算方法】上三角线性方程组(线性方程组的求解)
本章会设计部分线性代数知识,如果你不知道也没关系,因为这影响并不大,通过后面的实例说明及代码演示并不难理解。上三角线性方程组我们假设AX=B为上三角线性方程组,如果有akk≠0,k=1,2,…,n,则该方程组存在唯一解。此时我们采用回代法来解决该问题。具体回代过程如下图例题【问题描述】在一个上三角线性方程组基础上,进行线性方程组求解。【输入形式】在屏幕上依次输入方阵阶数n,系数矩阵A和常数矩阵B。【输出形式】每一行输出一个根【样例1输入】44 -1 2 30 -2 7 -40原创 2021-04-24 14:23:54 · 1555 阅读 · 0 评论 -
【计算方法】牛顿-拉弗森法(非线性方程的求解)
牛顿法设函数y=f(x)同x轴相较于点(p,0),我们假设初始值p0在p附近,过函数曲线上点(p0,f(p0))的切线与x轴交线为p1如图上这样反复迭代,不断逼近p点,这里同样可以用斜率的公式去推导p1和p0的关系式:经过证明,该玩意可以推广至pk项和pk-1项,且是收敛的。同时公式的推导也可以采用泰勒展开式去推导。需要注意除零错误,可以看到导数项是作为分母,不能为零的。割线法由于该方法是需要求导数项的,为了避免导数的计算,我们可以做进一步的优化,然后我们依然通过斜率的方式来推导公式原创 2021-04-20 20:41:15 · 1579 阅读 · 0 评论 -
【计算方法】不动点迭代法(非线性方程的求解)
一、根的初始值的确定首先最简单的方法莫过于画一个函数图像看一看。其次,我们可以使用如下两个原则去确定初始根<1>、y(k-1)y(k)<0,该点的左右两边y值正负号相反,由中值定理知道必有一根。<2>、|y(k)|<一个小数&&(y(k)-y(k-1))(y(k+1)-y(k))<0;这表示y(k)足够小,且曲线的斜率在该点附近改变正负号我们以以下这道例题为说明例题【问题描述】在[a,b]区间内寻找方程x5-2*x-1=0的根的初始近原创 2021-04-20 20:14:46 · 10492 阅读 · 0 评论 -
【计算方法】试值法与二分法(非线性方程的求解)
一、二分法对于一个连续函数f(x),若它有根,显然在根的两边会改变符号。假设在区间[a,b]有根,那么应该有f(a)*f(b)≤0;在二分法中,我们只需要找该区间的中点c=(a+b)/2,利用根的两边符号改变去不断取中值,使得点迫近根。二分法定理这不作过多叙述在了解大概后,我们还需要知道何时需要终止程序的运行:终止条件主要取决于这几个方面1、迭代次数的限制int n = floor((log(b - a) - log(0.5 * pow(10, -d))) * 1.0 / log(2));2原创 2021-04-13 13:20:05 · 1743 阅读 · 0 评论