bim2a_laplacian
Build the standard finite element stiffness matrix for a diffusion problem.
The equation taken into account is:
- div (epsilon * kappa grad (u)) = f
where epsilon is an element-wise constant scalar function, while kappa is a piecewise linear conforming scalar function.
See also: bim2a_rhs, bim2a_reaction, bim2a_advection_diffusion, bim1a_laplacian, bim3a_laplacian
Source Code: bim2a_laplacian
m = msh2m_structured_mesh (0:.1:2*pi, 0:.1:2*pi, 1, 1:4, 'random'); m = bim2c_mesh_properties (m); kappa = 2 + sin (m.p(1, :)'); f = kappa .* cos (m.p(2, :)'); uex = cos (m.p(2, :)'); A = bim2a_laplacian (m, 3./(sum(1./kappa(m.t(1:3, :)), 1)), 1); b = bim2a_rhs (m, 1, f); dnodes = bim2c_unknowns_on_side (m, 1:4); inodes = setdiff (1:columns(m.p), dnodes); u = uex; u(inodes) = A(inodes, inodes) \ (b(inodes)-A(inodes, dnodes) * u(dnodes)); h = pdesurf (m.p, m.t, u) figure pdesurf (m.p, m.t, uex) h = -39.365 |