Bibliothèque standard de fonctions natives

Aseba fournit une bibliothèque standard de fonctions natives. Les micro-contrôleurs devraient normalement1 fournir cette bibliothèque. Dans la version 1.1 d'Aseba, les fonctions suivantes sont disponibles2:

math.copy(A,B)
Copie le tableau dans le tableau , élément par élément: .
math.fill(A,c)
Rempli chaque élément du tableau par la constante : .
math.addscalar(A, B, c)
Effectue l'opération est un nombre scalaire.
math.add(A, B, C)
Effectue l'opération , et sont des tableaux de même taille.
math.sub(A, B, C)
Effectue l'opération , et sont des tableaux de même taille.
math.mul(A, B, C)
Effectue l'opération , et sont des tableaux de même taille. Ceci n'est pas le produit scalaire.
math.div(A, B, C)
Effectue l'opération where , et sont des tableaux de même taille. Une erreur sera envoyée en cas de division par zéro.
math.min(A, B, C)
Écrit le plus petit élément entre et dans , et sont des tableaux de même taille: .
math.max(A, B, C)
Écrit le plus grand élement entre et dans , et sont des tableaux de même taille: .
math.dot(r, A, B, n)
Effectue le produit scalaire entre deux tableaux et de même taille:
math.stat(V, min, max, mean)
Calcule le minimum, le maximum et la moyenne des éléments d'un tableau .
math.argbounds(A, argmin, argmax)
Fournit les indices argmin et argmax correspondant au minimum respectivement au maximum des éléments de .
math.sort(A)
Trie le tableau du minimum au maximum, directement dans .
math.muldiv(A, B, C, D)
Calcule la multiplication-division en utilisant une précision interne de 32\,bits: . Une erreur sera envoyée en cas de division par zéro.
math.atan2(A, Y, X)
Calcule en utilisant le signe de et pour déterminer le quadrant de sortie, où , et sont des tableaux de même taille. Si et alors ..
math.sin(A, B)
Calcule et sont deux tableaux de même taille.
math.cos(A, B)
Calcule et sont deux tableaux de même taille.
math.rot2(A, B, angle)
Rotation du tableau par l'angle, écrit le résultat dans . et Doivent être des tableaux de taille 2
math.sqrt(A, B)
Calcule et ont deux tableaux de même taille.
math.nzseq(a, B, m)
Écrit dans l'index du milieu de la plus grand séquence d'éléments non-zéro de , écrit si aucune séquence n'est trouvée ou si la taille de la séquence est plus courte que .
math.rand(v)
Retourne une valeur aléatoire de intervalle .