椭圆形方程用超松弛迭代法matlab程序实验报告
matlab求导
    首先建立了两个初始点,将点代入方程并对初值求导得到一个近似解。然后通过调用 init 函数来获取方程的一组超松弛迭代法的超松弛迭代算子,最终使得此近似解收敛于初始值。
    接着设计一个初值,对方程求导,获取一个近似解。然后再调用 init 函数,这次是将上述近似解作为一个超松弛迭代器来运行。第二步,调用 beginmethod 与 dodgef t 函数开始超松弛迭代,并将其运行时间长度设置为任意值。此外,在 next 和 endwith 等函数中还会给出一些控制信息以指明下一步要运行的算子是否需要计算。第三步,对每个新算子的执行过程都进行有效性检查,一旦发现有无法继续运行或结果不正确则立即停止。由于本实验只涉及了用超松弛迭代法求解初值问题,因而并没有考虑后面可能遇到的其他问题,比如求解对称方程、求解微分方程或是运行带有随机数生成功能的程序等。
    再给椭圆拟合直线,使其在空间中与另一条曲线相切,该问题也可看做是求非定常问题的一种形式,且更容易加以处理。根据数学基础知识,可知曲线切点处,曲率为零,这里仍采用平均半径公式。于是便将曲线切点处圆心到直线交点的距离代入到切线斜率中,从而得到非线性方程:,此方程可看做非线性抛物线的特征方程,当取平均半径公式时即可求得斜率
与截距,这样就解决了此类问题。
    最后,我们利用具体例子研究了奇异值分解算法。由于存在大量的奇异值分解算法,所以它对数据分析工作者很有吸引力。经典的分解算法大多是由某些特殊函数构造而成的,这种算法不仅结构复杂,计算量巨大,而且往往在处理边界较多的问题时十分困难。
    总之,对于初值的求解方法,最重要的便是将一般问题转化为简单的非线性问题,但同时又必须保证这些非线性问题可解。本文从初值问题的性质出发,通过对算法、超松弛迭代法、奇异值分解算法等几方面的讨论,最终探索了这类问题的处理方法,希望对读者有帮助!