有限元法中的装配矩阵

计算科学 有限元 matlab 泊松 椭圆pde
2021-12-01 16:20:43

我正在尝试在 Matlab 中构建二维泊松方程的右侧。我使用顶点规则来近似积分:

function F1 = rightVer(p,t,f)

%area triangle
it1=t(1,:);
it2=t(2,:);
it3=t(3,:);
area = ((p(1,it2)-p(1,it1)).*(p(2,it3)-p(2,it1))-(p(1,it3)-p(1,it1)).*(p(2,it2)-p(2,it1)))/2;

area = abs(area)/3;
vt1 = area.*f(p(1,it1),p(2,it1));
vt2 = area.*f(p(1,it2),p(2,it2));
vt3 = area.*f(p(1,it3),p(2,it3));

vt = [vt1';vt2';vt3'];
elem = t';
elem(:,4)=[];
N=size(p,2);
F1  =  accumarray(elem(:),vt,[N  1]);
end

我也使用带有函数的pde 工具箱assema()构造它,但是我获得的两个 f 是相同的,除了最后 4 个数字。谁能帮我?

0个回答
没有发现任何回复~