H2 MC 溶剂化¶
使用 q2m3.solvation 运行固定模式 H2 Monte Carlo 溶剂化。先安装 catalyst 和 solvation extras。
运行脚本¶
uv run python examples/qmmm/h2_mc_solvation.py
脚本构建 SolvationConfig,运行 run_solvation(),并报告 Catalyst IR 缓存是否命中。
配置用法¶
from q2m3.solvation import MoleculeConfig, QPEConfig, SolvationConfig, run_solvation
h2 = MoleculeConfig(
name="H2",
symbols=["H", "H"],
coords=[[0.0, 0.0, 0.0], [0.0, 0.0, 0.74]],
charge=0,
active_electrons=2,
active_orbitals=2,
basis="sto-3g",
)
config = SolvationConfig(
molecule=h2,
qpe_config=QPEConfig(
n_estimation_wires=4,
n_trotter_steps=10,
n_shots=50,
qpe_interval=10,
target_resolution=0.003,
energy_range=0.2,
),
hamiltonian_mode="fixed",
n_waters=10,
n_mc_steps=100,
temperature=300.0,
random_seed=42,
)
result = run_solvation(config, show_plots=False)
Fixed 模式¶
fixed 模式使用真空 QPE 哈密顿量。它在 MC 循环中添加 MM 能量项。此示例用于检查 Catalyst、JAX、PySCF 和 IR 缓存。
首次运行可能编译 Catalyst IR。如果电路结构不变,后续运行可复用缓存的 IR。
输出字段¶
结果字典包含能量轨迹、接受统计、计时数据、电路元数据和可选缓存统计。诊断可能增加结果键。读取结果的代码应使用 .get() 获取可选元数据。
内存说明¶
首次 MC 运行使用 H2 固定模式。H3O+ 和动态模式会增加哈密顿量项数、电路规模和 Catalyst 编译成本。H2 检查通过前,将它们仅用作诊断。