3
0
mirror of https://github.com/triqs/dft_tools synced 2024-11-07 06:33:48 +01:00

Added documentation on the output file formats

A description of the output file formats is added to the documentation.
In particular, the outline of JSON headers for projector-group (*.plog<Ng>)
and control (*.ctrl) files are given.
This commit is contained in:
Oleg E. Peil 2015-08-10 13:52:29 +02:00 committed by Michel Ferrero
parent db16a8438d
commit 4bbafa239e
71 changed files with 58 additions and 8183 deletions

View File

@ -72,7 +72,7 @@ Consistency with parameters
Selecting projector subsets
---------------------------
===========================
The first step of PLO processing is to select subsets of projectors
corresponding to PLO groups. Each group contains a set of shells.
@ -117,7 +117,7 @@ The class is using a helper function `select_bands()` for selecting a subset of
.. _ortho:
Orthogonalization
=================
-----------------
At the second stage the selected projectors are orthogonalized (orthonormalized).
Orthogonalization can be performed in different ways if projection is made
@ -138,3 +138,54 @@ The way the normalization of a PLO group is done is controlled by two group para
(False by default)
Storing generated projectors
****************************
After the PLOs are generated they are stored to text files which can be subsequently
converted to TRIQS h5-files (using the converter). The general format of the file
is a JSON-header containing all necessary parameters followed by a set of arrays.
There is always one (control) file containing general information (`k`-kpoints, lattice vectors etc.)
and `at least` one file containing correlated groups (one file for each group).
Control file format
===================
Filename '<namebase>.ctrl'. Contains the data shared between all shells.
The JSON-header consists of the following elements:
* *nk*: number of `k`-points
* *ns*: number of spin channels
* *nc_flag*: collinear/noncollinear case (False/True)
* *ng*: number of projector groups
* Symmetry information (list of symmetry operations)
* *efermi*: Fermi level (optional)
* Lattice information
Projector-group file format
===========================
Projector-group files have names '<namebase>.plog<Ng>'.
They essentially contain serialized objects of class 'ProjectorGroup'.
The JSON-header has, thus, the following elements:
* *shells*: list of shells
* each shell is a dictionary:
- *lshell*: orbital number `l`
- *nion*: number of ions
- *ndim*: number of orbitals/ion
- *nbmax*: maxmimum number of bands (needed for array allocations)
* *emin*, *emax*: energy window

View File

@ -2,6 +2,9 @@
import itertools as it
import numpy as np
# 'simplejson' is supposed to be faster than 'json' in stdlib.
import simplejson as json
class Projector:
"""
Class describing a local-orbital projector.
@ -394,11 +397,13 @@ def plo_output(conf_pars, pshells, pgroups):
# Projected shells
Nshells
# Shells: <shell indices>
# Shell <1>
Shell 1
ndim
# complex arrays: plo(ns, nion, ndim, nb)
...
# Shells: <shell indices>
# Shell <2>
Shell 2
...

View File

@ -1,20 +0,0 @@
[General]
EFERMI = -0.6
[Group 1]
SHELLS = 1 2
EMIN = -7.6
EMAX = 2.7
[Shell 1]
# Ni shell
IONS = 5 6 7 8
LSHELL = 2
RTRANSFORM =
0.0 0.0 0.0 0.0 1.0
0.0 0.0 1.0 0.0 0.0
[Shell 2]
# Oxygen shell
IONS = 9..20
LSHELL = 1

View File

@ -1,27 +0,0 @@
r"""
Module defining a custom TestCase with extra functionality.
"""
import unittest
import numpy as np
class ArrayTestCase(unittest.TestCase):
"""
Custom TestCase class supporting array equality.
"""
def __init__(self, *args, **kwargs):
"""
Initializes a custom equality function for comparing numpy arrays.
"""
super(ArrayTestCase, self).__init__(*args, **kwargs)
self.addTypeEqualityFunc(np.ndarray, self.is_arrays_equal)
def is_arrays_equal(self, arr1, arr2, msg=None):
"""
Raises self.failureException is arrays arr1 and arr2
are not equal.
"""
if not np.allclose(arr1, arr2):
raise self.failureException(msg)

View File

@ -1,29 +0,0 @@
[General]
[Group 1]
SHELLS = 1 2
EMIN = -7.6
EMAX = 3.0
[Group 2]
SHELLS = 3
EMIN = -1.6
EMAX = 2.0
[Shell 1]
LSHELL = 2
IONS = 5..8
[Shell 2]
LSHELL = 1
IONS = 1..4
RTRANSFORM = 0.0 1.0 0.0
1.0 0.0 0.0
0.0 0.0 1.0
[Shell 3]
LSHELL = 3
IONS = 1..4

View File

@ -1,7 +0,0 @@
[Shell 1]
LSHELL = 2
IONS = 5..8
EMIN = -7.6
EMAX = 3.0

View File

@ -1,10 +0,0 @@
[General]
EFERMI = 0.7
[Shell 1]
LSHELL = 2
IONS = 5..8
[Shell 2]
IONS = 9..20
LSHELL = 1

View File

@ -1,3 +0,0 @@
[Shell 1]
LSHELL = 2
IONS = 1..4

View File

@ -1,25 +0,0 @@
[General]
[Group 1]
SHELLS = 1 2
EMIN = -7.6
EMAX = 3.0
[Group 2]
SHELLS = 3
EMIN = -1.6
EMAX = 2.0
[Shell 1]
LSHELL = 2
IONS = 5..8
[Shell 2]
LSHELL = 1
IONS = 1..4
RTRANSFORM = 0.0 1.0 0.0
1.0 0.0 0.0
0.0 0.0 1.0

View File

@ -1,24 +0,0 @@
[General]
[Group 1]
SHELLS = 1 2
EMIN = -7.6
EMAX = 3.0
[Shell 1]
LSHELL = 2
IONS = 5..8
[Shell 2]
LSHELL = 1
IONS = 1..4
RTRANSFORM = 0.0 1.0 0.0
1.0 0.0 0.0
0.0 0.0 1.0
[Shell 3]
LSHELL = 3
IONS = 1..4

View File

@ -1,13 +0,0 @@
[General]
[Group 1]
SHELLS = 1 2
[Shell 1]
LSHELL = 2
IONS = 5..8
[Shell 2]
LSHELL = 1
IONS = 1..4

View File

@ -1,4 +0,0 @@
[General]
[Group 1]

View File

@ -1,5 +0,0 @@
[General]
[Group 1]
[Shell x]

View File

@ -1,7 +0,0 @@
[General]
[Group 1]
[Shell 1]
LSHELL = 2

View File

@ -1,17 +0,0 @@
[General]
[Group 1]
SHELLS = 1 2
[Shell 1]
LSHELL = 2
IONS = 5..8
[Shell 2]
LSHELL = 1
IONS = 1..4
RTRANSFORM = 0.0 1.0 0.0
1.0 0.0 0.0
0.0 0.0 1.0

View File

@ -1 +0,0 @@
PYTHONPATH=../../python:../../c:$PYTHONPATH python $1

View File

@ -1,12 +0,0 @@
[General]
EFERMI = 0.7
[Group 1]
SHELLS = 1
[Shell 1]
LSHELL = 2
[Shell 2]
IONS = 9..20
LSHELL = 1

View File

@ -1,44 +0,0 @@
r"""
Tests of 'parse_groups()' defined in ConfigParameters class
"""
import arraytest
import numpy as np
from inpconf import ConfigParameters
################################################################################
#
# TestParseGroups
#
################################################################################
class TestParseGroups(arraytest.ArrayTestCase):
"""
Function:
def parse_groups(self)
Scenarios:
- **if** a [Group] section does not contain all required parameters
**raise** Exception
- **if** a correct group section is defined **return** a list of dictionaries
"""
# Scenario 1
def test_gr_required(self):
conf_pars = ConfigParameters('parse_groups_1.cfg')
err_mess = "Required parameter"
with self.assertRaisesRegexp(Exception, err_mess):
conf_pars.parse_groups()
# Scenario 2
def test_example(self):
conf_pars = ConfigParameters('example.cfg')
conf_pars.parse_groups()
res = conf_pars.groups
expected = [{'index': 1, 'shells': [1, 2], 'emin': -7.6, 'emax': 3.0,
'normalize': True, 'normion': False},
{'index': 2, 'shells': [3], 'emin': -1.6, 'emax': 2.0,
'normalize': True, 'normion': False}]
self.assertListEqual(res, expected)

View File

@ -1,9 +0,0 @@
r"""
Test suite for module `inpconf.py`.
"""
import unittest
if __name__ == '__main__':
suite = unittest.TestLoader().discover('./')
unittest.TextTestRunner(verbosity=2, buffer=True).run(suite)

View File

@ -1,107 +0,0 @@
r"""
Tests of 'parse_input()' defined in ConfigParameters class
"""
import arraytest
import numpy as np
from inpconf import ConfigParameters
################################################################################
#
# TestParseInput
#
################################################################################
class TestParseInput(arraytest.ArrayTestCase):
"""
Function:
def parse_input(self)
Scenarios:
- **if** no [Group] section exists and more than one [Shell] section
is given **raise** AssertionError
- **if** no [Group] section exists but the single [Shell] section
does not contain required group information **raise** KeyError
- **if** a shell referenced in a group does not exist
**raise** Exception
- **if** not all defined shells are referenced in the groups
**raise** Exception
- **if** all sections are parsed error-free check that the output
is correct
- correct example with a single shell and no explicit groups
"""
# Scenario 1
def test_no_group(self):
conf_pars = ConfigParameters('input_test_1.cfg')
err_mess = "At least one group"
with self.assertRaisesRegexp(AssertionError, err_mess):
conf_pars.parse_input()
# Scenario 2
def test_gr_required(self):
conf_pars = ConfigParameters('input_test_2.cfg')
err_mess = "One \[Shell\] section is"
with self.assertRaisesRegexp(KeyError, err_mess):
conf_pars.parse_input()
# Scenario 3
def test_no_shell(self):
conf_pars = ConfigParameters('input_test_3.cfg')
err_mess = "Shell 3 referenced in"
with self.assertRaisesRegexp(Exception, err_mess):
conf_pars.parse_input()
# Scenario 4
def test_shell_outside_groups(self):
conf_pars = ConfigParameters('input_test_4.cfg')
err_mess = "Some shells are not inside"
with self.assertRaisesRegexp(AssertionError, err_mess):
conf_pars.parse_input()
# Scenario 5
def test_example(self):
conf_pars = ConfigParameters('example.cfg')
conf_pars.parse_input()
# with open('parse_input.output.test', 'wt') as f:
# f.write("Shells:\n")
# f.write(conf_pars.shells.__repr__() + '\n\n')
# f.write("Groups:\n")
# f.write(conf_pars.groups.__repr__() + '\n')
res = "Shells:\n"
res += conf_pars.shells.__repr__() + '\n\n'
res += "Groups:\n"
res += conf_pars.groups.__repr__()
expected = r"""Shells:
[{'ion_list': array([4, 5, 6, 7]), 'user_index': 1, 'lshell': 2}, {'tmatrix': array([[ 0., 1., 0.],
[ 1., 0., 0.],
[ 0., 0., 1.]]), 'ion_list': array([0, 1, 2, 3]), 'user_index': 2, 'lshell': 1}, {'ion_list': array([0, 1, 2, 3]), 'user_index': 3, 'lshell': 3}]
Groups:
[{'normalize': True, 'index': 1, 'shells': [0, 1], 'normion': False, 'emax': 3.0, 'emin': -7.6}, {'normalize': True, 'index': 2, 'shells': [2], 'normion': False, 'emax': 2.0, 'emin': -1.6}]"""
self.assertEqual(res, expected)
# Scenario 6
def test_example_no_groups(self):
conf_pars = ConfigParameters('example_nogroup.cfg')
conf_pars.parse_input()
# with open('parse_input.output.test', 'wt') as f:
# f.write("Shells:\n")
# f.write(conf_pars.shells.__repr__() + '\n\n')
# f.write("Groups:\n")
# f.write(conf_pars.groups.__repr__() + '\n')
res = "Shells:\n"
res += conf_pars.shells.__repr__() + '\n\n'
res += "Groups:\n"
res += conf_pars.groups.__repr__()
expected = r"""Shells:
[{'ion_list': array([4, 5, 6, 7]), 'user_index': 1, 'lshell': 2}]
Groups:
[{'normalize': True, 'index': '1', 'emin': -7.6, 'emax': 3.0, 'normion': False, 'shells': [0]}]"""
self.assertEqual(res, expected)

View File

@ -1,48 +0,0 @@
r"""
Tests of 'parse_parameter_set()' defined in ConfigParameters class
"""
import arraytest
import numpy as np
from inpconf import ConfigParameters
################################################################################
#
# TestParseParameterSet
#
################################################################################
class TestParseParameterSet(arraytest.ArrayTestCase):
"""
Function:
def parse_parameter_set(self, section, param_set, excpetion=False)
Scenarios:
- **if** config-file section [Shell 1] contains 'LSHELL = 2' **and**
'lshell' and 'ions' are in `param_set` **return** a dictionary {'lshell': 2}
- **if** config-file section [Shell 1] contains 'LSHELL = 2' **and**
'lshell' and 'ions' are in `param_set` and
exception=True **raise** Exception
"""
def setUp(self):
"""
"""
# Dummy ConfigParameters object
self.cpars = ConfigParameters('test1.cfg')
# Scenario 1
def test_sh_required(self):
param_set = self.cpars.sh_required # contains 'lshell' and 'ions'
res = self.cpars.parse_parameter_set('Shell 1', param_set)
expected = {'lshell': 2}
self.assertDictEqual(res, expected)
# Scenario 2
def test_sh_required_exception(self):
section = 'Shell 1'
param_set = self.cpars.sh_required # contains 'lshell' and 'ions'
err_mess = "Required parameter" # .* in section [%s]"%(section)
with self.assertRaisesRegexp(Exception, err_mess):
self.cpars.parse_parameter_set(section, param_set, exception=True)

View File

@ -1,76 +0,0 @@
r"""
Tests of 'parse_shells()' defined in ConfigParameters class
"""
import arraytest
import numpy as np
from inpconf import ConfigParameters
################################################################################
#
# TestParseShells
#
################################################################################
class TestParseShells(arraytest.ArrayTestCase):
"""
Function:
def parse_shells(self)
Scenarios:
- **if** config-file does not contain a valid [Shell] section
**raise** AssertionError
- **if** a [Shell] section does not contain a valid index
**raise** ValueError
- **if** a [Shell] section does not contain all required parameters
**raise** Exception
- **if** two correct [Shell] sections are defined
**return** a dictionary of shell parameters
"""
# Scenario 1
def test_no_shell(self):
conf_pars = ConfigParameters('parse_shells_1.cfg')
err_mess = "No projected shells"
with self.assertRaisesRegexp(AssertionError, err_mess):
conf_pars.parse_shells()
# Scenario 2
def test_bad_indices(self):
conf_pars = ConfigParameters('parse_shells_2.cfg')
err_mess = "Failed to extract shell indices"
with self.assertRaisesRegexp(ValueError, err_mess):
conf_pars.parse_shells()
# Scenario 3
def test_sh_required(self):
conf_pars = ConfigParameters('parse_shells_3.cfg')
err_mess = "Required parameter"
with self.assertRaisesRegexp(Exception, err_mess):
conf_pars.parse_shells()
# Scenario 4
def test_two_shells(self):
conf_pars = ConfigParameters('parse_shells_4.cfg')
conf_pars.parse_shells()
res = conf_pars.shells
expected = [{'user_index': 1, 'lshell': 2, 'ion_list': np.array([4, 5, 6, 7])},
{'user_index': 2, 'lshell': 1, 'ion_list': np.array([0, 1, 2, 3]),
'tmatrix': np.array([[ 0., 1., 0.], [ 1., 0., 0.], [ 0., 0., 1.]])}]
# ...lousy way to test equality of two dictionaries containing numpy arrays
self.assertEqual(len(res), len(expected))
arr = res[0].pop('ion_list')
arr_exp = expected[0].pop('ion_list')
self.assertEqual(arr, arr_exp)
arr = res[1].pop('ion_list')
arr_exp = expected[1].pop('ion_list')
self.assertEqual(arr, arr_exp)
arr = res[1].pop('tmatrix')
arr_exp = expected[1].pop('tmatrix')
self.assertEqual(arr, arr_exp)
self.assertListEqual(res, expected)

View File

@ -1,149 +0,0 @@
r"""
Tests of special parseres defined in ConfigParameters class
"""
import arraytest
import numpy as np
from inpconf import ConfigParameters
################################################################################
#
# TestParseStringLogical
#
################################################################################
class TestParseStringLogical(arraytest.ArrayTestCase):
"""
Function:
def parse_string_logical(self, par_str)
Scenarios:
- **if** par_str == 'True' **return** True
- **if** par_str == 'False' **return** False
- **if** par_str == '0' **raise** assertion
"""
def setUp(self):
"""
"""
# Dummy ConfigParameters object
self.cpars = ConfigParameters('test1.cfg')
# Scenario 1
def test_true(self):
res = self.cpars.parse_string_logical('True')
self.assertEqual(res, True)
# Scenario 2
def test_false(self):
res = self.cpars.parse_string_logical('False')
self.assertEqual(res, False)
# Scenario 3
def test_incorrect(self):
with self.assertRaises(AssertionError):
self.cpars.parse_string_logical('0')
################################################################################
#
# TestParseStringIonList
#
################################################################################
class TestParseStringIonList(arraytest.ArrayTestCase):
"""
Function:
def parse_string_ion_list(self, par_str)
Scenarios:
- **if** par_str == '5 6 7 8' **return** array([4, 5, 6, 7])
- **if** par_str == 'Ni' **raise** NotImplementedError
- **if** par_str == '0 1' **raise** AssertionError
- **if** par_str == '5..8' **return** array([4, 5, 6, 7])
- **if** par_str == '8..5' **raise** AssertionError
"""
def setUp(self):
"""
"""
# Dummy ConfigParameters object
self.cpars = ConfigParameters('test1.cfg')
# Scenario 1
def test_simple_list(self):
expected = np.array([4, 5, 6, 7])
res = self.cpars.parse_string_ion_list('5 6 7 8')
self.assertEqual(res, expected)
# Scenario 2
def test_atomic_symbol(self):
with self.assertRaises(NotImplementedError):
self.cpars.parse_string_ion_list('Ni')
# Scenario 3
def test_out_of_bounds(self):
err_mess = "Lowest ion index is"
with self.assertRaisesRegexp(AssertionError, err_mess):
self.cpars.parse_string_ion_list('0 1')
# Scenario 4
def test_list_range(self):
expected = np.array([4, 5, 6, 7])
res = self.cpars.parse_string_ion_list('5..8')
self.assertEqual(res, expected)
# Scenario 5
def test_range_wrong_order(self):
err_mess = "First index of the range"
with self.assertRaisesRegexp(AssertionError, err_mess):
self.cpars.parse_string_ion_list('8..5')
################################################################################
#
# TestParseStringTmatrix
#
################################################################################
class TestParseStringTmatrix(arraytest.ArrayTestCase):
"""
Function:
def parse_string_tmatrix(self, par_str)
Parses a matrix defined as a set of rows in the conf-file.
Scenarios:
- **if** number of columns is not the same **raise** AssertionError
- **if** complex matrix is read and the number of columns is odd
**raise** AssertionError
- **if** a correct matrix is given **return** an array
"""
def setUp(self):
"""
"""
# Dummy ConfigParameters object
self.cpars = ConfigParameters('test1.cfg')
# Scenario 1
def test_number_of_columns(self):
par_str = "1.0 0.0\n1.0"
err_mess = "Number of columns"
with self.assertRaisesRegexp(AssertionError, err_mess):
self.cpars.parse_string_tmatrix(par_str, real=True)
# Scenario 2
def test_complex_matrix_odd(self):
par_str = "1.0 0.0 2.0 1.0 0.0\n0.0 1.0 2.0 3.0 -1.0"
err_mess = "Complex matrix must"
with self.assertRaisesRegexp(AssertionError, err_mess):
self.cpars.parse_string_tmatrix(par_str, real=False)
# Scenario 3
def test_complex_matrix(self):
par_str = "1.0 0.0 2.0 -3.0\n0.0 1.0 -1.0 1.0"
res = self.cpars.parse_string_tmatrix(par_str, real=False)
expected = np.array([[1.0, 2.0 - 3.0j], [1.0j, -1.0 + 1.0j]])
self.assertEqual(res, expected)

View File

@ -1,2 +0,0 @@
*.pyc
*.test

File diff suppressed because it is too large Load Diff

View File

@ -1,259 +0,0 @@
0000000: 0700 0000 0100 0000 0100 0000 0300 0000 ................
0000010: 0900 0000 0900 0000 0000 0000 0900 0000 ................
0000020: 0000 0000 0000 0040 c09b 42b4 952c 303e .......@..B..,0>
0000030: 0000 0000 0000 0000 876a f460 f6ec d93f .........j.`...?
0000040: 0000 0000 0000 0000 80ab 01a5 b7c9 d93f ...............?
0000050: 0000 0000 0000 0000 dc82 5188 ebf7 d93f ..........Q....?
0000060: 0000 0000 0000 0000 389e aae4 5c59 a4be ........8...\Y..
0000070: 0000 0000 0000 0000 f0cb ad9d 48d2 9bbe ............H...
0000080: 0000 0000 0000 0000 08ee b871 1214 773e ...........q..w>
0000090: 0000 0000 0000 0000 5095 ab03 b4cc 99be ........P.......
00000a0: 0000 0000 0000 0000 00e2 0cec 4018 8e3e ............@..>
00000b0: 0000 0000 0000 0000 0000 0000 0000 0040 ...............@
00000c0: 68c3 e962 e8c3 42be 0000 0000 0000 0000 h..b..B.........
00000d0: c907 d02d 79b5 c83f 0000 0000 0000 0000 ...-y..?........
00000e0: 6d5c b47d afec e4bf 0000 0000 0000 0000 m\.}............
00000f0: 8871 d914 bb3d dd3f 0000 0000 0000 0000 .q...=.?........
0000100: a09e cab7 fba1 99be 0000 0000 0000 0000 ................
0000110: 1011 02ea 4ed4 a5be 0000 0000 0000 0000 ....N...........
0000120: b8bd 64b5 faea a5be 0000 0000 0000 0000 ..d.............
0000130: 98d6 110d 5dec 733e 0000 0000 0000 0000 ....].s>........
0000140: 20bf c505 81ca 953e 0000 0000 0000 0000 ......>........
0000150: 0000 0000 0000 0040 5ede f7c4 28c9 513e .......@^...(.Q>
0000160: 0000 0000 0000 0000 5f10 eece 9bc5 e7bf ........_.......
0000170: 0000 0000 0000 0000 c756 8fc2 d323 bc3f .........V...#.?
0000180: 0000 0000 0000 0000 6226 1a03 4747 e43f ........b&..GG.?
0000190: 0000 0000 0000 0000 88cf 411b faee b23e ..........A....>
00001a0: 0000 0000 0000 0000 d059 0ef7 3322 bc3e .........Y..3".>
00001b0: 0000 0000 0000 0000 906f ecbd 13bf 9b3e .........o.....>
00001c0: 0000 0000 0000 0000 0048 dc80 c623 79be .........H...#y.
00001d0: 0000 0000 0000 0000 98af a7f0 cc0a 80be ................
00001e0: 0000 0000 0000 0000 0000 0000 0000 0040 ...............@
00001f0: 7732 c238 fc5d d4bf 0000 0000 0000 0000 w2.8.]..........
0000200: af10 22fe 0157 1e3e 0000 0000 0000 0000 .."..W.>........
0000210: b6f2 3804 5f94 19be 0000 0000 0000 0000 ..8._...........
0000220: f3fa 220d f74a 10be 0000 0000 0000 0000 .."..J..........
0000230: 9050 2512 1143 713e 0000 0000 0000 0000 .P%..Cq>........
0000240: 70d3 c7a3 9414 713e 0000 0000 0000 0000 p.....q>........
0000250: 102c bb6e a8fd 123e 0000 0000 0000 0000 .,.n...>........
0000260: 8804 1ca7 2cef 703e 0000 0000 0000 0000 ....,.p>........
0000270: 00e7 3a91 6f8c 0b3e 0000 0000 0000 0000 ..:.o..>........
0000280: 0000 0000 0000 0040 f494 55cd 093c abbe .......@..U..<..
0000290: 0000 0000 0000 0000 9368 0c94 3992 b5be .........h..9...
00002a0: 0000 0000 0000 0000 31db 0ceb 4592 b13e ........1...E..>
00002b0: 0000 0000 0000 0000 4a33 08f3 8b2f aa3e ........J3.../.>
00002c0: 0000 0000 0000 0000 4bd8 9f87 3736 d5bf ........K...76..
00002d0: 0000 0000 0000 0000 d028 1b47 86da d5bf .........(.G....
00002e0: 0000 0000 0000 0000 7983 970b 9a0a 10be ........y.......
00002f0: 0000 0000 0000 0000 3d51 3b73 82d8 d5bf ........=Q;s....
0000300: 0000 0000 0000 0000 5ee2 3953 96be eabd ........^.9S....
0000310: 0000 0000 0000 0000 0000 0000 0000 0040 ...............@
0000320: e02d e04c 16cc a3be 0000 0000 0000 0000 .-.L............
0000330: 45d9 4cd2 8e29 a1be 0000 0000 0000 0000 E.L..)..........
0000340: a6be 872b d81d aebe 0000 0000 0000 0000 ...+............
0000350: 6261 dc48 428c a5be 0000 0000 0000 0000 ba.HB...........
0000360: 4e2b 9eaa 4723 e13f 0000 0000 0000 0000 N+..G#.?........
0000370: 7dab 254c f2bb d0bf 0000 0000 0000 0000 }.%L............
0000380: 3614 5bd6 5785 77be 0000 0000 0000 0000 6.[.W.w.........
0000390: dc11 2b1c 7a8f d0bf 0000 0000 0000 0000 ..+.z...........
00003a0: bacd a52a 3e27 f33d 0000 0000 0000 0000 ...*>'.=........
00003b0: 0000 0000 0000 0040 3ec2 a914 b349 953e .......@>....I.>
00003c0: 0000 0000 0000 0000 e1e1 30f2 ec27 b1be ..........0..'..
00003d0: 0000 0000 0000 0000 f9fa cf80 b262 a33e .............b.>
00003e0: 0000 0000 0000 0000 c30d 0bea fff7 b03e ...............>
00003f0: 0000 0000 0000 0000 ddb7 83f6 7181 5fbf ............q._.
0000400: 0000 0000 0000 0000 7cb5 f3a7 1dde e2bf ........|.......
0000410: 0000 0000 0000 0000 04ec d82c 5973 f73d ...........,Ys.=
0000420: 0000 0000 0000 0000 2589 b733 caef e23f ........%..3...?
0000430: 0000 0000 0000 0000 b680 c91e 7c87 7e3e ............|.~>
0000440: 0000 0000 0000 0000 8399 6cf2 a7a8 733a ..........l...s:
0000450: a226 c082 8d99 a2be 0000 0000 0000 0000 .&..............
0000460: 4f75 9af5 f751 88be 0000 0000 0000 0000 Ou...Q..........
0000470: c87f 8c77 6f11 8c3e 0000 0000 0000 0000 ...wo..>........
0000480: 634e 55db dffe 88be 0000 0000 0000 0000 cNU.............
0000490: b9a2 7a78 99f2 33be 0000 0000 0000 0000 ..zx..3.........
00004a0: 6232 6dee 00ec 763e 0000 0000 0000 0000 b2m...v>........
00004b0: 34f6 8e31 ebb1 a3bf 0000 0000 0000 0000 4..1............
00004c0: b0e1 85b7 93be 75be 0000 0000 0000 0000 ......u.........
00004d0: fca1 4ac0 516b ea3f 0000 0000 0000 0000 ..J.Qk.?........
00004e0: ead9 7db9 a7a8 733a 2051 d326 ab04 b63e ..}...s: Q.&...>
00004f0: 0000 0000 0000 0000 a664 a63a b204 a6be .........d.:....
0000500: 0000 0000 0000 0000 9a14 a1cc cd1a ad3e ...............>
0000510: 0000 0000 0000 0000 c317 f9d9 0bc9 763e ..............v>
0000520: 0000 0000 0000 0000 1a6c 522f 33ef 73be .........lR/3.s.
0000530: 0000 0000 0000 0000 0e69 5a77 ef3f 613e .........iZw.?a>
0000540: 0000 0000 0000 0000 83d3 00cf 74a4 e4bf ............t...
0000550: 0000 0000 0000 0000 e0c9 1246 8398 663e ...........F..f>
0000560: 0000 0000 0000 0000 df05 97c4 fdcd a8bf ................
0000570: 0000 0000 0000 0000 0000 0000 0000 0040 ...............@
0000580: 5865 652e d78d 543e 0000 0000 0000 0000 Xee...T>........
0000590: e287 40f4 d20f e63f 0000 0000 0000 0000 ..@....?........
00005a0: 6015 14f3 d20f e63f 0000 0000 0000 0000 `......?........
00005b0: 1f46 1b02 2ad0 953e 0000 0000 0000 0000 .F..*..>........
00005c0: a896 501e cc76 adbe 0000 0000 0000 0000 ..P..v..........
00005d0: 50e1 ce66 d74e a9be 0000 0000 0000 0000 P..f.N..........
00005e0: 68c6 cb41 12c4 94be 0000 0000 0000 0000 h..A............
00005f0: b8b6 a59a 2725 b03e 0000 0000 0000 0000 ....'%.>........
0000600: 000c e03e d4e6 723e 0000 0000 0000 0000 ...>..r>........
0000610: 0000 0000 0000 0040 5034 3525 9915 1d3e .......@P45%...>
0000620: 0000 0000 0000 0000 0eb1 b04c a169 8b3e ...........L.i.>
0000630: 0000 0000 0000 0000 15a6 44c3 d2bb 8c3e ..........D....>
0000640: 0000 0000 0000 0000 358d 6630 0564 edbf ........5.f0.d..
0000650: 0000 0000 0000 0000 f093 7bd3 66dd a93e ..........{.f..>
0000660: 0000 0000 0000 0000 300e e949 11a8 7d3e ........0..I..}>
0000670: 0000 0000 0000 0000 4e4d eb99 4625 69be ........NM..F%i.
0000680: 0000 0000 0000 0000 7065 6266 62dd aabe ........pebfb...
0000690: 0000 0000 0000 0000 7a8f 27f1 7c5e 653e ........z.'.|^e>
00006a0: 0000 0000 0000 0000 0000 0000 0000 0040 ...............@
00006b0: 86a7 8f83 5c29 64be 0000 0000 0000 0000 ....\)d.........
00006c0: 6105 908f 5ec9 e23f 0000 0000 0000 0000 a...^..?........
00006d0: 3010 7490 5ec9 e2bf 0000 0000 0000 0000 0.t.^...........
00006e0: f3a7 bf6b 3ebc 39be 0000 0000 0000 0000 ...k>.9.........
00006f0: a054 44ce 55ef 573e 0000 0000 0000 0000 .TD.U.W>........
0000700: 3061 3567 33aa a53e 0000 0000 0000 0000 0a5g3..>........
0000710: 2024 2b9b e650 843e 0000 0000 0000 0000 $+..P.>........
0000720: d8a7 4cf5 ad7e 6abe 0000 0000 0000 0000 ..L..~j.........
0000730: d869 203f 9533 a2be 0000 0000 0000 0000 .i ?.3..........
0000740: 0000 0000 0000 0040 6bf4 6d7e 31b5 b03f .......@k.m~1..?
0000750: 0000 0000 0000 0000 3219 ab9d 1f41 96be ........2....A..
0000760: 0000 0000 0000 0000 b926 d998 ffe0 9f3e .........&.....>
0000770: 0000 0000 0000 0000 c77d 8dee 2ae1 b83e .........}..*..>
0000780: 0000 0000 0000 0000 7076 1727 a6a1 653e ........pv.'..e>
0000790: 0000 0000 0000 0000 c8e3 69f1 3f54 cbbf ..........i.?T..
00007a0: 0000 0000 0000 0000 bc51 aadf 8db5 b4bf .........Q......
00007b0: 0000 0000 0000 0000 8421 5e6d b864 653e .........!^m.de>
00007c0: 0000 0000 0000 0000 a45c 97d6 47ef c13f .........\..G..?
00007d0: 0000 0000 0000 0000 0000 0000 0000 0040 ...............@
00007e0: 580c fc1b 6050 b43e 0000 0000 0000 0000 X...`P.>........
00007f0: e1dd 2899 963d b9be 0000 0000 0000 0000 ..(..=..........
0000800: f098 804f 9cee babe 0000 0000 0000 0000 ...O............
0000810: bbba a80f 6b53 9c3e 0000 0000 0000 0000 ....kS.>........
0000820: cdc5 748c 3631 e0bf 0000 0000 0000 0000 ..t.61..........
0000830: 2af0 1da2 580a a13e 0000 0000 0000 0000 *...X..>........
0000840: f85a ee26 9852 843e 0000 0000 0000 0000 .Z.&.R.>........
0000850: 31c5 468c 3631 e03f 0000 0000 0000 0000 1.F.61.?........
0000860: 9299 7dec f414 86be 0000 0000 0000 0000 ..}.............
0000870: 822f 4855 5555 e53f 028b fb0b 3c8e 67be ./HUUU.?....<.g.
0000880: 0000 0000 0000 0000 e6de 49e1 241d a63f ..........I.$..?
0000890: 0000 0000 0000 0000 fa1c 05de 241d a63f ............$..?
00008a0: 0000 0000 0000 0000 34d5 928c b580 34be ........4.....4.
00008b0: 0000 0000 0000 0000 00d6 8b99 0461 023e .............a.>
00008c0: 0000 0000 0000 0000 be96 7d4c 60c9 5dbe ..........}L`.].
00008d0: 0000 0000 0000 0000 c03e 78c4 5826 42be .........>x.X&B.
00008e0: 0000 0000 0000 0000 0020 b091 40d5 21be ......... ..@.!.
00008f0: 0000 0000 0000 0000 8092 f420 8b45 293e ........... .E)>
0000900: 0000 0000 0000 0000 2e74 7c22 caad df39 .........t|"...9
0000910: 9135 b7cd 1aca 98bf 0000 0000 0000 0000 .5..............
0000920: 6b78 558f e98a 953e 0000 0000 0000 0000 kxU....>........
0000930: 5791 b997 d4a5 743e 0000 0000 0000 0000 W.....t>........
0000940: 4d7a d5de d758 8abe 0000 0000 0000 0000 Mz...X..........
0000950: c8eb 2725 a124 40be 0000 0000 0000 0000 ..'%.$@.........
0000960: 0e7b 0b34 09a5 c83f 0000 0000 0000 0000 .{.4...?........
0000970: 1374 66b3 dd45 c2bf 0000 0000 0000 0000 .tf..E..........
0000980: 9cad bd36 5b30 4abe 0000 0000 0000 0000 ...6[0J.........
0000990: 22ca 2329 4da6 cf3f 0000 0000 0000 0000 ".#)M..?........
00009a0: a908 7df2 2a10 b633 4102 b43d f7df bf3e ..}.*..3A..=...>
00009b0: 0000 0000 0000 0000 d321 5412 a30f 78be .........!T...x.
00009c0: 0000 0000 0000 0000 be26 a002 bcdf 643e .........&....d>
00009d0: 0000 0000 0000 0000 1a71 c094 33d1 6a3e .........q..3.j>
00009e0: 0000 0000 0000 0000 d8c4 c761 63d6 3a3e ...........ac.:>
00009f0: 0000 0000 0000 0000 f428 8c8f 9387 cb3e .........(.....>
0000a00: 0000 0000 0000 0000 959c e520 beb6 afbf ........... ....
0000a10: 0000 0000 0000 0000 5cac baff e1c3 3a3e ........\.....:>
0000a20: 0000 0000 0000 0000 3604 e0c7 994f a2bf ........6....O..
0000a30: 0000 0000 0000 0000 8081 c5a2 1f01 0000 ................
0000a40: 28c4 2e02 16af 583e 0000 0000 0000 0000 (.....X>........
0000a50: 0ffd a93a a81a 713e 0000 0000 0000 0000 ...:..q>........
0000a60: 5e9a f9f0 614e 803e 0000 0000 0000 0000 ^...aN.>........
0000a70: 82fc d823 ff71 673e 0000 0000 0000 0000 ...#.qg>........
0000a80: 8a5f 1480 3d19 d2bf 0000 0000 0000 0000 ._..=...........
0000a90: c0c4 bdfa 0b27 833e 0000 0000 0000 0000 .....'.>........
0000aa0: 802d 5ea3 1560 653e 0000 0000 0000 0000 .-^..`e>........
0000ab0: 7295 957f 3d19 d2bf 0000 0000 0000 0000 r...=...........
0000ac0: 40fa 65d6 bd01 73be 0000 0000 0000 0000 @.e...s.........
0000ad0: 0000 0000 0000 0040 4e7a c103 c082 c7bd .......@Nz......
0000ae0: 0000 0000 0000 0000 fe64 e1e0 da19 afbf .........d......
0000af0: 0000 0000 0000 0000 ddf4 52d5 f436 b0bf ..........R..6..
0000b00: 0000 0000 0000 0000 e2d5 34c7 96bc afbf ..........4.....
0000b10: 0000 0000 0000 0000 0017 aab8 55ff 70be ............U.p.
0000b20: 0000 0000 0000 0000 589f c883 5b70 703e ........X...[pp>
0000b30: 0000 0000 0000 0000 7039 f1f7 45b0 a23e ........p9..E..>
0000b40: 0000 0000 0000 0000 88a2 4a66 36fa 613e ..........Jf6.a>
0000b50: 0000 0000 0000 0000 3026 f8db ef44 99be ........0&...D..
0000b60: 0000 0000 0000 0000 0000 0000 0000 0040 ...............@
0000b70: 3ab1 0ba7 a58d d2bd 0000 0000 0000 0000 :...............
0000b80: c804 25ad 7e1f d0bf 0000 0000 0000 0000 ..%.~...........
0000b90: 4bbc 7b17 11ee d43f 0000 0000 0000 0000 K.{....?........
0000ba0: 4057 bff4 a604 b3bf 0000 0000 0000 0000 @W..............
0000bb0: 204f 5c0e 7187 5d3e 0000 0000 0000 0000 O\.q.]>........
0000bc0: 6070 df46 86ab 61be 0000 0000 0000 0000 `p.F..a.........
0000bd0: 40e4 5596 c4f6 b2be 0000 0000 0000 0000 @.U.............
0000be0: 003e 6579 2fc2 463e 0000 0000 0000 0000 .>ey/.F>........
0000bf0: 500b 4582 321f aa3e 0000 0000 0000 0000 P.E.2..>........
0000c00: 0000 0000 0000 0040 06c8 13a4 8c3a a63d .......@.....:.=
0000c10: 0000 0000 0000 0000 75d4 3257 e329 bb3f ........u.2W.).?
0000c20: 0000 0000 0000 0000 9b49 12ad 2322 c43f .........I..#".?
0000c30: 0000 0000 0000 0000 a2cc ac0f d9ca d0bf ................
0000c40: 0000 0000 0000 0000 d8ec a498 2321 67be ............#!g.
0000c50: 0000 0000 0000 0000 e8f4 36bb 3418 613e ..........6.4.a>
0000c60: 0000 0000 0000 0000 e08d cf0e c0c9 913e ...............>
0000c70: 0000 0000 0000 0000 f0c4 1ee7 d94e 4f3e .............NO>
0000c80: 0000 0000 0000 0000 20a2 909f 5b09 78be ........ ...[.x.
0000c90: 0000 0000 0000 0000 0000 0000 0000 0040 ...............@
0000ca0: 2a69 653b ad47 11be 0000 0000 0000 0000 *ie;.G..........
0000cb0: cede b402 68eb 463e 0000 0000 0000 0000 ....h.F>........
0000cc0: 3870 f49b c4e9 42be 0000 0000 0000 0000 8p....B.........
0000cd0: 7a5a 85f4 c17f 7dbe 0000 0000 0000 0000 zZ....}.........
0000ce0: b4bd abe6 dea9 afbd 0000 0000 0000 0000 ................
0000cf0: 303f 810e 3a8d 4d3e 0000 0000 0000 0000 0?..:.M>........
0000d00: 56c1 caac 92eb 103f 0000 0000 0000 0000 V......?........
0000d10: 90ea 6654 0d81 4dbe 0000 0000 0000 0000 ..fT..M.........
0000d20: 64dc 70c8 7b05 e2bf 0000 0000 0000 0000 d.p.{...........
0000d30: 0000 0000 0000 0040 881e 655a 1470 193e .......@..eZ.p.>
0000d40: 0000 0000 0000 0000 5c83 cc86 f7c5 a0be ........\.......
0000d50: 0000 0000 0000 0000 97ef ee3f c5d5 a43e ...........?...>
0000d60: 0000 0000 0000 0000 68b0 b504 dde5 7a3e ........h.....z>
0000d70: 0000 0000 0000 0000 2cba e388 789d 55be ........,...x.U.
0000d80: 0000 0000 0000 0000 f8cf 5c01 9a90 453e ..........\...E>
0000d90: 0000 0000 0000 0000 d030 93fe 8c13 e73f .........0.....?
0000da0: 0000 0000 0000 0000 b035 f3eb 43a0 453e .........5..C.E>
0000db0: 0000 0000 0000 0000 0c87 8334 9f14 093f ...........4...?
0000dc0: 0000 0000 0000 0000 2401 9267 ed96 9e11 ........$..g....
0000dd0: 1453 f0fd 5952 b1be 0000 0000 0000 0000 .S..YR..........
0000de0: c09b f917 e482 733e 0000 0000 0000 0000 ......s>........
0000df0: 38a0 a3a4 8b34 70be 0000 0000 0000 0000 8....4p.........
0000e00: 9f13 40bf ee7c 953e 0000 0000 0000 0000 ..@..|.>........
0000e10: c064 795f 3853 dcbf 0000 0000 0000 0000 .dy_8S..........
0000e20: 82db 8bbd c448 e0bf 0000 0000 0000 0000 .....H..........
0000e30: 00d9 583c 9511 13be 0000 0000 0000 0000 ..X<............
0000e40: 7ed6 1219 5f6a e0bf 0000 0000 0000 0000 ~..._j..........
0000e50: f062 5384 fbe4 4a3e 0000 0000 0000 0000 .bS...J>........
0000e60: fca3 76c4 d096 9e11 56a9 ac12 fc7f 5b3e ..v.....V.....[>
0000e70: 0000 0000 0000 0000 7479 84d6 0789 833e ........ty.....>
0000e80: 0000 0000 0000 0000 6eab 07b9 1af0 73be ........n.....s.
0000e90: 0000 0000 0000 0000 1d62 1157 7be7 69be .........b.W{.i.
0000ea0: 0000 0000 0000 0000 70d4 0b85 7ebb e5bf ........p...~...
0000eb0: 0000 0000 0000 0000 0e44 6738 50e2 ce3f .........Dg8P..?
0000ec0: 0000 0000 0000 0000 a033 dbb1 7275 89be .........3..ru..
0000ed0: 0000 0000 0000 0000 7a0a 264c 8815 d63f ........z.&L...?
0000ee0: 0000 0000 0000 0000 48be 232f 416d 6dbe ........H.#/Amm.
0000ef0: 0000 0000 0000 0000 6c89 eea2 ca96 9e11 ........l.......
0000f00: d229 6415 ccd1 56be 0000 0000 0000 0000 .)d...V.........
0000f10: c5e6 8a3b 6352 6d3e 0000 0000 0000 0000 ...;cRm>........
0000f20: c006 0629 c7b9 61be 0000 0000 0000 0000 ...)..a.........
0000f30: eb93 83ea 8a6e 873e 0000 0000 0000 0000 .....n.>........
0000f40: 5e7e cd97 e492 a2bf 0000 0000 0000 0000 ^~..............
0000f50: 66b4 4e2e c8c7 df3f 0000 0000 0000 0000 f.N....?........
0000f60: 20b1 e909 b146 6bbe 0000 0000 0000 0000 ....Fk.........
0000f70: 2a3c 70b7 35a3 ddbf 0000 0000 0000 0000 *<p.5...........
0000f80: 74b6 c8b7 b940 7d3e 0000 0000 0000 0000 t....@}>........
0000f90: 0000 0000 0000 0000 5885 1587 8115 863e ........X......>
0000fa0: 0000 0000 0000 0000 5731 2901 cb37 8c3f ........W1)..7.?
0000fb0: 0000 0000 0000 0000 78b2 2004 a4f6 93bf ........x. .....
0000fc0: 0000 0000 0000 0000 0c44 e87d 42c8 38bf .........D.}B.8.
0000fd0: 0000 0000 0000 0000 602d 038e a134 d2bd ........`-...4..
0000fe0: 0000 0000 0000 0000 5caf 16ba 529a de3d ........\...R..=
0000ff0: 0000 0000 0000 0000 309b d8db 54ed 7abe ........0...T.z.
0001000: 0000 0000 0000 0000 5834 d03b cd6f c83d ........X4.;.o.=
0001010: 0000 0000 0000 0000 40d4 d431 2db2 2f3e ........@..1-./>
0001020: 0000 0000 0000 0000 0a .........

View File

@ -1,272 +0,0 @@
nlm = 9
1 1 1 1 2.00000
1 0.0000000 0.0000000
2 0.4050880 0.0000000
3 0.4029369 0.0000000
4 0.4057568 0.0000000
5 -0.0000006 0.0000000
6 -0.0000004 0.0000000
7 0.0000001 0.0000000
8 -0.0000004 0.0000000
9 0.0000002 0.0000000
1 1 1 2 2.00000
1 -0.0000000 0.0000000
2 0.1930381 0.0000000
3 -0.6538923 0.0000000
4 0.4568927 0.0000000
5 -0.0000004 0.0000000
6 -0.0000007 0.0000000
7 -0.0000007 0.0000000
8 0.0000001 0.0000000
9 0.0000003 0.0000000
1 1 1 3 2.00000
1 0.0000000 0.0000000
2 -0.7428721 0.0000000
3 0.1099217 0.0000000
4 0.6337009 0.0000000
5 0.0000011 0.0000000
6 0.0000017 0.0000000
7 0.0000004 0.0000000
8 -0.0000001 0.0000000
9 -0.0000001 0.0000000
1 1 1 4 2.00000
1 -0.3182364 0.0000000
2 0.0000000 0.0000000
3 -0.0000000 0.0000000
4 -0.0000000 0.0000000
5 0.0000001 0.0000000
6 0.0000001 0.0000000
7 0.0000000 0.0000000
8 0.0000001 0.0000000
9 0.0000000 0.0000000
1 1 1 5 2.00000
1 -0.0000008 0.0000000
2 -0.0000013 0.0000000
3 0.0000010 0.0000000
4 0.0000008 0.0000000
5 -0.3314341 0.0000000
6 -0.3414627 0.0000000
7 -0.0000000 0.0000000
8 -0.3413397 0.0000000
9 -0.0000000 0.0000000
1 1 1 6 2.00000
1 -0.0000006 0.0000000
2 -0.0000005 0.0000000
3 -0.0000009 0.0000000
4 -0.0000006 0.0000000
5 0.5355566 0.0000000
6 -0.2614713 0.0000000
7 -0.0000001 0.0000000
8 -0.2587571 0.0000000
9 0.0000000 0.0000000
1 1 1 7 2.00000
1 0.0000003 0.0000000
2 -0.0000010 0.0000000
3 0.0000006 0.0000000
4 0.0000010 0.0000000
5 -0.0019230 0.0000000
6 -0.5896138 0.0000000
7 0.0000000 0.0000000
8 0.5917712 0.0000000
9 0.0000001 0.0000000
1 1 1 8 0.00000
1 -0.0000006 0.0000000
2 -0.0000002 0.0000000
3 0.0000002 0.0000000
4 -0.0000002 0.0000000
5 -0.0000000 0.0000000
6 0.0000001 0.0000000
7 -0.0384668 0.0000000
8 -0.0000001 0.0000000
9 0.8256005 0.0000000
1 1 1 9 0.00000
1 0.0000013 0.0000000
2 -0.0000007 0.0000000
3 0.0000009 0.0000000
4 0.0000001 0.0000000
5 -0.0000001 0.0000000
6 0.0000000 0.0000000
7 -0.6450752 0.0000000
8 0.0000000 0.0000000
9 -0.0484466 0.0000000
1 1 2 1 2.00000
1 0.0000000 0.0000000
2 0.6894316 0.0000000
3 0.6894316 0.0000000
4 0.0000003 0.0000000
5 -0.0000009 0.0000000
6 -0.0000008 0.0000000
7 -0.0000003 0.0000000
8 0.0000010 0.0000000
9 0.0000001 0.0000000
1 1 2 2 2.00000
1 0.0000000 0.0000000
2 0.0000002 0.0000000
3 0.0000002 0.0000000
4 -0.9184595 0.0000000
5 0.0000008 0.0000000
6 0.0000001 0.0000000
7 -0.0000000 0.0000000
8 -0.0000008 0.0000000
9 0.0000000 0.0000000
1 1 2 3 2.00000
1 -0.0000000 0.0000000
2 0.5870812 0.0000000
3 -0.5870812 0.0000000
4 -0.0000000 0.0000000
5 0.0000000 0.0000000
6 0.0000006 0.0000000
7 0.0000002 0.0000000
8 -0.0000000 0.0000000
9 -0.0000005 0.0000000
1 1 2 4 2.00000
1 0.0652648 0.0000000
2 -0.0000003 0.0000000
3 0.0000005 0.0000000
4 0.0000015 0.0000000
5 0.0000000 0.0000000
6 -0.2135086 0.0000000
7 -0.0808953 0.0000000
8 0.0000000 0.0000000
9 0.1401148 0.0000000
1 1 2 5 2.00000
1 0.0000012 0.0000000
2 -0.0000015 0.0000000
3 -0.0000016 0.0000000
4 0.0000004 0.0000000
5 -0.5060075 0.0000000
6 0.0000005 0.0000000
7 0.0000002 0.0000000
8 0.5060075 0.0000000
9 -0.0000002 0.0000000
1 1 2 6 0.66667
1 -0.0000000 0.0000000
2 0.0431911 0.0000000
3 0.0431911 0.0000000
4 -0.0000000 0.0000000
5 0.0000000 0.0000000
6 -0.0000000 0.0000000
7 -0.0000000 0.0000000
8 -0.0000000 0.0000000
9 0.0000000 0.0000000
1 1 2 7 0.00000
1 -0.0242085 0.0000000
2 0.0000003 0.0000000
3 0.0000001 0.0000000
4 -0.0000002 0.0000000
5 -0.0000000 0.0000000
6 0.1925365 0.0000000
7 -0.1427571 0.0000000
8 -0.0000000 0.0000000
9 0.2472626 0.0000000
1 1 2 8 0.00000
1 0.0000019 0.0000000
2 -0.0000001 0.0000000
3 0.0000000 0.0000000
4 0.0000000 0.0000000
5 0.0000000 0.0000000
6 0.0000033 0.0000000
7 -0.0619411 0.0000000
8 0.0000000 0.0000000
9 -0.0357636 0.0000000
1 1 2 9 0.00000
1 0.0000000 0.0000000
2 0.0000001 0.0000000
3 0.0000001 0.0000000
4 0.0000000 0.0000000
5 -0.2827905 0.0000000
6 0.0000001 0.0000000
7 0.0000000 0.0000000
8 -0.2827905 0.0000000
9 -0.0000001 0.0000000
1 1 3 1 2.00000
1 -0.0000000 0.0000000
2 -0.0607441 0.0000000
3 -0.0633386 0.0000000
4 -0.0619857 0.0000000
5 -0.0000001 0.0000000
6 0.0000001 0.0000000
7 0.0000006 0.0000000
8 0.0000000 0.0000000
9 -0.0000004 0.0000000
1 1 3 2 2.00000
1 -0.0000000 0.0000000
2 -0.2519223 0.0000000
3 0.3270304 0.0000000
4 -0.0742897 0.0000000
5 0.0000000 0.0000000
6 -0.0000000 0.0000000
7 -0.0000011 0.0000000
8 0.0000000 0.0000000
9 0.0000008 0.0000000
1 1 3 3 2.00000
1 0.0000000 0.0000000
2 0.1061079 0.0000000
3 0.1572919 0.0000000
4 -0.2623809 0.0000000
5 -0.0000000 0.0000000
6 0.0000000 0.0000000
7 0.0000003 0.0000000
8 0.0000000 0.0000000
9 -0.0000001 0.0000000
1 1 3 4 2.00000
1 -0.0000000 0.0000000
2 0.0000000 0.0000000
3 -0.0000000 0.0000000
4 -0.0000001 0.0000000
5 -0.0000000 0.0000000
6 0.0000000 0.0000000
7 0.0000645 0.0000000
8 -0.0000000 0.0000000
9 -0.5631694 0.0000000
1 1 3 5 2.00000
1 0.0000000 0.0000000
2 -0.0000005 0.0000000
3 0.0000006 0.0000000
4 0.0000001 0.0000000
5 -0.0000000 0.0000000
6 0.0000000 0.0000000
7 0.7211366 0.0000000
8 0.0000000 0.0000000
9 0.0000478 0.0000000
1 1 3 6 0.00000
1 -0.0000010 0.0000000
2 0.0000001 0.0000000
3 -0.0000001 0.0000000
4 0.0000003 0.0000000
5 -0.4425794 0.0000000
6 -0.5088829 0.0000000
7 -0.0000000 0.0000000
8 -0.5129848 0.0000000
9 0.0000000 0.0000000
1 1 3 7 0.00000
1 0.0000000 0.0000000
2 0.0000001 0.0000000
3 -0.0000001 0.0000000
4 -0.0000000 0.0000000
5 -0.6791375 0.0000000
6 0.2412815 0.0000000
7 -0.0000002 0.0000000
8 0.3450642 0.0000000
9 -0.0000001 0.0000000
1 1 3 8 0.00000
1 -0.0000000 0.0000000
2 0.0000001 0.0000000
3 -0.0000000 0.0000000
4 0.0000002 0.0000000
5 -0.0362770 0.0000000
6 0.4965687 0.0000000
7 -0.0000001 0.0000000
8 -0.4630865 0.0000000
9 0.0000001 0.0000000
1 1 3 9 0.00000
1 0.0000002 0.0000000
2 0.0137783 0.0000000
3 -0.0194955 0.0000000
4 -0.0003781 0.0000000
5 -0.0000000 0.0000000
6 0.0000000 0.0000000
7 -0.0000001 0.0000000
8 0.0000000 0.0000000
9 0.0000000 0.0000000

View File

@ -1,56 +0,0 @@
r"""
Module defining a custom TestCase with extra functionality.
"""
import unittest
import numpy as np
import difflib
class MyTestCase(unittest.TestCase):
"""
Custom TestCase class supporting additional equality checks:
- numpy array equality
- file equality
"""
def __init__(self, *args, **kwargs):
"""
Initializes a custom equality function for comparing numpy arrays.
"""
super(MyTestCase, self).__init__(*args, **kwargs)
self.addTypeEqualityFunc(np.ndarray, self.is_arrays_equal)
def is_arrays_equal(self, arr1, arr2, msg=None):
"""
Raises self.failureException is arrays arr1 and arr2
are not equal.
"""
if not np.allclose(arr1, arr2):
raise self.failureException(msg)
def assertFileEqual(self, file1, file2):
"""
Compares two files using difflib.
Empty lines are ignored.
Files are assumed to be relatively small, otherwise
the data is truncated.
"""
MAX_SIZE = 100000
with open(file1, 'r') as f1:
str1 = f1.read(MAX_SIZE)
with open(file2, 'r') as f2:
str2 = f2.read(MAX_SIZE)
#
# Make a diff
#
# Remove empty lines
lstr1 = filter(lambda s: s.strip() != '', str1.splitlines(True))
lstr2 = filter(lambda s: s.strip() != '', str2.splitlines(True))
# diff
delta = difflib.unified_diff(lstr1, lstr2)
# combine delta's to a string
diff = ''.join(delta)
# if 'diff' is non-empty, files are different
if diff:
return self.fail("Files '%s' and '%s' differ"%(file1, file2))

View File

@ -1 +0,0 @@
PYTHONPATH=../../python:../../c:$PYTHONPATH python $1

View File

@ -1,93 +0,0 @@
r"""
Tests of 'read_plocar()' from module 'plocar_io.c_plocar_io'
"""
import mytest
import numpy as np
from plocar_io.c_plocar_io import read_plocar
################################################################################
#
# TestFileIO
#
################################################################################
class TestFileIO(mytest.MyTestCase):
"""
Function:
def read_plocar(filename)
Scenarios:
- **if** file PLOCAR does not exist **raise** IOError
- **if** PLOCAR is truncated **raise** IOError
- **if** the precision flag is not 4 or 8 **raise** ValueError
- **if** PLOCAR with prec=8 is read **compare** the output
- **if** PLOCAR with prec=4 is read **compare** the output
"""
# Scenario 1
def test_no_plocar(self):
err_mess = "Error opening xPLOCAR"
with self.assertRaisesRegexp(IOError, err_mess):
read_plocar('xPLOCAR')
# Scenario 2
def test_end_of_file(self):
err_mess = "End-of-file reading"
with self.assertRaisesRegexp(IOError, err_mess):
read_plocar('PLOCAR.trunc')
# Scenario 3
def test_wrong_prec(self):
err_mess = "only 'prec = 4, 8' are supported"
with self.assertRaisesRegexp(ValueError, err_mess):
read_plocar('PLOCAR.noprec')
# Scenario 4
def test_plocar_prec8(self):
pars, plo, ferw = read_plocar('PLOCAR.prec8')
nion, ns, nk, nb, nlm = plo.shape
test_file = 'PLOCAR.prec8.out.test'
with open(test_file, 'wt') as f:
f.write(" nlm =%5i\n"%(nlm))
ion = 1
isp = 1
for ik in xrange(nk):
for ib in xrange(nb):
f.write("%5i%5i%5i%5i%10.5f\n"%(ion, isp, ik+1, ib+1, ferw[0, 0, ik, ib]))
for ilm in xrange(nlm):
p = plo[0, 0, ik, ib, ilm]
f.write("%5i%15.7f%15.7f\n"%(ilm+1, p.real, p.imag))
expected_file = 'PLOCAR.prec8.out'
self.assertFileEqual(test_file, expected_file)
# Scenario 5
def test_plocar_example(self):
pars, plo, ferw = read_plocar('PLOCAR.example')
nion, ns, nk, nb, nlm = plo.shape
self.assertEqual(pars['nion'], nion)
self.assertEqual(pars['ns'], ns)
self.assertEqual(pars['nk'], nk)
self.assertEqual(pars['nb'], nb)
test_file = 'PLOCAR.example.out.test'
with open(test_file, 'wt') as f:
f.write("pars: %s\n"%(pars))
for ion in xrange(nion):
for isp in xrange(ns):
for ik in xrange(nk):
for ib in xrange(nb):
f.write("%5i%5i%5i%5i %s\n"%(ion+1, isp+1, ik+1, ib+1,
ferw[ion, isp, ik, ib]))
for ilm in xrange(nlm):
p = plo[ion, isp, ik, ib, ilm]
f.write("%5i %s\n"%(ilm+1, p))
expected_file = 'PLOCAR.example.out'
self.assertFileEqual(test_file, expected_file)

View File

@ -1,10 +0,0 @@
r"""
Test suite for module `plocar_io`.
"""
import unittest
if __name__ == '__main__':
suite = unittest.TestLoader().discover('./')
unittest.TextTestRunner(verbosity=2, buffer=True).run(suite)
# unittest.TextTestRunner(verbosity=2, buffer=False).run(suite)

View File

@ -1,2 +0,0 @@
*.pyc
*.test

View File

@ -1,609 +0,0 @@
1 1 1 0
0.1333597E+02 0.2587511E-09 0.2587511E-09 0.2587511E-09 0.5000000E-15
1.000000000000000E-004
CAR
V
17.10090628 -34.14880953 301 5.84395237 1.00000000
-34.149 0.0000E+00 0.0000E+00
-33.978 0.0000E+00 0.0000E+00
-33.807 0.0000E+00 0.0000E+00
-33.636 0.0000E+00 0.0000E+00
-33.465 0.0000E+00 0.0000E+00
-33.295 0.0000E+00 0.0000E+00
-33.124 0.0000E+00 0.0000E+00
-32.953 0.0000E+00 0.0000E+00
-32.782 0.3428E-37 0.5857E-38
-32.611 0.1961E-24 0.3349E-25
-32.440 0.2784E-14 0.4757E-15
-32.270 0.8681E-07 0.1483E-07
-32.099 0.3941E-02 0.6732E-03
-31.928 -0.2188E+00 -0.3670E-01
-31.757 0.8736E+01 0.1456E+01
-31.586 0.8403E+01 0.2891E+01
-31.415 0.2792E+01 0.3368E+01
-31.245 0.6307E+01 0.4445E+01
-31.074 0.7856E+01 0.5787E+01
-30.903 0.1212E+01 0.5994E+01
-30.732 0.3246E-01 0.6000E+01
-30.561 0.3448E-04 0.6000E+01
-30.390 0.2050E-10 0.6000E+01
-30.220 0.0000E+00 0.6000E+01
-30.049 0.0000E+00 0.6000E+01
-29.878 0.0000E+00 0.6000E+01
-29.707 0.0000E+00 0.6000E+01
-29.536 0.0000E+00 0.6000E+01
-29.366 0.0000E+00 0.6000E+01
-29.195 0.0000E+00 0.6000E+01
-29.024 0.0000E+00 0.6000E+01
-28.853 0.0000E+00 0.6000E+01
-28.682 0.0000E+00 0.6000E+01
-28.511 0.0000E+00 0.6000E+01
-28.341 0.0000E+00 0.6000E+01
-28.170 0.0000E+00 0.6000E+01
-27.999 0.0000E+00 0.6000E+01
-27.828 0.0000E+00 0.6000E+01
-27.657 0.0000E+00 0.6000E+01
-27.486 0.0000E+00 0.6000E+01
-27.316 0.0000E+00 0.6000E+01
-27.145 0.0000E+00 0.6000E+01
-26.974 0.0000E+00 0.6000E+01
-26.803 0.0000E+00 0.6000E+01
-26.632 0.0000E+00 0.6000E+01
-26.461 0.0000E+00 0.6000E+01
-26.291 0.0000E+00 0.6000E+01
-26.120 0.0000E+00 0.6000E+01
-25.949 0.0000E+00 0.6000E+01
-25.778 0.0000E+00 0.6000E+01
-25.607 0.0000E+00 0.6000E+01
-25.436 0.0000E+00 0.6000E+01
-25.266 0.0000E+00 0.6000E+01
-25.095 0.0000E+00 0.6000E+01
-24.924 0.0000E+00 0.6000E+01
-24.753 0.0000E+00 0.6000E+01
-24.582 0.0000E+00 0.6000E+01
-24.411 0.0000E+00 0.6000E+01
-24.241 0.0000E+00 0.6000E+01
-24.070 0.0000E+00 0.6000E+01
-23.899 0.0000E+00 0.6000E+01
-23.728 0.0000E+00 0.6000E+01
-23.557 0.0000E+00 0.6000E+01
-23.386 0.0000E+00 0.6000E+01
-23.216 0.0000E+00 0.6000E+01
-23.045 0.0000E+00 0.6000E+01
-22.874 0.0000E+00 0.6000E+01
-22.703 0.0000E+00 0.6000E+01
-22.532 0.0000E+00 0.6000E+01
-22.361 0.0000E+00 0.6000E+01
-22.191 0.0000E+00 0.6000E+01
-22.020 0.0000E+00 0.6000E+01
-21.849 0.0000E+00 0.6000E+01
-21.678 0.0000E+00 0.6000E+01
-21.507 0.0000E+00 0.6000E+01
-21.336 0.0000E+00 0.6000E+01
-21.166 0.0000E+00 0.6000E+01
-20.995 0.0000E+00 0.6000E+01
-20.824 0.0000E+00 0.6000E+01
-20.653 0.0000E+00 0.6000E+01
-20.482 0.0000E+00 0.6000E+01
-20.311 0.0000E+00 0.6000E+01
-20.141 0.0000E+00 0.6000E+01
-19.970 0.0000E+00 0.6000E+01
-19.799 0.0000E+00 0.6000E+01
-19.628 0.0000E+00 0.6000E+01
-19.457 0.0000E+00 0.6000E+01
-19.286 0.0000E+00 0.6000E+01
-19.116 0.0000E+00 0.6000E+01
-18.945 0.0000E+00 0.6000E+01
-18.774 0.0000E+00 0.6000E+01
-18.603 0.0000E+00 0.6000E+01
-18.432 0.0000E+00 0.6000E+01
-18.261 0.0000E+00 0.6000E+01
-18.091 0.0000E+00 0.6000E+01
-17.920 0.0000E+00 0.6000E+01
-17.749 0.0000E+00 0.6000E+01
-17.578 0.0000E+00 0.6000E+01
-17.407 0.0000E+00 0.6000E+01
-17.236 0.0000E+00 0.6000E+01
-17.066 0.0000E+00 0.6000E+01
-16.895 0.0000E+00 0.6000E+01
-16.724 0.0000E+00 0.6000E+01
-16.553 0.0000E+00 0.6000E+01
-16.382 0.0000E+00 0.6000E+01
-16.211 0.0000E+00 0.6000E+01
-16.041 0.0000E+00 0.6000E+01
-15.870 0.0000E+00 0.6000E+01
-15.699 0.0000E+00 0.6000E+01
-15.528 0.0000E+00 0.6000E+01
-15.357 0.0000E+00 0.6000E+01
-15.186 0.0000E+00 0.6000E+01
-15.016 0.0000E+00 0.6000E+01
-14.845 0.0000E+00 0.6000E+01
-14.674 0.0000E+00 0.6000E+01
-14.503 0.0000E+00 0.6000E+01
-14.332 0.0000E+00 0.6000E+01
-14.161 0.0000E+00 0.6000E+01
-13.991 0.0000E+00 0.6000E+01
-13.820 0.0000E+00 0.6000E+01
-13.649 0.0000E+00 0.6000E+01
-13.478 0.0000E+00 0.6000E+01
-13.307 0.0000E+00 0.6000E+01
-13.136 0.0000E+00 0.6000E+01
-12.966 0.0000E+00 0.6000E+01
-12.795 0.0000E+00 0.6000E+01
-12.624 0.0000E+00 0.6000E+01
-12.453 0.0000E+00 0.6000E+01
-12.282 0.0000E+00 0.6000E+01
-12.111 0.0000E+00 0.6000E+01
-11.941 0.0000E+00 0.6000E+01
-11.770 0.0000E+00 0.6000E+01
-11.599 0.0000E+00 0.6000E+01
-11.428 0.0000E+00 0.6000E+01
-11.257 0.0000E+00 0.6000E+01
-11.086 0.0000E+00 0.6000E+01
-10.916 0.0000E+00 0.6000E+01
-10.745 0.0000E+00 0.6000E+01
-10.574 0.0000E+00 0.6000E+01
-10.403 0.0000E+00 0.6000E+01
-10.232 0.0000E+00 0.6000E+01
-10.061 0.0000E+00 0.6000E+01
-9.891 0.0000E+00 0.6000E+01
-9.720 0.0000E+00 0.6000E+01
-9.549 0.0000E+00 0.6000E+01
-9.378 0.0000E+00 0.6000E+01
-9.207 0.0000E+00 0.6000E+01
-9.036 0.0000E+00 0.6000E+01
-8.866 0.0000E+00 0.6000E+01
-8.695 0.0000E+00 0.6000E+01
-8.524 0.0000E+00 0.6000E+01
-8.353 0.0000E+00 0.6000E+01
-8.182 0.0000E+00 0.6000E+01
-8.011 0.0000E+00 0.6000E+01
-7.841 0.0000E+00 0.6000E+01
-7.670 0.0000E+00 0.6000E+01
-7.499 0.0000E+00 0.6000E+01
-7.328 0.0000E+00 0.6000E+01
-7.157 0.0000E+00 0.6000E+01
-6.986 0.0000E+00 0.6000E+01
-6.816 0.0000E+00 0.6000E+01
-6.645 0.0000E+00 0.6000E+01
-6.474 0.0000E+00 0.6000E+01
-6.303 0.0000E+00 0.6000E+01
-6.132 0.0000E+00 0.6000E+01
-5.961 0.0000E+00 0.6000E+01
-5.791 0.0000E+00 0.6000E+01
-5.620 0.0000E+00 0.6000E+01
-5.449 0.0000E+00 0.6000E+01
-5.278 0.0000E+00 0.6000E+01
-5.107 0.0000E+00 0.6000E+01
-4.936 0.0000E+00 0.6000E+01
-4.766 0.0000E+00 0.6000E+01
-4.595 0.0000E+00 0.6000E+01
-4.424 0.0000E+00 0.6000E+01
-4.253 0.0000E+00 0.6000E+01
-4.082 0.0000E+00 0.6000E+01
-3.911 0.0000E+00 0.6000E+01
-3.741 0.0000E+00 0.6000E+01
-3.570 0.0000E+00 0.6000E+01
-3.399 0.0000E+00 0.6000E+01
-3.228 0.0000E+00 0.6000E+01
-3.057 0.0000E+00 0.6000E+01
-2.886 0.0000E+00 0.6000E+01
-2.716 0.0000E+00 0.6000E+01
-2.545 0.0000E+00 0.6000E+01
-2.374 0.0000E+00 0.6000E+01
-2.203 0.0000E+00 0.6000E+01
-2.032 0.0000E+00 0.6000E+01
-1.861 0.0000E+00 0.6000E+01
-1.691 0.1508E-31 0.6000E+01
-1.520 0.4300E-20 0.6000E+01
-1.349 0.2901E-11 0.6000E+01
-1.178 0.3715E-05 0.6000E+01
-1.007 0.2036E-02 0.6000E+01
-0.836 0.1134E+00 0.6020E+01
-0.666 0.3236E+00 0.6075E+01
-0.495 -0.5496E-02 0.6074E+01
-0.324 0.5193E-04 0.6074E+01
-0.153 0.2420E-09 0.6074E+01
0.018 0.0000E+00 0.6074E+01
0.189 0.0000E+00 0.6074E+01
0.359 0.0000E+00 0.6074E+01
0.530 0.0000E+00 0.6074E+01
0.701 0.0000E+00 0.6074E+01
0.872 0.0000E+00 0.6074E+01
1.043 0.0000E+00 0.6074E+01
1.213 0.0000E+00 0.6074E+01
1.384 0.1441E-25 0.6074E+01
1.555 0.3694E-15 0.6074E+01
1.726 0.2113E-07 0.6074E+01
1.897 0.1843E-02 0.6074E+01
2.068 -0.1717E+00 0.6045E+01
2.238 0.4911E+01 0.6884E+01
2.409 0.4385E+00 0.6959E+01
2.580 0.2317E-01 0.6963E+01
2.751 0.1027E-04 0.6963E+01
2.922 0.1649E-07 0.6963E+01
3.093 0.1161E-02 0.6963E+01
3.263 -0.9886E-01 0.6946E+01
3.434 0.2549E+01 0.7382E+01
3.605 0.1134E+00 0.7401E+01
3.776 0.1880E+01 0.7722E+01
3.947 0.1410E+01 0.7963E+01
4.118 0.2885E+01 0.8456E+01
4.288 -0.6849E-01 0.8444E+01
4.459 0.1593E-01 0.8447E+01
4.630 -0.3213E+00 0.8392E+01
4.801 0.1107E+02 0.1028E+02
4.972 0.1346E+01 0.1051E+02
5.143 0.3027E-01 0.1052E+02
5.313 0.6891E-04 0.1052E+02
5.484 0.8093E-04 0.1052E+02
5.655 0.1912E-01 0.1052E+02
5.826 0.1840E+01 0.1084E+02
5.997 0.4326E+01 0.1158E+02
6.168 0.3115E+00 0.1163E+02
6.338 0.6462E-02 0.1163E+02
6.509 0.1132E-04 0.1163E+02
6.680 0.8927E-11 0.1163E+02
6.851 0.7510E-09 0.1163E+02
7.022 0.2862E-03 0.1163E+02
7.193 -0.1755E-01 0.1163E+02
7.363 0.3080E+01 0.1215E+02
7.534 0.2128E+01 0.1252E+02
7.705 -0.1424E+00 0.1249E+02
7.876 0.4758E+01 0.1330E+02
8.047 0.1429E+01 0.1355E+02
8.218 0.4090E+01 0.1425E+02
8.388 0.9009E+01 0.1579E+02
8.559 0.2760E+01 0.1626E+02
8.730 0.4220E+01 0.1698E+02
8.901 -0.9675E-01 0.1696E+02
9.072 0.8982E-03 0.1696E+02
9.243 0.5584E-08 0.1696E+02
9.413 0.0000E+00 0.1696E+02
9.584 0.0000E+00 0.1696E+02
9.755 0.0000E+00 0.1696E+02
9.926 0.0000E+00 0.1696E+02
10.097 0.4864E-37 0.1696E+02
10.268 0.2294E-24 0.1696E+02
10.438 0.2678E-14 0.1696E+02
10.609 0.6806E-07 0.1696E+02
10.780 0.2349E-02 0.1696E+02
10.951 -0.1323E+00 0.1694E+02
11.122 0.2769E+01 0.1741E+02
11.293 -0.4470E-01 0.1741E+02
11.463 0.7455E-02 0.1741E+02
11.634 0.1064E-05 0.1741E+02
11.805 0.1554E-12 0.1741E+02
11.976 0.0000E+00 0.1741E+02
12.147 0.0000E+00 0.1741E+02
12.318 0.0000E+00 0.1741E+02
12.488 0.0000E+00 0.1741E+02
12.659 0.0000E+00 0.1741E+02
12.830 0.0000E+00 0.1741E+02
13.001 0.0000E+00 0.1741E+02
13.172 0.0000E+00 0.1741E+02
13.343 0.0000E+00 0.1741E+02
13.513 0.0000E+00 0.1741E+02
13.684 0.0000E+00 0.1741E+02
13.855 0.1244E-33 0.1741E+02
14.026 0.1396E-21 0.1741E+02
14.197 0.3803E-12 0.1741E+02
14.368 0.2119E-05 0.1741E+02
14.538 0.1137E-01 0.1741E+02
14.709 0.3659E-02 0.1741E+02
14.880 0.3617E+01 0.1803E+02
15.051 -0.1653E+00 0.1800E+02
15.222 0.2517E-02 0.1800E+02
15.393 0.5772E-07 0.1800E+02
15.563 0.1926E-14 0.1800E+02
15.734 0.0000E+00 0.1800E+02
15.905 0.0000E+00 0.1800E+02
16.076 0.0000E+00 0.1800E+02
16.247 0.0000E+00 0.1800E+02
16.418 0.0000E+00 0.1800E+02
16.588 0.0000E+00 0.1800E+02
16.759 0.0000E+00 0.1800E+02
16.930 0.0000E+00 0.1800E+02
17.101 0.0000E+00 0.1800E+02
17.10090628 -34.14880953 301 5.84395237 1.00000000
-34.149 0.0000E+00 0.0000E+00 0.0000E+00
-33.978 0.0000E+00 0.0000E+00 0.0000E+00
-33.807 0.0000E+00 0.0000E+00 0.0000E+00
-33.636 0.0000E+00 0.0000E+00 0.0000E+00
-33.465 0.0000E+00 0.0000E+00 0.0000E+00
-33.295 0.0000E+00 0.0000E+00 0.0000E+00
-33.124 0.0000E+00 0.0000E+00 0.0000E+00
-32.953 0.0000E+00 0.0000E+00 0.0000E+00
-32.782 0.2282E-40 0.3359E-37 0.5411E-41
-32.611 0.1305E-27 0.1921E-24 0.3095E-28
-32.440 0.1853E-17 0.2728E-14 0.4398E-18
-32.270 0.5762E-10 0.8504E-07 0.1383E-10
-32.099 0.2518E-05 0.3861E-02 0.7137E-06
-31.928 -0.1566E-03 -0.2142E+00 -0.2459E-04
-31.757 0.3856E-02 0.8567E+01 0.3103E-02
-31.586 0.1543E-02 0.8270E+01 0.4254E-02
-31.415 -0.3177E-04 0.2760E+01 0.1220E-02
-31.245 0.3742E-04 0.6273E+01 0.1032E-02
-31.074 0.1298E-03 0.7836E+01 0.2060E-03
-30.903 -0.2630E-05 0.1210E+01 -0.3012E-05
-30.732 0.2432E-07 0.3240E-01 0.4557E-07
-30.561 0.1332E-12 0.3442E-04 0.2841E-12
-30.390 0.2660E-32 0.2046E-10 0.1981E-19
-30.220 0.0000E+00 0.0000E+00 0.0000E+00
-30.049 0.0000E+00 0.0000E+00 0.0000E+00
-29.878 0.0000E+00 0.0000E+00 0.0000E+00
-29.707 0.0000E+00 0.0000E+00 0.0000E+00
-29.536 0.0000E+00 0.0000E+00 0.0000E+00
-29.366 0.0000E+00 0.0000E+00 0.0000E+00
-29.195 0.0000E+00 0.0000E+00 0.0000E+00
-29.024 0.0000E+00 0.0000E+00 0.0000E+00
-28.853 0.0000E+00 0.0000E+00 0.0000E+00
-28.682 0.0000E+00 0.0000E+00 0.0000E+00
-28.511 0.0000E+00 0.0000E+00 0.0000E+00
-28.341 0.0000E+00 0.0000E+00 0.0000E+00
-28.170 0.0000E+00 0.0000E+00 0.0000E+00
-27.999 0.0000E+00 0.0000E+00 0.0000E+00
-27.828 0.0000E+00 0.0000E+00 0.0000E+00
-27.657 0.0000E+00 0.0000E+00 0.0000E+00
-27.486 0.0000E+00 0.0000E+00 0.0000E+00
-27.316 0.0000E+00 0.0000E+00 0.0000E+00
-27.145 0.0000E+00 0.0000E+00 0.0000E+00
-26.974 0.0000E+00 0.0000E+00 0.0000E+00
-26.803 0.0000E+00 0.0000E+00 0.0000E+00
-26.632 0.0000E+00 0.0000E+00 0.0000E+00
-26.461 0.0000E+00 0.0000E+00 0.0000E+00
-26.291 0.0000E+00 0.0000E+00 0.0000E+00
-26.120 0.0000E+00 0.0000E+00 0.0000E+00
-25.949 0.0000E+00 0.0000E+00 0.0000E+00
-25.778 0.0000E+00 0.0000E+00 0.0000E+00
-25.607 0.0000E+00 0.0000E+00 0.0000E+00
-25.436 0.0000E+00 0.0000E+00 0.0000E+00
-25.266 0.0000E+00 0.0000E+00 0.0000E+00
-25.095 0.0000E+00 0.0000E+00 0.0000E+00
-24.924 0.0000E+00 0.0000E+00 0.0000E+00
-24.753 0.0000E+00 0.0000E+00 0.0000E+00
-24.582 0.0000E+00 0.0000E+00 0.0000E+00
-24.411 0.0000E+00 0.0000E+00 0.0000E+00
-24.241 0.0000E+00 0.0000E+00 0.0000E+00
-24.070 0.0000E+00 0.0000E+00 0.0000E+00
-23.899 0.0000E+00 0.0000E+00 0.0000E+00
-23.728 0.0000E+00 0.0000E+00 0.0000E+00
-23.557 0.0000E+00 0.0000E+00 0.0000E+00
-23.386 0.0000E+00 0.0000E+00 0.0000E+00
-23.216 0.0000E+00 0.0000E+00 0.0000E+00
-23.045 0.0000E+00 0.0000E+00 0.0000E+00
-22.874 0.0000E+00 0.0000E+00 0.0000E+00
-22.703 0.0000E+00 0.0000E+00 0.0000E+00
-22.532 0.0000E+00 0.0000E+00 0.0000E+00
-22.361 0.0000E+00 0.0000E+00 0.0000E+00
-22.191 0.0000E+00 0.0000E+00 0.0000E+00
-22.020 0.0000E+00 0.0000E+00 0.0000E+00
-21.849 0.0000E+00 0.0000E+00 0.0000E+00
-21.678 0.0000E+00 0.0000E+00 0.0000E+00
-21.507 0.0000E+00 0.0000E+00 0.0000E+00
-21.336 0.0000E+00 0.0000E+00 0.0000E+00
-21.166 0.0000E+00 0.0000E+00 0.0000E+00
-20.995 0.0000E+00 0.0000E+00 0.0000E+00
-20.824 0.0000E+00 0.0000E+00 0.0000E+00
-20.653 0.0000E+00 0.0000E+00 0.0000E+00
-20.482 0.0000E+00 0.0000E+00 0.0000E+00
-20.311 0.0000E+00 0.0000E+00 0.0000E+00
-20.141 0.0000E+00 0.0000E+00 0.0000E+00
-19.970 0.0000E+00 0.0000E+00 0.0000E+00
-19.799 0.0000E+00 0.0000E+00 0.0000E+00
-19.628 0.0000E+00 0.0000E+00 0.0000E+00
-19.457 0.0000E+00 0.0000E+00 0.0000E+00
-19.286 0.0000E+00 0.0000E+00 0.0000E+00
-19.116 0.0000E+00 0.0000E+00 0.0000E+00
-18.945 0.0000E+00 0.0000E+00 0.0000E+00
-18.774 0.0000E+00 0.0000E+00 0.0000E+00
-18.603 0.0000E+00 0.0000E+00 0.0000E+00
-18.432 0.0000E+00 0.0000E+00 0.0000E+00
-18.261 0.0000E+00 0.0000E+00 0.0000E+00
-18.091 0.0000E+00 0.0000E+00 0.0000E+00
-17.920 0.0000E+00 0.0000E+00 0.0000E+00
-17.749 0.0000E+00 0.0000E+00 0.0000E+00
-17.578 0.0000E+00 0.0000E+00 0.0000E+00
-17.407 0.0000E+00 0.0000E+00 0.0000E+00
-17.236 0.0000E+00 0.0000E+00 0.0000E+00
-17.066 0.0000E+00 0.0000E+00 0.0000E+00
-16.895 0.0000E+00 0.0000E+00 0.0000E+00
-16.724 0.0000E+00 0.0000E+00 0.0000E+00
-16.553 0.0000E+00 0.0000E+00 0.0000E+00
-16.382 0.0000E+00 0.0000E+00 0.0000E+00
-16.211 0.0000E+00 0.0000E+00 0.0000E+00
-16.041 0.0000E+00 0.0000E+00 0.0000E+00
-15.870 0.0000E+00 0.0000E+00 0.0000E+00
-15.699 0.0000E+00 0.0000E+00 0.0000E+00
-15.528 0.0000E+00 0.0000E+00 0.0000E+00
-15.357 0.0000E+00 0.0000E+00 0.0000E+00
-15.186 0.0000E+00 0.0000E+00 0.0000E+00
-15.016 0.0000E+00 0.0000E+00 0.0000E+00
-14.845 0.0000E+00 0.0000E+00 0.0000E+00
-14.674 0.0000E+00 0.0000E+00 0.0000E+00
-14.503 0.0000E+00 0.0000E+00 0.0000E+00
-14.332 0.0000E+00 0.0000E+00 0.0000E+00
-14.161 0.0000E+00 0.0000E+00 0.0000E+00
-13.991 0.0000E+00 0.0000E+00 0.0000E+00
-13.820 0.0000E+00 0.0000E+00 0.0000E+00
-13.649 0.0000E+00 0.0000E+00 0.0000E+00
-13.478 0.0000E+00 0.0000E+00 0.0000E+00
-13.307 0.0000E+00 0.0000E+00 0.0000E+00
-13.136 0.0000E+00 0.0000E+00 0.0000E+00
-12.966 0.0000E+00 0.0000E+00 0.0000E+00
-12.795 0.0000E+00 0.0000E+00 0.0000E+00
-12.624 0.0000E+00 0.0000E+00 0.0000E+00
-12.453 0.0000E+00 0.0000E+00 0.0000E+00
-12.282 0.0000E+00 0.0000E+00 0.0000E+00
-12.111 0.0000E+00 0.0000E+00 0.0000E+00
-11.941 0.0000E+00 0.0000E+00 0.0000E+00
-11.770 0.0000E+00 0.0000E+00 0.0000E+00
-11.599 0.0000E+00 0.0000E+00 0.0000E+00
-11.428 0.0000E+00 0.0000E+00 0.0000E+00
-11.257 0.0000E+00 0.0000E+00 0.0000E+00
-11.086 0.0000E+00 0.0000E+00 0.0000E+00
-10.916 0.0000E+00 0.0000E+00 0.0000E+00
-10.745 0.0000E+00 0.0000E+00 0.0000E+00
-10.574 0.0000E+00 0.0000E+00 0.0000E+00
-10.403 0.0000E+00 0.0000E+00 0.0000E+00
-10.232 0.0000E+00 0.0000E+00 0.0000E+00
-10.061 0.0000E+00 0.0000E+00 0.0000E+00
-9.891 0.0000E+00 0.0000E+00 0.0000E+00
-9.720 0.0000E+00 0.0000E+00 0.0000E+00
-9.549 0.0000E+00 0.0000E+00 0.0000E+00
-9.378 0.0000E+00 0.0000E+00 0.0000E+00
-9.207 0.0000E+00 0.0000E+00 0.0000E+00
-9.036 0.0000E+00 0.0000E+00 0.0000E+00
-8.866 0.0000E+00 0.0000E+00 0.0000E+00
-8.695 0.0000E+00 0.0000E+00 0.0000E+00
-8.524 0.0000E+00 0.0000E+00 0.0000E+00
-8.353 0.0000E+00 0.0000E+00 0.0000E+00
-8.182 0.0000E+00 0.0000E+00 0.0000E+00
-8.011 0.0000E+00 0.0000E+00 0.0000E+00
-7.841 0.0000E+00 0.0000E+00 0.0000E+00
-7.670 0.0000E+00 0.0000E+00 0.0000E+00
-7.499 0.0000E+00 0.0000E+00 0.0000E+00
-7.328 0.0000E+00 0.0000E+00 0.0000E+00
-7.157 0.0000E+00 0.0000E+00 0.0000E+00
-6.986 0.0000E+00 0.0000E+00 0.0000E+00
-6.816 0.0000E+00 0.0000E+00 0.0000E+00
-6.645 0.0000E+00 0.0000E+00 0.0000E+00
-6.474 0.0000E+00 0.0000E+00 0.0000E+00
-6.303 0.0000E+00 0.0000E+00 0.0000E+00
-6.132 0.0000E+00 0.0000E+00 0.0000E+00
-5.961 0.0000E+00 0.0000E+00 0.0000E+00
-5.791 0.0000E+00 0.0000E+00 0.0000E+00
-5.620 0.0000E+00 0.0000E+00 0.0000E+00
-5.449 0.0000E+00 0.0000E+00 0.0000E+00
-5.278 0.0000E+00 0.0000E+00 0.0000E+00
-5.107 0.0000E+00 0.0000E+00 0.0000E+00
-4.936 0.0000E+00 0.0000E+00 0.0000E+00
-4.766 0.0000E+00 0.0000E+00 0.0000E+00
-4.595 0.0000E+00 0.0000E+00 0.0000E+00
-4.424 0.0000E+00 0.0000E+00 0.0000E+00
-4.253 0.0000E+00 0.0000E+00 0.0000E+00
-4.082 0.0000E+00 0.0000E+00 0.0000E+00
-3.911 0.0000E+00 0.0000E+00 0.0000E+00
-3.741 0.0000E+00 0.0000E+00 0.0000E+00
-3.570 0.0000E+00 0.0000E+00 0.0000E+00
-3.399 0.0000E+00 0.0000E+00 0.0000E+00
-3.228 0.0000E+00 0.0000E+00 0.0000E+00
-3.057 0.0000E+00 0.0000E+00 0.0000E+00
-2.886 0.0000E+00 0.0000E+00 0.0000E+00
-2.716 0.0000E+00 0.0000E+00 0.0000E+00
-2.545 0.0000E+00 0.0000E+00 0.0000E+00
-2.374 0.0000E+00 0.0000E+00 0.0000E+00
-2.203 0.0000E+00 0.0000E+00 0.0000E+00
-2.032 0.0000E+00 0.0000E+00 0.0000E+00
-1.861 0.0000E+00 0.0000E+00 0.0000E+00
-1.691 0.8099E-32 0.1367E-62 0.1622E-42
-1.520 0.2309E-20 0.3896E-51 0.4625E-31
-1.349 0.1558E-11 0.2629E-42 0.3121E-22
-1.178 0.1995E-05 0.3366E-36 0.3996E-16
-1.007 0.1093E-02 0.1845E-33 0.2190E-13
-0.836 0.6089E-01 0.1027E-31 0.1220E-11
-0.666 0.1738E+00 0.2932E-31 0.3481E-11
-0.495 -0.2951E-02 -0.4980E-33 -0.5912E-13
-0.324 0.2789E-04 0.4705E-35 0.5586E-15
-0.153 0.1299E-09 0.2193E-40 0.2603E-20
0.018 0.0000E+00 0.0000E+00 0.0000E+00
0.189 0.0000E+00 0.0000E+00 0.0000E+00
0.359 0.0000E+00 0.0000E+00 0.0000E+00
0.530 0.0000E+00 0.0000E+00 0.0000E+00
0.701 0.0000E+00 0.0000E+00 0.0000E+00
0.872 0.0000E+00 0.0000E+00 0.0000E+00
1.043 0.0000E+00 0.0000E+00 0.0000E+00
1.213 0.0000E+00 0.0000E+00 0.0000E+00
1.384 0.3864E-26 0.8487E-27 0.4497E-26
1.555 0.9904E-16 0.2176E-16 0.1153E-15
1.726 0.5665E-08 0.1244E-08 0.6594E-08
1.897 0.4940E-03 0.1085E-03 0.5750E-03
2.068 -0.4603E-01 -0.1011E-01 -0.5358E-01
2.238 0.1317E+01 0.2892E+00 0.1533E+01
2.409 0.1176E+00 0.2582E-01 0.1368E+00
2.580 0.6212E-02 0.1365E-02 0.7230E-02
2.751 0.2753E-05 0.6047E-06 0.3204E-05
2.922 0.8456E-09 0.1593E-08 0.8831E-08
3.093 0.5951E-04 0.1122E-03 0.6221E-03
3.263 -0.5066E-02 -0.9550E-02 -0.5296E-01
3.434 0.1306E+00 0.2462E+00 0.1365E+01
3.605 0.7168E-02 0.1351E-01 0.5448E-01
3.776 0.1498E-02 0.1115E-02 0.1449E+01
3.947 0.3581E-01 0.2981E-02 0.1090E+01
4.118 0.1593E+00 0.1326E-01 0.2235E+01
4.288 -0.3799E-02 -0.3160E-03 -0.5305E-01
4.459 0.3529E-04 0.1850E-02 0.9953E-02
4.630 0.2305E-09 -0.3490E-01 -0.2077E+00
4.801 0.1012E-11 0.9395E+00 0.7761E+01
4.972 -0.4885E-13 -0.4536E-01 0.1311E+01
5.143 0.1235E-14 0.1147E-02 0.2449E-01
5.313 0.5375E-11 0.5226E-07 0.6163E-04
5.484 0.4760E-05 0.1406E-04 0.3678E-04
5.655 0.1115E-02 0.3295E-02 0.8762E-02
5.826 0.1092E+00 0.3226E+00 0.8285E+00
5.997 0.1975E+00 0.5835E+00 0.2436E+01
6.168 -0.1863E-02 -0.5502E-02 0.3082E+00
6.338 0.2204E-04 0.6510E-04 0.5891E-02
6.509 0.7017E-10 0.2073E-09 0.1064E-04
6.680 0.9358E-23 0.1488E-18 0.8389E-11
6.851 0.1030E-21 0.3246E-10 0.6418E-09
7.022 0.3923E-16 0.1237E-04 0.2446E-03
7.193 -0.2406E-14 -0.7587E-03 -0.1500E-01
7.363 0.2299E-10 0.1331E+00 0.2633E+01
7.534 0.2215E-05 0.9189E-01 0.1819E+01
7.705 -0.2154E-03 -0.4014E-03 -0.1353E+00
7.876 0.6585E-02 0.3074E-01 0.4480E+01
8.047 0.7363E-03 0.3778E-02 0.1344E+01
8.218 0.3293E-04 0.8301E-02 0.3896E+01
8.388 0.1716E-07 0.7527E-01 0.8529E+01
8.559 0.3604E-10 0.7904E-02 0.2641E+01
8.730 0.4255E-10 0.4352E-01 0.4011E+01
8.901 -0.9775E-12 -0.9930E-03 -0.9195E-01
9.072 0.9084E-14 0.9189E-05 0.8537E-03
9.243 0.5648E-19 0.5713E-10 0.5308E-08
9.413 0.0000E+00 0.0000E+00 0.0000E+00
9.584 0.0000E+00 0.0000E+00 0.0000E+00
9.755 0.0000E+00 0.0000E+00 0.0000E+00
9.926 0.0000E+00 0.0000E+00 0.0000E+00
10.097 0.9369E-38 0.9180E-38 0.1894E-37
10.268 0.4418E-25 0.4329E-25 0.8930E-25
10.438 0.5159E-15 0.5055E-15 0.1043E-14
10.609 0.1311E-07 0.1285E-07 0.2650E-07
10.780 0.4524E-03 0.4432E-03 0.9144E-03
10.951 -0.2549E-01 -0.2498E-01 -0.5153E-01
11.122 0.5333E+00 0.5226E+00 0.1078E+01
11.293 -0.8611E-02 -0.8437E-02 -0.1741E-01
11.463 0.1436E-02 0.1407E-02 0.2902E-02
11.634 0.2049E-06 0.2008E-06 0.4142E-06
11.805 0.2993E-13 0.2933E-13 0.6050E-13
11.976 0.0000E+00 0.0000E+00 0.0000E+00
12.147 0.0000E+00 0.0000E+00 0.0000E+00
12.318 0.0000E+00 0.0000E+00 0.0000E+00
12.488 0.0000E+00 0.0000E+00 0.0000E+00
12.659 0.0000E+00 0.0000E+00 0.0000E+00
12.830 0.0000E+00 0.0000E+00 0.0000E+00
13.001 0.0000E+00 0.0000E+00 0.0000E+00
13.172 0.0000E+00 0.0000E+00 0.0000E+00
13.343 0.0000E+00 0.0000E+00 0.0000E+00
13.513 0.0000E+00 0.0000E+00 0.0000E+00
13.684 0.0000E+00 0.0000E+00 0.0000E+00
13.855 0.3209E-47 0.3498E-34 0.5894E-34
14.026 0.3601E-35 0.3925E-22 0.6614E-22
14.197 0.9807E-26 0.1069E-12 0.1802E-12
14.368 0.5466E-19 0.5958E-06 0.1004E-05
14.538 0.2931E-15 0.3195E-02 0.5384E-02
14.709 0.9435E-16 0.1028E-02 0.1733E-02
14.880 0.9327E-13 0.1017E+01 0.1713E+01
15.051 -0.4263E-14 -0.4647E-01 -0.7831E-01
15.222 0.6490E-16 0.7075E-03 0.1192E-02
15.393 0.1489E-20 0.1623E-07 0.2734E-07
15.563 0.4966E-28 0.5413E-15 0.9122E-15
15.734 0.0000E+00 0.0000E+00 0.0000E+00
15.905 0.0000E+00 0.0000E+00 0.0000E+00
16.076 0.0000E+00 0.0000E+00 0.0000E+00
16.247 0.0000E+00 0.0000E+00 0.0000E+00
16.418 0.0000E+00 0.0000E+00 0.0000E+00
16.588 0.0000E+00 0.0000E+00 0.0000E+00
16.759 0.0000E+00 0.0000E+00 0.0000E+00
16.930 0.0000E+00 0.0000E+00 0.0000E+00
17.101 0.0000E+00 0.0000E+00 0.0000E+00

View File

@ -1,50 +0,0 @@
1 1 1 1
0.1333597E+02 0.2587511E-09 0.2587511E-09 0.2587511E-09 0.5000000E-15
1.000000000000000E-004
CAR
V
11 4 9
0.0000000E+00 0.0000000E+00 0.0000000E+00 0.3703704E-01
1 -31.099965
2 -31.099965
3 -31.099965
4 -0.813470
5 5.974027
6 5.974027
7 5.974027
8 7.986328
9 7.986328
0.3333333E+00 0.0000000E+00 0.0000000E+00 0.4444444E+00
1 -31.819277
2 -31.322999
3 -31.105684
4 2.193081
5 4.784864
6 5.839340
7 7.833446
8 8.202781
9 8.589551
0.3333333E+00 0.3333333E+00 0.0000000E+00 0.2962963E+00
1 -31.750021
2 -31.750021
3 -31.217560
4 3.978315
5 4.708263
6 4.708263
7 8.262522
8 8.262522
9 14.771374
-0.3333333E+00 0.3333333E+00 0.3333333E+00 0.2222222E+00
1 -31.719893
2 -31.577292
3 -31.577292
4 3.383714
5 3.756320
6 7.355029
7 7.355029
8 8.411511
9 11.054129

View File

@ -1,7 +0,0 @@
Automatically generated mesh
4
Reciprocal lattice
0.00000000000000 0.00000000000000 0.00000000000000 1
0.33333333333333 0.00000000000000 0.00000000000000 12
0.33333333333333 0.33333333333333 0.00000000000000 8
-0.33333333333333 0.33333333333333 0.33333333333333 6

File diff suppressed because it is too large Load Diff

View File

@ -1,10 +0,0 @@
V SF test
2.9878
-0.5 0.5 0.5
0.5 -0.5 0.5
0.5 0.5 -0.5
V
1
Direct
0.0 0.0 0.0

View File

@ -1,10 +0,0 @@
density matrix: [[[[ 2.71066432e-01 -1.07856040e-02 9.07814858e-03 -2.60324510e-01
-2.14321077e-09]
[ -1.07856040e-02 2.97099774e-01 9.52322235e-02 -1.38848431e-02
-1.97357976e-01]
[ 9.07814858e-03 9.52322235e-02 1.42730494e-01 4.53909162e-03
-4.31946315e-02]
[ -2.60324510e-01 -1.38848431e-02 4.53909162e-03 2.95736883e-01
4.02728377e-02]
[ -2.14321077e-09 -1.97357976e-01 -4.31946315e-02 4.02728377e-02
2.35328545e-01]]]]

View File

@ -1,8 +0,0 @@
[Shell 1]
LSHELL = 2
IONS = 1
EMIN = -15.0
EMAX = 5.0

View File

@ -1,56 +0,0 @@
r"""
Module defining a custom TestCase with extra functionality.
"""
import unittest
import numpy as np
import difflib
class MyTestCase(unittest.TestCase):
"""
Custom TestCase class supporting additional equality checks:
- numpy array equality
- file equality
"""
def __init__(self, *args, **kwargs):
"""
Initializes a custom equality function for comparing numpy arrays.
"""
super(MyTestCase, self).__init__(*args, **kwargs)
self.addTypeEqualityFunc(np.ndarray, self.is_arrays_equal)
def is_arrays_equal(self, arr1, arr2, msg=None):
"""
Raises self.failureException is arrays arr1 and arr2
are not equal.
"""
if not np.allclose(arr1, arr2):
raise self.failureException(msg)
def assertFileEqual(self, file1, file2):
"""
Compares two files using difflib.
Empty lines are ignored.
Files are assumed to be relatively small;
the data is truncated for files larger than MAX_SIZE bytes.
"""
MAX_SIZE = 100000
with open(file1, 'r') as f1:
str1 = f1.read(MAX_SIZE)
with open(file2, 'r') as f2:
str2 = f2.read(MAX_SIZE)
#
# Make a diff
#
# Remove empty lines
lstr1 = filter(lambda s: s.strip() != '', str1.splitlines(True))
lstr2 = filter(lambda s: s.strip() != '', str2.splitlines(True))
# diff
delta = difflib.unified_diff(lstr1, lstr2)
# combine delta's to a string
diff = ''.join(delta)
# if 'diff' is non-empty, files are different
if diff:
return self.fail("Files '%s' and '%s' differ"%(file1, file2))

View File

@ -1,115 +0,0 @@
pars: {'normalize': True, 'index': '1', 'emin': -15.0, 'emax': 5.0, 'normion': False, 'shells': [0]}
3 8
1 (2.5198055198e-08+0j)
2 (2.51956215891e-08+0j)
3 (-1.39707700703e-12+0j)
4 (2.51956464581e-08+0j)
5 (-9.58669992349e-14+0j)
1 (0.423249542713+0j)
2 (0.441459685564+0j)
3 (5.45383349593e-10+0j)
4 (0.441459536552+0j)
5 (-5.07696386694e-15+0j)
1 (-0.624317586422+0j)
2 (0.299283236265+0j)
3 (3.00651912255e-08+0j)
4 (0.299281418324+0j)
5 (-5.44629513472e-14+0j)
1 (-2.9753928743e-07+0j)
2 (-0.495364636183+0j)
3 (1.61749496311e-14+0j)
4 (0.495365083218+0j)
5 (2.86656725024e-08+0j)
1 (2.31630860326e-12+0j)
2 (-2.07712407274e-08+0j)
3 (6.79555596435e-05+0j)
4 (2.07689296872e-08+0j)
5 (-0.686951518059+0j)
1 (-2.55608547661e-08+0j)
2 (1.27339729872e-08+0j)
3 (-0.749936163425+0j)
4 (1.27377095538e-08+0j)
5 (-6.18639533059e-05+0j)
3 8
1 (-7.42354511196e-10+0j)
2 (-0.407458901405+0j)
3 (-0.132825627923+0j)
4 (-1.12258624618e-09+0j)
5 (0.230060741305+0j)
1 (-0.529840826988+0j)
2 (1.02242869726e-09+0j)
3 (1.47169805231e-08+0j)
4 (0.529840826988+0j)
5 (8.58095106082e-09+0j)
1 (-5.59593660299e-09+0j)
2 (-0.46026712656+0j)
3 (-0.189698129892+0j)
4 (-3.64733043767e-09+0j)
5 (0.328566819429+0j)
1 (-5.92653073284e-08+0j)
2 (-0.511403858662+0j)
3 (0.342116594315+0j)
4 (-5.81566510505e-08+0j)
5 (-0.592563331127+0j)
1 (9.17969966707e-09+0j)
2 (3.7528921637e-10+0j)
3 (0.743389487267+0j)
4 (-7.80711495452e-09+0j)
5 (0.429196119308+0j)
1 (-0.60352396965+0j)
2 (5.06060757743e-07+0j)
3 (1.02901012156e-07+0j)
4 (-0.60352396965+0j)
5 (-1.76288821763e-07+0j)
3 7
1 (-0.157831609249+0j)
2 (0.157831639051+0j)
3 (1.93573299612e-08+0j)
4 (0.157831639051+0j)
5 (5.40782289825e-14+0j)
1 (-1.07380124348e-07+0j)
2 (-0.227066069841+0j)
3 (-1.22580686934e-07+0j)
4 (0.227065965533+0j)
5 (0.299297988415+0j)
1 (0.115845791996+0j)
2 (0.057922616601+0j)
3 (0.13223952055+0j)
4 (0.0579231306911+0j)
5 (3.36705625159e-07+0j)
1 (0.159106343985+0j)
2 (0.0795532241464+0j)
3 (-0.240490317345+0j)
4 (0.0795530825853+0j)
5 (1.18692518924e-07+0j)
1 (3.98122104173e-08+0j)
2 (-0.241537705064+0j)
3 (-6.01558127755e-08+0j)
4 (0.241537734866+0j)
5 (-0.421558618546+0j)
3 7
1 (7.91286647317e-10+0j)
2 (3.03037844818e-10+0j)
3 (0.204362645745+0j)
4 (4.89190632447e-10+0j)
5 (-0.353966474533+0j)
1 (9.13699960137e-09+0j)
2 (1.0438577086e-10+0j)
3 (-0.42577791214+0j)
4 (-6.95880419954e-09+0j)
5 (-0.245822981+0j)
1 (0.368288576603+0j)
2 (1.67113629601e-08+0j)
3 (-1.44080747333e-10+0j)
4 (0.365979760885+0j)
5 (1.25375620996e-09+0j)
1 (0.365983724594+0j)
2 (-2.74820233237e-09+0j)
3 (1.77222470032e-09+0j)
4 (-0.368292748928+0j)
5 (7.90098320103e-10+0j)
1 (-3.99936368467e-08+0j)
2 (0.546248733997+0j)
3 (-2.91795543284e-09+0j)
4 (-2.16134438347e-07+0j)
5 (1.55786352707e-08+0j)

View File

@ -1,115 +0,0 @@
pars: {'normalize': True, 'index': '1', 'emin': -15.0, 'emax': 5.0, 'normion': False, 'shells': [0]}
3 8
1 (2.5198055198e-08+0j)
2 (2.51956215891e-08+0j)
3 (-1.39707700703e-12+0j)
4 (2.51956464581e-08+0j)
5 (-9.58669992349e-14+0j)
1 (0.423249542713+0j)
2 (0.441459685564+0j)
3 (5.45383349593e-10+0j)
4 (0.441459536552+0j)
5 (-5.07696386694e-15+0j)
1 (-0.624317586422+0j)
2 (0.299283236265+0j)
3 (3.00651912255e-08+0j)
4 (0.299281418324+0j)
5 (-5.44629513472e-14+0j)
1 (-2.9753928743e-07+0j)
2 (-0.495364636183+0j)
3 (1.61749496311e-14+0j)
4 (0.495365083218+0j)
5 (2.86656725024e-08+0j)
1 (2.31630860326e-12+0j)
2 (-2.07712407274e-08+0j)
3 (6.79555596435e-05+0j)
4 (2.07689296872e-08+0j)
5 (-0.686951518059+0j)
1 (-2.55608547661e-08+0j)
2 (1.27339729872e-08+0j)
3 (-0.749936163425+0j)
4 (1.27377095538e-08+0j)
5 (-6.18639533059e-05+0j)
3 8
1 (-7.42354511196e-10+0j)
2 (-0.407458901405+0j)
3 (-0.132825627923+0j)
4 (-1.12258624618e-09+0j)
5 (0.230060741305+0j)
1 (-0.529840826988+0j)
2 (1.02242869726e-09+0j)
3 (1.47169805231e-08+0j)
4 (0.529840826988+0j)
5 (8.58095106082e-09+0j)
1 (-5.59593660299e-09+0j)
2 (-0.46026712656+0j)
3 (-0.189698129892+0j)
4 (-3.64733043767e-09+0j)
5 (0.328566819429+0j)
1 (-5.92653073284e-08+0j)
2 (-0.511403858662+0j)
3 (0.342116594315+0j)
4 (-5.81566510505e-08+0j)
5 (-0.592563331127+0j)
1 (9.17969966707e-09+0j)
2 (3.7528921637e-10+0j)
3 (0.743389487267+0j)
4 (-7.80711495452e-09+0j)
5 (0.429196119308+0j)
1 (-0.60352396965+0j)
2 (5.06060757743e-07+0j)
3 (1.02901012156e-07+0j)
4 (-0.60352396965+0j)
5 (-1.76288821763e-07+0j)
3 7
1 (-0.157831609249+0j)
2 (0.157831639051+0j)
3 (1.93573299612e-08+0j)
4 (0.157831639051+0j)
5 (5.40782289825e-14+0j)
1 (-1.07380124348e-07+0j)
2 (-0.227066069841+0j)
3 (-1.22580686934e-07+0j)
4 (0.227065965533+0j)
5 (0.299297988415+0j)
1 (0.115845791996+0j)
2 (0.057922616601+0j)
3 (0.13223952055+0j)
4 (0.0579231306911+0j)
5 (3.36705625159e-07+0j)
1 (0.159106343985+0j)
2 (0.0795532241464+0j)
3 (-0.240490317345+0j)
4 (0.0795530825853+0j)
5 (1.18692518924e-07+0j)
1 (3.98122104173e-08+0j)
2 (-0.241537705064+0j)
3 (-6.01558127755e-08+0j)
4 (0.241537734866+0j)
5 (-0.421558618546+0j)
3 7
1 (7.91286647317e-10+0j)
2 (3.03037844818e-10+0j)
3 (0.204362645745+0j)
4 (4.89190632447e-10+0j)
5 (-0.353966474533+0j)
1 (9.13699960137e-09+0j)
2 (1.0438577086e-10+0j)
3 (-0.42577791214+0j)
4 (-6.95880419954e-09+0j)
5 (-0.245822981+0j)
1 (0.368288576603+0j)
2 (1.67113629601e-08+0j)
3 (-1.44080747333e-10+0j)
4 (0.365979760885+0j)
5 (1.25375620996e-09+0j)
1 (0.365983724594+0j)
2 (-2.74820233237e-09+0j)
3 (1.77222470032e-09+0j)
4 (-0.368292748928+0j)
5 (7.90098320103e-10+0j)
1 (-3.99936368467e-08+0j)
2 (0.546248733997+0j)
3 (-2.91795543284e-09+0j)
4 (-2.16134438347e-07+0j)
5 (1.55786352707e-08+0j)

View File

@ -1,115 +0,0 @@
pars: {'ion_list': array([0]), 'user_index': 1, 'lshell': 2}
3 8
1 (2.5198055198e-08+0j)
2 (2.51956215891e-08+0j)
3 (-1.39707700703e-12+0j)
4 (2.51956464581e-08+0j)
5 (-9.58669992349e-14+0j)
1 (0.423249542713+0j)
2 (0.441459685564+0j)
3 (5.45383349593e-10+0j)
4 (0.441459536552+0j)
5 (-5.07696386694e-15+0j)
1 (-0.624317586422+0j)
2 (0.299283236265+0j)
3 (3.00651912255e-08+0j)
4 (0.299281418324+0j)
5 (-5.44629513472e-14+0j)
1 (-2.9753928743e-07+0j)
2 (-0.495364636183+0j)
3 (1.61749496311e-14+0j)
4 (0.495365083218+0j)
5 (2.86656725024e-08+0j)
1 (2.31630860326e-12+0j)
2 (-2.07712407274e-08+0j)
3 (6.79555596435e-05+0j)
4 (2.07689296872e-08+0j)
5 (-0.686951518059+0j)
1 (-2.55608547661e-08+0j)
2 (1.27339729872e-08+0j)
3 (-0.749936163425+0j)
4 (1.27377095538e-08+0j)
5 (-6.18639533059e-05+0j)
3 8
1 (-7.42354511196e-10+0j)
2 (-0.407458901405+0j)
3 (-0.132825627923+0j)
4 (-1.12258624618e-09+0j)
5 (0.230060741305+0j)
1 (-0.529840826988+0j)
2 (1.02242869726e-09+0j)
3 (1.47169805231e-08+0j)
4 (0.529840826988+0j)
5 (8.58095106082e-09+0j)
1 (-5.59593660299e-09+0j)
2 (-0.46026712656+0j)
3 (-0.189698129892+0j)
4 (-3.64733043767e-09+0j)
5 (0.328566819429+0j)
1 (-5.92653073284e-08+0j)
2 (-0.511403858662+0j)
3 (0.342116594315+0j)
4 (-5.81566510505e-08+0j)
5 (-0.592563331127+0j)
1 (9.17969966707e-09+0j)
2 (3.7528921637e-10+0j)
3 (0.743389487267+0j)
4 (-7.80711495452e-09+0j)
5 (0.429196119308+0j)
1 (-0.60352396965+0j)
2 (5.06060757743e-07+0j)
3 (1.02901012156e-07+0j)
4 (-0.60352396965+0j)
5 (-1.76288821763e-07+0j)
3 7
1 (-0.157831609249+0j)
2 (0.157831639051+0j)
3 (1.93573299612e-08+0j)
4 (0.157831639051+0j)
5 (5.40782289825e-14+0j)
1 (-1.07380124348e-07+0j)
2 (-0.227066069841+0j)
3 (-1.22580686934e-07+0j)
4 (0.227065965533+0j)
5 (0.299297988415+0j)
1 (0.115845791996+0j)
2 (0.057922616601+0j)
3 (0.13223952055+0j)
4 (0.0579231306911+0j)
5 (3.36705625159e-07+0j)
1 (0.159106343985+0j)
2 (0.0795532241464+0j)
3 (-0.240490317345+0j)
4 (0.0795530825853+0j)
5 (1.18692518924e-07+0j)
1 (3.98122104173e-08+0j)
2 (-0.241537705064+0j)
3 (-6.01558127755e-08+0j)
4 (0.241537734866+0j)
5 (-0.421558618546+0j)
3 7
1 (7.91286647317e-10+0j)
2 (3.03037844818e-10+0j)
3 (0.204362645745+0j)
4 (4.89190632447e-10+0j)
5 (-0.353966474533+0j)
1 (9.13699960137e-09+0j)
2 (1.0438577086e-10+0j)
3 (-0.42577791214+0j)
4 (-6.95880419954e-09+0j)
5 (-0.245822981+0j)
1 (0.368288576603+0j)
2 (1.67113629601e-08+0j)
3 (-1.44080747333e-10+0j)
4 (0.365979760885+0j)
5 (1.25375620996e-09+0j)
1 (0.365983724594+0j)
2 (-2.74820233237e-09+0j)
3 (1.77222470032e-09+0j)
4 (-0.368292748928+0j)
5 (7.90098320103e-10+0j)
1 (-3.99936368467e-08+0j)
2 (0.546248733997+0j)
3 (-2.91795543284e-09+0j)
4 (-2.16134438347e-07+0j)
5 (1.55786352707e-08+0j)

View File

@ -1 +0,0 @@
PYTHONPATH=../../python:../../c:$PYTHONPATH python $1

View File

@ -1,34 +0,0 @@
import vaspio
from inpconf import ConfigParameters
import mytest
################################################################################
#
# TestDataConsistency
#
################################################################################
class TestDataConsistency(mytest.MyTestCase):
"""
Function:
def read_plocar(filename)
Scenarios:
- **if** file PLOCAR does not exist **raise** IOError
- **if** PLOCAR is truncated **raise** IOError
- **if** the precision flag is not 4 or 8 **raise** ValueError
- **if** PLOCAR with prec=8 is read **compare** the output
- **if** PLOCAR with prec=4 is read **compare** the output
"""
# Scenario 1
def test_example(self):
conf_file = 'example.cfg'
pars = ConfigParameters(conf_file)
pars.parse_input()
vasp_data = vaspio.VaspData('./')
print pars.shells
print pars.groups

View File

@ -1,10 +0,0 @@
r"""
Test suite for module `plotools`.
"""
import unittest
if __name__ == '__main__':
suite = unittest.TestLoader().discover('./')
# unittest.TextTestRunner(verbosity=2, buffer=True).run(suite)
unittest.TextTestRunner(verbosity=2, buffer=False).run(suite)

View File

@ -1,79 +0,0 @@
import numpy as np
import vaspio
from inpconf import ConfigParameters
from plotools import ProjectorShell, ProjectorGroup
import mytest
################################################################################
#
# TestProjectorGroup
#
################################################################################
class TestProjectorGroup(mytest.MyTestCase):
"""
Class:
ProjectorGroup(sh_pars, proj_raw)
Scenarios:
- test output for a correct input
- test the output of 'orthogonalization()' (sanity check)
"""
def setUp(self):
conf_file = 'example.cfg'
self.pars = ConfigParameters(conf_file)
self.pars.parse_input()
self.vasp_data = vaspio.VaspData('./')
efermi = self.vasp_data.doscar.efermi
eigvals = self.vasp_data.eigenval.eigs - efermi
self.shells = [ProjectorShell(self.pars.shells[0], self.vasp_data.plocar.plo)]
self.proj_gr = ProjectorGroup(self.pars.groups[0], self.shells, eigvals)
# Scenario 1
def test_example(self):
# proj_sh.select_projectors(ib_win, nb_min, nb_max)
#
testout = 'projgroups.out.test'
nion, ns, nk, nlm, nbtot = self.proj_gr.shells[0].proj_win.shape
with open(testout, 'wt') as f:
f.write("pars: %s\n"%(self.pars.groups[0]))
for ion in xrange(nion):
for isp in xrange(ns):
for ik in xrange(nk):
ib1 = self.proj_gr.ib_win[ik, 0, 0]
ib2 = self.proj_gr.ib_win[ik, 0, 1]
f.write("%i %i\n"%(ib1, ib2))
ib1w = ib1 - self.proj_gr.nb_min
ib2w = ib2 - self.proj_gr.nb_min + 1
for ib in xrange(ib1w, ib2w):
for ilm in xrange(nlm):
p = self.proj_gr.shells[0].proj_win[ion, isp, ik, ilm, ib]
f.write("%5i %s\n"%(ilm+1, p))
# Scenario 2
def test_ortho(self):
self.proj_gr.orthogonalize()
testout = 'projortho.out.test'
nion, ns, nk, nlm, nbtot = self.proj_gr.shells[0].proj_win.shape
with open(testout, 'wt') as f:
f.write("pars: %s\n"%(self.pars.groups[0]))
for ion in xrange(nion):
for isp in xrange(ns):
for ik in xrange(nk):
ib1 = self.proj_gr.ib_win[ik, 0, 0]
ib2 = self.proj_gr.ib_win[ik, 0, 1]
f.write("%i %i\n"%(ib1, ib2))
ib1w = ib1 - self.proj_gr.nb_min
ib2w = ib2 - self.proj_gr.nb_min + 1
for ib in xrange(ib1w, ib2w):
for ilm in xrange(nlm):
p = self.proj_gr.shells[0].proj_win[ion, isp, ik, ilm, ib]
f.write("%5i %s\n"%(ilm+1, p))
expected_file = 'projortho.out'
self.assertFileEqual(testout, expected_file)

View File

@ -1,86 +0,0 @@
import numpy as np
import vaspio
import elstruct
from inpconf import ConfigParameters
from plotools import select_bands, ProjectorShell
import mytest
################################################################################
#
# TestProjectorShell
#
################################################################################
class TestProjectorShell(mytest.MyTestCase):
"""
Class:
ProjectorShell(sh_pars, proj_raw)
Scenarios:
- compare output for a correct input
- test density matrix
"""
# Scenario 1
def test_example(self):
conf_file = 'example.cfg'
pars = ConfigParameters(conf_file)
pars.parse_input()
vasp_data = vaspio.VaspData('./')
efermi = vasp_data.doscar.efermi
eigvals = vasp_data.eigenval.eigs - efermi
emin = pars.groups[0]['emin']
emax = pars.groups[0]['emax']
ib_win, nb_min, nb_max = select_bands(eigvals, emin, emax)
proj_sh = ProjectorShell(pars.shells[0], vasp_data.plocar.plo)
proj_sh.select_projectors(ib_win, nb_min, nb_max)
testout = 'projshells.out.test'
nion, ns, nk, nlm, nbtot = proj_sh.proj_win.shape
with open(testout, 'wt') as f:
f.write("pars: %s\n"%(pars.shells[0]))
for ion in xrange(nion):
for isp in xrange(ns):
for ik in xrange(nk):
ib1 = ib_win[ik, 0, 0]
ib2 = ib_win[ik, 0, 1]
f.write("%i %i\n"%(ib1, ib2))
for ib in xrange(ib2 - nb_min + 1):
for ilm in xrange(nlm):
p = proj_sh.proj_win[ion, isp, ik, ilm, ib]
f.write("%5i %s\n"%(ilm+1, p))
expected_file = 'projshells.out'
self.assertFileEqual(testout, expected_file)
# Scenario 2
def test_dens_mat(self):
conf_file = 'example.cfg'
pars = ConfigParameters(conf_file)
pars.parse_input()
vasp_data = vaspio.VaspData('./')
el_struct = elstruct.ElectronicStructure(vasp_data)
efermi = el_struct.efermi
eigvals = el_struct.eigvals - efermi
emin = pars.groups[0]['emin']
emax = pars.groups[0]['emax']
ib_win, nb_min, nb_max = select_bands(eigvals, emin, emax)
proj_sh = ProjectorShell(pars.shells[0], vasp_data.plocar.plo)
proj_sh.select_projectors(ib_win, nb_min, nb_max)
dens_mat = proj_sh.density_matrix(el_struct)
print dens_mat
testout = 'densmat.out.test'
with open(testout, 'wt') as f:
f.write("density matrix: %s\n"%(dens_mat))
expected_file = 'densmat.out'
self.assertFileEqual(testout, expected_file)

View File

@ -1,73 +0,0 @@
import numpy as np
import vaspio
from inpconf import ConfigParameters
from plotools import select_bands
import mytest
################################################################################
#
# TestSelectBands
#
################################################################################
class TestSelectBands(mytest.MyTestCase):
"""
Function:
def select_bands(eigvals, emin, emax)
Scenarios:
- compare output for a correct input
- **if** emin > max(eigvals) **raise** Exception
- **if** emax > min(eigvals) **raise** Exception
"""
# Scenario 1
def test_example(self):
conf_file = 'example.cfg'
pars = ConfigParameters(conf_file)
pars.parse_input()
vasp_data = vaspio.VaspData('./')
efermi = vasp_data.doscar.efermi
eigvals = vasp_data.eigenval.eigs - efermi
emin = pars.groups[0]['emin']
emax = pars.groups[0]['emax']
ib_win, nb_min, nb_max = select_bands(eigvals, emin, emax)
nb_min_exp = 3
nb_max_exp = 8
ib_win_exp = np.array([[[3, 8]], [[3, 8]], [[3, 7]], [[3, 7]]])
self.assertEqual(nb_min, nb_min_exp)
self.assertEqual(nb_max, nb_max_exp)
self.assertEqual(ib_win, ib_win_exp)
# Scenario 2
def test_emin_too_large(self):
conf_file = 'example.cfg'
pars = ConfigParameters(conf_file)
pars.parse_input()
vasp_data = vaspio.VaspData('./')
efermi = vasp_data.doscar.efermi
eigvals = vasp_data.eigenval.eigs - efermi
emin = 20.0
emax = 25.0
with self.assertRaisesRegexp(Exception, "Energy window does not overlap"):
ib_win, nb_min, nb_max = select_bands(eigvals, emin, emax)
# Scenario 3
def test_emax_too_small(self):
conf_file = 'example.cfg'
pars = ConfigParameters(conf_file)
pars.parse_input()
vasp_data = vaspio.VaspData('./')
efermi = vasp_data.doscar.efermi
eigvals = vasp_data.eigenval.eigs - efermi
emin = -50.0
emax = -55.0
with self.assertRaisesRegexp(Exception, "Energy window does not overlap"):
ib_win, nb_min, nb_max = select_bands(eigvals, emin, emax)

View File

@ -1,2 +0,0 @@
*.pyc
*.test

View File

@ -1,609 +0,0 @@
1 1 1 0
0.1333597E+02 0.2587511E-09 0.2587511E-09 0.2587511E-09 0.5000000E-15
1.000000000000000E-004
CAR
V
17.10090628 -34.14880953 301 5.84395237 1.00000000
-34.149 0.0000E+00 0.0000E+00
-33.978 0.0000E+00 0.0000E+00
-33.807 0.0000E+00 0.0000E+00
-33.636 0.0000E+00 0.0000E+00
-33.465 0.0000E+00 0.0000E+00
-33.295 0.0000E+00 0.0000E+00
-33.124 0.0000E+00 0.0000E+00
-32.953 0.0000E+00 0.0000E+00
-32.782 0.3428E-37 0.5857E-38
-32.611 0.1961E-24 0.3349E-25
-32.440 0.2784E-14 0.4757E-15
-32.270 0.8681E-07 0.1483E-07
-32.099 0.3941E-02 0.6732E-03
-31.928 -0.2188E+00 -0.3670E-01
-31.757 0.8736E+01 0.1456E+01
-31.586 0.8403E+01 0.2891E+01
-31.415 0.2792E+01 0.3368E+01
-31.245 0.6307E+01 0.4445E+01
-31.074 0.7856E+01 0.5787E+01
-30.903 0.1212E+01 0.5994E+01
-30.732 0.3246E-01 0.6000E+01
-30.561 0.3448E-04 0.6000E+01
-30.390 0.2050E-10 0.6000E+01
-30.220 0.0000E+00 0.6000E+01
-30.049 0.0000E+00 0.6000E+01
-29.878 0.0000E+00 0.6000E+01
-29.707 0.0000E+00 0.6000E+01
-29.536 0.0000E+00 0.6000E+01
-29.366 0.0000E+00 0.6000E+01
-29.195 0.0000E+00 0.6000E+01
-29.024 0.0000E+00 0.6000E+01
-28.853 0.0000E+00 0.6000E+01
-28.682 0.0000E+00 0.6000E+01
-28.511 0.0000E+00 0.6000E+01
-28.341 0.0000E+00 0.6000E+01
-28.170 0.0000E+00 0.6000E+01
-27.999 0.0000E+00 0.6000E+01
-27.828 0.0000E+00 0.6000E+01
-27.657 0.0000E+00 0.6000E+01
-27.486 0.0000E+00 0.6000E+01
-27.316 0.0000E+00 0.6000E+01
-27.145 0.0000E+00 0.6000E+01
-26.974 0.0000E+00 0.6000E+01
-26.803 0.0000E+00 0.6000E+01
-26.632 0.0000E+00 0.6000E+01
-26.461 0.0000E+00 0.6000E+01
-26.291 0.0000E+00 0.6000E+01
-26.120 0.0000E+00 0.6000E+01
-25.949 0.0000E+00 0.6000E+01
-25.778 0.0000E+00 0.6000E+01
-25.607 0.0000E+00 0.6000E+01
-25.436 0.0000E+00 0.6000E+01
-25.266 0.0000E+00 0.6000E+01
-25.095 0.0000E+00 0.6000E+01
-24.924 0.0000E+00 0.6000E+01
-24.753 0.0000E+00 0.6000E+01
-24.582 0.0000E+00 0.6000E+01
-24.411 0.0000E+00 0.6000E+01
-24.241 0.0000E+00 0.6000E+01
-24.070 0.0000E+00 0.6000E+01
-23.899 0.0000E+00 0.6000E+01
-23.728 0.0000E+00 0.6000E+01
-23.557 0.0000E+00 0.6000E+01
-23.386 0.0000E+00 0.6000E+01
-23.216 0.0000E+00 0.6000E+01
-23.045 0.0000E+00 0.6000E+01
-22.874 0.0000E+00 0.6000E+01
-22.703 0.0000E+00 0.6000E+01
-22.532 0.0000E+00 0.6000E+01
-22.361 0.0000E+00 0.6000E+01
-22.191 0.0000E+00 0.6000E+01
-22.020 0.0000E+00 0.6000E+01
-21.849 0.0000E+00 0.6000E+01
-21.678 0.0000E+00 0.6000E+01
-21.507 0.0000E+00 0.6000E+01
-21.336 0.0000E+00 0.6000E+01
-21.166 0.0000E+00 0.6000E+01
-20.995 0.0000E+00 0.6000E+01
-20.824 0.0000E+00 0.6000E+01
-20.653 0.0000E+00 0.6000E+01
-20.482 0.0000E+00 0.6000E+01
-20.311 0.0000E+00 0.6000E+01
-20.141 0.0000E+00 0.6000E+01
-19.970 0.0000E+00 0.6000E+01
-19.799 0.0000E+00 0.6000E+01
-19.628 0.0000E+00 0.6000E+01
-19.457 0.0000E+00 0.6000E+01
-19.286 0.0000E+00 0.6000E+01
-19.116 0.0000E+00 0.6000E+01
-18.945 0.0000E+00 0.6000E+01
-18.774 0.0000E+00 0.6000E+01
-18.603 0.0000E+00 0.6000E+01
-18.432 0.0000E+00 0.6000E+01
-18.261 0.0000E+00 0.6000E+01
-18.091 0.0000E+00 0.6000E+01
-17.920 0.0000E+00 0.6000E+01
-17.749 0.0000E+00 0.6000E+01
-17.578 0.0000E+00 0.6000E+01
-17.407 0.0000E+00 0.6000E+01
-17.236 0.0000E+00 0.6000E+01
-17.066 0.0000E+00 0.6000E+01
-16.895 0.0000E+00 0.6000E+01
-16.724 0.0000E+00 0.6000E+01
-16.553 0.0000E+00 0.6000E+01
-16.382 0.0000E+00 0.6000E+01
-16.211 0.0000E+00 0.6000E+01
-16.041 0.0000E+00 0.6000E+01
-15.870 0.0000E+00 0.6000E+01
-15.699 0.0000E+00 0.6000E+01
-15.528 0.0000E+00 0.6000E+01
-15.357 0.0000E+00 0.6000E+01
-15.186 0.0000E+00 0.6000E+01
-15.016 0.0000E+00 0.6000E+01
-14.845 0.0000E+00 0.6000E+01
-14.674 0.0000E+00 0.6000E+01
-14.503 0.0000E+00 0.6000E+01
-14.332 0.0000E+00 0.6000E+01
-14.161 0.0000E+00 0.6000E+01
-13.991 0.0000E+00 0.6000E+01
-13.820 0.0000E+00 0.6000E+01
-13.649 0.0000E+00 0.6000E+01
-13.478 0.0000E+00 0.6000E+01
-13.307 0.0000E+00 0.6000E+01
-13.136 0.0000E+00 0.6000E+01
-12.966 0.0000E+00 0.6000E+01
-12.795 0.0000E+00 0.6000E+01
-12.624 0.0000E+00 0.6000E+01
-12.453 0.0000E+00 0.6000E+01
-12.282 0.0000E+00 0.6000E+01
-12.111 0.0000E+00 0.6000E+01
-11.941 0.0000E+00 0.6000E+01
-11.770 0.0000E+00 0.6000E+01
-11.599 0.0000E+00 0.6000E+01
-11.428 0.0000E+00 0.6000E+01
-11.257 0.0000E+00 0.6000E+01
-11.086 0.0000E+00 0.6000E+01
-10.916 0.0000E+00 0.6000E+01
-10.745 0.0000E+00 0.6000E+01
-10.574 0.0000E+00 0.6000E+01
-10.403 0.0000E+00 0.6000E+01
-10.232 0.0000E+00 0.6000E+01
-10.061 0.0000E+00 0.6000E+01
-9.891 0.0000E+00 0.6000E+01
-9.720 0.0000E+00 0.6000E+01
-9.549 0.0000E+00 0.6000E+01
-9.378 0.0000E+00 0.6000E+01
-9.207 0.0000E+00 0.6000E+01
-9.036 0.0000E+00 0.6000E+01
-8.866 0.0000E+00 0.6000E+01
-8.695 0.0000E+00 0.6000E+01
-8.524 0.0000E+00 0.6000E+01
-8.353 0.0000E+00 0.6000E+01
-8.182 0.0000E+00 0.6000E+01
-8.011 0.0000E+00 0.6000E+01
-7.841 0.0000E+00 0.6000E+01
-7.670 0.0000E+00 0.6000E+01
-7.499 0.0000E+00 0.6000E+01
-7.328 0.0000E+00 0.6000E+01
-7.157 0.0000E+00 0.6000E+01
-6.986 0.0000E+00 0.6000E+01
-6.816 0.0000E+00 0.6000E+01
-6.645 0.0000E+00 0.6000E+01
-6.474 0.0000E+00 0.6000E+01
-6.303 0.0000E+00 0.6000E+01
-6.132 0.0000E+00 0.6000E+01
-5.961 0.0000E+00 0.6000E+01
-5.791 0.0000E+00 0.6000E+01
-5.620 0.0000E+00 0.6000E+01
-5.449 0.0000E+00 0.6000E+01
-5.278 0.0000E+00 0.6000E+01
-5.107 0.0000E+00 0.6000E+01
-4.936 0.0000E+00 0.6000E+01
-4.766 0.0000E+00 0.6000E+01
-4.595 0.0000E+00 0.6000E+01
-4.424 0.0000E+00 0.6000E+01
-4.253 0.0000E+00 0.6000E+01
-4.082 0.0000E+00 0.6000E+01
-3.911 0.0000E+00 0.6000E+01
-3.741 0.0000E+00 0.6000E+01
-3.570 0.0000E+00 0.6000E+01
-3.399 0.0000E+00 0.6000E+01
-3.228 0.0000E+00 0.6000E+01
-3.057 0.0000E+00 0.6000E+01
-2.886 0.0000E+00 0.6000E+01
-2.716 0.0000E+00 0.6000E+01
-2.545 0.0000E+00 0.6000E+01
-2.374 0.0000E+00 0.6000E+01
-2.203 0.0000E+00 0.6000E+01
-2.032 0.0000E+00 0.6000E+01
-1.861 0.0000E+00 0.6000E+01
-1.691 0.1508E-31 0.6000E+01
-1.520 0.4300E-20 0.6000E+01
-1.349 0.2901E-11 0.6000E+01
-1.178 0.3715E-05 0.6000E+01
-1.007 0.2036E-02 0.6000E+01
-0.836 0.1134E+00 0.6020E+01
-0.666 0.3236E+00 0.6075E+01
-0.495 -0.5496E-02 0.6074E+01
-0.324 0.5193E-04 0.6074E+01
-0.153 0.2420E-09 0.6074E+01
0.018 0.0000E+00 0.6074E+01
0.189 0.0000E+00 0.6074E+01
0.359 0.0000E+00 0.6074E+01
0.530 0.0000E+00 0.6074E+01
0.701 0.0000E+00 0.6074E+01
0.872 0.0000E+00 0.6074E+01
1.043 0.0000E+00 0.6074E+01
1.213 0.0000E+00 0.6074E+01
1.384 0.1441E-25 0.6074E+01
1.555 0.3694E-15 0.6074E+01
1.726 0.2113E-07 0.6074E+01
1.897 0.1843E-02 0.6074E+01
2.068 -0.1717E+00 0.6045E+01
2.238 0.4911E+01 0.6884E+01
2.409 0.4385E+00 0.6959E+01
2.580 0.2317E-01 0.6963E+01
2.751 0.1027E-04 0.6963E+01
2.922 0.1649E-07 0.6963E+01
3.093 0.1161E-02 0.6963E+01
3.263 -0.9886E-01 0.6946E+01
3.434 0.2549E+01 0.7382E+01
3.605 0.1134E+00 0.7401E+01
3.776 0.1880E+01 0.7722E+01
3.947 0.1410E+01 0.7963E+01
4.118 0.2885E+01 0.8456E+01
4.288 -0.6849E-01 0.8444E+01
4.459 0.1593E-01 0.8447E+01
4.630 -0.3213E+00 0.8392E+01
4.801 0.1107E+02 0.1028E+02
4.972 0.1346E+01 0.1051E+02
5.143 0.3027E-01 0.1052E+02
5.313 0.6891E-04 0.1052E+02
5.484 0.8093E-04 0.1052E+02
5.655 0.1912E-01 0.1052E+02
5.826 0.1840E+01 0.1084E+02
5.997 0.4326E+01 0.1158E+02
6.168 0.3115E+00 0.1163E+02
6.338 0.6462E-02 0.1163E+02
6.509 0.1132E-04 0.1163E+02
6.680 0.8927E-11 0.1163E+02
6.851 0.7510E-09 0.1163E+02
7.022 0.2862E-03 0.1163E+02
7.193 -0.1755E-01 0.1163E+02
7.363 0.3080E+01 0.1215E+02
7.534 0.2128E+01 0.1252E+02
7.705 -0.1424E+00 0.1249E+02
7.876 0.4758E+01 0.1330E+02
8.047 0.1429E+01 0.1355E+02
8.218 0.4090E+01 0.1425E+02
8.388 0.9009E+01 0.1579E+02
8.559 0.2760E+01 0.1626E+02
8.730 0.4220E+01 0.1698E+02
8.901 -0.9675E-01 0.1696E+02
9.072 0.8982E-03 0.1696E+02
9.243 0.5584E-08 0.1696E+02
9.413 0.0000E+00 0.1696E+02
9.584 0.0000E+00 0.1696E+02
9.755 0.0000E+00 0.1696E+02
9.926 0.0000E+00 0.1696E+02
10.097 0.4864E-37 0.1696E+02
10.268 0.2294E-24 0.1696E+02
10.438 0.2678E-14 0.1696E+02
10.609 0.6806E-07 0.1696E+02
10.780 0.2349E-02 0.1696E+02
10.951 -0.1323E+00 0.1694E+02
11.122 0.2769E+01 0.1741E+02
11.293 -0.4470E-01 0.1741E+02
11.463 0.7455E-02 0.1741E+02
11.634 0.1064E-05 0.1741E+02
11.805 0.1554E-12 0.1741E+02
11.976 0.0000E+00 0.1741E+02
12.147 0.0000E+00 0.1741E+02
12.318 0.0000E+00 0.1741E+02
12.488 0.0000E+00 0.1741E+02
12.659 0.0000E+00 0.1741E+02
12.830 0.0000E+00 0.1741E+02
13.001 0.0000E+00 0.1741E+02
13.172 0.0000E+00 0.1741E+02
13.343 0.0000E+00 0.1741E+02
13.513 0.0000E+00 0.1741E+02
13.684 0.0000E+00 0.1741E+02
13.855 0.1244E-33 0.1741E+02
14.026 0.1396E-21 0.1741E+02
14.197 0.3803E-12 0.1741E+02
14.368 0.2119E-05 0.1741E+02
14.538 0.1137E-01 0.1741E+02
14.709 0.3659E-02 0.1741E+02
14.880 0.3617E+01 0.1803E+02
15.051 -0.1653E+00 0.1800E+02
15.222 0.2517E-02 0.1800E+02
15.393 0.5772E-07 0.1800E+02
15.563 0.1926E-14 0.1800E+02
15.734 0.0000E+00 0.1800E+02
15.905 0.0000E+00 0.1800E+02
16.076 0.0000E+00 0.1800E+02
16.247 0.0000E+00 0.1800E+02
16.418 0.0000E+00 0.1800E+02
16.588 0.0000E+00 0.1800E+02
16.759 0.0000E+00 0.1800E+02
16.930 0.0000E+00 0.1800E+02
17.101 0.0000E+00 0.1800E+02
17.10090628 -34.14880953 301 5.84395237 1.00000000
-34.149 0.0000E+00 0.0000E+00 0.0000E+00
-33.978 0.0000E+00 0.0000E+00 0.0000E+00
-33.807 0.0000E+00 0.0000E+00 0.0000E+00
-33.636 0.0000E+00 0.0000E+00 0.0000E+00
-33.465 0.0000E+00 0.0000E+00 0.0000E+00
-33.295 0.0000E+00 0.0000E+00 0.0000E+00
-33.124 0.0000E+00 0.0000E+00 0.0000E+00
-32.953 0.0000E+00 0.0000E+00 0.0000E+00
-32.782 0.2282E-40 0.3359E-37 0.5411E-41
-32.611 0.1305E-27 0.1921E-24 0.3095E-28
-32.440 0.1853E-17 0.2728E-14 0.4398E-18
-32.270 0.5762E-10 0.8504E-07 0.1383E-10
-32.099 0.2518E-05 0.3861E-02 0.7137E-06
-31.928 -0.1566E-03 -0.2142E+00 -0.2459E-04
-31.757 0.3856E-02 0.8567E+01 0.3103E-02
-31.586 0.1543E-02 0.8270E+01 0.4254E-02
-31.415 -0.3177E-04 0.2760E+01 0.1220E-02
-31.245 0.3742E-04 0.6273E+01 0.1032E-02
-31.074 0.1298E-03 0.7836E+01 0.2060E-03
-30.903 -0.2630E-05 0.1210E+01 -0.3012E-05
-30.732 0.2432E-07 0.3240E-01 0.4557E-07
-30.561 0.1332E-12 0.3442E-04 0.2841E-12
-30.390 0.2660E-32 0.2046E-10 0.1981E-19
-30.220 0.0000E+00 0.0000E+00 0.0000E+00
-30.049 0.0000E+00 0.0000E+00 0.0000E+00
-29.878 0.0000E+00 0.0000E+00 0.0000E+00
-29.707 0.0000E+00 0.0000E+00 0.0000E+00
-29.536 0.0000E+00 0.0000E+00 0.0000E+00
-29.366 0.0000E+00 0.0000E+00 0.0000E+00
-29.195 0.0000E+00 0.0000E+00 0.0000E+00
-29.024 0.0000E+00 0.0000E+00 0.0000E+00
-28.853 0.0000E+00 0.0000E+00 0.0000E+00
-28.682 0.0000E+00 0.0000E+00 0.0000E+00
-28.511 0.0000E+00 0.0000E+00 0.0000E+00
-28.341 0.0000E+00 0.0000E+00 0.0000E+00
-28.170 0.0000E+00 0.0000E+00 0.0000E+00
-27.999 0.0000E+00 0.0000E+00 0.0000E+00
-27.828 0.0000E+00 0.0000E+00 0.0000E+00
-27.657 0.0000E+00 0.0000E+00 0.0000E+00
-27.486 0.0000E+00 0.0000E+00 0.0000E+00
-27.316 0.0000E+00 0.0000E+00 0.0000E+00
-27.145 0.0000E+00 0.0000E+00 0.0000E+00
-26.974 0.0000E+00 0.0000E+00 0.0000E+00
-26.803 0.0000E+00 0.0000E+00 0.0000E+00
-26.632 0.0000E+00 0.0000E+00 0.0000E+00
-26.461 0.0000E+00 0.0000E+00 0.0000E+00
-26.291 0.0000E+00 0.0000E+00 0.0000E+00
-26.120 0.0000E+00 0.0000E+00 0.0000E+00
-25.949 0.0000E+00 0.0000E+00 0.0000E+00
-25.778 0.0000E+00 0.0000E+00 0.0000E+00
-25.607 0.0000E+00 0.0000E+00 0.0000E+00
-25.436 0.0000E+00 0.0000E+00 0.0000E+00
-25.266 0.0000E+00 0.0000E+00 0.0000E+00
-25.095 0.0000E+00 0.0000E+00 0.0000E+00
-24.924 0.0000E+00 0.0000E+00 0.0000E+00
-24.753 0.0000E+00 0.0000E+00 0.0000E+00
-24.582 0.0000E+00 0.0000E+00 0.0000E+00
-24.411 0.0000E+00 0.0000E+00 0.0000E+00
-24.241 0.0000E+00 0.0000E+00 0.0000E+00
-24.070 0.0000E+00 0.0000E+00 0.0000E+00
-23.899 0.0000E+00 0.0000E+00 0.0000E+00
-23.728 0.0000E+00 0.0000E+00 0.0000E+00
-23.557 0.0000E+00 0.0000E+00 0.0000E+00
-23.386 0.0000E+00 0.0000E+00 0.0000E+00
-23.216 0.0000E+00 0.0000E+00 0.0000E+00
-23.045 0.0000E+00 0.0000E+00 0.0000E+00
-22.874 0.0000E+00 0.0000E+00 0.0000E+00
-22.703 0.0000E+00 0.0000E+00 0.0000E+00
-22.532 0.0000E+00 0.0000E+00 0.0000E+00
-22.361 0.0000E+00 0.0000E+00 0.0000E+00
-22.191 0.0000E+00 0.0000E+00 0.0000E+00
-22.020 0.0000E+00 0.0000E+00 0.0000E+00
-21.849 0.0000E+00 0.0000E+00 0.0000E+00
-21.678 0.0000E+00 0.0000E+00 0.0000E+00
-21.507 0.0000E+00 0.0000E+00 0.0000E+00
-21.336 0.0000E+00 0.0000E+00 0.0000E+00
-21.166 0.0000E+00 0.0000E+00 0.0000E+00
-20.995 0.0000E+00 0.0000E+00 0.0000E+00
-20.824 0.0000E+00 0.0000E+00 0.0000E+00
-20.653 0.0000E+00 0.0000E+00 0.0000E+00
-20.482 0.0000E+00 0.0000E+00 0.0000E+00
-20.311 0.0000E+00 0.0000E+00 0.0000E+00
-20.141 0.0000E+00 0.0000E+00 0.0000E+00
-19.970 0.0000E+00 0.0000E+00 0.0000E+00
-19.799 0.0000E+00 0.0000E+00 0.0000E+00
-19.628 0.0000E+00 0.0000E+00 0.0000E+00
-19.457 0.0000E+00 0.0000E+00 0.0000E+00
-19.286 0.0000E+00 0.0000E+00 0.0000E+00
-19.116 0.0000E+00 0.0000E+00 0.0000E+00
-18.945 0.0000E+00 0.0000E+00 0.0000E+00
-18.774 0.0000E+00 0.0000E+00 0.0000E+00
-18.603 0.0000E+00 0.0000E+00 0.0000E+00
-18.432 0.0000E+00 0.0000E+00 0.0000E+00
-18.261 0.0000E+00 0.0000E+00 0.0000E+00
-18.091 0.0000E+00 0.0000E+00 0.0000E+00
-17.920 0.0000E+00 0.0000E+00 0.0000E+00
-17.749 0.0000E+00 0.0000E+00 0.0000E+00
-17.578 0.0000E+00 0.0000E+00 0.0000E+00
-17.407 0.0000E+00 0.0000E+00 0.0000E+00
-17.236 0.0000E+00 0.0000E+00 0.0000E+00
-17.066 0.0000E+00 0.0000E+00 0.0000E+00
-16.895 0.0000E+00 0.0000E+00 0.0000E+00
-16.724 0.0000E+00 0.0000E+00 0.0000E+00
-16.553 0.0000E+00 0.0000E+00 0.0000E+00
-16.382 0.0000E+00 0.0000E+00 0.0000E+00
-16.211 0.0000E+00 0.0000E+00 0.0000E+00
-16.041 0.0000E+00 0.0000E+00 0.0000E+00
-15.870 0.0000E+00 0.0000E+00 0.0000E+00
-15.699 0.0000E+00 0.0000E+00 0.0000E+00
-15.528 0.0000E+00 0.0000E+00 0.0000E+00
-15.357 0.0000E+00 0.0000E+00 0.0000E+00
-15.186 0.0000E+00 0.0000E+00 0.0000E+00
-15.016 0.0000E+00 0.0000E+00 0.0000E+00
-14.845 0.0000E+00 0.0000E+00 0.0000E+00
-14.674 0.0000E+00 0.0000E+00 0.0000E+00
-14.503 0.0000E+00 0.0000E+00 0.0000E+00
-14.332 0.0000E+00 0.0000E+00 0.0000E+00
-14.161 0.0000E+00 0.0000E+00 0.0000E+00
-13.991 0.0000E+00 0.0000E+00 0.0000E+00
-13.820 0.0000E+00 0.0000E+00 0.0000E+00
-13.649 0.0000E+00 0.0000E+00 0.0000E+00
-13.478 0.0000E+00 0.0000E+00 0.0000E+00
-13.307 0.0000E+00 0.0000E+00 0.0000E+00
-13.136 0.0000E+00 0.0000E+00 0.0000E+00
-12.966 0.0000E+00 0.0000E+00 0.0000E+00
-12.795 0.0000E+00 0.0000E+00 0.0000E+00
-12.624 0.0000E+00 0.0000E+00 0.0000E+00
-12.453 0.0000E+00 0.0000E+00 0.0000E+00
-12.282 0.0000E+00 0.0000E+00 0.0000E+00
-12.111 0.0000E+00 0.0000E+00 0.0000E+00
-11.941 0.0000E+00 0.0000E+00 0.0000E+00
-11.770 0.0000E+00 0.0000E+00 0.0000E+00
-11.599 0.0000E+00 0.0000E+00 0.0000E+00
-11.428 0.0000E+00 0.0000E+00 0.0000E+00
-11.257 0.0000E+00 0.0000E+00 0.0000E+00
-11.086 0.0000E+00 0.0000E+00 0.0000E+00
-10.916 0.0000E+00 0.0000E+00 0.0000E+00
-10.745 0.0000E+00 0.0000E+00 0.0000E+00
-10.574 0.0000E+00 0.0000E+00 0.0000E+00
-10.403 0.0000E+00 0.0000E+00 0.0000E+00
-10.232 0.0000E+00 0.0000E+00 0.0000E+00
-10.061 0.0000E+00 0.0000E+00 0.0000E+00
-9.891 0.0000E+00 0.0000E+00 0.0000E+00
-9.720 0.0000E+00 0.0000E+00 0.0000E+00
-9.549 0.0000E+00 0.0000E+00 0.0000E+00
-9.378 0.0000E+00 0.0000E+00 0.0000E+00
-9.207 0.0000E+00 0.0000E+00 0.0000E+00
-9.036 0.0000E+00 0.0000E+00 0.0000E+00
-8.866 0.0000E+00 0.0000E+00 0.0000E+00
-8.695 0.0000E+00 0.0000E+00 0.0000E+00
-8.524 0.0000E+00 0.0000E+00 0.0000E+00
-8.353 0.0000E+00 0.0000E+00 0.0000E+00
-8.182 0.0000E+00 0.0000E+00 0.0000E+00
-8.011 0.0000E+00 0.0000E+00 0.0000E+00
-7.841 0.0000E+00 0.0000E+00 0.0000E+00
-7.670 0.0000E+00 0.0000E+00 0.0000E+00
-7.499 0.0000E+00 0.0000E+00 0.0000E+00
-7.328 0.0000E+00 0.0000E+00 0.0000E+00
-7.157 0.0000E+00 0.0000E+00 0.0000E+00
-6.986 0.0000E+00 0.0000E+00 0.0000E+00
-6.816 0.0000E+00 0.0000E+00 0.0000E+00
-6.645 0.0000E+00 0.0000E+00 0.0000E+00
-6.474 0.0000E+00 0.0000E+00 0.0000E+00
-6.303 0.0000E+00 0.0000E+00 0.0000E+00
-6.132 0.0000E+00 0.0000E+00 0.0000E+00
-5.961 0.0000E+00 0.0000E+00 0.0000E+00
-5.791 0.0000E+00 0.0000E+00 0.0000E+00
-5.620 0.0000E+00 0.0000E+00 0.0000E+00
-5.449 0.0000E+00 0.0000E+00 0.0000E+00
-5.278 0.0000E+00 0.0000E+00 0.0000E+00
-5.107 0.0000E+00 0.0000E+00 0.0000E+00
-4.936 0.0000E+00 0.0000E+00 0.0000E+00
-4.766 0.0000E+00 0.0000E+00 0.0000E+00
-4.595 0.0000E+00 0.0000E+00 0.0000E+00
-4.424 0.0000E+00 0.0000E+00 0.0000E+00
-4.253 0.0000E+00 0.0000E+00 0.0000E+00
-4.082 0.0000E+00 0.0000E+00 0.0000E+00
-3.911 0.0000E+00 0.0000E+00 0.0000E+00
-3.741 0.0000E+00 0.0000E+00 0.0000E+00
-3.570 0.0000E+00 0.0000E+00 0.0000E+00
-3.399 0.0000E+00 0.0000E+00 0.0000E+00
-3.228 0.0000E+00 0.0000E+00 0.0000E+00
-3.057 0.0000E+00 0.0000E+00 0.0000E+00
-2.886 0.0000E+00 0.0000E+00 0.0000E+00
-2.716 0.0000E+00 0.0000E+00 0.0000E+00
-2.545 0.0000E+00 0.0000E+00 0.0000E+00
-2.374 0.0000E+00 0.0000E+00 0.0000E+00
-2.203 0.0000E+00 0.0000E+00 0.0000E+00
-2.032 0.0000E+00 0.0000E+00 0.0000E+00
-1.861 0.0000E+00 0.0000E+00 0.0000E+00
-1.691 0.8099E-32 0.1367E-62 0.1622E-42
-1.520 0.2309E-20 0.3896E-51 0.4625E-31
-1.349 0.1558E-11 0.2629E-42 0.3121E-22
-1.178 0.1995E-05 0.3366E-36 0.3996E-16
-1.007 0.1093E-02 0.1845E-33 0.2190E-13
-0.836 0.6089E-01 0.1027E-31 0.1220E-11
-0.666 0.1738E+00 0.2932E-31 0.3481E-11
-0.495 -0.2951E-02 -0.4980E-33 -0.5912E-13
-0.324 0.2789E-04 0.4705E-35 0.5586E-15
-0.153 0.1299E-09 0.2193E-40 0.2603E-20
0.018 0.0000E+00 0.0000E+00 0.0000E+00
0.189 0.0000E+00 0.0000E+00 0.0000E+00
0.359 0.0000E+00 0.0000E+00 0.0000E+00
0.530 0.0000E+00 0.0000E+00 0.0000E+00
0.701 0.0000E+00 0.0000E+00 0.0000E+00
0.872 0.0000E+00 0.0000E+00 0.0000E+00
1.043 0.0000E+00 0.0000E+00 0.0000E+00
1.213 0.0000E+00 0.0000E+00 0.0000E+00
1.384 0.3864E-26 0.8487E-27 0.4497E-26
1.555 0.9904E-16 0.2176E-16 0.1153E-15
1.726 0.5665E-08 0.1244E-08 0.6594E-08
1.897 0.4940E-03 0.1085E-03 0.5750E-03
2.068 -0.4603E-01 -0.1011E-01 -0.5358E-01
2.238 0.1317E+01 0.2892E+00 0.1533E+01
2.409 0.1176E+00 0.2582E-01 0.1368E+00
2.580 0.6212E-02 0.1365E-02 0.7230E-02
2.751 0.2753E-05 0.6047E-06 0.3204E-05
2.922 0.8456E-09 0.1593E-08 0.8831E-08
3.093 0.5951E-04 0.1122E-03 0.6221E-03
3.263 -0.5066E-02 -0.9550E-02 -0.5296E-01
3.434 0.1306E+00 0.2462E+00 0.1365E+01
3.605 0.7168E-02 0.1351E-01 0.5448E-01
3.776 0.1498E-02 0.1115E-02 0.1449E+01
3.947 0.3581E-01 0.2981E-02 0.1090E+01
4.118 0.1593E+00 0.1326E-01 0.2235E+01
4.288 -0.3799E-02 -0.3160E-03 -0.5305E-01
4.459 0.3529E-04 0.1850E-02 0.9953E-02
4.630 0.2305E-09 -0.3490E-01 -0.2077E+00
4.801 0.1012E-11 0.9395E+00 0.7761E+01
4.972 -0.4885E-13 -0.4536E-01 0.1311E+01
5.143 0.1235E-14 0.1147E-02 0.2449E-01
5.313 0.5375E-11 0.5226E-07 0.6163E-04
5.484 0.4760E-05 0.1406E-04 0.3678E-04
5.655 0.1115E-02 0.3295E-02 0.8762E-02
5.826 0.1092E+00 0.3226E+00 0.8285E+00
5.997 0.1975E+00 0.5835E+00 0.2436E+01
6.168 -0.1863E-02 -0.5502E-02 0.3082E+00
6.338 0.2204E-04 0.6510E-04 0.5891E-02
6.509 0.7017E-10 0.2073E-09 0.1064E-04
6.680 0.9358E-23 0.1488E-18 0.8389E-11
6.851 0.1030E-21 0.3246E-10 0.6418E-09
7.022 0.3923E-16 0.1237E-04 0.2446E-03
7.193 -0.2406E-14 -0.7587E-03 -0.1500E-01
7.363 0.2299E-10 0.1331E+00 0.2633E+01
7.534 0.2215E-05 0.9189E-01 0.1819E+01
7.705 -0.2154E-03 -0.4014E-03 -0.1353E+00
7.876 0.6585E-02 0.3074E-01 0.4480E+01
8.047 0.7363E-03 0.3778E-02 0.1344E+01
8.218 0.3293E-04 0.8301E-02 0.3896E+01
8.388 0.1716E-07 0.7527E-01 0.8529E+01
8.559 0.3604E-10 0.7904E-02 0.2641E+01
8.730 0.4255E-10 0.4352E-01 0.4011E+01
8.901 -0.9775E-12 -0.9930E-03 -0.9195E-01
9.072 0.9084E-14 0.9189E-05 0.8537E-03
9.243 0.5648E-19 0.5713E-10 0.5308E-08
9.413 0.0000E+00 0.0000E+00 0.0000E+00
9.584 0.0000E+00 0.0000E+00 0.0000E+00
9.755 0.0000E+00 0.0000E+00 0.0000E+00
9.926 0.0000E+00 0.0000E+00 0.0000E+00
10.097 0.9369E-38 0.9180E-38 0.1894E-37
10.268 0.4418E-25 0.4329E-25 0.8930E-25
10.438 0.5159E-15 0.5055E-15 0.1043E-14
10.609 0.1311E-07 0.1285E-07 0.2650E-07
10.780 0.4524E-03 0.4432E-03 0.9144E-03
10.951 -0.2549E-01 -0.2498E-01 -0.5153E-01
11.122 0.5333E+00 0.5226E+00 0.1078E+01
11.293 -0.8611E-02 -0.8437E-02 -0.1741E-01
11.463 0.1436E-02 0.1407E-02 0.2902E-02
11.634 0.2049E-06 0.2008E-06 0.4142E-06
11.805 0.2993E-13 0.2933E-13 0.6050E-13
11.976 0.0000E+00 0.0000E+00 0.0000E+00
12.147 0.0000E+00 0.0000E+00 0.0000E+00
12.318 0.0000E+00 0.0000E+00 0.0000E+00
12.488 0.0000E+00 0.0000E+00 0.0000E+00
12.659 0.0000E+00 0.0000E+00 0.0000E+00
12.830 0.0000E+00 0.0000E+00 0.0000E+00
13.001 0.0000E+00 0.0000E+00 0.0000E+00
13.172 0.0000E+00 0.0000E+00 0.0000E+00
13.343 0.0000E+00 0.0000E+00 0.0000E+00
13.513 0.0000E+00 0.0000E+00 0.0000E+00
13.684 0.0000E+00 0.0000E+00 0.0000E+00
13.855 0.3209E-47 0.3498E-34 0.5894E-34
14.026 0.3601E-35 0.3925E-22 0.6614E-22
14.197 0.9807E-26 0.1069E-12 0.1802E-12
14.368 0.5466E-19 0.5958E-06 0.1004E-05
14.538 0.2931E-15 0.3195E-02 0.5384E-02
14.709 0.9435E-16 0.1028E-02 0.1733E-02
14.880 0.9327E-13 0.1017E+01 0.1713E+01
15.051 -0.4263E-14 -0.4647E-01 -0.7831E-01
15.222 0.6490E-16 0.7075E-03 0.1192E-02
15.393 0.1489E-20 0.1623E-07 0.2734E-07
15.563 0.4966E-28 0.5413E-15 0.9122E-15
15.734 0.0000E+00 0.0000E+00 0.0000E+00
15.905 0.0000E+00 0.0000E+00 0.0000E+00
16.076 0.0000E+00 0.0000E+00 0.0000E+00
16.247 0.0000E+00 0.0000E+00 0.0000E+00
16.418 0.0000E+00 0.0000E+00 0.0000E+00
16.588 0.0000E+00 0.0000E+00 0.0000E+00
16.759 0.0000E+00 0.0000E+00 0.0000E+00
16.930 0.0000E+00 0.0000E+00 0.0000E+00
17.101 0.0000E+00 0.0000E+00 0.0000E+00

View File

@ -1,50 +0,0 @@
1 1 1 1
0.1333597E+02 0.2587511E-09 0.2587511E-09 0.2587511E-09 0.5000000E-15
1.000000000000000E-004
CAR
V
11 4 9
0.0000000E+00 0.0000000E+00 0.0000000E+00 0.3703704E-01
1 -31.099965
2 -31.099965
3 -31.099965
4 -0.813470
5 5.974027
6 5.974027
7 5.974027
8 7.986328
9 7.986328
0.3333333E+00 0.0000000E+00 0.0000000E+00 0.4444444E+00
1 -31.819277
2 -31.322999
3 -31.105684
4 2.193081
5 4.784864
6 5.839340
7 7.833446
8 8.202781
9 8.589551
0.3333333E+00 0.3333333E+00 0.0000000E+00 0.2962963E+00
1 -31.750021
2 -31.750021
3 -31.217560
4 3.978315
5 4.708263
6 4.708263
7 8.262522
8 8.262522
9 14.771374
-0.3333333E+00 0.3333333E+00 0.3333333E+00 0.2222222E+00
1 -31.719893
2 -31.577292
3 -31.577292
4 3.383714
5 3.756320
6 7.355029
7 7.355029
8 8.411511
9 11.054129

View File

@ -1,52 +0,0 @@
nq = 1
ispin = 1
nelect = 11
nktot = 4
nband = 9
kpts:
[[ 0. 0. 0. ]
[ 0.3333333 0. 0. ]
[ 0.3333333 0.3333333 0. ]
[-0.3333333 0.3333333 0.3333333]]
kwghts:
[ 0.03703704 0.4444444 0.2962963 0.2222222 ]
eigs:
[[[-31.099965]
[-31.099965]
[-31.099965]
[ -0.81347 ]
[ 5.974027]
[ 5.974027]
[ 5.974027]
[ 7.986328]
[ 7.986328]]
[[-31.819277]
[-31.322999]
[-31.105684]
[ 2.193081]
[ 4.784864]
[ 5.83934 ]
[ 7.833446]
[ 8.202781]
[ 8.589551]]
[[-31.750021]
[-31.750021]
[-31.21756 ]
[ 3.978315]
[ 4.708263]
[ 4.708263]
[ 8.262522]
[ 8.262522]
[ 14.771374]]
[[-31.719893]
[-31.577292]
[-31.577292]
[ 3.383714]
[ 3.75632 ]
[ 7.355029]
[ 7.355029]
[ 8.411511]
[ 11.054129]]]

View File

@ -1,122 +0,0 @@
Automatically generated mesh
10
Reciprocal lattice
0.00000000000000 0.00000000000000 0.00000000000000 1
0.20000000000000 0.00000000000000 0.00000000000000 12
0.40000000000000 0.00000000000000 0.00000000000000 12
0.20000000000000 0.20000000000000 0.00000000000000 24
0.40000000000000 0.20000000000000 -0.00000000000000 24
0.20000000000000 0.20000000000000 0.20000000000000 8
-0.20000000000000 0.20000000000000 0.20000000000000 6
-0.40000000000000 0.40000000000000 0.20000000000000 24
-0.40000000000000 -0.40000000000000 0.20000000000000 8
-0.40000000000000 0.40000000000000 0.40000000000000 6
Tetrahedra
107 0.00133333333333
4 1 2 2 4
12 2 2 4 4
4 2 4 4 6
4 2 3 4 5
4 2 4 4 5
12 4 4 5 6
16 3 4 5 5
28 4 5 5 6
8 4 5 6 6
4 3 3 4 5
12 3 4 4 5
4 4 4 4 5
4 2 2 3 4
12 2 3 4 4
8 2 4 4 4
8 2 2 2 4
12 2 2 4 7
12 2 4 4 7
8 1 2 2 2
4 2 2 2 2
4 2 2 2 7
16 5 5 6 6
12 3 4 5 6
8 3 5 5 6
8 3 4 4 6
4 3 4 6 8
4 3 5 6 8
4 3 4 4 4
4 3 4 4 8
8 4 4 7 8
4 4 4 8 8
4 2 2 3 7
16 2 3 4 7
12 3 4 7 8
4 3 4 5 7
4 3 5 7 8
4 3 5 5 5
12 3 5 5 8
16 5 5 8 9
24 3 4 5 8
8 4 5 8 8
4 5 8 8 8
16 5 8 8 9
4 3 3 4 8
12 3 5 8 8
12 3 3 5 8
4 3 4 8 8
8 4 5 5 9
12 4 5 8 9
4 4 7 8 9
4 2 3 5 8
4 2 4 5 8
8 2 4 7 8
12 2 3 4 8
4 2 2 4 8
4 2 2 7 8
4 1 2 4 7
8 1 2 2 7
4 2 3 4 6
4 3 5 6 6
8 5 6 6 6
8 5 5 5 6
4 4 4 5 5
16 4 5 5 8
4 3 4 4 7
4 3 7 8 8
8 4 4 5 8
4 5 5 6 9
4 4 5 6 8
4 5 5 6 8
8 5 8 8 10
8 5 8 9 10
4 4 7 8 8
4 4 8 8 8
8 8 8 8 10
4 7 8 8 8
4 8 8 8 9
20 8 8 9 10
4 4 5 7 8
4 5 7 8 8
4 5 5 5 8
4 5 8 9 9
8 8 9 9 10
6 9 9 10 10
12 8 9 10 10
4 8 8 10 10
8 4 8 8 9
4 3 4 5 9
4 3 4 8 9
4 7 8 9 10
4 7 8 8 10
4 4 7 8 10
4 2 4 8 8
4 2 7 8 8
4 2 4 4 8
4 3 3 5 6
4 4 5 5 5
4 3 5 8 9
4 3 8 8 9
6 5 5 8 8
2 3 3 5 5
4 4 5 6 9
4 4 8 9 10
4 8 10 10 10
6 8 8 9 9
4 9 10 10 10
2 10 10 10 10

View File

@ -1,122 +0,0 @@
nktot = 10
ntet = 107
volt = 0.00133333333333
kpts:
[[ 0. 0. 0. ]
[ 0.2 0. 0. ]
[ 0.4 0. 0. ]
[ 0.2 0.2 0. ]
[ 0.4 0.2 -0. ]
[ 0.2 0.2 0.2]
[-0.2 0.2 0.2]
[-0.4 0.4 0.2]
[-0.4 -0.4 0.2]
[-0.4 0.4 0.4]]
tets:
[[ 4 1 2 2 4]
[12 2 2 4 4]
[ 4 2 4 4 6]
[ 4 2 3 4 5]
[ 4 2 4 4 5]
[12 4 4 5 6]
[16 3 4 5 5]
[28 4 5 5 6]
[ 8 4 5 6 6]
[ 4 3 3 4 5]
[12 3 4 4 5]
[ 4 4 4 4 5]
[ 4 2 2 3 4]
[12 2 3 4 4]
[ 8 2 4 4 4]
[ 8 2 2 2 4]
[12 2 2 4 7]
[12 2 4 4 7]
[ 8 1 2 2 2]
[ 4 2 2 2 2]
[ 4 2 2 2 7]
[16 5 5 6 6]
[12 3 4 5 6]
[ 8 3 5 5 6]
[ 8 3 4 4 6]
[ 4 3 4 6 8]
[ 4 3 5 6 8]
[ 4 3 4 4 4]
[ 4 3 4 4 8]
[ 8 4 4 7 8]
[ 4 4 4 8 8]
[ 4 2 2 3 7]
[16 2 3 4 7]
[12 3 4 7 8]
[ 4 3 4 5 7]
[ 4 3 5 7 8]
[ 4 3 5 5 5]
[12 3 5 5 8]
[16 5 5 8 9]
[24 3 4 5 8]
[ 8 4 5 8 8]
[ 4 5 8 8 8]
[16 5 8 8 9]
[ 4 3 3 4 8]
[12 3 5 8 8]
[12 3 3 5 8]
[ 4 3 4 8 8]
[ 8 4 5 5 9]
[12 4 5 8 9]
[ 4 4 7 8 9]
[ 4 2 3 5 8]
[ 4 2 4 5 8]
[ 8 2 4 7 8]
[12 2 3 4 8]
[ 4 2 2 4 8]
[ 4 2 2 7 8]
[ 4 1 2 4 7]
[ 8 1 2 2 7]
[ 4 2 3 4 6]
[ 4 3 5 6 6]
[ 8 5 6 6 6]
[ 8 5 5 5 6]
[ 4 4 4 5 5]
[16 4 5 5 8]
[ 4 3 4 4 7]
[ 4 3 7 8 8]
[ 8 4 4 5 8]
[ 4 5 5 6 9]
[ 4 4 5 6 8]
[ 4 5 5 6 8]
[ 8 5 8 8 10]
[ 8 5 8 9 10]
[ 4 4 7 8 8]
[ 4 4 8 8 8]
[ 8 8 8 8 10]
[ 4 7 8 8 8]
[ 4 8 8 8 9]
[20 8 8 9 10]
[ 4 4 5 7 8]
[ 4 5 7 8 8]
[ 4 5 5 5 8]
[ 4 5 8 9 9]
[ 8 8 9 9 10]
[ 6 9 9 10 10]
[12 8 9 10 10]
[ 4 8 8 10 10]
[ 8 4 8 8 9]
[ 4 3 4 5 9]
[ 4 3 4 8 9]
[ 4 7 8 9 10]
[ 4 7 8 8 10]
[ 4 4 7 8 10]
[ 4 2 4 8 8]
[ 4 2 7 8 8]
[ 4 2 4 4 8]
[ 4 3 3 5 6]
[ 4 4 5 5 5]
[ 4 3 5 8 9]
[ 4 3 8 8 9]
[ 6 5 5 8 8]
[ 2 3 3 5 5]
[ 4 4 5 6 9]
[ 4 4 8 9 10]
[ 4 8 10 10 10]
[ 6 8 8 9 9]
[ 4 9 10 10 10]
[ 2 10 10 10 10]]

View File

@ -1,7 +0,0 @@
Automatically generated mesh
4
Reciprocal lattice
0.00000000000000 0.00000000000000 0.00000000000000 1
0.33333333333333 0.00000000000000 0.00000000000000 12
0.33333333333333 0.33333333333333 0.00000000000000 8
-0.33333333333333 0.33333333333333 0.33333333333333 6

View File

@ -1,6 +0,0 @@
nktot = 4
kpts:
[[ 0. 0. 0. ]
[ 0.33333333 0. 0. ]
[ 0.33333333 0.33333333 0. ]
[-0.33333333 0.33333333 0.33333333]]

View File

@ -1,10 +0,0 @@
V SF test
2.9878
-0.5 0.5 0.5
0.5 -0.5 0.5
0.5 0.5 -0.5
V
1
Direct
0.0 0.0 0.0

View File

@ -1,10 +0,0 @@
nq = 1
ntypes = 1
nions = [1]
el_names = ['V']
a_brav:
[[-1. 1. 1.]
[ 1. -1. 1.]
[ 1. 1. -1.]]
q_types:
[array([[ 0., 0., 0.]])]

View File

@ -1,56 +0,0 @@
r"""
Module defining a custom TestCase with extra functionality.
"""
import unittest
import numpy as np
import difflib
class MyTestCase(unittest.TestCase):
"""
Custom TestCase class supporting additional equality checks:
- numpy array equality
- file equality
"""
def __init__(self, *args, **kwargs):
"""
Initializes a custom equality function for comparing numpy arrays.
"""
super(MyTestCase, self).__init__(*args, **kwargs)
self.addTypeEqualityFunc(np.ndarray, self.is_arrays_equal)
def is_arrays_equal(self, arr1, arr2, msg=None):
"""
Raises self.failureException is arrays arr1 and arr2
are not equal.
"""
if not np.allclose(arr1, arr2):
raise self.failureException(msg)
def assertFileEqual(self, file1, file2):
"""
Compares two files using difflib.
Empty lines are ignored.
Files are assumed to be relatively small;
the data is truncated for files larger than MAX_SIZE bytes.
"""
MAX_SIZE = 100000
with open(file1, 'r') as f1:
str1 = f1.read(MAX_SIZE)
with open(file2, 'r') as f2:
str2 = f2.read(MAX_SIZE)
#
# Make a diff
#
# Remove empty lines
lstr1 = filter(lambda s: s.strip() != '', str1.splitlines(True))
lstr2 = filter(lambda s: s.strip() != '', str2.splitlines(True))
# diff
delta = difflib.unified_diff(lstr1, lstr2)
# combine delta's to a string
diff = ''.join(delta)
# if 'diff' is non-empty, files are different
if diff:
return self.fail("Files '%s' and '%s' differ"%(file1, file2))

View File

@ -1 +0,0 @@
PYTHONPATH=../../python:../../c:$PYTHONPATH python $1

View File

@ -1,32 +0,0 @@
r"""
Tests for class 'Doscar' from module 'vaspio'
"""
import mytest
import numpy as np
from vaspio import Doscar
################################################################################
#
# TestDoscar
#
################################################################################
class TestDoscar(mytest.MyTestCase):
"""
Function:
def Doscar.from_file(vasp_dir, dos_filename)
Scenarios:
- correct DOSCAR file
"""
# Scenario 1
def test_example(self):
filename = 'DOSCAR.example'
doscar = Doscar()
doscar.from_file(vasp_dir='./', dos_filename=filename)
test_efermi = doscar.efermi
expected = 5.84395237
self.assertAlmostEqual(test_efermi, expected)

View File

@ -1,45 +0,0 @@
r"""
Tests for class 'Eigneval' from module 'vaspio'
"""
import mytest
import numpy as np
from vaspio import Eigenval
################################################################################
#
# TestEigenval
#
################################################################################
class TestEigenval(mytest.MyTestCase):
"""
Function:
def Eigenval.from_file(vasp_dir, eig_filename)
Scenarios:
- correct EIGENVAL file
"""
# Scenario 1
def test_example(self):
filename = 'EIGENVAL.example'
eigenval = Eigenval()
eigenval.from_file(vasp_dir='./', eig_filename=filename)
testout = 'EIGENVAL.example.out.test'
with open(testout, 'w') as f:
writeline = lambda s: f.write(s + '\n')
writeprop = lambda pname: writeline("%s = %s"%(pname, eigenval.__dict__[pname]))
writeprop('nq')
writeprop('ispin')
writeprop('nelect')
writeprop('nktot')
writeprop('nband')
writeline("kpts:\n%s"%(eigenval.kpts))
writeline("kwghts:\n%s"%(eigenval.kwghts))
writeline("eigs:\n%s"%(eigenval.eigs))
expected = 'EIGENVAL.example.out'
self.assertFileEqual(testout, expected)

View File

@ -1,57 +0,0 @@
r"""
Tests for class 'Ibzkpt' from module 'vaspio'
"""
import mytest
import numpy as np
from vaspio import Kpoints
################################################################################
#
# TestIbzkpt
#
################################################################################
class TestIbzkpt(mytest.MyTestCase):
"""
Function:
def read_plocar(filename)
Scenarios:
- full IBZKPT file with tetrahedra
- partial IBZKPT file with k-points only
"""
# Scenario 1
def test_example(self):
ibz_file = 'IBZKPT.example'
kpoints = Kpoints()
kpoints.from_file(vasp_dir='./', ibz_filename=ibz_file)
testout = 'IBZKPT.example.out.test'
with open(testout, 'w') as f:
writeline = lambda s: f.write(s + '\n')
writeline("nktot = %s"%(kpoints.nktot))
writeline("ntet = %s"%(kpoints.ntet))
writeline("volt = %s"%(kpoints.volt))
writeline("kpts:\n%s"%(kpoints.kpts))
writeline("tets:\n%s"%(kpoints.itet))
expected = 'IBZKPT.example.out'
self.assertFileEqual(testout, expected)
# Scenario 2
def test_notet(self):
ibz_file = 'IBZKPT.notet'
kpoints = Kpoints()
kpoints.from_file(vasp_dir='./', ibz_filename=ibz_file)
testout = 'IBZKPT.notet.out.test'
with open(testout, 'w') as f:
writeline = lambda s: f.write(s + '\n')
writeline("nktot = %s"%(kpoints.nktot))
writeline("kpts:\n%s"%(kpoints.kpts))
expected = 'IBZKPT.notet.out'
self.assertFileEqual(testout, expected)

View File

@ -1,43 +0,0 @@
r"""
Tests for class 'Poscar' from module 'vaspio'
"""
import mytest
import numpy as np
from vaspio import Poscar
################################################################################
#
# TestPoscar
#
################################################################################
class TestPoscar(mytest.MyTestCase):
"""
Function:
def Poscar.from_file(vasp_dir, poscar_filename)
Scenarios:
- correct POSCAR file
"""
# Scenario 1
def test_example(self):
filename = 'POSCAR.example'
poscar = Poscar()
poscar.from_file(vasp_dir='./', poscar_filename=filename)
testout = 'POSCAR.example.out.test'
with open(testout, 'w') as f:
writeline = lambda s: f.write(s + '\n')
writeprop = lambda pname: writeline("%s = %s"%(pname, poscar.__dict__[pname]))
writeprop('nq')
writeprop('ntypes')
writeprop('nions')
writeprop('el_names')
writeline("a_brav:\n%s"%(poscar.a_brav))
writeline("q_types:\n%s"%(poscar.q_types))
expected = 'POSCAR.example.out'
self.assertFileEqual(testout, expected)

View File

@ -1,11 +0,0 @@
r"""
Test suite for module `vaspio`.
"""
import unittest
if __name__ == '__main__':
suite = unittest.TestLoader().discover('./')
unittest.TextTestRunner(verbosity=2, buffer=True).run(suite)
# unittest.TextTestRunner(verbosity=2, buffer=False).run(suite)