一维有限元法matlab,一维有限元法解常微分方程

有matlab程序

一维问题的有限元法一.算法构思

考虑下面的两点边值问题

''2

(0,1) Fu=-u+u=sin x 1+ =f,x

y(0) 0,y(1) 0

设F是一个微分算子,则

1

Fu=0 Fu vdx=0, v C0,即v(0)=v(1)=0,且v'(x)连续

01

则把问题中的微分方程化为积分方程,得 u'v'+uvdx= fvdx

1

1

令 a u,v u'v'+uvdx, (f,v)= fvdx

1则问题就是求u C10,使得a(u,v)=(f,v), v C0

1对于一般的u C0,其范围很广泛,但样条函数理论给我们提供了解决问题的有力工具。

11

对[0,1]进行等分:

10=x0

n

1

x-xk-1),x [xk-1,xk) h

取 k x = ,k 1,2,...,n 1.

1 - x-x ,x [x,x)

k+1kk+1

h则u(x)= ui i x ,其中ui是u(x)再xi处得函数值.

i=1n-1

a(u,v)=(f,v) a(u,w)=(f,w),w k x ,k 1,2,...,n 1.即 a i, j ui=(f, j),j=1,2,...,n-1.

i=1n-1

, 1 1

AU=b,其中A=

1n-1

xk+1

2k

(f, 1) u 1

,b= . ,U= (f, n-1) n-1, n-1 n-1 u

n-1, 1

22h22

k, k = xk-1 x dx+=+

h3h

xk+11h21

k, k+1 = xk k x k+1 x dx-=-h6h

xk+11+ 22

f, k = 1+ xk-1 k x sin x dx=2 2sin xk -sin xk 1 sin xk 1 h

二,程序实现

clear; clc;

x=zeros(1,101); X=0.01:0.01:0.99;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值