Documentation ¶
Index ¶
- Constants
- Variables
- func Assign(lhs, rhs *Array)
- func Clamp(value, min, max float64) float64
- func Map(in, in_min, in_max, out_min, out_max float64) float64
- func Max(base float64, compare float64) float64
- func Min(base float64, compare float64) float64
- type Array
- func Arrange(start, stop, step float64) *Array
- func Copy(arr *Array) *Array
- func Dot(x, y *Array) *Array
- func Empty() *Array
- func Full(fill_value float64, dims ...int) *Array
- func HStack(a, b *Array) *Array
- func Identity(dims ...int) *Array
- func NewNdArray(values []float64, rcd ...int) *Array
- func NewRowVector(values []float64, length int) *Array
- func Ones(dims ...int) *Array
- func Random(dims ...int) *Array
- func Scalar(value float64) *Array
- func VDot(this, by *Array) *Array
- func VStack(a, b *Array) *Array
- func VectorN(values ...float64) *Array
- func Zeros(dims ...int) *Array
- func ZerosLike(arr *Array) *Array
- func (this *Array) Abs() float64
- func (this Array) Activate(fn func(x float64) float64) *Array
- func (this *Array) Add(by *Array) *Array
- func (this *Array) ArgMax(axis ...int) int
- func (this *Array) AsScalar() float64
- func (this Array) At(r, c int) float64
- func (this *Array) Column(j int) []float64
- func (this *Array) Cross(by *Array) *Array
- func (this *Array) DataCopy() []float64
- func (this *Array) Det() float64
- func (this *Array) Diagonal() *Array
- func (this Array) Dim(index int) int
- func (this Array) Dims() (rows, columns int)
- func (this *Array) Distance() float64
- func (this *Array) Equal(with *Array) bool
- func (this *Array) EqualDims(with *Array) bool
- func (this *Array) Eye() *Array
- func (this *Array) Flatten(order byte) *Array
- func (this *Array) ForEach(fn func(x float64) float64) *Array
- func (this *Array) Inverse() *Array
- func (this Array) IsMatrix() bool
- func (this Array) IsScalar() bool
- func (this Array) IsVec() bool
- func (this *Array) Mult(by *Array) *Array
- func (this *Array) Normalize() *Array
- func (this *Array) PointwiseMult(by *Array) *Array
- func (this *Array) Row(i int) []float64
- func (this *Array) Scale(k float64) *Array
- func (this *Array) Set(r, c int, value float64)
- func (this Array) String() string
- func (this *Array) Sub(by *Array) *Array
- func (this *Array) Sum() float64
- func (this *Array) T() *Array
- func (this *Array) Trace() float64
- func (this Array) Type() int
- type Shape
- type Vec
- func (v *Vec) Add(b *Vec) *Vec
- func (v *Vec) AddScaledVector(b *Vec, t float64) *Vec
- func (v *Vec) Clear() *Vec
- func (v *Vec) Clone() *Vec
- func (v *Vec) Copy(b *Vec)
- func (v *Vec) Distance(b *Vec) float64
- func (v *Vec) Dot(b *Vec) float64
- func (v *Vec) Equals(b *Vec) bool
- func (v *Vec) IntersectsCircle() bool
- func (v *Vec) IntersectsCylinder() bool
- func (d *Vec) IntersectsSphere(p0, p1 *Vec, r float64) float64
- func (v *Vec) IntersectsSquare() bool
- func (v *Vec) Inverse() *Vec
- func (v *Vec) Length() float64
- func (v *Vec) Mult(b *Vec) *Vec
- func (v *Vec) NdArray() *Array
- func (v *Vec) NewAdd(b *Vec) *Vec
- func (v *Vec) NewAddSub(b *Vec) *Vec
- func (v *Vec) NewCross(b *Vec) *Vec
- func (v *Vec) NewInverse() *Vec
- func (v *Vec) NewMult(b *Vec) *Vec
- func (v *Vec) NewScale(t float64) *Vec
- func (v *Vec) NewSub(b *Vec) *Vec
- func (v *Vec) NewVectorProduct(b *Vec) *Vec
- func (v *Vec) Normalize() *Vec
- func (v *Vec) RotateAround(origin *Vec, rads float64) *Vec
- func (v *Vec) ScalarProduct(b *Vec) float64
- func (v *Vec) Scale(t float64) *Vec
- func (v *Vec) Set(x, y, z float64)
- func (v *Vec) SquareLength() float64
- func (v *Vec) String() string
- func (v *Vec) Sub(b *Vec) *Vec
- func (v *Vec) ToPixelVec() pixel.Vec
- func (v *Vec) X() float64
- func (v *Vec) Y() float64
- func (v *Vec) Z() float64
Constants ¶
View Source
const ( TYPE_EMPTY = 0 TYPE_SCALER = 1 TYPE_VEC = 2 TYPE_MATRIX = 4 TYPE_N = 8 )
View Source
const DegToRad = 0.017453292519943295769236907684886127134428718885417
View Source
const RadToDeg = 57.2957795131
Variables ¶
View Source
var ( UnitX = Vec{1, 0, 0} UnitY = Vec{0, 1, 0} UnitZ = Vec{0, 0, 1} )
View Source
var RealEpsilon float64
RealEpsilon gives an upper bound on the relative error due to rounding in floating point arithmetic.
Functions ¶
Types ¶
type Array ¶
func NewNdArray ¶
func NewRowVector ¶
func (*Array) PointwiseMult ¶
type Vec ¶
type Vec [3]float64
Vec is a 3 dimensional num
func RandomInCircle ¶
func (*Vec) IntersectsCircle ¶
func (*Vec) IntersectsCylinder ¶
func (*Vec) IntersectsSquare ¶
func (*Vec) NewInverse ¶
func (*Vec) NewVectorProduct ¶
NewVectorProduct aka cross product
func (*Vec) ScalarProduct ¶
ScalarProduct calculates and returns the scalar product of this num with the given num.
func (*Vec) SquareLength ¶
func (*Vec) ToPixelVec ¶
Click to show internal directories.
Click to hide internal directories.