公式

拉格朗日插值 2点一阶(一次多项式) 3点二阶(二次多项式)
插值节点
基函数
插值函数
说明 每2点间有2个基函数 每3点间有3个基函数



常用数值积分 梯形公式 辛普森公式 牛顿-科茨求积公式
性质 拉格朗日型 拉格朗日型 拉格朗日型
基函数 2点线性插值 3点二次插值 n+1点n次插值
插值点
插值函数
求积公式

基础方法 梯形 辛普森 6阶牛顿-科茨
进化方法 6次复化梯形 6次加密复化梯形 6次龙贝格

三个有关正交的概念

  • 如果 我们称函数与在区间上正交;

  • 如果 称函数与在区间上带权正交;

  • 如果有一个"多项式"序列(每一项就表示一个k次多项式),如果这个多项式序列所有元素满足下面的规律:


我们称为在区间上带权的"正交多项式序列";序列中的每一个元素,我们可以叫它"一个正交多项式"!


clear; clc;
format long;

syms x;
n = double(input('输入使用几点(n)的高斯-勒让德插值:'));
% n点插值的高斯-勒让德多项式Pn和对应插值节点Xi:
f = x^2 -1;
fprintf('%d点高斯-勒让德多项式为:\n',n)
P = vpa(1/(2^n*factorial(n)) * diff(f^n,x,n))   % 勒让德多项式
Xi = sort(double(solve(P)))';                   % 对应的插值节点

% n点高斯-勒让德插值节点对应的插值系数Ai:
xnum = Xi;
l = sym(zeros(1,n));  
Ai = zeros(1,n);
for m = 1:n
    l(m) = prod(x - xnum([1:m-1 m+1:n]))/prod(xnum(m) - xnum([1:m-1 m+1:n])); 
    Ai(m) = double(int(l(m),x,-1,1));   % 插值系数
end

fprintf('%d点高斯-勒让德插值节点为:\n',n);
Xi
fprintf('%d点高斯-勒让德插值节点对应的系数为:\n',n);
Ai
  插值节点 插值系数
10阶高斯-勒让德求积







原函数与精确解 10点高斯-勒让德求积 10点复化梯形(分段线性)求积
小数点后3位 小数点后2位

\left\{ \begin{matrix} \color{blue}{b_1} & \color{blue}{c_1} & 0 & 0 & 0 & 0 \\ \color{blue}{a_2} & \color{blue}{b_2} & \color{blue}{c_2} & 0 & 0 & 0 \\ 0 & \color{blue}{a_3} & \color{blue}{b_3} & \color{blue}{c_3} & 0 & 0 \\ 0 & 0 & \color{blue}{a_4} & \color{blue}{b_4} & \color{blue}{c_4} & 0 \\ 0 & 0 & 0 & \color{blue}{a_5} & \color{blue}{b_5} & \color{blue}{c_5} \\ 0 & 0 & 0 & 0 & \color{blue}{a_6} & \color{blue}{b_6} \end{matrix} \right\} \left\{ \begin{matrix} x1 \\ x2 \\ x3 \\ x4 \\ x5 \\ x6 \end{matrix} \right\} = \left\{ \begin{matrix} \color{blue}{r_1} \\ \color{blue}{r_2} \\ \color{blue}{r_3} \\ \color{blue}{r_4} \\ \color{blue}{r_5} \\ \color{blue}{r_6} \\ \end{matrix} \right\}

第一步:将系数矩阵转A为上三角矩阵

第一行方程: 两边除以得:
重新记录为:
新的矩阵方程变为:
\left\{ \begin{matrix} \color{red}{1} & \color{red}{r_1} & 0 & 0 & 0 & 0 \\ \color{blue}{a_2} & \color{blue}{b_2} & \color{blue}{c_2} & 0 & 0 & 0 \\ 0 & \color{blue}{a_3} & \color{blue}{b_3} & \color{blue}{c_3} & 0 & 0 \\ 0 & 0 & \color{blue}{a_4} & \color{blue}{b_4} & \color{blue}{c_4} & 0 \\ 0 & 0 & 0 & \color{blue}{a_5} & \color{blue}{b_5} & \color{blue}{c_5} \\ 0 & 0 & 0 & 0 & \color{blue}{a_6} & \color{blue}{b_6} \end{matrix} \right\} \left\{ \begin{matrix} x1 \\ x2 \\ x3 \\ x4 \\ x5 \\ x6 \end{matrix} \right\} = \left\{ \begin{matrix} \color{red}{p_1} \\ \color{blue}{r_2} \\ \color{blue}{r_3} \\ \color{blue}{r_4} \\ \color{blue}{r_5} \\ \color{blue}{r_6} \\ \end{matrix} \right\}

