• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Matlab-7:偏微分方程数值解法-李荣华-有限元解导数边界值的常微分(Galerkin方法) ...

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

p47.(实习题-李荣华)用线性元求下列边值问题的数值解

 1 tic;
 2 % this method is transform from Galerkin method 
 3 %also call it as finit method
 4 %is used for solving two point BVP which is the first and second term.
 5 %this code was writen by HU.D.dong in February 11th 2017
 6 %MATLAB 7.0
 7 clear;
 8 clc;
 9 N=50;
10 h=1/N;
11 X=0:h:1;
12 f=inline(\'(0.5*pi^2)*sin(0.5*pi.*x)\');
13 %以下是右端向量:
14 for i=2:N
15         fun1=@(x) pi^2/2.*sin(pi/2.*x).*(1-(x-X(i))/h);
16          fun2=@(x) pi^2/2.*sin(pi/2.*x).*((x-X(i-1))/h);
17     f_phi(i-1,1)=quad(fun1,X(i),X(i+1))+quad(fun2,X(i-1),X(i));
18     end
19  funN=@(x) pi^2/2.*sin(pi/2.*x).*(x-X(N))/h;
20     f_phi(N)=quad(funN,X(N),X(N+1));
21     %以下是刚度矩阵:
22  A11=quad(@(x) 2/h+0.25*pi^2*h.*(1-2*x+2*x.^2),0,1);
23  A12=quad(@(x) -1/h+0.25*pi^2*h.*(1-x).*x,0,1);
24  ANN=quad(@(x) 1/h+0.25*pi^2*h*x.^2,0,1);
25  A=diag([A11*ones(1,N-1),ANN],0)+diag(A12*ones(1,N-1),1)+diag(A12*ones(1,N-1),-1);
26  Numerical_solution=A\f_phi;
27  Numerical_solution=[0;Numerical_solution];
28     %Accurate solution on above以下是精确解
29     %%
30     for i=1:length(X)
31    Accurate_solution(i,1)=sin((pi*X(i))/2)/2 - cos((pi*X(i))/2)/2 + exp((pi*X(i))/2)*((exp(-(pi*X(i))/2)*cos((pi*X(i))/2))/2 + (exp(-(pi*X(i))/2)*sin((pi*X(i))/2))/2);
32     end 
33     figure(1);
34     grid on; 
35     subplot(1,2,1);
36      plot(X,Numerical_solution,\'ro-\',X,Accurate_solution,\'b^:\');
37     title(\'Numerical solutions vs Accurate solutions\');
38     legend(\'Numerical_solution\',\'Accurate_solution\');
39     subplot(1,2,2);
40       plot(X,Numerical_solution-Accurate_solution,\'b x\');
41     legend(\'error_solution\');
42     title(\'error\');
43     toc;

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
delphi数组如何初始化发布时间:2022-07-18
下一篇:
Delphi与flash的信息通道发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap