Types
The package defines a number of types for the high level interface.
Basic
These types directly map to corresponding Arb types.
Arblib.Mag
— TypeMag <: Real
Arblib.Arf
— TypeArf <: AbstractFloat
Arblib.Arb
— TypeArb <: AbstractFloat
Arblib.Acb
— TypeAcb <: Number
Arblib.ArbVector
— TypeArbVector <: DenseVector{Arb}
ArbVector(n::Integer; prec::Integer = DEFAULT_PRECISION[])
ArbVector(v::ArbVectorLike; shallow::Bool = false, prec::Integer = precision(v))
ArbVector(v::AbstractVector; prec::Integer = _precision(v))
The constructor with n::Integer
returns a vector with n
elements filled with zeros. The other two constructors returns a copy of the given vector. If shallow = true
then the returned vector shares the underlying data with the input, mutating one of them mutates both.
See also ArbRefVector
.
Arblib.AcbVector
— TypeAcbVector <: DenseVector{Acb}
AcbVector(n::Integer; prec::Integer = DEFAULT_PRECISION[])
AcbVector(v::AcbVectorLike; shallow::Bool = false, prec::Integer = precision(v))
AcbVector(v::AbstractVector; prec::Integer = _precision(v))
The constructor with n::Integer
returns a vector with n
elements filled with zeros. The other two constructors returns a copy of the given vector. If shallow = true
then the returned vector shares the underlying data with the input, mutating one of them mutates both.
See also AcbRefVector
.
Arblib.ArbPoly
— TypeArbPoly
Arblib.AcbPoly
— TypeAcbPoly
Arblib.ArbMatrix
— TypeArbMatrix <: DenseMatrix{Arb}
ArbMatrix(r::Integer, c::Integer; prec::Integer = DEFAULT_PRECISION[])
ArbMatrix(A::ArbMatrixLike; shallow::Bool = false, prec::Integer = precision(v))
ArbMatrix(A::AbstractMatrix; prec::Integer = _precision(v))
ArbMatrix(v::AbstractVector; prec::Integer = _precision(v))
The constructor with r::Integer, c::Integer
returns a r × c
filled with zeros. The other three constructors returns a copy of the given matrix or vector. If shallow = true
then the returned matrix shares the underlying data with the input, mutating one of them mutates both.
See also ArbRefMatrix
.
Arblib.AcbMatrix
— TypeAcbMatrix <: DenseMatrix{Acb}
AcbMatrix(r::Integer, c::Integer; prec::Integer = DEFAULT_PRECISION[])
AcbMatrix(A::AcbMatrixLike; shallow::Bool = false, prec::Integer = precision(v))
AcbMatrix(A::AbstractMatrix; prec::Integer = _precision(v))
AcbMatrix(v::AbstractVector; prec::Integer = _precision(v))
The constructor with r::Integer, c::Integer
returns a r × c
filled with zeros. The other three constructors returns a copy of the given matrix or vector. If shallow = true
then the returned matrix shares the underlying data with the input, mutating one of them mutates both.
See also AcbRefMatrix
.
Series
The package defines two series types, which are wrapper for the polynomial types with a specified degree.
Arblib.ArbSeries
— TypeArbSeries <: Number
Arblib.AcbSeries
— TypeAcbSeries <: Number
Ref
In addition to these there are a number of Ref
types, which allow for non-allocating access in a number of cases.
Arblib.MagRef
— TypeMagRef <: Real
Arblib.ArfRef
— TypeArfRef <: AbstractFloat
Arblib.ArbRef
— TypeArbRef <: AbstractFloat
Arblib.AcbRef
— TypeAcbRef <: Number
Arblib.ArbRefVector
— TypeArbRefVector <: DenseMatrix{ArbRef}
Similar to ArbVector
but indexing elements returns an ArbRef
referencing the corresponding element instead of an Arb
copy of the element. The constructors are the same as for ArbVector
Arblib.AcbRefVector
— TypeAcbRefVector <: DenseMatrix{AcbRef}
Similar to AcbVector
but indexing elements returns an AcbRef
referencing the corresponding element instead of an Acb
copy of the element. The constructors are the same as for AcbVector
Arblib.ArbRefMatrix
— TypeArbRefMatrix <: DenseMatrix{ArbRef}
Similar to ArbMatrix
but indexing elements returns an ArbRef
referencing the corresponding element instead of an Arb
copy of the element. The constructors are the same as for ArbMatrix
Arblib.AcbRefMatrix
— TypeAcbRefMatrix <: DenseMatrix{AcbRef}
Similar to AcbMatrix
but indexing elements returns an AcbRef
referencing the corresponding element instead of an Acb
copy of the element. The constructors are the same as for `AcbMatrix
Correspondence between types
We have the following table for the correspondence with between the Low level wrapper types and the high level interface types.
Arb | Wrapper | High level | Ref |
---|---|---|---|
mag_t | mag_struct | Mag | MagRef |
arf_t | arf_struct | Arf | ArfRef |
arb_t | arb_struct | Arb | ArbRef |
acb_t | acb_struct | Acb | AcbRef |
arb_t* | arb_vec_struct | ArbVector | ArbRefVector |
acb_t* | acb_vec_struct | AcbVector | AcbRefVector |
arb_poly_t | arb_poly_struct | ArbPoly or ArbSeries | |
acb_poly_t | acb_poly_struct | AcbPoly or AcbSeries | |
arb_mat_t | arb_mat_struct | ArbMatrix | ArbRefMatrix |
acb_mat_t | acb_mat_struct | AcbMatrix | AcbRefMatrix |