Skip to main content
IBM Quantum Platform

QkObsTerm

これは、不透明な(Rust空間の) SparseTerm インスタンスとやりとりするための関数群です。


データ・タイプ

QkObsTerm

struct QkObsTerm

QkObs の用語。

これには係数(coeff)、観測可能な量子ビット数(num_qubits)、そして bit_termsindices の配列へのポインタが含まれ、これらの配列の長さは len である。 データが首尾一貫したものであることはユーザーの責任である。

安全

  • bit_terms は、 QkBitTerm 型の len 要素への NULL でない、アライメントされたポインタでなければならない。
  • indices は、 uint32_t 型の len 要素への NULL でない、アライメントされたポインタでなければならない。

QkComplex64 係数

観測可能な項の係数。

size_t len

bit_terms および indices 配列の長さ。

QkBitTerm *ビット用語

型 の要素 len への整列 QkBitTermされたポインタ。 これは、が 0 である len 場合に NULL 限り成り立つ。

uint32_t *インデックス

型 の要素 len への整列 uint32_tされたポインタ。 これは、が 0 である len 場合に NULL 限り成り立つ。

uint32_t num_qubits

観測項が定義されている量子ビットの数。


関数

qk_obsterm_str

char *qk_obsterm_str(const QkObsTerm *term)

スパース項の文字列表現を返す。

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

安全

動作は未定義 term は有効な、 QkObsTerm への NULL ではないポインタではない。

文字列は通常のCのfreeでは解放してはならない。 qk_str_free を使って、文字列が消費したメモリを解放しなければならない。 qk_str_free を呼び出さないとメモリー・リークにつながる。

値を変更することはできるが、返された後に文字列の長さを変更することはできない。

パラメーター

  • term - 用語へのポインタ。

戻り値

関数の終了コード。 これは >0

このページは役に立ちましたか?
バグや誤字の報告、またはコンテンツの要求はGitHubで行ってください。