ParameterExpression
class qiskit.circuit.ParameterExpression(name_map, expr)
Bases : object
L'expression d'un paramètre.
Ceci est soutenu par le moteur d'expression symbolique de Qiskit et un cache pour les paramètres à l'intérieur de l'expression.
Attributs
num_parameters
Le nombre de paramètres non liés dans l'expression.
Cela équivaut à len(expr.parameters) mais n'implique pas la surcharge liée à la création d'un ensemble et au comptage de sa longueur.
parameters
Obtenir les paramètres présents dans l'expression.
Qiskit garantit l'égalité (via ==) des paramètres récupérés d'une expression avec les objets originaux utilisés pour créer cette expression Parameter utilisés pour créer cette expression, mais ne garantit pas le succès des comparaisons is .
Méthodes
abs
abs()
Prendre la valeur absolue de l'expression.
arccos
arccos()
Arccosine de l'expression.
arcsin
arcsin()
Arcsine de l'expression.
arctan
arctan()
Arctangente de l'expression.
assign
assign(parameter, value)
Assigner un paramètre à une valeur, qui peut être numérique ou une autre expression de paramètre.
Paramètres
- parameter - Paramètre de cette expression dont la valeur sera mise à jour.
- value - La nouvelle valeur à laquelle se rattacher.
Retours
Une nouvelle expression paramétrée par tous les paramètres qui n'ont pas été liés par l'affectation.
bind
bind(parameter_values, allow_unknown_parameters=False)
Relie l'ensemble des paramètres fournis à leurs valeurs correspondantes.
Paramètres
- parameter_values - Mappage des instances
Parameterà la valeur numérique à laquelle elles seront liées. - allow_unknown_parameters - Si
False, lève une erreur siparameter_valuescontient desParameterdans les clés en dehors de celles présentes dans l'expression. SiTrue, ces paramètres sont simplement ignorés.
Augmentations
-
- Si parameter_values contient des paramètres autres que ceux de self. - Si une valeur non numérique est transmise à
parameter_values.
- Si parameter_values contient des paramètres autres que ceux de self. - Si une valeur non numérique est transmise à
-
- Si la liaison des valeurs fournies nécessite une division par zéro.
Retours
Une nouvelle expression paramétrée par tous les paramètres qui n'ont pas été liés par parameter_values.
bind_all
bind_all(values)
Lier tous les paramètres de self aux valeurs numériques du dictionnaire, en renvoyant une valeur numérique.
Il s'agit d'un cas particulier de bind() qui peut atteindre des performances plus élevées. Le fait que le dictionnaire values contienne des paramètres qui ne sont pas utilisés dans cette expression ne pose aucun problème; il est prévu que le même dictionnaire de liaisons soit également utilisé dans d'autres expressions.
C'est une erreur d'appeler cette méthode avec un dictionnaire values qui ne lie pas toutes les valeurs, ou d'appeler cette méthode avec des valeurs non numériques, mais cela n'est pas explicitement vérifié, puisque cette méthode est destinée à une utilisation sensible aux performances. La transmission d'un dictionnaire incorrect peut entraîner un comportement inattendu.
Contrairement à bind()cette méthode ne lèvera pas d'exception si des valeurs flottantes non finies sont rencontrées.
Paramètres
valeurs - correspondance entre les paramètres et les valeurs numériques.
conjugate
conjugate()
Retourne le conjugué complexe de l'expression.
cos
cos()
Cosinus de l'expression.
exp
exp()
Exponentialiser l'expression.
gradient
gradient(param)
Renvoie la dérivée de cette expression par rapport au paramètre d'entrée.
Paramètres
param - Le paramètre par rapport auquel la dérivée est calculée.
Retours
La dérivée sous forme d'une valeur numérique constante ou d'une valeur symbolique ParameterExpression.
is_real
is_real()
Vérifiez si l'expression représente un nombre réel.
Notez que cette méthode renvoie None s'il existe des paramètres non liés, auquel cas il est impossible de déterminer si l'expression est réelle.
is_symbol
is_symbol()
Vérifier si l'expression correspond à un symbole simple.
Retours
True si cette expression correspond à un symbole, False sinon.
log
log()
Prendre le logarithme naturel de l'expression.
numeric
numeric(strict=True)
Convertit cette expression en une valeur numérique.
Paramètres
strict - Si True (par défaut), cette fonction lève une erreur s'il y a des symboles non liés dans l'expression. Si False, cela permet d'effectuer un casting si l'expression représente une valeur numérique, sans tenir compte des symboles non liés. Par exemple, (0 * Parameter("x")) correspond à 0, mais le symbole x est présent.
sign
sign()
Renvoie le signe de l'expression.
sin
sin()
Sinus de l'expression.
subs
subs(parameter_map, allow_unknown_parameters=False)
Renvoie une nouvelle expression avec des paramètres de remplacement.
Paramètres
- parameter_map - Correspondance entre les
Parameterdansselfaux instancesParameterExpressionpar lesquelles elles doivent être remplacées. - allow_unknown_parameters - Si
False, lève une erreur siparameter_mapcontient desParameterdans les clés en dehors de celles présentes dans l'expression. SiTrue, ces paramètres sont simplement ignorés.
Augmentations
- Si parameter_map contient des paramètres autres que ceux de self. - Si les paramètres de remplacement dans
parameter_mapentraîneraient un conflit de noms dans l'expression générée.
Retours
Une nouvelle expression remplacée par les paramètres spécifiés.
sympify
sympify()
Retourne un équivalent SymPy de cette expression.
Retours
Un équivalent SymPy de cette expression.
tan
tan()
Tangente de l'expression.