comparison pm_asephonons.xml @ 0:4bc5e66259ca draft

planemo upload for repository https://github.com/muon-spectroscopy-computational-project/muon-galaxy-tools/main/pm_asephonons commit d130cf2c46d933fa9d0214ddbd5ddf860f322dc4
author muon-spectroscopy-computational-project
date Thu, 25 Aug 2022 16:17:41 +0000
parents
children 641fda3dfb62
comparison
equal deleted inserted replaced
-1:000000000000 0:4bc5e66259ca
1 <tool id="pm_asephonons" name="PyMuonSuite Phonons" version="0.1.1" python_template_version="3.5" profile="22.01">
2 <description>calculate phonons using ASE and DFTB+</description>
3 <macros>
4 <!-- citation should be updated with every underlying tool version -->
5 <!-- typical fields to update are version, month, year, and doi -->
6 <token name="@PYMUONSUITE_CITATION@">
7 @software{pymuon-suite,
8 author = {Sturniolo, Simone and Liborio, Leandro and Chadwick, Eli and Murgatroyd, Laura and Laverack, Adam and {Muon Spectroscopy Computational Project}},
9 license = {GPL-3.0},
10 title = {{pymuon-suite}},
11 url = {https://github.com/muon-spectroscopy-computational-project/pymuon-suite},
12 version = {v0.2.1},
13 month = {2},
14 year = {2022},
15 doi = {}
16 }
17 </token>
18 </macros>
19 <creator>
20 <person givenName="Jyothish" familyName="Thomas" identifier="https://orcid.org/0000-0003-4724-6924"/>
21 <person givenName="Eli" familyName="Chadwick" url="https://github.com/elichad" identifier="https://orcid.org/0000-0002-0035-6475"/>
22 <organization url="https://muon-spectroscopy-computational-project.github.io/index.html" name="The Muon Spectroscopy Computational Project"/>
23 </creator>
24 <requirements>
25 <!-- note versioning is different due to multiple dependencies -->
26 <requirement type="package" version="0.2.1">pymuonsuite</requirement>
27 <requirement type="package" version="21.2">dftbplus</requirement>
28 <requirement type="package" version="1.22.4">numpy</requirement> <!-- pinned due to numpy/ASE/DFTB+ incompatibility https://github.com/dftbplus/dftbplus/issues/1064 -->
29 <requirement type="package" version="3.0">zip</requirement>
30 </requirements>
31 <command detect_errors="exit_code"><![CDATA[
32 structure_name_internal="input_structure.$structure.ext" &&
33 touch pho_params.yaml &&
34 ([[ ! -z "$name" ]] && printf "name: $name \n">>pho_params.yaml || ( >&2 echo "name empty" && exit 2)) &&
35 ([[ ! -z "$phonon_kpoint_grid" ]] && ( printf "phonon_kpoint_grid: $phonon_kpoint_grid \n" | sed "s/__ob__/[/g" | sed "s/__cb__/]/g" )>>pho_params.yaml || ( >&2 echo "phonon_kpoint_grid empty" && exit 2)) &&
36 ([[ ! -z "$kpoint_grid" ]] && ( printf "kpoint_grid: $kpoint_grid \n" | sed "s/__ob__/[/g" | sed "s/__cb__/]/g" )>>pho_params.yaml || ( >&2 echo "kpoint_grid empty" && exit 2)) &&
37 ([[ ! -z "$force_tol" ]] && printf "force_tol: $force_tol \n">>pho_params.yaml || ( >&2 echo "force_tol empty" && exit 2)) &&
38 ([[ ! -z "$dftb_set" ]] && printf "dftb_set: $dftb_set \n">>pho_params.yaml || ( >&2 echo "dftb_set empty" && exit 2)) &&
39 ([[ ! -z "$pbc" ]] && printf "pbc: $pbc \n">>pho_params.yaml || ( >&2 echo "pbc empty" && exit 2)) &&
40 printf "force_clean: false \n">>pho_params.yaml &&
41 ln -s $structure \$structure_name_internal &&
42 cat pho_params.yaml &&
43 pm-asephonons \$structure_name_internal pho_params.yaml ; err=\$? &&
44 echo "Asephonons output:" &&
45 cat asephonons.out &&
46 if [ \$err != 0 ] ; then echo "errored" && exit 24 ; fi &&
47 ln -s "${name}_phonons.txt" phonon_report.txt &&
48 zip -r out_zip.zip $name "${name}_phonons.txt" asephonons.out band.out pho_params.yaml
49 ]]></command>
50 <inputs>
51 <param type="data" name="structure" label="Structure file" format="cell" help="The structure to generate the phonon report from. Accepted file types: cell."/>
52 <param type="text" name="name" label="Structure name" help="Name of the structure." value="struct"/>
53 <param type="text" name="phonon_kpoint_grid" label="Phonon k-points" value="[1, 1, 1]"/>
54 <param type="text" name="kpoint_grid" label="K-points used for DFTB+ calculation" value="[1, 1, 1]"/>
55 <param type="float" name="force_tol" label="Force tolerance for optimisation" value="0.01"/>
56 <param type="select" name="dftb_set" label="DFTB set to use" value="3ob-3-1">
57 <option value="3ob-3-1">3ob-3-1</option>
58 <option value="pbc-0-3">pbc-0-3</option>
59 </param>
60 <param type="boolean" name="pbc" label="Use periodic boundary conditions" help="Whether to turn on periodic boundary conditions in DFTB+." value="true"/>
61 </inputs>
62 <outputs>
63 <data label="phonons outputs of $structure.name" name="phonon_outputs" format="zip" from_work_dir="out_zip.zip"/>
64 <data label="phonon report for $structure.name" name="phonon_report" format="txt" from_work_dir="phonon_report.txt"/>
65 </outputs>
66 <tests>
67 <test>
68 <param name="structure" value="Si.cell" ftype="cell"/>
69 <param name="name" value="Si"/>
70 <param name="dftb_set" value="pbc-0-3"/>
71 <output name="phonon_report" file="test_out.txt" ftype="txt" compare="re_match">
72 <assert_contents>
73 <has_size value="8155" delta="20"/>
74 </assert_contents>
75 </output>
76 </test>
77 <test>
78 <param name="structure" value="Si.cif" ftype="cif"/>
79 <param name="name" value="Si"/>
80 <param name="dftb_set" value="pbc-0-3"/>
81 <output name="phonon_report" file="test_out.txt" ftype="txt" compare="re_match">
82 <assert_contents>
83 <has_size value="8155" delta="20"/>
84 </assert_contents>
85 </output>
86 </test>
87 <test>
88 <param name="structure" value="Si.xyz" ftype="xyz"/>
89 <param name="name" value="Si"/>
90 <param name="dftb_set" value="pbc-0-3"/>
91 <output name="phonon_report" file="test_out.txt" ftype="txt" compare="re_match">
92 <assert_contents>
93 <has_size value="8155" delta="20"/>
94 </assert_contents>
95 </output>
96 </test>
97 <test>
98 <param name="structure" value="Si.extxyz" ftype="extxyz"/>
99 <param name="name" value="Si"/>
100 <param name="dftb_set" value="pbc-0-3"/>
101 <output name="phonon_report" file="test_out.txt" ftype="txt" compare="re_match">
102 <assert_contents>
103 <has_size value="8155" delta="20"/>
104 </assert_contents>
105 </output>
106 </test>
107 </tests>
108 <help><![CDATA[
109 usage: pm-asephonons structure params
110
111 Given an input structure, this tool generates a phonon report for that structure using the parameters provided.
112
113 ]]></help>
114 <citations>
115 <citation type="bibtex">
116 @PYMUONSUITE_CITATION@
117 </citation>
118 <citation type="bibtex">
119 @article{doi:10.1063/1.5085197,
120 author = {Sturniolo,Simone and Liborio,Leandro and Jackson,Samuel },
121 title = {Comparison between density functional theory and density functional tight binding approaches for finding the muon stopping site in organic molecular crystals},
122 journal = {The Journal of Chemical Physics},
123 volume = {150},
124 number = {15},
125 pages = {154301},
126 year = {2019},
127 doi = {10.1063/1.5085197},
128 URL = {
129 https://doi.org/10.1063/1.5085197
130 },
131 eprint = {
132 https://doi.org/10.1063/1.5085197
133 }
134 }
135 </citation>
136 <citation type="bibtex">
137 @article{larsen2017atomic,
138 title={The atomic simulation environment—a Python library for working with atoms},
139 author={Larsen, Ask Hjorth and Mortensen, Jens J{\o}rgen and Blomqvist, Jakob and Castelli, Ivano E and Christensen, Rune and Du{\l}ak, Marcin and Friis, Jesper and Groves, Michael N and Hammer, Bj{\o}rk and Hargus, Cory and others},
140 journal={Journal of Physics: Condensed Matter},
141 volume={29},
142 number={27},
143 pages={273002},
144 year={2017},
145 publisher={IOP Publishing}
146 }
147 </citation>
148 </citations>
149 </tool>