Skip to main content
IBM Quantum Platform

QkObsTerm

Il s'agit d'un groupe de fonctions permettant d'interagir avec une instance opaque (espace Rust) de SparseTerm.


Types de données

QkObsTerm

struct QkObsTerm

Un terme dans un site QkObs.

Il contient le coefficient (coeff), le nombre de qubits de l'observable (num_qubits) et des pointeurs vers les tableaux bit_terms et indices , qui ont une longueur de len. Il incombe à l'utilisateur de s'assurer que les données sont cohérentes, voir également la section ci-dessous sur la sécurité.

Sécurité

  • bit_terms doit être un pointeur aligné non nul vers des éléments len de type QkBitTerm.
  • indices doit être un pointeur aligné non nul vers des éléments len de type uint32_t.

QkComplex64 coefficient

Le coefficient du terme observable.

taille_t longueur

Longueur des tableaux bit_terms et indices .

QkBitTerm *bit_terms

Un pointeur aligné vers len des éléments de type QkBitTerm. Cela peut être le cas NULL si et seulement si len est égal à 0.

uint32_t *indices

Un pointeur aligné vers len des éléments de type uint32_t. Cela peut être le cas NULL si et seulement si len est égal à 0.

uint32_t num_qubits

Le nombre de qubits sur lesquels le terme observable est défini.


Fonctions

qk_obsterm_str

char *qk_obsterm_str(const QkObsTerm *term)

Renvoie une représentation sous forme de chaîne de caractères de l'expression éparse.

Exemple

QkObs *obs = qk_obs_identity(100);
QkObsTerm term;
qk_obs_term(obs, 0, &term);
char *string = qk_obsterm_str(&term);
qk_str_free(string);
qk_obs_free(obs);

Sécurité

Le comportement est indéfini term n'est pas un pointeur valide et non nul vers QkObsTerm.

La chaîne ne doit pas être libérée à l'aide de la fonction C free normale, vous devez utiliser qk_str_free pour libérer la mémoire consommée par la chaîne. Le fait de ne pas appeler qk_str_free entraînera une fuite de mémoire.

Ne pas modifier la longueur de la chaîne après qu'elle a été renvoyée, bien que les valeurs puissent être modifiées.

Paramètres

  • term - Un pointeur sur le terme.

Retours

Un pointeur vers un tableau de caractères terminé par un caractère nul, contenant la représentation sous forme de chaîne de caractères de term

Cette page a-t-elle été utile ?
Signaler un bogue, une coquille ou proposer du contenu sur GitHub.