pydiagram是一个python包,用于根据聚合物场理论模拟的结果生成相图。pydiagram还提供了分析仿真结果的功能。
pydiagram的Python项目详细描述
pydiagram是一个python包,用于根据聚合物场理论模拟的结果生成相图。pydiagram还提供了分析仿真结果的功能。
快速启动
一。安装
$ pip install pydiagram
必需的包
- numpy
- scipy
- matplotlib
- mpltex
- attrdict
- PyYAML
important note:pip或easy_install无法安装pyyaml。请通过下载其源代码安装它,并使用python setup.py install安装它,请参阅PyYAML Documentation上的详细信息。
2.使用pydiagram作为可执行文件
要使用可执行文件pydiagram,您需要提供一个项目配置文件配置文件采用yaml格式。pydiagram包附带了三个示例配置文件config_polyorder.yml、config_polyfts.yml和config_pydiagram.yml。您可以将其中一个复制到项目根目录并对其进行任何必要的修改。
典型用法。
pydiagram [-v][-h][-p][-q][-s][-m]
- pydiagram -p
此命令处理当前目录中的仿真数据它将把diagram、info_map和boundary对象保存为Python pickle文件可以使用solver选项在项目配置文件中指定解析器。
- pydiagram -q
根据项目配置文件中指定的打印模式,此命令将打印请求的图形并将其保存为文件。
- pydiagram -s
此命令将作为服务器运行pydiagram。
- pydiagram -m
此命令将以手动模式运行pydiagram,它将提交在项目配置文件中的predictor.manual中指定的其他模拟作业。
三。使用pydiagram作为库
您可以使用pydiagram函数自定义自己的处理、绘制和预测脚本。如前一节所述,脚本还将依赖于项目配置文件
典型用法。
importpydiagramimportmatplotlib.pyplotasplt# Generate diagram by specifying the folder where data locate.# This will require the output data files from supported solvers.# Here assume the project configuration file in the current directory.diagram=pydiagram.get_diagram()# Plot the raw diagramfig,ax=plt.subplots(1)pydiagram.plot_diagram(ax,diagram)# Or you can generate diagram from .dgm file# First load .dgm file to get info_mapxaxis,yaxis,info_map=pydiagram.load_dgm('phase_data.dgm')diagram=pydiagram.get_diagram_from_info_map(info_map)# You can find phase boundary from digaramboundary=pydiagram.get_boundary(diagram,info_map)# And plot it as scatter pointspydiagram.plot_boundary_point(ax,boundary)# Or plot it as linepydiagram.plot_boundary_line(ax,boundary)# PyDiagram also provides a plot function for plotting diagram points# and phase boundary together.pydiagram.plot_phase_diagram(diagram,boundary,settings,xaxis,yaxis)# To analyze the simulation results, PyDiagram also provides# a plotting function which will plot F vs. x or F vs. y,# a vs. x or a vs. y, and accuracy vs. x or accuracy vs. y.pydiagram(info_map,xaxis,yaxis,path,phases,val)
上述所有功能都有更多的可用选项来微调处理和绘图。有关详细信息,请参考源代码或直接通过电子邮件与我联系
四。DGM文件格式
对于非Polyorder或PolyFTS用户,要使用PyDiagram,必须按照dgm文件格式从模拟结果生成自己的dgm文件
dgm文件的格式。
第一行:
[x-axis name] [y-axis name]
其他行:
[x] [y] [phase] [F] [a] [accuracy] [separation state]
- ^ TT24}$:相图中X轴的变量名。
- ^ TT25}$:相图中y轴的变量名。
- x和y:相图中的坐标。
- phase:阶段结构的名称。
- F:对应相结构的吉布斯自由能
- a:无拉伸单元格大小
- accuracy:对应模拟的剩余误差。
- separation state:模拟是否产生相分离结构?0表示否,1表示是
前五列是必需的,后两列是可选的。 可选值按其顺序假定。 例如,如果只提供了6列,那么第6列将被解释为accuracy。
示例:
f xN 0.1 12.5 HEX 3.953993 2.9543 8.7e-7 1 0.1 12.6 LAM 3.970134 2.5877 1.7e-8 1