数值分析
Code_Easy
这个作者很懒,什么都没留下…
展开
-
Matlab利用已知方阵创建斜对角矩阵
Matlab利用已知方阵创建斜对角矩阵原创 2022-11-21 11:04:05 · 1206 阅读 · 0 评论 -
Matlab 求根函数fzero 与 fsolve 区别
Matlab fzero与fsolve方法区别原创 2022-11-20 20:39:29 · 3750 阅读 · 0 评论 -
Matlab 匿名函数利用空矩阵传递参数
b = 2;c = 3.5;x1 = fzero(@(x) cubicpoly(x,b,c),0)x2 = fzero(@cubicpoly,0,[],b,c)function y = cubicpoly(x,b,c)y = x^3 + b*x + c;end两种方法的输出内容一致。x1 = -1.094475926784920e+00x2 = -1.094475926784920e+00匿名矩阵的传递参数的思路是再次定义一个函数,将参数传入。第一种方法比较传原创 2021-04-12 00:20:06 · 611 阅读 · 0 评论 -
Matlab Cholesky出错算例
调用chol函数出错对于矩阵 AA = [0.957166948 0.421761283 0.655740699 0.6557406990.485375649 0.915735525 0.035711679 0.0357116790.800280469 0.79220733 0.849129306 0.8491293060.141886339 0.959492426 0.933993248 0.933993248];A的第3 4 列相同,所以A显然是奇异的,不能进行原创 2021-04-02 17:50:31 · 636 阅读 · 0 评论 -
Maple 列表使用规则
Maple存储数据具有set和list之分,可以直观理解成无序集合,和有序向量之间的区别。在Maple进行插值计算的过程中,需要用到list,因此需要对他的用法进行细致分类。list中的元素可以重复:[x,y,y]利用seq命令进行创建 L:=[seq(x[i], i = 1..4)]numelems(L) 计算元素个数提取元素形成新的列表:第二个元素:L[2]前两个元素:L[1..2]第二个到最后一个:L[2..-1]提取内容(结合op命令):op(L)L[ ]op(L[原创 2020-10-27 21:50:41 · 1515 阅读 · 0 评论 -
二维旋转矩阵结合几何推导
线性代数中,选择矩阵是一类非常重要的矩阵,尤其是在矩阵的正交化过程中,例如Householder变换,Givens变换等地方会用到。教材中的定义看得云里雾里,这里给出推导过程。原创 2020-09-21 14:32:35 · 267 阅读 · 0 评论 -
Matlab向量化再探
一个向量化例子之前的观点是Matlab的向量化的计算效率比for循环高。.今天考察一个例子,计算10000个随机数相加, 平台是Matlab 2018b。先说结论:进行预定义矩阵尺寸的for循环并且减少循环中的重复计算的情况下,效率比自带函数的效率要高。从此看出,提高效率的关键在于定义矩阵尺寸,而向量化不能有效的提高计算速度。计算结果:直接for循环: 0.002595 seconds预定义数组for循环时间: 0.001345 seconds预定义数组for循环,计算好变量时间: 0.0原创 2020-06-12 14:33:09 · 420 阅读 · 0 评论 -
Matlab函数linspace一点记录
Matlab 函数linspace 一点记录官方定义:产生均匀分布的点。调用格式:y = linspace(x1,x2,n)。默认参数:产生100个均匀分布的点。在最近研究过程中,被这个函数摆了一道。其实是自己下意识导致的错误。在n取较大值的时候,程序不会出错。我的错误在于认为 n=1n=1n=1 的时候:a = linspace(0.5 , 1.5, 1) 会产生均值 a = 1...原创 2019-09-27 17:19:24 · 843 阅读 · 1 评论 -
Maple求解线性方程组Ax=b的三种解法
x≔1/A.bx≔A^-1.bx≔MatrixInverse(A).b原创 2019-04-18 18:23:06 · 6237 阅读 · 0 评论 -
SVD与线性代数4个基本子空间的关系
Strange线性代数的最重要的一课,四个基本子空间可以通过SVD完美的展现。以下内容会逐步完善。A=USVTA=USV^TA=USVT, 假设 rank(A)=rrank(A)=rrank(A)=r行空间R(A)=C(AT)R(A)=C(A^T)R(A)=C(AT) : V(1:r,:)V(1:r,:)V(1:r,:);行空间零空间N(A)N(A)N(A) : V(r+1:n,:)V(...原创 2019-04-17 18:32:17 · 1515 阅读 · 0 评论 -
[数值分析] 利用QR分解求解最小二乘法的原理
当方程阶数较大的时,法方程的条件数变得非常大,需要使用QR分解来求解。原创 2019-04-17 08:50:28 · 3303 阅读 · 0 评论 -
Maple假设正整数
在进行计算以后,清除变量是一个良好的习惯。通过命令n='n';来清除。Maple编程中的常用的参数限定positive 正数negative 负数negzero 0或负0poszero 0或正0integer 整数nonnegint 非负整数nonposint 非正整数negint 负整数posint ...原创 2018-03-10 19:14:18 · 2415 阅读 · 0 评论 -
第二类边界条件下三维热传导问题求解
对于如下模型:采用如下离散格式:对于边界条件的处理:计算结果:1. 2. 选取几个面的切片图:原创 2018-03-21 13:58:21 · 12014 阅读 · 8 评论 -
MATLAB unifrnd 与 rand函数的区别
MATLAB unifrnd 与 rand函数的区别相同点:二者都是利用rand函数进行随机值计算。二者都是均匀分布。不同点:unifrnd是统计工具箱中的函数,是对rand的包装。rand函数可以指定随机数的数据类型。下面是unifrnd源代码,可以看出该函数可以通过指定参数进行计算。function r = unifrnd(a,b,varargin)%UNIFRND ...原创 2019-04-08 23:07:48 · 9058 阅读 · 0 评论 -
Matlab decomposition函数的使用(R2017b引入)
decomposition可以创建一个可重复使用的分解,例如LU,LDL,QR等使得求解Ax=b更加高效。例如:dA = decomposition(A) % dA\b % 与普通求解方程通用的调用格式可以得到与A\b相同的结果,但是这样求解速度更快。对于需要重复求解的情况,这样的操作更加提高计算效率。dA的使用方式:转置: dA'乘以负数 -dA乘以系数 c*dA 或者dA...原创 2019-04-12 14:20:45 · 2094 阅读 · 0 评论 -
Matlab lsqminnorm(R2017b引入)
– 线性方程Ax=b的最小范数解。主要就是要注意改函数的解与A\b的不同。不需要求解pinv来得到方程的解。对于inconsistent方程组求解,有以下实例:求解不定方程2x1+3x2=82x_1+3x_2=82x1+3x2=8。利用blackslash求解。A = [2 3];b = 8;x_a = A\bx_a = 2×1 02.6667调用 lsq...原创 2019-04-12 14:46:52 · 4138 阅读 · 0 评论 -
Matlab导出适合图片大小的pdf格式图片
在利用Latex写文章的时候需要使用pdf格式图片,利用Matlab print命令直接导出的pdf是页面大小的size,没法直接使用,需要使用如下命令进行导出:这个是经过验证有效的方法。% 导出到pdfset(gcf,'Units','Inches');pos = get(gcf,'Position');set(gcf,'PaperPositionMode','Auto','Pap...原创 2019-04-12 15:03:09 · 9422 阅读 · 6 评论 -
Maple对矩阵元素积分
在有限元刚度阵推导过程中,会遇到对矩阵进行积分的操作。我们有两种方法来解决这个问题:1. 通过map函数,把int操作映射到矩阵的各个元素上。具体操作如下:2. 调用MTM软件包,就可以直接利用int命令对矩阵进行积分。具体操作如下:...原创 2018-03-10 19:05:30 · 2016 阅读 · 0 评论