From 4e3b1201032f9fdb946a32fd3344b27004a0fb9e Mon Sep 17 00:00:00 2001
From: "Himanen, Lauri (himanel1)" <lauri.himanen@aalto.fi>
Date: Mon, 25 Apr 2016 11:58:03 +0300
Subject: [PATCH] Added parsing of input file if found, added support for more
 functionals, corrected the formatting of functionals, restructured the
 package a bit.

---
 README.md                                     |   18 +-
 parser/parser-cp2k/cp2kparser/__init__.py     |    3 +-
 .../cp2kparser/parsing/__init__.py            |    0
 .../parser-cp2k/cp2kparser/parsing/parser.py  |   45 -
 .../cp2kparser/parsing/versions/__init__.py   |    0
 .../parsing/versions/cp2k262/__init__.py      |    0
 .../parsing/versions/cp2k262/mainparser.py    |  347 ----
 .../parsing/versions/versionsetup.py          |   21 -
 .../parser-cp2k/cp2kparser/utils/__init__.py  |    0
 .../cp2kparser/utils/baseclasses.py           |  511 ------
 .../parser-cp2k/cp2kparser/utils/logconfig.py |   99 --
 .../parser-cp2k/cp2kparser/utils/testing.py   |   66 -
 .../eu/nomad_lab/parsers/Cp2kParser.scala     |   23 +-
 .../XC_functional/becke88/unittest.out        | 1434 -----------------
 .../XC_functional/blyp/unittest.out           |   82 +-
 .../cp2k_2.6.2/energy_force/unittest.out      |  539 ++++++-
 test/unittests/cp2k_2.6.2/run_tests.py        |   45 +-
 17 files changed, 592 insertions(+), 2641 deletions(-)
 delete mode 100644 parser/parser-cp2k/cp2kparser/parsing/__init__.py
 delete mode 100644 parser/parser-cp2k/cp2kparser/parsing/parser.py
 delete mode 100644 parser/parser-cp2k/cp2kparser/parsing/versions/__init__.py
 delete mode 100644 parser/parser-cp2k/cp2kparser/parsing/versions/cp2k262/__init__.py
 delete mode 100644 parser/parser-cp2k/cp2kparser/parsing/versions/cp2k262/mainparser.py
 delete mode 100644 parser/parser-cp2k/cp2kparser/parsing/versions/versionsetup.py
 delete mode 100644 parser/parser-cp2k/cp2kparser/utils/__init__.py
 delete mode 100644 parser/parser-cp2k/cp2kparser/utils/baseclasses.py
 delete mode 100644 parser/parser-cp2k/cp2kparser/utils/logconfig.py
 delete mode 100644 parser/parser-cp2k/cp2kparser/utils/testing.py
 delete mode 100644 test/unittests/cp2k_2.6.2/XC_functional/becke88/unittest.out

diff --git a/README.md b/README.md
index 9673843..ffa5513 100644
--- a/README.md
+++ b/README.md
@@ -70,12 +70,18 @@ easily readable formatting is also provided for the log messages.
 
 ## Testing
 The parsers can become quite complicated and maintaining them without