第二行方程:
用新矩阵的第一行消去第二行的得:
重新记录为:x_2 + \color{red}{r_2}x_3 = \color{red}{p_2} \quad \color{red}{r_2} = \frac{\color{blue}{c_2}}{\color{blue}{b_2} - \color{blue}{a_2}\color{red}{r_1}} \quad \color{red}{p_2} = \frac{\color{blue}{r_2} - \color{blue}{a_2}\color{red}{p_1}}{\color{blue}{b_2} - \color{blue}{a_2}\color{red}{r_1}}
新的矩阵方程变为:
\left\{ \begin{matrix} \color{red}{1} & \color{red}{r_1} & 0 & 0 & 0 & 0 \\ \color{red}{0} & \color{red}{1} & \color{red}{r_2} & 0 & 0 & 0 \\ 0 & \color{blue}{a_3} & \color{blue}{b_3} & \color{blue}{c_3} & 0 & 0 \\ 0 & 0 & \color{blue}{a_4} & \color{blue}{b_4} & \color{blue}{c_4} & 0 \\ 0 & 0 & 0 & \color{blue}{a_5} & \color{blue}{b_5} & \color{blue}{c_5} \\ 0 & 0 & 0 & 0 & \color{blue}{a_6} & \color{blue}{b_6} \end{matrix} \right\} \left\{ \begin{matrix} x1 \\ x2 \\ x3 \\ x4 \\ x5 \\ x6 \end{matrix} \right\} = \left\{ \begin{matrix} \color{red}{p_1} \\ \color{red}{p_2} \\ \color{blue}{r_3} \\ \color{blue}{r_4} \\ \color{blue}{r_5} \\ \color{blue}{r_6} \\ \end{matrix} \right\}

每一行同理递推后,最终新的矩阵方程变为:
\left\{ \begin{matrix} \color{red}{1} & \color{red}{r_1} & 0 & 0 & 0 & 0 \\ \color{red}{0} & \color{red}{1} & \color{red}{r_2} & 0 & 0 & 0 \\ 0 & \color{red}{0} & \color{red}{1} & \color{red}{r_3} & 0 & 0 \\ 0 & 0 & \color{red}{0} & \color{red}{1} & \color{red}{r_4} & 0 \\ 0 & 0 & 0 & \color{red}{0} & \color{red}{1} & \color{red}{r_5} \\ 0 & 0 & 0 & 0 & \color{red}{0} & \color{red}{1} \end{matrix} \right\} \left\{ \begin{matrix} x1 \\ x2 \\ x3 \\ x4 \\ x5 \\ x6 \end{matrix} \right\} = \left\{ \begin{matrix} \color{red}{p_1} \\ \color{red}{p_2} \\ \color{red}{p_3} \\ \color{red}{p_4} \\ \color{red}{p_5} \\ \color{red}{p_6} \\ \end{matrix} \right\}

第二步:方程逆序求解


Thomas算法通式

\left\{ \begin{matrix} b_1 & c_1 & & & 0\\ a_2 & b_2 & c_2 & & \\ & a_3 & b_3 & \ddots & \\ & & \ddots & \ddots & c_{n_1} \\ 0 & & & a_n & b_n \end{matrix} \right\} \left\{ \begin{matrix} x_1 \\ x_2 \\ x_3 \\ x_4 \\ x_5 \\ x_6 \end{matrix} \right\} = \left\{ \begin{matrix} d_1 \\ d_2 \\ d_3 \\ d_4 \\ d_5 \\ d_6 \end{matrix} \right\}

