Commit 671ce31b authored by Lauri Himanen's avatar Lauri Himanen
Browse files

Added couple tests to see how the unittest package works.

parent 0622015a
#! /usr/bin/env python
# -*- coding: utf-8 -*-
from collections import defaultdict
from cp2kparser.generics.util import *
......@@ -54,6 +56,19 @@ class CP2KInputEngine(object):
def get_subsection(self, path, index=0):
return self.root_section.get_subsection(path, index)
def get_keyword(self, path, index=0):
split = path.rsplit('/', 1)
section_path = split[0]
keyword = split[1]
section = self.root_section.get_subsection(section_path, index)
if section is not None:
return section.get_keyword(keyword)
def get_parameter(self, path, index=0):
section = self.root_section.get_subsection(path, index)
if section is not None:
return section.get_parameter()
#===============================================================================
class InputSection(object):
......@@ -140,4 +155,6 @@ class InputSection(object):
return result
def get_parameter(self):
if self.params is None:
print_debug("The section '{}' has no parameters set".format(self.name))
return self.params
......@@ -5,6 +5,7 @@ import os
import time
from abc import ABCMeta, abstractmethod
from cp2kparser.generics.util import *
from pint import UnitRegistry
#===============================================================================
......@@ -130,6 +131,8 @@ class NomadParser(object):
else:
print_debug("Using cached result.")
# Do the conversion to SI units based on the given units
stop = time.clock()
print_debug("Elapsed time: {} ms".format((stop-start)*1000))
return result
......@@ -149,7 +152,10 @@ class NomadParser(object):
@abstractmethod
def parse_quantity(self, name):
"""Parse a quantity from the given files."""
"""Parse a quantity from the given files. Should return a tuple
containing the result object (numeric results preferably as numpy
arrays) and the unit of the result (None if no unit is needed)
"""
pass
@abstractmethod
......
import logging
#! /usr/bin/env python
# -*- coding: utf-8 -*-
import os
import json
from cp2kparser.implementation.parser import CP2KParser
......@@ -18,7 +19,7 @@ def scan_path_for_files(path):
extension = os.path.splitext(filename)[1]
if extension in extensions:
file_object = {
"path": filename,
"path": os.path.join(path, filename),
"file_id": "",
}
files.append(file_object)
......@@ -26,9 +27,8 @@ def scan_path_for_files(path):
#===============================================================================
def extract(path):
def get_parser(path):
files = scan_path_for_files(path)
logging.basicConfig(format='%(message)s', level=logging.DEBUG)
json_input = {
"version": "nomadparsein.json 1.0",
"tmpDir": "/home/lauri",
......@@ -37,8 +37,4 @@ def extract(path):
"files": files
}
parser = CP2KParser(json.dumps(json_input))
print parser.get_quantity("energy_total")
print parser.get_quantity("XC_functional")
print parser.get_quantity("particle_forces")
# n = len(parser.get_quantity("particle_forces"))
# print "Number of force configurations found: {}".format(n)
return parser
......@@ -15,6 +15,10 @@ from cp2kparser.engines.cp2kinputengine import CP2KInputEngine
class CP2KParser(NomadParser):
"""The interface for a NoMaD CP2K parser. All parsing actions will go
through this class.
The CP2K version 2.6.2 was used as a reference for this basic
implementation. For other versions there should be classes that extend from
this.
"""
def __init__(self, input_json_string):
......@@ -92,8 +96,8 @@ class CP2KParser(NomadParser):
# Now check from input what the other files are called
self.inputengine.parse_input()
force_path = self.inputengine.get_subsection("FORCE_EVAL/PRINT/FORCES").get_keyword("FILENAME")
if force_path and force_path != "__STD_OUT__":
force_path = self.inputengine.get_keyword("FORCE_EVAL/PRINT/FORCES/FILENAME")
if force_path is not None and force_path != "__STD_OUT__":
force_path = os.path.basename(force_path) + "-1_0"
# Check against the given files
......@@ -157,23 +161,68 @@ class CP2KImplementation(object):
return self.regexengine.parse(self.regexs.energy_total, self.parser.get_file_handle("output"))
def XC_functional(self):
"""Returns the type of the XC functional based on the value of the
extractor xc_shortcut
"""Returns the type of the XC functional.
Can currently only determine version if they are declared as parameters
for XC_FUNCTIONAL or via activating subsections of XC_FUNCTIONAL.
Returns:
A string containing the final result that should
belong to the list defined in NoMaD wiki.
Returns:
A string containing the final result that should
belong to the list defined in NoMaD wiki.
"""
# xc_shortcut = self.regexengine.parse(self.regexs.XC_functional, self.parser.get_file_handle("input"))
xc_shortcut = self.inputengine.get_subsection("FORCE_EVAL/DFT/XC/XC_FUNCTIONAL").get_parameter()
return {
'B3LYP': "HYB_GGA_XC_B3LYP",
'BEEFVDW': "",
'BLYP': "",
'PADE': "LDA_XC_TETER93",
'PBE': "GGA_X_PBE",
}.get(xc_shortcut, None)
# First try to look at the shortcut
xc_shortcut = self.inputengine.get_subsection("FORCE_EVAL/DFT/XC/XC_FUNCTIONAL").get_parameter()
if xc_shortcut is not None and xc_shortcut != "NONE" and xc_shortcut != "NO_SHORTCUT":
print_debug("Shortcut defined for XC_FUNCTIONAL")
# If PBE, check version
if xc_shortcut == "PBE":
pbe_version = self.inputengine.get_subsection("FORCE_EVAL/DFT/XC/XC_FUNCTIONAL/PBE").get_keyword("PARAMETRIZATION")
return {
'ORIG': "GGA_X_PBE",
'PBESOL': "GGA_X_PBE_SOL",
'REVPBE': "GGA_X_PBE_R",
}.get(pbe_version, "GGA_X_PBE")
return {
'B3LYP': "HYB_GGA_XC_B3LYP",
'BEEFVDW': None,
'BLYP': "GGA_C_LYP_GGA_X_B88",
'BP': None,
'HCTH120': None,
'OLYP': None,
'LDA': "LDA_XC_TETER93",
'PADE': "LDA_XC_TETER93",
'PBE0': None,
'TPSS': None,
}.get(xc_shortcut, None)
else:
print_debug("No shortcut defined for XC_FUNCTIONAL. Looking into subsections.")
# Look at the subsections and determine what part have been activated
# Becke88
xc_components = []
becke_88 = self.inputengine.get_subsection("FORCE_EVAL/DFT/XC/XC_FUNCTIONAL/BECKE88").get_parameter()
if becke_88 == "TRUE":
xc_components.append("GGA_X_B88")
# Becke 97
becke_97 = self.inputengine.get_parameter("FORCE_EVAL/DFT/XC/XC_FUNCTIONAL/BECKE97")
if becke_97 == "TRUE":
becke_97_param = self.inputengine.get_keyword("FORCE_EVAL/DFT/XC/XC_FUNCTIONAL/BECKE97/PARAMETRIZATION")
becke_97_result = {
'B97GRIMME': None,
'B97_GRIMME': None,
'ORIG': "GGA_XC_B97",
'WB97X-V': None,
}.get(becke_97_param, None)
if becke_97_result is not None:
xc_components.append(becke_97_result)
# Return an alphabetically sorted and joined list of the xc components
return "_".join(sorted(xc_components))
def particle_forces(self):
"""Return all the forces for every step found.
......@@ -199,6 +248,6 @@ class CP2KImplementation(object):
#===============================================================================
class CP2K_240_Implementation(CP2KImplementation):
class CP2K_262_Implementation(CP2KImplementation):
def __init__(self, parser):
CP2KImplementation.__init__(self, parser)
&GLOBAL
RUN_TYPE ENERGY_FORCE
PROJECT_NAME si_bulk
PRINT_LEVEL LOW
&END GLOBAL
&FORCE_EVAL
METHOD Quickstep
&DFT
POTENTIAL_FILE_NAME /home/lauri/GTH_POTENTIALS
BASIS_SET_FILE_NAME /home/lauri/BASIS_SET
&QS
EPS_DEFAULT 1e-3
&END QS
&SCF
MAX_SCF 100
EPS_SCF 1e-03
SCF_GUESS ATOMIC
&PRINT
&RESTART OFF
BACKUP_COPIES 0
&END RESTART
&END PRINT
&END SCF
&XC
&XC_FUNCTIONAL
&BECKE88 TRUE
&END BECKE88
&END XC_FUNCTIONAL
&END XC
&MGRID
CUTOFF 50
NGRIDS 2
REL_CUTOFF 25
&END MGRID
&END DFT
&SUBSYS
&COORD
Si 0.0 0.0 0.0
&END COORD
&CELL
A 5.4306975 0.0 0.0
C 0.0 0.0 5.4306975
B 0.0 5.4306975 0.0
PERIODIC XYZ
&END CELL
&KIND Si
POTENTIAL GTH-PADE-q4
BASIS_SET DZVP-GTH-PADE
&END KIND
&END SUBSYS
&END FORCE_EVAL
DBCSR| Multiplication driver SMM
DBCSR| Multrec recursion limit 512
DBCSR| Multiplication stack size 1000
DBCSR| Multiplication size stacks 0
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 100
DBCSR| Communication thread load 87
**** **** ****** ** PROGRAM STARTED AT 2015-10-29 14:02:56.229
**** **** ****** ** PROGRAM STARTED AT 2015-11-04 09:10:40.967
***** ** *** *** ** PROGRAM STARTED ON lauri-Lenovo-Z50-70
** **** ****** PROGRAM STARTED BY lauri
***** ** ** ** ** PROGRAM PROCESS ID 11329
**** ** ******* ** PROGRAM STARTED IN /home/lauri
***** ** ** ** ** PROGRAM PROCESS ID 1042
**** ** ******* ** PROGRAM STARTED IN /home/lauri/Dropbox/NoMaD Personal/gi
tlab/parser-cp2k/cp2kparser/tests/2.6
.2/functionals/becke88
CP2K| version string: CP2K version 2.4.0
CP2K| source code revision number: 12993
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 Sun Dec 22 03:52:45 UTC 2013
CP2K| Program compiled on komainu
CP2K| Program compiled for Linux-x86_64-gfortran
CP2K| Input file name /home/lauri/si_bulk.inp
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 /home/lauri/BASIS_SET
......@@ -31,6 +34,7 @@
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
......@@ -42,12 +46,12 @@
MEMORY| system memory details [Kb]
MEMORY| rank 0 min max average
MEMORY| MemTotal 8070396 8070396 8070396 8070396
MEMORY| MemFree 3106104 3106104 3106104 3106104
MEMORY| Buffers 440176 440176 440176 440176
MEMORY| Cached 2529396 2529396 2529396 2529396
MEMORY| Slab 304796 304796 304796 304796
MEMORY| SReclaimable 264384 264384 264384 264384
MEMORY| MemLikelyFree 6340060 6340060 6340060 6340060
MEMORY| MemFree 2854788 2854788 2854788 2854788
MEMORY| Buffers 415500 415500 415500 415500
MEMORY| Cached 3084748 3084748 3084748 3084748
MEMORY| Slab 351156 351156 351156 351156
MEMORY| SReclaimable 312204 312204 312204 312204
MEMORY| MemLikelyFree 6667240 6667240 6667240 6667240
GENERATE| Preliminary Number of Bonds generated: 0
......@@ -68,35 +72,34 @@
** **
** ... make the atoms dance **
** **
** Copyright (C) by CP2K Developers Group (2000 - 2013) **
** Copyright (C) by CP2K Developers Group (2000 - 2014) **
** **
*******************************************************************************
SCF PARAMETERS Density guess: ATOMIC
--------------------------------------------------------
max_scf: 300
max_scf: 100
max_scf_history: 0
max_diis: 4
--------------------------------------------------------
eps_scf: 1.00E-07
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: BROYDEN_MIXING
charge density mixing in g-space
Mixing method: DIRECT_P_MIXING
--------------------------------------------------------
No outer SCF
Number of electrons: 32
Number of occupied orbitals: 16
Number of molecular orbitals: 16
Number of electrons: 4
Number of occupied orbitals: 2
Number of molecular orbitals: 2
Number of orbital functions: 104
Number of independent orbital functions: 104
Number of orbital functions: 13
Number of independent orbital functions: 13
Extrapolation method: initial_guess
......@@ -105,35 +108,139 @@
Step Update method Time Convergence Total energy Change
------------------------------------------------------------------------------
1 NoMix/Diag. 0.40E+00 0.8 0.75558723 -32.2320848878 -3.22E+01
2 Broy./Diag. 0.40E+00 1.4 0.05667973 -31.1418135480 1.09E+00
3 Broy./Diag. 0.40E+00 1.4 0.09691464 -31.1974003415 -5.56E-02
4 Broy./Diag. 0.40E+00 1.4 0.00245608 -31.3378474040 -1.40E-01
5 Broy./Diag. 0.40E+00 1.4 0.00235460 -31.3009654398 3.69E-02
6 Broy./Diag. 0.40E+00 1.4 0.00007565 -31.2972158934 3.75E-03
7 Broy./Diag. 0.40E+00 1.4 0.00009004 -31.2977293749 -5.13E-04
8 Broy./Diag. 0.40E+00 1.4 0.00000185 -31.2978454163 -1.16E-04
9 Broy./Diag. 0.40E+00 1.4 0.00000252 -31.2978835492 -3.81E-05
10 Broy./Diag. 0.40E+00 1.4 5.6233E-09 -31.2978852053 -1.66E-06
1 P_Mix/Diag. 0.40E+00 0.0 0.58834082 -3.6916243010 -3.69E+00
2 P_Mix/Diag. 0.40E+00 0.0 1.03136858 -3.6876787572 3.95E-03
3 P_Mix/Diag. 0.40E+00 0.0 1.05100784 -3.6865162206 1.16E-03
4 P_Mix/Diag. 0.40E+00 0.0 0.93987743 -3.6861588603 3.57E-04
5 P_Mix/Diag. 0.40E+00 0.0 1.00715451 -3.6853760165 7.83E-04
6 P_Mix/Diag. 0.40E+00 0.0 0.96664076 -3.6850397852 3.36E-04
7 P_Mix/Diag. 0.40E+00 0.0 1.00486142 -3.6848332031 2.07E-04
8 P_Mix/Diag. 0.40E+00 0.0 0.81603691 -3.6847328319 1.00E-04
9 P_Mix/Diag. 0.40E+00 0.0 1.00248934 -3.6847258825 6.95E-06
10 P_Mix/Diag. 0.40E+00 0.0 1.06622177 -3.6845850442 1.41E-04
11 P_Mix/Diag. 0.40E+00 0.0 0.96757587 -3.6844817657 1.03E-04
12 P_Mix/Diag. 0.40E+00 0.0 0.98133571 -3.6846258848 -1.44E-04
13 P_Mix/Diag. 0.40E+00 0.0 1.20075357 -3.6844966608 1.29E-04
14 P_Mix/Diag. 0.40E+00 0.0 1.08759312 -3.6843758464 1.21E-04
15 P_Mix/Diag. 0.40E+00 0.0 1.21688007 -3.6844493741 -7.35E-05
16 P_Mix/Diag. 0.40E+00 0.0 1.45889012 -3.6842909933 1.58E-04
17 P_Mix/Diag. 0.40E+00 0.0 1.47944942 -3.6842560988 3.49E-05
18 P_Mix/Diag. 0.40E+00 0.0 1.50458255 -3.6842646411 -8.54E-06
19 P_Mix/Diag. 0.40E+00 0.0 1.51880247 -3.6842483460 1.63E-05
20 P_Mix/Diag. 0.40E+00 0.0 1.52044775 -3.6842473408 1.01E-06
21 P_Mix/Diag. 0.40E+00 0.0 1.52052905 -3.6842506244 -3.28E-06
22 P_Mix/Diag. 0.40E+00 0.0 1.52113420 -3.6842483764 2.25E-06
23 P_Mix/Diag. 0.40E+00 0.0 1.52131369 -3.6842483435 3.29E-08
24 P_Mix/Diag. 0.40E+00 0.0 1.52119562 -3.6842489887 -6.45E-07
25 P_Mix/Diag. 0.40E+00 0.0 1.52127113 -3.6842485693 4.19E-07
26 P_Mix/Diag. 0.40E+00 0.0 1.52130006 -3.6842485721 -2.86E-09
27 P_Mix/Diag. 0.40E+00 0.0 1.52127198 -3.6842486891 -1.17E-07
28 P_Mix/Diag. 0.40E+00 0.0 1.52128683 -3.6842486095 7.96E-08
29 P_Mix/Diag. 0.40E+00 0.0 1.52129185 -3.6842486118 -2.30E-09
30 P_Mix/Diag. 0.40E+00 0.0 1.52128603 -3.6842486320 -2.02E-08
31 P_Mix/Diag. 0.40E+00 0.0 1.52128920 -3.6842486172 1.48E-08
32 P_Mix/Diag. 0.40E+00 0.0 1.52129005 -3.6842486181 -8.62E-10
33 P_Mix/Diag. 0.40E+00 0.0 1.52128889 -3.6842486213 -3.26E-09
34 P_Mix/Diag. 0.40E+00 0.0 1.52128958 -3.6842486187 2.67E-09
35 P_Mix/Diag. 0.40E+00 0.0 1.52128971 -3.6842486189 -2.67E-10
36 P_Mix/Diag. 0.40E+00 0.0 1.52128949 -3.6842486194 -4.60E-10
37 P_Mix/Diag. 0.40E+00 0.0 1.52128964 -3.6842486189 4.58E-10
38 P_Mix/Diag. 0.40E+00 0.0 1.52128966 -3.6842486190 -7.52E-11
39 P_Mix/Diag. 0.40E+00 0.0 1.52128962 -3.6842486191 -4.50E-11
40 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 7.25E-11
41 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -2.01E-11
42 P_Mix/Diag. 0.40E+00 0.0 1.52128964 -3.6842486190 2.37E-12
43 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 9.68E-12
44 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -5.15E-12
45 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 3.22E-12
46 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 7.24E-13
47 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -1.28E-12
48 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 1.31E-12
49 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -1.65E-13
50 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -3.11E-13
51 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 4.24E-13
52 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -1.15E-13
53 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -7.33E-14
54 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 1.23E-13
55 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -4.40E-14
56 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -1.55E-14
57 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 3.24E-14
58 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -1.33E-14
59 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -4.44E-15
60 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 9.33E-15
61 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -4.00E-15
62 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 4.44E-16
63 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 1.33E-15
64 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -1.33E-15
65 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -8.88E-16
66 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 1.33E-15
67 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -4.44E-16
68 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -8.88E-16
69 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 0.00E+00
70 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 8.88E-16
71 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -8.88E-16
72 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 4.44E-16
73 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 4.44E-16
74 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -8.88E-16
75 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 8.88E-16
76 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -8.88E-16
77 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 8.88E-16
78 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -1.33E-15
79 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 1.78E-15
80 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -4.44E-16
81 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -8.88E-16
82 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 4.44E-16
83 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -4.44E-16
84 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 8.88E-16
85 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 0.00E+00
86 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -4.44E-16
87 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 4.44E-16
88 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -4.44E-16
89 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -4.44E-16
90 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 0.00E+00
91 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 4.44E-16
92 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -8.88E-16
93 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -4.44E-16
94 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 1.33E-15
95 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 -1.33E-15
96 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 8.88E-16
97 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 0.00E+00
98 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 0.00E+00
99 P_Mix/Diag. 0.40E+00 0.0 1.52128965 -3.6842486190 0.00E+00
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
ENERGY| Total FORCE_EVAL ( QS ) energy (a.u.): -3.669248396643794
*** SCF run converged in 10 steps ***
Electronic density on regular grids: -31.9999999889 0.0000000111
Core density on regular grids: 31.9999999939 -0.0000000061
Total charge density on r-space grids: 0.0000000051
Total charge density g-space grids: 0.0000000051
Overlap energy of the core charge distribution: 0.00000000005320
Self energy of the core charge distribution: -82.06393942512820
Core Hamiltonian energy: 18.06858429725341
Hartree energy: 42.41172824566628
Exchange-correlation energy: -9.71425832318303
Total energy: -31.29788520533835
ENERGY| Total FORCE_EVAL ( QS ) energy (a.u.): -31.297885372791715
-------------------------------------------------------------------------------
- -
- 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
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
- -
......@@ -142,10 +249,15 @@
-------------------------------------------------------------------------------
ROUTINE CALLS TOT TIME [s] AVE VOLUME [Bytes] PERFORMANCE [MB/s]
MP_Group 4 0.000
MP_Bcast 10 0.001 4. 0.04
MP_Allreduce 93 0.000 55. 0.00
MP_Sync 4 0.000
MP_Group 3 0.000
MP_Bcast 102 0.000 4. 1.44
MP_Allreduce 1060 0.001 8. 13.36
MP_Sync 2 0.000
MP_Alltoall 2316 0.002 522. 777.94
MP_Wait 2424 0.001
MP_ISend 808 0.002 228. 117.01
MP_IRecv 808 0.000 228. 415.02
MP_Memory 2424 0.001
-------------------------------------------------------------------------------
......@@ -155,9 +267,22 @@
- -
-------------------------------------------------------------------------------
CP2K version 2.4.0, the CP2K developers group (2013).
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
......@@ -196,36 +321,58 @@
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
AVERAGE MAXIMUM AVERAGE MAXIMUM
CP2K 1 1.0 0.005 0.005 16.928 16.928
qs_forces 1 2.0 0.000 0.000 16.837 16.837
qs_energies_scf 1 3.0 0.001 0.001 15.077 15.077
scf_env_do_scf_inner_loop 10 5.0 0.000 0.000 14.123 14.123
scf_env_do_scf 1 4.0 0.000 0.000 14.123 14.123
qs_ks_build_kohn_sham_matrix 11 6.7 0.003 0.003 9.187 9.187
sum_up_and_integrate 11 7.7 0.006 0.006 8.883 8.883
integrate_v_rspace 11 8.7 8.751 8.751 8.877 8.877
qs_ks_update_qs_env 10 6.0 0.000 0.000 8.092 8.092
calculate_rho_elec 11 7.0 6.066 6.066 6.314 6.314
qs_rho_update_rho 11 6.0 0.000 0.000 6.314 6.314
qs_ks_update_qs_env_forces 1 3.0 0.001 0.001 1.097 1.097
build_core_hamiltonian_matrix_f 1 3.0 0.000 0.000 0.662 0.662
init_scf_run 1 4.0 0.000 0.000 0.636 0.636
scf_env_initial_rho_setup 1 5.0 0.000 0.000 0.635 0.635
fft_wrap_pw1pw2 120 9.3 0.001 0.001 0.544 0.544
fft_wrap_pw1pw2_150 54 9.7 0.028 0.028 0.498 0.498
fft3d_s 121 11.3 0.338 0.338 0.349 0.349
build_core_ppnl_forces 1 4.0 0.343 0.343 0.343 0.343
MAXIMUM AVERAGE MAXIMUM AVERAGE MAXIMUM
CP2K 1 1.0 0.002 0.002 1.112 1.112
qs_forces 1 2.0 0.000 0.000 1.083 1.083
qs_energies_scf 1 3.0 0.000 0.000 1.075 1.075
scf_env_do_scf 1 4.0 0.000 0.000 1.060 1.060
scf_env_do_scf_inner_loop 100 5.0 0.009 0.009 1.060 1.060
rebuild_ks_matrix 101 7.0 0.000 0.000 0.787 0.787