membrane
Eigenfunctions of the L-shaped membrane.
📝Syntax
L = membrane
L = membrane(k)
L = membrane(k, n)
membrane(...)
📥Input Arguments
Parameter Description
k a positive integer: the eigenfunction index (default 1).
n a positive integer: the grid parameter; the result is (2*n+1)-by-(2*n+1) (default 15).
📤Output Arguments
Parameter Description
L a (2*n+1)-by-(2*n+1) matrix: the k-th eigenfunction sampled on the grid.
📄Description

membrane returns the k-th eigenfunction of the L-shaped membrane, sampled on a square (2*n+1)-by-(2*n+1) grid. The domain is the square with one quadrant removed; the value is zero on the boundary and outside that domain.

The first eigenfunction (k = 1) is the fundamental mode, a single positive bump; higher indices add nodal lines and therefore negative values. The result is normalised so its largest magnitude is 1 with a positive peak.

Called with no output argument, membrane draws the surface.

The eigenfunction is obtained from a finite-difference discretisation of the domain solved with a shift-invert eigensolve (eigs) for the smallest eigenvalues.

💡Examples
L = membrane(1, 10);
size(L)
L = membrane(1, 15);
[min(L(:)), max(L(:))]
draw the surface
f = figure();
surf(membrane(1, 50), 'EdgeColor', 'none');
axis('off');
🔗See Also
peakseigssurf
Used Functions
eigs
🕔Version History
Version Description
2.0.0 initial version
Edit this page on GitHub