Skip to content

Basic Examples

Creating Tensors

#include <tensr/tensr.h>

int main() {
    size_t shape[] = {3, 3};

    Tensor* zeros = tensr_zeros(shape, 2, TENSR_FLOAT32, TENSR_CPU);
    Tensor* ones = tensr_ones(shape, 2, TENSR_FLOAT32, TENSR_CPU);
    Tensor* rand = tensr_rand(shape, 2, TENSR_CPU);

    tensr_print(zeros);
    tensr_print(ones);
    tensr_print(rand);

    tensr_free(zeros);
    tensr_free(ones);
    tensr_free(rand);

    return 0;
}

Arithmetic Operations

size_t shape[] = {2, 2};
Tensor* a = tensr_full(shape, 2, 3.0, TENSR_FLOAT32, TENSR_CPU);
Tensor* b = tensr_full(shape, 2, 2.0, TENSR_FLOAT32, TENSR_CPU);

Tensor* sum = tensr_add(a, b);
Tensor* product = tensr_mul(a, b);

tensr_print(sum);
tensr_print(product);

tensr_free(a);
tensr_free(b);
tensr_free(sum);
tensr_free(product);

Matrix Operations

Tensor* eye = tensr_eye(3, TENSR_FLOAT32, TENSR_CPU);
size_t shape[] = {3, 3};
Tensor* mat = tensr_rand(shape, 2, TENSR_CPU);

Tensor* result = tensr_matmul(eye, mat);
tensr_print(result);

tensr_free(eye);
tensr_free(mat);
tensr_free(result);