L = membrane
L = membrane(k)
L = membrane(k, n)
membrane(...)
| 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). |
| Parameter | Description |
|---|---|
| L | a (2*n+1)-by-(2*n+1) matrix: the k-th eigenfunction sampled on the grid. |
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.
L = membrane(1, 10);
size(L)
L = membrane(1, 15);
[min(L(:)), max(L(:))]
f = figure();
surf(membrane(1, 50), 'EdgeColor', 'none');
axis('off');
| Version | Description |
|---|---|
| 2.0.0 | initial version |