Wave basis.m

From Spinach Documentation Wiki
Jump to: navigation, search

Common basis sets for the expansion of pulse waveforms. Returns the wave- form basis functions as columns of a matrix. Syntax:

          basis_waves=wave_basis(basis_type,n_functions,n_steps)

Parameters:

      basis_type     - may be set to 'sine_waves', 'cosine_waves',
                       and 'legendre'. The sine and the cosine op-
                       tions return the corresponding functions in
                       the [-pi,pi] interval, legendre option re-
                       turns legendre polynomials in the [-1,1] in-
                       terval.
      n_functions    - the number of functions to return (integer
                       frequencies starting from zero on the case
                       of cosines, integer frequencies starting 
                       from 1 inthe case of sines, legendre poly-
                       nomial ranks in the case of legendre func-
                       tion basis set.
      n_points       - number of discretization points.

Note: Because the resulting waveforms are discretized, they are not precisely orthogonal under the standard scalar multiplication. An extra orthogonalization step is therefore applied to make them orthogonal as vectors.