计算有机晶体线性和非线性光学性质的脚本集

chi1chi2的Python项目详细描述


程序的目的是计算线性(折射率)和非线性(chi(2) 有机晶体的光学性质。

Installation

简单路径带Docker图像:

workdir=$(pwd)或您选择的任何其他目录

docker run-v$(workdir):/chi1chi2-it到ks86/python-chi1chi2 bash

硬路径

warning:手动安装并使程序达到其全部功能 即使在Linux中也需要相当多的专业知识(我不保证它是 可以在任何其他操作系统中运行),这是一项非常艰巨的任务。

确保已安装:
  • 格夫特兰
  • python 3.6
  • 打开“宝贝”
安装:
  • pip安装chi1chi2
  • 对于Fortran程序,存储库中提供了一个makefile: make命令在build/目录中生成程序

Description

整个程序由一组需要按顺序执行的脚本组成。

有四个主要步骤:

  1. 输入准备(可选-几何优化)
  2. 分子亚单位计算的光学性质
  3. 体积性质的计算
  4. 结果分析

此文件的目的是引导用户完成所有这些步骤。

Step 1 - Input preparation

  1. 从CIF(简易路径)

使用chi.from_cif获得几何图形,以便使用e.g.晶体09/14/进行进一步优化。

  1. 从分数坐标

使用chi.from_fra脚本(请参见:examples/mna_cif.fra,examples/mna_cif2.fra以查看约定) (记住要调整对称操作!)

  1. 手动

参见惯例示例

Step 1a after geometry optimization

  1. 使用chi.from_crystal脚本调整crystal几何优化后的坐标和费用
  2. 运行chi.input_preparator脚本获取输入文件:
  • charge\u generator程序(示例用法:charge\u generator<;chg1.inp
  • 带有lorentz程序的lorentz张量(示例用法:lorentz<;lorentz.inp>;l.dat

Step 2 - property calculation

使用一组电荷、几何图形并遵循您喜欢的特性计算过程。 其他shell脚本可以在以后的版本中提供。

Step 3 - core calculations

使用脚本chi.main获得所谓ab'c*参考系中的chi(1)chi(2)张量分量。

Q-LFT计算已启用!(从0.1.1开始)

Step 4 - result analysis

使用脚本chi.analyze和步骤3中生成的输出文件

  • 折射率分析(自0.1.3起)
  • 光学指标方向的张量分量的大小(自0.1.3起)

Helpers

有两个助手脚本可用于分子计算:
  • read g09.py用于在qc计算之后读取分子特性
  • scale props.py用于使用引用计算缩放静态属性

注意:这些脚本最小化了对项目库的依赖,这样它们就可以 用作外部mach上的独立脚本行

Examples

请参阅examples/examples.pdf以遵循集成测试中使用的步骤。 用于测试的文件位于tests/integration目录中:

  • input作为起点
  • 需要作为引用

示例gaussian09计算输入文件可以在examples/mna.com中找到

Version history

  • 0.1.0-首次发布(2019年1月31日)
  • 0.1.1-增加Q-LFT计算支持(2019年2月5日)
  • 0.1.2-PYPI上的小自述修复(2019年2月6日)
  • 0.2.0-核心计算分析-以表格形式报告(2019年3月9日)
  • 0.2.1-属性缩放辅助对象(2019年3月27日)

Release plans

  • 是吗?.?.?-折射率色散
  • 是吗?.?.?-相位匹配图

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
JavaSpringMVC控制器测试打印结果JSON字符串   若catch语句返回,那个么为什么它最终会阻塞呢?   java Grails中servletContext在哪里可用?   java Jhipster:如何为现有项目启用多种语言   java异常评估SpringEL表达式:“#fields.hasErrors('something')”   java如何验证SeleniumWebDriver中的文本颜色?   java在绘图时使用JPanel坐标   java如何初始化spring启动到project?   java如何通过JDBC的PreparedStatement将UUID数组插入HyperSQL数据库   java修改JVM以跨线程序列化文件访问   Javascript到Java正则表达式   使用Java运行时调用aspell程序时出现字符集问题。getRuntime()。执行官   执行RDP时的java Sukuli按钮识别   java如何使用okhttp更改connect请求的标头   java无法创建Maven Eclipse项目