Interface HilbertSpace<H,F extends Field<F> & Comparable<F>>

Type Parameters:
H - a Hilbert space
All Superinterfaces:
AbelianGroup<H>, BanachSpace<H,F>, VectorSpace<H,F>
All Known Subinterfaces:
Vector
All Known Implementing Classes:
Basis, CombinedVectorByRef, DenseVector, Gradient, ImmutableVector, SparseVector, SubVectorRef, SVEC

public interface HilbertSpace<H,F extends Field<F> & Comparable<F>> extends BanachSpace<H,F>
A Hilbert space is an inner product space, an abstract vector space in which distances and angles can be measured. It is also "complete", meaning that if a sequence of vectors is Cauchy, then it converges to some limit in the space.
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    double
    angle(H that)
    ∠ : H × H → F
    double
    <⋅,⋅> : H × H → F

    Methods inherited from interface dev.nm.algebra.structure.AbelianGroup

    add, minus, opposite, ZERO

    Methods inherited from interface dev.nm.algebra.structure.BanachSpace

    norm

    Methods inherited from interface dev.nm.algebra.structure.VectorSpace

    scaled
  • Method Details

    • innerProduct

      double innerProduct(H that)
      <⋅,⋅> : H × H → F

      Inner product formalizes the geometrical notions such as the length of a vector and the angle between two vectors. It defines orthogonality between two vectors, where their inner product is 0.

      Parameters:
      that - the object to form an angle with this
      Returns:
      <this,that>
    • angle

      double angle(H that)
      ∠ : H × H → F

      Inner product formalizes the geometrical notions such as the length of a vector and the angle between two vectors. It defines orthogonality between two vectors, where their inner product is 0.

      Parameters:
      that - the object to form an angle with this
      Returns:
      the angle between this and that