-systematic testing can become troublesome. Unit tests provide one way to
-test each parseable quantity and python has a very good [library for
-unit testing](https://docs.python.org/2/library/unittest.html). When the parser
-supports a new quantity it is quite fast to create unit tests for it. These
-tests will validate the parsing, and also easily detect bugs that may rise when
-the code is modified in the future.
+systematic testing is impossible. There are general tests that are
+performed automatically in the scala layer for all parsers. This is essential,
+but can only test that the data is outputted in the correct format and
+according to some general rules. These tests cannot verify that the contents
+are correct.
+
+In order to truly test the parser output, unit testing is needed. Unit tests
+provide one way to test each parseable quantity and python has a very good
+[library for unit testing](https://docs.python.org/2/library/unittest.html).
+When the parser supports a new quantity it is quite fast to create unit tests
+for it. These tests will validate the parsing, and also easily detect bugs that
+may rise when the code is modified in the future.
 
 ## Unit conversion
 You can find unit conversion tools from the python-common repository and its
diff --git a/parser/parser-cp2k/cp2kparser/__init__.py b/parser/parser-cp2k/cp2kparser/__init__.py
index 0a1233a..382f845 100644
--- a/parser/parser-cp2k/cp2kparser/__init__.py
+++ b/parser/parser-cp2k/cp2kparser/__init__.py
@@ -1,2 +1 @@
-import cp2kparser.utils.logconfig
-from cp2kparser.parsing.parser import CP2KParser
+from cp2kparser.parser import CP2KParser
diff --git a/parser/parser-cp2k/cp2kparser/parsing/__init__.py b/parser/parser-cp2k/cp2kparser/parsing/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/parser/parser-cp2k/cp2kparser/parsing/parser.py b/parser/parser-cp2k/cp2kparser/parsing/parser.py
deleted file mode 100644
index d78d8db..0000000
--- a/parser/parser-cp2k/cp2kparser/parsing/parser.py
+++ /dev/null
@@ -1,45 +0,0 @@
-import re
-import logging
-from cp2kparser.utils.baseclasses import ParserInterface
-from cp2kparser.parsing.versions.versionsetup import get_main_parser
-logger = logging.getLogger(__name__)
-
-
-#===============================================================================
-class CP2KParser(ParserInterface):
-    """This class handles the initial setup before any parsing can happen. It
-    determines which version of CP2K was used to generate the output and then
-    sets up a correct implementation.
-
-    After the implementation has been setup, you can parse the files with
-    parse().
-    """
-    def __init__(self, main_file, metainfo_to_keep=None, backend=None, default_units=None, metainfo_units=None):
-        super(CP2KParser, self).__init__(main_file, metainfo_to_keep, backend, default_units, metainfo_units)
-
-    def setup_version(self):
-        """Setups the version by looking at the output file and the version
-        specified in it.
-        """
-        # Search for the version specification and initialize a correct
-        # implementation for this version
-        regex = re.compile(r" CP2K\| version string:\s+CP2K version ([\d\.]+)")
-        n_lines = 30
-        with open(self.parser_context.main_file, 'r') as outputfile:
-            for i_line in xrange(n_lines):
-                line = next(outputfile)
-                result = regex.match(line)
-                if result:
-                    version_id = result.group(1).replace('.', '')
-                    break
-        if not result:
-            logger.error("Could not find a version specification from the given main file.")
-
-        self.parser_context.file_storage.setup_file_id(self.parser_context.main_file, "output")
-        self.main_parser = get_main_parser(version_id)(self.parser_context.main_file, self.parser_context)
-
-    def get_metainfo_filename(self):
-        return "cp2k.nomadmetainfo.json"
-
-    def get_parser_info(self):
-        return {'name': 'cp2k-parser', 'version': '1.0'}
diff --git a/parser/parser-cp2k/cp2kparser/parsing/versions/__init__.py b/parser/parser-cp2k/cp2kparser/parsing/versions/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/parser/parser-cp2k/cp2kparser/parsing/versions/cp2k262/__init__.py b/parser/parser-cp2k/cp2kparser/parsing/versions/cp2k262/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/parser/parser-cp2k/cp2kparser/parsing/versions/cp2k262/mainparser.py b/parser/parser-cp2k/cp2kparser/parsing/versions/cp2k262/mainparser.py
deleted file mode 100644
index 8b2ebe8..0000000
--- a/parser/parser-cp2k/cp2kparser/parsing/versions/cp2k262/mainparser.py
+++ /dev/null
@@ -1,347 +0,0 @@
-import re
-from nomadcore.simple_parser import SimpleMatcher as SM
-from nomadcore.caching_backend import CachingLevel
-from cp2kparser.utils.baseclasses import MainParser
-import numpy as np
-import logging
-logger = logging.getLogger("nomad.CP2KParser")
-
-
-#===============================================================================
-class CP2KMainParser(MainParser):
-    """The main parser class.
-    """
-    def __init__(self, file_path, parser_context):
-        """Initialize an output parser.
-        """
-        super(CP2KMainParser, self).__init__(file_path, parser_context)
-        self.regex_f = "-?\d+\.\d+(?:E(?:\+|-)\d+)?"  # Regex for a floating point value
-        self.regex_i = "-?\d+"  # Regex for an integer
-
-        # Define the output parsing tree for this version
-        self.root_matcher = SM("",
-            forwardMatch=True,
-            sections=['section_run', "section_system_description"],
-            subMatchers=[
-                SM( r" DBCSR\| Multiplication driver",
-                    sections=['cp2k_section_dbcsr'],
-                ),
-                SM( r" \*\*\*\* \*\*\*\* \*\*\*\*\*\*  \*\*  PROGRAM STARTED AT\s+(?P<cp2k_run_start_date>\d{4}-\d{2}-\d{2}) (?P<cp2k_run_start_time>\d{2}:\d{2}:\d{2}.\d{3})",
-                    sections=['cp2k_section_startinformation'],
-                ),
-                SM( r" CP2K\|",
-                    sections=['cp2k_section_programinformation'],
-                    forwardMatch=True,
-                    subMatchers=[
-                        SM( r" CP2K\| version string:\s+(?P<program_version>[\w\d\W\s]+)"),
-                        SM( r" CP2K\| source code revision number:\s+svn:(?P<cp2k_svn_revision>\d+)"),
-                    ]
-                ),
-                SM( r" CP2K\| Input file name\s+(?P<cp2k_input_filename>.+$)",
-                    sections=['cp2k_section_filenames'],
-                    subMatchers=[
-                        SM( r" GLOBAL\| Basis set file name\s+(?P<cp2k_basis_set_filename>.+$)"),
-                        SM( r" GLOBAL\| Geminal file name\s+(?P<cp2k_geminal_filename>.+$)"),
-                        SM( r" GLOBAL\| Potential file name\s+(?P<cp2k_potential_filename>.+$)"),
-                        SM( r" GLOBAL\| MM Potential file name\s+(?P<cp2k_mm_potential_filename>.+$)"),
-                        SM( r" GLOBAL\| Coordinate file name\s+(?P<cp2k_coordinate_filename>.+$)"),
-                    ]
-                ),
-                SM( " CELL\|",
-                    adHoc=self.adHoc_cp2k_section_cell(),
-                    otherMetaInfo=["simulation_cell"]
-                ),
-                SM( " DFT\|",
-                    sections=["section_method"],
-                    otherMetaInfo=["XC_functional", "self_interaction_correction_method"],
-                    forwardMatch=True,
-                    subMatchers=[
-                        SM( " DFT\| Multiplicity\s+(?P<target_multiplicity>{})".format(self.regex_i)),
-                        SM( " DFT\| Charge\s+(?P<total_charge>{})".format(self.regex_i)),
-                        SM( " DFT\| Self-interaction correction \(SIC\)\s+(?P<self_interaction_correction_method>[^\n]+)"),
-                        SM( " FUNCTIONAL\| ([\w\d\W\s]+):",
-                            forwardMatch=True,
-                            repeats=True,
-                            sections=["section_XC_functionals"],
-                            adHoc=self.adHoc_section_XC_functionals()
-                        )
-                    ]
-                ),
-                SM( " TOTAL NUMBERS AND MAXIMUM NUMBERS",
-                    sections=["cp2k_section_total_numbers"],
-                    subMatchers=[
-                        SM( "\s+- Atoms:\s+(?P<number_of_atoms>\d+)"),
-                        SM( "\s+- Shell sets:\s+(?P<cp2k_shell_sets>\d+)")
-                    ]
-                ),
-                SM( " MODULE QUICKSTEP:  ATOMIC COORDINATES IN angstrom",
-                    adHoc=self.adHoc_cp2k_section_quickstep_atom_information(),
-                    otherMetaInfo=["atom_label", "atom_position"]
-                ),
-                SM( " SCF WAVEFUNCTION OPTIMIZATION",
-                    sections=["section_single_configuration_calculation"],
-                    subMatchers=[
-                        SM( r"\s+\d+\s+\S+\s+{0}\s+{0}\s+{0}\s+(?P<energy_total_scf_iteration__hartree>{0})\s+{0}".format(self.regex_f),
-                            sections=["section_scf_iteration"],
-                            repeats=True,
-                        ),
-                        SM( r" ENERGY\| Total FORCE_EVAL \( \w+ \) energy \(a\.u\.\):\s+(?P<energy_total__hartree>{0})".format(self.regex_f)),
-                        SM( r" ATOMIC FORCES in \[a\.u\.\]"),
-                        SM( r" # Atom   Kind   Element          X              Y              Z",
-                            adHoc=self.adHoc_atom_forces()
-                        ),
-                    ]
-                ),
-                SM( " MD| Molecular Dynamics Protocol",
-                    sections=["cp2k_section_md"],
-                    forwardMatch=True,
-                    subMatchers=[
-                        SM( " ENERGY\| Total FORCE_EVAL",
-                            repeats=True,
-                            sections=["cp2k_section_md_step"],
-                            subMatchers=[
-                                SM( " ATOMIC FORCES in \[a\.u\.\]",
-                                    sections=["cp2k_section_md_forces"],
-                                    subMatchers=[
-                                        SM( "\s+\d+\s+\d+\s+[\w\W\d]+\s+(?P<cp2k_md_force_atom_string>{0}\s+{0}\s+{0})".format(self.regex_f),
-                                            sections=["cp2k_section_md_force_atom"],
-                                            repeats=True,
-                                        )
-                                    ]
-                                ),
-                                SM( " STEP NUMBER\s+=\s+(?P<cp2k_md_step_number>\d+)"),
-                                SM( " TIME \[fs\]\s+=\s+(?P<cp2k_md_step_time>\d+\.\d+)"),
-                                SM( " TEMPERATURE \[K\]\s+=\s+(?P<cp2k_md_temperature_instantaneous>{0})\s+(?P<cp2k_md_temperature_average>{0})".format(self.regex_f)),
-                                SM( " i =",
-                                    sections=["cp2k_section_md_coordinates"],
-                                    otherMetaInfo=["cp2k_md_coordinates"],
-                                    dependencies={"cp2k_md_coordinates": ["cp2k_md_coordinate_atom_string"]},
-                                    subMatchers=[
-                                        SM( " \w+\s+(?P<cp2k_md_coordinate_atom_string>{0}\s+{0}\s+{0})".format(self.regex_f),
-                                            endReStr="\n",
-                                            sections=["cp2k_section_md_coordinate_atom"],
-                                            repeats=True,
-                                        )
-                                    ]
-                                )
-                            ]
-                        )
-                    ]
-                )
-            ]
-        )
-        #=======================================================================
-        # The cache settings
-        self.caching_level_for_metaname = {
-            'section_XC_functionals': CachingLevel.ForwardAndCache,
-            'self_interaction_correction_method': CachingLevel.Cache,
-            'cp2k_section_md_coordinates': CachingLevel.Cache,
-            'cp2k_section_md_coordinate_atom': CachingLevel.Cache,
-            'cp2k_md_coordinate_atom_string': CachingLevel.Cache,
-            'cp2k_md_coordinate_atom_float': CachingLevel.Cache,
-
-            'cp2k_section_md_forces': CachingLevel.Cache,
-            'cp2k_section_md_force_atom': CachingLevel.Cache,
-            'cp2k_md_force_atom_string': CachingLevel.Cache,
-            'cp2k_md_force_atom_float': CachingLevel.Cache,
-        }
-
-    #===========================================================================
-    # The functions that trigger when sections are closed
-    def onClose_section_method(self, backend, gIndex, section):
-        """When all the functional definitions have been gathered, matches them
-        with the nomad correspondents and combines into one single string which
-        is put into the backend.
-        """
-        # Combine the functional names into a one big string that is placed
-        # into XC_functional
-        functional_names = []
-        section_XC_functionals = section["section_XC_functionals"]
-
-        for functional in section_XC_functionals:
-            functional_name = functional["XC_functional_name"][0]
-            functional_names.append(functional_name)
-
-        functionals = "_".join(sorted(functional_names))
-        backend.addValue('XC_functional', functionals)
-
-        # Transform the CP2K self-interaction correction string to the NOMAD
-        # correspondent, and push directly to the superBackend to avoid caching
-        sic_cp2k = section["self_interaction_correction_method"][0]
-        sic_map = {
-            "NO": "",
-            "AD SIC": "SIC_AD",
-            "Explicit Orbital SIC": "SIC_EXPLICIT_ORBITALS",
-            "SPZ/MAURI SIC": "SIC_MAURI_SPZ",
-            "US/MAURI SIC": "SIC_MAURI_US",
-        }
-        sic_nomad = sic_map.get(sic_cp2k)
-        if sic_nomad is not None:
-            backend.superBackend.addValue('self_interaction_correction_method', sic_nomad)
-        else:
-            logger.warning("Unknown self-interaction correction method used.")
-
-    def onClose_cp2k_section_md_coordinate_atom(self, backend, gIndex, section):
-        """Given the string with the coordinate components for one atom, make it
-        into a numpy array of coordinate components and store for later
-        concatenation.
-        """
-        force_string = section["cp2k_md_coordinate_atom_string"][0]
-        components = np.array([float(x) for x in force_string.split()])
-        backend.addArrayValues("cp2k_md_coordinate_atom_float", components)
-
-    def onClose_cp2k_section_md_coordinates(self, backend, gIndex, section):
-        """When all the coordinates for individual atoms have been gathered,
-        concatenate them into one big array and forward to the backend.
-        """
-        forces = section["cp2k_md_coordinate_atom_float"]
-        forces = np.array(forces)
-        backend.addArrayValues("cp2k_md_coordinates", forces)
-
-    def onClose_cp2k_section_md_force_atom(self, backend, gIndex, section):
-        """Given the string with the force components for one atom, make it
-        into a numpy array of force components and store for later
-        concatenation.
-        """
-        force_string = section["cp2k_md_force_atom_string"][0]
-        components = np.array([float(x) for x in force_string.split()])
-        backend.addArrayValues("cp2k_md_force_atom_float", components)
-
-    def onClose_cp2k_section_md_forces(self, backend, gIndex, section):
-        """When all the forces for individual atoms have been gathered,
-        concatenate them into one big array and forward to the backend.
-        """
-        forces = section["cp2k_md_force_atom_float"]
-        forces = np.array(forces)
-        backend.addArrayValues("cp2k_md_forces", forces, unit="forceAu")
-
-    #===========================================================================
-    # adHoc functions that are used to do custom parsing. Primarily these
-    # functions are used for data that is formatted as a table or a list.
-    def adHoc_section_XC_functionals(self):
-        """Used to extract the functional information.
-        """
-        def wrapper(parser):
-
-            # Define the regex that extracts the information
-            regex_string = " FUNCTIONAL\| ([\w\d\W\s]+):"
-            regex_compiled = re.compile(regex_string)
-
-            # Parse out the functional name
-            functional_name = None
-            line = parser.fIn.readline()
-            result = regex_compiled.match(line)
-
-            if result:
-                functional_name = result.groups()[0]
-
-            # Define a mapping for the functionals
-            functional_map = {
-                "LYP": "GGA_C_LYP",
-                "BECKE88": "GGA_X_B88",
-                "PADE": "LDA_XC_TETER93",
-                "LDA": "LDA_XC_TETER93",
-                "BLYP": "HYB_GGA_XC_B3LYP",
-            }
-
-            # If match found, add the functional definition to the backend
-            nomad_name = functional_map.get(functional_name)
-            if nomad_name is not None:
-                parser.backend.addValue('XC_functional_name', nomad_name)
-
-        return wrapper
-
-    def adHoc_cp2k_section_cell(self):
-        """Used to extract the cell information.
-        """
-        def wrapper(parser):
-            # Read the lines containing the cell vectors
-            a_line = parser.fIn.readline()
-            b_line = parser.fIn.readline()
-            c_line = parser.fIn.readline()
-
-            # Define the regex that extracts the components and apply it to the lines
-            regex_string = r" CELL\| Vector \w \[angstrom\]:\s+({0})\s+({0})\s+({0})".format(self.regex_f)
-            regex_compiled = re.compile(regex_string)
-            a_result = regex_compiled.match(a_line)
-            b_result = regex_compiled.match(b_line)
-            c_result = regex_compiled.match(c_line)
-
-            # Convert the string results into a 3x3 numpy array
-            cell = np.zeros((3, 3))
-            cell[0, :] = [float(x) for x in a_result.groups()]
-            cell[1, :] = [float(x) for x in b_result.groups()]
-            cell[2, :] = [float(x) for x in c_result.groups()]
-
-            # Push the results to the correct section
-            parser.backend.addArrayValues("simulation_cell", cell, unit="angstrom")
-
-        return wrapper
-
-    def adHoc_cp2k_section_quickstep_atom_information(self):
-        """Used to extract the initial atomic coordinates and names in the
-        Quickstep module.
-        """
-        def wrapper(parser):
-
-            # Define the regex that extracts the information
-            regex_string = r"\s+\d+\s+\d+\s+(\w+)\s+\d+\s+({0})\s+({0})\s+({0})".format(self.regex_f)
-            regex_compiled = re.compile(regex_string)
-
-            match = True
-            coordinates = []
-            labels = []
-
-            # Currently these three lines are not processed
-            parser.fIn.readline()
-            parser.fIn.readline()
-            parser.fIn.readline()
-
-            while match:
-                line = parser.fIn.readline()
-                result = regex_compiled.match(line)
-
-                if result:
-                    match = True
-                    label = result.groups()[0]
-                    labels.append(label)
-                    coordinate = [float(x) for x in result.groups()[1:]]
-                    coordinates.append(coordinate)
-                else:
-                    match = False
-            coordinates = np.array(coordinates)
-            labels = np.array(labels)
-
-            # If anything found, push the results to the correct section
-            if len(coordinates) != 0:
-                parser.backend.addArrayValues("atom_position", coordinates, unit="angstrom")
-                parser.backend.addArrayValues("atom_label", labels)
-
-        return wrapper
-
-    def adHoc_atom_forces(self):
-        """Used to extract the final atomic forces printed at the end of an
-        ENERGY_FORCE calculation is the PRINT setting is on.
-        """
-        def wrapper(parser):
-
-            end_str = " SUM OF ATOMIC FORCES"
-            end = False
-            force_array = []
-
-            # Loop through coordinates until the sum of forces is read
-            while not end:
-                line = parser.fIn.readline()
-                if line.startswith(end_str):
-                    end = True
-                else:
-                    forces = line.split()[-3:]
-                    forces = [float(x) for x in forces]
-                    force_array.append(forces)
-            force_array = np.array(force_array)
-
-            # If anything found, push the results to the correct section
-            if len(force_array) != 0:
-                parser.backend.addArrayValues("atom_forces", force_array, unit="forceAu")
-
-        return wrapper
diff --git a/parser/parser-cp2k/cp2kparser/parsing/versions/versionsetup.py b/parser/parser-cp2k/cp2kparser/parsing/versions/versionsetup.py
deleted file mode 100644
index 8b8fd01..0000000
--- a/parser/parser-cp2k/cp2kparser/parsing/versions/versionsetup.py
+++ /dev/null
@@ -1,21 +0,0 @@
-
-"""Returns the implementation classes based on the given version identifier.
-The different version are grouped into subpackages.
-"""
-import importlib
-import logging
-logger = logging.getLogger(__name__)
-
-
-def get_main_parser(version_id):
-
-    # Currently the version id is a pure integer, so it can directly be mapped
-    # into a package name.
-    base = "cp2kparser.parsing.versions.cp2k{}.".format(version_id)
-    try:
-        main_parser = importlib.import_module(base + "mainparser").CP2KMainParser
-    except ImportError:
-        logger.debug("A parser with the version id '{}' could not be found. Defaulting to the base implementation based on CP2K 2.6.2.".format(version_id))
-        base = "cp2kparser.parsing.versions.cp2k262."
-        main_parser = importlib.import_module(base + "mainparser").CP2KMainParser
-    return main_parser
diff --git a/parser/parser-cp2k/cp2kparser/utils/__init__.py b/parser/parser-cp2k/cp2kparser/utils/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/parser/parser-cp2k/cp2kparser/utils/baseclasses.py b/parser/parser-cp2k/cp2kparser/utils/baseclasses.py
deleted file mode 100644
index 3cee84d..0000000
--- a/parser/parser-cp2k/cp2kparser/utils/baseclasses.py
+++ /dev/null
@@ -1,511 +0,0 @@
-"""
-This module contains the base classes that help in building parsers for the
-NoMaD project.
-"""
-
-import os
-import logging
-from abc import ABCMeta, abstractmethod
-from nomadcore.unit_conversion import unit_conversion
-from nomadcore.simple_parser import AncillaryParser, mainFunction
-from nomadcore.local_backend import LocalBackend
-from nomadcore.local_meta_info import load_metainfo
-from nomadcore.caching_backend import CachingLevel
-logger = logging.getLogger(__name__)
-
-
-#===============================================================================
-class ParserInterface(object):
-    """This class provides the interface parsing. The end-user will typically
-    only interact with this class. All the input is given to this class (or
-    typically a subclass) and the parsing is done by calling the parse()
-    method. The parsing output is determined by the backend object that is
-    given in the constructor as a dependency.
-
-    Attributes:
-        main_parser: Object that actually does the parsing and is
-            setup by this class based on the given contents.
-        parser_context: A wrapper class for all the parser related information.
-            This is contructed here and then passed onto the different
-            subparsers.
-    """
-    __metaclass__ = ABCMeta
-
-    def __init__(self, main_file, metainfo_to_keep=None, backend=None, default_units=None, metainfo_units=None):
-        """
-    Args:
-        main_file: A special file that can be considered the main file of the
-            calculation.
-        metainfo_to_keep: A list of metainfo names. This list is used to
-            optimize the parsing process as optimally only the information
-            relevant to these metainfos will be parsed.
-        backend: An object to which the parser will give all the parsed data.
-            The backend will then determine where and when to output that data.
-        """
-        self.initialize(main_file, metainfo_to_keep, backend, default_units, metainfo_units)
-
-    def initialize(self, main_file, metainfo_to_keep, backend, default_units, metainfo_units):
-        """Initialize the parser with the given environment.
-        """
-        self.parser_context = ParserContext()
-        self.parser_context.metainfo_to_keep = metainfo_to_keep
-        self.parser_context.main_file = main_file
-        self.parser_context.file_storage = FileStorage()
-        self.parser_context.parser_info = self.get_parser_info()
-        self.main_parser = None
-
-        # Check that the main file exists
-        if not os.path.isfile(main_file):
-            logger.error("Couldn't find the main file {}. Check that the path is valid and the file exists on this path.".format(main_file))
-
-        # Load metainfo environment
-        metainfo_env, warn = load_metainfo(self.get_metainfo_filename())
-        self.parser_context.metainfo_env = metainfo_env
-
-        # Initialize the backend. Use local backend if none given
-        if backend is not None:
-            self.parser_context.backend = backend(metainfo_env)
-        else:
-            self.parser_context.backend = LocalBackend(metainfo_env)
-
-        # Check the list of default units
-        default_unit_map = {}
-        if default_units is not None:
-            for unit in default_units:
-                dimension = unit_conversion.ureg(unit).dimensionality
-                old_value = default_unit_map.get(str(dimension))
-                if old_value is not None:
-                    raise LookupError("You can only specify one default value per dimension in the 'default_units' list. There are two different units given for the dimension '{}'".format(dimension))
-                default_unit_map[str(dimension)] = unit
-
-        # Check the list of metainfo units
-        if metainfo_units is not None:
-            for metaname, unit in metainfo_units.iteritems():
-
-                # Check that the unit is OK
-                unit_conversion.ureg(unit)
-
-                # Check that the metaname is OK
-                meta = metainfo_env.infoKinds.get(metaname)
-                if meta is None:
-                    raise KeyError("The metainfo name '{}' could not be found. Check for typos or try updating the metainfo repository.".format(metaname))
-
-        # Save the default units
-        self.parser_context.default_units = default_unit_map
-        self.parser_context.metainfo_units = metainfo_units
-
-    @abstractmethod
-    def setup_version(self):
-        """Deduce the version of the software that was used and setup a correct
-        main parser. The main parser should subclass MainParser and be stored
-        to the 'main_parser' attribute of this class. You can give the
-        'parser_context' wrapper object in the main parser constructor to pass
-        all the relevant data for it.
-        """
-        pass
-
-    @abstractmethod
-    def get_metainfo_filename(self):
-        """This function should return the name of the metainfo file that is
-        specific for this parser. When the parser is started, the metainfo
-        environment is loaded from this file that is located within a separate
-        repository (nomad-meta-info).
-
-        Returns:
-            A string containing the metainfo filename for this parser.
-        """
-        return None
-
-    @abstractmethod
-    def get_parser_info(self):
-        """This function should return a dictionary containing the parser info.
-        This info is printed to the JSON backend. it should be of the form:
-
-            {'name': 'softwarename-parser', 'version': '1.0'}
-
-        Returns:
-            A dictionary containing information about this parser.
-        """
-        return None
-
-    def parse(self):
-        """Starts the actual parsing process, and outputs the results to the
-        backend specified in the constructor.
-        """
-        self.setup_version()
-        if not self.main_parser:
-            logger.error("The main parser has not been set up.")
-
-        self.main_parser.parse()
-
-        # If using a local backend, the results will have been saved to a
-        # separate results dictionary which should be returned.
-        try:
-            return self.parser_context.backend.results
-        except AttributeError:
-            return None
-
-
-#===============================================================================
-class FileStorage(object):
-    """Used to map file paths to certain ID's. This helps in setting up the
-    Secondary parsers as you can associate file paths to simpler ID's that are
-    easier to use.
-
-    Attributes:
-        _file_handles: A "private" dictionary containing the cached file handles
-        _file_contents: A "private" dictionary containing the cached file contents
-        _file_sizes: A "private" dictionary containing the cached file sizes
-        file_ids: A dictionary containing the mapping between file ids and filepaths
-    """
-    def __init__(self):
-        self._file_handles = {}
-        self._file_contents = {}
-        self._file_sizes = {}
-        self.file_ids = {}
-
-    def setup_file_id(self, path, file_id):
-        """Used to map a simple identifier string to a file path. When a file
-        id has been setup, you can easily access the file by using the
-        functions get_file_handle() or get_file_contents()
-        """
-        old = self.file_ids.get(file_id)
-        if old is not None:
-            raise LookupError("The path '{}' is already associated with id '{}'".format(old, file_id))
-        self.file_ids[file_id] = path
-
-    def add_file_id(self, path, file_id):
-        value = self.file_ids.get(file_id)
-        if value:
-            if isinstance(value, list):
-                value.append(path)
-            else:
-                raise LookupError("You have already setup an unique file_path '{}' to this id.".format(value))
-        else:
-            pathlist = []
-            pathlist.append(path)
-            self.file_ids[file_id] = pathlist
-
-    def get_filepath_by_id(self, file_id, show_warning=True):
-        """Get the file paths that were registered with the given id.
-        """
-        value = self.file_ids.get(file_id)
-        if value:
-            if isinstance(value, list):
-                n = len(value)
-                if n == 0:
-                    if show_warning:
-                        logger.warning("No files set with id '{}'".format(file_id))
-                    return None
-                else:
-                    if show_warning:
-                        logger.debug("Multiple files set with id '{}'".format(file_id))
-                    return value
-            else:
-                return value
-        else:
-            if show_warning:
-                logger.warning("No files set with id '{}'".format(file_id))
-
-    def get_file_handle(self, file_id, show_warning=True):
-        """Get the handle for a single file with the given id. Uses cached result
-        if available. Always seeks to beginning of file before returning it.
-        """
-        # Get the filepath(s)
-        path = self.get_filepath_by_id(file_id, show_warning)
-        if not path:
-            if show_warning:
-                logger.warning("No filepaths registered to id '{}'. Register id's with setup_file_id().".format(file_id))
-            return
-
-        if isinstance(path, list):
-            if len(path) == 0:
-                return
-            elif len(path) != 1:
-                logger.error("Multiple filepaths found with id '{}'. Use get_file_handles() instead if you expect to have multiple files.".format(file_id))
-                return
-            else:
-                path = path[0]
-
-        # Search for filehandles, if not present create one
-        handle = self._file_handles.get(path)
-        if not handle:
-            try:
-                handle = open(path, "r")
-            except (OSError, IOError):
-                logger.error("Could not open file: '{}'".format(path))
-            else:
-                self._file_handles[file_id] = handle
-        handle.seek(0, os.SEEK_SET)
-        return handle
-
-    def get_file_handles(self, file_id, show_warning=True):
-        """Get the handles for multiple files with the given id. Uses cached result
-        if available. Always seeks to beginning of files before returning them.
-        """
-        # Get the filepath(s)
-        paths = self.get_filepath_by_id(file_id, show_warning)
-        if not paths:
-            return
-        if not isinstance(paths, list):
-            paths = [paths]
-
-        # Search for filehandles, if not present create one
-        handles = []
-        for path in paths:
-            handle = self._file_handles.get(path)
-            if not handle:
-                try:
-                    handle = open(path, "r")
-                except (OSError, IOError):
-                    logger.error("Could not open file: '{}'".format(path))
-                else:
-                    self._file_handles[file_id] = handle
-            handle.seek(0, os.SEEK_SET)
-            handles.append(handle)
-
-        # Return handles
-        if len(handles) == 0:
-            return None
-        else:
-            return handles
-
-    def get_file_contents(self, file_id):
-        """Get the contents for the file with the given id. Uses cached result
-        if available. Does not cache files that are bigger than a certain
-        limit.
-        """
-        cache_limit = 10000
-        contents = self._file_contents.get(file_id)
-        if not contents:
-            fh = self.get_file_handle(file_id)
-            fh.seek(0)
-            contents = fh.read()
-            if self.get_file_size(file_id) <= cache_limit:
-                self._file_contents[file_id] = contents
-        return contents
-
-    def get_file_size(self, file_id):
-        """Get the size of a file with the given id. Uses cached result
-        if available.
-        """
-        size = self._file_sizes.get(file_id)
-        if not size:
-            fh = self.get_file_handle(file_id)
-            fh.seek(0, os.SEEK_END)
-            size = fh.tell()
-            self._file_sizes[file_id] = size
-        return size
-
-
-#===============================================================================
-class HierarchicalParser(object):
-    """A base class for all parsers that do parsing based on the SimpleMatcher
-    hierarchy.
-
-    Attributes:
-        root_matcher: The root of this parsers SimpleMatcher tree.
-    """
-    def __init__(self, file_path):
-        self.file_path = file_path
-        self.root_matcher = None
-        self.caching_level_for_metaname = {}
-        self.default_data_caching_level = CachingLevel.ForwardAndCache
-        self.default_section_caching_level = CachingLevel.Forward
-        self.onClose = {}
-        self.simple_parser = None
-
-
-#===============================================================================
-class SecondaryParser(HierarchicalParser):
-    """A base class for ancillary file parsers. Instantiated and run by a
-    MainParser.
-
-    Attributes:
-        ancillary_parser: An nomadcore.simple_parser.AncillaParser object
-    """
-    def __init__(self, file_path, simple_parser):
-        """
-        Args:
-            file_path: The path of the file to parse. Can be absolute or relative path.
-            simple_parser: The SimpleParser object that is does the actual
-                parsing. Shared with ther SecondaryParsers and the MainParser.
-        """
-        super(SecondaryParser, self).__init__(file_path)
-        self.simple_parser = simple_parser
-        self.ancillary_parser = None
-
-    def parse(self):
-        """Parser the given ancillary file in place.
-        """
-        self.ancillary_parser = AncillaryParser(self.root_matcher, self.simple_parser, self.caching_levels, self)
-
-        # Try opening the given file
-        try:
-            with open(self.file_path) as fIn:
-                self.ancillary_parser.parseFile(fIn)
-        except IOError:
-            dir_name, file_name = os.path.split(os.path.abspath(self.file_path))
-            logger.warning("Could not find file '{}' in directory '{}'. No data will be parsed from this file".format(dir_name, file_name))
-
-
-#===============================================================================
-class MainParser(HierarchicalParser):
-    """Base class for main parsers. Will call AncillaryParsers to parse additional
-    files. Typically this main parser is also tied to a file ("main file").
-
-    A subclass of ParserImplementation will initialize only one MainParser.
-
-    Attributes:
-        file_path: Path to the main file.
-    """
-
-    def __init__(self, file_path, parser_context):
-        """
-        Args:
-            files: A list of filenames that are parsed and analyzed by this
-                object.
-            parser_context: The parsing context that contains e.g. the backend.
-        """
-        super(MainParser, self).__init__(file_path)
-        if parser_context:
-            self.parser_context = parser_context
-            self.backend = parser_context.backend
-            self.metainfo_to_keep = parser_context.metainfo_to_keep
-            self.version_id = parser_context.version_id
-        self.caching_backend = None
-
-    def parse(self):
-        """Starts the parsing. By default uses the SimpleParser scheme, if you
-        want to use something else or customize the process just override this
-        method.
-        """
-        mainFunction(
-                mainFileDescription=self.root_matcher,
-                metaInfoEnv=self.parser_context.metainfo_env,
-                parserInfo=self.parser_context.parser_info,
-                outF=self.parser_context.backend.fileOut,
-                cachingLevelForMetaName=self.caching_level_for_metaname,
-                superContext=self,
-                onClose={},
-                default_units=self.parser_context.default_units,
-                metainfo_units=self.parser_context.metainfo_units,
-                superBackend=self.parser_context.backend,
-                mainFile=self.parser_context.main_file)
-
-    def get_metainfos(self):
-        """Get a list of all the metainfo names that are parsed by this
-        FileParser. This information is used by the ParserImplementation to
-        optimize the parsing process according to the given 'metainfo_to_keep'
-        list.
-        """
-        return self.root_matcher.allMetaNames()
-
-    def startedParsing(self, fInName, parser):
-        """Function is called when the parsing starts.
-
-        Get compiled parser.
-        Later one can compile a parser for parsing an external file.
-        """
-        self.simple_parser = parser
-
-
-#===============================================================================
-class ParserContext(object):
-    """A container class for storing and moving information about the parsing
-    environment. A single ParserContext object is initialized by the Parser
-    class, or it's subclass.
-    """
-    def __init__(self, main_file=None, metainfo_to_keep=None, backend=None, version_id=None, default_units=None, metainfo_units=None, file_storage=None, metainfo_env=None, parser_info=None):
-        self.main_file = main_file
-        self.version_id = version_id
-        self.metainfo_to_keep = metainfo_to_keep
-        self.backend = backend
-        self.default_units = default_units
-        self.metainfo_units = metainfo_units
-        self.file_storage = file_storage
-        self.metainfo_env = metainfo_env
-        self.parser_info = parser_info
-
-
-#===============================================================================
-# class ParserImplementation(object):
-    # """The base class for a version specific parser implementation in. Provides
-    # some useful tools for setting up file access.
-
-    # Attributes:
-        # parser_context: ParserContext object
-        # file_storage: FileStorage object
-        # main_parser: MainParser object
-    # """
-    # def __init__(self, parser_context):
-
-        # self.parser_context = parser_context
-        # self.file_storage = FileStorage()
-        # self.main_parser = None
-
-        # # Copy all the attributes from the ParserContext object for quick access
-        # attributes = dir(parser_context)
-        # for attribute in attributes:
-            # if not attribute.startswith("__"):
-                # setattr(self, attribute, getattr(parser_context, attribute))
-
-        # # self.file_parsers = []
-
-    # # def setup_given_file_ids(self):
-        # # """Saves the file id's that were given in the JSON input.
-        # # """
-        # # for path, file_id in self.files.iteritems():
-            # # if file_id:
-                # # self.file_storage.setup_file_id(path, file_id)
-
-    # def parse(self):
-        # """Start the parsing. Will try to parse everything unless given special
-        # rules (metaInfoToKeep)."""
-        # self.main_parser.parse()
-        # for file_parser in self.file_parsers:
-            # file_parser.parse()
-
-
-
-        # Initialize the parser builder
-        # default_units = self.parser_context.default_units
-        # metainfo_units = self.parser_context.metainfo_units
-        # parserBuilder = SimpleParserBuilder(self.root_matcher, self.backend.metaInfoEnv(), self.metainfo_to_keep, default_units=default_units, metainfo_units=metainfo_units)
-
-        # # Verify the metainfo
-        # if not parserBuilder.verifyMetaInfo(sys.stderr):
-            # sys.exit(1)
-
-        # # Gather onClose functions from supercontext
-        # onClose = dict(self.onClose)
-        # for attr, callback in extractOnCloseTriggers(self).items():
-            # oldCallbacks = onClose.get(attr, None)
-            # if oldCallbacks:
-                # oldCallbacks.append(callback)
-            # else:
-                # onClose[attr] = [callback]
-
-        # # Setup the backend that caches ond handles triggers
-        # self.caching_backend = ActiveBackend.activeBackend(
-            # metaInfoEnv=self.backend.metaInfoEnv(),
-            # cachingLevelForMetaName=self.caching_level_for_metaname,
-            # defaultDataCachingLevel=self.default_data_caching_level,
-            # defaultSectionCachingLevel=self.default_section_caching_level,
-            # onClose=onClose,
-            # superBackend=self.backend,
-            # default_units=default_units,
-            # metainfo_units=metainfo_units)
-
-        # # Compile the SimpleMatcher tree
-        # parserBuilder.compile()
-
-        # self.backend.fileOut.write("[")
-        # uri = "file://" + self.file_path
-        # parserInfo = {'name': 'cp2k-parser', 'version': '1.0'}
-        # self.caching_backend.startedParsingSession(uri, parserInfo)
-        # with open(self.file_path, "r") as fIn:
-            # parser = parserBuilder.buildParser(PushbackLineFile(fIn), self.caching_backend, superContext=self)
-            # parser.parse()
-        # self.caching_backend.finishedParsingSession("ParseSuccess", None)
-        # self.backend.fileOut.write("]\n")
diff --git a/parser/parser-cp2k/cp2kparser/utils/logconfig.py b/parser/parser-cp2k/cp2kparser/utils/logconfig.py
deleted file mode 100644
index efa805e..0000000
--- a/parser/parser-cp2k/cp2kparser/utils/logconfig.py
+++ /dev/null
@@ -1,99 +0,0 @@
-"""
-This module is used to control the logging of the parser.
-
-Each module in the package can have it's own logger, so that you can control
-the logging on a modular level easily.
-
-If you want to use a logger on a module simply add the following in the module
-preamble:
-    import logging
-    logger = logging.getLogger(__name__)
-
-This creates a logger with a hierarchical name. The hierarchical name allows
-the logger to inherit logger properties from a parent logger, but also allows
-module level control for logging.
-
-A custom formatting is also used for the log messages. The formatting is done
-by the LogFormatter class and is different for different levels.
-"""
-import logging
-import textwrap
-
-
-#===============================================================================
-class LogFormatter(logging.Formatter):
-
-    def format(self, record):
-        level = record.levelname
-        module = record.module
-        message = record.msg
-
-        if level == "INFO" or level == "DEBUG":
-            return make_titled_message("{}:{}".format(level, module), message)
-        else:
-            return "\n        " + make_title(level, width=64) + "\n" + make_message(message, width=64, spaces=8) + "\n"
-
-
-#===============================================================================
-def make_titled_message(title, message, width=80):
-    """Styles a message to be printed into console.
-    """
-    wrapper = textwrap.TextWrapper(width=width-5)
-    lines = wrapper.wrap(message)
-    styled_message = ""
-    first = True
-    for line in lines:
-        if first:
-            new_line = "  >> {}: ".format(title) + line
-            styled_message += new_line
-            first = False
-        else:
-            new_line = 5*" " + line
-            styled_message += "\n" + new_line
-
-    return styled_message
-
-
-#===============================================================================
-def make_message(message, width=80, spaces=0):
-    """Styles a message to be printed into console.
-    """
-    wrapper = textwrap.TextWrapper(width=width-6)
-    lines = wrapper.wrap(message)
-    styled_message = ""
-    first = True
-    for line in lines:
-        new_line = spaces*" " + "|  " + line + (width-6-len(line))*" " + "  |"
-        if first:
-            styled_message += new_line
-            first = False
-        else:
-            styled_message += "\n" + new_line
-    styled_message += "\n" + spaces*" " + "|" + (width-2)*"-" + "|"
-    return styled_message
-
-
-#===============================================================================
-def make_title(title, width=80):
-    """Styles a title to be printed into console.
-    """
-    space = width-len(title)-4
-    pre_space = space/2-1
-    post_space = space-pre_space
-    line = "|" + str((pre_space)*"=") + " "
-    line += title
-    line += " " + str((post_space)*"=") + "|"
-    return line
-
-
-#===============================================================================
-# The highest level logger setup
-root_logger = logging.getLogger("cp2kparser")
-root_logger.setLevel(logging.INFO)
-
-# Create console handler and set level to debug
-root_console_handler = logging.StreamHandler()
-root_console_handler.setLevel(logging.DEBUG)
-root_console_formatter = LogFormatter()
-root_console_handler.setFormatter(root_console_formatter)
-root_logger.addHandler(root_console_handler)
diff --git a/parser/parser-cp2k/cp2kparser/utils/testing.py b/parser/parser-cp2k/cp2kparser/utils/testing.py
deleted file mode 100644
index cd35e8a..0000000
--- a/parser/parser-cp2k/cp2kparser/utils/testing.py
+++ /dev/null
@@ -1,66 +0,0 @@
-"""
-Tools for testing a nomad parser.
-"""
-
-import os
-import sys
-import json
-import numpy as np
-
-
-#===============================================================================
-def get_parser(path, metainfopath, parserbuilderclass, metainfo_to_keep=[], metainfo_to_skip=[], stream=sys.stdout):
-    """Initialize a parser that is able to parse the contents in the given path.
-
-    Args:
-        path: String pointing to a path where all the calculation files are
-        stream: The stream where the results are dumped.
-        metainfopath: The metainfo filepath as a Get string
-        parserbuilder: An object that inherits the ParserBuilder class and can
-        create optimized parsers.
-    """
-    # Scan the given path for all files
-    files = {}
-    for filename in os.listdir(path):
-        files[os.path.join(path, filename)] = ""
-
-    json_input = {
-        "version": "nomadparsein.json 1.0",
-        "metaInfoFile": metainfopath,
-        "metainfoToKeep": metainfo_to_keep,
-        "metainfoToSkip": metainfo_to_skip,
-        "files": files
-    }
-    parser = parserbuilderclass(json.dumps(json_input), stream=stream).build_parser()
-    return parser
-
-
-#===============================================================================
-def get_metainfo(metaname, json_list):
-    """After the parsing has been done by a parser, you can pass the resulting
-    json list along with a metaname and the result will be returned to you.
-
-    Args:
-        metaname: String identifying a metainfo
-        json_list: A json list object (see the python json package)
-    """
-
-    # Search for the metainfo
-    # print json.dumps(json_list, sort_keys=True, indent=4, separators=(',', ': '))
-    event_list = json_list[0]["events"]
-    for event in event_list:
-        name = event.get("metaName")
-        if name and name == metaname:
-
-            # Return value if present
-            values = event.get("value")
-            if values:
-                yield values
-
-            # Return reshaped flatvalues if present
-            flat_values = event.get("flatValues")
-            shape = event.get("valuesShape")
-
-            if flat_values and shape:
-                shaped_values = np.reshape(flat_values, shape)
-                yield shaped_values
diff --git a/src/main/scala/eu/nomad_lab/parsers/Cp2kParser.scala b/src/main/scala/eu/nomad_lab/parsers/Cp2kParser.scala
index 49086b4..87a6235 100644
--- a/src/main/scala/eu/nomad_lab/parsers/Cp2kParser.scala
+++ b/src/main/scala/eu/nomad_lab/parsers/Cp2kParser.scala
@@ -33,19 +33,18 @@ object Cp2kParser extends SimpleExternalParserGenerator(
     "${mainFilePath}"),
   cmdCwd = "${mainFilePath}/..",
   resList = Seq(
-    "parser-cp2k/setup.py",
-    "parser-cp2k/cp2kparser/setup_paths.py",
     "parser-cp2k/cp2kparser/__init__.py",
-    "parser-cp2k/cp2kparser/utils/__init__.py",
-    "parser-cp2k/cp2kparser/utils/logconfig.py",
-    "parser-cp2k/cp2kparser/utils/testing.py",
-    "parser-cp2k/cp2kparser/utils/baseclasses.py",
-    "parser-cp2k/cp2kparser/parsing/__init__.py",
-    "parser-cp2k/cp2kparser/parsing/versions/cp2k262/__init__.py",
-    "parser-cp2k/cp2kparser/parsing/versions/cp2k262/mainparser.py",
-    "parser-cp2k/cp2kparser/parsing/versions/__init__.py",
-    "parser-cp2k/cp2kparser/parsing/versions/versionsetup.py",
-    "parser-cp2k/cp2kparser/parsing/parser.py",
+    "parser-cp2k/cp2kparser/setup_paths.py",
+    "parser-cp2k/cp2kparser/parser.py",
+    "parser-cp2k/cp2kparser/generic/__init__.py",
+    "parser-cp2k/cp2kparser/generic/baseclasses.py",
+    "parser-cp2k/cp2kparser/generic/inputparsing.py",
+    "parser-cp2k/cp2kparser/versions/__init__.py",
+    "parser-cp2k/cp2kparser/versions/versionsetup.py",
+    "parser-cp2k/cp2kparser/versions/cp2k262/__init__.py",
+    "parser-cp2k/cp2kparser/versions/cp2k262/mainparser.py",
+    "parser-cp2k/cp2kparser/versions/cp2k262/inputparser.py",
+    "parser-cp2k/cp2kparser/versions/cp2k262/input_data/cp2k_input_tree.pickle",
     "parser-cp2k/cp2kparser/scalainterface.py",
     "nomad_meta_info/public.nomadmetainfo.json",
     "nomad_meta_info/common.nomadmetainfo.json",
diff --git a/test/unittests/cp2k_2.6.2/XC_functional/becke88/unittest.out b/test/unittests/cp2k_2.6.2/XC_functional/becke88/unittest.out
deleted file mode 100644
index 5dcf8e7..0000000
--- a/test/unittests/cp2k_2.6.2/XC_functional/becke88/unittest.out
+++ /dev/null
@@ -1,1434 +0,0 @@
- DBCSR| Multiplication driver                                                SMM
- DBCSR| Multrec recursion limit                                              512
- DBCSR| Multiplication stack size                                           1000
- DBCSR| Multiplication size stacks                                             3
- DBCSR| Use subcommunicators                                                   T
- DBCSR| Use MPI combined types                                                 F
- DBCSR| Use MPI memory allocation                                              T
- DBCSR| Use Communication thread                                               T
- DBCSR| Communication thread load                                             87
-
-
-  **** **** ******  **  PROGRAM STARTED AT               2016-04-19 13:05:36.986
- ***** ** ***  *** **   PROGRAM STARTED ON                   lauri-Lenovo-Z50-70
- **    ****   ******    PROGRAM STARTED BY                                 lauri
- ***** **    ** ** **   PROGRAM PROCESS ID                                 10424
-  **** **  *******  **  PROGRAM STARTED IN /home/lauri/Dropbox/nomad-dev/nomad-l
-                                           ab-base/parsers/cp2k/test/unittests/c
-                                           p2k_2.6.2/XC_functional/becke88
-
- CP2K| version string:                                        CP2K version 2.6.2
- CP2K| source code revision number:                                    svn:15893
- CP2K| is freely available from                             http://www.cp2k.org/
- CP2K| Program compiled at                           ke 4.11.2015 08.48.42 +0200
- CP2K| Program compiled on                                   lauri-Lenovo-Z50-70
- CP2K| Program compiled for                          Linux-x86-64-gfortran_basic
- CP2K| Input file name                                               becke88.inp
-
- GLOBAL| Force Environment number                                              1
- GLOBAL| Basis set file name                                     ../../BASIS_SET
- GLOBAL| Geminal file name                                         BASIS_GEMINAL
- GLOBAL| Potential file name                                ../../GTH_POTENTIALS
- GLOBAL| MM Potential file name                                     MM_POTENTIAL
- GLOBAL| Coordinate file name                                      __STD_INPUT__
- GLOBAL| Method name                                                        CP2K
- GLOBAL| Project name                                                    si_bulk
- GLOBAL| Preferred FFT library                                             FFTW3
- GLOBAL| Preferred diagonalization lib.                                       SL
- GLOBAL| Run type                                                   ENERGY_FORCE
- GLOBAL| All-to-all communication in single precision                          F
- GLOBAL| FFTs using library dependent lengths                                  F
- GLOBAL| Global print level                                               MEDIUM
- GLOBAL| Total number of message passing processes                             1
- GLOBAL| Number of threads for this process                                    1
- GLOBAL| This output is from process                                           0
-
- MEMORY| system memory details [Kb]
- MEMORY|                        rank 0           min           max       average
- MEMORY| MemTotal              8070380       8070380       8070380       8070380
- MEMORY| MemFree               3137636       3137636       3137636       3137636
- MEMORY| Buffers                879396        879396        879396        879396
- MEMORY| Cached                1938604       1938604       1938604       1938604
- MEMORY| Slab                   465048        465048        465048        465048
- MEMORY| SReclaimable           424656        424656        424656        424656
- MEMORY| MemLikelyFree         6380292       6380292       6380292       6380292
-
-
- *** Fundamental physical constants (SI units) ***
-
- *** Literature: B. J. Mohr and B. N. Taylor,
- ***             CODATA recommended values of the fundamental physical
- ***             constants: 2006, Web Version 5.1
- ***             http://physics.nist.gov/constants
-
- Speed of light in vacuum [m/s]                             2.99792458000000E+08
- Magnetic constant or permeability of vacuum [N/A**2]       1.25663706143592E-06
- Electric constant or permittivity of vacuum [F/m]          8.85418781762039E-12
- Planck constant (h) [J*s]                                  6.62606896000000E-34
- Planck constant (h-bar) [J*s]                              1.05457162825177E-34
- Elementary charge [C]                                      1.60217648700000E-19
- Electron mass [kg]                                         9.10938215000000E-31
- Electron g factor [ ]                                     -2.00231930436220E+00
- Proton mass [kg]                                           1.67262163700000E-27
- Fine-structure constant                                    7.29735253760000E-03
- Rydberg constant [1/m]                                     1.09737315685270E+07
- Avogadro constant [1/mol]                                  6.02214179000000E+23
- Boltzmann constant [J/K]                                   1.38065040000000E-23
- Atomic mass unit [kg]                                      1.66053878200000E-27
- Bohr radius [m]                                            5.29177208590000E-11
-
- *** Conversion factors ***
-
- [u] -> [a.u.]                                              1.82288848426455E+03
- [Angstrom] -> [Bohr] = [a.u.]                              1.88972613288564E+00
- [a.u.] = [Bohr] -> [Angstrom]                              5.29177208590000E-01
- [a.u.] -> [s]                                              2.41888432650478E-17
- [a.u.] -> [fs]                                             2.41888432650478E-02
- [a.u.] -> [J]                                              4.35974393937059E-18
- [a.u.] -> [N]                                              8.23872205491840E-08
- [a.u.] -> [K]                                              3.15774647902944E+05
- [a.u.] -> [kJ/mol]                                         2.62549961709828E+03
- [a.u.] -> [kcal/mol]                                       6.27509468713739E+02
- [a.u.] -> [Pa]                                             2.94210107994716E+13
- [a.u.] -> [bar]                                            2.94210107994716E+08
- [a.u.] -> [atm]                                            2.90362800883016E+08
- [a.u.] -> [eV]                                             2.72113838565563E+01
- [a.u.] -> [Hz]                                             6.57968392072181E+15
- [a.u.] -> [1/cm] (wave numbers)                            2.19474631370540E+05
- [a.u./Bohr**2] -> [1/cm]                                   5.14048714338585E+03
- 
-
- CELL_TOP| Volume [angstrom^3]:                                          160.165
- CELL_TOP| Vector a [angstrom     5.431     0.000     0.000    |a| =       5.431
- CELL_TOP| Vector b [angstrom     0.000     5.431     0.000    |b| =       5.431
- CELL_TOP| Vector c [angstrom     0.000     0.000     5.431    |c| =       5.431
- CELL_TOP| Angle (b,c), alpha [degree]:                                   90.000
- CELL_TOP| Angle (a,c), beta  [degree]:                                   90.000
- CELL_TOP| Angle (a,b), gamma [degree]:                                   90.000
- CELL_TOP| Numerically orthorhombic:                                         YES
-
- GENERATE|  Preliminary Number of Bonds generated:                             0
- GENERATE|  Achieved consistency in connectivity generation.
-
- CELL| Volume [angstrom^3]:                                              160.165
- CELL| Vector a [angstrom]:       5.431     0.000     0.000    |a| =       5.431
- CELL| Vector b [angstrom]:       0.000     5.431     0.000    |b| =       5.431
- CELL| Vector c [angstrom]:       0.000     0.000     5.431    |c| =       5.431
- CELL| Angle (b,c), alpha [degree]:                                       90.000
- CELL| Angle (a,c), beta  [degree]:                                       90.000
- CELL| Angle (a,b), gamma [degree]:                                       90.000
- CELL| Numerically orthorhombic:                                             YES
-
- CELL_REF| Volume [angstrom^3]:                                          160.165
- CELL_REF| Vector a [angstrom     5.431     0.000     0.000    |a| =       5.431
- CELL_REF| Vector b [angstrom     0.000     5.431     0.000    |b| =       5.431
- CELL_REF| Vector c [angstrom     0.000     0.000     5.431    |c| =       5.431
- CELL_REF| Angle (b,c), alpha [degree]:                                   90.000
- CELL_REF| Angle (a,c), beta  [degree]:                                   90.000
- CELL_REF| Angle (a,b), gamma [degree]:                                   90.000
- CELL_REF| Numerically orthorhombic:                                         YES
-
- *******************************************************************************
- *******************************************************************************
- **                                                                           **
- **     #####                         ##              ##                      **
- **    ##   ##            ##          ##              ##                      **
- **   ##     ##                       ##            ######                    **
- **   ##     ##  ##   ##  ##   #####  ##  ##   ####   ##    #####    #####    **
- **   ##     ##  ##   ##  ##  ##      ## ##   ##      ##   ##   ##  ##   ##   **
- **   ##  ## ##  ##   ##  ##  ##      ####     ###    ##   ######   ######    **
- **    ##  ###   ##   ##  ##  ##      ## ##      ##   ##   ##       ##        **
- **     #######   #####   ##   #####  ##  ##  ####    ##    #####   ##        **
- **           ##                                                    ##        **
- **                                                                           **
- **                                                ... make the atoms dance   **
- **                                                                           **
- **            Copyright (C) by CP2K Developers Group (2000 - 2014)           **
- **                                                                           **
- *******************************************************************************
-
- DFT| Spin restricted Kohn-Sham (RKS) calculation                            RKS
- DFT| Multiplicity                                                             1
- DFT| Number of spin states                                                    1
- DFT| Charge                                                                   0
- DFT| Self-interaction correction (SIC)                                       NO
- DFT| Cutoffs: density                                              1.000000E-10
- DFT|          gradient                                             1.000000E-10
- DFT|          tau                                                  1.000000E-10
- DFT|          cutoff_smoothing_range                               0.000000E+00
- DFT| XC density smoothing                                                  NONE
- DFT| XC derivatives                                                          PW
- FUNCTIONAL| ROUTINE=NEW
- FUNCTIONAL| BECKE88:
- FUNCTIONAL| A. Becke, Phys. Rev. A 38, 3098 (1988) {LDA version}
-
- QS| Method:                                                                 GPW
- QS| Density plane wave grid type                        NON-SPHERICAL FULLSPACE
- QS| Number of grid levels:                                                    2
- QS| Density cutoff [a.u.]:                                                 25.0
- QS| Multi grid cutoff [a.u.]: 1) grid level                                25.0
- QS|                           2) grid level                                 8.3
- QS| Grid level progression factor:                                          3.0
- QS| Relative density cutoff [a.u.]:                                        12.5
- QS| Consistent realspace mapping and integration 
- QS| Interaction thresholds: eps_pgf_orb:                                3.2E-02
- QS|                         eps_filter_matrix:                          0.0E+00
- QS|                         eps_core_charge:                            1.0E-05
- QS|                         eps_rho_gspace:                             1.0E-03
- QS|                         eps_rho_rspace:                             1.0E-03
- QS|                         eps_gvg_rspace:                             3.2E-02
- QS|                         eps_ppl:                                    1.0E-02
- QS|                         eps_ppnl:                                   3.2E-04
-
-
- ATOMIC KIND INFORMATION
-
-  1. Atomic kind: Si                                    Number of atoms:       1
-
-     Orbital Basis Set                                             DZVP-GTH-PADE
-
-       Number of orbital shell sets:                                           2
-       Number of orbital shells:                                               5
-       Number of primitive Cartesian functions:                                5
-       Number of Cartesian basis functions:                                   14
-       Number of spherical basis functions:                                   13
-       Norm type:                                                              2
-
-       Normalised Cartesian orbitals:
-
-                        Set   Shell   Orbital            Exponent    Coefficient
-
-                          1       1    3s                1.203242       0.269412
-                                                         0.468841      -0.102290
-                                                         0.167986      -0.147195
-                                                         0.057562      -0.015996
-
-                          1       2    4s                1.203242       0.000000
-                                                         0.468841       0.000000
-                                                         0.167986       0.000000
-                                                         0.057562       0.083755
-
-                          1       3    4px               1.203242       0.085242
-                                                         0.468841      -0.143473
-                                                         0.167986      -0.083408
-                                                         0.057562      -0.014565
-                          1       3    4py               1.203242       0.085242
-                                                         0.468841      -0.143473
-                                                         0.167986      -0.083408
-                                                         0.057562      -0.014565
-                          1       3    4pz               1.203242       0.085242
-                                                         0.468841      -0.143473
-                                                         0.167986      -0.083408
-                                                         0.057562      -0.014565
-
-                          1       4    5px               1.203242       0.000000
-                                                         0.468841       0.000000
-                                                         0.167986       0.000000
-                                                         0.057562       0.040189
-                          1       4    5py               1.203242       0.000000
-                                                         0.468841       0.000000
-                                                         0.167986       0.000000
-                                                         0.057562       0.040189
-                          1       4    5pz               1.203242       0.000000
-                                                         0.468841       0.000000
-                                                         0.167986       0.000000
-                                                         0.057562       0.040189
-
-                          2       1    3dx2              0.450000       0.406941
-                          2       1    3dxy              0.450000       0.704842
-                          2       1    3dxz              0.450000       0.704842
-                          2       1    3dy2              0.450000       0.406941
-                          2       1    3dyz              0.450000       0.704842
-                          2       1    3dz2              0.450000       0.406941
-
-     Potential information for                                       GTH-PADE-q4
-
-       Description:                       Goedecker-Teter-Hutter pseudopotential
-                                           Goedecker et al., PRB 54, 1703 (1996)
-                                          Hartwigsen et al., PRB 58, 3641 (1998)
-                                                      Krack, TCA 114, 145 (2005)
-
-       Gaussian exponent of the core charge distribution:               2.582645
-       Electronic configuration (s p d ...):                               2   2
-
-       Parameters of the local part of the GTH pseudopotential:
-
-                          rloc        C1          C2          C3          C4
-                        0.440000   -7.336103
-
-       Parameters of the non-local part of the GTH pseudopotential:
-
-                   l      r(l)      h(i,j,l)
-
-                   0    0.422738    5.906928   -1.261894
-                                   -1.261894    3.258196
-                   1    0.484278    2.727013
-
-
- MOLECULE KIND INFORMATION
-
-
- All atoms are their own molecule, skipping detailed information
-
-
- TOTAL NUMBERS AND MAXIMUM NUMBERS
-
-  Total number of            - Atomic kinds:                                   1
-                             - Atoms:                                          1
-                             - Shell sets:                                     2
-                             - Shells:                                         5
-                             - Primitive Cartesian functions:                  5
-                             - Cartesian basis functions:                     14
-                             - Spherical basis functions:                     13
-
-  Maximum angular momentum of- Orbital basis functions:                        2
-                             - Local part of the GTH pseudopotential:          0
-                             - Non-local part of the GTH pseudopotential:      2
-
-
- MODULE QUICKSTEP:  ATOMIC COORDINATES IN angstrom
-
-  Atom  Kind  Element       X           Y           Z          Z(eff)       Mass
-
-       1     1 Si  14    0.000000    0.000000    0.000000      4.00      28.0855
-
-
-
-
- SCF PARAMETERS         Density guess:                                    ATOMIC
-                        --------------------------------------------------------
-                        max_scf:                                             100
-                        max_scf_history:                                       0
-                        max_diis:                                              4
-                        --------------------------------------------------------
-                        eps_scf:                                        1.00E-03
-                        eps_scf_history:                                0.00E+00
-                        eps_diis:                                       1.00E-01
-                        eps_eigval:                                     1.00E-05
-                        --------------------------------------------------------
-                        level_shift [a.u.]:                                 0.00
-                        --------------------------------------------------------
-                        Mixing method:                           DIRECT_P_MIXING
-                        --------------------------------------------------------
-                        No outer SCF
-
- PW_GRID| Information for grid number                                          1
- PW_GRID| Cutoff [a.u.]                                                     25.0
- PW_GRID| spherical cutoff:                                                   NO
- PW_GRID|   Bounds   1            -12      11                Points:          24
- PW_GRID|   Bounds   2            -12      11                Points:          24
- PW_GRID|   Bounds   3            -12      11                Points:          24
- PW_GRID| Volume element (a.u.^3)  0.7819E-01     Volume (a.u.^3)      1080.8451
- PW_GRID| Grid span                                                    FULLSPACE
-
- PW_GRID| Information for grid number                                          2
- PW_GRID| Cutoff [a.u.]                                                      8.3
- PW_GRID| spherical cutoff:                                                   NO
- PW_GRID|   Bounds   1             -7       7                Points:          15
- PW_GRID|   Bounds   2             -7       7                Points:          15
- PW_GRID|   Bounds   3             -7       7                Points:          15
- PW_GRID| Volume element (a.u.^3)  0.3203         Volume (a.u.^3)      1080.8451
- PW_GRID| Grid span                                                    FULLSPACE
-
- POISSON| Solver                                                        PERIODIC
- POISSON| Periodicity                                                        XYZ
-
- RS_GRID| Information for grid number                                          1
- RS_GRID|   Bounds   1            -12      11                Points:          24
- RS_GRID|   Bounds   2            -12      11                Points:          24
- RS_GRID|   Bounds   3            -12      11                Points:          24
-
- RS_GRID| Information for grid number                                          2
- RS_GRID|   Bounds   1             -7       7                Points:          15
- RS_GRID|   Bounds   2             -7       7                Points:          15
- RS_GRID|   Bounds   3             -7       7                Points:          15
-
- DISTRIBUTION OF THE PARTICLES (ROWS)
-              Process row      Number of particles         Number of matrix rows
-                        0                        1                            -1
-                      Sum                        1                            -1
-
- DISTRIBUTION OF THE PARTICLES (COLUMNS)
-              Process col      Number of particles      Number of matrix columns
-                        0                        1                            -1
-                      Sum                        1                            -1
-
- DISTRIBUTION OF THE NEIGHBOR LISTS
-              Total number of particle pairs:                                  7
-              Total number of matrix elements:                              1183
-              Average number of particle pairs:                                7
-              Maximum number of particle pairs:                                7
-              Average number of matrix element:                             1183
-              Maximum number of matrix elements:                            1183
-
-
- DISTRIBUTION OF THE OVERLAP MATRIX
-              Number  of non-zero blocks:                                      1
-              Percentage non-zero blocks:                                 100.00
-              Average number of blocks per CPU:                                1
-              Maximum number of blocks per CPU:                                1
-              Average number of matrix elements per CPU:                     179
-              Maximum number of matrix elements per CPU:                     179
-
- Number of electrons:                                                          4
- Number of occupied orbitals:                                                  2
- Number of molecular orbitals:                                                 2
-
- Number of orbital functions:                                                 13
- Number of independent orbital functions:                                     13
-
- Extrapolation method: initial_guess
-
- Atomic guess: The first density matrix is obtained in terms of atomic orbitals
-               and electronic configurations assigned to each atomic kind
-
- Guess for atomic kind: Si
-
- Electronic structure
-    Total number of core electrons                                         10.00
-    Total number of valence electrons                                       4.00
-    Total number of electrons                                              14.00
-    Multiplicity                                                   not specified
-    S   [  2.00  2.00] 2.00
-    P   [  6.00] 2.00
-
-
- *******************************************************************************
-                  Iteration          Convergence                     Energy [au]
- *******************************************************************************
-                          1        0.191310                      -3.618313869735
-                          2        0.731569E-01                  -3.691159009622
-                          3        0.405574E-02                  -3.699900512584
-                          4        0.328704E-02                  -3.699908407293
-                          5        0.320845E-02                  -3.699909118998
-                          6        0.316809E-02                  -3.699909477757
-                          7        0.331859E-05                  -3.699923449535
-                          8        0.110258E-06                  -3.699923449550
-
- Energy components [Hartree]           Total Energy ::           -3.699923449550
-                                        Band Energy ::           -1.012729790251
-                                     Kinetic Energy ::            1.397012768229
-                                   Potential Energy ::           -5.096936217779
-                                      Virial (-V/T) ::            3.648453567279
-                                        Core Energy ::           -5.703543362687
-                                          XC Energy ::           -0.980691562795
-                                     Coulomb Energy ::            2.984311475932
-                       Total Pseudopotential Energy ::           -7.145739758818
-                       Local Pseudopotential Energy ::           -7.987908627736
-                    Nonlocal Pseudopotential Energy ::            0.842168868918
-                                        Confinement ::            0.451836279031
-
- Orbital energies  State     L     Occupation   Energy[a.u.]          Energy[eV]
-
-                       1     0          2.000      -0.378230          -10.292155
-
-                       1     1          2.000      -0.128135           -3.486734
-
- Re-scaling the density matrix to get the right number of electrons
-                  # Electrons              Trace(P)               Scaling factor
-                            4                 3.957                        1.011
-
-
- SCF WAVEFUNCTION OPTIMIZATION
-
-  Step     Update method      Time    Convergence         Total energy    Change
-  ------------------------------------------------------------------------------
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998453719        0.0001546281
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036805695
-  Total charge density g-space grids:          -0.0036805695
-
-     1 P_Mix/Diag. 0.40E+00    0.0     0.58834082        -3.6916243010 -3.69E+00
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998057271        0.0001942729
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036409247
-  Total charge density g-space grids:          -0.0036409247
-
-     2 P_Mix/Diag. 0.40E+00    0.0     1.03136858        -3.6876787572  3.95E-03
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998152806        0.0001847194
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036504782
-  Total charge density g-space grids:          -0.0036504782
-
-     3 P_Mix/Diag. 0.40E+00    0.0     1.05100784        -3.6865162206  1.16E-03
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998211915        0.0001788085
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036563891
-  Total charge density g-space grids:          -0.0036563891
-
-     4 P_Mix/Diag. 0.40E+00    0.0     0.93987743        -3.6861588603  3.57E-04
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9997995686        0.0002004314
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036347662
-  Total charge density g-space grids:          -0.0036347662
-
-     5 P_Mix/Diag. 0.40E+00    0.0     1.00715451        -3.6853760165  7.83E-04
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998117103        0.0001882897
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036469080
-  Total charge density g-space grids:          -0.0036469080
-
-     6 P_Mix/Diag. 0.40E+00    0.0     0.96664076        -3.6850397852  3.36E-04
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998166311        0.0001833689
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036518287
-  Total charge density g-space grids:          -0.0036518287
-
-     7 P_Mix/Diag. 0.40E+00    0.0     1.00486142        -3.6848332031  2.07E-04
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998017011        0.0001982989
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036368987
-  Total charge density g-space grids:          -0.0036368987
-
-     8 P_Mix/Diag. 0.40E+00    0.0     0.81603691        -3.6847328319  1.00E-04
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998074250        0.0001925750
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036426227
-  Total charge density g-space grids:          -0.0036426227
-
-     9 P_Mix/Diag. 0.40E+00    0.0     1.00248934        -3.6847258825  6.95E-06
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998136161        0.0001863839
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036488137
-  Total charge density g-space grids:          -0.0036488137
-
-    10 P_Mix/Diag. 0.40E+00    0.0     1.06622177        -3.6845850442  1.41E-04
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998064017        0.0001935983
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036415993
-  Total charge density g-space grids:          -0.0036415993
-
-    11 P_Mix/Diag. 0.40E+00    0.0     0.96757587        -3.6844817657  1.03E-04
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998040238        0.0001959762
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036392215
-  Total charge density g-space grids:          -0.0036392215
-
-    12 P_Mix/Diag. 0.40E+00    0.0     0.98133571        -3.6846258848 -1.44E-04
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998109096        0.0001890904
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036461072
-  Total charge density g-space grids:          -0.0036461072
-
-    13 P_Mix/Diag. 0.40E+00    0.0     1.20075357        -3.6844966608  1.29E-04
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998089433        0.0001910567
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036441409
-  Total charge density g-space grids:          -0.0036441409
-
-    14 P_Mix/Diag. 0.40E+00    0.0     1.08759312        -3.6843758464  1.21E-04
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998048164        0.0001951836
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036400140
-  Total charge density g-space grids:          -0.0036400140
-
-    15 P_Mix/Diag. 0.40E+00    0.0     1.21688007        -3.6844493741 -7.35E-05
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998088816        0.0001911184
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036440793
-  Total charge density g-space grids:          -0.0036440793
-
-    16 P_Mix/Diag. 0.40E+00    0.0     1.45889012        -3.6842909933  1.58E-04
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998087142        0.0001912858
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036439118
-  Total charge density g-space grids:          -0.0036439118
-
-    17 P_Mix/Diag. 0.40E+00    0.0     1.47944942        -3.6842560988  3.49E-05
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998072269        0.0001927731
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036424245
-  Total charge density g-space grids:          -0.0036424245
-
-    18 P_Mix/Diag. 0.40E+00    0.0     1.50458255        -3.6842646411 -8.54E-06
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998080422        0.0001919578
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036432398
-  Total charge density g-space grids:          -0.0036432398
-
-    19 P_Mix/Diag. 0.40E+00    0.0     1.51880247        -3.6842483460  1.63E-05
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998080413        0.0001919587
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036432389
-  Total charge density g-space grids:          -0.0036432389
-
-    20 P_Mix/Diag. 0.40E+00    0.0     1.52044775        -3.6842473408  1.01E-06
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998078150        0.0001921850
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036430126
-  Total charge density g-space grids:          -0.0036430126
-
-    21 P_Mix/Diag. 0.40E+00    0.0     1.52052905        -3.6842506244 -3.28E-06
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079257        0.0001920743
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431233
-  Total charge density g-space grids:          -0.0036431233
-
-    22 P_Mix/Diag. 0.40E+00    0.0     1.52113420        -3.6842483764  2.25E-06
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079296        0.0001920704
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431272
-  Total charge density g-space grids:          -0.0036431272
-
-    23 P_Mix/Diag. 0.40E+00    0.0     1.52131369        -3.6842483435  3.29E-08
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079007        0.0001920993
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036430983
-  Total charge density g-space grids:          -0.0036430983
-
-    24 P_Mix/Diag. 0.40E+00    0.0     1.52119562        -3.6842489887 -6.45E-07
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079169        0.0001920831
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431146
-  Total charge density g-space grids:          -0.0036431146
-
-    25 P_Mix/Diag. 0.40E+00    0.0     1.52127113        -3.6842485693  4.19E-07
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079184        0.0001920816
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431160
-  Total charge density g-space grids:          -0.0036431160
-
-    26 P_Mix/Diag. 0.40E+00    0.0     1.52130006        -3.6842485721 -2.86E-09
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079147        0.0001920853
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431123
-  Total charge density g-space grids:          -0.0036431123
-
-    27 P_Mix/Diag. 0.40E+00    0.0     1.52127198        -3.6842486891 -1.17E-07
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079173        0.0001920827
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431150
-  Total charge density g-space grids:          -0.0036431150
-
-    28 P_Mix/Diag. 0.40E+00    0.0     1.52128683        -3.6842486095  7.96E-08
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079178        0.0001920822
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431154
-  Total charge density g-space grids:          -0.0036431154
-
-    29 P_Mix/Diag. 0.40E+00    0.0     1.52129185        -3.6842486118 -2.30E-09
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079173        0.0001920827
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431149
-  Total charge density g-space grids:          -0.0036431149
-
-    30 P_Mix/Diag. 0.40E+00    0.0     1.52128603        -3.6842486320 -2.02E-08
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079178        0.0001920822
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431154
-  Total charge density g-space grids:          -0.0036431154
-
-    31 P_Mix/Diag. 0.40E+00    0.0     1.52128920        -3.6842486172  1.48E-08
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079179        0.0001920821
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431156
-  Total charge density g-space grids:          -0.0036431156
-
-    32 P_Mix/Diag. 0.40E+00    0.0     1.52129005        -3.6842486181 -8.62E-10
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079179        0.0001920821
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431155
-  Total charge density g-space grids:          -0.0036431155
-
-    33 P_Mix/Diag. 0.40E+00    0.0     1.52128889        -3.6842486213 -3.26E-09
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079180        0.0001920820
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431156
-  Total charge density g-space grids:          -0.0036431156
-
-    34 P_Mix/Diag. 0.40E+00    0.0     1.52128958        -3.6842486187  2.67E-09
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079180        0.0001920820
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    35 P_Mix/Diag. 0.40E+00    0.0     1.52128971        -3.6842486189 -2.67E-10
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079180        0.0001920820
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    36 P_Mix/Diag. 0.40E+00    0.0     1.52128949        -3.6842486194 -4.60E-10
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    37 P_Mix/Diag. 0.40E+00    0.0     1.52128964        -3.6842486189  4.58E-10
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    38 P_Mix/Diag. 0.40E+00    0.0     1.52128966        -3.6842486190 -7.52E-11
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    39 P_Mix/Diag. 0.40E+00    0.0     1.52128962        -3.6842486191 -4.50E-11
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    40 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  7.25E-11
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    41 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -2.01E-11
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    42 P_Mix/Diag. 0.40E+00    0.0     1.52128964        -3.6842486190  2.37E-12
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    43 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  9.68E-12
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    44 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -5.15E-12
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    45 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  3.22E-12
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    46 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  7.24E-13
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    47 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -1.28E-12
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    48 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  1.31E-12
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    49 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -1.65E-13
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    50 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -3.11E-13
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    51 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  4.24E-13
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    52 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -1.15E-13
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    53 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -7.33E-14
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    54 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  1.23E-13
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    55 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -4.40E-14
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    56 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -1.55E-14
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    57 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  3.24E-14
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    58 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -1.33E-14
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    59 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -4.44E-15
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    60 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  9.33E-15
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    61 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -4.00E-15
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    62 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  4.44E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    63 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  1.33E-15
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    64 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -1.33E-15
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    65 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -8.88E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    66 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  1.33E-15
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    67 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -4.44E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    68 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -8.88E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    69 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  0.00E+00
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    70 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  8.88E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    71 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -8.88E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    72 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  4.44E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    73 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  4.44E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    74 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -8.88E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    75 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  8.88E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    76 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -8.88E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    77 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  8.88E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    78 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -1.33E-15
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    79 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  1.78E-15
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    80 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -4.44E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    81 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -8.88E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    82 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  4.44E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    83 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -4.44E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    84 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  8.88E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    85 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  0.00E+00
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    86 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -4.44E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    87 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  4.44E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    88 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -4.44E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    89 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -4.44E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    90 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  0.00E+00
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    91 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  4.44E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    92 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -8.88E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    93 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -4.44E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    94 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  1.33E-15
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    95 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190 -1.33E-15
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    96 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  8.88E-16
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    97 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  0.00E+00
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    98 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  0.00E+00
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-    99 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  0.00E+00
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-   100 P_Mix/Diag. 0.40E+00    0.0     1.52128965        -3.6842486190  0.00E+00
-
-  *** SCF run NOT converged ***
-
-
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-  Overlap energy of the core charge distribution:               0.00000000000000
-  Self energy of the core charge distribution:                -10.25799242814102
-  Core Hamiltonian energy:                                      1.95097899111943
-  Hartree energy:                                               5.52868797609633
-  Exchange-correlation energy:                                 -0.90592315808038
-
-  Total energy:                                                -3.68424861900565
-
-
- MULLIKEN POPULATION ANALYSIS
-
- #  Atom  Element  Kind  Atomic population                Net charge
-       1     Si       1          4.000000                 -0.000000
- # Total charge                  4.000000                 -0.000000
-
-
- !-----------------------------------------------------------------------------!
-                           Hirschfeld Charges
-
-  #Atom  Element  Kind  Ref Charge     Population                     Net charge
-      1       Si     1       4.000          3.450                          0.550
-
-  Total Charge                                                             0.550
- !-----------------------------------------------------------------------------!
-
-  Trace(PS):                                    4.0000000000
-  Electronic density on regular grids:         -3.9998079181        0.0001920819
-  Core density on regular grids:                3.9961648024       -0.0038351976
-  Total charge density on r-space grids:       -0.0036431157
-  Total charge density g-space grids:          -0.0036431157
-
-
- ENERGY| Total FORCE_EVAL ( QS ) energy (a.u.):               -3.669248396643794
-
-
- -------------------------------------------------------------------------------
- -                                                                             -
- -                                DBCSR STATISTICS                             -
- -                                                                             -
- -------------------------------------------------------------------------------
- COUNTER                                      CPU                  ACC      ACC%
- number of processed stacks                   101                    0       0.0
- matmuls inhomo. stacks                         0                    0       0.0
- matmuls total                                101                    0       0.0
- flops  13 x   13 x    2                    68276                    0       0.0
- flops total                                68276                    0       0.0
- marketing flops                            68276
- -------------------------------------------------------------------------------
-
- -------------------------------------------------------------------------------
- ----                             MULTIGRID INFO                            ----
- -------------------------------------------------------------------------------
- count for grid        1:            311          cutoff [a.u.]           25.00
- count for grid        2:            332          cutoff [a.u.]            8.33
- total gridlevel count  :            643
-
- -------------------------------------------------------------------------------
- -                                                                             -
- -                         MESSAGE PASSING PERFORMANCE                         -
- -                                                                             -
- -------------------------------------------------------------------------------
-
- ROUTINE             CALLS  TOT TIME [s]  AVE VOLUME [Bytes]  PERFORMANCE [MB/s]
- MP_Group                3         0.000
- MP_Bcast              102         0.000                  4.                1.73
- MP_Allreduce         1170         0.001                  8.               16.75
- MP_Sync                 2         0.000
- MP_Alltoall          2316         0.001                522.              858.42
- MP_Wait              2424         0.001
- MP_ISend              808         0.001                228.              131.80
- MP_IRecv              808         0.000                228.              421.71
- MP_Memory            2424         0.001
- -------------------------------------------------------------------------------
-
-
- -------------------------------------------------------------------------------
- -                                                                             -
- -                           R E F E R E N C E S                               -
- -                                                                             -
- -------------------------------------------------------------------------------
- 
- CP2K version 2.6.2, the CP2K developers group (2015).
- CP2K is freely available from http://www.cp2k.org/ .
-
- Borstnik, U; VandeVondele, J; Weber, V; Hutter, J. 
- PARALLEL COMPUTING, 40 (5-6), 47-58 (2014). 
- Sparse matrix multiplication: The distributed block-compressed sparse
- row library.
- http://dx.doi.org/10.1016/j.parco.2014.03.012
-
-
- Hutter, J; Iannuzzi, M; Schiffmann, F; VandeVondele, J. 
- WILEY INTERDISCIPLINARY REVIEWS-COMPUTATIONAL MOLECULAR SCIENCE, 4 (1), 15-25 (2014). 
- CP2K: atomistic simulations of condensed matter systems.
- http://dx.doi.org/10.1002/wcms.1159
-
-
- Krack, M. 
- THEORETICAL CHEMISTRY ACCOUNTS, 114 (1-3), 145-152 (2005). 
- Pseudopotentials for H to Kr optimized for gradient-corrected
- exchange-correlation functionals.
- http://dx.doi.org/10.1007/s00214-005-0655-y
-
-
- VandeVondele, J; Krack, M; Mohamed, F; Parrinello, M; Chassaing, T;
- Hutter, J. COMPUTER PHYSICS COMMUNICATIONS, 167 (2), 103-128 (2005). 
- QUICKSTEP: Fast and accurate density functional calculations using a
- mixed Gaussian and plane waves approach.
- http://dx.doi.org/10.1016/j.cpc.2004.12.014
-
-
- Frigo, M; Johnson, SG. 
- PROCEEDINGS OF THE IEEE, 93 (2), 216-231 (2005). 
- The design and implementation of FFTW3.
- http://dx.doi.org/10.1109/JPROC.2004.840301
-
-
- Hartwigsen, C; Goedecker, S; Hutter, J. 
- PHYSICAL REVIEW B, 58 (7), 3641-3662 (1998). 
- Relativistic separable dual-space Gaussian pseudopotentials from H to Rn.
- http://dx.doi.org/10.1103/PhysRevB.58.3641
-
-
- Lippert, G; Hutter, J; Parrinello, M. 
- MOLECULAR PHYSICS, 92 (3), 477-487 (1997). 
- A hybrid Gaussian and plane wave density functional scheme.
- http://dx.doi.org/10.1080/002689797170220
-
-
- Goedecker, S; Teter, M; Hutter, J. 
- PHYSICAL REVIEW B, 54 (3), 1703-1710 (1996). 
- Separable dual-space Gaussian pseudopotentials.
- http://dx.doi.org/10.1103/PhysRevB.54.1703
-
-
- BECKE, AD. PHYSICAL REVIEW A, 38 (6), 3098-3100 (1988). 
- DENSITY-FUNCTIONAL EXCHANGE-ENERGY APPROXIMATION WITH CORRECT
- ASYMPTOTIC-BEHAVIOR.
- http://dx.doi.org/10.1103/PhysRevA.38.3098
-
-
- -------------------------------------------------------------------------------
- -                                                                             -
- -                                T I M I N G                                  -
- -                                                                             -
- -------------------------------------------------------------------------------
- SUBROUTINE                       CALLS  ASD         SELF TIME        TOTAL TIME
-                                MAXIMUM       AVERAGE  MAXIMUM  AVERAGE  MAXIMUM
- CP2K                                 1  1.0    0.002    0.002    1.000    1.000
- qs_forces                            1  2.0    0.000    0.000    0.975    0.975
- qs_energies_scf                      1  3.0    0.000    0.000    0.967    0.967
- scf_env_do_scf                       1  4.0    0.000    0.000    0.952    0.952
- scf_env_do_scf_inner_loop          100  5.0    0.007    0.007    0.951    0.951
- rebuild_ks_matrix                  101  7.0    0.000    0.000    0.701    0.701
- qs_ks_build_kohn_sham_matrix       101  8.0    0.008    0.008    0.701    0.701
- qs_ks_update_qs_env                100  6.0    0.000    0.000    0.696    0.696
- qs_vxc_create                      101  9.0    0.001    0.001    0.496    0.496
- xc_vxc_pw_create                   101 10.0    0.022    0.022    0.495    0.495
- fft_wrap_pw1pw2                   1314 10.7    0.004    0.004    0.407    0.407
- fft_wrap_pw1pw2_30                1112 11.8    0.022    0.022    0.391    0.391
- xc_rho_set_and_dset_create         101 11.0    0.052    0.052    0.305    0.305
- fft3d_s                           1315 12.7    0.265    0.265    0.275    0.275
- qs_rho_update_rho                  101  6.0    0.000    0.000    0.146    0.146
- calculate_rho_elec                 101  7.0    0.057    0.057    0.145    0.145
- sum_up_and_integrate               101  9.0    0.003    0.003    0.132    0.132
- integrate_v_rspace                 101 10.0    0.076    0.076    0.129    0.129
- xc_functional_eval                 101 12.0    0.000    0.000    0.125    0.125
- xb88_lda_eval                      101 13.0    0.125    0.125    0.125    0.125
- density_rs2pw                      101  8.0    0.001    0.001    0.088    0.088
- pw_scatter_s                       707 13.0    0.056    0.056    0.056    0.056
- calculate_dm_sparse                100  6.0    0.000    0.000    0.056    0.056
- cp_dbcsr_plus_fm_fm_t_native       101  7.0    0.001    0.001    0.055    0.055
- pw_gather_s                        607 12.5    0.049    0.049    0.049    0.049
- potential_pw2rs                    101 11.0    0.001    0.001    0.048    0.048
- dbcsr_mm_cannon_multiply           101  8.0    0.004    0.004    0.041    0.041
- pw_derive                          606 11.5    0.035    0.035    0.035    0.035
- quickstep_create_force_env           1  2.0    0.000    0.000    0.023    0.023
- dbcsr_complete_redistribute        302  9.0    0.010    0.010    0.022    0.022
- copy_dbcsr_to_fm                   400  7.0    0.003    0.003    0.022    0.022
- pw_poisson_solve                   101  9.0    0.016    0.016    0.021    0.021
- pw_copy                            909 11.2    0.020    0.020    0.020    0.020
- -------------------------------------------------------------------------------
-
-  **** **** ******  **  PROGRAM ENDED AT                 2016-04-19 13:05:38.048
- ***** ** ***  *** **   PROGRAM RAN ON                       lauri-Lenovo-Z50-70
- **    ****   ******    PROGRAM RAN BY                                     lauri
- ***** **    ** ** **   PROGRAM PROCESS ID                                 10424
-  **** **  *******  **  PROGRAM STOPPED IN /home/lauri/Dropbox/nomad-dev/nomad-l
-                                           ab-base/parsers/cp2k/test/unittests/c
-                                           p2k_2.6.2/XC_functional/becke88
diff --git a/test/unittests/cp2k_2.6.2/XC_functional/blyp/unittest.out b/test/unittests/cp2k_2.6.2/XC_functional/blyp/unittest.out
index 7865d70..c4816be 100644
--- a/test/unittests/cp2k_2.6.2/XC_functional/blyp/unittest.out
+++ b/test/unittests/cp2k_2.6.2/XC_functional/blyp/unittest.out
@@ -9,10 +9,10 @@
  DBCSR| Communication thread load                                             87
 
 
-  **** **** ******  **  PROGRAM STARTED AT               2016-04-19 13:06:03.013
+  **** **** ******  **  PROGRAM STARTED AT               2016-04-25 10:00:50.624
  ***** ** ***  *** **   PROGRAM STARTED ON                   lauri-Lenovo-Z50-70
  **    ****   ******    PROGRAM STARTED BY                                 lauri
- ***** **    ** ** **   PROGRAM PROCESS ID                                 10563
+ ***** **    ** ** **   PROGRAM PROCESS ID                                 11701
   **** **  *******  **  PROGRAM STARTED IN /home/lauri/Dropbox/nomad-dev/nomad-l
                                            ab-base/parsers/cp2k/test/unittests/c
                                            p2k_2.6.2/XC_functional/blyp
@@ -46,12 +46,12 @@
  MEMORY| system memory details [Kb]
  MEMORY|                        rank 0           min           max       average
  MEMORY| MemTotal              8070380       8070380       8070380       8070380
- MEMORY| MemFree               3092784       3092784       3092784       3092784
- MEMORY| Buffers                879616        879616        879616        879616
- MEMORY| Cached                1936196       1936196       1936196       1936196
- MEMORY| Slab                   465272        465272        465272        465272
- MEMORY| SReclaimable           424832        424832        424832        424832
- MEMORY| MemLikelyFree         6333428       6333428       6333428       6333428
+ MEMORY| MemFree               3001100       3001100       3001100       3001100
+ MEMORY| Buffers                843640        843640        843640        843640
+ MEMORY| Cached                2004444       2004444       2004444       2004444
+ MEMORY| Slab                   484152        484152        484152        484152
+ MEMORY| SReclaimable           444984        444984        444984        444984
+ MEMORY| MemLikelyFree         6294168       6294168       6294168       6294168
 
 
  *** Fundamental physical constants (SI units) ***
@@ -1309,13 +1309,13 @@
 
  ROUTINE             CALLS  TOT TIME [s]  AVE VOLUME [Bytes]  PERFORMANCE [MB/s]
  MP_Group                3         0.000
- MP_Bcast              102         0.000                  4.                1.46
- MP_Allreduce         1170         0.001                  8.               15.79
+ MP_Bcast              102         0.000                  4.                1.70
+ MP_Allreduce         1170         0.001                  8.               17.33
  MP_Sync                 2         0.000
- MP_Alltoall          2316         0.002                522.              804.03
+ MP_Alltoall          2316         0.001                522.              848.94
  MP_Wait              2424         0.001
- MP_ISend              808         0.001                228.              131.68
- MP_IRecv              808         0.000                228.              395.24
+ MP_ISend              808         0.001                228.              133.66
+ MP_IRecv              808         0.000                228.              429.62
  MP_Memory            2424         0.001
  -------------------------------------------------------------------------------
 
@@ -1400,43 +1400,43 @@
  -------------------------------------------------------------------------------
  SUBROUTINE                       CALLS  ASD         SELF TIME        TOTAL TIME
                                 MAXIMUM       AVERAGE  MAXIMUM  AVERAGE  MAXIMUM
- CP2K                                 1  1.0    0.002    0.002    1.129    1.129
- qs_forces                            1  2.0    0.000    0.000    1.090    1.090
- qs_energies_scf                      1  3.0    0.000    0.000    1.079    1.079
- scf_env_do_scf                       1  4.0    0.000    0.000    1.062    1.062
- scf_env_do_scf_inner_loop          100  5.0    0.007    0.007    1.062    1.062
- rebuild_ks_matrix                  101  7.0    0.000    0.000    0.808    0.808
- qs_ks_build_kohn_sham_matrix       101  8.0    0.009    0.009    0.807    0.807
- qs_ks_update_qs_env                100  6.0    0.001    0.001    0.800    0.800
- qs_vxc_create                      101  9.0    0.001    0.001    0.600    0.600
- xc_vxc_pw_create                   101 10.0    0.022    0.022    0.599    0.599
- fft_wrap_pw1pw2                   1314 10.7    0.005    0.005    0.412    0.412
- xc_rho_set_and_dset_create         101 11.0    0.053    0.053    0.408    0.408
- fft_wrap_pw1pw2_30                1112 11.8    0.023    0.023    0.395    0.395
- fft3d_s                           1315 12.7    0.266    0.266    0.277    0.277
- xc_functional_eval                 202 12.0    0.001    0.001    0.227    0.227
- qs_rho_update_rho                  101  6.0    0.000    0.000    0.151    0.151
- calculate_rho_elec                 101  7.0    0.059    0.059    0.151    0.151
+ CP2K                                 1  1.0    0.002    0.002    1.108    1.108
+ qs_forces                            1  2.0    0.000    0.000    1.082    1.082
+ qs_energies_scf                      1  3.0    0.000    0.000    1.074    1.074
+ scf_env_do_scf                       1  4.0    0.000    0.000    1.059    1.059
+ scf_env_do_scf_inner_loop          100  5.0    0.007    0.007    1.059    1.059
+ rebuild_ks_matrix                  101  7.0    0.000    0.000    0.809    0.809
+ qs_ks_build_kohn_sham_matrix       101  8.0    0.009    0.009    0.809    0.809
+ qs_ks_update_qs_env                100  6.0    0.000    0.000    0.802    0.802
+ qs_vxc_create                      101  9.0    0.001    0.001    0.602    0.602
+ xc_vxc_pw_create                   101 10.0    0.022    0.022    0.602    0.602
+ fft_wrap_pw1pw2                   1314 10.7    0.004    0.004    0.411    0.411
+ xc_rho_set_and_dset_create         101 11.0    0.053    0.053    0.409    0.409
+ fft_wrap_pw1pw2_30                1112 11.8    0.022    0.022    0.395    0.395
+ fft3d_s                           1315 12.7    0.268    0.268    0.279    0.279
+ xc_functional_eval                 202 12.0    0.001    0.001    0.228    0.228
+ qs_rho_update_rho                  101  6.0    0.000    0.000    0.147    0.147
+ calculate_rho_elec                 101  7.0    0.058    0.058    0.147    0.147
  sum_up_and_integrate               101  9.0    0.003    0.003    0.133    0.133
  integrate_v_rspace                 101 10.0    0.076    0.076    0.130    0.130
- xb88_lda_eval                      101 13.0    0.125    0.125    0.125    0.125
- lyp_lda_eval                       101 13.0    0.101    0.101    0.101    0.101
- density_rs2pw                      101  8.0    0.001    0.001    0.091    0.091
- pw_scatter_s                       707 13.0    0.057    0.057    0.057    0.057
- cp_dbcsr_plus_fm_fm_t_native       101  7.0    0.001    0.001    0.056    0.056
- calculate_dm_sparse                100  6.0    0.000    0.000    0.056    0.056
- pw_gather_s                        607 12.5    0.049    0.049    0.049    0.049
+ xb88_lda_eval                      101 13.0    0.126    0.126    0.126    0.126
+ lyp_lda_eval                       101 13.0    0.102    0.102    0.102    0.102
+ density_rs2pw                      101  8.0    0.001    0.001    0.088    0.088
+ pw_scatter_s                       707 13.0    0.056    0.056    0.056    0.056
+ calculate_dm_sparse                100  6.0    0.000    0.000    0.055    0.055
+ cp_dbcsr_plus_fm_fm_t_native       101  7.0    0.001    0.001    0.055    0.055
  potential_pw2rs                    101 11.0    0.001    0.001    0.049    0.049
- dbcsr_mm_cannon_multiply           101  8.0    0.004    0.004    0.042    0.042
- quickstep_create_force_env           1  2.0    0.000    0.000    0.036    0.036
+ pw_gather_s                        607 12.5    0.049    0.049    0.049    0.049
+ dbcsr_mm_cannon_multiply           101  8.0    0.004    0.004    0.041    0.041
  pw_derive                          606 11.5    0.035    0.035    0.035    0.035
+ quickstep_create_force_env           1  2.0    0.000    0.000    0.023    0.023
  dbcsr_complete_redistribute        302  9.0    0.010    0.010    0.023    0.023
  -------------------------------------------------------------------------------
 
-  **** **** ******  **  PROGRAM ENDED AT                 2016-04-19 13:06:04.193
+  **** **** ******  **  PROGRAM ENDED AT                 2016-04-25 10:00:51.812
  ***** ** ***  *** **   PROGRAM RAN ON                       lauri-Lenovo-Z50-70
  **    ****   ******    PROGRAM RAN BY                                     lauri
- ***** **    ** ** **   PROGRAM PROCESS ID                                 10563
+ ***** **    ** ** **   PROGRAM PROCESS ID                                 11701
   **** **  *******  **  PROGRAM STOPPED IN /home/lauri/Dropbox/nomad-dev/nomad-l
                                            ab-base/parsers/cp2k/test/unittests/c
                                            p2k_2.6.2/XC_functional/blyp
diff --git a/test/unittests/cp2k_2.6.2/energy_force/unittest.out b/test/unittests/cp2k_2.6.2/energy_force/unittest.out
index 0a03d03..9cbb501 100644
--- a/test/unittests/cp2k_2.6.2/energy_force/unittest.out
+++ b/test/unittests/cp2k_2.6.2/energy_force/unittest.out
@@ -9,10 +9,10 @@
  DBCSR| Communication thread load                                             87
 
 
-  **** **** ******  **  PROGRAM STARTED AT               2016-04-19 13:04:19.054
+  **** **** ******  **  PROGRAM STARTED AT               2016-04-21 11:16:59.995
  ***** ** ***  *** **   PROGRAM STARTED ON                   lauri-Lenovo-Z50-70
  **    ****   ******    PROGRAM STARTED BY                                 lauri
- ***** **    ** ** **   PROGRAM PROCESS ID                                 10277
+ ***** **    ** ** **   PROGRAM PROCESS ID                                  9923
   **** **  *******  **  PROGRAM STARTED IN /home/lauri/Dropbox/nomad-dev/nomad-l
                                            ab-base/parsers/cp2k/test/unittests/c
                                            p2k_2.6.2/energy_force
@@ -38,7 +38,7 @@
  GLOBAL| Run type                                                   ENERGY_FORCE
  GLOBAL| All-to-all communication in single precision                          F
  GLOBAL| FFTs using library dependent lengths                                  F
- GLOBAL| Global print level                                               MEDIUM
+ GLOBAL| Global print level                                                 HIGH
  GLOBAL| Total number of message passing processes                             1
  GLOBAL| Number of threads for this process                                    1
  GLOBAL| This output is from process                                           0
@@ -46,12 +46,12 @@
  MEMORY| system memory details [Kb]
  MEMORY|                        rank 0           min           max       average
  MEMORY| MemTotal              8070380       8070380       8070380       8070380
- MEMORY| MemFree               3211476       3211476       3211476       3211476
- MEMORY| Buffers                878968        878968        878968        878968
- MEMORY| Cached                1918964       1918964       1918964       1918964
- MEMORY| Slab                   464628        464628        464628        464628
- MEMORY| SReclaimable           424272        424272        424272        424272
- MEMORY| MemLikelyFree         6433680       6433680       6433680       6433680
+ MEMORY| MemFree               2667660       2667660       2667660       2667660
+ MEMORY| Buffers                889632        889632        889632        889632
+ MEMORY| Cached                1940508       1940508       1940508       1940508
+ MEMORY| Slab                   513132        513132        513132        513132
+ MEMORY| SReclaimable           470984        470984        470984        470984
+ MEMORY| MemLikelyFree         5968784       5968784       5968784       5968784
 
 
  *** Fundamental physical constants (SI units) ***
@@ -107,6 +107,13 @@
  CELL_TOP| Angle (a,b), gamma [degree]:                                   90.000
  CELL_TOP| Numerically orthorhombic:                                         YES
 
+
+ SUBCELL GRID  INFO FOR THE NONBONDED NEIGHBOR LISTS
+
+    NUMBER OF SUBCELLS             ::                   2         2         2
+    NUMBER OF PERIODIC      IMAGES ::                   1         1         1
+    NUMBER OF INTERACTING SUBCELLS ::                   2         2         2
+
  GENERATE|  Preliminary Number of Bonds generated:                             0
  GENERATE|  Achieved consistency in connectivity generation.
 
@@ -147,6 +154,79 @@
  **                                                                           **
  *******************************************************************************
 
+ RADII: ORBITAL BASIS in angstrom            Kind   Label     Radius  OCE Radius
+                                                1   Si      7.289139    7.289139
+
+ RADII: SHELL SETS OF ORBITAL BASIS in angstrom   Kind  Label   Set       Radius
+                                                     1  Si        1     7.289139
+                                                                  2     3.018919
+
+ RADII: PRIMITIVE GAUSSIANS OF ORBITAL BASIS in anKindomLabel   Set       Radius
+                                                     1  Si        1     1.540830
+                                                                        2.581331
+                                                                        4.306488
+                                                                        7.289139
+                                                     1  Si        2     3.018919
+
+ RADII: GEMINAL BASIS in angstrom                     Kind   Label       Radius
+                                                          1   Si        no basis
+
+ RADII: SHELL SETS OF GEMINAL BASIS in angstrom   Kind  Label   Set       Radius
+                                                     1   Si             no basis
+
+ RADII: PRIMITIVE GEMINALS OF GEMINAL BASIS in angKindm Label   Set       Radius
+                                                     1   Si             no basis
+
+ RADII: AUXILLIARY BASIS in angstrom         Kind   Label     Radius  OCE Radius
+                                                          1   Si        no basis
+
+ RADII: SHELL SETS OF AUXILLIARY BASIS in angstromKind  Label   Set       Radius
+                                                     1   Si             no basis
+
+ RADII: PRIMITIVE GAUSSIANS OF AUXILLIARY BASIS inKindstLabel   Set       Radius
+                                                     1   Si             no basis
+
+ RADII: LOCAL RI BASIS in angstrom           Kind   Label     Radius  OCE Radius
+                                                          1   Si        no basis
+
+ RADII: SHELL SETS OF LOCAL RI BASIS in angstrom  Kind  Label   Set       Radius
+                                                     1   Si             no basis
+
+ RADII: PRIMITIVE GAUSSIANS OF LOCAL RI BASIS in aKindroLabel   Set       Radius
+                                                     1   Si             no basis
+
+ RADII: CORE CHARGE DISTRIBUTIONS in angstrom          Kind   Label       Radius
+                                                          1   Si        1.764766
+
+ RADII: LOCAL PART OF GTH/ELP PP in angstrom           Kind   Label       Radius
+                                                          1   Si        0.845813
+
+ RADII: NON-LOCAL PART OF GTH PP in angstrom           Kind   Label       Radius
+                                                          1   Si        1.379482
+
+ RADII: ONE CENTER PROJECTORS in angstrom              Kind   Label       Radius
+
+ DISTRIBUTION OF THE MOLECULES                    Process    Number of molecules
+                                                        0                      8
+                                                      Sum                      8
+
+  Process   Kind   Local molecules (global indices)
+        0      1         1
+               2         2
+               3         3
+               4         4
+               5         5
+               6         6
+               7         7
+               8         8
+
+ DISTRIBUTION OF THE PARTICLES                    Process    Number of particles
+                                                        0                      8
+                                                      Sum                      8
+
+  Process   Kind   Local particles (global indices)
+        0      1        1     2     3     4     5     6     7     8
+
  DFT| Spin restricted Kohn-Sham (RKS) calculation                            RKS
  DFT| Multiplicity                                                             1
  DFT| Number of spin states                                                    1
@@ -303,6 +383,8 @@
 
 
 
+ REQUESTED STRUCTURE DATA
+
 
  SCF PARAMETERS         Density guess:                                    ATOMIC
                         --------------------------------------------------------
@@ -391,6 +473,29 @@
                         0                        8                            -1
                       Sum                        8                            -1
 
+ <distribution_2d> {      id_nr=         1      ref_count=         1,
+    n_row_distribution=              8,
+      row_distribution= (     0,     0,     0,     0,     0,     0,     0,     0,),
+    n_col_distribution=              8,
+      col_distribution= (     0,     0,     0,     0,     0,     0,     0,     0,),
+    n_local_rows= (     8,),
+      local_rows=(
+(      1,     2,     3,     4,     5,
+     6,     7,     8 )
+ ),
+    n_local_cols= (     8,),
+      local_cols=(
+(      1,     2,     3,     4,     5,
+     6,     7,     8 )
+ ),
+    blacs_env=  group=         0, ref_count=         5,
+  mepos=(       0,       0),
+  num_pe=(       1,       1),
+  blacs2mpi=      0
+  para_env=<cp_para_env id=     0>,
+  my_pid=         0, n_pid=         1 }
+ }
+
  DISTRIBUTION OF THE NEIGHBOR LISTS
               Total number of particle pairs:                               2952
               Total number of matrix elements:                            498888
@@ -408,6 +513,8 @@
               Average number of matrix elements per CPU:                    6094
               Maximum number of matrix elements per CPU:                    6094
 
+ Initializing the DDAPC Environment
+
  Number of electrons:                                                         32
  Number of occupied orbitals:                                                 16
  Number of molecular orbitals:                                                16
@@ -478,6 +585,13 @@
   Total charge density on r-space grids:       -0.0000000043
   Total charge density g-space grids:          -0.0000000043
 
+
+  Core Hamiltonian energy:                                         17.2606520455
+  Hartree energy:                                                  42.0267986132
+  Exchange-correlation energy:                                     -9.4555961214
+  Coulomb (electron-electron) energy:                               1.8994070931
+        Maximum deviation from MO S-orthonormality                    0.1000E+01
+        Minimum/Maximum MO magnitude              0.0000E+00          0.0000E+00
      1 NoMix/Diag. 0.40E+00    0.9     0.75558724       -32.2320848878 -3.22E+01
 
   Trace(PS):                                   32.0000000000
@@ -486,6 +600,13 @@
   Total charge density on r-space grids:       -0.0000000017
   Total charge density g-space grids:          -0.0000000017
 
+
+  Core Hamiltonian energy:                                         18.3474682194
+  Hartree energy:                                                  42.1175796106
+  Exchange-correlation energy:                                     -9.5429219531
+  Coulomb (electron-electron) energy:                               2.1318687193
+        Maximum deviation from MO S-orthonormality                    0.1998E-14
+        Minimum/Maximum MO magnitude              0.6228E+00          0.1890E+01
      2 Broy./Diag. 0.40E+00    1.4     0.05667976       -31.1418135481  1.09E+00
 
   Trace(PS):                                   32.0000000000
@@ -494,6 +615,13 @@
   Total charge density on r-space grids:        0.0000000033
   Total charge density g-space grids:           0.0000000033
 
+
+  Core Hamiltonian energy:                                         18.2312708091
+  Hartree energy:                                                  42.3503780825
+  Exchange-correlation energy:                                     -9.7151098081
+  Coulomb (electron-electron) energy:                               2.5340985498
+        Maximum deviation from MO S-orthonormality                    0.2220E-14
+        Minimum/Maximum MO magnitude              0.5994E+00          0.2050E+01
      3 Broy./Diag. 0.40E+00    1.4     0.09691469       -31.1974003416 -5.56E-02
 
   Trace(PS):                                   32.0000000000
@@ -502,6 +630,13 @@
   Total charge density on r-space grids:        0.0000000042
   Total charge density g-space grids:           0.0000000042
 
+
+  Core Hamiltonian energy:                                         18.0592667329
+  Hartree energy:                                                  42.3803701993
+  Exchange-correlation energy:                                     -9.7135449111
+  Coulomb (electron-electron) energy:                               2.5282191572
+        Maximum deviation from MO S-orthonormality                    0.2220E-14
+        Minimum/Maximum MO magnitude              0.5666E+00          0.2348E+01
      4 Broy./Diag. 0.40E+00    1.4     0.00245608       -31.3378474040 -1.40E-01
 
   Trace(PS):                                   32.0000000000
@@ -510,6 +645,13 @@
   Total charge density on r-space grids:        0.0000000051
   Total charge density g-space grids:           0.0000000051
 
+
+  Core Hamiltonian energy:                                         18.0647145020
+  Hartree energy:                                                  42.4121545902
+  Exchange-correlation energy:                                     -9.7138951069
+  Coulomb (electron-electron) energy:                               2.5264107289
+        Maximum deviation from MO S-orthonormality                    0.2442E-14
+        Minimum/Maximum MO magnitude              0.5678E+00          0.2340E+01
      5 Broy./Diag. 0.40E+00    1.4     0.00235460       -31.3009654398  3.69E-02
 
   Trace(PS):                                   32.0000000000
@@ -518,6 +660,13 @@
   Total charge density on r-space grids:        0.0000000051
   Total charge density g-space grids:           0.0000000051
 
+
+  Core Hamiltonian energy:                                         18.0687450544
+  Hartree energy:                                                  42.4120460503
+  Exchange-correlation energy:                                     -9.7140675731
+  Coulomb (electron-electron) energy:                               2.5267629790
+        Maximum deviation from MO S-orthonormality                    0.2220E-14
+        Minimum/Maximum MO magnitude              0.5688E+00          0.2335E+01
      6 Broy./Diag. 0.40E+00    1.4     0.00007565       -31.2972158934  3.75E-03
 
   Trace(PS):                                   32.0000000000
@@ -526,6 +675,13 @@
   Total charge density on r-space grids:        0.0000000050
   Total charge density g-space grids:           0.0000000050
 
+
+  Core Hamiltonian energy:                                         18.0686754393
+  Hartree energy:                                                  42.4117950535
+  Exchange-correlation energy:                                     -9.7142604426
+  Coulomb (electron-electron) energy:                               2.5271673228
+        Maximum deviation from MO S-orthonormality                    0.1998E-14
+        Minimum/Maximum MO magnitude              0.5688E+00          0.2336E+01
      7 Broy./Diag. 0.40E+00    1.4     0.00009004       -31.2977293749 -5.13E-04
 
   Trace(PS):                                   32.0000000000
@@ -534,6 +690,13 @@
   Total charge density on r-space grids:        0.0000000051
   Total charge density g-space grids:           0.0000000051
 
+
+  Core Hamiltonian energy:                                         18.0685872217
+  Hartree energy:                                                  42.4117665962
+  Exchange-correlation energy:                                     -9.7142598092
+  Coulomb (electron-electron) energy:                               2.5271694810
+        Maximum deviation from MO S-orthonormality                    0.1554E-14
+        Minimum/Maximum MO magnitude              0.5688E+00          0.2336E+01
      8 Broy./Diag. 0.40E+00    1.4     0.00000186       -31.2978454163 -1.16E-04
 
   Trace(PS):                                   32.0000000000
@@ -542,6 +705,13 @@
   Total charge density on r-space grids:        0.0000000051
   Total charge density g-space grids:           0.0000000051
 
+
+  Core Hamiltonian energy:                                         18.0685858541
+  Hartree energy:                                                  42.4117283490
+  Exchange-correlation energy:                                     -9.7142583272
+  Coulomb (electron-electron) energy:                               2.5271711411
+        Maximum deviation from MO S-orthonormality                    0.1998E-14
+        Minimum/Maximum MO magnitude              0.5688E+00          0.2336E+01
      9 Broy./Diag. 0.40E+00    1.4     0.00000252       -31.2978835492 -3.81E-05
 
   Trace(PS):                                   32.0000000000
@@ -550,6 +720,13 @@
   Total charge density on r-space grids:        0.0000000051
   Total charge density g-space grids:           0.0000000051
 
+
+  Core Hamiltonian energy:                                         18.0685842971
+  Hartree energy:                                                  42.4117282458
+  Exchange-correlation energy:                                     -9.7142583232
+  Coulomb (electron-electron) energy:                               2.5271711399
+        Maximum deviation from MO S-orthonormality                    0.1776E-14
+        Minimum/Maximum MO magnitude              0.5688E+00          0.2336E+01
     10 Broy./Diag. 0.40E+00    1.4     5.6405E-09       -31.2978852054 -1.66E-06
 
   *** SCF run converged in    10 steps ***
@@ -565,9 +742,15 @@
   Core Hamiltonian energy:                                     18.06858429706012
   Hartree energy:                                              42.41172824581675
   Exchange-correlation energy:                                 -9.71425832315954
+  Coulomb Electron-Electron Interaction Energy 
+  - Already included in the total Hartree term                  2.52717113991578
 
   Total energy:                                               -31.29788520535767
 
+ The electron density is written in cube file format to the file:
+
+ Si_bulk8-ELECTRON_DENSITY-1_0.cube
+
 
  MULLIKEN POPULATION ANALYSIS
 
@@ -598,6 +781,64 @@
 
   Total Charge                                                            -0.000
  !-----------------------------------------------------------------------------!
+  Electronic kinetic energy:                                  13.31525592466418
+
+
+ LOWDIN POPULATION ANALYSIS
+
+ *** 11:17:16 WARNING in population_analyses:lowdin_population_analysis :: ***
+ *** Overlap matrix exhibits linear dependencies. At least some            ***
+ *** eigenvalues have been quenched.                                       ***
+
+
+ #  Atom  Element  Kind  Atomic population                Net charge
+       1     Si       1          4.000000                 -0.000000
+       2     Si       1          4.000000                  0.000000
+       3     Si       1          4.000000                  0.000000
+       4     Si       1          4.000000                  0.000000
+       5     Si       1          4.000000                 -0.000000
+       6     Si       1          4.000000                  0.000000
+       7     Si       1          4.000000                 -0.000000
+       8     Si       1          4.000000                 -0.000000
+ # Total charge                 32.000000                  0.000000
+
+  DDAP FULL DENSITY charges:
+  Atom     |    Charge
+
+     1  Si   -0.000000
+     2  Si    0.000000
+     3  Si    0.000000
+     4  Si    0.000000
+     5  Si    0.000000
+     6  Si    0.000000
+     7  Si    0.000000
+     8  Si    0.000000
+  Total       0.000000
+
+
+ ELECTRIC/MAGNETIC MOMENTS
+  Reference Point [Bohr]           0.00000000    0.00000000    0.00000000
+  Charges
+    Electronic=     32.00000000    Core=   -32.00000000    Total=      0.00000000
+  Dipole vectors are based on the periodic (Berry phase) operator.
+  They are defined modulo integer multiples of the cell matrix [Debye].
+  [X] [   26.08474943     0.00000000     0.00000000 ] [i]
+  [Y]=[    0.00000000    26.08474943     0.00000000 ]*[j]
+  [Z] [    0.00000000     0.00000000    26.08474943 ] [k]
+  Dipole moment [Debye]
+    X=   -0.00000003 Y=   -0.00000003 Z=   -0.00000002     Total=      0.00000004
+  
+  Eigenvalues of the occupied subspace spin            1
+ ---------------------------------------------
+      -0.24280735      -0.09103786      -0.09103786      -0.09103786
+      -0.09103785      -0.09103785      -0.09103785       0.09085421
+       0.09085421       0.09085421       0.09085422       0.09085422
+       0.09085422       0.20028206       0.20028206       0.20028207
+ Fermi Energy [eV] :    5.449952
+  
+  Lowest eigenvalues of the unoccupied subspace spin            1
+ ---------------------------------------------
+
 
   Trace(PS):                                   32.0000000000
   Electronic density on regular grids:        -31.9999999889        0.0000000111
@@ -606,6 +847,194 @@
   Total charge density g-space grids:           0.0000000051
 
 
+  Core Hamiltonian energy:                                         18.0685842936
+  Hartree energy:                                                  42.4117280752
+  Exchange-correlation energy:                                     -9.7142583166
+  Coulomb (electron-electron) energy:                               2.5271711387
+
+
+ FORCES [a.u.]
+
+  Atom    Kind        Component        X           Y           Z
+
+     1       1          overlap     -0.000000   -0.000000   -0.000000
+     1       1     overlap_admm      0.000000    0.000000    0.000000
+     1       1          kinetic      0.000000    0.000000    0.000000
+     1       1          gth_ppl     -0.000000   -0.000000   -0.000000
+     1       1         gth_nlcc      0.000000    0.000000    0.000000
+     1       1         gth_ppnl      0.000000    0.000000    0.000000
+     1       1     core_overlap     -0.000000   -0.000000   -0.000000
+     1       1         rho_core     -0.000000   -0.000000   -0.000000
+     1       1         rho_elec     -0.000000   -0.000000   -0.000000
+     1       1         rho_lri_el    0.000000    0.000000    0.000000
+     1       1         ch_pulay      0.000000    0.000000    0.000000
+     1       1       dispersion      0.000000    0.000000    0.000000
+     1       1            other      0.000000    0.000000    0.000000
+     1       1          fock_4c      0.000000    0.000000    0.000000
+     1       1           hfx_ri      0.000000    0.000000    0.000000
+     1       1        ehrenfest      0.000000    0.000000    0.000000
+     1       1           efield      0.000000    0.000000    0.000000
+     1       1              eev      0.000000    0.000000    0.000000
+     1       1      mp2_non_sep      0.000000    0.000000    0.000000
+     1       1          mp2_sep      0.000000    0.000000    0.000000
+     1       1            total     -0.000000   -0.000000   -0.000000
+
+     2       1          overlap      0.000000   -0.000000   -0.000000
+     2       1     overlap_admm      0.000000    0.000000    0.000000
+     2       1          kinetic     -0.000000   -0.000000   -0.000000
+     2       1          gth_ppl      0.000000    0.000000    0.000000
+     2       1         gth_nlcc      0.000000    0.000000    0.000000
+     2       1         gth_ppnl     -0.000000   -0.000000   -0.000000
+     2       1     core_overlap      0.000000   -0.000000   -0.000000
+     2       1         rho_core     -0.000000    0.000000    0.000000
+     2       1         rho_elec      0.000000    0.000000    0.000000
+     2       1         rho_lri_el    0.000000    0.000000    0.000000
+     2       1         ch_pulay      0.000000    0.000000    0.000000
+     2       1       dispersion      0.000000    0.000000    0.000000
+     2       1            other      0.000000    0.000000    0.000000
+     2       1          fock_4c      0.000000    0.000000    0.000000
+     2       1           hfx_ri      0.000000    0.000000    0.000000
+     2       1        ehrenfest      0.000000    0.000000    0.000000
+     2       1           efield      0.000000    0.000000    0.000000
+     2       1              eev      0.000000    0.000000    0.000000
+     2       1      mp2_non_sep      0.000000    0.000000    0.000000
+     2       1          mp2_sep      0.000000    0.000000    0.000000
+     2       1            total     -0.000000   -0.000000   -0.000000
+
+     3       1          overlap     -0.000000   -0.000000    0.000000
+     3       1     overlap_admm      0.000000    0.000000    0.000000
+     3       1          kinetic     -0.000000    0.000000   -0.000000
+     3       1          gth_ppl      0.000000    0.000000    0.000000
+     3       1         gth_nlcc      0.000000    0.000000    0.000000
+     3       1         gth_ppnl     -0.000000   -0.000000   -0.000000
+     3       1     core_overlap     -0.000000   -0.000000    0.000000
+     3       1         rho_core      0.000000    0.000000   -0.000000
+     3       1         rho_elec      0.000000   -0.000000    0.000000
+     3       1         rho_lri_el    0.000000    0.000000    0.000000
+     3       1         ch_pulay      0.000000    0.000000    0.000000
+     3       1       dispersion      0.000000    0.000000    0.000000
+     3       1            other      0.000000    0.000000    0.000000
+     3       1          fock_4c      0.000000    0.000000    0.000000
+     3       1           hfx_ri      0.000000    0.000000    0.000000
+     3       1        ehrenfest      0.000000    0.000000    0.000000
+     3       1           efield      0.000000    0.000000    0.000000
+     3       1              eev      0.000000    0.000000    0.000000
+     3       1      mp2_non_sep      0.000000    0.000000    0.000000
+     3       1          mp2_sep      0.000000    0.000000    0.000000
+     3       1            total     -0.000000   -0.000000   -0.000000
+
+     4       1          overlap     -0.000000    0.000000   -0.000000
+     4       1     overlap_admm      0.000000    0.000000    0.000000
+     4       1          kinetic     -0.000000   -0.000000   -0.000000
+     4       1          gth_ppl      0.000000    0.000000    0.000000
+     4       1         gth_nlcc      0.000000    0.000000    0.000000
+     4       1         gth_ppnl     -0.000000   -0.000000   -0.000000
+     4       1     core_overlap     -0.000000    0.000000   -0.000000
+     4       1         rho_core      0.000000   -0.000000    0.000000
+     4       1         rho_elec      0.000000    0.000000    0.000000
+     4       1         rho_lri_el    0.000000    0.000000    0.000000
+     4       1         ch_pulay      0.000000    0.000000    0.000000
+     4       1       dispersion      0.000000    0.000000    0.000000
+     4       1            other      0.000000    0.000000    0.000000
+     4       1          fock_4c      0.000000    0.000000    0.000000
+     4       1           hfx_ri      0.000000    0.000000    0.000000
+     4       1        ehrenfest      0.000000    0.000000    0.000000
+     4       1           efield      0.000000    0.000000    0.000000
+     4       1              eev      0.000000    0.000000    0.000000
+     4       1      mp2_non_sep      0.000000    0.000000    0.000000
+     4       1          mp2_sep      0.000000    0.000000    0.000000
+     4       1            total     -0.000000   -0.000000   -0.000000
+
+     5       1          overlap      0.000000   -0.000000    0.000000
+     5       1     overlap_admm      0.000000    0.000000    0.000000
+     5       1          kinetic     -0.000000    0.000000   -0.000000
+     5       1          gth_ppl     -0.000000   -0.000000    0.000000
+     5       1         gth_nlcc      0.000000    0.000000    0.000000
+     5       1         gth_ppnl      0.000000    0.000000   -0.000000
+     5       1     core_overlap      0.000000    0.000000    0.000000
+     5       1         rho_core      0.000000   -0.000000    0.000000
+     5       1         rho_elec      0.000000   -0.000000    0.000000
+     5       1         rho_lri_el    0.000000    0.000000    0.000000
+     5       1         ch_pulay      0.000000    0.000000    0.000000
+     5       1       dispersion      0.000000    0.000000    0.000000
+     5       1            other      0.000000    0.000000    0.000000
+     5       1          fock_4c      0.000000    0.000000    0.000000
+     5       1           hfx_ri      0.000000    0.000000    0.000000
+     5       1        ehrenfest      0.000000    0.000000    0.000000
+     5       1           efield      0.000000    0.000000    0.000000
+     5       1              eev      0.000000    0.000000    0.000000
+     5       1      mp2_non_sep      0.000000    0.000000    0.000000
+     5       1          mp2_sep      0.000000    0.000000    0.000000
+     5       1            total      0.000000    0.000000    0.000000
+
+     6       1          overlap     -0.000000   -0.000000   -0.000000
+     6       1     overlap_admm      0.000000    0.000000    0.000000
+     6       1          kinetic      0.000000    0.000000    0.000000
+     6       1          gth_ppl     -0.000000   -0.000000   -0.000000
+     6       1         gth_nlcc      0.000000    0.000000    0.000000
+     6       1         gth_ppnl      0.000000    0.000000    0.000000
+     6       1     core_overlap      0.000000    0.000000    0.000000
+     6       1         rho_core     -0.000000   -0.000000   -0.000000
+     6       1         rho_elec     -0.000000   -0.000000   -0.000000
+     6       1         rho_lri_el    0.000000    0.000000    0.000000
+     6       1         ch_pulay      0.000000    0.000000    0.000000
+     6       1       dispersion      0.000000    0.000000    0.000000
+     6       1            other      0.000000    0.000000    0.000000
+     6       1          fock_4c      0.000000    0.000000    0.000000
+     6       1           hfx_ri      0.000000    0.000000    0.000000
+     6       1        ehrenfest      0.000000    0.000000    0.000000
+     6       1           efield      0.000000    0.000000    0.000000
+     6       1              eev      0.000000    0.000000    0.000000
+     6       1      mp2_non_sep      0.000000    0.000000    0.000000
+     6       1          mp2_sep      0.000000    0.000000    0.000000
+     6       1            total      0.000000    0.000000    0.000000
+
+     7       1          overlap      0.000000    0.000000    0.000000
+     7       1     overlap_admm      0.000000    0.000000    0.000000
+     7       1          kinetic      0.000000   -0.000000   -0.000000
+     7       1          gth_ppl     -0.000000    0.000000   -0.000000
+     7       1         gth_nlcc      0.000000    0.000000    0.000000
+     7       1         gth_ppnl      0.000000   -0.000000    0.000000
+     7       1     core_overlap      0.000000    0.000000    0.000000
+     7       1         rho_core     -0.000000    0.000000    0.000000
+     7       1         rho_elec     -0.000000    0.000000    0.000000
+     7       1         rho_lri_el    0.000000    0.000000    0.000000
+     7       1         ch_pulay      0.000000    0.000000    0.000000
+     7       1       dispersion      0.000000    0.000000    0.000000
+     7       1            other      0.000000    0.000000    0.000000
+     7       1          fock_4c      0.000000    0.000000    0.000000
+     7       1           hfx_ri      0.000000    0.000000    0.000000
+     7       1        ehrenfest      0.000000    0.000000    0.000000
+     7       1           efield      0.000000    0.000000    0.000000
+     7       1              eev      0.000000    0.000000    0.000000
+     7       1      mp2_non_sep      0.000000    0.000000    0.000000
+     7       1          mp2_sep      0.000000    0.000000    0.000000
+     7       1            total      0.000000    0.000000    0.000000
+
+     8       1          overlap      0.000000    0.000000   -0.000000
+     8       1     overlap_admm      0.000000    0.000000    0.000000
+     8       1          kinetic     -0.000000   -0.000000    0.000000
+     8       1          gth_ppl     -0.000000    0.000000   -0.000000
+     8       1         gth_nlcc      0.000000    0.000000    0.000000
+     8       1         gth_ppnl      0.000000   -0.000000    0.000000
+     8       1     core_overlap      0.000000    0.000000    0.000000
+     8       1         rho_core      0.000000    0.000000   -0.000000
+     8       1         rho_elec      0.000000    0.000000    0.000000
+     8       1         rho_lri_el    0.000000    0.000000    0.000000
+     8       1         ch_pulay      0.000000    0.000000    0.000000
+     8       1       dispersion      0.000000    0.000000    0.000000
+     8       1            other      0.000000    0.000000    0.000000
+     8       1          fock_4c      0.000000    0.000000    0.000000
+     8       1           hfx_ri      0.000000    0.000000    0.000000
+     8       1        ehrenfest      0.000000    0.000000    0.000000
+     8       1           efield      0.000000    0.000000    0.000000
+     8       1              eev      0.000000    0.000000    0.000000
+     8       1      mp2_non_sep      0.000000    0.000000    0.000000
+     8       1          mp2_sep      0.000000    0.000000    0.000000
+     8       1            total      0.000000    0.000000    0.000000
+
+  Sum of total                       0.000000    0.000000    0.000000
+
  ENERGY| Total FORCE_EVAL ( QS ) energy (a.u.):              -31.297885372811063
 
 
@@ -622,28 +1051,39 @@
       8      1      Si         -0.00000001    -0.00000001    -0.00000001
  SUM OF ATOMIC FORCES          -0.00000000    -0.00000000    -0.00000000     0.00000000
 
+
+ *************************************************************************
+ *** WARNING in force_env_calc_energy_force (MODULE force_env_methods) ***
+ *************************************************************************
+
+ *** To print the stress tensor switch on the virial evaluation with the ***
+ *** keyword: STRESS_TENSOR                                              ***
+
  -------------------------------------------------------------------------------
  -                                                                             -
  -                                DBCSR STATISTICS                             -
  -                                                                             -
  -------------------------------------------------------------------------------
  COUNTER                                      CPU                  ACC      ACC%
- number of processed stacks                    11                    0       0.0
+ number of processed stacks                    29                    0       0.0
  matmuls inhomo. stacks                         0                    0       0.0
- matmuls total                                396                    0       0.0
+ matmuls total                               1676                    0       0.0
+ flops  13 x    8 x   13                   173056                    0       0.0
+ flops  13 x   32 x   13                  2076672                    0       0.0
  flops  13 x   13 x   16                  2141568                    0       0.0
- flops total                              2141568                    0       0.0
- marketing flops                          3807232
+ flops  13 x   16 x   13                  5537792                    0       0.0
+ flops total                              9929088                    0       0.0
+ marketing flops                         11594752
  -------------------------------------------------------------------------------
 
  -------------------------------------------------------------------------------
  ----                             MULTIGRID INFO                            ----
  -------------------------------------------------------------------------------
  count for grid        1:            360          cutoff [a.u.]          150.00
- count for grid        2:           4516          cutoff [a.u.]           50.00
- count for grid        3:           7804          cutoff [a.u.]           16.67
- count for grid        4:           3048          cutoff [a.u.]            5.56
- total gridlevel count  :          15728
+ count for grid        2:           4524          cutoff [a.u.]           50.00
+ count for grid        3:           7820          cutoff [a.u.]           16.67
+ count for grid        4:           3064          cutoff [a.u.]            5.56
+ total gridlevel count  :          15768
 
  -------------------------------------------------------------------------------
  -                                                                             -
@@ -653,14 +1093,14 @@
 
  ROUTINE             CALLS  TOT TIME [s]  AVE VOLUME [Bytes]  PERFORMANCE [MB/s]
  MP_Group                5         0.000
- MP_Bcast               12         0.016                  5.                0.00
- MP_Allreduce          171         0.000                 42.               30.47
- MP_Sync                 4         0.000
- MP_Alltoall           183         0.000              15743.             6691.06
- MP_Wait               264         0.000
- MP_ISend               88         0.001              13472.              872.54
- MP_IRecv               88         0.000              13472.            11472.52
- MP_Memory             264         0.000
+ MP_Bcast               15         0.010                  7.                0.01
+ MP_Allreduce          256         0.000                 52.               45.82
+ MP_Sync              6308         0.000
+ MP_Alltoall           462         0.000              11970.            11741.11
+ MP_Wait               672         0.000
+ MP_ISend              224         0.001              37354.             6126.00
+ MP_IRecv              224         0.000              37354.            17942.46
+ MP_Memory             604         0.000
  -------------------------------------------------------------------------------
 
 
@@ -731,35 +1171,34 @@
  -------------------------------------------------------------------------------
  SUBROUTINE                       CALLS  ASD         SELF TIME        TOTAL TIME
                                 MAXIMUM       AVERAGE  MAXIMUM  AVERAGE  MAXIMUM
- CP2K                                 1  1.0    0.057    0.057   17.482   17.482
- qs_forces                            1  2.0    0.001    0.001   16.988   16.988
- qs_energies_scf                      1  3.0    0.018    0.018   15.160   15.160
- scf_env_do_scf                       1  4.0    0.000    0.000   13.773   13.773
- scf_env_do_scf_inner_loop           10  5.0    0.003    0.003   13.773   13.773
- rebuild_ks_matrix                   11  6.7    0.000    0.000    9.107    9.107
- qs_ks_build_kohn_sham_matrix        11  7.7    0.002    0.002    9.107    9.107
- sum_up_and_integrate                11  8.7    0.004    0.004    8.808    8.808
- integrate_v_rspace                  11  9.7    8.673    8.673    8.805    8.805
- qs_ks_update_qs_env                 10  6.0    0.000    0.000    7.978    7.978
- qs_rho_update_rho                   11  6.0    0.000    0.000    6.020    6.020
- calculate_rho_elec                  11  7.0    5.765    5.765    6.020    6.020
- qs_ks_update_qs_env_forces           1  3.0    0.000    0.000    1.129    1.129
- init_scf_run                         1  4.0    0.009    0.009    0.782    0.782
- scf_env_initial_rho_setup            1  5.0    0.017    0.017    0.700    0.700
- build_core_hamiltonian_matrix_       1  3.0    0.000    0.000    0.698    0.698
- fft_wrap_pw1pw2                    120  9.8    0.001    0.001    0.557    0.557
- qs_energies_init_hamiltonians        1  4.0    0.001    0.001    0.539    0.539
- fft_wrap_pw1pw2_150                 54 10.1    0.027    0.027    0.510    0.510
- build_core_hamiltonian_matrix        1  5.0    0.041    0.041    0.455    0.455
- fft3d_s                            121 11.7    0.339    0.339    0.407    0.407
- build_core_ppnl_forces               1  4.0    0.400    0.400    0.400    0.400
- quickstep_create_force_env           1  2.0    0.043    0.043    0.375    0.375
+ CP2K                                 1  1.0    0.048    0.048   17.498   17.498
+ qs_forces                            1  2.0    0.002    0.002   17.036   17.036
+ qs_energies_scf                      1  3.0    0.016    0.016   15.328   15.328
+ scf_env_do_scf                       1  4.0    0.000    0.000   13.772   13.772
+ scf_env_do_scf_inner_loop           10  5.0    0.013    0.013   13.772   13.772
+ rebuild_ks_matrix                   11  6.7    0.000    0.000    9.067    9.067
+ qs_ks_build_kohn_sham_matrix        11  7.7    0.003    0.003    9.067    9.067
+ sum_up_and_integrate                11  8.7    0.003    0.003    8.708    8.708
+ integrate_v_rspace                  11  9.7    8.581    8.581    8.705    8.705
+ qs_ks_update_qs_env                 10  6.0    0.000    0.000    8.001    8.001
+ qs_rho_update_rho                   11  6.0    0.000    0.000    5.950    5.950
+ calculate_rho_elec                  11  7.0    5.713    5.713    5.950    5.950
+ qs_ks_update_qs_env_forces           1  3.0    0.000    0.000    1.067    1.067
+ init_scf_run                         1  4.0    0.001    0.001    0.740    0.740
+ scf_env_initial_rho_setup            1  5.0    0.001    0.001    0.681    0.681
+ build_core_hamiltonian_matrix_       1  3.0    0.000    0.000    0.640    0.640
+ fft_wrap_pw1pw2                    132  9.6    0.001    0.001    0.605    0.605
+ fft_wrap_pw1pw2_150                 63  9.8    0.033    0.033    0.558    0.558
+ fft3d_s                            133 11.5    0.383    0.383    0.450    0.450
+ scf_post_calculation_gpw             1  4.0    0.000    0.000    0.447    0.447
+ quickstep_create_force_env           1  2.0    0.069    0.069    0.353    0.353
+ qs_energies_init_hamiltonians        1  4.0    0.000    0.000    0.351    0.351
  -------------------------------------------------------------------------------
 
-  **** **** ******  **  PROGRAM ENDED AT                 2016-04-19 13:04:37.223
+  **** **** ******  **  PROGRAM ENDED AT                 2016-04-21 11:17:18.146
  ***** ** ***  *** **   PROGRAM RAN ON                       lauri-Lenovo-Z50-70
  **    ****   ******    PROGRAM RAN BY                                     lauri
- ***** **    ** ** **   PROGRAM PROCESS ID                                 10277
+ ***** **    ** ** **   PROGRAM PROCESS ID                                  9923
   **** **  *******  **  PROGRAM STOPPED IN /home/lauri/Dropbox/nomad-dev/nomad-l
                                            ab-base/parsers/cp2k/test/unittests/c
                                            p2k_2.6.2/energy_force
diff --git a/test/unittests/cp2k_2.6.2/run_tests.py b/test/unittests/cp2k_2.6.2/run_tests.py
index a27dfe7..dd17a51 100644
--- a/test/unittests/cp2k_2.6.2/run_tests.py
+++ b/test/unittests/cp2k_2.6.2/run_tests.py
@@ -50,19 +50,35 @@ class TestXCFunctional(unittest.TestCase):
 
     def test_pade(self):
         xc = get_result("XC_functional/pade", "XC_functional")
-        self.assertEqual(xc, "LDA_XC_TETER93")
+        self.assertEqual(xc, "1*LDA_XC_TETER93")
 
     def test_lda(self):
         xc = get_result("XC_functional/lda", "XC_functional")
-        self.assertEqual(xc, "LDA_XC_TETER93")
-
-    def test_becke88(self):
-        xc = get_result("XC_functional/becke88", "XC_functional")
-        self.assertEqual(xc, "GGA_X_B88")
+        self.assertEqual(xc, "1*LDA_XC_TETER93")
 
     def test_blyp(self):
         xc = get_result("XC_functional/blyp", "XC_functional")
-        self.assertEqual(xc, "GGA_C_LYP_GGA_X_B88")
+        self.assertEqual(xc, "1*GGA_C_LYP+1*GGA_X_B88")
+
+    def test_b3lyp(self):
+        xc = get_result("XC_functional/b3lyp", "XC_functional")
+        self.assertEqual(xc, "1*HYB_GGA_XC_B3LYP")
+
+    def test_olyp(self):
+        xc = get_result("XC_functional/olyp", "XC_functional")
+        self.assertEqual(xc, "1*GGA_C_LYP+1*GGA_X_OPTX")
+
+    def test_hcth120(self):
+        xc = get_result("XC_functional/hcth120", "XC_functional")
+        self.assertEqual(xc, "1*GGA_XC_HCTH_120")
+
+    def test_pbe0(self):
+        xc = get_result("XC_functional/pbe0", "XC_functional")
+        self.assertEqual(xc, "1*HYB_GGA_XC_PBEH")
+
+    def test_pbe(self):
+        xc = get_result("XC_functional/pbe", "XC_functional")
+        self.assertEqual(xc, "1*GGA_C_PBE+1*GGA_X_PBE")
 
 
 #===============================================================================
@@ -104,11 +120,26 @@ class TestEnergyForce(unittest.TestCase):
         expected_result = convert_unit(np.array(-32.2320848878), "hartree")
         self.assertTrue(np.array_equal(energy_total[0], expected_result))
 
+    def test_energy_change_scf_iteration(self):
+        energy_change = self.results["energy_change_scf_iteration"]
+        expected_result = convert_unit(np.array(-3.22E+01), "hartree")
+        self.assertTrue(np.array_equal(energy_change[0], expected_result))
+
+    def test_energy_XC_scf_iteration(self):
+        result = self.results["energy_XC_scf_iteration"]
+        expected_result = convert_unit(np.array(-9.4555961214), "hartree")
+        self.assertTrue(np.array_equal(result[0], expected_result))
+
     def test_energy_total(self):
         energy_total = self.results["energy_total"]
         expected_result = convert_unit(np.array(-31.297885372811063), "hartree")
         self.assertTrue(np.array_equal(energy_total, expected_result))
 
+    def test_electronic_kinetic_energy(self):
+        result = self.results["electronic_kinetic_energy"]
+        expected_result = convert_unit(np.array(13.31525592466418), "hartree")
+        self.assertTrue(np.array_equal(result, expected_result))
+
     def test_atom_forces(self):
         atomic_forces = self.results["atom_forces"]
         expected_result = convert_unit(
-- 
GitLab