sig
  type complex_double_vector_bigarr =
      (Complex.t, Bigarray.complex64_elt, Bigarray.c_layout)
      Bigarray.Array1.t
  type vector = Vector_complex.complex_double_vector_bigarr
  val create : ?init:Gsl_complex.complex -> int -> Vector_complex.vector
  val of_array : Gsl_complex.complex array -> Vector_complex.vector
  val to_array : Vector_complex.vector -> Gsl_complex.complex array
  val of_complex_array : Gsl_complex.complex_array -> Vector_complex.vector
  val to_complex_array : Vector_complex.vector -> Gsl_complex.complex_array
  val length : Vector_complex.vector -> int
  val get : Vector_complex.vector -> int -> Gsl_complex.complex
  val set : Vector_complex.vector -> int -> Gsl_complex.complex -> unit
  val set_all : Vector_complex.vector -> Gsl_complex.complex -> unit
  val set_zero : Vector_complex.vector -> unit
  val set_basis : Vector_complex.vector -> int -> unit
  val memcpy : src:Vector_complex.vector -> dst:Vector_complex.vector -> unit
  val copy : Vector_complex.vector -> Vector_complex.vector
  val swap_element : Vector_complex.vector -> int -> int -> unit
  val reverse : Vector_complex.vector -> unit
  val subvector :
    Vector_complex.vector -> off:int -> len:int -> Vector_complex.vector
  module Single :
    sig
      type complex_float_vector_bigarr =
          (Complex.t, Bigarray.complex32_elt, Bigarray.c_layout)
          Bigarray.Array1.t
      type vector = Vector_complex.Single.complex_float_vector_bigarr
      val create :
        ?init:Gsl_complex.complex -> int -> Vector_complex.Single.vector
      val of_array :
        Gsl_complex.complex array -> Vector_complex.Single.vector
      val to_array :
        Vector_complex.Single.vector -> Gsl_complex.complex array
      val of_complex_array :
        Gsl_complex.complex_array -> Vector_complex.Single.vector
      val to_complex_array :
        Vector_complex.Single.vector -> Gsl_complex.complex_array
      val length : Vector_complex.Single.vector -> int
      val get : Vector_complex.Single.vector -> int -> Gsl_complex.complex
      val set :
        Vector_complex.Single.vector -> int -> Gsl_complex.complex -> unit
      val set_all :
        Vector_complex.Single.vector -> Gsl_complex.complex -> unit
      val set_zero : Vector_complex.Single.vector -> unit
      val set_basis : Vector_complex.Single.vector -> int -> unit
      val memcpy :
        src:Vector_complex.Single.vector ->
        dst:Vector_complex.Single.vector -> unit
      val copy : Vector_complex.Single.vector -> Vector_complex.Single.vector
      val swap_element : Vector_complex.Single.vector -> int -> int -> unit
      val reverse : Vector_complex.Single.vector -> unit
      val subvector :
        Vector_complex.Single.vector ->
        off:int -> len:int -> Vector_complex.Single.vector
    end
end