系数变化通式:
c^{'}_i=\begin{cases} \frac{c_i}{b_i} & i = 1 \\ \frac{c_i}{b_i - c^{'}_{i-1}a_i} & i = 2,3,\cdots,n-1\\ \end{cases} \quad\quad d^{'}_i=\begin{cases} \frac{d_i}{b_i} & i = 1 \\ \frac{d_i - d^{'}_{i-1}a_i}{b_i - c^{'}_{i-1}a_i} & i = 2,3,\cdots,n-1\\ \end{cases}

解的通式:

参数 f(x) s(x) k
含义 杆上温度函数 杆上单位长度的产热率 杆材料热传导系数;
  Neumann边界条件 Dirichlet边界条件
内容 杆左端处的热通量已知 杆右端处温度已知;
公式

发现:公式中与都是的函数,可以用个插值点近似

注意:

  • 上两式中的是同一套拉格朗日插值基函数!因为大家都是用的同一个区域;
  • 这个例子用的全是分段线性拉格朗日插值,即每个基函数都是前文中线性函数;
  • 插值点包括左右2个端点,即总共个插值点,把杆分成了份;
  • 区间可以不均分,随便怎么分都行!一般给一种固定的区间分法是为了好编程而已。

基于Galerkin积分式:

现在,我们把带进去相乘并进行展开,将和缩写为和:

对于右边第一项,我们用分部积分法再展开为:

将上式带回上上式,将Galerkin积分式完整展开为:

根据插值的性质,将公式进一步改写为:

根据分段线性插值基函数性质,,即左边第二项为0;根据边界条件,左边第一项为已知。带入这两个条件到上式中:

一般将上式带的都移到左边,带都移动右边,故写成:

上式即为"Galerkin有限元基本方程",也就是有限元操作的"方程改写"完成。

完成了公式改写,下面要对新的公式进行空间离散,根据分段线性插值:

将上式带入到"Galerkin有限元基本方程"中:

\sum_{i,j=1}^{N_E}\left( \int_{0}^{L}\frac{d\phi_i}{dx}\frac{d\phi_j}{dx}dx \right)f_j = - \left( \int_{0}^{L}\frac{d\phi_i}{dx}\frac{d\phi_{N_{E+1}}}{dx}dx \right)f_L + \frac{q_0}{k}\delta_{i,1} + \sum_{i,j=1}^{N_E+1}\left( \int_{0}^{L}\phi_i\phi_jdx \right)s_j

注意:为什么上式左边求和只到?因为边界条件是已知的,因为把最后一项(已知项)单独拿出了而已。上式方程用矩阵来表达:

其中:

扩散矩阵D和质量M如下:

具体内容很简单:

D_{ij}=\begin{cases} \frac{1}{h_1} & i = j = 1 \\ \frac{1}{h_{i-1}} + \frac{1}{h_{i}} & i = j ≠ 1,N_E+1 \\ \frac{1}{h_{N_E}} & i = j = N_E+1 \\ -\frac{1}{h_i} & j = i + 1 \\ -\frac{1}{h_{i-1}} & j = i - 1 \\ 0 & 其他 \end{cases} \quad\quad M_{ij}=\begin{cases} \frac{h_1}{3} & i = j = 1 \\ \frac{h_{i-1}}{3} + \frac{h_{i}}{3} & i = j ≠ 1,N_E+1 \\ \frac{h_{N_E}}{3} & i = j = N_E+1 \\ \frac{h_i}{6} & j = i + 1 \\ \frac{h_{i-1}}{6} & j = i - 1 \\ 0 & 其他 \end{cases}

M_{ij}=\begin{cases} \frac{h_1}{3} & i = j = 1 \\ \frac{h_{i-1}}{3} + \frac{h_{i}}{3} & i = j ≠ 1,N_E+1 \\ \frac{h_{N_E}}{3} & i = j = N_E+1 \\ \frac{h_i}{6} & j = i + 1 \\ \frac{h_{i-1}}{6} & j = i - 1 \\ 0 & 其他 \end{cases}

D = \left\{ \begin{matrix} \frac{1}{h_1} & -\frac{1}{h_1} & 0 & 0 & \cdots & 0 & 0 & 0\\ -\frac{1}{h_1} & \frac{1}{h_1} + \frac{1}{h_2} & -\frac{1}{h_2} & 0 & \cdots & 0 & 0 & 0\\ \vdots & \vdots & \vdots & \vdots & & \vdots & \vdots & \vdots \\ 0 & 0 & 0 & 0 & \cdots & \frac{1}{h_{N_E-3}} + \frac{1}{h_{N_E-2}} & \frac{1}{h_{N_E-2}} & 0 \\ 0 & 0 & 0 & 0 & \cdots & -\frac{1}{h_{N_E-2}} & \frac{1}{h_{N_E-2}} + \frac{1}{h_{N_E-1}} & -\frac{1}{h_{N_E-1}} \\ 0 & 0 & 0 & 0 & \cdots & 0 & -\frac{1}{h_{N_E-1}} & \frac{1}{h_{N_E-1}} + \frac{1}{h_{N_E}} \end{matrix} \right\}_{N_E \times N_E}

\tilde{M} = \left\{ \begin{array}{cccccccc|c} \frac{h_1}{3} & \frac{h_1}{6} & 0 & 0 & \cdots & 0 & 0 & 0 & 0\\ \frac{h_1}{6} & \frac{h_1}{3} + \frac{h_2}{3} & \frac{h_2}{6} & 0 & \cdots & 0 & 0 & 0 & 0\\ 0 & \frac{h_2}{6} & \frac{h_2}{3} + \frac{h_3}{0} & 0 & \cdots & 0 & 0 & 0 & 0 \\ \vdots & \vdots & \vdots & \vdots & & \vdots & \vdots & \vdots & \vdots\\ 0 & 0 & 0 & 0 & \cdots & \frac{h_{N_E-3}}{3} + \frac{h_{N_E-2}}{3} & \frac{h_{N_E-2}}{3} & 0 & 0\\ 0 & 0 & 0 & 0 & \cdots & \frac{h_{N_E-2}}{6} & \frac{h_{N_E-2}}{3} + \frac{h_{N_E-1}}{3} & \frac{h_{N_E-1}}{6} & 0\\ 0 & 0 & 0 & 0 & \cdots & 0 & \frac{h_{N_E-1}}{6} & \frac{h_{N_E-1}}{3} + \frac{h_{N_E}}{3} & \frac{h_{N_E}}{6} \end{array} \right\}_{N_E \times (N_E+1)}

  杆长L 单元总数 单元剖分伸缩率a 边界条件 边界常数 热源常数
数值 1.0 16 5 0.0 -1.0 10.0

  杆长L 单元总数 单元剖分伸缩率a 边界条件 边界常数 热源常数
数值 1.0 32 2 -0.2 -1.0 87.4

方程的精确解为:

当时常数:

当时常数:
c_1 = \frac{ f_L - \hat{q_0}exp(-\sqrt{|a|}L) }{ exp(\sqrt{|a|}L) + exp(-\sqrt{|a|}L) } \quad \quad c_2 = \frac{ f_L + \hat{q_0}exp(\sqrt{|a|}L) }{ exp(\sqrt{|a|}L) + exp(-\sqrt{|a|}L) } \quad \quad \hat{q_0} = \frac{q_0}{k\sqrt{|a|}}

  插值节点 插值系数
6阶Lobatto求积



线性代数总结

行列式总结:

  • 行列式一定是正方形的;
  • 对换行列式的两行,行列式结果要变号;
  • 代数余子式:在n阶行列式中,把(i,j)元所在的第i行和第j列划去后,留下来的n-1阶行列式叫做的"余子式",记做(就是原行列式简单的划掉一行和一列后剩下的东西)。元的"代数余子式"记为。代数余子式和余子式之间的关系为:

矩阵总结

(1)基本内容:

  • 矩阵很多特殊操作,尤其是牵扯到相应行列式时,这个矩阵都是正方形的;
  • 矩阵A的伴随矩阵:矩阵A的各个元素位置由元素对应的代数余子式代替,并做一次转置后得到:

A^* = \left( \begin{matrix} A_{11} & \color{red}{A_{21}} & \cdots & A_{n1} \\ \color{red}{A_{12}} & A_{22} & \cdots & A_{n2} \\ \vdots & \vdots & & \vdots \\ A_{1n} & A_{2n} & \cdots & A_{nn} \end{matrix} \right)

  • 矩阵可逆判断(充要条件1):;可逆矩阵 = 非奇异矩阵;逆矩阵求法:

  • 克拉默法则:n个方程n个未知数的正方形方程组,如果正方形系数矩阵A的行列式值不为0,即,则该方程组有唯一解!

  • 解线性方程组矩阵的3种初等变换:1. 对换两行;2. 某行元素整体乘个系数k;3. 把做完2步的那一行加到另一行去。初等变换不改变方程的解!!即始终同解。与行列式变换不同!!

  • 矩阵可逆判断(充要条件2):矩阵A经过有限次初等变换后,可以变成单位矩阵E


(2)矩阵与线性方程组:

  • 对应线性方程组:,右端矩阵b不为0是"非齐次线性方程组",为0就是"齐次线性方程组"。系数矩阵A可以是正方形也可以是长方形

  • 矩阵A(任意形状)的子式:在mxn矩阵A中,任取k行k列(k≤m, k≤n),位于这些行列交叉处的个元素,不改变它们在A中所处的相对位置而得到k阶行列式,称为矩阵A的k阶(主)子式。注意:子式是一个行列式,也就是说它是一个具体的数值

  • 矩阵(主)子式顺序主子式:主子式/子式就是上面说的,取的行和列是没有规律、随便取的;顺序主子式:必须是从左上角往右下角取这样变化:

图1:各阶顺序主子式
  • 矩阵A(任意形状)的:矩阵A的最高阶非0子式所对应的阶数r,就是矩阵A的秩。秩可记做:;范围是:;

  • 秩的深刻意义

    • 矩阵A(任意形状)的初等变换、转置不会改变矩阵的秩;
    • 矩阵A做初等变换后得到的行阶梯矩阵,矩阵A的秩 = 行阶梯矩阵非0行的行数!一般就是用行阶梯来求秩的;
  • 秩在n元解线性方程组中的意义:不论正方形还是长方形方程组,都可以用""来判断方程解的情况:

注意一点:长方形矩阵因为"方程个数"和"未知数个数"不相同,所以会导致上面3种解的情况出现。

  • 矩阵可逆判断(充要条件3):可逆矩阵的秩 = 阶数,即为"满秩矩阵";

(3)特殊矩阵类:都是方阵

  • 正交矩阵(n阶方阵):如果n阶方阵A满足下面式子,则称方阵A为正交矩阵:

  • 正交矩阵的2条性质:

    • 若A为正交阵,则和都是正交矩阵(其实两者相等)!并且正交矩阵的行列式为1,即;
    • 两个正交阵相乘,还是正交阵;
  • 方阵特征值:设A为n阶方阵,如果数和n行非0列向量x满足如下关系式,则称数为矩阵A的一个"特征值(可以是复数结果)",此时的列向量x称为A对应特征值的"特征向量":

要想求解"特征值",就是求:这个1元n次方程;

  • 方阵特征值的3条性质:

    • 所有特征值之和 = 矩阵A对角元素之和;
    • 所有特征值乘积 = 矩阵A行列式的值;
    • 若是矩阵的特征值,则是特征值,是特征值;
  • 矩阵可逆判断(充要条件4):n个特征值全 ≠ 0;

  • 相似矩阵(2个n阶方阵):设、都是n阶方阵,若有可逆矩阵P,使得和满足如下关系,则称矩阵与相似!可逆称为把变成的"相似变换矩阵":

  • 相似矩阵的2条性质:

    • 若与相似,则二者特征值相同;
    • 矩阵的n个特征值对角元素的对角阵,若想满足,即矩阵可以对角化(与对角阵近似),必须满足:矩阵的n个特征值互不相同;
  • 实对称矩阵性质:

    • 一定可以对角化,对角阵元素为n个互不相等的特征值;
    • 为n阶方阵,则下面3个都是对称阵:

  • 正定阵:特征值全为正的对称阵;或:各阶"顺序主子式"都>0的对称阵;

  • 正定矩阵3条性质:

    • (对称)正定阵特征值都是正数;
    • (对称)正定阵主元都是正数;

(4)矩阵杂项类:

  • 对角阵、上三角阵、下三角阵,行列式值都是对角元素乘积;
  • 严格对角占优矩阵:每一行中对角元素的值的模 > 其余元素值的模之和!即:

  • 弱对角占优矩阵:上面公式取号;

  • 严格对角占优矩阵的4条性质:

    • 若系数矩阵A是严格对角占优矩阵,则关于它的线性代数方程组有解;
    • 若系数矩阵A为严格对角占优矩阵,则A为非奇异矩阵;
    • 若系数矩阵A为严格对角占优矩阵,各阶顺序主子式必不为0;
    • 若系数矩阵A为严格对角占优矩阵,雅克比迭代法、高斯-赛德尔迭代法和0<ω≤1的超松弛迭代法均收敛。
  • 共轭/Hermite矩阵:如果,则称矩阵为"对称矩阵";如果,则称矩阵为"共轭/Hermite矩阵"。可以看出两者其实差别不大:实数域对称矩阵与共轭矩阵是一回事。

你可能感兴趣的:(公式)