QkComplex64
Uma representação numérica complexa e de dupla precisão. Esse tipo de dados é usado para usar com segurança números complexos no Qiskit, mas não foi necessariamente projetado para facilitar a manipulação no lado do usuário. Em vez disso, fornecemos funções para converter da representação nativa do compilador (por exemplo complex double para compiladores GNU ou Clang), que permitem o manuseio ergonômico, para a representação QkComplex64 do Qiskit, que se destina à passagem para funções e estruturas do Qiskit.
Explicitamente, o Qiskit assume que o tipo de número complexo nativo do compilador em C é _Dcomplex para Windows MSVC (se _MSC_VER estiver definido) e double _Complex caso contrário. Em C++ (se __cplusplus estiver definido), o tipo de número complexo é sempre std::complex<double>.
Tipos de dados
QkComplex64
struct QkComplex64
Uma dupla complexa.
Consulte também qk_complex64_to_native e qk_complex64_from_native para converter essa estrutura em (ou de) uma representação de número complexo nativa do compilador.
duplo re
A parte real.
dupla imagem
A parte imaginária.
Funções
qk_complex64_to_native
static CMPLX_DOUBLE qk_complex64_to_native(QkComplex64 *value)
Converta um QkComplex64 em uma representação de número complexo nativa do compilador. Observe que CMPLX_DOUBLE é um espaço reservado para o tipo de número complexo nativo do compilador; consulte a parte superior da página para obter mais detalhes.
Exemplo
Supondo um compilador GNU/clang com complex double como número complexo nativo, temos
QkComplex64 qk_value = {1, 1}; // represents 1 + i
complex double value = qk_complex64_to_native(&qk_value);Segurança
O comportamento é indefinido se value não for um ponteiro válido e não nulo para um QkComplex64.
Parâmetros
value - Um ponteiro para o endereço QkComplex64 a ser convertido.
Retorna
Uma representação nativa do número complexo.
qk_complex64_from_native
static QkComplex64 qk_complex64_from_native(CMPLX_DOUBLE *value)
Converta um número complexo nativo do compilador em um QkComplex64. Observe que CMPLX_DOUBLE é um espaço reservado para o tipo de número complexo nativo do compilador; consulte a parte superior da página para obter mais detalhes.
Exemplo
Supondo um compilador GNU/clang com complex double como número complexo nativo, temos
complex double value = 1 + I;
QkComplex64 qk_value = qk_complex64_from_native(&value);Segurança
O comportamento é indefinido se value não for um ponteiro válido e não nulo para um QkComplex64.
Parâmetros
value - Um ponteiro para o número complexo nativo.
Retorna
Uma representação QkComplex64 do número complexo.