gorgonia.org/tensor@v0.9.24/native/generic_test.go (about) 1 package native_test 2 3 import ( 4 "fmt" 5 6 "gorgonia.org/tensor" 7 . "gorgonia.org/tensor/native" 8 ) 9 10 type MyType int 11 12 func Example_vector() { 13 backing := []MyType{ 14 0, 1, 2, 3, 15 } 16 T := tensor.New(tensor.WithShape(4), tensor.WithBacking(backing)) 17 val, err := Vector(T) 18 if err != nil { 19 fmt.Printf("error: %v", err) 20 } 21 it := val.([]MyType) 22 fmt.Println(it) 23 24 // Output: 25 // [0 1 2 3] 26 } 27 28 func Example_matrix() { 29 backing := []MyType{ 30 0, 1, 31 2, 3, 32 4, 5, 33 } 34 T := tensor.New(tensor.WithShape(3, 2), tensor.WithBacking(backing)) 35 val, err := Matrix(T) 36 if err != nil { 37 fmt.Printf("error: %v", err) 38 } 39 40 it := val.([][]MyType) 41 fmt.Println(it) 42 43 // Output: 44 // [[0 1] [2 3] [4 5]] 45 } 46 47 func Example_tensor3() { 48 backing := []MyType{ 49 0, 1, 2, 3, 50 4, 5, 6, 7, 51 8, 9, 10, 11, 52 53 12, 13, 14, 15, 54 16, 17, 18, 19, 55 20, 21, 22, 23, 56 } 57 T := tensor.New(tensor.WithShape(2, 3, 4), tensor.WithBacking(backing)) 58 val, err := Tensor3(T) 59 if err != nil { 60 fmt.Printf("error: %v", err) 61 } 62 it := val.([][][]MyType) 63 fmt.Println(it) 64 65 //Output: 66 // [[[0 1 2 3] [4 5 6 7] [8 9 10 11]] [[12 13 14 15] [16 17 18 19] [20 21 22 23]]] 67 }