comparison qcxms_prod_run.xml @ 0:bf836aaeca19 draft

planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/qcxms commit 45ad41f2368834ab06929496fb17fc9a85b8e3c5
author recetox
date Thu, 22 Feb 2024 08:41:32 +0000
parents
children bc099c440016
comparison
equal deleted inserted replaced
-1:000000000000 0:bf836aaeca19
1 <tool id="qcxms_production_run" name="QCxMS production run" version="@TOOL_VERSION@+galaxy0" profile="21.05">
2 <description>Production run to obtain a QCxMS simulated mass spectrum</description>
3
4 <macros>
5 <import>macros.xml</import>
6 </macros>
7 <expand macro="edam"/>
8 <expand macro="creator"/>
9 <expand macro="requirements"/>
10
11 <command detect_errors="exit_code"><![CDATA[
12 python3 '${create_folder_structure}' &&
13 find TMPQCXMS/*/ -type d | xargs -I {} -P ${GALAXY_SLOTS} sh -c 'cd {} && /qcxms_bin/qcxms --prod >> $log' &&
14 /qcxms_bin/getres &&
15 /plotms_bin/PlotMS.v.6.2.0/plotms &&
16 sh ${__tool_directory__}/msp_out.sh
17 ]]></command>
18
19 <environment_variables>
20 <environment_variable name="OMP_NUM_THREADS">1,2,1</environment_variable>
21 </environment_variables>
22
23 <configfiles>
24 <configfile name="create_folder_structure">
25 import os
26 import shutil
27
28 #set in_collection = str("', '").join([str($f) for $f in $in_files])
29 #set start_collection = str("', '").join([str($f) for $f in $start_files])
30 #set xyz_collection = str("', '").join([str($f) for $f in $xyz_files])
31
32 #set names = str("', '").join([str($f.name) for $f in $xyz_files])
33 names = '$names'
34 folder_names = [x.split("_")[0] for x in names]
35
36 in_collection = '$in_collection'
37 start_collection = '$start_collection'
38 xyz_collection = '$xyz_collection'
39
40 # Create a new output folder to store the result
41 output_path = 'TMPQCXMS'
42 os.makedirs(output_path, exist_ok=True)
43
44 for folder_name, in_file, start_file, xyz_file in zip(folder_names, in_collection, start_collection, xyz_collection):
45 new_folder_path = os.path.join(output_path, folder_name)
46 os.makedirs(new_folder_path, exist_ok=True)
47
48 shutil.copy2(os.path.join(os.path.dirname(in_collection[0]), in_file), os.path.join(new_folder_path, 'qcxms.in'))
49 shutil.copy2(os.path.join(os.path.dirname(start_collection[0]), start_file), os.path.join(new_folder_path, 'qcxms.start'))
50 shutil.copy2(os.path.join(os.path.dirname(xyz_collection[0]), xyz_file), os.path.join(new_folder_path, 'start.xyz'))
51
52 </configfile>
53 </configfiles>
54
55 <inputs>
56 <param type="data_collection" collection_type="list" name="in_files" label="in files [.in]" format="in,txt,text"/>
57 <param type="data_collection" collection_type="list" name="start_files" label="start files [.start]" format="start,txt,text"/>
58 <param type="data_collection" collection_type="list" name="xyz_files" label="xyz files [.xyz]" format="xyz,txt,text"/>
59 <param name="store_extended_output" type="boolean" value="false" label="Store additional outputs" help="Output the logfile."/>
60 </inputs>
61
62 <outputs>
63 <data name="msp_output" format="msp" from_work_dir="simulated_spectra.msp" label="simulated_spectra.msp generated by ${tool.name} on ${on_string}"/>
64 <data name="log" format="txt" label="logfile of ${tool.name} on ${on_string}">
65 <filter>store_extended_output</filter>
66 </data>
67 </outputs>
68
69 <tests>
70 <test expect_failure="true"/>
71 </tests>
72
73 <help><![CDATA[
74 The QCxMS production run tool is used to simulate mass spectra for a given molecule using the QCxMS (Quantum Chemistry by Mass Spectrometry) method.
75 This tool generates simulated mass spectra based on the equilibrium structure of a molecule and allows you to perform QCxMS production runs.
76 For detail information visit the documentation at https://xtb-docs.readthedocs.io/en/latest/qcxms_doc/qcxms_run.html#excecuting-the-production-runs
77 ]]>
78 </help>
79
80 <citations>
81 <citation type="doi">10.1002/anie.201300158</citation>
82 <citation type="doi">10.1039/C4OB01668H</citation>
83 <citation type="doi">10.1021/jp5096618</citation>
84 <citation type="doi">10.1255/ejms.1313</citation>
85 <citation type="doi">10.1021/acs.jpca.6b02907</citation>
86 </citations>
87 </tool>