Using xml_grep
Posted: Sat Oct 12, 2019 6:43 pm
Extracting xml elements from Qbox output is made easier using the
On midway.rcc.uchicago.edu, e.g., you can use
Extracting the <etotal> element from the output file gs3.r:
Extract the <etotal> element with only the text content:
Using XPath syntax to extract just atom "O2_110":
Extract the position of atom "O2_110", text only:
xml_grep
command. xml_grep is part of the Perl Twig package.On midway.rcc.uchicago.edu, e.g., you can use
module load perl
to access the command. A few examples:Extracting the <etotal> element from the output file gs3.r:
Code: Select all
$ xml_grep etotal gs3.r
<?xml version="1.0" ?>
<xml_grep version="0.9" date="Sat Oct 12 12:17:25 2019">
<file filename="gs3.r">
<etotal> -2626.17326085 </etotal>
</file>
</xml_grep>
Code: Select all
$ xml_grep --text_only etotal gs3.r
-2626.17326085
Code: Select all
$ xml_grep 'atom[@name="O2_110"]' gs3.r
<?xml version="1.0" ?>
<xml_grep version="0.9" date="Sat Oct 12 12:23:34 2019">
<file filename="gs3.r">
<atom name="O2_110" species="oxygen">
<position> 4.67035000 13.06390000 -3.37325000 </position>
<velocity> 0.00000000 0.00000000 0.00000000 </velocity>
<force> 0.00785222 0.00282495 0.00500539 </force>
</atom>
</file>
</xml_grep>
Code: Select all
$ xml_grep --text_only 'atom[@name="O2_110"]/position' gs3.r
4.67035000 13.06390000 -3.37325000