简介

流体力学数值方法 中介绍的方法

流程

考虑算子方程 L(u) = f u \(\in\) D

定义域D是满足齐次边界条件的,具有和微分算子L先适应的连续可微性要求的函数空间。如果微分方程具有非齐次边界条件,则需要现寻找一个满足非齐次边界条件的特解,然后将微分方程转化为齐次边界条件的算子方程。

Ritz--Galerkin法解题基本步骤如下:

  1. 写出积分表达式

    根据上两节的分析,不论是从变分原理导出的变分表达式,还是采用Galerkin法导出的的加权余量几分式,都可以归结于下面的积分表达式
\[\begin{equation*}
\int_{\Omega} \left[ L(u) - f \right]\delta ud\Omega = 0 \, (1-83)
\end{equation*}
\]
  1. 在D内选取基函数序列{\(\phi_i\)}(i=1,2...)。这个基函数的线性组合可以任意精度地逼近D中任何一个函数。
  2. 将方程的近似解表示为n个基函数的线性组合,构成n级近似解
\[u_n = \sum_{j=1}^{n} \alpha_j \phi_j \,(1-84)
\]

式中\(\alpha_j\)(j=1,2...n)是待定系数。积分式中的变分量 \(\delta u\) 是积分式中的权函数

\[\delta u = \phi_i (i=1,2...n) \,(1-85)
\]
  1. 将式(1-84)和式(1-85)代入式(1-83),即构成以 \(\alpha_1 、\alpha_2 ... \alpha_n\) 为未知量的n个代数方程
\[\begin{equation*}
\int_{\Omega} L \left( \sum^{n}_{j=1} \alpha_{j} \phi_{j} \right) \phi_{i} d \Omega = \int_{\Omega} f\phi_i d\Omega \, (1-86) (i = 1,2,...n)
\end{equation*}
\]

如果L是线性算子,则式(1-86)是n阶线性代数方程组

\[A_{ij}\alpha_j = b_i (i=1,2,...n) \, (1-87a) \\
A_{ij} = \int_{\Omega} L(\phi_j)\phi_jd\Omega \, (1-87b) \\
b_i = \int_{\Omega} f \phi_i d\Omega \, (1-87c)

\]

  1. 求解代数方程组式(1-86)或(1-87),即可获得近似解式(1-84)中的各个系数\(\alpha_1 、\alpha_2 ... \alpha_n\)。带入(1-84)中获得近似解 \(u_n\) 的表达式。

iga 入门值 rtiz-galerkin 法解题步骤的更多相关文章

  1. 机器学习入门04 - 使用TensorFlow的起始步骤 (First Steps with TensorFlow)

    原文链接:https://developers.google.com/machine-learning/crash-course/first-steps-with-tensorflow/ 1- 工具包 ...

  2. OpenCV-Python入门教程6-Otsu阈值法

    在说Otsu之前,先说几个概念 灰度直方图:将数字图像中的所有像素,按照灰度值的大小,统计其出现的频率.其实就是每个值(0~255)的像素点个数统计. Otsu算法假设这副图片由前景色和背景色组成,通 ...

  3. Matlab:导数边界值的有限元(Galerkin)法

    tic; % this method is transform from Galerkin method %also call it as finit method %is used for solv ...

  4. Python入门 值内存管理与所有的关键字

    值内存管理 Python采用的是基于值得内存管理方式,如果为不同变量赋值为相同值,这个值在内存中只有一份,多个变量指向同一块内存地址. id(x) : 用于返回变量所指值的内存地址 x = 3 pri ...

  5. hadoop入门学习教程--DKHadoop完整安装步骤

    使用hadoop版本是DKH标准三节点发行版,DKHadoop版本的易用性比较好,环境部署要简单的多,参考此篇安装前请先下载DKHadoop版本,网盘链接:https://pan.baidu.com/ ...

  6. [Leetcode] Backtracking回溯法解题思路

    碎碎念: 最近终于开始刷middle的题了,对于我这个小渣渣确实有点难度,经常一两个小时写出一道题来.在开始写的几道题中,发现大神在discuss中用到回溯法(Backtracking)的概率明显增大 ...

  7. Python中参数多个值的表示法

    今天在写Python脚本时,调用了数据管理-制图综合-融合工具,在ArcGIS里操作的参数设置如下: 如果融合字段只有一个那好办,如果融合字段有多个我该怎么表达,查看帮助文档中的示例代码明白了: 所以 ...

  8. device tree 負值 property 寫法

    倘若你要設定 負值的property, 可能需要括符才會 build 過. 正確 decidegc = <(-10)>; 錯誤 decidegc = <-10>;

  9. java基础入门之数组排序冒泡法

    public class ArrayTest03{ /* Name:数组排序,冒泡法 Power by :Stuart Date:2015-4-23*/ public static void main ...

  10. 05 . Python入门值循环语句

    一.Python循环语句 程序一般情况下是按照顺序执行的 编程语言提供了各种控制结构,允许更复杂的执行路径 Python中的循环语句有for和while但没有do while 循环语句允许我们执行一个 ...

随机推荐

  1. phpoffice php操作excel表格的导入和导出

    https://packagist.org/packages/phpoffice/phpexcel 使用: composer require phpoffice/phpexcel 控制器引入 //引入 ...

  2. mysql设置时区

    参考:https://blog.csdn.net/vkingnew/article/details/82149726 查看时区 show variables like '%time_zone%'; 设 ...

  3. Java开发手册——【强制】所有整型包装类对象之间值的比较,全部使用 equals 方法比较

    Java开发手册说明: 对于 Integer var = ? 在-128 至 127 之间的赋值,Integer 对象是在 IntegerCache.cache 产生,会复用已有对象,这个区间内的 I ...

  4. 【笔记】用伽马函数证明标准正态分布EX4的值为3

    2020-11-13 看了博客标准正态分布的E(X^4)积分求解的极坐标变换证明方法,已经叹服不已,然后看了底下老哥的评论,用伽马函数可以口算出来,遂去查了一下,真香!发篇博客记录一下. 现在的问题, ...

  5. 作业时间之"最早时间和最晚时间"

    一.从左往右(小到大)算最早时间 0+2=2 0+3=3 因为3比2大所以选择3(早大晚小),需活动无时间所以不用加 3+4=7 7+3=10 因为13号点有两个 2+5=7 和 11号点的10(虚活 ...

  6. Flutter内嵌H5页面与前端通信:实现无缝交互的技术浅析

    @charset "UTF-8"; .markdown-body { line-height: 1.75; font-weight: 400; font-size: 15px; o ...

  7. TVM:Object家族

    Object.h概述 命名空间: TVM::runtime 文件中包含的结构: 1.结构体TypeIndex 2.类Object 3.类ObjectPtr 4.类ObjectRef 5.结构体Obje ...

  8. SignalR服务端嵌入到WPF

    用的是.net framework 4.7.2的WPF. <Window x:Class="EBServerTry.MainWindow" xmlns="http: ...

  9. RBMQ与odoo15的集成

    背景:在对接物联网设备时候常用的协议就是:MQTT.AMQ.https.还有WebSocket,此案例就是针对接物联网设备传输的消息的消费 原理:通过新建守护线程的方式来启动mq服务,来消费设备平台端 ...

  10. Qt的一个大坑:设置QPlainTextEdit和QTextEdit背景色

    在工作中遇到一个需求,需要在播放器上显示英文字幕,当鼠标点击某个单词时, 可以显示该单词的中文含义. 播放器主窗口类直接继承自QGraphicsView,然后在其上创建一个透明的QPlainTextE ...