跳转至

HamiltonianTerm

from cascaqit import HamiltonianTerm

HamiltonianTerm

HamiltonianTerm(
    term_id: str,
    coefficient: float,
    observable: Observable,
    schema_version: str = ALGORITHM_SCHEMA_VERSION,
)

一个有限非零实系数与 Observable 的乘积,用于组成 PauliHamiltonian。term_id 标识加权项,observable.name 标识观测量,二者用于不同的结果引用。系数可以为负;零系数应在构造前删除。constant 能量偏移放在 PauliHamiltonian.constant 中。

from cascaqit import HamiltonianTerm, PauliZ

term = HamiltonianTerm("weighted_z", -0.7, PauliZ("q0"))
assert term.coefficient == -0.7
assert HamiltonianTerm.from_dict(term.to_dict()) == term

这只是声明;读取能量需让 VQE 或观测量执行路径求期望值。

from_dict

from_dict(data: Mapping[str, Any]) -> HamiltonianTerm

从字典还原加权项与嵌套 Observable,并检查 term_id、系数和对象类型。没有 from_json();JSON 文本需先用 json.loads() 解析。

to_dict

to_dict() -> dict[str, Any]

返回可写入 JSON 的字典,嵌套对象一并序列化。元组转成数组;这个字典是保存的声明,不是执行结果。

to_json

to_json(*, indent: int | None = None) -> str

返回 JSON 字符串,不写文件。indent=None 使用紧凑格式;提供缩进宽度可便于阅读。

stable_hash

stable_hash() -> str

返回规范 JSON 的 SHA-256 十六进制摘要。字段、标识或元数据变化都可能改变摘要;它用于比较保存内容,不判断两个声明在物理上是否等价。