Difference between revisions of "Wave basis.m"

From Spinach Documentation Wiki
Jump to: navigation, search
(Notes)
(Update function See also links and function index membership)
 
(5 intermediate revisions by the same user not shown)
Line 6: Line 6:
 
     basis_waves=wave_basis(basis_type,n_functions,n_steps)
 
     basis_waves=wave_basis(basis_type,n_functions,n_steps)
  
==Arguments==
+
==Parameters==
  
 
       basis_type    - may be set to 'sine_waves', 'cosine_waves',
 
       basis_type    - may be set to 'sine_waves', 'cosine_waves',
Line 36: Line 36:
  
 
==Notes==
 
==Notes==
Because the resulting waveforms are discretised, they are not precisely orthogonal under the standard scalar multiplication. An extra orthogonalization step is therefore applied to make them orthogonal as vectors. As a result, some functions may be upside-down.
+
Because the resulting waveforms are discretised, they are not precisely orthogonal under the standard scalar multiplication. An extra orthogonalisation step is therefore applied to make them orthogonal as vectors. As a result, some functions may be upside-down.
  
 
==See also==
 
==See also==
[[sawtooth.m]], [[triwave.m]], [[shaped_pulse_af.m]], [[shaped_pulse_xy.m]], [[pulse_shape.m]]
+
[[sawtooth.m]], [[triwave.m]], [[shaped_pulse_af.m]], [[shaped_pulse_xy.m]], [[pulse_shape.m]], [[bruker_write.m]], [[cartesian2polar.m]], [[chirp_pulse.m]], [[grad_pulse.m]], [[grad_sandw.m]], [[pmlg5.m]], [[polar2cartesian.m]], [[read_wave.m]], [[restrans.m]], [[rseq_compiler.m]], [[rsequence.m]], [[sech_pulse.m]], [[spinal.m]], [[vg_pulse.m]], [[Kernel_functions]]
 
 
  
 
''Version 2.4, authors: [[Ilya Kuprov]]''
 
''Version 2.4, authors: [[Ilya Kuprov]]''

Latest revision as of 19:43, 6 June 2026

Common basis sets for the expansion of pulse waveforms. Returns the waveform 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.

Outputs

      basis_waves    - a matrix with the basis waves in columns

Examples

First three Legendre polynomials, normalised to have a unit 2-norm:

    a=wave_basis('legendre',3,200); plot(a);

Legendres.png

Notes

Because the resulting waveforms are discretised, they are not precisely orthogonal under the standard scalar multiplication. An extra orthogonalisation step is therefore applied to make them orthogonal as vectors. As a result, some functions may be upside-down.

See also

sawtooth.m, triwave.m, shaped_pulse_af.m, shaped_pulse_xy.m, pulse_shape.m, bruker_write.m, cartesian2polar.m, chirp_pulse.m, grad_pulse.m, grad_sandw.m, pmlg5.m, polar2cartesian.m, read_wave.m, restrans.m, rseq_compiler.m, rsequence.m, sech_pulse.m, spinal.m, vg_pulse.m, Kernel_functions

Version 2.4, authors: Ilya Kuprov