椭圆型偏微分方程数值解法

article/2025/8/27 23:13:59

一、 一维椭圆方程数值解

在这里插入图片描述
在这里插入图片描述
matlab代码:`

function  chap2_fdm_elliptic_1D
%  一维椭圆方程求解(常微分方程边值问题)
%  -u'' + q(x)u = f(x),  0<x<1,  取q(x) = x, f(x) = (x-1)exp(x)
%  u(0) = 1,  u(1) = e;   边界条件
%  真解为 u = exp(x)N = 20;
h = 1/N; 
x_all = (0:h:1)';
x = x_all(2:end-1);% 方程组右端的处理
u0 = 1;
uN = exp(1);
b = f(x);
b(1) = b(1)+u0/h^2;
b(N-1) = b(N-1)+uN/h^2;%  方程组左端矩阵的建立
B = zeros(N,N);
for i = 1:N-1B(i,i) = -2;B(i,i+1) = 1;B(i+1,i) = 1;
end
B = -1/h^2*B(1:N-1,1:N-1);D =zeros(N-1,N-1);
q = q(x);
for i = 1:N-1D(i,i) = q(i);
end
A = B+D;%求解线性方程组(Gauss消去法求解)
u = gauss(A,b);    
u_e = u_exact(x_all);figure(1)
plot(x_all,[u0;u;uN],'r*',x_all,u_e,'b');
endfunction y = u_exact(x)
y = exp(x);
endfunction y = q(x)
y = x;
endfunction y = f(x)
y = (x-1).*exp(x);
endfunction x = gauss(A,B)
%消元过程
n = size(A,2);
m = size(B,2);
for i = 1:mb = B(:,i);for k=1:n-1A(k+1:n,k)=A(k+1:n,k)/A(k,k);         %算子A(k+1:n,k+1:n)=A(k+1:n,k+1:n)-A(k+1:n,k)*A(k,k+1:n);b(k+1:n)=b(k+1:n)-b(k)*A(k+1:n,k); end  %回代过程U=A;b=b;for j =n:-1:2b(j)=b(j)/U(j,j);b(1:j-1)=b(1:j-1)-b(j)*U(1:j-1,j);endb(1)=b(1)/U(1,1);B(:,i)=b;    %这个就是线性方程组的解了  
end
x = B;
end

二、二维椭圆型微分方程

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
matlab代码:

function chap2_fdm_possion_solution
% 二维的possion方程求解
% -Delta u = -2*exp(x+y)   边界(a,b)*(c,d)
%   u(x,0) = exp(x)
%   u(x,1) = exp(x+1)
%   u(0,y) = exp(y)
%   u(1,y) = exp(y+1)
global mLap M_V I hx hya = 0;
b = 1;
c = 0;
d = 1;
M = 40;
N = 30;
hx = (b-a)/M;
hy = (d-c)/N;
x = (a:hx:b)';
y = (c:hy:d)';
[X Y] = meshgrid(x,y);
x_in = (a+hx:hx:b-hx);
y_in = (c+hy:hy:d-hy);
[X_in Y_in] = meshgrid(x_in,y_in);%生成Dxx
d_0 = -2*ones(M-1,1);
d_1 = ones(M-1,1);
d_m1 = d_1;
d_xx = spdiags([d_m1 d_0 d_1],[-1,0,1],M-1,M-1);
d_xx = d_xx/hx^2;
I_N = speye(N-1,N-1);
D_xx = kron(I_N,d_xx);%D_yy
d_0 = -2*ones(N-1,1);
d_1 = ones(N-1,1);
d_m1 = d_1;
d_yy = spdiags([d_m1 d_0 d_1],[-1,0,1],N-1,N-1);
d_yy = d_yy/hy^2;
I_M = speye(M-1,M-1);
D_yy = kron(d_yy,I_M);%左端矩阵
mLap = -(D_xx+D_yy);%右端矩阵
F = f(X_in,Y_in);
F = F';
g_d = g(x_in,0);
g_u = g(x_in,1);
g_l = g(0,y_in);
g_r = g(1,y_in);
F(:,1) = F(:,1)+g_d'/hy^2;
F(:,N-1) = F(:,N-1)+g_u'/hy^2;
F(1,:) = F(1,:)+g_l/hx^2;
F(M-1,:) = F(M-1,:)+g_r/hx^2;%求解u
b = F(:);
u = mLap\b;
U = reshape(u,M-1,N-1);
U = U';%绘制结果
u_e = u_exact(X,Y);
u_num = u_e;
u_num(2:N,2:M) = U;
figure(1)
mesh(X,Y,u_e);
figure(2)
mesh(X,Y,u_num);end%函数
function y = f(x,y)
y = -2*exp(x+y);
endfunction u_e = u_exact(x,y)
u_e = exp(x+y);
endfunction g = g(x,y)
g = exp(x+y);
end

http://chatgpt.dhexx.cn/article/RsPyYBjB.shtml

相关文章

Python小白的数学建模课-11.偏微分方程数值解法

偏微分方程可以描述各种自然和工程现象&#xff0c; 是构建科学、工程学和其他领域的数学模型主要手段。 偏微分方程主要有三类&#xff1a;椭圆方程&#xff0c;抛物方程和双曲方程。 本文采用有限差分法求解偏微分方程&#xff0c;通过案例讲解一维平流方程、一维热传导方程…

偏微分方程数值解法pdf_单摆-微分方程浅谈

引子[1] 单摆&#xff0c;这个在中学物理都学过的东西&#xff0c;应该是非常熟悉了。 图片来源-维基百科 小角度简单摆 若最高处( )的绳子和最低处(速度最大值)的绳子的角度为 &#xff0c;则可使用下列公式算出它的振动周期。 公式证明 摆球受力分析 绳与对称线夹角为 &…

偏微分方程数值解法pdf_数值模拟偏微分方程的三种方法:FDM、FEM及FVM

偏微分方程数值模拟常用的方法主要有三种:有限差分方法(FDM)、有限元方法(FEM)、有限体积方法(FVM),本文将对这三种方法进行简单的介绍和比较。 一.有限差分方法 有限差分方法(Finite Difference Methods)是数值模拟偏微分方程最早采用的方法,至今仍被广泛运用。该方法包括区…

正圆锥体空间方程_数值模拟偏微分方程的三种方法:FDM、FEM及FVM

偏微分方程数值模拟常用的方法主要有三种:有限差分方法(FDM)、有限元方法(FEM)、有限体积方法(FVM),本文将对这三种方法进行简单的介绍和比较。 一.有限差分方法 有限差分方法(Finite Difference Methods)是数值模拟偏微分方程最早采用的方法,至今仍被广泛运用。该方法包括区…

抖音图标

抖音图标&#xff1a; 1.创建一张画布&#xff0c;再用圆角矩形工具创建一个圆角矩形 2.新建一个图层&#xff0c;用椭圆选框工具创建一个圆&#xff0c;再alt键从选区减去一个圆 3.再填充一个颜色&#xff0c;再剪切1/4圆接着粘贴拖拽至右上方 4.新建一个图层&#xff0c;用…

抖音图标——ps

抖音图标 1.用圆角矩形工具画个圆角&#xff08;空格键可以移动&#xff09;&#xff0c;填充为黑色&#xff0c;把此图层转换为珊格式化 2.再新建一个图层&#xff0c;用椭圆选框工具画个换个环&#xff08;用alt会出现&#xff0c;shift会出现加号&#xff09; 3.Ctrlx剪…

抖音软件分析

前几天看了看关于短视频软件的火的一些话题&#xff0c;就去看了看关于抖音的&#xff0c;对于抖音是那几个方面&#xff0c;自己也去做了一些分析&#xff0c;首先是在两个方面去做的一个理解&#xff0c;一个是软件制作&#xff0c;一个是商业运营。 软件制作 在抖音的软件…

仿抖音视频自动播放html,vue 仿抖音视频播放切换

一、第一部分html页面的准备 {{item.title}} {{item.introduction}} 二、数据说明部分 data() {let u = navigator.userAgent; return {showSlide: 0, allLoaded: false, //数据是否全部加载完 page: 1, isLoading: true, option: {}, current: 0, videoList: [], isVideoShow:…

抖音账号官方认证

介绍 认证功能入口 【我】—【创作者服务中心】— 【官方认证】 抖音黄V是什么&#xff1f; 抖音黄V是抖音平台对个人能力与专业性的认可。换句话讲&#xff0c;黄V即能体现个人身份标签又可以获得官方在内容发布的“豁免权”。如未认证的用户去进行科普&#xff0c;轻则警…

仿抖音首页界面

目录 效果图 顶部相关代码 顶部效果图 内容相关代码 内容效果图 底部导航栏相关代码 底部导航栏效果图 完整代码 html css js ​flexible.js 要想做出抖音短视频的首页界面&#xff0c;我们要引用swiper插件、还需要用到iconfont图标&#xff08;可自行到官网上下载…

抖音小程序Tiktok开发教程之 基础组件 04 icon 图标组件

什么是icon组件? icon是图标组件 icon组件运行效果 icon组件如何使用呢? 首先,在ttml界面中添加下面代码 <view class="container"><view class="body"><view class="page-section page-default"><view class="…

分享图片或链接到抖音

目录 前言 一、官方文档 二、开始配置 第一步&#xff1a;向抖音短视频申请你的 clientkey 及相关权限 第二步&#xff1a;集成到开发环境 1.根目录下build.gradle引入库 2.app moudel目录下build.gradle引入库 3.配置抖音的软件包可见性 使用一&#xff1a;Android-分…

仅用一个 HTML 标签,实现带动画的抖音 Logo

作者 | 零一 来源 | 前端印象 今天给大家表演 仅用一个HTML标签实现带动画的抖音LOGO&#xff0c;涉及了很多知识点&#xff0c;欢迎交流讨论 先上结果&#xff0c;最终实现效果如下&#xff1a; 成品图 还原度应该还可以吧&#xff1f; 抖音Logo结构 想要用CSS来画抖音的Logo&…

用python+pillow模块实现抖音晃眼睛的特效,图像处理之路(附源码)

前言 利用Python实现抖音晃眼睛的特效&#xff0c;让我们愉快地开始吧~ 开发工具 Python版本&#xff1a; 3.6.4 相关模块&#xff1a; pillow模块&#xff1b; numpy模块&#xff1b; argparse模块&#xff1b; 以及一些Python自带的模块。 环境搭建 安装Python并添加到…

仅用一个HTML标签,实现带动画的抖音LOGO

大家好&#xff0c;我是零一&#xff0c;今天给大家表演 仅用一个HTML标签实现带动画的抖音LOGO&#xff0c;涉及了很多知识点&#xff0c;欢迎交流讨论 先上结果&#xff0c;最终实现效果如下&#xff1a; 还原度应该还可以吧&#xff1f; 抖音Logo结构 想要用CSS来画抖音的…

uni-app项目引入图标

uni-app项目引入图标 普通图标引入 1、阿里巴巴矢量图官网创建图标项目 2、将搜索的图标添加进购物车&#xff0c;在购物车里面将图标添加进项目里面 3、下载该文件到本地&#xff0c;将该文件的css文件复制到项目里面 &#xff08;并设置大小&#xff09; 4、修改icon…

免费下载无水印抖音视频

今天&#xff0c;跟大家分享一个免费下载抖音视频的方法&#xff0c;可以去除抖音上的id水印。话不多说&#xff0c;直接上图。 1.复制手机端抖音链接。 点击这个分享图标 复制链接 发送到电脑&#xff0c;打开网页http://douyin.adsond.com/&#xff08;点此直接进入&…

抖音下载android,抖音完整版

《抖音完整版》这是一款可以发布完整版视频资源的软件&#xff0c;在软件中多种精彩丰富的视频内容&#xff0c;拥有各种最新的潮流以及特色的丰富内容&#xff0c;等你来看&#xff01;这里超多种丰富好玩的视频资源&#xff0c;特色的观看体验&#xff01;(以下来为大家介绍详…

CSS3解析抖音 LOGO制作

“抖音”,人气也是非常高,据说拥有7亿用户。 今天我们就来研究研究抖音的logo,蹭蹭热度。 效果预览: 主要用css3新增属性mix-blend-mode,”组成,然后有3种颜色,白色、红色、和天蓝色。 ok,我们先来完成一个“J”。根据以往的经验,我们把它拆分成3部分。 下面我们来…

抖音logo制作教程

1.新建1200*1200PX的画板 2.创建484*484px、216*216px、630*630px、362*362px四个圆形和134*520px的矩形,并按照一下规则进行排放 3.对这几个圆形和矩形进行合并图层操作 合并后效果如下 4.利用路径选择工具进行路径的选择并进行布尔运算 4.1选中中央的两个圆 4.2对中央的两个圆…