1个不稳定版本
0.1.3 | 2021年10月20日 |
---|---|
0.1.2 |
|
0.1.1 |
|
0.1.0 |
|
#1170 in 数学
在ezaimd中使用
14KB
194 代码行
rgaussian16
Gaussian16量子化学包的接口。该结构提供自动生成输入和运行外部程序g16
的功能。
由于配置与Gaussian相关联,可以使用多个Gaussian对象从Gaussian16提取不同的结果。这大大简化了与量子化学包的接口过程。
配置
一个示例配置文件。
config.yaml
---
mem: "136GB"
cpu: "0-47"
gpu: ~
checkpoint: "output.chk"
key_words: "#p WB97XD/Def2tzvpp SCF=XQC"
title: "single point"
charge: 0
multiplicity: 3
Gaussian16可以使用图形处理单元(GPU)运行。为了生成针对GPU的计算的输入,将~
替换为适当的字符串。例如,将上述配置中的GPU字段更改为"0=0"
将指示Gaussian16使用由CPU编号0控制的GPU。
有关使用GPU运行Gaussian16的更多信息,请参阅:https://gaussian.com/gpu/
示例用法
生成Gaussian对象,写入输入并运行g16
use rgaussian16::Gaussion;
fn main() -> Result<()> {
let input_file = std::fs::File::create("input.com")?;
let output_file = std::fs::File::create("output.out")?;
let job1_config = std::fs::File::open("config.yaml")?;
let job1_interface = Gaussion::new(config)?;
job1_interface.gen_input(input_file)?;
job1_interface.run(input_file, output_file)?;
Ok(())
}
依赖项
~4–6MB
~108K SLoC