Skip to main content
IBM Quantum Platform

ParameterExpression

class qiskit.circuit.ParameterExpression(name_map=None, expr=None)

Bases: object

Uma expressão de parâmetro.

Isso é apoiado pelo mecanismo de expressão simbólica do Qiskit e por um cache para os parâmetros dentro da expressão.


Atributos

num_parameters

O número de parâmetros não vinculados na expressão.

Isso é equivalente a, len(expr.parameters) mas não envolve a sobrecarga de criar um conjunto e contar seu comprimento.

parameters

Obtém os parâmetros presentes na expressão.

Nota

O Qiskit garante a igualdade (via ==) dos parâmetros recuperados de uma expressão com os objetos Parameter originais usados para criar essa expressão, mas não garante que as comparações is sejam bem-sucedidas.


Métodos

abs

abs()

Obtenha o valor absoluto da expressão.

arccos

arccos()

Arccosine da expressão.

arcsin

arcsin()

Arcsine da expressão.

arctan

arctan()

Arctangente da expressão.

assign

assign(parameter, value)

Atribuir um parâmetro a um valor, que pode ser numérico ou outra expressão de parâmetro.

Parâmetros

  • parâmetro - Um parâmetro nessa expressão cujo valor será atualizado.
  • value - O novo valor a ser vinculado.

Retorna

Uma nova expressão parametrizada por quaisquer parâmetros que não tenham sido vinculados por atribuição.

bind

bind(parameter_values, allow_unknown_parameters=False)

Vincula o conjunto de parâmetros fornecido a seus valores correspondentes.

Parâmetros

  • parâmetros_valores – Mapeamento de Parameter instâncias ao valor numérico ao qual serão vinculadas.
  • allow_unknown_parameters - Se False, gera um erro se parameter_values contiver Parameters nas chaves fora daquelas presentes na expressão. Se True, esses parâmetros são simplesmente ignorados.

Aumentos

  • CircuitError

    • Se o parâmetro_values contiver parâmetros que não estejam em self. - Se um valor não numérico for passado em parameter_values.
  • ZeroDivisionError

    • Se a vinculação dos valores fornecidos exigir a divisão por zero.

Retorna

Uma nova expressão parametrizada por quaisquer parâmetros que não tenham sido vinculados por parameter_values.

bind_all

bind_all(values)

Vincular todos os parâmetros em self a valores numéricos no dicionário, retornando um valor numérico.

Esse é um caso especial de bind() que pode alcançar um desempenho superior. Não há problema em o dicionário values conter parâmetros que não são usados nessa expressão; a expectativa é que o mesmo dicionário de vínculos seja alimentado também em outras expressões.

É um erro chamar esse método com um dicionário values que não vincula todos os valores ou chamar esse método com valores não numéricos, mas isso não é verificado explicitamente, já que esse método se destina ao uso sensível ao desempenho. A transmissão de um dicionário incorreto pode resultar em um comportamento inesperado.

Diferente de bind()esse método não gerará uma exceção se forem encontrados valores de ponto flutuante não finitos.

Parâmetros

values - mapeamento de parâmetros para valores numéricos.

conjugate

conjugate()

Retorna o conjugado complexo da expressão.

cos

cos()

Cosseno da expressão.

exp

exp()

Exponencie a expressão.

gradient

gradient(param)

Retorna a derivada dessa expressão com relação ao parâmetro de entrada.

Parâmetros

param - O parâmetro com relação ao qual a derivada é calculada.

Retorna

A derivada como um valor numérico constante ou um valor simbólico ParameterExpression.

is_real

is_real()

Verifique se a expressão representa um número real.

Observe que isso retornará None se houver parâmetros não vinculados e, nesse caso, não será possível determinar se a expressão é real.

is_symbol

is_symbol()

Verifica se a expressão corresponde a um símbolo simples.

Retorna

True se essa expressão corresponder a um símbolo, False caso contrário.

log

log()

Use o logaritmo natural da expressão.

numeric

numeric(strict=True)

Converta essa expressão em um valor numérico.

Parâmetros

strict - se True (padrão), essa função emitirá um erro se houver algum símbolo não vinculado na expressão. Se False, isso permite a conversão se a expressão representar um valor numérico, independentemente dos símbolos não vinculados. Por exemplo, (0 * Parameter("x")) é 0, mas tem o símbolo x presente.

sign

sign()

Retorna o sinal da expressão.

sin

sin()

Seno da expressão.

subs

subs(parameter_map, allow_unknown_parameters=False)

Retorna uma nova expressão com parâmetros de substituição.

Parâmetros

  • parameter_map - Mapeamento de Parameters em self para as instâncias ParameterExpression instâncias com as quais elas devem ser substituídas.
  • allow_unknown_parameters - Se False, gera um erro se parameter_map contiver Parameters nas chaves fora daquelas presentes na expressão. Se True, esses parâmetros são simplesmente ignorados.

Aumentos

CircuitError

  • Se parameter_map contiver parâmetros fora daqueles em self. - Se os parâmetros de substituição em parameter_map resultariam em um conflito de nomes na expressão gerada.

Retorna

Uma nova expressão com os parâmetros especificados substituídos.

sympify

sympify()

Retorna um SymPy equivalente a essa expressão.

Retorna

Um SymPy equivalente a essa expressão.

tan

tan()

Tangente da expressão.

Esta página foi útil?
Relate um bug, erro de digitação ou solicite conteúdo no GitHub.