From 6036ff56910365890312b9a4e55d9632895d0261 Mon Sep 17 00:00:00 2001 From: RubelMozumder <32923026+RubelMozumder@users.noreply.github.com> Date: Tue, 1 Dec 2020 20:27:01 +0100 Subject: [PATCH 01/13] Add files via upload --- aiida_kkr/workflows/BandStructure_WF.py | 470 ++++++++++++++++++++++++ 1 file changed, 470 insertions(+) create mode 100644 aiida_kkr/workflows/BandStructure_WF.py diff --git a/aiida_kkr/workflows/BandStructure_WF.py b/aiida_kkr/workflows/BandStructure_WF.py new file mode 100644 index 00000000..9e68160a --- /dev/null +++ b/aiida_kkr/workflows/BandStructure_WF.py @@ -0,0 +1,470 @@ +#!/usr/bin/env python +# coding: utf-8 + +# In[18]: + +# from __future__ import print_function, division, absolute_import +from six.moves import range +from aiida.orm import Code, Dict, RemoteData, StructureData, Float +from aiida.orm import XyData, WorkChainNode, load_node, CalcJobNode, ArrayData +from aiida.engine import WorkChain, if_, ToContext, submit +from aiida.engine import CalcJob, calcfunction +from masci_tools.io.kkr_params import kkrparams +from aiida_kkr.tools.common_workfunctions import test_and_get_codenode, get_parent_paranode +from aiida_kkr.tools.common_workfunctions import update_params_wf, get_inputs_kkr +from aiida_kkr.calculations.kkr import KkrCalculation +from aiida_kkr.calculations.voro import VoronoiCalculation +from aiida.common.exceptions import InputValidationError, ConfigurationError + +from aiida_kkr.tools.save_output_nodes import create_out_dict_node +from aiida.tools.data.array.kpoints import get_explicit_kpoints_path +__copyright__ = (u"This is the Copyright") +__license__ = "Here is the license" +__version__ = ("Here is the version") +__contributors__ = "using technique from Philpp RÜssmann's DOS wf" + + +# In[19]: + + + +class kkr_BS_wf(WorkChain): + """ + Workchain for BandStructure calculation, starting from the previous converged KKR calculation remote folder data + + ####### 001 with kkr starting from the remote data node + ####### of a previous calculation (either Voronoi or KKR) + + inputs: + :param wf_parameters: (Dict); Workchain Specifications, contains npt2, tempr, emin(ev), emax(ev), kmesh + keys. The Energy emin and emax are the energy difference from the fermi energy. + + :param options: (Dict); Computer Specifications + :param kpoints: (KpointsData); Kpoints data type from thestructure, + but not mendatory as it can be extrruct from structure internaly from the remote data + :param remote_data: (RemoteData); From the previous kkr-converged calcualtion. + :param kkr: (Code); KKR code specifiaction + + returns: + :out result_wf: python dict for the work_chain_specifications + """ + + _wf_version = __version__ + _wf_label = 'kkr_BandStructure_wc' + _wf_description = """Workflow for a bandstructure calculation starting eithe from a structure with automatic voronoi' + calculation or a valid RemoteData of a previous calculation.""" + _wf_params_default = { + 'EMIN':10, # Energy below the fermi surface for energy contour in ev unit + 'EMAX': 5, # Energy over the fermi surface for energy contour in ev unit + "NPT2": 200, # Energy points in the energy contour + "kmesh": [30, 30, 30], + 'TEMPR': 50. # temperature + } + _wf_option_default = {'max_wallclock_seconds': 36000, + 'resources': {'tot_num_mpiprocs': 48, 'num_machines': 1}, + 'custom_scheduler_commands': + '#SBATCH --account=jara0191\n\nulimit -s unlimited; export OMP_STACKSIZE=2g', + 'withmpi': True, + 'queue_name': '' + } + @classmethod + def get_wf_params_defaults(self, silent=False): + if not silent: print('Version of the wf pparameters {}'.format(self._wf_version)) + return self._wf_params_default + + @classmethod + def define(cls, spec): + super(kkr_BS_wf, cls).define(spec) + # here inputs are defined + spec.input("wf_parameters", valid_type = Dict, required = False,default=lambda: Dict(self._wf_params_default)) + spec.input("kpoints", valid_type=KpointsData, required = False) + spec.input("options", valid_type=Dict, required=False,default=lambda: Dict(dict=cls._wf_option_default)) + spec.input("remote_data", valid_type=RemoteData, required=True) + spec.input("kkr", valid_type=Code, required=True) + spec.input("label", required=False) + spec.input("description", required=False) + spec.input("fromula", required=False) + + # Here outputs are defined + spec.output("results_wf", valid_type=Dict, required=True) + spec.output('BS_data', valid_type=ArrayData, required=True) + + # Here outlines are being specified + spec.outline( + # For initialiging workflow + cls.start, + if_(cls.validate_input)( + cls.set_params_BS, + cls.get_BS), + cls.return_results + ) + # definition of exit code in case something goes wrong in this workflow + spec.exit_code(161, 'ERROR_NO_INPUT_REMOTE_DATA', 'No remote_data was provided as Input') + spec.exit_code(162, 'ERROR_KKRCODE_NOT_CORRECT', 'The code you provided for kkr does not use the plugin kkr.kkr') + spec.exit_code(163, 'ERROR_CALC_PARAMETERS_INVALID', 'calc_parameters given are not consistent! Hint: did you give an unknown keyword?') + spec.exit_code(164, 'ERROR_CALC_PARAMETERS_INCOMPLETE', 'calc_parameters not complete') + spec.exit_code(165, 'ERROR_BS_CALC_FAILED', 'KKR Band Structure calculation failed') + spec.exit_code(166, 'ERROR_NO_KPOINTS_EXTRACTED', 'No K-POINTS was extracted from the structure data') + + def start(self): + self.report('INFO: started KKR Band Structure workflow version {}' + ''.format(self._wf_version)) + wf_dict = self.inputs.wf_parameters.get_dict() + options_dict = self.inputs.options.get_dict() + if wf_dict == {}: + self.report('INFO: Using default wf parameter') + wf_dict = self._wf_params_default + if options_dict == {}: + self.report('INFO: Using default wf Options') + options_dict = self._wf_option_default + self.ctx.withmpi = options_dict.get('withmpi', self._wf_option_default['withmpi']) + self.ctx.resources = options_dict.get('resources', self._wf_option_default['resources']) + self.ctx.max_wallclock_seconds = options_dict.get('max_wallclock_seconds', self._wf_option_default['max_wallclock_seconds']) + self.ctx.queue = options_dict.get('queue_name', self._wf_option_default['queue_name']) + self.ctx.custom_scheduler_commands = options_dict.get('custom_scheduler_commands', self._wf_option_default['custom_scheduler_commands']) + self.ctx.BS_params_dict = wf_dict + self.ctx.BS_kkrparams = None # is set in set_params_BS + self.ctx.BS_kpoints = None + self.ctx.description_wf = self.inputs.get('description', self._wf_description) + self.ctx.label_wf = self.inputs.get('label', self._wf_label) + self.report('INFO: use the following parameter:\n' + 'withmpi: {}\n' + 'Resources: {}\n' + 'Walltime (s): {}\n' + 'queue name: {}\n' + 'scheduler command: {}\n' + 'description: {}\n' + 'label: {}\n' + + 'BS_params: {}\n'.format(self.ctx.withmpi, self.ctx.resources, self.ctx.max_wallclock_seconds, + self.ctx.queue, self.ctx.custom_scheduler_commands, + self.ctx.description_wf, self.ctx.label_wf, + self.ctx.BS_params_dict)) + self.ctx.successful = True + self.ctx.errors = [] + + def validate_input(self): + """ + # validate input and find out which path (1, or 2) to take + # return True means run voronoi if false run kkr directly + """ + inputs = self.inputs + if 'remote_data' in inputs: + input_ok = True + else: + input_ok = False + return self.exit_codes.ERROR_NO_INPUT_REMOTE_DATA + input_remote = self.inputs.remote_data + parents = input_remote.get_incoming(node_class=CalcJobNode) + nparents = len(parents.all_link_labels()) + + if nparents!=1: + # extract parent workflow and get uuid of last calc from output node + parent_workflow = input_remote.inputs.last_RemoteData + if not isinstance(parent_workflow, WorkChainNode): + raise InputValidationError("Input remote_data node neither output of a KKR/voronoi calculation nor of kkr_scf_wc workflow") + + parent_workflow_out = parent_workflow.outputs.output_kkr_scf_wc_ParameterResults + uuid_last_calc = parent_workflow_out.get_dict().get('last_calc_nodeinfo').get('uuid') + last_calc = load_node(uuid_last_calc) + + if not isinstance(last_calc, KkrCalculation) and not isinstance(last_calc, VoronoiCalculation): + raise InputValidationError("Extracted last_calc node not of type KkrCalculation: check remote_data input node") + + # overwrite remote_data node with extracted remote folder + output_remote = last_calc.outputs.remote_folder + + self.inputs.remote_data = output_remote + + struc_kkr, remote_voro = VoronoiCalculation.find_parent_structure(self.inputs.remote_data) + kpts = get_explicit_kpoints_path(struc_kkr).get('explicit_kpoints') + self.ctx.BS_kpoints = kpts + if 'kkr' in inputs: + try: + test_and_get_codenode(inputs.kkr, 'kkr.kkr', use_exceptions=True) + except ValueError: + input_ok = False + return self.exit_codes.ERROR_KKRCODE_NOT_CORRECT + + # set self.ctx.input_params_KKR + self.ctx.input_params_KKR = get_parent_paranode(self.inputs.remote_data) + return input_ok + + def set_params_BS(self): + + params = self.ctx.input_params_KKR + input_dict = params.get_dict() + para_check = kkrparams() + try: + for key, val in input_dict.items(): + para_check.set_value(key, val, silent=True) + except: + return self.exit_codes.ERROR_CALC_PARAMETERS_INVALID + label = '' + descr = '(pk - {}, and uuid - {})'.format(self.inputs.remote_data.pk, self.inputs.remote_data.uuid) + + missing_list = para_check.get_missing_keys(use_aiida=True) + + if missing_list != []: + kkrdefaults = kkrparams.get_KKRcalc_parameter_defaults()[0] + kkrdefaults_updated = [] + for key_default, val_default in list(kkrdefaults.items()): + if key_default in missing_list: + para_check.set_value(key_default, val_default)#kkrdefaults.get(key_default), silent=True) + kkrdefaults_updated.append(key_default) + missing_list.remove(key_default) + if len(missing_list)>0: + self.report('ERROR: calc_parameters misses keys: {}'.format(missing_list)) + return self.exit_codes.ERROR_CALC_PARAMETERS_INCOMPLETE + else: + self.report('updated KKR parameter node with default values: {}'.format(kkrdefaults_updated)) + label = 'add_defaults_' + descr = 'added missing default keys, ' +##+++ Starts to add the NTP2, EMAX and EMIN from the DOS + econt_new = self.ctx.BS_params_dict + kkr_calc = self.inputs.remote_data.get_incoming().first().node + ef = kkr_calc.outputs.output_parameters.get_dict()['fermi_energy'] + self.ctx.fermi_energy = ef ## in ev unit + try: + for key, val in econt_new.items(): + if key=='kmesh': + key = 'BZDIVIDE' + para_check.set_value(key, val, silent=True) + elif key=='nepts': + key = 'NPT2' + # add IEMXD which has to be big enough + print('setting IEMXD', val) + para_check.set_value('IEMXD', val, silent=True) + elif key=='emin': + key = 'EMIN' + new_val = ef - ev_To_Ry(val) + para_check.set_value(key, new_val, silent=True) + + para_check.set_value(key, new_val, silent=True) + elif key=='emax': + key = 'EMAX' + new_val = ef + ev_To_Ry(val) + para_check.set_value(key, new_val, silent=True) + elif key=='tempr': + key = 'TEMPR' + para_check.set_value(key, val, silent=True) + + # set params + except: + return self.exit_codes.ERROR_DOS_PARAMS_INVALID + para_check.set_multiple_values(NPT1=0, NPT3=0, NPOL=0,) + updatenode = Dict(dict=para_check.get_dict()) + updatenode.label = label+'KKRparam_BS' + updatenode.description = 'KKR parameter node extracted from remote_folder' + descr + ' as well as wf_parameter input node.' + + paranode_BS = update_params_wf(self.ctx.input_params_KKR, updatenode) + self.ctx.BS_kkrparams = paranode_BS + + def get_BS(self): + label = 'KKR BS calc.' + BS_dict = self.ctx.BS_params_dict + key_list = list(BS_dict) + description = 'User defined BandStructure parameters ' + for index in range(len(key_list)): + description += '{}= {} ,'.format(key_list[index], BS_dict[key_list[index]]) + + code = self.inputs.kkr + remote = self.inputs.remote_data + params = self.ctx.BS_kkrparams + kpoints = self.ctx.BS_kpoints + options = {"max_wallclock_seconds": self.ctx.max_wallclock_seconds, + "resources": self.ctx.resources, + "queue_name" : self.ctx.queue}#, + if self.ctx.custom_scheduler_commands: + options["custom_scheduler_commands"] = self.ctx.custom_scheduler_commands + + create_builder = KkrCalculation.get_builder() + create_builder.parent_folder = remote + create_builder.code = code + create_builder.parameters = params + create_builder.kpoints = kpoints + create_builder.metadata.options = options + + BS_run = self.submit(KkrCalculation, **create_builder) + self.ctx.last_calc = BS_run + + + return ToContext(BS_run=BS_run) + + def return_results(self): + """ + Collect results, parse DOS output and link output nodes to workflow node + """ + + # check wether or not calculation was taked from cached node + caching_info = "INFO: cache_source of dos calc node: {}".format(self.ctx.BS_run.get_cache_source) + print(caching_info) + self.report(caching_info) + + if not self.ctx.BS_run.is_finished_ok: + self.ctx.successful = False + error = ('ERROR: DOS calculation failed somehow it is ' + 'in state {}'.format(self.ctx.BS_run.process_state)) + print(error) + from pprint import pprint + pprint(self.ctx.BS_run.attributes) + print('stdout', self.ctx.BS_run.get_scheduler_stdout()) + print('stderr', self.ctx.BS_run.get_scheduler_stderr()) + self.report(error) + self.ctx.errors.append(error) + return self.exit_codes.ERROR_BS_CALC_FAILED + + # create dict to store results of workflow output + outputnode_dict = {} + outputnode_dict['workflow_name'] = self.__class__.__name__ + outputnode_dict['workflow_version'] = self._wf_version + outputnode_dict['withmpi'] = self.ctx.withmpi + outputnode_dict['resources'] = self.ctx.resources + outputnode_dict['max_wallclock_seconds'] = self.ctx.max_wallclock_seconds + outputnode_dict['queue_name'] = self.ctx.queue + outputnode_dict['custom_scheduler_commands'] = self.ctx.custom_scheduler_commands + outputnode_dict['BS_params'] = self.ctx.BS_params_dict + try: + outputnode_dict['nspin'] = self.ctx.BS_run.res.nspin + except: + error = "ERROR: nspin not extracted" + self.report(error) + self.ctx.successful = False + self.ctx.errors.append(error) + outputnode_dict['successful'] = self.ctx.successful + outputnode_dict['list_of_errors'] = self.ctx.errors + + # create output node with data-provenance + outputnode = Dict(dict=outputnode_dict) + outputnode.label = 'kkr_scf_wc_results' + outputnode.description = '' + + self.report("INFO: create Banstructure results nodes") + try: + self.report("INFO: create Bandstructure results nodes. BS calc retrieved node={}". + format(self.ctx.BS_run.outputs.retrieved)) + has_BS_run = True + except AttributeError as e: + self.report("ERROR: no Bandstructure calc retrieved node found") + self.report("Caught AttributeError {}".format(e)) + has_BS_run = False + + if has_BS_run: + BS_retrieved = self.ctx.BS_run.outputs.retrieved + + ef = self.ctx.fermi_energy + + outdict = {} + if has_BS_run: + ArraData = parse_BS_data(BS_retrieved, Float(ef)) + outdict['BS_data'] = ArraData['BS_data'] + + link_nodes = outdict.copy() # link also dos output nodes + if has_dosrun: link_nodes['BS_calc_remote'] =self.ctx.BS_run.outputs.remote_folder + outdict['results_wf'] = create_out_dict_node(outputnode, **link_nodes) + + # create links to output nodes + for link_name, node in outdict.items(): + self.out(link_name, node) + + self.report("INFO: done with BS_workflow!\n") + + def ev_To_Ry(value): + return float(value/13.6056980659) + + +@calcfunction +def parse_BS_data(retrieved_folder, ef): + from masci_tools.io.common_functions import get_Ry2eV + from aiida.plugins import DataFactory + + eVscale = get_Ry2eV + + retrieved_list = retrieved_folder.list_object_names() + qdos_file_list = [i for i in retrieved_list if 'qdos.' in i] + q_vec_file = 'qvec.dat' + if q_vec_file in retrieved_list: + file_open = retrieved_folder.open(q_vec_file) + q_vec = file_open.readlines() + file_open.close() + else: + print('{} file is not present in the retrived folder'.format(q_vec_file)) + + num_dos_files = len(qdos_file_list) + total_dos = np.loadtxt(qdos_file_list[0]) + + no_q_vec = int(q_vec[0]) + + for i in qdos_file_list[1:]: + i_atom = i.split('.')[1] + load_file = np.loadtxt(i) + total_dos[:,5:] += load_file[:,5:] + + ef = ef.value + total_dos[:,0] = total_dos[:,0]*eVscale - ef*np.ones(np.shape(total_dos[:,0])) + eng_points = set(total_dos[:,0]) + no_eng_points = len(eng_points) + + dos_intensity = np.ndarray(shape = (no_eng_points, no_q_vec)) + for ne in range(np.shape(dos_intensity)[0]): + nk = np.shape(dos_intensity)[1] + + dos_intensity[ne,:] = total_dos[ ne*nk : (ne+1)*nk, 5 ]/eVscale + + dos_intensity = dos_intensity.T # setting eng-kpts corresponding x-y asix + q_vec = np.asarray(q_vec) # converting q_vec into array + eng_points = np.asarray(eng_points) # converting eng_popints into array + + # To save into the ArrayData + ArrayData = DataFactory('array') + array = ArrayData() + array.set_array('BS_Matrix', dos_intensity) + array.set_array('Kpts', q_vec) + array.set_array('Eng_levels',list(eng_points)) + + return {'BS_Data' : array} + + + + +# In[20]: + + +##++ Starts submision of kkr_BS_wf +from aiida import load_profile, get_profile +load_profile() +print(get_profile().name) +from aiida.engine import run +from aiida.orm import Code, load_node, load_code +from aiida.plugins import DataFactory + +Dict = DataFactory('dict') +metadata_option_1 = {'max_wallclock_seconds': 36000,'resources': + {'tot_num_mpiprocs': 48, 'num_machines': 1}, + 'custom_scheduler_commands': + '#SBATCH --account=jara0191\n\nulimit -s unlimited; export OMP_STACKSIZE=2g', + 'withmpi': True} +Dict_metadata_option_1 = Dict(dict=metadata_option_1) + +calc_dos = load_node(203) +calc_kkr_converged = load_node(180) +remote_folder_kkr = calc_kkr_converged.outputs.remote_folder +# remote_folder_dos = calc_dos.outputs.remote_folder + +# Parameters_from_DOS_calc_dict = calc_dos.inputs.parameters +# Parameters_from_DOS_calc = remote_folder_dos.get_incoming().first().node.inputs.parameters +wf_parameters_dict = {'NPT2' : 200,'EMIN' : 10, 'EMAX' : 5, 'TEMPR' : 50, 'kmesh' : [30,30,30]} +wf_parameters = Dict(dict=wf_parameters_dict)#calc_kkr_converged.inputs.parameters#.get_dict() +kkr = Code.get_from_string('kkrhost@claix18') +inputs = { 'wf_parameters':wf_parameters, 'options':Dict_metadata_option_1, 'remote_data':remote_folder_kkr, + 'kkr':kkr } +submition_kkr_BS_wf = run(kkr_BS_wf, **inputs) +##-- Ends submision of the kkr_BS_wf + + + +# In[ ]: + + + + From 27f9aaeb8dea8593f4283b0ca221ad1589ae9f5c Mon Sep 17 00:00:00 2001 From: RubelMozumder Date: Wed, 2 Dec 2020 14:56:35 +0100 Subject: [PATCH 02/13] Removed comment line --- aiida_kkr/workflows/BandStructure_WF.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/aiida_kkr/workflows/BandStructure_WF.py b/aiida_kkr/workflows/BandStructure_WF.py index 9e68160a..84331059 100644 --- a/aiida_kkr/workflows/BandStructure_WF.py +++ b/aiida_kkr/workflows/BandStructure_WF.py @@ -1,8 +1,6 @@ #!/usr/bin/env python # coding: utf-8 -# In[18]: - # from __future__ import print_function, division, absolute_import from six.moves import range from aiida.orm import Code, Dict, RemoteData, StructureData, Float From 9086178889670955a2e91c422145f603dfeab6f2 Mon Sep 17 00:00:00 2001 From: RubelMozumder Date: Thu, 3 Dec 2020 17:25:44 +0100 Subject: [PATCH 03/13] Some kind of completed BS_wf --- aiida_kkr/workflows/BandStructure_WF.py | 208 +++++++++++------------- 1 file changed, 95 insertions(+), 113 deletions(-) diff --git a/aiida_kkr/workflows/BandStructure_WF.py b/aiida_kkr/workflows/BandStructure_WF.py index 84331059..160baf2b 100644 --- a/aiida_kkr/workflows/BandStructure_WF.py +++ b/aiida_kkr/workflows/BandStructure_WF.py @@ -1,50 +1,53 @@ #!/usr/bin/env python # coding: utf-8 -# from __future__ import print_function, division, absolute_import +# In[2]: + + +#### #!/usr/bin/env python +#### # -*- coding: utf-8 -*- + from six.moves import range from aiida.orm import Code, Dict, RemoteData, StructureData, Float -from aiida.orm import XyData, WorkChainNode, load_node, CalcJobNode, ArrayData +from aiida.orm import XyData, WorkChainNode, load_node, CalcJobNode, ArrayData, KpointsData from aiida.engine import WorkChain, if_, ToContext, submit from aiida.engine import CalcJob, calcfunction from masci_tools.io.kkr_params import kkrparams -from aiida_kkr.tools.common_workfunctions import test_and_get_codenode, get_parent_paranode -from aiida_kkr.tools.common_workfunctions import update_params_wf, get_inputs_kkr +from aiida_kkr.tools.common_workfunctions import test_and_get_codenode, get_parent_paranode, update_params_wf, get_inputs_kkr from aiida_kkr.calculations.kkr import KkrCalculation from aiida_kkr.calculations.voro import VoronoiCalculation from aiida.common.exceptions import InputValidationError, ConfigurationError - from aiida_kkr.tools.save_output_nodes import create_out_dict_node from aiida.tools.data.array.kpoints import get_explicit_kpoints_path -__copyright__ = (u"This is the Copyright") +__copyright__ = u"This is the Copyright" __license__ = "Here is the license" -__version__ = ("Here is the version") +__version__ = "Here is the version" __contributors__ = "using technique from Philpp RÜssmann's DOS wf" -# In[19]: - +# In[24]: class kkr_BS_wf(WorkChain): """ - Workchain for BandStructure calculation, starting from the previous converged KKR calculation remote folder data - - ####### 001 with kkr starting from the remote data node - ####### of a previous calculation (either Voronoi or KKR) + Workchain for BandStructure calculation, starting from RemoteFolderData the previous converged KKR calculation remote folder data inputs: - :param wf_parameters: (Dict); Workchain Specifications, contains npt2, tempr, emin(ev), emax(ev), kmesh + :param wf_parameters: (Dict), (optional); Workchain Specifications, contains npt2, tempr, emin(ev), emax(ev), kmesh keys. The Energy emin and emax are the energy difference from the fermi energy. - :param options: (Dict); Computer Specifications - :param kpoints: (KpointsData); Kpoints data type from thestructure, + :param options: (Dict), (optional); Computer Specifications, Schedualer command, parallel or serial + :param kpoints: (KpointsData),(optional); Kpoints data type from thestructure, but not mendatory as it can be extrruct from structure internaly from the remote data - :param remote_data: (RemoteData); From the previous kkr-converged calcualtion. - :param kkr: (Code); KKR code specifiaction + :param remote_data: (RemoteData)(mendaory); From the previous kkr-converged calcualtion. + :param kkr: (Code)(mendaory); KKR code specifiaction + :param label: (Str): + :param description: (Str): + returns: - :out result_wf: python dict for the work_chain_specifications + :out BS_Data : (ArrayData) ; Consist of (Dos_intensity matrix), k_points (list), Energy_levels (list), special_kpoints(dict) + :out result_wf: (Dict); work_chain_specifications node, BS_data node, remote_folder node """ _wf_version = __version__ @@ -52,7 +55,7 @@ class kkr_BS_wf(WorkChain): _wf_description = """Workflow for a bandstructure calculation starting eithe from a structure with automatic voronoi' calculation or a valid RemoteData of a previous calculation.""" _wf_params_default = { - 'EMIN':10, # Energy below the fermi surface for energy contour in ev unit + 'EMIN':5, # Energy below the fermi surface for energy contour in ev unit 'EMAX': 5, # Energy over the fermi surface for energy contour in ev unit "NPT2": 200, # Energy points in the energy contour "kmesh": [30, 30, 30], @@ -65,6 +68,8 @@ class kkr_BS_wf(WorkChain): 'withmpi': True, 'queue_name': '' } + + @classmethod def get_wf_params_defaults(self, silent=False): if not silent: print('Version of the wf pparameters {}'.format(self._wf_version)) @@ -75,17 +80,16 @@ def define(cls, spec): super(kkr_BS_wf, cls).define(spec) # here inputs are defined spec.input("wf_parameters", valid_type = Dict, required = False,default=lambda: Dict(self._wf_params_default)) - spec.input("kpoints", valid_type=KpointsData, required = False) spec.input("options", valid_type=Dict, required=False,default=lambda: Dict(dict=cls._wf_option_default)) spec.input("remote_data", valid_type=RemoteData, required=True) spec.input("kkr", valid_type=Code, required=True) + spec.input("kpoints", valid_type=KpointsData, required = False) spec.input("label", required=False) spec.input("description", required=False) - spec.input("fromula", required=False) # Here outputs are defined spec.output("results_wf", valid_type=Dict, required=True) - spec.output('BS_data', valid_type=ArrayData, required=True) + spec.output('BS_Data', valid_type=ArrayData, required=True) # Here outlines are being specified spec.outline( @@ -103,7 +107,8 @@ def define(cls, spec): spec.exit_code(164, 'ERROR_CALC_PARAMETERS_INCOMPLETE', 'calc_parameters not complete') spec.exit_code(165, 'ERROR_BS_CALC_FAILED', 'KKR Band Structure calculation failed') spec.exit_code(166, 'ERROR_NO_KPOINTS_EXTRACTED', 'No K-POINTS was extracted from the structure data') - + + def start(self): self.report('INFO: started KKR Band Structure workflow version {}' ''.format(self._wf_version)) @@ -131,19 +136,19 @@ def start(self): 'Walltime (s): {}\n' 'queue name: {}\n' 'scheduler command: {}\n' - 'description: {}\n' - 'label: {}\n' - + 'description_wf: {}\n' + 'label_wf: {}\n' 'BS_params: {}\n'.format(self.ctx.withmpi, self.ctx.resources, self.ctx.max_wallclock_seconds, self.ctx.queue, self.ctx.custom_scheduler_commands, self.ctx.description_wf, self.ctx.label_wf, self.ctx.BS_params_dict)) + self.ctx.successful = True self.ctx.errors = [] def validate_input(self): """ - # validate input and find out which path (1, or 2) to take + # validate input and find out which path ( converged kkr calc or wf ) to take # return True means run voronoi if false run kkr directly """ inputs = self.inputs @@ -173,10 +178,21 @@ def validate_input(self): output_remote = last_calc.outputs.remote_folder self.inputs.remote_data = output_remote + # To validate for kpoints + if "kpoints" in inputs: + self.ctx.BS_kpoints = 'kpoints' + input_ok = True + else: + struc_kkr, remote_voro = VoronoiCalculation.find_parent_structure(self.inputs.remote_data) + kpts = get_explicit_kpoints_path(struc_kkr).get('explicit_kpoints') + self.ctx.BS_kpoints = kpts + if isinstance(KpointsData(), type(kpts)): + input_ok = True + else: + input_ok = False + return self.exit_codes.ERROR_NO_KPOINTS_EXTRACTED - struc_kkr, remote_voro = VoronoiCalculation.find_parent_structure(self.inputs.remote_data) - kpts = get_explicit_kpoints_path(struc_kkr).get('explicit_kpoints') - self.ctx.BS_kpoints = kpts + # To validate for kkr if 'kkr' in inputs: try: test_and_get_codenode(inputs.kkr, 'kkr.kkr', use_exceptions=True) @@ -208,7 +224,7 @@ def set_params_BS(self): kkrdefaults_updated = [] for key_default, val_default in list(kkrdefaults.items()): if key_default in missing_list: - para_check.set_value(key_default, val_default)#kkrdefaults.get(key_default), silent=True) + para_check.set_value(key_default, val_default) kkrdefaults_updated.append(key_default) missing_list.remove(key_default) if len(missing_list)>0: @@ -218,39 +234,41 @@ def set_params_BS(self): self.report('updated KKR parameter node with default values: {}'.format(kkrdefaults_updated)) label = 'add_defaults_' descr = 'added missing default keys, ' -##+++ Starts to add the NTP2, EMAX and EMIN from the DOS + ##+++ Starts to add the NTP2, EMAX and EMIN from the econt_new = self.ctx.BS_params_dict kkr_calc = self.inputs.remote_data.get_incoming().first().node - ef = kkr_calc.outputs.output_parameters.get_dict()['fermi_energy'] + ef = kkr_calc.outputs.output_parameters.get_dict()['fermi_energy'] # unit in ev self.ctx.fermi_energy = ef ## in ev unit + + # Set BS params try: for key, val in econt_new.items(): - if key=='kmesh': + if key=='kmesh' or key=='BZDIVIDE': key = 'BZDIVIDE' para_check.set_value(key, val, silent=True) - elif key=='nepts': + elif key=='nepts' or key=='NPT2': key = 'NPT2' # add IEMXD which has to be big enough print('setting IEMXD', val) para_check.set_value('IEMXD', val, silent=True) - elif key=='emin': + elif key=='emin' or key=='EMIN': key = 'EMIN' - new_val = ef - ev_To_Ry(val) + new_val = ef - val para_check.set_value(key, new_val, silent=True) para_check.set_value(key, new_val, silent=True) - elif key=='emax': + elif key=='emax' or key== 'EMAX': key = 'EMAX' - new_val = ef + ev_To_Ry(val) + new_val = ef + val para_check.set_value(key, new_val, silent=True) - elif key=='tempr': + elif key=='tempr' or key=='TEMPR': key = 'TEMPR' para_check.set_value(key, val, silent=True) - # set params except: - return self.exit_codes.ERROR_DOS_PARAMS_INVALID + return self.exit_codes.ERROR_CALC_PARAMETERS_INVALID para_check.set_multiple_values(NPT1=0, NPT3=0, NPOL=0,) + updatenode = Dict(dict=para_check.get_dict()) updatenode.label = label+'KKRparam_BS' updatenode.description = 'KKR parameter node extracted from remote_folder' + descr + ' as well as wf_parameter input node.' @@ -291,17 +309,16 @@ def get_BS(self): def return_results(self): """ - Collect results, parse DOS output and link output nodes to workflow node + Collect results, parse BS_calc output and link output nodes to workflow node """ - # check wether or not calculation was taked from cached node - caching_info = "INFO: cache_source of dos calc node: {}".format(self.ctx.BS_run.get_cache_source) + caching_info = "INFO: cache_source of BS calc node: {}".format(self.ctx.BS_run.get_cache_source) print(caching_info) self.report(caching_info) if not self.ctx.BS_run.is_finished_ok: self.ctx.successful = False - error = ('ERROR: DOS calculation failed somehow it is ' + error = ('ERROR BS calculation failed somehow it is ' 'in state {}'.format(self.ctx.BS_run.process_state)) print(error) from pprint import pprint @@ -322,6 +339,9 @@ def return_results(self): outputnode_dict['queue_name'] = self.ctx.queue outputnode_dict['custom_scheduler_commands'] = self.ctx.custom_scheduler_commands outputnode_dict['BS_params'] = self.ctx.BS_params_dict + + outputnode_dict['BS_wf_description'] = self.ctx.description_wf + outputnode_dict['BS_wf_label'] = self.ctx.label_wf try: outputnode_dict['nspin'] = self.ctx.BS_run.res.nspin except: @@ -350,15 +370,16 @@ def return_results(self): if has_BS_run: BS_retrieved = self.ctx.BS_run.outputs.retrieved - ef = self.ctx.fermi_energy - + ef = self.ctx.fermi_energy # in eV unit + kpoints = self.ctx.BS_kpoints outdict = {} if has_BS_run: - ArraData = parse_BS_data(BS_retrieved, Float(ef)) - outdict['BS_data'] = ArraData['BS_data'] - - link_nodes = outdict.copy() # link also dos output nodes - if has_dosrun: link_nodes['BS_calc_remote'] =self.ctx.BS_run.outputs.remote_folder + ArraData = parse_BS_data(BS_retrieved, Float(ef), kpoints) + outdict['BS_Data'] = ArraData['BS_Data'] + + # link to the BS output nodes + link_nodes = outdict.copy() + if has_BS_run: link_nodes['BS_calc_remote'] =self.ctx.BS_run.outputs.remote_folder outdict['results_wf'] = create_out_dict_node(outputnode, **link_nodes) # create links to output nodes @@ -372,33 +393,36 @@ def ev_To_Ry(value): @calcfunction -def parse_BS_data(retrieved_folder, ef): +def parse_BS_data(retrieved_folder, fermi_level, kpoints): from masci_tools.io.common_functions import get_Ry2eV from aiida.plugins import DataFactory + import numpy as np - eVscale = get_Ry2eV + eVscale = get_Ry2eV() retrieved_list = retrieved_folder.list_object_names() qdos_file_list = [i for i in retrieved_list if 'qdos.' in i] q_vec_file = 'qvec.dat' + if q_vec_file in retrieved_list: - file_open = retrieved_folder.open(q_vec_file) - q_vec = file_open.readlines() - file_open.close() + file_opened = retrieved_folder.open(q_vec_file) + q_vec = np.loadtxt(file_opened, skiprows=1 ) + else: print('{} file is not present in the retrived folder'.format(q_vec_file)) + no_q_vec = len(q_vec[:,0]) num_dos_files = len(qdos_file_list) - total_dos = np.loadtxt(qdos_file_list[0]) - no_q_vec = int(q_vec[0]) + with retrieved_folder.open(qdos_file_list[0]) as f: + total_dos = np.loadtxt(f) for i in qdos_file_list[1:]: - i_atom = i.split('.')[1] - load_file = np.loadtxt(i) - total_dos[:,5:] += load_file[:,5:] + with retrieved_folder.open(i) as f: + loaded_file = np.loadtxt(f) + total_dos[:,5:] += loaded_file[:,5:] - ef = ef.value + ef = fermi_level.value # in eV unit total_dos[:,0] = total_dos[:,0]*eVscale - ef*np.ones(np.shape(total_dos[:,0])) eng_points = set(total_dos[:,0]) no_eng_points = len(eng_points) @@ -409,60 +433,18 @@ def parse_BS_data(retrieved_folder, ef): dos_intensity[ne,:] = total_dos[ ne*nk : (ne+1)*nk, 5 ]/eVscale - dos_intensity = dos_intensity.T # setting eng-kpts corresponding x-y asix + dos_intensity = dos_intensity.T # setting eng-kpts corresponds to x-y asix q_vec = np.asarray(q_vec) # converting q_vec into array - eng_points = np.asarray(eng_points) # converting eng_popints into array - + eng_points = np.asarray(list(eng_points)) # converting eng_popints into array + + klbl_dict = dict(kpoints.labels) # Special k-points # To save into the ArrayData ArrayData = DataFactory('array') array = ArrayData() array.set_array('BS_Matrix', dos_intensity) array.set_array('Kpts', q_vec) - array.set_array('Eng_levels',list(eng_points)) + array.set_array('Eng_levels',eng_points) + array.extras['k-labels'] = klbl_dict return {'BS_Data' : array} - - - -# In[20]: - - -##++ Starts submision of kkr_BS_wf -from aiida import load_profile, get_profile -load_profile() -print(get_profile().name) -from aiida.engine import run -from aiida.orm import Code, load_node, load_code -from aiida.plugins import DataFactory - -Dict = DataFactory('dict') -metadata_option_1 = {'max_wallclock_seconds': 36000,'resources': - {'tot_num_mpiprocs': 48, 'num_machines': 1}, - 'custom_scheduler_commands': - '#SBATCH --account=jara0191\n\nulimit -s unlimited; export OMP_STACKSIZE=2g', - 'withmpi': True} -Dict_metadata_option_1 = Dict(dict=metadata_option_1) - -calc_dos = load_node(203) -calc_kkr_converged = load_node(180) -remote_folder_kkr = calc_kkr_converged.outputs.remote_folder -# remote_folder_dos = calc_dos.outputs.remote_folder - -# Parameters_from_DOS_calc_dict = calc_dos.inputs.parameters -# Parameters_from_DOS_calc = remote_folder_dos.get_incoming().first().node.inputs.parameters -wf_parameters_dict = {'NPT2' : 200,'EMIN' : 10, 'EMAX' : 5, 'TEMPR' : 50, 'kmesh' : [30,30,30]} -wf_parameters = Dict(dict=wf_parameters_dict)#calc_kkr_converged.inputs.parameters#.get_dict() -kkr = Code.get_from_string('kkrhost@claix18') -inputs = { 'wf_parameters':wf_parameters, 'options':Dict_metadata_option_1, 'remote_data':remote_folder_kkr, - 'kkr':kkr } -submition_kkr_BS_wf = run(kkr_BS_wf, **inputs) -##-- Ends submision of the kkr_BS_wf - - - -# In[ ]: - - - - From fc9b5021d79bd0d19b2631a6ab8108ad5ec3b8c8 Mon Sep 17 00:00:00 2001 From: RubelMozumder <32923026+RubelMozumder@users.noreply.github.com> Date: Thu, 3 Dec 2020 17:39:17 +0100 Subject: [PATCH 04/13] Update BandStructure_WF.py --- aiida_kkr/workflows/BandStructure_WF.py | 7 ------- 1 file changed, 7 deletions(-) diff --git a/aiida_kkr/workflows/BandStructure_WF.py b/aiida_kkr/workflows/BandStructure_WF.py index 160baf2b..03214e53 100644 --- a/aiida_kkr/workflows/BandStructure_WF.py +++ b/aiida_kkr/workflows/BandStructure_WF.py @@ -1,11 +1,6 @@ #!/usr/bin/env python # coding: utf-8 -# In[2]: - - -#### #!/usr/bin/env python -#### # -*- coding: utf-8 -*- from six.moves import range from aiida.orm import Code, Dict, RemoteData, StructureData, Float @@ -25,8 +20,6 @@ __contributors__ = "using technique from Philpp RÜssmann's DOS wf" -# In[24]: - class kkr_BS_wf(WorkChain): """ From d5fbed13042ac4c0dcb4b9afa3def454d85dda86 Mon Sep 17 00:00:00 2001 From: RubelMozumder Date: Thu, 3 Dec 2020 17:51:15 +0100 Subject: [PATCH 05/13] deleting some empty lins --- aiida_kkr/workflows/BandStructure_WF.py | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/aiida_kkr/workflows/BandStructure_WF.py b/aiida_kkr/workflows/BandStructure_WF.py index 160baf2b..843e0176 100644 --- a/aiida_kkr/workflows/BandStructure_WF.py +++ b/aiida_kkr/workflows/BandStructure_WF.py @@ -1,12 +1,8 @@ #!/usr/bin/env python # coding: utf-8 -# In[2]: -#### #!/usr/bin/env python -#### # -*- coding: utf-8 -*- - from six.moves import range from aiida.orm import Code, Dict, RemoteData, StructureData, Float from aiida.orm import XyData, WorkChainNode, load_node, CalcJobNode, ArrayData, KpointsData @@ -19,14 +15,13 @@ from aiida.common.exceptions import InputValidationError, ConfigurationError from aiida_kkr.tools.save_output_nodes import create_out_dict_node from aiida.tools.data.array.kpoints import get_explicit_kpoints_path + __copyright__ = u"This is the Copyright" __license__ = "Here is the license" __version__ = "Here is the version" __contributors__ = "using technique from Philpp RÜssmann's DOS wf" -# In[24]: - class kkr_BS_wf(WorkChain): """ From a72086cacd08d0813e165d519fcc0dfc1b28f2e6 Mon Sep 17 00:00:00 2001 From: RubelMozumder Date: Mon, 7 Dec 2020 15:31:10 +0100 Subject: [PATCH 06/13] After some changes --- aiida_kkr/workflows/bs.py | 81 +-------------------------------------- 1 file changed, 1 insertion(+), 80 deletions(-) diff --git a/aiida_kkr/workflows/bs.py b/aiida_kkr/workflows/bs.py index d4b108f8..786313dd 100644 --- a/aiida_kkr/workflows/bs.py +++ b/aiida_kkr/workflows/bs.py @@ -1,12 +1,6 @@ #!/usr/bin/env python # coding: utf-8 -# In[2]: - - -#### #!/usr/bin/env python -#### # -*- coding: utf-8 -*- - from six.moves import range import numpy as np from aiida.orm import Code, Dict, RemoteData, StructureData, Float @@ -20,15 +14,12 @@ from aiida.common.exceptions import InputValidationError, ConfigurationError from aiida_kkr.tools.save_output_nodes import create_out_dict_node from aiida.tools.data.array.kpoints import get_explicit_kpoints_path + __copyright__ = u"FZJ" __license__ = "MIT license" __version__ = "0.1.0" __contributors__ = u"Rubel Mozumder" - -# In[3]: - - class kkr_bs_wc(WorkChain): """ Workchain for BandStructure calculation, starting from RemoteFolderData the previous converged KKR calculation remote folder data @@ -478,73 +469,3 @@ def parse_BS_data(retrieved_folder, fermi_level, kpoints): - - - -# In[4]: - - -##++ Starts submision of kkr_BS_wf -from aiida import load_profile, get_profile -load_profile() -print(get_profile().name) -from aiida.engine import run -from aiida.orm import Code, load_node, load_code -from aiida.plugins import DataFactory -Str = DataFactory('str') - -Dict = DataFactory('dict') -metadata_option_1 = {'max_wallclock_seconds': 36000,'resources': - {'tot_num_mpiprocs': 48, 'num_machines': 1}, - 'custom_scheduler_commands': - '#SBATCH --account=jara0191\n\nulimit -s unlimited; export OMP_STACKSIZE=2g', - 'withmpi': True} -Dict_metadata_option_1 = Dict(dict=metadata_option_1) - -calc_dos = load_node(203) -calc_kkr_converged = load_node(180) -remote_folder_kkr = calc_kkr_converged.outputs.remote_folder - - -wf_parameters_dict = {'NPT2' : 200,'EMIN' : 20, "RCLUSTZ": 2.3, 'EMAX' :13 , 'TEMPR' : 50} -wf_parameters = Dict(dict=wf_parameters_dict)#calc_kkr_converged.inputs.parameters#.get_dict() -kkr = Code.get_from_string('kkrhost@claix18') -inputs_name = { 'wf_parameters':wf_parameters, 'options':Dict_metadata_option_1, 'remote_data':remote_folder_kkr, - 'kkr':kkr } -submition_kkr_BS_wf = run(kkr_bs_wc, **inputs_name) -## Ends submision of the kkr_BS_wf - - -# In[ ]: - - -flt = Float(4.5) -type(flt.value) -type(flt) - - -# In[28]: - - -from masci_tools.io.common_functions import get_Ry2eV -eVscale = get_Ry2eV() - -# type(eVscale(1)) -type(eVscale) -eVscale - - -# In[33]: - - -def ev_To_Ry(value = 1 ): - - return float(value/13.6056980659) -ev_To_Ry(13.6056980659) - - -# In[ ]: - - - - From b1cd6c734569c796d83b22e09eb2853511e11749 Mon Sep 17 00:00:00 2001 From: RubelMozumder Date: Mon, 7 Dec 2020 16:16:10 +0100 Subject: [PATCH 07/13] To add an entry point for bs.py wc in the setup.json --- setup.json | 1 + 1 file changed, 1 insertion(+) diff --git a/setup.json b/setup.json index 32171c71..fd7de607 100644 --- a/setup.json +++ b/setup.json @@ -61,6 +61,7 @@ "aiida.workflows":[ "kkr.scf = aiida_kkr.workflows.kkr_scf:kkr_scf_wc", "kkr.dos = aiida_kkr.workflows.dos:kkr_dos_wc", + "kkr.bs = aiida_kkr.workflows.bs:kkr_bs_wc", "kkr.eos = aiida_kkr.workflows.eos:kkr_eos_wc", "kkr.startpot = aiida_kkr.workflows.voro_start:kkr_startpot_wc", "kkr.check_mag = aiida_kkr.workflows.check_magnetic_state:kkr_check_mag_wc", From 17b9d4b0b2d1527a9324b67d5bd12f51aa0383fa Mon Sep 17 00:00:00 2001 From: RubelMozumder Date: Mon, 7 Dec 2020 16:18:26 +0100 Subject: [PATCH 08/13] '__copyright__', '__version__','__contributors__', 'docstr' with missing explanation and datatype, the removal of the 'remote_folder' from the output of the WC, using the conventional name 'Dos_intensity matrix -> BlochSpectralFunction', 'Energy_levels -> energy_points', To 'RCLUSTZ' to the bs_param, removal the k-mesh from the bs_param, changing the 'wf_option_default' to the normal specifications from the CLAIX18, to set the 'exit_codes' instead of the 'if_' condition, return exit_code instead of raising and Error in case the parent_workflow is not the WorkChainNode, fixning the error for the units of energy (eV, Ry), removing the unnecessary keyword 'BZDIVIDE', sending a report informing the structure of the unitcell, return the exit_codes fro the 'dos_run=Flase', fixining the energy units, removing the unneccessary function 'ev_To_Ry', renaming 'total_dos# to 'total_qdos'and 'num_dos_files' to the 'num_qdos_files', adding 'total_dos[:,0] = (total_dos[:,0]-ef)*eVscale' instead of 'total_dos[:,0] = total_dos[:,0]*eVscale - ef*np.ones(np.shape(total_dos[:,0]))', to make the 'eng_points' array immediately after the set of 'eng_points', to transform 'Dos_intensity matrix -> BlochSpectralFunction', 'Energy_levels -> energy_points' as convention, to rewrite the 'kkr_BS_wf' to 'kkr_bs_wc'. --- aiida_kkr/workflows/bs.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/aiida_kkr/workflows/bs.py b/aiida_kkr/workflows/bs.py index 786313dd..97590bad 100644 --- a/aiida_kkr/workflows/bs.py +++ b/aiida_kkr/workflows/bs.py @@ -467,5 +467,3 @@ def parse_BS_data(retrieved_folder, fermi_level, kpoints): return {'BS_Data' : array} - - From 3d3168d5b8ae5a4e4df1d3e5a432db576f2de6eb Mon Sep 17 00:00:00 2001 From: RubelMozumder Date: Tue, 8 Dec 2020 17:36:38 +0100 Subject: [PATCH 09/13] correction energy-unit --- aiida_kkr/workflows/bs.py | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/aiida_kkr/workflows/bs.py b/aiida_kkr/workflows/bs.py index 97590bad..b9a7b47c 100644 --- a/aiida_kkr/workflows/bs.py +++ b/aiida_kkr/workflows/bs.py @@ -1,6 +1,7 @@ #!/usr/bin/env python # coding: utf-8 + from six.moves import range import numpy as np from aiida.orm import Code, Dict, RemoteData, StructureData, Float @@ -14,7 +15,6 @@ from aiida.common.exceptions import InputValidationError, ConfigurationError from aiida_kkr.tools.save_output_nodes import create_out_dict_node from aiida.tools.data.array.kpoints import get_explicit_kpoints_path - __copyright__ = u"FZJ" __license__ = "MIT license" __version__ = "0.1.0" @@ -48,30 +48,31 @@ class kkr_bs_wc(WorkChain): _wf_label = 'kkr_BandStructure_wc' _wf_description = """Workflow for a bandstructure calculation starting eithe from a structure with automatic voronoi' calculation or a valid RemoteData of a previous calculation.""" - _wf_params_default = { - 'EMIN':13, # Energy below the fermi surface for energy contour in ev unit + _wf_default = { + 'EMIN':1, # Energy below the fermi surface for energy contour in ev unit 'EMAX': 15, # Energy over the fermi surface for energy contour in ev unit "NPT2": 200, # Energy points in the energy contour "RCLUSTZ": 2.3, 'TEMPR': 50. # temperature } - _wf_option_default = {'max_wallclock_seconds': 36000, + + _options_default = {'max_wallclock_seconds': 36000, 'resources': {'num_machines': 1}, 'withmpi': True, 'queue_name': '' } @classmethod - def get_wf_params_defaults(self, silent=False): + def get_wf_default(self, silent=False): if not silent: print('Version of the wf pparameters {}'.format(self._wf_version)) - return self._wf_params_default + return self._wf_default @classmethod def define(cls, spec): super(kkr_bs_wc, cls).define(spec) # here inputs are defined - spec.input("wf_parameters", valid_type = Dict, required = False,default=lambda: Dict(self._wf_params_default)) - spec.input("options", valid_type=Dict, required=False,default=lambda: Dict(dict=cls._wf_option_default)) + spec.input("wf_parameters", valid_type = Dict, required = False,default=lambda: Dict(self._wf_default)) + spec.input("options", valid_type=Dict, required=False,default=lambda: Dict(dict=cls._options_default)) spec.input("remote_data", valid_type=RemoteData, required=True) spec.input("kkr", valid_type=Code, required=True) spec.input("kpoints", valid_type=KpointsData, required = False) @@ -109,14 +110,14 @@ def start(self): options_dict = self.inputs.options.get_dict() if wf_dict == {}: self.report('INFO: Using default wf parameter') - wf_dict = self._wf_params_default + wf_dict = self._wf_default if options_dict == {}: self.report('INFO: Using default wf Options') - options_dict = self._wf_option_default - self.ctx.withmpi = options_dict.get('withmpi', self._wf_option_default['withmpi']) - self.ctx.resources = options_dict.get('resources', self._wf_option_default['resources']) - self.ctx.max_wallclock_seconds = options_dict.get('max_wallclock_seconds', self._wf_option_default['max_wallclock_seconds']) - self.ctx.queue = options_dict.get('queue_name', self._wf_option_default['queue_name']) + options_dict = self._options_default + self.ctx.withmpi = options_dict.get('withmpi', self._options_default['withmpi']) + self.ctx.resources = options_dict.get('resources', self._options_default['resources']) + self.ctx.max_wallclock_seconds = options_dict.get('max_wallclock_seconds', self._options_default['max_wallclock_seconds']) + self.ctx.queue = options_dict.get('queue_name', self._options_default['queue_name']) self.ctx.custom_scheduler_commands = options_dict.get('custom_scheduler_commands', '') self.ctx.BS_params_dict = wf_dict self.ctx.BS_kkrparams = None # is set in set_params_BS @@ -451,7 +452,7 @@ def parse_BS_data(retrieved_folder, fermi_level, kpoints): nk = np.shape(qdos_intensity)[1] qdos_intensity[ne,:] = total_qdos[ ne*nk : (ne+1)*nk, 5 ]/eVscale - + qdos_intensity = qdos_intensity.T # setting eng-kpts corresponds to x-y asix q_vec = np.asarray(q_vec) # converting q_vec into array eng_points = (np.asarray(eng_points)) # converting eng_popints into array in Ry unit @@ -467,3 +468,4 @@ def parse_BS_data(retrieved_folder, fermi_level, kpoints): return {'BS_Data' : array} + From 02f47611d33675d0760bfa0894d0eafff5c7f26c Mon Sep 17 00:00:00 2001 From: RubelMozumder Date: Tue, 8 Dec 2020 19:08:07 +0100 Subject: [PATCH 10/13] energy correction --- aiida_kkr/workflows/bs.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/aiida_kkr/workflows/bs.py b/aiida_kkr/workflows/bs.py index b9a7b47c..c699c8f3 100644 --- a/aiida_kkr/workflows/bs.py +++ b/aiida_kkr/workflows/bs.py @@ -49,8 +49,8 @@ class kkr_bs_wc(WorkChain): _wf_description = """Workflow for a bandstructure calculation starting eithe from a structure with automatic voronoi' calculation or a valid RemoteData of a previous calculation.""" _wf_default = { - 'EMIN':1, # Energy below the fermi surface for energy contour in ev unit - 'EMAX': 15, # Energy over the fermi surface for energy contour in ev unit + 'EMIN':10, # Energy below the fermi surface for energy contour in ev unit + 'EMAX': 5, # Energy over the fermi surface for energy contour in ev unit "NPT2": 200, # Energy points in the energy contour "RCLUSTZ": 2.3, 'TEMPR': 50. # temperature @@ -268,13 +268,13 @@ def set_params_BS(self): elif key=='emin' or key=='EMIN': key = 'EMIN' - new_val = (ef - val)/evscal # converting the Energy value to eV while the fermi_energy in Ry + new_val = (ef/evscal- val )# converting the Energy value to eV while the fermi_energy in Ry para_check.set_value(key, new_val, silent=True) para_check.set_value(key, new_val, silent=True) elif key=='emax' or key== 'EMAX': key = 'EMAX' - new_val = ( ef + val)/evscal # Converting to the ev (unit of the energy) + new_val = ( ef/evscal+ val) # Converting to the ev (unit of the energy) para_check.set_value(key, new_val, silent=True) elif key=='tempr' or key=='TEMPR': key = 'TEMPR' From 8b1d5115b786d8a723fa9ff54a8869fc9590e833 Mon Sep 17 00:00:00 2001 From: RubelMozumder Date: Tue, 8 Dec 2020 19:22:29 +0100 Subject: [PATCH 11/13] energy correction --- aiida_kkr/workflows/bs.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/aiida_kkr/workflows/bs.py b/aiida_kkr/workflows/bs.py index c699c8f3..85614428 100644 --- a/aiida_kkr/workflows/bs.py +++ b/aiida_kkr/workflows/bs.py @@ -268,13 +268,13 @@ def set_params_BS(self): elif key=='emin' or key=='EMIN': key = 'EMIN' - new_val = (ef/evscal- val )# converting the Energy value to eV while the fermi_energy in Ry + new_val = (ef- val/evscal)# converting the Energy value to Ry while the fermi_energy in Ry para_check.set_value(key, new_val, silent=True) para_check.set_value(key, new_val, silent=True) elif key=='emax' or key== 'EMAX': key = 'EMAX' - new_val = ( ef/evscal+ val) # Converting to the ev (unit of the energy) + new_val = ( ef+ val/evscal) # Converting to the Ry (unit of the energy) para_check.set_value(key, new_val, silent=True) elif key=='tempr' or key=='TEMPR': key = 'TEMPR' From 9a060ee1a6147838091e5a33073be53ecee5396b Mon Sep 17 00:00:00 2001 From: RubelMozumder Date: Fri, 18 Dec 2020 11:19:28 +0100 Subject: [PATCH 12/13] incorporation of data folder --- .../db_dump_bs/db_dump_kkrcalc_bs.tar.gz | Bin 0 -> 159008 bytes aiida_kkr/tests/files/db_dump_bs/test_Kpts | 305 ++++++++++++++++++ .../tests/files/db_dump_bs/test_energy_points | 12 + .../tests/files/db_dump_bs/test_spectral | 305 ++++++++++++++++++ 4 files changed, 622 insertions(+) create mode 100644 aiida_kkr/tests/files/db_dump_bs/db_dump_kkrcalc_bs.tar.gz create mode 100644 aiida_kkr/tests/files/db_dump_bs/test_Kpts create mode 100644 aiida_kkr/tests/files/db_dump_bs/test_energy_points create mode 100644 aiida_kkr/tests/files/db_dump_bs/test_spectral diff --git a/aiida_kkr/tests/files/db_dump_bs/db_dump_kkrcalc_bs.tar.gz b/aiida_kkr/tests/files/db_dump_bs/db_dump_kkrcalc_bs.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..7cfc3c1388ac99f3b819bde7b53b69b9017dc64b GIT binary patch literal 159008 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 k-p1ftgtIG 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 Ap8x;= literal 0 HcmV?d00001 diff --git a/aiida_kkr/tests/files/db_dump_bs/test_Kpts b/aiida_kkr/tests/files/db_dump_bs/test_Kpts new file mode 100644 index 00000000..c4d9edbf --- /dev/null +++ b/aiida_kkr/tests/files/db_dump_bs/test_Kpts @@ -0,0 +1,305 @@ +0.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 +3.204224000000000092e-19 1.470587999999999930e-02 -3.204224000000000092e-19 +6.408446999999999901e-19 2.941175999999999860e-02 -6.408446999999999901e-19 +-6.820295999999999858e-19 4.411765000000000131e-02 6.820295999999999858e-19 +1.281689000000000060e-18 5.882352999999999887e-02 -1.281689000000000060e-18 +9.667011999999999788e-18 7.352941000000000338e-02 -9.667011999999999788e-18 +-1.364058999999999915e-18 8.823528999999999400e-02 1.364058999999999915e-18 +-3.387076999999999931e-18 1.029411999999999966e-01 3.387076999999999931e-18 +2.563379000000000017e-18 1.176471000000000044e-01 -2.563379000000000017e-18 +-1.528799000000000011e-18 1.323528999999999956e-01 1.528799000000000011e-18 +1.933402000000000153e-17 1.470587999999999895e-01 -1.933402000000000153e-17 +3.294792999999999937e-19 1.617647000000000113e-01 -3.294792999999999937e-19 +-2.728119000000000113e-18 1.764706000000000052e-01 2.728119000000000113e-18 +-3.716555999999999840e-18 1.911764999999999992e-01 3.716555999999999840e-18 +-6.774153999999999862e-18 2.058823999999999932e-01 6.774153999999999862e-18 +-7.762591999999999871e-18 2.205882000000000120e-01 7.762591999999999871e-18 +5.126758000000000034e-18 2.352941000000000060e-01 -5.126758000000000034e-18 +0.000000000000000000e+00 2.500000000000000000e-01 0.000000000000000000e+00 +-3.057598000000000022e-18 2.647058999999999940e-01 3.057598000000000022e-18 +-6.115196000000000043e-18 2.794117999999999880e-01 6.115196000000000043e-18 +3.866805000000000126e-17 2.941175999999999791e-01 -3.866805000000000126e-17 +3.716555999999999840e-18 3.088234999999999730e-01 -3.716555999999999840e-18 +6.589585999999999874e-19 3.235294000000000225e-01 -6.589585999999999874e-19 +-2.398638999999999921e-18 3.382353000000000165e-01 2.398638999999999921e-18 +-5.456236999999999943e-18 3.529412000000000105e-01 5.456236999999999943e-18 +-8.513834999999999965e-18 3.676471000000000044e-01 8.513834999999999965e-18 +-7.433113000000000732e-18 3.823528999999999956e-01 7.433113000000000732e-18 +-1.049071000000000047e-17 3.970587999999999895e-01 1.049071000000000047e-17 +-1.354831000000000029e-17 4.117646999999999835e-01 1.354831000000000029e-17 +-1.246759000000000008e-17 4.264705999999999775e-01 1.246759000000000008e-17 +-1.552517999999999861e-17 4.411765000000000270e-01 1.552517999999999861e-17 +1.331110999999999973e-17 4.558824000000000209e-01 -1.331110999999999973e-17 +1.025351999999999966e-17 4.705882000000000120e-01 -1.025351999999999966e-17 +7.195917999999999276e-18 4.852941000000000060e-01 -7.195917999999999276e-18 +0.000000000000000000e+00 5.000000000000000000e-01 0.000000000000000000e+00 +1.080722000000000003e-18 5.147059000000000495e-01 -1.080722000000000003e-18 +-6.115196000000000043e-18 5.294117999999999880e-01 6.115196000000000043e-18 +-5.034474000000000040e-18 5.441175999999999791e-01 5.034474000000000040e-18 +-1.223038999999999952e-17 5.588235000000000285e-01 1.223038999999999952e-17 +-1.114966999999999931e-17 5.735293999999999670e-01 1.114966999999999931e-17 +7.733610000000000251e-17 5.882353000000000165e-01 -7.733610000000000251e-17 +-1.726485999999999920e-17 6.029411999999999550e-01 1.726485999999999920e-17 +7.433113000000000732e-18 6.176471000000000044e-01 -7.433113000000000732e-18 +-2.338005999999999884e-17 6.323528999999999956e-01 2.338005999999999884e-17 +1.317916999999999918e-18 6.470588000000000450e-01 -1.317916999999999918e-18 +-2.949526000000000155e-17 6.617646999999999835e-01 2.949526000000000155e-17 +-4.797279000000000125e-18 6.764706000000000330e-01 4.797279000000000125e-18 +-2.733380999999999985e-17 6.911764999999999715e-01 2.733380999999999985e-17 +-1.091247000000000030e-17 7.058824000000000209e-01 1.091247000000000030e-17 +3.033878000000000120e-17 7.205882000000000120e-01 -3.033878000000000120e-17 +-1.702766999999999993e-17 7.352940999999999505e-01 1.702766999999999993e-17 +2.422358999999999977e-17 7.500000000000000000e-01 -2.422358999999999977e-17 +-1.486622999999999951e-17 7.647059000000000495e-01 1.486622999999999951e-17 +7.361953999999999769e-17 7.794117999999999880e-01 -7.361953999999999769e-17 +-2.098142000000000094e-17 7.941175999999999791e-01 2.098142000000000094e-17 +3.716555999999999840e-18 8.088235000000000285e-01 -3.716555999999999840e-18 +-2.709662000000000057e-17 8.235293999999999670e-01 2.709662000000000057e-17 +-2.398638999999999921e-18 8.382353000000000165e-01 2.398638999999999921e-18 +-2.493516999999999888e-17 8.529411999999999550e-01 2.493516999999999888e-17 +-8.513834999999999965e-18 8.676471000000000044e-01 8.513834999999999965e-18 +-3.105037000000000159e-17 8.823528999999999956e-01 3.105037000000000159e-17 +-1.462902999999999896e-17 8.970588000000000450e-01 1.462902999999999896e-17 +2.662223000000000074e-17 9.117646999999999835e-01 -2.662223000000000074e-17 +-2.074422999999999859e-17 9.264706000000000330e-01 2.074422999999999859e-17 +2.050703000000000111e-17 9.411764999999999715e-01 -2.050703000000000111e-17 +-2.685942000000000002e-17 9.558824000000000209e-01 2.685942000000000002e-17 +1.439183999999999968e-17 9.705882000000000120e-01 -1.439183999999999968e-17 +-2.469797999999999960e-17 9.852940999999999505e-01 2.469797999999999960e-17 +0.000000000000000000e+00 1.000000000000000000e+00 0.000000000000000000e+00 +1.086957000000000027e-02 1.000000000000000000e+00 1.086957000000000027e-02 +2.173912999999999887e-02 1.000000000000000000e+00 2.173912999999999887e-02 +3.260869999999999741e-02 1.000000000000000000e+00 3.260869999999999741e-02 +4.347825999999999774e-02 1.000000000000000000e+00 4.347825999999999774e-02 +5.434782999999999975e-02 1.000000000000000000e+00 5.434782999999999975e-02 +6.521739000000000008e-02 1.000000000000000000e+00 6.521739000000000008e-02 +7.608695999999999515e-02 1.000000000000000000e+00 7.608695999999999515e-02 +8.695651999999999548e-02 1.000000000000000000e+00 8.695651999999999548e-02 +9.782609000000000443e-02 1.000000000000000000e+00 9.782609000000000443e-02 +1.086957000000000062e-01 1.000000000000000000e+00 1.086957000000000062e-01 +1.195651999999999965e-01 1.000000000000000000e+00 1.195651999999999965e-01 +1.304347999999999896e-01 1.000000000000000000e+00 1.304347999999999896e-01 +1.413042999999999938e-01 1.000000000000000000e+00 1.413042999999999938e-01 +1.521739000000000008e-01 1.000000000000000000e+00 1.521739000000000008e-01 +1.630435000000000079e-01 1.000000000000000000e+00 1.630435000000000079e-01 +1.739130000000000120e-01 1.000000000000000000e+00 1.739130000000000120e-01 +1.847825999999999913e-01 1.000000000000000000e+00 1.847825999999999913e-01 +1.956521999999999983e-01 1.000000000000000000e+00 1.956521999999999983e-01 +2.065217000000000025e-01 1.000000000000000000e+00 2.065217000000000025e-01 +2.173913000000000095e-01 1.000000000000000000e+00 2.173913000000000095e-01 +2.282608999999999888e-01 1.000000000000000000e+00 2.282608999999999888e-01 +2.391303999999999930e-01 1.000000000000000000e+00 2.391303999999999930e-01 +2.500000000000000000e-01 1.000000000000000000e+00 2.500000000000000000e-01 +7.500000000000000000e-01 7.500000000000000000e-01 -4.844717999999999954e-17 +7.395833000000000546e-01 7.395833000000000546e-01 -1.871744999999999958e-16 +7.291666999999999454e-01 7.291666999999999454e-01 2.371830999999999933e-17 +7.187500000000000000e-01 7.187500000000000000e-01 -3.986737000000000174e-18 +7.083333000000000546e-01 7.083333000000000546e-01 -4.824505999999999711e-17 +6.979166999999999454e-01 6.979166999999999454e-01 -7.595010999999999900e-17 +6.875000000000000000e-01 6.875000000000000000e-01 2.392042000000000048e-17 +6.770833000000000546e-01 6.770833000000000546e-01 -3.784626000000000280e-18 +6.666666999999999454e-01 6.666666999999999454e-01 -4.804294999999999903e-17 +6.562500000000000000e-01 6.562500000000000000e-01 -7.574800000000000092e-17 +6.458333000000000546e-01 6.458333000000000546e-01 2.412252999999999855e-17 +6.354166999999999454e-01 6.354166999999999454e-01 -2.013580000000000035e-17 +6.250000000000000000e-01 6.250000000000000000e-01 -4.784084000000000096e-17 +6.145833000000000546e-01 6.145833000000000546e-01 -7.554589000000000285e-17 +6.041666999999999454e-01 6.041666999999999454e-01 7.771362999999999683e-18 +5.937500000000000000e-01 5.937500000000000000e-01 -1.993368000000000100e-17 +5.833333000000000546e-01 5.833333000000000546e-01 -4.763873000000000289e-17 +5.729166999999999454e-01 5.729166999999999454e-01 -2.810926999999999803e-17 +5.625000000000000000e-01 5.625000000000000000e-01 7.973474000000000348e-18 +5.520833000000000546e-01 5.520833000000000546e-01 -1.973156999999999985e-17 +5.416666999999999454e-01 5.416666999999999454e-01 -2.021107000000000026e-19 +5.312500000000000000e-01 5.312500000000000000e-01 -2.790715999999999996e-17 +5.208333000000000546e-01 5.208333000000000546e-01 8.175584999999999473e-18 +5.104166999999999454e-01 5.104166999999999454e-01 -3.608273999999999879e-17 +5.000000000000000000e-01 5.000000000000000000e-01 0.000000000000000000e+00 +4.895832999999999990e-01 4.895832999999999990e-01 2.780610000000000183e-17 +4.791667000000000010e-01 4.791667000000000010e-01 1.010552999999999992e-19 +4.687500000000000000e-01 4.687500000000000000e-01 2.790715999999999996e-17 +4.583332999999999990e-01 4.583332999999999990e-01 -1.635116999999999895e-17 +4.479167000000000010e-01 4.479167000000000010e-01 2.800820999999999990e-17 +4.375000000000000000e-01 4.375000000000000000e-01 -1.625011000000000081e-17 +4.270832999999999990e-01 4.270832999999999990e-01 1.983263000000000106e-17 +4.166667000000000010e-01 4.166667000000000010e-01 -1.614906000000000087e-17 +4.062500000000000000e-01 4.062500000000000000e-01 1.993368000000000100e-17 +3.958332999999999990e-01 3.958332999999999990e-01 -2.432463999999999971e-17 +3.854167000000000010e-01 3.854167000000000010e-01 2.003473999999999914e-17 +3.750000000000000000e-01 3.750000000000000000e-01 -2.422358999999999977e-17 +3.645832999999999990e-01 3.645832999999999990e-01 1.185916000000000030e-17 +3.541667000000000010e-01 3.541667000000000010e-01 -2.412252999999999855e-17 +3.437500000000000000e-01 3.437500000000000000e-01 1.196021000000000024e-17 +3.333332999999999990e-01 3.333332999999999990e-01 -2.402147999999999862e-17 +3.229167000000000010e-01 3.229167000000000010e-01 1.206126999999999992e-17 +3.125000000000000000e-01 3.125000000000000000e-01 -2.392042000000000048e-17 +3.020832999999999990e-01 3.020832999999999990e-01 3.885682000000000368e-18 +2.916667000000000010e-01 2.916667000000000010e-01 -2.381937000000000055e-17 +2.812500000000000000e-01 2.812500000000000000e-01 3.986737000000000174e-18 +2.708332999999999990e-01 2.708332999999999990e-01 -1.010552999999999992e-19 +2.604167000000000010e-01 2.604167000000000010e-01 4.087791999999999980e-18 +2.500000000000000000e-01 2.500000000000000000e-01 0.000000000000000000e+00 +2.395832999999999990e-01 2.395832999999999990e-01 4.188848000000000069e-18 +2.291667000000000010e-01 2.291667000000000010e-01 -1.231390000000000040e-17 +2.187500000000000000e-01 2.187500000000000000e-01 -8.125056999999999429e-18 +2.083332999999999990e-01 2.083332999999999990e-01 2.021107000000000026e-19 +1.979167000000000010e-01 1.979167000000000010e-01 -1.216231999999999985e-17 +1.875000000000000000e-01 1.875000000000000000e-01 -1.211178999999999924e-17 +1.770832999999999990e-01 1.770832999999999990e-01 -3.784626000000000280e-18 +1.666667000000000010e-01 1.666667000000000010e-01 1.574483999999999857e-17 +1.562500000000000000e-01 1.562500000000000000e-01 -1.196021000000000024e-17 +1.458332999999999990e-01 1.458332999999999990e-01 -1.190967999999999963e-17 +1.354167000000000010e-01 1.354167000000000010e-01 -4.188848000000000069e-18 +1.250000000000000000e-01 1.250000000000000000e-01 0.000000000000000000e+00 +1.145832999999999990e-01 1.145832999999999990e-01 4.188848000000000069e-18 +1.041667000000000010e-01 1.041667000000000010e-01 7.771362999999999683e-18 +9.375000000000000000e-02 9.375000000000000000e-02 -6.055897000000000187e-18 +8.333332999999999713e-02 8.333332999999999713e-02 2.021107000000000026e-19 +7.291667000000000287e-02 7.291667000000000287e-02 3.784626000000000280e-18 +6.250000000000000000e-02 6.250000000000000000e-02 0.000000000000000000e+00 +5.208332999999999713e-02 5.208332999999999713e-02 -1.175810000000000063e-17 +4.166667000000000287e-02 4.166667000000000287e-02 -2.021107000000000026e-19 +3.125000000000000000e-02 3.125000000000000000e-02 0.000000000000000000e+00 +2.083333000000000060e-02 2.083333000000000060e-02 2.021107000000000026e-19 +1.041666999999999940e-02 1.041666999999999940e-02 -2.021107000000000026e-19 +0.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 +8.474575999999999290e-03 8.474575999999999290e-03 8.474575999999999290e-03 +1.694914999999999963e-02 1.694914999999999963e-02 1.694914999999999963e-02 +2.542372999999999855e-02 2.542372999999999855e-02 2.542372999999999855e-02 +3.389831000000000094e-02 3.389831000000000094e-02 3.389831000000000094e-02 +4.237288000000000165e-02 4.237288000000000165e-02 4.237288000000000165e-02 +5.084745999999999710e-02 5.084745999999999710e-02 5.084745999999999710e-02 +5.932202999999999782e-02 5.932202999999999782e-02 5.932202999999999782e-02 +6.779660999999999327e-02 6.779660999999999327e-02 6.779660999999999327e-02 +7.627119000000000260e-02 7.627119000000000260e-02 7.627119000000000260e-02 +8.474576000000000331e-02 8.474576000000000331e-02 8.474576000000000331e-02 +9.322033999999999876e-02 9.322033999999999876e-02 9.322033999999999876e-02 +1.016949000000000047e-01 1.016949000000000047e-01 1.016949000000000047e-01 +1.101695000000000035e-01 1.101695000000000035e-01 1.101695000000000035e-01 +1.186441000000000023e-01 1.186441000000000023e-01 1.186441000000000023e-01 +1.271185999999999983e-01 1.271185999999999983e-01 1.271185999999999983e-01 +1.355931999999999971e-01 1.355931999999999971e-01 1.355931999999999971e-01 +1.440677999999999959e-01 1.440677999999999959e-01 1.440677999999999959e-01 +1.525423999999999947e-01 1.525423999999999947e-01 1.525423999999999947e-01 +1.610168999999999906e-01 1.610168999999999906e-01 1.610168999999999906e-01 +1.694914999999999894e-01 1.694914999999999894e-01 1.694914999999999894e-01 +1.779660999999999882e-01 1.779660999999999882e-01 1.779660999999999882e-01 +1.864406999999999870e-01 1.864406999999999870e-01 1.864406999999999870e-01 +1.949153000000000135e-01 1.949153000000000135e-01 1.949153000000000135e-01 +2.033898000000000095e-01 2.033898000000000095e-01 2.033898000000000095e-01 +2.118644000000000083e-01 2.118644000000000083e-01 2.118644000000000083e-01 +2.203390000000000071e-01 2.203390000000000071e-01 2.203390000000000071e-01 +2.288136000000000059e-01 2.288136000000000059e-01 2.288136000000000059e-01 +2.372881000000000018e-01 2.372881000000000018e-01 2.372881000000000018e-01 +2.457627000000000006e-01 2.457627000000000006e-01 2.457627000000000006e-01 +2.542372999999999994e-01 2.542372999999999994e-01 2.542372999999999994e-01 +2.627118999999999982e-01 2.627118999999999982e-01 2.627118999999999982e-01 +2.711863999999999941e-01 2.711863999999999941e-01 2.711863999999999941e-01 +2.796609999999999929e-01 2.796609999999999929e-01 2.796609999999999929e-01 +2.881355999999999917e-01 2.881355999999999917e-01 2.881355999999999917e-01 +2.966101999999999905e-01 2.966101999999999905e-01 2.966101999999999905e-01 +3.050846999999999865e-01 3.050846999999999865e-01 3.050846999999999865e-01 +3.135592999999999853e-01 3.135592999999999853e-01 3.135592999999999853e-01 +3.220338999999999841e-01 3.220338999999999841e-01 3.220338999999999841e-01 +3.305084999999999829e-01 3.305084999999999829e-01 3.305084999999999829e-01 +3.389830999999999817e-01 3.389830999999999817e-01 3.389830999999999817e-01 +3.474575999999999776e-01 3.474575999999999776e-01 3.474575999999999776e-01 +3.559321999999999764e-01 3.559321999999999764e-01 3.559321999999999764e-01 +3.644067999999999752e-01 3.644067999999999752e-01 3.644067999999999752e-01 +3.728813999999999740e-01 3.728813999999999740e-01 3.728813999999999740e-01 +3.813559000000000254e-01 3.813559000000000254e-01 3.813559000000000254e-01 +3.898305000000000242e-01 3.898305000000000242e-01 3.898305000000000242e-01 +3.983051000000000230e-01 3.983051000000000230e-01 3.983051000000000230e-01 +4.067797000000000218e-01 4.067797000000000218e-01 4.067797000000000218e-01 +4.152542000000000177e-01 4.152542000000000177e-01 4.152542000000000177e-01 +4.237288000000000165e-01 4.237288000000000165e-01 4.237288000000000165e-01 +4.322034000000000153e-01 4.322034000000000153e-01 4.322034000000000153e-01 +4.406780000000000141e-01 4.406780000000000141e-01 4.406780000000000141e-01 +4.491525000000000101e-01 4.491525000000000101e-01 4.491525000000000101e-01 +4.576271000000000089e-01 4.576271000000000089e-01 4.576271000000000089e-01 +4.661017000000000077e-01 4.661017000000000077e-01 4.661017000000000077e-01 +4.745763000000000065e-01 4.745763000000000065e-01 4.745763000000000065e-01 +4.830508000000000024e-01 4.830508000000000024e-01 4.830508000000000024e-01 +4.915254000000000012e-01 4.915254000000000012e-01 4.915254000000000012e-01 +5.000000000000000000e-01 5.000000000000000000e-01 5.000000000000000000e-01 +5.000000000000000000e-01 5.104166999999999454e-01 4.895832999999999990e-01 +5.000000000000000000e-01 5.208333000000000546e-01 4.791667000000000010e-01 +5.000000000000000000e-01 5.312500000000000000e-01 4.687500000000000000e-01 +5.000000000000000000e-01 5.416666999999999454e-01 4.583332999999999990e-01 +5.000000000000000000e-01 5.520833000000000546e-01 4.479167000000000010e-01 +5.000000000000000000e-01 5.625000000000000000e-01 4.375000000000000000e-01 +5.000000000000000000e-01 5.729166999999999454e-01 4.270832999999999990e-01 +5.000000000000000000e-01 5.833333000000000546e-01 4.166667000000000010e-01 +5.000000000000000000e-01 5.937500000000000000e-01 4.062500000000000000e-01 +5.000000000000000000e-01 6.041666999999999454e-01 3.958332999999999990e-01 +5.000000000000000000e-01 6.145833000000000546e-01 3.854167000000000010e-01 +5.000000000000000000e-01 6.250000000000000000e-01 3.750000000000000000e-01 +5.000000000000000000e-01 6.354166999999999454e-01 3.645832999999999990e-01 +5.000000000000000000e-01 6.458333000000000546e-01 3.541667000000000010e-01 +5.000000000000000000e-01 6.562500000000000000e-01 3.437500000000000000e-01 +5.000000000000000000e-01 6.666666999999999454e-01 3.333332999999999990e-01 +5.000000000000000000e-01 6.770833000000000546e-01 3.229167000000000010e-01 +5.000000000000000000e-01 6.875000000000000000e-01 3.125000000000000000e-01 +5.000000000000000000e-01 6.979166999999999454e-01 3.020832999999999990e-01 +5.000000000000000000e-01 7.083333000000000546e-01 2.916667000000000010e-01 +5.000000000000000000e-01 7.187500000000000000e-01 2.812500000000000000e-01 +5.000000000000000000e-01 7.291666999999999454e-01 2.708332999999999990e-01 +5.000000000000000000e-01 7.395833000000000546e-01 2.604167000000000010e-01 +5.000000000000000000e-01 7.500000000000000000e-01 2.500000000000000000e-01 +5.000000000000000000e-01 7.604166999999999454e-01 2.395832999999999990e-01 +5.000000000000000000e-01 7.708333000000000546e-01 2.291667000000000010e-01 +5.000000000000000000e-01 7.812500000000000000e-01 2.187500000000000000e-01 +5.000000000000000000e-01 7.916666999999999454e-01 2.083332999999999990e-01 +5.000000000000000000e-01 8.020833000000000546e-01 1.979167000000000010e-01 +5.000000000000000000e-01 8.125000000000000000e-01 1.875000000000000000e-01 +5.000000000000000000e-01 8.229166999999999454e-01 1.770832999999999990e-01 +5.000000000000000000e-01 8.333333000000000546e-01 1.666667000000000010e-01 +5.000000000000000000e-01 8.437500000000000000e-01 1.562500000000000000e-01 +5.000000000000000000e-01 8.541666999999999454e-01 1.458332999999999990e-01 +5.000000000000000000e-01 8.645833000000000546e-01 1.354167000000000010e-01 +5.000000000000000000e-01 8.750000000000000000e-01 1.250000000000000000e-01 +5.000000000000000000e-01 8.854166999999999454e-01 1.145832999999999990e-01 +5.000000000000000000e-01 8.958333000000000546e-01 1.041667000000000010e-01 +5.000000000000000000e-01 9.062500000000000000e-01 9.375000000000000000e-02 +5.000000000000000000e-01 9.166666999999999454e-01 8.333332999999999713e-02 +5.000000000000000000e-01 9.270833000000000546e-01 7.291667000000000287e-02 +5.000000000000000000e-01 9.375000000000000000e-01 6.250000000000000000e-02 +5.000000000000000000e-01 9.479166999999999454e-01 5.208332999999999713e-02 +5.000000000000000000e-01 9.583333000000000546e-01 4.166667000000000287e-02 +5.000000000000000000e-01 9.687500000000000000e-01 3.125000000000000000e-02 +5.000000000000000000e-01 9.791666999999999454e-01 2.083333000000000060e-02 +5.000000000000000000e-01 9.895833000000000546e-01 1.041666999999999940e-02 +5.000000000000000000e-01 1.000000000000000000e+00 -3.189389999999999944e-17 +4.848485000000000156e-01 1.000000000000000000e+00 2.613175000000000118e-17 +4.696969999999999756e-01 1.000000000000000000e+00 -4.341817999999999957e-17 +4.545454999999999912e-01 1.000000000000000000e+00 1.460747000000000105e-17 +4.393939000000000039e-01 1.000000000000000000e+00 -5.494246999999999789e-17 +4.242424000000000195e-01 1.000000000000000000e+00 3.083181999999999823e-18 +4.090908999999999796e-01 1.000000000000000000e+00 -1.940422999999999986e-16 +3.939393999999999951e-01 1.000000000000000000e+00 -8.441103000000000559e-18 +3.787879000000000107e-01 1.000000000000000000e+00 -2.055666000000000013e-16 +3.636364000000000263e-01 1.000000000000000000e+00 -1.996538999999999881e-17 +3.484847999999999835e-01 1.000000000000000000e+00 -1.060685999999999966e-16 +3.333332999999999990e-01 1.000000000000000000e+00 6.297934999999999607e-17 +3.181818000000000146e-01 1.000000000000000000e+00 9.982693999999999892e-18 +3.030302999999999747e-01 1.000000000000000000e+00 6.800833999999999784e-17 +2.878787999999999903e-01 1.000000000000000000e+00 -1.541590999999999912e-18 +2.727273000000000058e-01 1.000000000000000000e+00 5.648406000000000388e-17 +2.575758000000000214e-01 1.000000000000000000e+00 -1.306587999999999969e-17 +2.424242000000000063e-01 1.000000000000000000e+00 4.495976999999999939e-17 +2.272726999999999942e-01 1.000000000000000000e+00 -2.459016000000000136e-17 +2.121212000000000097e-01 1.000000000000000000e+00 3.343548999999999926e-17 +1.969696999999999976e-01 1.000000000000000000e+00 -3.611445000000000276e-17 +1.818182000000000131e-01 1.000000000000000000e+00 2.191120000000000094e-17 +1.666667000000000010e-01 1.000000000000000000e+00 6.338357000000000454e-17 +1.515151999999999888e-01 1.000000000000000000e+00 -6.166363999999999647e-18 +1.363636000000000015e-01 1.000000000000000000e+00 5.185928000000000005e-17 +1.212121000000000032e-01 1.000000000000000000e+00 4.609714000000000307e-17 +1.060606000000000049e-01 1.000000000000000000e+00 4.033499999999999992e-17 +9.090908999999999796e-02 1.000000000000000000e+00 3.457286000000000294e-17 +7.575758000000000492e-02 1.000000000000000000e+00 2.881071000000000160e-17 +6.060606000000000326e-02 1.000000000000000000e+00 2.304857000000000153e-17 +4.545455000000000328e-02 1.000000000000000000e+00 1.728643000000000147e-17 +3.030303000000000163e-02 1.000000000000000000e+00 1.152428999999999987e-17 +1.515151999999999992e-02 1.000000000000000000e+00 5.762143000000000139e-18 +0.000000000000000000e+00 1.000000000000000000e+00 0.000000000000000000e+00 diff --git a/aiida_kkr/tests/files/db_dump_bs/test_energy_points b/aiida_kkr/tests/files/db_dump_bs/test_energy_points new file mode 100644 index 00000000..d0dbda4c --- /dev/null +++ b/aiida_kkr/tests/files/db_dump_bs/test_energy_points @@ -0,0 +1,12 @@ +-4.545469976344376217e-01 +9.090971898855952915e-01 +2.272727771712620193e+00 +3.636358353539645538e+00 +5.000002541059678229e+00 +-1.000000188750263952e+01 +-8.636357699982605496e+00 +-7.272727118155581927e+00 +-5.909096536328555693e+00 +-4.545452348808522558e+00 +-3.181821766981497213e+00 +-1.818177579461462745e+00 diff --git a/aiida_kkr/tests/files/db_dump_bs/test_spectral b/aiida_kkr/tests/files/db_dump_bs/test_spectral new file mode 100644 index 00000000..ddebda12 --- /dev/null +++ b/aiida_kkr/tests/files/db_dump_bs/test_spectral @@ -0,0 +1,305 @@ +7.447344279558115732e-02 1.542260580634860663e-02 1.548894097938264061e-02 5.697262458349210829e-02 2.101822845854569977e+01 6.791223639904193199e+00 2.235208451336005542e+00 8.052607384829757464e-02 9.521342566990737000e-02 4.863074475973574312e-02 1.275789655735867084e-02 1.186507382558274135e-02 +7.342932104517838066e-02 1.546589709622339312e-02 1.548780616030434598e-02 5.690109746617758729e-02 2.189994378109961204e+01 6.755470959046390611e+00 2.260759520272371592e+00 8.035298159945425400e-02 9.575073604396656946e-02 4.851256540650939614e-02 1.274184327731953288e-02 1.181401990282110806e-02 +7.043368679317522918e-02 1.559786891116969609e-02 1.548456398807755881e-02 5.668888041864534461e-02 2.488138662073791352e+01 6.677675289299922490e+00 2.341929718605486155e+00 7.985842391719952249e-02 9.884903908315136045e-02 4.848349639843031744e-02 1.270204346707526008e-02 1.167409259454356071e-02 +6.585849022223812244e-02 1.582503323113160915e-02 1.547970543365065170e-02 5.634295992809136566e-02 3.125826929349909022e+01 6.647286833546400153e+00 2.494776383499687888e+00 7.911372388660956045e-02 1.109166052035534533e-01 4.932758423669059838e-02 1.266043382619731934e-02 1.147798821395559429e-02 +6.021397656540347643e-02 1.615901636576460437e-02 1.547405132989062432e-02 5.587464361404658603e-02 4.453280840595218137e+01 6.827722479005699618e+00 2.757764648605558921e+00 7.823139323339997619e-02 1.586333249304023307e-01 5.200967620920983470e-02 1.264555005659689924e-02 1.126298056987124277e-02 +5.403433573825978942e-02 1.661787487417503567e-02 1.546876589533374702e-02 5.529909512895139073e-02 7.381253122025368896e+01 7.525037051201629801e+00 3.230526278295803966e+00 7.736492652772011813e-02 4.965759374058209552e-01 5.774317320553325888e-02 1.268643294287340705e-02 1.105909650471079489e-02 +4.778569144327516477e-02 1.722830052426916128e-02 1.546537143391458688e-02 5.463478732823730255e-02 1.278195766176426389e+02 9.449831913372698011e+00 4.262253334809166461e+00 7.672747571986614223e-02 7.804609432960051052e+00 6.859186366932380763e-02 1.281027521969719217e-02 1.088515402354247111e-02 +4.181619206192983135e-02 1.802922231434569630e-02 1.546577185453236990e-02 5.390293250883095716e-02 1.195378845402552486e+02 1.475719199802503567e+01 8.317813427448324859e+00 7.665714633647001397e-02 2.260728415645822109e-01 8.909234679910599253e-02 1.304379041057342030e-02 1.075051979368087628e-02 +3.634658636446380653e-02 1.907771164822700399e-02 1.547229265431384997e-02 5.312699320217331711e-02 5.345281151933420460e+01 3.077430247198957858e+01 9.690668745265969619e+01 7.780850554982561562e-02 8.636327155277798151e-02 1.314052050724173470e-01 1.341714235939659404e-02 1.065877231715216776e-02 +3.148732047067460266e-02 2.045893052385274261e-02 1.548773677758349780e-02 5.233235348827940808e-02 2.332034155041694490e+01 4.671303795988801966e+01 1.013687725489382174e+01 8.176988259723860786e-02 5.471008757198984190e-02 2.380684789710736382e-01 1.396980689438397441e-02 1.061095468672572720e-02 +2.726684717600186963e-02 2.230354424425629034e-02 1.551546693434585449e-02 5.154622550546188176e-02 1.177177229370484923e+01 1.933549844362801196e+01 1.180406054243348457e+01 9.359980113894983411e-02 4.190673474867023102e-02 6.550184539739970502e-01 1.475900594458282727e-02 1.060782011651516948e-02 +2.366053914247919984e-02 2.481947165621220530e-02 1.555952437409578032e-02 5.079798401616281850e-02 6.736653541967331016e+00 7.729804864069163450e+00 2.712469638671677430e+01 1.380387458953874213e-01 3.506892061171597297e-02 8.416087583650110560e+00 1.587301726249025491e-02 1.065124076400509982e-02 +2.061406087984445079e-02 2.835364400364003001e-02 1.562480116664228744e-02 5.011996078030867691e-02 4.251102825981747380e+00 3.970654928364479197e+00 9.306952311524111110e+01 5.642594460217253971e-01 3.079576466430913873e-02 2.440302421790442988e+00 1.745467341082206775e-02 1.074516380042483260e-02 +1.806018641148659370e-02 3.352081100891463050e-02 1.571728362962066666e-02 4.954900743049684558e-02 2.911680865781321792e+00 2.416959252148888737e+00 3.486522676104870300e+01 1.481434748429726334e+00 2.785645095397139628e-02 3.794776434088804606e-01 1.974672806613227832e-02 1.089645105926849607e-02 +1.592951302492525215e-02 4.149828866684817513e-02 1.584440806193410101e-02 4.912917023468318933e-02 2.155620649429574431e+00 1.640611998612234501e+00 1.343130290233053614e+01 1.690324894497257924e-01 2.570475166304702144e-02 1.476738243815243767e-01 2.318750656738414323e-02 1.111589155362810097e-02 +1.415658576689851622e-02 5.478620335670695424e-02 1.601557641024678458e-02 4.891615352189371269e-02 1.738253243282478877e+00 1.199603723912009867e+00 1.195168110087702829e+01 9.554341694613491254e-02 2.406080041519772714e-02 7.970881595539605624e-02 2.863352743166395348e-02 1.141968085691944142e-02 +1.268281092964942784e-02 7.951840742579847909e-02 1.624292594679401652e-02 4.898481654401114216e-02 1.560089529137486108e+00 9.266628602938516979e-01 2.849536056293066011e+01 7.576274426581101895e-02 2.276533387862801280e-02 5.125286830584257353e-02 3.794758735615096773e-02 1.183178246734759888e-02 +1.145754265489322063e-02 1.343882269569441346e-01 1.654247702422197153e-02 4.944218979180408508e-02 1.620455553819706296e+00 7.482513087180300282e-01 7.951397398753408652e+01 6.717014704032120420e-02 2.172046067807908987e-02 3.681965069097348220e-02 5.584259526489512154e-02 1.238782088413354840e-02 +1.043792829266827239e-02 3.019924436985362282e-01 1.693591644670923782e-02 5.045106629599393350e-02 2.070908286800372977e+00 6.284358168557880875e-01 1.643111716927024091e+01 6.236588165253376809e-02 2.086239633749184530e-02 2.855663726522347790e-02 9.735001363942652475e-02 1.314179467975088410e-02 +9.588259849292915526e-03 1.436550713519042510e+00 1.745342863777090553e-02 5.227542849375780426e-02 3.598583090740967716e+00 5.486562599245840000e-01 1.201460064488215274e+01 5.922636057325142422e-02 2.014772608926795883e-02 2.341323619379629198e-02 2.345699199510727362e-01 1.417811381400396059e-02 +8.879082007810134430e-03 1.295861077295897523e+01 1.813833487472890985e-02 5.537450532667680808e-02 1.068755850244540895e+01 4.998190798147238434e-01 4.234917762872183999e+01 5.695558994954536686e-02 1.954588625688431086e-02 2.000952570515256157e-02 1.426217274427994619e+00 1.563435305054221292e-02 +8.286247817397009510e-03 5.537729298328312177e-01 1.905506642171805876e-02 6.061656686318373649e-02 8.578185611184696313e+01 4.797406259043427434e-01 3.098755173449173483e+01 5.519973495677157893e-02 1.903477021190225910e-02 1.764978526570840089e-02 4.641758648987901914e+00 1.774725564072882761e-02 +7.790069637018074734e-03 1.666141311949691228e-01 2.030339915925409924e-02 6.982577656070647343e-02 1.616819428855893293e+01 4.947037152424110240e-01 4.824005947847267350e+01 5.378151568729108017e-02 1.859806713503071168e-02 1.595360000085387780e-02 3.279422692433615616e-01 2.095339059990692851e-02 +7.374528290005459737e-03 8.003259806609680505e-02 2.204557105629164487e-02 8.742871379011281363e-02 4.323389595891183212e+00 5.693525904836914675e-01 2.877455133972440748e+01 5.260373282908606396e-02 1.822352509614822563e-02 1.469931210910802033e-02 1.115668212560653044e-01 2.613440122195836643e-02 +7.026621572069899520e-03 4.799021347667392634e-02 2.456153080765135013e-02 1.267335665195002126e-01 2.037131808108989084e+00 7.903119372814889632e-01 1.321231986353720878e+01 5.160920620033959683e-02 1.790181682321390771e-02 1.375107375098352964e-02 5.782889202920718508e-02 3.530392047522053212e-02 +6.735812129479747980e-03 3.290355762869762862e-02 2.837194693020432187e-02 2.453037972995764648e-01 1.233084591053336121e+00 1.579677094417969663e+00 7.097794719910250905e+00 5.076232070965728399e-02 1.762576179260903070e-02 1.302213535780946847e-02 3.685914004294141982e-02 5.395299919779338038e-02 +6.493580587299579293e-03 2.472021026621122608e-02 3.454492113625492328e-02 1.009147331996809838e+00 8.576135292984692349e-01 8.158241401343968136e+00 4.433032581295396568e+00 5.003983432153301381e-02 1.738978998302342580e-02 1.245521443765511445e-02 2.663451304981593812e-02 1.019289792208775691e-01 +6.293052176273751172e-03 1.985540786649392375e-02 4.558749455758795421e-02 1.368116007592333361e+01 6.517195995922092644e-01 2.404535276399311527e+01 3.090491838393353508e+00 4.942596834686525248e-02 1.718955027467502714e-02 1.201143079532201140e-02 2.094574909278698605e-02 3.026195694167451711e-01 +6.128716261997207114e-03 1.678054913108615806e-02 6.866946059873429986e-02 4.542251009126822558e-01 5.271000775378439362e-01 2.349169923123906933e+00 2.337242180825689797e+00 4.890969901788998903e-02 1.702164350223139833e-02 1.166384511946766747e-02 1.750214589161174297e-02 5.981660173147009374e+00 +5.996184681370831174e-03 1.475913412621964946e-02 1.321629819819198637e-01 1.490925128663543597e-01 4.469649576818554015e-01 9.749327719819639304e-01 1.882706304122520047e+00 4.848314184096698398e-02 1.688341724659296952e-02 1.139349769963635996e-02 1.530277537956170608e-02 8.805597474582853579e-01 +5.892010641940246228e-03 1.340425422500431986e-02 4.561624017162917433e-01 8.386722817023689602e-02 3.937883352546544535e-01 6.262447340509444960e-01 1.596243336200060980e+00 4.814059111628746918e-02 1.677281824961394247e-02 1.118694827961482473e-02 1.385702469365483920e-02 1.649945738533898087e-01 +5.813545664133248220e-03 1.250016032902539695e-02 4.426237043579027386e+01 6.064985292951644014e-02 3.584258587029831578e-01 4.919369204914859628e-01 1.413274045451454297e+00 4.787792459884981228e-02 1.668828775203184608e-02 1.103470024648415398e-02 1.290474802598127677e-02 7.321611617585778442e-02 +5.758833743211059196e-03 1.192255740980609907e-02 4.998369311656132852e-01 5.050225722022978064e-02 3.358394575695221596e-01 4.307719537786904862e-01 1.299831650493768587e+00 4.769222586242170825e-02 1.662868387889847657e-02 1.093018105741680283e-02 1.230145703635139240e-02 4.601977830793491792e-02 +5.726529559976197524e-03 1.160035640195591737e-02 1.535405861809563677e-01 4.596951523059313038e-02 3.232297977832464531e-01 4.029109106293814468e-01 1.237726177480299228e+00 4.758154807489527183e-02 1.659322342865306513e-02 1.086908780774182084e-02 1.196661073363190775e-02 3.592589834833601753e-02 +5.715847737308005910e-03 1.149675565195607506e-02 1.113658583210504066e-01 4.465537768624513321e-02 3.191724756046934175e-01 3.947745577124979199e-01 1.217936226331034710e+00 4.754477699681280284e-02 1.658145364964261001e-02 1.084898622233789432e-02 1.185919569795285296e-02 3.322013863615905227e-02 +5.726529559976197524e-03 1.160035640195591737e-02 1.535405861809563677e-01 4.596951523059313038e-02 3.232297977832464531e-01 4.029109106293814468e-01 1.237726177480299228e+00 4.758154807489527183e-02 1.659322342865306513e-02 1.086908780774182084e-02 1.196661073363190775e-02 3.592589834833601753e-02 +5.758833743211059196e-03 1.192255740980609907e-02 4.998369311656132852e-01 5.050225722022978064e-02 3.358394575695221596e-01 4.307719537786904862e-01 1.299831650493768587e+00 4.769222586242170825e-02 1.662868387889847657e-02 1.093018105741680283e-02 1.230145703635139240e-02 4.601977830793491792e-02 +5.813545664133248220e-03 1.250016032902539695e-02 4.426237043579027386e+01 6.064985292951644014e-02 3.584258587029831578e-01 4.919369204914859628e-01 1.413274045451454297e+00 4.787792459884981228e-02 1.668828775203184608e-02 1.103470024648415398e-02 1.290474802598127677e-02 7.321611617585778442e-02 +5.892010641940246228e-03 1.340425422500431986e-02 4.561624017162917433e-01 8.386722817023689602e-02 3.937883352546544535e-01 6.262447340509444960e-01 1.596243336200060980e+00 4.814059111628746918e-02 1.677281824961394247e-02 1.118694827961482473e-02 1.385702469365483920e-02 1.649945738533898087e-01 +5.996184681370831174e-03 1.475913412621964946e-02 1.321629819819198637e-01 1.490925128663543597e-01 4.469649576818554015e-01 9.749327719819639304e-01 1.882706304122520047e+00 4.848314184096698398e-02 1.688341724659296952e-02 1.139349769963635996e-02 1.530277537956170608e-02 8.805597474582853579e-01 +6.128716261997207114e-03 1.678054913108615806e-02 6.866946059873429986e-02 4.542251009126822558e-01 5.271000775378439362e-01 2.349169923123906933e+00 2.337242180825689797e+00 4.890969901788998903e-02 1.702164350223139833e-02 1.166384511946766747e-02 1.750214589161174297e-02 5.981660173147009374e+00 +6.293052176273751172e-03 1.985540786649392375e-02 4.558749455758795421e-02 1.368116007592333361e+01 6.517195995922092644e-01 2.404535276399311527e+01 3.090491838393353508e+00 4.942596834686525248e-02 1.718955027467502714e-02 1.201143079532201140e-02 2.094574909278698605e-02 3.026195694167451711e-01 +6.493580587299579293e-03 2.472021026621122608e-02 3.454492113625492328e-02 1.009147331996809838e+00 8.576135292984692349e-01 8.158241401343968136e+00 4.433032581295396568e+00 5.003983432153301381e-02 1.738978998302342580e-02 1.245521443765511445e-02 2.663451304981593812e-02 1.019289792208775691e-01 +6.735812129479747980e-03 3.290355762869762862e-02 2.837194693020432187e-02 2.453037972995764648e-01 1.233084591053336121e+00 1.579677094417969663e+00 7.097794719910250905e+00 5.076232070965728399e-02 1.762576179260903070e-02 1.302213535780946847e-02 3.685914004294141982e-02 5.395299919779338038e-02 +7.026621572069899520e-03 4.799021347667392634e-02 2.456153080765135013e-02 1.267335665195002126e-01 2.037131808108989084e+00 7.903119372814889632e-01 1.321231986353720878e+01 5.160920620033959683e-02 1.790181682321390771e-02 1.375107375098352964e-02 5.782889202920718508e-02 3.530392047522053212e-02 +7.374528290005459737e-03 8.003259806609680505e-02 2.204557105629164487e-02 8.742871379011281363e-02 4.323389595891183212e+00 5.693525904836914675e-01 2.877455133972440748e+01 5.260373282908606396e-02 1.822352509614822563e-02 1.469931210910802033e-02 1.115668212560653044e-01 2.613440122195836643e-02 +7.790069637018074734e-03 1.666141311949691228e-01 2.030339915925409924e-02 6.982577656070647343e-02 1.616819428855893293e+01 4.947037152424110240e-01 4.824005947847267350e+01 5.378151568729108017e-02 1.859806713503071168e-02 1.595360000085387780e-02 3.279422692433615616e-01 2.095339059990692851e-02 +8.286247817397009510e-03 5.537729298328312177e-01 1.905506642171805876e-02 6.061656686318373649e-02 8.578185611184696313e+01 4.797406259043427434e-01 3.098755173449173483e+01 5.519973495677157893e-02 1.903477021190225910e-02 1.764978526570840089e-02 4.641758648987901914e+00 1.774725564072882761e-02 +8.879082007810134430e-03 1.295861077295897523e+01 1.813833487472890985e-02 5.537450532667680808e-02 1.068755850244540895e+01 4.998190798147238434e-01 4.234917762872183999e+01 5.695558994954536686e-02 1.954588625688431086e-02 2.000952570515256157e-02 1.426217274427994619e+00 1.563435305054221292e-02 +9.588259849292915526e-03 1.436550713519042510e+00 1.745342863777090553e-02 5.227542849375780426e-02 3.598583090740967716e+00 5.486562599245840000e-01 1.201460064488215274e+01 5.922636057325142422e-02 2.014772608926795883e-02 2.341323619379629198e-02 2.345699199510727362e-01 1.417811381400396059e-02 +1.043792829266827239e-02 3.019924436985362282e-01 1.693591644670923782e-02 5.045106629599393350e-02 2.070908286800372977e+00 6.284358168557880875e-01 1.643111716927024091e+01 6.236588165253376809e-02 2.086239633749184530e-02 2.855663726522347790e-02 9.735001363942652475e-02 1.314179467975088410e-02 +1.145754265489322063e-02 1.343882269569441346e-01 1.654247702422197153e-02 4.944218979180408508e-02 1.620455553819706296e+00 7.482513087180300282e-01 7.951397398753408652e+01 6.717014704032120420e-02 2.172046067807908987e-02 3.681965069097348220e-02 5.584259526489512154e-02 1.238782088413354840e-02 +1.268281092964942784e-02 7.951840742579847909e-02 1.624292594679401652e-02 4.898481654401114216e-02 1.560089529137486108e+00 9.266628602938516979e-01 2.849536056293066011e+01 7.576274426581101895e-02 2.276533387862801280e-02 5.125286830584257353e-02 3.794758735615096773e-02 1.183178246734759888e-02 +1.415658576689851622e-02 5.478620335670695424e-02 1.601557641024678458e-02 4.891615352189371269e-02 1.738253243282478877e+00 1.199603723912009867e+00 1.195168110087702829e+01 9.554341694613491254e-02 2.406080041519772714e-02 7.970881595539605624e-02 2.863352743166395348e-02 1.141968085691944142e-02 +1.592951302492525215e-02 4.149828866684817513e-02 1.584440806193410101e-02 4.912917023468318933e-02 2.155620649429574431e+00 1.640611998612234501e+00 1.343130290233053614e+01 1.690324894497257924e-01 2.570475166304702144e-02 1.476738243815243767e-01 2.318750656738414323e-02 1.111589155362810097e-02 +1.806018641148659370e-02 3.352081100891463050e-02 1.571728362962066666e-02 4.954900743049684558e-02 2.911680865781321792e+00 2.416959252148888737e+00 3.486522676104870300e+01 1.481434748429726334e+00 2.785645095397139628e-02 3.794776434088804606e-01 1.974672806613227832e-02 1.089645105926849607e-02 +2.061406087984445079e-02 2.835364400364003001e-02 1.562480116664228744e-02 5.011996078030867691e-02 4.251102825981747380e+00 3.970654928364479197e+00 9.306952311524111110e+01 5.642594460217253971e-01 3.079576466430913873e-02 2.440302421790442988e+00 1.745467341082206775e-02 1.074516380042483260e-02 +2.366053914247919984e-02 2.481947165621220530e-02 1.555952437409578032e-02 5.079798401616281850e-02 6.736653541967331016e+00 7.729804864069163450e+00 2.712469638671677430e+01 1.380387458953874213e-01 3.506892061171597297e-02 8.416087583650110560e+00 1.587301726249025491e-02 1.065124076400509982e-02 +2.726684717600186963e-02 2.230354424425629034e-02 1.551546693434585449e-02 5.154622550546188176e-02 1.177177229370484923e+01 1.933549844362801196e+01 1.180406054243348457e+01 9.359980113894983411e-02 4.190673474867023102e-02 6.550184539739970502e-01 1.475900594458282727e-02 1.060782011651516948e-02 +3.148732047067460266e-02 2.045893052385274261e-02 1.548773677758349780e-02 5.233235348827940808e-02 2.332034155041694490e+01 4.671303795988801966e+01 1.013687725489382174e+01 8.176988259723860786e-02 5.471008757198984190e-02 2.380684789710736382e-01 1.396980689438397441e-02 1.061095468672572720e-02 +3.634658636446380653e-02 1.907771164822700399e-02 1.547229265431384997e-02 5.312699320217331711e-02 5.345281151933420460e+01 3.077430247198957858e+01 9.690668745265969619e+01 7.780850554982561562e-02 8.636327155277798151e-02 1.314052050724173470e-01 1.341714235939659404e-02 1.065877231715216776e-02 +4.181619206192983135e-02 1.802922231434569630e-02 1.546577185453236990e-02 5.390293250883095716e-02 1.195378845402552486e+02 1.475719199802503567e+01 8.317813427448324859e+00 7.665714633647001397e-02 2.260728415645822109e-01 8.909234679910599253e-02 1.304379041057342030e-02 1.075051979368087628e-02 +4.778568673936188504e-02 1.722830052426916128e-02 1.546537143391458688e-02 5.463478674024814519e-02 1.278196118969921855e+02 9.449833677340176763e+00 4.262254466688297327e+00 7.672747571986614223e-02 7.804558277903153041e+00 6.859187542910699653e-02 1.281027521969719217e-02 1.088515343555331027e-02 +5.403433985418391178e-02 1.661787428618587484e-02 1.546876589533374702e-02 5.529909512895139073e-02 7.381250770068730560e+01 7.525036463212471105e+00 3.230525807904475855e+00 7.736492652772011813e-02 4.965752435786125463e-01 5.774316791363082180e-02 1.268643294287340705e-02 1.105909709269995399e-02 +6.021398832518666533e-02 1.615901577777543660e-02 1.547405132989062432e-02 5.587464420203573645e-02 4.453276959866763463e+01 6.827721891016540035e+00 2.757763943018567421e+00 7.823139323339997619e-02 1.586331308939795681e-01 5.200966856535077509e-02 1.264555005659689924e-02 1.126298056987124277e-02 +6.585850786191292661e-02 1.582503234914786963e-02 1.547970543365065170e-02 5.634296169205885163e-02 3.125823930605194789e+01 6.647286833546400153e+00 2.494775736711611902e+00 7.911372388660956045e-02 1.109165287649626769e-01 4.932757894478817517e-02 1.266043382619731934e-02 1.147798880194475339e-02 +7.043368091328364167e-02 1.559786949915885693e-02 1.548456398807755881e-02 5.668887983065619418e-02 2.488139867451569032e+01 6.677675289299922490e+00 2.341930071398981905e+00 7.985841803730793498e-02 9.884905672282615074e-02 4.848349698641947481e-02 1.270204346707526008e-02 1.167409200655440162e-02 +7.342932104517838066e-02 1.546589768421255222e-02 1.548780616030434598e-02 5.690109746617758729e-02 2.189994613305625393e+01 6.755470959046390611e+00 2.260759579071287551e+00 8.035298159945425400e-02 9.575073604396656946e-02 4.851256540650939614e-02 1.274184327731953288e-02 1.181401931483194896e-02 +7.447344279558115732e-02 1.542260580634860663e-02 1.548894097938264061e-02 5.697262458349210829e-02 2.101822845854569977e+01 6.791223639904193199e+00 2.235208451336005542e+00 8.052607384829757464e-02 9.521342566990737000e-02 4.863074475973574312e-02 1.275789655735867084e-02 1.186507382558274135e-02 +7.333380808607072032e-02 1.546992364598927250e-02 1.548769914627727562e-02 5.689441320540970792e-02 2.198403681474686167e+01 6.751602578364481744e+00 2.263135231673372605e+00 8.033607103122018811e-02 9.571290482142910672e-02 4.847859727275138919e-02 1.273983647031734848e-02 1.180870036489296664e-02 +7.007753587923100380e-02 1.561436847498107357e-02 1.548412887609935430e-02 5.666166298843029747e-02 2.528429119872404485e+01 6.657932965272594927e+00 2.351960931268429533e+00 7.978254391613547047e-02 9.759874481377839306e-02 4.813805864697649067e-02 1.268900892338221432e-02 1.164779771932012917e-02 +6.514313673061063181e-02 1.586370351420002614e-02 1.547869703224170543e-02 5.627992102228682181e-02 3.250375969143696864e+01 6.584080938820482842e+00 2.519563772115388289e+00 7.891166729175758121e-02 1.020231515647010007e-01 4.794548631727106602e-02 1.261494345686511517e-02 1.140447663322696585e-02 +5.912161618433588867e-02 1.623187527852591738e-02 1.547219034420005759e-02 5.575810710253251840e-02 4.808010349544702677e+01 6.654620822335798103e+00 2.808247810289837609e+00 7.779094231362426726e-02 1.110096368484070062e-01 4.845404166946245400e-02 1.253203522137473318e-02 1.110847113043222228e-02 +5.261556375896914162e-02 1.674075814067928561e-02 1.546572363942126833e-02 5.510805627497458031e-02 8.353820119623132712e+01 7.073717151808184944e+00 3.323723736092420555e+00 7.649873029705368810e-02 1.280638919934048992e-01 5.052670228155667353e-02 1.245802443784949261e-02 1.079016672674361355e-02 +4.613212304472921049e-02 1.742311603261898628e-02 1.546076159890224892e-02 5.434395436608075586e-02 1.382414492783150877e+02 8.238059753799932494e+00 4.404506669403715158e+00 7.511486253026335158e-02 1.601338791459424316e-01 5.571667091845670244e-02 1.241295448076650335e-02 1.047554078323831989e-02 +4.003180959909309611e-02 1.832754919834307661e-02 1.545914462871297336e-02 5.348170295468704372e-02 9.899221444354728305e+01 1.112490601543602509e+01 7.999570174632330222e+00 7.371401951643137551e-02 2.236548537429961792e-01 6.753329502526628225e-02 1.241913601080281600e-02 1.018396813071883317e-02 +3.452660938985323974e-02 1.952682952821723633e-02 1.546313942706422674e-02 5.253828316772660156e-02 4.075225096091978827e+01 1.869399021657729065e+01 6.021287114578317556e+01 7.236241471483577381e-02 3.669553617516875810e-01 9.633650260467965798e-02 1.250251875354510198e-02 9.928430393853817856e-03 +2.970701865260643934e-02 2.113240860350209735e-02 1.547549895920189052e-02 5.153115299134117255e-02 1.827648116384161270e+01 3.825307183218984619e+01 5.262803618502547920e+01 7.111703603483827962e-02 7.890107172709911465e-01 1.870245167458048363e-01 1.269593955160803339e-02 9.717054170820004985e-03 +2.557866091567641276e-02 2.332076372663363650e-02 1.549956888344488498e-02 5.047771631666984893e-02 9.562968083575992040e+00 4.268741795186862475e+01 1.216536988527608898e+01 7.002668657669695873e-02 3.143791526951686954e+00 7.879678596972818916e-01 1.304522922004729482e-02 9.555099612640392467e-03 +2.209608990891792635e-02 2.638391324591439491e-02 1.553942572863764755e-02 4.939491252341544902e-02 5.647501523749836494e+00 1.800847688081185893e+01 2.398483515570552171e+01 6.913405435340877481e-02 8.776447911988898909e+01 1.078084592258346497e+01 1.362045548708293655e-02 9.446904315346367834e-03 +1.918833063683746468e-02 3.083365821369754220e-02 1.560009562611762088e-02 4.829883722683662312e-02 3.663380848519041777e+00 8.003435615368440281e+00 4.650937806559472421e+01 6.847819948485506236e-02 2.619033486675665490e+00 3.434480431764090902e-01 1.453779560285241301e-02 9.397659047240084287e-03 +1.677627209793823224e-02 3.763528926172907130e-02 1.568786182804575088e-02 4.720459469246870293e-02 2.571866995444715531e+00 4.370809951441850139e+00 1.628074599753744778e+01 6.809742358490106229e-02 7.253207898687787925e-01 1.086114231022629467e-01 1.600550827186461578e-02 9.415173480341166787e-03 +1.478258783782323768e-02 4.879739441135585998e-02 1.581073451074513012e-02 4.612609850779854359e-02 1.946084773666820311e+00 2.764112873568658646e+00 1.462395247845033985e+01 6.803205683001310733e-02 3.452420275022244356e-01 5.733207117667666469e-02 1.843156918461381910e-02 9.511953556088061090e-03 +1.313711311006105810e-02 6.910458433672277134e-02 1.597914812984444627e-02 4.507610450965747473e-02 1.598794973957654575e+00 1.931459660497768516e+00 2.804484973662101410e+01 6.832752138278087861e-02 2.080391258370777596e-01 3.826685194613742291e-02 2.271019989908696149e-02 9.708177298475456282e-03 +1.177882698764337599e-02 1.124867714557148402e-01 1.620703802842947058e-02 4.406622254400448940e-02 1.461811727402910988e+00 1.449790641825586146e+00 8.540389080007648204e+01 6.903744185457241778e-02 1.432131622190123965e-01 2.910611489896509224e-02 3.113478216212779009e-02 1.003659864364649622e-02 +1.065609461451872721e-02 2.355740878380714054e-01 1.651354795756291780e-02 4.310698937658208330e-02 1.579384511012084769e+00 1.150035884952694376e+00 4.835912375538443797e+01 7.022729671821599517e-02 1.073757286037262670e-01 2.397147251406133925e-02 5.119075901089956832e-02 1.055149957484977086e-02 +9.726068632627928381e-03 9.064502625365682409e-01 1.692577245772545688e-02 4.220808507292699713e-02 2.331197681663052190e+00 9.555494153366576038e-01 1.581204572657133944e+01 7.197852835222676160e-02 8.540399075823365549e-02 2.078254799758873575e-02 1.204832770308466305e-01 1.134632391733982927e-02 +8.953574354457200304e-03 4.208725976848182881e+01 1.748338962540529548e-02 4.137850527919404581e-02 7.042242092087467320e+00 8.287510818112124866e-01 9.117422237731162227e+00 7.439362326714688001e-02 7.090700042708864004e-02 1.865483102052254913e-02 8.278556331198492213e-01 1.259176374820997202e-02 +8.309932608740371388e-03 6.944750549457294753e-01 1.824679241518817677e-02 4.062679700580917874e-02 4.124264156399944170e+01 7.514212170770874222e-01 8.876555418390744023e+00 7.760263290532694314e-02 6.080431180188772960e-02 1.716216526754943753e-02 1.415688446539165923e+00 1.462765681015668409e-02 +7.771892540133969532e-03 1.805793617697228626e-01 1.931201356859895898e-02 3.996142200477015294e-02 4.442021436175416227e+00 7.178468596593631235e-01 1.507390647902571779e+01 8.177134081035475344e-02 5.346218053860545688e-02 1.608058684370393746e-02 1.365519447462935076e-01 1.822119665907566757e-02 +7.320624383786580175e-03 8.209728672116328729e-02 2.083998983458175067e-02 3.939112426287143254e-02 1.739147251400401162e+00 7.358510289315909336e-01 5.235004020220430476e+01 8.711222274499286211e-02 4.794828749762804210e-02 1.528576191322471821e-02 5.245405430858343654e-02 2.548151158273719019e-02 +6.940872172959668129e-03 4.779566961931590308e-02 2.311833787458933420e-02 3.892543508439232774e-02 1.138742553558375503e+00 8.413826765330921775e-01 6.295172465183761545e+01 9.389920521908784456e-02 4.369919971049671809e-02 1.470797377742010317e-02 3.088186215300193008e-02 4.466805414453990652e-02 +6.940872172959668129e-03 4.779566961931590308e-02 2.311833787458933420e-02 3.892543508439232774e-02 1.138742553558375503e+00 8.413826765330921775e-01 6.295172465183761545e+01 9.389920521908784456e-02 4.369919971049671809e-02 1.470797377742010317e-02 3.088186215300193008e-02 4.466805414453990652e-02 +6.632601216292811908e-03 3.261292281888791833e-02 2.651667767024802960e-02 3.858751712630237307e-02 9.348519029193391727e-01 1.146005866050773481e+00 1.672975627551145195e+01 1.020876245760661966e-01 4.048329531142958598e-02 1.432488355213336687e-02 2.317955754193366108e-02 1.402646317785957997e-01 +6.369797109391769907e-03 2.433611163951553483e-02 3.214313888390041979e-02 3.836767621132498862e-02 8.481638379145056694e-01 2.237675947844841140e+00 9.135622854181656649e+00 1.123335356007958141e-01 3.789489705955778609e-02 1.410017291093503509e-02 2.048610620683746428e-02 4.060066500358298747e+00 +6.145183486404797758e-03 1.937069782668650667e-02 4.245516752567499164e-02 3.828111479918516052e-02 8.087498661568546243e-01 1.160157883141901003e+01 9.713064076382027068e+00 1.251614540232200701e-01 3.579338617135190831e-02 1.404909429262869540e-02 2.156666035356670508e-02 3.877699957297339184e-01 +5.952776969642414873e-03 1.618133114236577560e-02 6.459350798365497137e-02 3.834828080090189883e-02 7.875416851543044494e-01 2.747675871803878422e+01 2.109003310674360776e+01 1.412553817529692834e-01 3.408225539803518694e-02 1.422074949596564136e-02 2.976329921100897419e-02 7.849383043506534818e+00 +5.787638273766081316e-03 1.402541890911188603e-02 1.273543889939167673e-01 3.859794452606115506e-02 7.692222948935418803e-01 4.911689890091947674e+00 4.846647587622341291e+01 1.615132958347935965e-01 3.269631085353265354e-02 1.472673415955066609e-02 7.315206063679606519e-02 1.811438490027450776e-01 +5.645670407908582981e-03 1.250939881470318482e-02 4.622540164502987881e-01 3.907247470954606366e-02 7.451611316890327519e-01 1.133887350669680316e+01 1.862959276181916124e+01 1.871224522202505902e-01 3.159476784575744601e-02 1.581783859577307050e-02 2.226828606228182572e+00 5.811730659194973281e-02 +5.523471266791685381e-03 1.140957861516600502e-02 4.695567712555317286e+01 3.983723105037464268e-02 7.115724273358107199e-01 1.701525029609757667e+01 5.212115777791763804e+01 2.196607256993858281e-01 3.075897535856271167e-02 1.811461656800344294e-02 1.554717542576297962e-01 3.080150461448647944e-02 +5.418200862773854716e-03 1.059147578184196394e-02 4.384983136142727722e-01 4.099832736421548524e-02 6.687097815584703842e-01 3.045878219697232492e+00 6.521965175996718322e+00 2.612378448969016054e-01 3.019484973887374968e-02 2.346533203334897830e-02 3.827285825540414216e-02 2.040296512763982786e-02 +5.327477545763578161e-03 9.970460446980973501e-03 1.187033044867078918e-01 4.273849304224000556e-02 6.197085289534772778e-01 1.650827193083259425e+00 2.702496901530670570e+00 3.146900357936777137e-01 2.994283934897799121e-02 3.950507068213683637e-02 2.079908166477137735e-02 1.532396298094366310e-02 +5.249301564628590898e-03 9.491247517827925903e-03 5.925925268684709840e-02 4.539522269034314966e-02 5.690224816096320914e-01 1.290702354402945895e+00 1.647043424041436888e+00 3.838399408648600630e-01 3.010320457245883527e-02 1.301216364964949135e-01 1.495110317904719058e-02 1.245530733994235258e-02 +5.181985390480450988e-03 9.116529670186680409e-03 3.859304775233886320e-02 4.964984051552180644e-02 5.210102620506658067e-01 1.213556883069314196e+00 1.158795982650118406e+00 4.738469342013947316e-01 3.089882799221697202e-02 3.928933569546190085e+01 1.223628314190783502e-02 1.067320862700203016e-02 +5.124099210079421755e-03 8.820422445267301834e-03 2.912474415951303575e-02 5.705084948532517658e-02 4.791736279576085389e-01 1.303332890744338224e+00 8.816725757420036391e-01 5.916616224307755800e-01 3.284679080326000089e-02 1.273092314264489822e-01 1.072678443526977644e-02 9.489609968018057617e-03 +5.074431648158613493e-03 8.584550005849688609e-03 2.405003433368294030e-02 7.176321260182272344e-02 4.461785221807073043e-01 1.602454265694361224e+00 7.061654554196180600e-01 7.465674253623754142e-01 3.731013625430242703e-02 4.141825452237057892e-02 9.787011945067179003e-03 8.664265460202697985e-03 +5.031953253297161491e-03 8.395591457520000175e-03 2.104274084463138988e-02 1.083844651664960940e-01 4.245687916211897672e-01 2.370793753663474668e+00 5.871711315781901197e-01 9.507630659785674121e-01 4.879529235010979238e-02 2.481597253272260772e-02 9.156004910414777126e-03 8.067543485465395250e-03 +4.995787451255728762e-03 8.243710917614163053e-03 1.913411392038560574e-02 2.508701377976240154e-01 4.183594026584875336e-01 4.842684834680293982e+00 5.027296717245812729e-01 1.219804091494771203e+00 8.993150728820770157e-02 1.883863172794302335e-02 8.709693502683968358e-03 7.624427210828598096e-03 +4.965191141334239326e-03 8.121550289787225416e-03 1.786302835432438535e-02 2.725841423547292308e+00 4.369516169494221947e-01 1.960405014456548400e+01 4.409208407121718576e-01 1.572451236835046950e+00 4.975575265090856902e-01 1.600525132060180364e-02 8.382563969696870537e-03 7.289084057269135108e-03 +4.939535292729608888e-03 8.023534848815726608e-03 1.698758364216448186e-02 1.107486343402914075e+00 5.085146163024086841e-01 2.821004058713581841e+01 3.947565299648604364e-01 2.029129305044427678e+00 1.195851412290232840e+00 1.443669851069473084e-02 8.137177865674713115e-03 7.032258036155135741e-03 +4.918290244806743094e-03 7.945408141172324856e-03 1.637125399291743111e-02 2.017880014038173353e-01 7.498424661831938343e-01 5.404877792800125036e+00 3.599038664741932014e-01 2.607670890158330312e+00 1.244257796262320803e-01 1.348085039686492889e-02 7.950817641441905448e-03 6.834617239892775212e-03 +4.901016181674159450e-03 7.883914470879563319e-03 1.593261701969950900e-02 1.037580782593122974e-01 2.150866227882858084e+00 2.309966319187879868e+00 3.335672734198761313e-01 3.314863797835672976e+00 6.013933134157488369e-02 1.286282616285951662e-02 7.809074622639090510e-03 6.683069501851347620e-03 +4.887353195167187629e-03 7.836571347705028473e-03 1.562108566314190927e-02 7.519144223842748331e-02 3.680089736471283857e+01 1.472302688789852709e+00 3.138929562187654509e-01 4.134245977973470154e+00 4.328041736723563238e-02 1.245075218792186973e-02 7.702516287165774196e-03 6.568598596255450540e-03 +4.877014640570447208e-03 7.801513082044873003e-03 1.540443400136693938e-02 6.353283433840560546e-02 1.306768099812269046e+00 1.155052902458149289e+00 2.996361712191561444e-01 5.018177314072602258e+00 3.658093062005527557e-02 1.217557267317584228e-02 7.624867026720079724e-03 6.484966546109432843e-03 +4.869782726699180449e-03 7.777384358885912341e-03 1.526206771405480035e-02 5.806374195547602673e-02 5.033272230580283502e-01 1.016620145026822186e+00 2.899686357314018026e-01 5.927180625540747982e+00 3.343611763833528872e-02 1.199921002862604051e-02 7.571976225823425291e-03 6.427927481690837337e-03 +4.865504282377271401e-03 7.763263799214829147e-03 1.518125624790803672e-02 5.553115622263560258e-02 3.554674059454960289e-01 9.564716175347889315e-01 2.843629528786761340e-01 7.575976904066275885e+00 3.196670509266228560e-02 1.190050958028344638e-02 7.541212632985992877e-03 6.394731965688731957e-03 +4.864088110486043844e-03 7.758615156917953413e-03 1.515505486296100240e-02 5.478575295701059583e-02 3.245632778189931344e-01 9.394488609690780923e-01 2.825257454697286397e-01 1.278453011433810893e+01 3.153117623014272536e-02 1.186870995054655625e-02 7.531113919167512806e-03 6.383832998623849286e-03 +4.865504282377271401e-03 7.763263799214829147e-03 1.518125624790803672e-02 5.553115622263560258e-02 3.554674059454960289e-01 9.564716175347889315e-01 2.843629528786761340e-01 7.575976904066275885e+00 3.196670509266228560e-02 1.190050958028344638e-02 7.541212632985992877e-03 6.394731965688731957e-03 +4.869782726699180449e-03 7.777384358885912341e-03 1.526206771405480035e-02 5.806374195547602673e-02 5.033272230580283502e-01 1.016620145026822186e+00 2.899686357314018026e-01 5.927180625540747982e+00 3.343611763833528872e-02 1.199921002862604051e-02 7.571976225823425291e-03 6.427927481690837337e-03 +4.877014640570447208e-03 7.801513082044873003e-03 1.540443400136693938e-02 6.353283433840560546e-02 1.306768099812269046e+00 1.155052902458149289e+00 2.996361712191561444e-01 5.018177314072602258e+00 3.658093062005527557e-02 1.217557267317584228e-02 7.624867026720079724e-03 6.484966546109432843e-03 +4.887353195167187629e-03 7.836571347705028473e-03 1.562108566314190927e-02 7.519144223842748331e-02 3.680089736471283857e+01 1.472302688789852709e+00 3.138929562187654509e-01 4.134245977973470154e+00 4.328041736723563238e-02 1.245075218792186973e-02 7.702516287165774196e-03 6.568598596255450540e-03 +4.901016181674159450e-03 7.883914470879563319e-03 1.593261701969950900e-02 1.037580782593122974e-01 2.150866227882858084e+00 2.309966319187879868e+00 3.335672734198761313e-01 3.314863797835672976e+00 6.013933134157488369e-02 1.286282616285951662e-02 7.809074622639090510e-03 6.683069501851347620e-03 +4.918290244806743094e-03 7.945408141172324856e-03 1.637125399291743111e-02 2.017880014038173353e-01 7.498424661831938343e-01 5.404877792800125036e+00 3.599038664741932014e-01 2.607670890158330312e+00 1.244257796262320803e-01 1.348085039686492889e-02 7.950817641441905448e-03 6.834617239892775212e-03 +4.939535292729608888e-03 8.023534848815726608e-03 1.698758364216448186e-02 1.107486343402914075e+00 5.085146163024086841e-01 2.821004058713581841e+01 3.947565299648604364e-01 2.029129305044427678e+00 1.195851412290232840e+00 1.443669851069473084e-02 8.137177865674713115e-03 7.032258036155135741e-03 +4.965191141334239326e-03 8.121550289787225416e-03 1.786302835432438535e-02 2.725841423547292308e+00 4.369516169494221947e-01 1.960405014456548400e+01 4.409208407121718576e-01 1.572451236835046950e+00 4.975575265090856902e-01 1.600525132060180364e-02 8.382563969696870537e-03 7.289084057269135108e-03 +4.995787451255728762e-03 8.243710917614163053e-03 1.913411392038560574e-02 2.508701377976240154e-01 4.183594026584875336e-01 4.842684834680293982e+00 5.027296717245812729e-01 1.219804091494771203e+00 8.993150728820770157e-02 1.883863172794302335e-02 8.709693502683968358e-03 7.624427210828598096e-03 +5.031953253297161491e-03 8.395591457520000175e-03 2.104274084463138988e-02 1.083844651664960940e-01 4.245687916211897672e-01 2.370793753663474668e+00 5.871711315781901197e-01 9.507630659785674121e-01 4.879529235010979238e-02 2.481597253272260772e-02 9.156004910414777126e-03 8.067543485465395250e-03 +5.074431648158613493e-03 8.584550005849688609e-03 2.405003433368294030e-02 7.176321260182272344e-02 4.461785221807073043e-01 1.602454265694361224e+00 7.061654554196180600e-01 7.465674253623754142e-01 3.731013625430242703e-02 4.141825452237057892e-02 9.787011945067179003e-03 8.664265460202697985e-03 +5.124099210079421755e-03 8.820422445267301834e-03 2.912474415951303575e-02 5.705084948532517658e-02 4.791736279576085389e-01 1.303332890744338224e+00 8.816725757420036391e-01 5.916616224307755800e-01 3.284679080326000089e-02 1.273092314264489822e-01 1.072678443526977644e-02 9.489609968018057617e-03 +5.181985390480450988e-03 9.116529670186680409e-03 3.859304775233886320e-02 4.964984051552180644e-02 5.210102620506658067e-01 1.213556883069314196e+00 1.158795982650118406e+00 4.738469342013947316e-01 3.089882799221697202e-02 3.928933569546190085e+01 1.223628314190783502e-02 1.067320862700203016e-02 +5.249301564628590898e-03 9.491247517827925903e-03 5.925925268684709840e-02 4.539522269034314966e-02 5.690224816096320914e-01 1.290702354402945895e+00 1.647043424041436888e+00 3.838399408648600630e-01 3.010320457245883527e-02 1.301216364964949135e-01 1.495110317904719058e-02 1.245530733994235258e-02 +5.327477545763578161e-03 9.970460446980973501e-03 1.187033044867078918e-01 4.273849304224000556e-02 6.197085289534772778e-01 1.650827193083259425e+00 2.702496901530670570e+00 3.146900357936777137e-01 2.994283934897799121e-02 3.950507068213683637e-02 2.079908166477137735e-02 1.532396298094366310e-02 +5.418200862773854716e-03 1.059147578184196394e-02 4.384983136142727722e-01 4.099832736421548524e-02 6.687097815584703842e-01 3.045878219697232492e+00 6.521965175996718322e+00 2.612378448969016054e-01 3.019484973887374968e-02 2.346533203334897830e-02 3.827285825540414216e-02 2.040296512763982786e-02 +5.523471266791685381e-03 1.140957861516600502e-02 4.695567712555317286e+01 3.983723105037464268e-02 7.115724273358107199e-01 1.701525029609757667e+01 5.212115777791763804e+01 2.196607256993858281e-01 3.075897535856271167e-02 1.811461656800344294e-02 1.554717542576297962e-01 3.080150461448647944e-02 +5.645670407908582981e-03 1.250939881470318482e-02 4.622540164502987881e-01 3.907247470954606366e-02 7.451611316890327519e-01 1.133887350669680316e+01 1.862959276181916124e+01 1.871224522202505902e-01 3.159476784575744601e-02 1.581783859577307050e-02 2.226828606228182572e+00 5.811730659194973281e-02 +5.787638273766081316e-03 1.402541890911188603e-02 1.273543889939167673e-01 3.859794452606115506e-02 7.692222948935418803e-01 4.911689890091947674e+00 4.846647587622341291e+01 1.615132958347935965e-01 3.269631085353265354e-02 1.472673415955066609e-02 7.315206063679606519e-02 1.811438490027450776e-01 +5.952776969642414873e-03 1.618133114236577560e-02 6.459350798365497137e-02 3.834828080090189883e-02 7.875416851543044494e-01 2.747675871803878422e+01 2.109003310674360776e+01 1.412553817529692834e-01 3.408225539803518694e-02 1.422074949596564136e-02 2.976329921100897419e-02 7.849383043506534818e+00 +6.145183486404797758e-03 1.937069782668650667e-02 4.245516752567499164e-02 3.828111479918516052e-02 8.087498661568546243e-01 1.160157883141901003e+01 9.713064076382027068e+00 1.251614540232200701e-01 3.579338617135190831e-02 1.404909429262869540e-02 2.156666035356670508e-02 3.877699957297339184e-01 +6.369797109391769907e-03 2.433611163951553483e-02 3.214313888390041979e-02 3.836767621132498862e-02 8.481638379145056694e-01 2.237675947844841140e+00 9.135622854181656649e+00 1.123335356007958141e-01 3.789489705955778609e-02 1.410017291093503509e-02 2.048610620683746428e-02 4.060066500358298747e+00 +6.632601216292811908e-03 3.261292281888791833e-02 2.651667767024802960e-02 3.858751712630237307e-02 9.348519029193391727e-01 1.146005866050773481e+00 1.672975627551145195e+01 1.020876245760661966e-01 4.048329531142958598e-02 1.432488355213336687e-02 2.317955754193366108e-02 1.402646317785957997e-01 +6.940872172959668129e-03 4.779566961931590308e-02 2.311833787458933420e-02 3.892543508439232774e-02 1.138742553558375503e+00 8.413826765330921775e-01 6.295172465183761545e+01 9.389920521908784456e-02 4.369919971049671809e-02 1.470797377742010317e-02 3.088186215300193008e-02 4.466805414453990652e-02 +7.303468036083775317e-03 7.995501289646950172e-02 2.091728159761832573e-02 3.936956152440555107e-02 1.696635664550881550e+00 7.380798018415732908e-01 5.588165009287401119e+01 8.736398794340896612e-02 4.774900738758833946e-02 1.525769836660879550e-02 5.098270610259658664e-02 2.593594782467724749e-02 +7.731204866258495692e-03 1.667115609987375180e-01 1.941878240419146404e-02 3.991014053020369712e-02 3.966809773254381000e+00 7.171396850969474768e-01 1.622448837071214456e+01 8.216832169155112442e-02 5.294247220803216525e-02 1.600464275182147955e-02 1.227167303345407801e-01 1.863837614388731342e-02 +8.237327707296057677e-03 5.539964186325556650e-01 1.836092816696302532e-02 4.053872916544210003e-02 3.036345269048250017e+01 7.448230967210999198e-01 9.182479122331930199e+00 7.806737953718297096e-02 5.975958442265041221e-02 1.700774049854942085e-02 8.604775068977155161e-01 1.496779501531379786e-02 +8.838041540438816568e-03 1.285101404862956009e+01 1.759428908484495305e-02 4.124758420087618060e-02 9.735452351628168799e+00 8.127223209200369336e-01 8.755776565089188779e+00 7.486934177672360802e-02 6.897447409545620634e-02 1.836973036468428702e-02 1.609770732406799132e+00 1.286299315178087918e-02 +9.553182179990489867e-03 1.446892443257242755e+00 1.702832658702096991e-02 4.202924934597133261e-02 2.703591031759108976e+00 9.243730541090880992e-01 1.347727483478456634e+01 7.242307167655426259e-02 8.190120409617424047e-02 2.027030007347419352e-02 1.566492848684853112e-01 1.156078355552730280e-02 +1.040701887851922143e-02 3.034165710830937779e-01 1.660540480007532960e-02 4.287624655459400941e-02 1.675598764790563244e+00 1.093463625128012984e+00 3.480061175030147780e+01 7.060887816331885836e-02 1.009190078808722690e-01 2.303831313793830438e-02 6.061129848031250600e-02 1.071904414597099793e-02 +1.142909397537767227e-02 1.348783864802839683e-01 1.628729208085280197e-02 4.378076791869205120e-02 1.463554115679959411e+00 1.348060755734195482e+00 9.583123763982612786e+01 6.933163047086358943e-02 1.307062270788885150e-01 2.732160895840480067e-02 3.515246034756391164e-02 1.016432106093538221e-02 +1.265517720310927428e-02 7.975035738953149822e-02 1.604768591027085772e-02 4.473447692795873981e-02 1.530416950185944147e+00 1.743160659608558927e+00 4.000802837752753760e+01 6.851516048343612997e-02 1.815392717126681210e-01 3.453746308175283108e-02 2.486490087467178867e-02 9.800844390049988364e-03 +1.412821528994121119e-02 5.491510469226110192e-02 1.586789470093062995e-02 4.572836323651022911e-02 1.788947551874018771e+00 2.392773670438178790e+00 1.730889634539159161e+01 6.809790573601202934e-02 2.798044728395503444e-01 4.828452145476452156e-02 1.974298316317391055e-02 9.572467048451540825e-03 +1.589894640845633533e-02 4.157750021449128225e-02 1.573425828867310722e-02 4.675254803847382623e-02 2.268743413480027726e+00 3.558703431568805087e+00 1.387344135099468900e+01 6.802939911901109693e-02 5.115127259887742861e-01 8.001083658729493675e-02 1.686482855729704369e-02 9.444923379867214974e-03 +1.802605070081806857e-02 3.357315615587104507e-02 1.563652214255248363e-02 4.779621056934285628e-02 3.086137308274173652e+00 5.932707135653115138e+00 2.705229698748378908e+01 6.826717605531709698e-02 1.304729423797628796e+00 1.835492185769631579e-01 1.512414133288783602e-02 9.396782355402913053e-03 +2.057525653524761369e-02 2.839000701724564424e-02 1.556680073994751862e-02 4.884756399842124508e-02 4.500806299208187866e+00 1.167296012742190925e+01 4.408444829699156031e+01 6.877415206862544372e-02 8.814255614959979113e+00 1.001648059454609996e+00 1.402631441660216749e-02 9.414507876612344256e-03 +2.361629942608975061e-02 2.484566598528932524e-02 1.551890314299535049e-02 4.989379898186413476e-02 7.096707527953895145e+00 2.764720089973919670e+01 1.528591126247129139e+01 6.951609443005624112e-02 1.476374278525366712e+01 5.994117899474355582e+00 1.332279773474933163e-02 9.489530001492333527e-03 +2.721690337677381416e-02 2.232287909179591842e-02 1.548787377905772034e-02 5.092117362501927952e-02 1.231804479853673051e+01 4.823687904510767055e+01 1.439425333722080502e+01 7.045931136075657408e-02 1.560122338932600217e+00 3.672290765854365757e-01 1.287699199769589721e-02 9.616296348407490230e-03 +3.143222823836389068e-02 2.047334625408201575e-02 1.546968609836873662e-02 5.191518105933768529e-02 2.421737134463078789e+01 2.916174866929191722e+01 8.580588134891380037e+01 7.156834711439431784e-02 5.666490927658119903e-01 1.384205742959373764e-01 1.260798342918131344e-02 9.790771547754538104e-03 +3.628786447507004881e-02 1.908844421435967886e-02 1.546102501804581461e-02 5.286070114357670907e-02 5.499440502626733718e+01 1.528615821791837881e+01 2.621688198932961811e+01 7.280377701780910149e-02 3.041618767425182113e-01 8.350817258984358227e-02 1.246431298191287909e-02 1.000902606797895306e-02 +4.175640944009190170e-02 1.803711136490188105e-02 1.545914624568316305e-02 5.374234678941519627e-02 1.211604641461155722e+02 9.996340789846790642e+00 6.305539890048242668e+00 7.412027886656839815e-02 2.001114149936351616e-01 6.302708134254950134e-02 1.241060605206251166e-02 1.026575624685991360e-02 +4.772848538993520323e-02 1.723393875232188260e-02 1.546176706036540144e-02 5.454482616277586682e-02 1.273748921759168127e+02 7.840573789915355363e+00 4.038318780502774707e+00 7.546520999120095996e-02 1.500777122230599336e-01 5.399098682544734018e-02 1.242033433271036089e-02 1.055267555316924399e-02 +5.398395623906435820e-02 1.662171855931223602e-02 1.546700075187621565e-02 5.525339014357589368e-02 7.364080310626093251e+01 6.942776669848055526e+00 3.187592897422546923e+00 7.677811334630267603e-02 1.235838320685132413e-01 4.990563637962794341e-02 1.247175280875103057e-02 1.085694759556073141e-02 +6.017438137538680398e-02 1.616144711295095307e-02 1.547330634762523853e-02 5.585433329249094025e-02 4.454063601164116903e+01 6.625602969313624691e+00 2.748565381804727981e+00 7.799181705026518585e-02 1.090730592714639902e-01 4.828932062228628863e-02 1.254574654059064168e-02 1.116013950186578105e-02 +6.583216594755669782e-02 1.582639031011227534e-02 1.547945436227944616e-02 5.633551245739415458e-02 3.128037827389435677e+01 6.588526724857254102e+00 2.493215095883837940e+00 7.903572124467886373e-02 1.012722835278254130e-01 4.794483070935795510e-02 1.262501865111720703e-02 1.143841536752697972e-02 +7.042044527729797443e-02 1.559846983609095190e-02 1.548450577715074564e-02 5.668684950408762330e-02 2.489297912101671173e+01 6.666313574766325800e+00 2.341907904207659818e+00 7.984160154733946357e-02 9.736561299183434104e-02 4.816680778895266607e-02 1.269429964984152871e-02 1.166473004315306955e-02 +7.342574607108717788e-02 1.546604703345912622e-02 1.548779969242358896e-02 5.690078347996629232e-02 2.190291430233460090e+01 6.754675997702427104e+00 2.260826492237665963e+00 8.035147046731370979e-02 9.566970525786322455e-02 4.849027767740956424e-02 1.274128880354189960e-02 1.181324728506521690e-02 +7.447344279558115732e-02 1.542260580634860663e-02 1.548894097938264061e-02 5.697262458349210829e-02 2.101822845854569977e+01 6.791223639904193199e+00 2.235208451336005542e+00 8.052607384829757464e-02 9.521342566990737000e-02 4.863074475973574312e-02 1.275789655735867084e-02 1.186507382558274135e-02 +7.343319001384944478e-02 1.546573363523698862e-02 1.548780674829351202e-02 5.690127680287130479e-02 2.189631529999487469e+01 6.754704221182093349e+00 2.260631985423624979e+00 8.035241712986089524e-02 9.563994124659730423e-02 4.848377157735707377e-02 1.274124000044164068e-02 1.181341544996489766e-02 +7.044833948303590165e-02 1.559718037586364618e-02 1.548452224084722120e-02 5.668854408884598656e-02 2.486057739038025005e+01 6.663467707233200699e+00 2.340929843039353475e+00 7.984175442452097482e-02 9.693004826197604284e-02 4.805144255184480573e-02 1.269210233435159180e-02 1.166306485785269589e-02 +6.588863054656622642e-02 1.582335452208056062e-02 1.547944377847457198e-02 5.633831069780533690e-02 3.117637475132010039e+01 6.570847654791444725e+00 2.489817518122130480e+00 7.902352634950592092e-02 9.911583328449038999e-02 4.735824625572367108e-02 1.261287726295779940e-02 1.142698603424001369e-02 +6.026151548896820781e-02 1.615569187505544457e-02 1.547317346207513142e-02 5.585690339310816349e-02 4.422993871770666630e+01 6.563869399443687414e+00 2.736981230972003853e+00 7.794240244128089468e-02 1.022522674206841203e-01 4.644106136909237348e-02 1.250723031068207321e-02 1.112406813088340218e-02 +5.409857825787431351e-02 1.661194206355328523e-02 1.546656799185465621e-02 5.525287212512617480e-02 7.272229935994434413e+01 6.772853094586532841e+00 3.145383096009263468e+00 7.665269525853080079e-02 1.064196111908613379e-01 4.534431400090396802e-02 1.237969546193514250e-02 1.077596678853596883e-02 +4.786404864266919496e-02 1.721832470018506284e-02 1.546075748297813350e-02 5.453670897242570564e-02 1.258963875538668162e+02 7.413526083035849368e+00 3.864359835637976470e+00 7.521248637045445384e-02 1.117273716961314223e-01 4.411489217072338265e-02 1.223522358544198996e-02 1.040407952070969769e-02 +4.190510366674112669e-02 1.801302791690821692e-02 1.545716898513625585e-02 5.372051886783828917e-02 1.235324770953017861e+02 8.917100210900398949e+00 5.345570031007599532e+00 7.367834033421857831e-02 1.183201707502233718e-01 4.279776940541140523e-02 1.207877789769995491e-02 1.002729430318282169e-02 +3.644221692140342528e-02 1.905195772303052565e-02 1.545756411385160178e-02 5.281765445719237978e-02 5.716324772913301189e+01 1.232981575352550330e+01 9.868133869490279153e+00 7.210140044693696959e-02 1.263865411973150721e-01 4.143286076108760457e-02 1.191500880497339994e-02 9.660744212959480534e-03 +3.158608265787896802e-02 2.041835927183089858e-02 1.546408961754635637e-02 5.184235037005604368e-02 2.522460441911915652e+01 2.055444113100376669e+01 6.751432649497317584e+01 7.052509558794795019e-02 1.361717039164748733e-01 4.005329413500072211e-02 1.174804516714199158e-02 9.315509317765762951e-03 +2.736573989679969357e-02 2.223956455579615896e-02 1.547934852423069399e-02 5.080935572651210791e-02 1.282065146439906833e+01 3.912077096314851588e+01 2.583595380018323340e+01 6.898424059539944031e-02 1.479963599552064635e-01 3.868487225544749858e-02 1.158139610351104076e-02 8.998967117588888356e-03 +2.375710048625866502e-02 2.471749316830406870e-02 1.550650245161649954e-02 4.973359310344557110e-02 7.378381382969214641e+00 4.455249781095511707e+01 3.720532277666063692e+01 6.750527734180483685e-02 1.622844730172465222e-01 3.734642547526849377e-02 1.141793452911502547e-02 8.715501659603849469e-03 +2.070637576591230142e-02 2.818744063579216655e-02 1.554941390049409747e-02 4.862986747990942493e-02 4.671399652921567558e+00 2.176052155551028022e+01 1.414915417190860012e+02 6.610720963680681572e-02 1.796044992624455106e-01 3.605070022346848480e-02 1.125995418966607882e-02 8.467332014899499326e-03 +1.814675193955054069e-02 3.323991329959016111e-02 1.561285087495979142e-02 4.751259752607872588e-02 3.191186040378783950e+00 1.023093200088533727e+01 3.420228882807949589e+01 6.480285564408769239e-02 2.007326137811139832e-01 3.480545207706442490e-02 1.110925374400383199e-02 8.255288424169383160e-03 +1.600915733258993778e-02 4.099642580727289737e-02 1.570277911302827428e-02 4.639564038248101402e-02 2.326134683405306269e+00 5.692046112518604595e+00 9.942516262164474483e+00 6.360021789611143561e-02 2.267502697554066304e-01 3.361460409973005686e-02 1.096725083399241289e-02 8.079488485245448978e-03 +1.422834690389860289e-02 5.381157545710430617e-02 1.582678661480594121e-02 4.529214642667378499e-02 1.799655951652231245e+00 3.628928388090165491e+00 4.660125504673585439e+00 6.250374747081727245e-02 2.592010739671393726e-01 3.247926876695561571e-02 1.083509145050415116e-02 7.939875751168362639e-03 +1.274581690806103271e-02 7.736772535612046475e-02 1.599472161072924142e-02 4.421442932764028944e-02 1.476111270974216572e+00 2.549755486696062334e+00 2.817421499562219989e+00 6.151535533297435021e-02 3.003527300885611151e-01 3.139857467880635689e-02 1.071375400750084785e-02 7.836649550263271799e-03 +1.151095735413119880e-02 1.285341833630372355e-01 1.621963746014431704e-02 4.317401896481377205e-02 1.285907890794451225e+00 1.923637052716628437e+00 1.993148719588311746e+00 6.063542955542809698e-02 3.536447512682520666e-01 3.037044329360260794e-02 1.060415694405001004e-02 7.770635419310453242e-03 +1.048087678486293514e-02 2.783016195863955988e-01 1.651927203203295766e-02 4.218163496856539019e-02 1.194047696743824272e+00 1.533036559490403850e+00 1.566707876320569293e+00 5.986344094793474152e-02 4.245059649794719614e-01 2.939207460696573182e-02 1.050724633470965196e-02 7.743613201496425333e-03 +9.619783712113890231e-03 1.167477524995801819e+00 1.691838143398756780e-02 4.124729197026379829e-02 1.186692128752263597e+00 1.277622006354354633e+00 1.325117007128850055e+00 5.919855456588745540e-02 5.219217216868485831e-01 2.846036932803472017e-02 1.042408349991310636e-02 7.758672191866445786e-03 +8.898062297886439459e-03 2.678676990278401249e+01 1.745260192501231142e-02 4.038038544869242824e-02 1.266485491668938312e+00 1.106861722518525548e+00 1.180328263277515166e+00 5.863998720772549411e-02 6.616770784145216133e-01 2.757217877485920385e-02 1.035593026439716319e-02 7.820637429465317550e-03 +8.291408598252020951e-03 6.735361729783388984e-01 1.817496483541303567e-02 3.958993986147494454e-02 1.453586876237595416e+00 9.939705085991775713e-01 1.090961731253332401e+00 5.818744311490146176e-02 8.736561079348984515e-01 2.672457299745620296e-02 1.030433950753268865e-02 7.936648278670565063e-03 +7.779915064229418753e-03 1.873403198436079109e-01 1.916757226754211424e-02 3.888480326948703936e-02 1.792230648146325711e+00 9.249327609902417979e-01 1.035660527595254177e+00 5.784133917172967071e-02 1.220332517352626489e+00 2.591493662004320728e-02 1.027125276952513266e-02 8.116976910102793180e-03 +7.347313211747038587e-03 8.715842693316498691e-02 2.056349087216128094e-02 3.827396779094856955e-02 2.364095498753583158e+00 8.938881681333693541e-01 1.002604717817501712e+00 5.760308420023679127e-02 1.851356897685240144e+00 2.514107467908693536e-02 1.025911138136572850e-02 8.376243086229698959e-03 +6.980313897805659820e-03 5.123674975900670975e-02 2.259060584394228036e-02 3.776697002204131015e-02 3.308177126312229266e+00 9.018089701041849260e-01 9.849021281853032050e-01 5.747534943517555034e-02 3.204603835406147461e+00 2.440128435798076881e-02 1.027099699424064740e-02 8.735267503197564898e-03 +6.668039322950152469e-03 3.457568590507067996e-02 2.566698747127376182e-02 3.737439141568389689e-02 4.832848599222719699e+00 9.577469072233426584e-01 9.783847387409474461e-01 5.746234958284292260e-02 7.055416577200532835e+00 2.369436027894725877e-02 1.031080621231147618e-02 9.223989981031036067e-03 +6.401592035215381178e-03 2.559082405943472957e-02 3.062974533706826555e-02 3.710859738390559492e-02 7.152227228383733149e+00 1.083458122291079073e+00 9.804865647913429960e-01 5.757021031430507169e-02 2.689095158607366542e+01 2.301967211760716503e-02 1.038347285261755591e-02 9.886123985821587690e-03 +6.173666857280771941e-03 2.023896907109760945e-02 3.936510221461811398e-02 3.698469983610079559e-02 1.017851453126227490e+01 1.324245078003875919e+00 9.896424967911018333e-01 5.780740043742963602e-02 1.254207631225556412e+02 2.237714167140223906e-02 1.049526017568841625e-02 1.078694925006153105e-02 +5.978252775966335329e-03 1.681817514540688563e-02 5.690133148586316164e-02 3.702199069660046249e-02 1.293668348121406453e+01 1.772556119269117270e+00 1.004961025576231348e+00 5.818531518213237302e-02 1.530240024247779296e+01 2.176727284704237791e-02 1.065414484246503951e-02 1.202673144923668488e-02 +5.810381224073376052e-03 1.451371274284791145e-02 1.006868638807165706e-01 3.724610041287754192e-02 1.366533669964565512e+01 2.616863336284909192e+00 1.026051961540329849e+00 5.871908115753664975e-02 4.498312519583910429e+00 2.119112167305847033e-02 1.087034140063037821e-02 1.376504790135383779e-02 +5.665943509750405623e-03 1.289725116419462858e-02 2.696276093818485986e-01 3.769237654125876663e-02 1.167274609936776386e+01 4.227221940253612864e+00 1.052948761266585986e+00 5.942861708441772584e-02 2.026385630027263574e+00 2.065033804703273607e-02 1.115698964393707117e-02 1.626694471598010353e-02 +5.541520652430296720e-03 1.172670292461102000e-02 3.051603293748842649e+00 3.841138967741647425e-02 8.370968823466858666e+00 7.214584066762988357e+00 1.086107116353796753e+00 6.034015315919141753e-02 1.117351978318475547e+00 2.014713280820578864e-02 1.153111185855949967e-02 1.999699859610436919e-02 +5.434259728710008445e-03 1.085723512225984268e-02 1.304971440135776817e+00 3.947829894770485404e-02 5.433415258678794935e+00 1.203408895759247343e+01 1.126473983343717622e+00 6.148837251043402785e-02 6.926191847608518248e-01 1.968427244557418437e-02 1.201491992299589043e-02 2.582644013557869322e-02 +5.341765505948437714e-03 1.019804576718125362e-02 2.014884032872566177e-01 4.100963027983310638e-02 3.421817320823250075e+00 1.732664215222703064e+01 1.175650280321564489e+00 6.291960868393278727e-02 4.635514145312581435e-01 1.926503499870346400e-02 1.263766923788894707e-02 3.553973058778721328e-02 +5.262024062474567748e-03 9.690006081482946398e-03 8.450896541906534332e-02 4.319467855193026562e-02 2.185251892743187430e+00 1.909605455805415275e+01 1.236188644626503352e+00 6.469636492736774436e-02 3.276717177912918388e-01 1.889320652979316340e-02 1.343821530289240375e-02 5.325239482624872372e-02 +5.193329935730582429e-03 9.293305083126618404e-03 5.027558210724877158e-02 4.635862470090809651e-02 1.446073080363149632e+00 1.570707790177510965e+01 1.312135029666683161e+00 6.690439945968651436e-02 2.414420138560396667e-01 1.857300762503188291e-02 1.446873627604131421e-02 9.022385549842887320e-02 +5.134233203247486749e-03 8.980377840303806897e-03 3.585343162434424802e-02 5.109891922007278597e-02 9.993364388720200608e-01 1.064526326620721441e+01 1.410014939136864820e+00 6.966358563088463629e-02 1.839121725254855289e-01 1.830902930377884680e-02 1.580009543488884380e-02 1.867732630979576092e-01 +5.083492325914495263e-03 8.731646665951905625e-03 2.849370184551104634e-02 5.861060538941342130e-02 7.216924851607903202e-01 7.092823271564675736e+00 1.540720695824425501e+00 7.314556335658096986e-02 1.440291500553288750e-01 1.810612659252600065e-02 1.752985194081854714e-02 5.827296555019603197e-01 +5.040041573379587178e-03 8.532909857895794314e-03 2.426989994420504157e-02 7.156437818756608560e-02 5.432194299188600750e-01 6.342764307772864818e+00 1.723307676021370805e+00 7.760260938576056533e-02 1.155369005430423729e-01 1.796931739076254239e-02 1.979411646447210710e-02 8.466029618910681620e+00 +5.002958978640291259e-03 8.373648290067781455e-03 2.164988433923586628e-02 9.692971898804660091e-02 4.245038893777380307e-01 3.062492794188252887e+01 1.993287720225674020e+00 8.341811029024666369e-02 9.468891581985570960e-02 1.790361959797765953e-02 2.278593055090443603e-02 2.781651237828543177e+00 +4.971442936075142274e-03 8.245922932833094771e-03 1.993577363685760176e-02 1.577201189664149128e-01 3.429603002885157625e-01 6.150800546847763783e+00 2.422525333931705660e+00 9.119792422034060653e-02 7.913728461224021904e-02 1.791387471691262973e-02 2.678397166237281996e-02 4.681566103091250319e-01 +4.944792386208984002e-03 8.143642806486023344e-03 1.877262112492516025e-02 3.689450582693211689e-01 2.853086746431968690e-01 2.696604191769619074e+00 3.173411010482105166e+00 1.019461602641250630e-01 6.735416412775244166e-02 1.800454264534405782e-02 3.219863565275302847e-02 1.965372817269333272e-01 +4.922390175619756163e-03 8.062050490735130776e-03 1.796416190180996977e-02 2.345297720512459883e+00 2.435089074704551992e-01 2.269514561263022312e+00 4.673848274978375628e+00 1.174291848965824531e-01 5.831295234099310304e-02 1.817948176813813724e-02 3.964857296450558649e-02 1.131586784283293845e-01 +4.903691355954215708e-03 7.997376387077353294e-03 1.739452329575930448e-02 6.165700780144658388e+00 2.125502786287363222e-01 2.341609499709093267e+00 8.335720049318950942e+00 1.409954670247991482e-01 5.130563856896148967e-02 1.844170670571683782e-02 5.009043314068502284e-02 7.692186493607516828e-02 +4.888211659340402533e-03 7.946588823405079452e-03 1.699145319882470334e-02 6.203205668698474895e-01 1.892167814088594469e-01 2.674192485155461707e+00 2.070949798835050615e+01 1.796540197094784741e-01 4.583226797690567039e-02 1.879317311002544691e-02 6.504932306017460752e-02 5.823652257006469574e-02 +4.875519031343741871e-03 7.907212365355818784e-03 1.670777606474216359e-02 2.624174687491658275e-01 1.713858807822230823e-01 3.267718591812304840e+00 7.695938452435797217e+01 2.502179916706953611e-01 4.153292064036752385e-02 1.923457833620741131e-02 8.704347505243641148e-02 4.797043293335122999e-02 +4.865226398700378541e-03 7.877200810653687407e-03 1.651140414908651780e-02 1.685097082878036778e-01 1.576170150672550896e-01 4.235560214527842149e+00 5.262946352871072975e+01 4.020428857524284139e-01 3.814394104414266240e-02 1.976526736433878093e-02 1.204102840565568627e-01 4.304654644291776300e-02 +4.856986906604987032e-03 7.854843110843853435e-03 1.637971515692603769e-02 1.313955326507396937e-01 1.469066984443820612e-01 5.866894743781000621e+00 1.703333331471612411e+01 8.377794201633085303e-01 3.546964051597911033e-02 2.038318987621956166e-02 1.730045914194123513e-01 4.379406588152866958e-02 +4.850489038400733477e-03 7.838692812593358455e-03 1.629621011243852571e-02 1.138183317068549860e-01 1.385370137892400488e-01 8.898613831718273914e+00 8.550274353761144752e+00 3.256655164179443229e+00 3.336286418484778887e-02 2.108504901663109388e-02 2.599674649178319585e-01 5.839526023955139006e-02 +4.845453146443252056e-03 7.827516314645078729e-03 1.624849126419091946e-02 1.048314759899783705e-01 1.319819107201788688e-01 1.553149772379962990e+01 5.596767231895435124e+00 1.193728595026834967e+02 3.171182707963449837e-02 2.186657186834958452e-02 4.128752042460552274e-01 1.746853525526286255e-01 +4.841628747350491119e-03 7.820257000478968157e-03 1.622698908860850664e-02 1.002303549769884561e-01 1.268473659414756649e-01 3.405066141750692310e+01 4.311156334425565895e+00 2.538350848953805361e+00 3.043067513915857780e-02 2.272294221216761972e-02 7.047611609094185381e-01 5.869450850256209051e+00 +4.838792816834164290e-03 7.816007602821551173e-03 1.622414733699949554e-02 9.808571155598090618e-02 1.228334403028569638e-01 9.716492641172453659e+01 3.878193397800190567e+00 7.066886481739521608e-01 2.945272921672754951e-02 2.364904865831961300e-02 1.330284138266786265e+00 1.211383498738178854e-01 +4.836748025732263631e-03 7.813986684079532799e-03 1.623389796123541479e-02 9.738430516722235142e-02 1.197088365085571537e-01 1.333170812247598178e+02 1.663434209858262847e+01 3.473886936059413788e-01 2.872511085921710186e-02 2.463928531815663681e-02 2.928567385258722400e+00 5.078260574767903823e-02 +4.835321740427489350e-03 7.813528052534940080e-03 1.625131184819017874e-02 9.753112606040867383e-02 1.172941473061572676e-01 6.317854735009772327e+01 3.764159956139136565e+00 2.213962697826148129e-01 2.820442940658444628e-02 2.568580018443954519e-02 8.438330625573797761e+00 3.484457393580752543e-02 +4.834365140863512884e-03 7.814066650605256889e-03 1.627237361989196038e-02 9.814232315228038628e-02 1.154502015414391874e-01 3.721681737674433066e+01 3.338665599021822583e+00 1.645301329758968589e-01 2.785302944505088987e-02 2.677383649322644110e-02 4.218090351005067618e+01 2.851839033435007650e-02 +4.833752867751479367e-03 7.815134438919339732e-03 1.629383640020067373e-02 9.895150795401869148e-02 1.140700675058131525e-01 2.865174113087325125e+01 4.517365308723614525e+00 1.353686048025398436e-01 2.763590268803484129e-02 2.787241779960405313e-02 1.164807819014932306e+02 2.531191375347017006e-02 +4.833382552178676697e-03 7.816352752458316511e-03 1.631312597257500094e-02 9.976562010491560328e-02 1.130730378072136999e-01 2.574396172016407647e+01 3.271511121892606866e+01 1.195721701881594934e-01 2.751862413420120765e-02 2.892124816719800900e-02 2.928479657276089654e+01 2.349060615939111557e-02 +4.833174756809625362e-03 7.817429948598951864e-03 1.632828080517806021e-02 1.004440772767696277e-01 1.124003664486915161e-01 2.497487160523364480e+01 1.086220598261625803e+01 1.110786432561937098e-01 2.746730796827432861e-02 2.982076691952502065e-02 2.279052098227450429e+01 2.243035233840178985e-02 +4.833072740690411671e-03 7.818158467167865555e-03 1.633792206343026576e-02 1.008895907832106503e-01 1.120121407260836199e-01 2.494857834698040122e+01 4.272599062873653430e+00 1.069479723699092999e-01 2.745137287405630122e-02 3.044134126251620692e-02 1.643292699990390915e+01 2.186833171990467881e-02 +4.833042518047599677e-03 7.818415418430672489e-03 1.634122656250798500e-02 1.010444788876685429e-01 1.118852585453040116e-01 2.500863894069359716e+01 3.650427976520280726e+00 1.057232379893101315e-01 2.744876925805698684e-02 3.066454077157402050e-02 1.149671449271489188e+01 2.169165626512188985e-02 +4.833072740690411671e-03 7.818156115211227428e-03 1.633789325196144046e-02 1.008881443298777214e-01 1.120129403913408400e-01 2.494649907031428526e+01 4.270340772907850635e+00 1.069499715330523987e-01 2.745124175247367487e-02 3.043915394284198855e-02 1.593130403990581279e+01 2.186931601375807430e-02 +4.833172169657323075e-03 7.817411132945841640e-03 1.632811264027837425e-02 1.004343695757423660e-01 1.124021774553034814e-01 2.494917206903445006e+01 1.109728346068990845e+01 1.110319921962602124e-01 2.746530233725046066e-02 2.980728903200552393e-02 9.679925595328417387e+01 2.243028942356169522e-02 +4.833366911667027858e-03 7.816277489845868676e-03 1.631253563145862451e-02 9.972756544649741262e-02 1.130721617033656756e-01 2.562996796777130371e+01 1.998498568357636529e+01 1.194557365747483946e-01 2.751028821188361909e-02 2.888276310071490396e-02 1.071804632836692583e+01 2.346914631902819251e-02 +4.833700007526018673e-03 7.814914530973599352e-03 1.629222942582711151e-02 9.883797900705670880e-02 1.140568730290686533e-01 2.837670141054995554e+01 4.274287385547462748e+01 1.360267351891417398e-01 2.761695591334064129e-02 2.780537703957833284e-02 9.799896551524494015e+00 2.518612934845177245e-02 +4.834230491345933682e-03 7.813543340253093980e-03 1.626865517644578152e-02 9.785698377284327010e-02 1.154083837523986883e-01 3.715646499341060860e+01 4.310199558464843150e+00 1.712611330020933631e-01 2.782681924026645520e-02 2.669976691078522479e-02 1.279861539465960618e+01 2.798633599538979597e-02 +4.835032449760899055e-03 7.812438508621945450e-03 1.624363741367729902e-02 9.689213472095620228e-02 1.172022034412492086e-01 6.677992803446180403e+01 2.731459248376166382e+00 2.622697070733238101e-01 2.819371036420244628e-02 2.565400525861593131e-02 2.001390798836008500e+01 3.273946514193321750e-02 +4.836193493155714965e-03 7.811928722020453075e-03 1.621933052980293472e-02 9.606341691933144300e-02 1.195452050052939752e-01 1.036437026079602362e+02 2.410388120495332576e+00 6.249800869661824576e-01 2.878928870002405577e-02 2.471817876366432659e-02 3.881420870297985459e+01 4.156046558054453388e-02 +4.837813403290790355e-03 7.812386177586729333e-03 1.619818820358627162e-02 9.550163443644400785e-02 1.225878960297508286e-01 4.459192101414257792e+01 2.337672383094411277e+00 7.484785077293523159e+00 2.971500119343903346e-02 2.391372727466189660e-02 8.423940766867556817e+01 6.075743730607350429e-02 +4.840002251736826196e-03 7.814226583656706804e-03 1.618293047288026087e-02 9.535001555171426779e-02 1.265432344284933563e-01 2.398059884080690551e+01 2.354491460215189402e+00 2.288064090480905310e+00 3.112536198779964833e-02 2.324516654835542123e-02 6.512879567500463907e+01 1.171236304498335795e-01 +4.842878459510595486e-03 7.817897987970105766e-03 1.617652668294156451e-02 9.577021024493702350e-02 1.317159044243139121e-01 1.890594707890635107e+01 2.419046143274627081e+00 4.115243932298252028e-01 3.327344455740248452e-02 2.270989767265885889e-02 2.241688679865465161e+01 4.622782945227042473e-01 +4.846566856710708519e-03 7.823880189681265557e-03 1.618217902273411807e-02 9.695396178110254892e-02 1.385500318692366450e-01 1.820219696535708920e+01 2.518119023950998514e+00 1.968041229674051262e-01 3.660576919312732991e-02 2.230500128139411772e-02 9.120120519985194463e+00 1.422077948341278919e+01 +4.851196506957729596e-03 7.832674155554292944e-03 1.620332487688572881e-02 9.914302190323659447e-02 1.477100268740894340e-01 1.962050443321155768e+01 2.648292944443576769e+00 1.320422678074258949e-01 4.197931319060235061e-02 2.203181093397548265e-02 4.497784505318467296e+00 2.443186097026540937e-01 +4.856898767029941416e-03 7.844801431973864869e-03 1.624365152541712778e-02 1.026617842307660372e-01 1.602227360677619117e-01 2.305323630281242586e+01 2.810674441552071912e+00 1.037835264301457117e-01 5.122107396800813089e-02 2.189945163417290896e-02 2.521526597528422453e+00 7.662842306601685971e-02 +4.863804699711051470e-03 7.860795325107866258e-03 1.630712613118904392e-02 1.079715497790708495e-01 1.777440604017967718e-01 2.989493469615591437e+01 3.009299002477587859e+00 8.861773370914954873e-02 6.883059902796016816e-02 2.192851005844711001e-02 1.541819118373729758e+00 4.253267743268981244e-02 +4.872043368621621455e-03 7.881199136939898847e-03 1.639805042289411985e-02 1.157645699456925081e-01 2.030920790416314292e-01 4.550099312034242161e+01 3.250878876272020435e+00 7.928716304905715495e-02 1.085611676687802535e-01 2.215633351425708858e-02 1.003100039885663985e+00 3.068889410659198999e-02 +4.881739251066766726e-03 7.906559109399347723e-03 1.652112537386444396e-02 1.271343164112104518e-01 2.413979852277585714e-01 8.543645951963431173e+01 3.545262646165295628e+00 7.295699523305333722e-02 2.312158827866435951e-01 2.264599559876781174e-02 6.837279066818905404e-01 2.555888684023445781e-02 +4.893010238873016574e-03 7.937422660393938720e-03 1.668154410435882321e-02 1.439058075692908889e-01 3.028622325429686235e-01 4.781103774498664905e+01 3.906595332177540403e+00 6.833887545345540548e-02 1.063668391637749400e+00 2.350276518722531002e-02 4.833559125323345640e-01 2.316132458607937303e-02 +4.905965462828415329e-03 7.974332503918102333e-03 1.688511535928629084e-02 1.693262017947975429e-01 4.102871170404489565e-01 9.679444032206593107e+00 4.355464389855101537e+00 6.478069433265720711e-02 1.432626297470210908e+01 2.490628472771240151e-02 3.519918843407736642e-01 2.212557344935460815e-02 +4.920702823128059525e-03 8.017821946139725223e-03 1.713839815772371517e-02 2.096466999595816560e-01 6.238117525057851331e-01 6.006340430137806052e+00 4.922713510858695685e+00 6.192473690554956695e-02 4.730198627694172653e-01 2.717764628052398226e-02 2.628178070484641915e-01 2.189528279103037864e-02 +4.937306755015289685e-03 8.068410769476007036e-03 1.744887701368538074e-02 2.782192129056585417e-01 1.148279090941232594e+00 6.427482373896915568e+00 5.656536035988110278e+00 5.956185542801409327e-02 1.513185810262022701e-01 3.093222812844667255e-02 2.005710872790427146e-01 2.222852741127873816e-02 +4.955846582412037730e-03 8.126599940691047602e-03 1.782518478401455553e-02 4.079927539396974723e-01 3.092091286505669334e+00 7.562363779040048861e+00 6.636236753267465538e+00 5.756325322656705157e-02 7.975058670530378591e-02 3.747028715573454127e-02 1.561427733666131690e-01 2.302878065768064822e-02 +4.976373166380620300e-03 8.192861615080116247e-03 1.827733080817743258e-02 6.999168358201782736e-01 2.601955400330023949e+01 1.058181335598000672e+01 8.000389831521005135e+00 5.584618729067195031e-02 5.295262442886417703e-02 4.994361812739030182e-02 1.238879635814954666e-01 2.428181907246206722e-02 +4.998916847161680166e-03 8.267632080599739142e-03 1.881700078273462057e-02 1.601191147381414437e+00 1.516199195906758490e+01 3.457957280741113237e+01 1.000882203574052554e+01 5.435546425388260855e-02 4.008751098817329300e-02 7.773827612458664160e-02 1.002044187751524734e-01 2.603424844039122291e-02 +5.023485915402371368e-03 8.351304701997779717e-03 1.945791661070691084e-02 7.617092046060878197e+00 2.460424175222547305e+00 4.427514788122323353e+01 1.319025615830724085e+01 5.305300829017111502e-02 3.292331465245394717e-02 1.603812167859857696e-01 8.275340030494730825e-02 2.839370076514711669e-02 +5.050062790226813800e-03 8.444210517171164138e-03 2.021620154284343995e-02 4.485782176595338200e+01 9.970037682775119148e-01 1.046838377918600393e+01 1.872624994783167196e+01 5.191183892895373519e-02 2.851652288077875103e-02 6.533583841793119129e-01 7.002646902070785995e-02 3.154643513682706818e-02 +5.078602020072963893e-03 8.546607065371863640e-03 2.111084116112295350e-02 2.965371684728712598e+00 5.696267639489852597e-01 5.865591818601939345e+00 2.952376183515872299e+01 5.091228675685901400e-02 2.560462122506795488e-02 3.549856723068153030e+01 6.111718083378370886e-02 3.579830528866227712e-02 +5.109029165513197072e-03 8.658661923510403355e-03 2.216421727291083624e-02 9.310001623306507490e-01 3.920595589266540060e-01 4.120012112791306080e+00 5.286291021884985497e+01 5.003961264961979266e-02 2.357376723022017867e-02 4.405240773869646409e-01 5.565497733184963242e-02 4.165741382119111241e-02 +5.141236565732365017e-03 8.780426246643678601e-03 2.340259535397253704e-02 4.565711071013333622e-01 3.038231891066182633e-01 3.117137272753822241e+00 9.866778554477087937e+01 4.928252192346669475e-02 2.209680843167111455e-02 1.280156063236073394e-01 5.395305976067683862e-02 5.000316555356434933e-02 +5.175082338946224506e-03 8.911814776343526465e-03 2.485669607393682645e-02 2.768920390536499521e-01 2.554956383111495200e-01 2.436889438712750433e+00 1.795235449149329270e+02 4.863207655518254902e-02 2.098654848460280997e-02 6.430833324118255534e-02 5.766530462513098226e-02 6.245848406530073171e-02 +5.210389618015523472e-03 9.052582321130335855e-03 2.656226270583495613e-02 1.905888717527802478e-01 2.278446939784249115e-01 1.943479687694605662e+00 5.875310779621604240e+01 4.808093785206468684e-02 2.012964659858437061e-02 4.117374040627231474e-02 7.228913950574938907e-02 8.229683848219479514e-02 +5.246943610500215925e-03 9.202289065112627744e-03 2.856036217655041551e-02 1.427964072623741087e-01 2.121569609200051054e-01 1.575123235973638902e+00 2.856296638053888515e+01 4.762285063843454264e-02 1.945427754579729870e-02 3.020887445631179405e-02 1.194746051468843911e-01 1.169835831917674235e-01 +5.284491833855105292e-03 9.360274108474852389e-03 3.089754323590294949e-02 1.136950832990825389e-01 2.040388944659893566e-01 1.296216634340790597e+00 1.657549908342195621e+01 4.725218359511202532e-02 1.891310643491530066e-02 2.412985386211722455e-02 3.479049774876484258e-01 1.868872800759222297e-01 +5.322745526603849323e-03 9.525633123889338388e-03 3.362555480984100176e-02 9.473465549659162988e-02 2.010920456745695917e-01 1.083262483597905668e+00 1.076842406359486404e+01 4.696356911605516216e-02 1.847386265688452656e-02 2.038980475426659805e-02 1.335712924580804639e+01 3.660783524003735079e-01 +5.361378589958452727e-03 9.697184841134175518e-03 3.680006242010601392e-02 8.174410515247575171e-02 2.019207340767363579e-01 9.197028326100461504e-01 7.557253565252776362e+00 4.675162195554723871e-02 1.811390745307680031e-02 1.791199256361231118e-02 6.518380794078962870e-01 1.124854249605390377e+00 +5.400031115754245180e-03 9.873451643450940202e-03 4.047831386726830072e-02 7.249477107469257109e-02 2.056617621865379775e-01 7.935104807126258653e-01 5.604362552466879421e+00 4.661066331428351944e-02 1.781691295251537632e-02 1.617794550078401061e-02 1.457823749725911111e-01 2.374249013161752231e+01 +5.438313796368562415e-03 1.005265780357723210e-02 4.471509386530801711e-02 6.570938205122044129e-02 2.117413172628787033e-01 6.958260776380567059e-01 4.333124667813825326e+00 4.653449813847700123e-02 1.757080185785926674e-02 1.491305910443389490e-02 6.817353878162900338e-02 2.560315830803852499e+00 +5.475810570671976046e-03 1.023271419602849938e-02 4.955590042741643553e-02 6.061445598210029456e-02 2.197376170418045560e-01 6.200786093306158708e-01 3.464191347608848837e+00 4.651624989490456968e-02 1.736644387343607224e-02 1.396094060584430162e-02 4.229303245482333301e-02 5.312287257414188835e-01 +5.512086150289530195e-03 1.041123828872949665e-02 5.502734417899581010e-02 5.671981158839330822e-02 2.292970918817825998e-01 5.613600009163635107e-01 2.848733274693278084e+00 4.654822944932433121e-02 1.719677724943735261e-02 1.322718540547367268e-02 3.040170902918246792e-02 3.043408312432842600e-01 +5.546694016253325525e-03 1.058559236230963672e-02 6.112421318413417681e-02 5.370303148223854600e-02 2.400799428474007513e-01 5.159744994507983185e-01 2.401233246876061767e+00 4.662189155527785706e-02 1.705623255254208256e-02 1.265205850860602610e-02 2.387659634721367441e-02 5.424547323769475238e-01 +5.579183651269167647e-03 1.075291937744176328e-02 6.779289223929012287e-02 5.134563829552006575e-02 2.517228690765324073e-01 4.811122311572067489e-01 2.069616533415346904e+00 4.672786895746135205e-02 1.694034870899533557e-02 1.219630634692648284e-02 1.987841529432527593e-02 8.820929879912151250e+01 +5.609111182320370564e-03 1.091022470533532969e-02 7.491368203925936886e-02 4.949578265175747643e-02 2.638167006727000219e-01 4.546042363228806615e-01 1.820723309251023991e+00 4.685610954019725494e-02 1.684550311758397506e-02 1.183329653943392297e-02 1.724671928469792212e-02 4.857096860577857500e-01 +5.636050155569108898e-03 1.105446256214290789e-02 8.228479499423049792e-02 4.804588487830697280e-02 2.758969849986272482e-01 4.347460137522790036e-01 1.632734355045744268e+00 4.699612842778643634e-02 1.676873231294292652e-02 1.154450625161830730e-02 1.543341187112624857e-02 1.497246952913370566e-01 +5.659601693869145515e-03 1.118264243499807013e-02 8.961321111636733061e-02 4.691876375409405331e-02 2.874482731172139371e-01 4.201729552635387610e-01 1.490961231197951431e+00 4.713735107618287345e-02 1.670761083978827832e-02 1.131682920510910725e-02 1.415159256295402991e-02 8.189499493064741897e-02 +5.679405639160412314e-03 1.129194491587988229e-02 9.652000814154193531e-02 4.605872670987588152e-02 2.979238233082787679e-01 4.097764249356509736e-01 1.385375606191586284e+00 4.726956161472804091e-02 1.666017305035902632e-02 1.114090108454834915e-02 1.323951201021839746e-02 5.628903955817602528e-02 +5.695151165673342959e-03 1.137984870727138699e-02 1.025660713553440823e-01 4.542579283474703494e-02 3.067794457245938688e-01 4.026554234595842718e-01 1.309112236195391965e+00 4.738340748784712619e-02 1.662485430550111193e-02 1.101004468503806455e-02 1.260131857205569472e-02 4.395037045187236840e-02 +5.706585614465998178e-03 1.144424528004577175e-02 1.073001719967000972e-01 4.499194679720264906e-02 3.135175310201650523e-01 3.980971786161223158e-01 1.257544763701642809e+00 4.747091615052329711e-02 1.660046510314438367e-02 1.091960136846565656e-02 1.217890657171155112e-02 3.745445672358695133e-02 +5.713522534175826360e-03 1.148354412352594646e-02 1.103248940724354116e-01 4.473866282278690654e-02 3.177359416488654276e-01 3.955778743824220345e-01 1.227705195828735274e+00 4.752598427527846003e-02 1.658616461879042214e-02 1.086649830348233696e-02 1.193767637507041519e-02 3.421123552413677521e-02 +5.715847737308005910e-03 1.149675565195607506e-02 1.113658583210504066e-01 4.465537768624513321e-02 3.191724756046934175e-01 3.947745577124979199e-01 1.217936226331034710e+00 4.754477699681280284e-02 1.658145364964261001e-02 1.084898622233789432e-02 1.185919569795285296e-02 3.322013863615905227e-02 +5.727188107835103070e-03 1.160679076733091633e-02 1.567352841629884308e-01 4.605330721379060493e-02 3.234817305585732106e-01 4.034288467606274575e-01 1.238958132367780296e+00 4.758381242114941706e-02 1.659394841928701902e-02 1.087032905285802500e-02 1.197328617456239717e-02 3.610172827470709694e-02 +5.761500862039625574e-03 1.194976896012956390e-02 5.635306687375808421e-01 5.091847916469478125e-02 3.369039296247434145e-01 4.333137427178591072e-01 1.305115379882080262e+00 4.770132852260359352e-02 1.663160206909824676e-02 1.093524540804961462e-02 1.232979164596995081e-02 4.700735372883496632e-02 +5.819672511177708361e-03 1.256745157243316889e-02 1.973182959680286430e+01 6.203258587722852713e-02 3.610566897805565501e-01 5.001448846081339994e-01 1.426665616162294370e+00 4.789858653792296306e-02 1.669492791361275666e-02 1.104648766516939766e-02 1.297528790949659290e-02 7.745520050341450635e-02 +5.903223007227269108e-03 1.354124864335310222e-02 3.697455349516037271e-01 8.844620551147114318e-02 3.991523369230533524e-01 6.519503853374060132e-01 1.624541020099390165e+00 4.817778966248906919e-02 1.678480911254845789e-02 1.120893495826486529e-02 1.400218275349740700e-02 1.891984773063167813e-01 +6.014367658146534297e-03 1.501552797530123808e-02 1.168387555818326540e-01 1.684655267823410574e-01 4.570680431997391491e-01 1.072774285760014656e+00 1.938563392732213897e+00 4.854225224419805168e-02 1.690254041803509327e-02 1.143007826923107123e-02 1.557891919652969713e-02 1.392295768210361606e+00 +6.156114792873466392e-03 1.724585964454639075e-02 6.288100719559605589e-02 6.262148054027137922e-01 5.457261041454092299e-01 3.022135099829224458e+00 2.446450965634896502e+00 4.899669568900531791e-02 1.704989520537843542e-02 1.172082656094860890e-02 1.801565622845224118e-02 2.249532866848767299e+00 +6.332395706930065045e-03 2.070265497050948617e-02 4.260750478616065484e-02 4.414419931441215539e+01 6.867545073829910418e-01 6.562445877687964924e+01 3.311074398797644758e+00 4.954770900343485190e-02 1.722922072730415435e-02 1.209675860620471055e-02 2.191536673675950966e-02 2.252794913109155972e-01 +6.548236531653763362e-03 2.631287474759163095e-02 3.273583430887184315e-02 6.266946045570591650e-01 9.276767888009018748e-01 4.624265148300907846e+00 4.912230075732997747e+00 5.020450127370650051e-02 1.744356570760547884e-02 1.258009921925910650e-02 2.856041509557479680e-02 8.497504678631399855e-02 +6.809980494099797735e-03 3.609289961747366021e-02 2.715848018587319404e-02 1.961328216236251087e-01 1.390403677893244039e+00 1.238231318967428995e+00 8.268416458138828418e+00 5.098014011790349270e-02 1.769686496973937873e-02 1.320286264589199884e-02 4.106391226308169634e-02 4.729699130902975668e-02 +7.125579559664457947e-03 5.509707498942732068e-02 2.369302965947877454e-02 1.108432829553342436e-01 2.471925772377244979e+00 6.963183421625883662e-01 1.651566824647293075e+01 5.189365712815635634e-02 1.799419050819773061e-02 1.401198923670349608e-02 6.865715986551258754e-02 3.189195167882830084e-02 +7.504941345689302053e-03 9.903007506554276085e-02 2.139602942734602012e-02 8.013028070520387958e-02 6.125126588177012721e+00 5.347748824839003712e-01 3.698145016701221977e+01 5.297371089611067896e-02 1.834209252222001457e-02 1.507796184026042111e-02 1.496192041561886787e-01 2.410032916243936077e-02 +7.960396572843178933e-03 2.383872866934829693e-01 1.980264348326661941e-02 6.582867917183947426e-02 3.505088963013805881e+01 4.842703650333405885e-01 4.491304335587923902e+01 5.426543135374370386e-02 1.874910391049233044e-02 1.650997415945003668e-02 6.099803659034623848e-01 1.961955130278363046e-02 +8.507246483029921175e-03 1.203675078451860170e+00 1.866090083261851343e-02 5.821108498303617651e-02 3.499976456068809227e+01 4.840584067010387792e-01 2.458689136809995546e+01 5.584371656022274477e-02 1.922643527433421512e-02 1.848371500324508254e-02 7.345626270847751016e+01 1.681488417007984126e-02 +9.164446082791960491e-03 1.446297221830841195e+01 1.782380183351085084e-02 5.386167860139465940e-02 6.135064780954885499e+00 5.170530362067203844e-01 1.473887422473446662e+01 5.784125920520392927e-02 1.978900566269567798e-02 2.129547387320445545e-02 5.358596930841569295e-01 1.495315232126887342e-02 +9.955420272264061538e-03 6.007619306560234573e-01 1.720042631016267462e-02 5.132195232819837527e-02 2.669584384711145564e+00 5.807082722485084059e-01 1.234346474589047382e+01 6.051325716781796177e-02 2.045698839565813706e-02 2.547504722991504947e-02 1.484010787737450043e-01 1.366489100386257191e-02 +1.090901050772047354e-02 1.939333305737973023e-01 1.673177190235102668e-02 4.987952966093563839e-02 1.782801242388373231e+00 6.806597792463831009e-01 2.972676509255787636e+01 6.440609231888043407e-02 2.125820241634705440e-02 3.204309546831698302e-02 7.234022988383891073e-02 1.274709813644010065e-02 +1.206053494602995699e-02 1.000835517234769240e-01 1.637796353721918813e-02 4.914965283706262955e-02 1.555375855239539806e+00 8.311320851146508648e-01 7.040856201637967615e+01 7.087681894351936795e-02 2.223197537971143695e-02 4.316849892258214916e-02 4.503728252538584387e-02 1.208059772414934140e-02 +1.345283212541430358e-02 6.397443183704279446e-02 1.611109642522436450e-02 4.890695913540289708e-02 1.629962397749996406e+00 1.060387353327501447e+00 1.524080661402787662e+01 8.413692115813341255e-02 2.343565622045706842e-02 6.412532161521446172e-02 3.220808169860420178e-02 1.159176117641888028e-02 +1.513724702326921419e-02 4.625908930795868262e-02 1.591101488595993499e-02 4.900974846036231652e-02 1.945360723815519721e+00 1.425540028513809565e+00 1.155869795797771715e+01 1.233838216759371026e-01 2.495641727146073047e-02 1.105662871420738241e-01 2.517872950487648129e-02 1.123329182121780845e-02 +1.717407733993655400e-02 3.623187908722570738e-02 1.576275635927807534e-02 4.936281007926128506e-02 2.562178639260814794e+00 2.052866545020838540e+00 2.157425011764059164e+01 4.061461210645194719e-01 2.693407706300541410e-02 2.471121756000220493e-01 2.093053016936551394e-02 1.097400330150283092e-02 +1.963206665204862700e-02 2.999844254386850595e-02 1.565492796721972349e-02 4.989782670760832539e-02 3.671284540005308017e+00 3.263118399822187765e+00 8.472777970496983357e+01 2.779646253592755745e+00 2.960979582102226185e-02 1.009486895736558143e+00 1.818854326907884053e-02 1.079306962922523504e-02 +2.258601658855053512e-02 2.586135669585134383e-02 1.557865577738613838e-02 5.056246613420852659e-02 5.721734390780712332e+00 6.043600127212013007e+00 4.128919795767824752e+01 1.811076817895296565e-01 3.344268194931459409e-02 9.514360195718862201e+01 1.633896280424299713e-02 1.067666659125044229e-02 +2.611124503286961149e-02 2.298263468043534180e-02 1.552688744779542017e-02 5.131406621758800163e-02 9.823683652981651804e+00 1.423356413171294754e+01 1.426818846137321373e+01 1.010377228922231529e-01 3.943397573685474000e-02 1.059707167467518030e+00 1.505708528514396703e-02 1.061592848702794072e-02 +3.027321811006179059e-02 2.090906503710016420e-02 1.549392418751141184e-02 5.211591820651523266e-02 1.907861421158720461e+01 3.982875342266954988e+01 9.539916115565798549e+00 8.381849562867789427e-02 5.023002411916318438e-02 2.962743961173848750e-01 1.415857787417170235e-02 1.060561927309027451e-02 +3.511032798432296709e-02 1.937795890482008412e-02 1.547509912657327701e-02 5.293507001250023769e-02 4.321355241596867103e+01 3.735458088491403572e+01 4.153179875705072277e+01 7.841189414565601090e-02 7.519260645696376755e-02 1.482530289832147963e-01 1.353285274614121798e-02 1.064312592561156984e-02 +4.060899445801981894e-02 1.822857415906288872e-02 1.546655682006061773e-02 5.374119550664043649e-02 1.040674781551658157e+02 1.684233738394795310e+01 1.117537488898372366e+01 7.676675339573656165e-02 1.704721279883171514e-01 9.555582939729698189e-02 1.311015439507628305e-02 1.072741946356229291e-02 +4.667144728166048445e-02 1.735836666634876096e-02 1.546509978292278861e-02 5.450608708497577115e-02 1.358777975349804024e+02 1.005250022248242203e+01 4.597942049597805614e+00 7.665932189636104344e-02 2.127844805909511194e+00 7.139753626349075455e-02 1.284376590625748230e-02 1.085759085570148393e-02 +5.308193970878679474e-02 1.669982233537840866e-02 1.546808794383257649e-02 5.520365272854290545e-02 8.061250237488731329e+01 7.710103699283018308e+00 3.334728482407139261e+00 7.724721697783237806e-02 7.058441193438219630e-01 5.898671971130906716e-02 1.269921465122776649e-02 1.103049494801371273e-02 +5.948322951757407245e-02 1.620754546307432570e-02 1.547336397056289260e-02 5.581025174518546017e-02 4.695524612949908771e+01 6.876125158646081204e+00 2.800701616212689871e+00 7.812197433066454810e-02 1.713187265402895121e-01 5.251270563927802615e-02 1.264697593030926145e-02 1.123719489326014363e-02 +6.538135465878641694e-02 1.585076128480505941e-02 1.547920917079983506e-02 5.630524159947256774e-02 3.209810420616700100e+01 6.651760255073678074e+00 2.513272640899699262e+00 7.903720297736140099e-02 1.130070007446836444e-01 4.947995104363155094e-02 1.265753033572654222e-02 1.145869628962462548e-02 +7.019667424277689638e-02 1.560883667296627218e-02 1.548430938877139521e-02 5.667162822870951133e-02 2.515079002397327201e+01 6.673256550764498307e+00 2.348910619904462482e+00 7.981946963536697137e-02 9.921641471015497926e-02 4.850064569026320271e-02 1.269930343759088746e-02 1.166342294325097527e-02 +7.336584761538479660e-02 1.546857185891103645e-02 1.548773736557265690e-02 5.689670989106763999e-02 2.195589271361605910e+01 6.753431812640424248e+00 2.262355028857318207e+00 8.034246835327814307e-02 9.579118969815646201e-02 4.850720176939427031e-02 1.274090308265311486e-02 1.181095471533140200e-02 +7.447344279558115732e-02 1.542260580634860663e-02 1.548894097938264061e-02 5.697262458349210829e-02 2.101822845854569977e+01 6.791223639904193199e+00 2.235208451336005542e+00 8.052607384829757464e-02 9.521342566990737000e-02 4.863074475973574312e-02 1.275789655735867084e-02 1.186507382558274135e-02 From afcd2fc09ceb86cdc125d0d3f31895a6a79492c4 Mon Sep 17 00:00:00 2001 From: RubelMozumder Date: Fri, 18 Dec 2020 11:45:13 +0100 Subject: [PATCH 13/13] Incorporatioin of the test for the Bandstructure Calc --- aiida_kkr/tests/workflows/test_bs_wc.py | 111 ++++++++++++++++++++++++ 1 file changed, 111 insertions(+) create mode 100644 aiida_kkr/tests/workflows/test_bs_wc.py diff --git a/aiida_kkr/tests/workflows/test_bs_wc.py b/aiida_kkr/tests/workflows/test_bs_wc.py new file mode 100644 index 00000000..407ba75b --- /dev/null +++ b/aiida_kkr/tests/workflows/test_bs_wc.py @@ -0,0 +1,111 @@ +#!/usr/bin/env python +# coding: utf-8 + +from __future__ import absolute_import +from __future__ import print_function +import pytest +from aiida_kkr.tests.dbsetup import * +from aiida.engine import WorkChain, if_, ToContext, submit + +@pytest.mark.usefixtures("aiida_env") +class Test_dbs_workflow(): + """ + Tests for the kkr_startpot workflow + """ + + @pytest.mark.timeout(240, method='thread') + def test_bs_wc_Cu(self): + + from aiida import get_version + from aiida.orm import Code, load_node, Dict, StructureData + from aiida.plugins import DataFactory + from aiida.orm import Computer + from aiida.orm.querybuilder import QueryBuilder + from masci_tools.io.kkr_params import kkrparams + from aiida_kkr.workflows.bs import kkr_bs_wc + from numpy import array + import numpy as np + + print('AiiDA version: {}'.format(get_version())) + Dict = DataFactory('dict') + StructureData = DataFactory('structure') + + # preparation for computer and code + kkr_codename = 'kkr' + computername = 'claix18_init' + + wfbs = kkr_bs_wc.get_wf_default() + + wfbs['NPT2'] = 12 + wfbs['EMAX'] = 5 + wfbs['EMIN'] = 10 + wfbs['RCLUSTZ'] = 2.3 + wfbs['TEMPR'] = 50.0 + + params_bs = Dict(dict=wfbs) + + # for runing in cluster or remote computer and should be rewiten for diferent computer + options1 = {'max_wallclock_seconds': 36000,'resources': + {'tot_num_mpiprocs': 48, 'num_machines': 1}, + 'custom_scheduler_commands': + '#SBATCH --account=jara0191\n\nulimit -s unlimited; export OMP_STACKSIZE=2g', + 'withmpi': + True} + + # for runing in local computer + options2 = {'queue_name' : queuename, 'resources': {"num_machines": 1}, 'max_wallclock_seconds' : 5*60, 'withmpi' : False, 'custom_scheduler_commands' : ''} + options = Dict(dict=options1) + + # The scf-workflow needs also the voronoi and KKR codes to be able to run the calulations + KKRCode = Code.get_from_string(kkr_codename+'@'+computername) + + label = 'bs calc Cu bulk' + descr = ' testing bs workflow for Cu bulk' + + from aiida.tools.importexport import import_data + + import_data('files/db_dump_bs/db_dump_kkrcalc_bs.tar.gz', silent=True) + kkr_calc_remote = load_node('d5782162-8393-4212-9340-c8ee8b725474').outputs.remote_folder + + builder = kkr_bs_wc.get_builder() + builder.metadata.description = descr + builder.metadata.label = label + builder.kkr = KKRCode#kkrhost_local_code + builder.wf_parameters = params_bs + builder.options = options + builder.remote_data = kkr_calc_remote + + from aiida.engine import run + + out = run(builder) + n = out['results_wf'] + n = n.get_dict() + assert n.get('successful') + assert n.get('list_of_errors') == [] + d = out['BS_Data'] + kpts = d.get_array('Kpts') + eng_points = d.get_array('energy_points') + BlochSpectral = d.get_array('BlochSpectralFunction') + + # Loading the data from the previous calc (run manually) with the same config + test_BSF = np.loadtxt('files/db_dump_bs/test_spectral') + test_Kpts = np.loadtxt('files/db_dump_bs/test_Kpts') + test_eng = np.loadtxt('files/db_dump_bs/test_energy_points') + # Define the error boundary + dos_limt = abs(np.amin(BlochSpectral)*1E-2) + eng_min = abs(np.amin(eng_points)*1E-7) + + differ_BSF = np.subtract(BlochSpectral,test_BSF) + shape_differ_BSF = np.shape(differ_BSF) + # shape(differ_BSF) =~ (kpts*eng) =~ (y*x) + for i in range(shape_differ_BSF[0]): + + assert sum(abs(kpts[i,:] - test_Kpts[i,:] )) < 10**-7 + for j in range(shape_differ_BSF[1]): + # here to inspect the density validity + assert dos_limt > abs(differ_BSF[i,j]) + if i==0 : + # here to inspect the energy validity + assert eng_min > abs(eng_points[j] -test_eng[j]) + +