【编程训练】二维导热 - 差分模拟 显示迭代法 问题 模拟绝热环境下有初始温度差的二维平面的温度随时间的变化情况。 (gif见知乎文章) 代码 %二维热传导过程显式差分模拟 clear;close all;clc; t = 0.03; %时间范围,计算到0.03h x = 1;y = 1; %空间范围,0-1m m = 320; %时间t方向分320个格子 n = 32; 2022-08-24 显式差分 交替隐式差分 偏微分方程
拟牛顿法 拟牛顿法(Quasi-Newton Methods) 是求解非线性优化问题最有效的方法之一。其在牛顿法的基础上,利用相邻两个点的位移和一阶导数信息构造与二阶导数阵相似的正定矩阵。从而以在不直接计算Hessian矩阵的情况下实现高维问题的超线性收敛。 牛顿法通过计算每一步的梯度 \(\nabla f\left(\mathbf{x}_{k}\right)\) 与Hessian矩阵 \(\math 2022-08-24 拟牛顿法 BFGS法 DFP法
牛顿迭代与高斯牛顿法 一元函数下 对于一元函数 \(f(x)\) ,其泰勒二阶展开如下为 \[f(x_{k+1})=f(x_k)+f'(x_k)(x_{k+1}-x_k)+\frac{1}{2}f''(x_k)(x_{k+1}-x_k)^2+O(x^2).\] 记 \(z=x_{k+1}-x_k\) 省略余项可表示为 \[f(x_{k+1})\approx f(x_k)+f' 2022-08-19 牛顿迭代 高斯牛顿法
【摘抄】夜访镜小记 注意!此文仅作摘抄,禁止挪用从事商业用途! 前语:这是一篇蹩脚语言模仿写就的文章。倘若有人阅读它,发现点什么的话,我需要说明,它没有任何嘲讽谁的意思,你的一切发现,请算作是我的弊病。 《夜访镜小记》 今夜瞧见镜子跟前有道亮光晃眼,走近才发现有人在里面点灯写着东西。敲敲镜面,里头的人看到我大吃一惊,骇得合上笔记:“现在还有人看得到镜里头有人?” 2022-06-29 随笔 摘抄
【编程训练】路径存储与迷宫寻路 - 指针 问题描述 试图充分运用所学的C++面向对象的知识和封装性,完成一个拓展度高,可编辑型高,有多种兼容性接口的程序。能完成对路径和结点的简历和存储,以此进行最短寻路。达到对所学内容的巩固。 结果展示 可视化结果 代码 注:以下为合并后的代码,根据注释是可以拆分为很多头文件的,更加可读和可编辑。 #include<iostream> #include<ioman 2022-06-26 C++ 指针 SPFA 栈 链表
【编程训练】山区地貌 - 插值 问题描述 山区地貌:在某山区测得一些地点的高程为一个矩阵。(平面区域\(1200<=x<=4000,1200<=y<=3600\)) 试作出该山区的地貌图和等高线图,并对几种插值方法进行比较。 结果展示 原始数据 插值后 插值代码 注:以下采用的是两组线性插值来得到二维平面的插值数据。 对于相同的题型,仅需要修改下面x,y,z。 [M 2022-05-07 二维插值 分段插值 多项式插值 埃尔米特插值 样条插值