Пример #1
0
def dev__defect_calculation():
    print(80*'-')
    print('{:^80}'.format('defect_calculation'))
    print(80*'-')
    simulation_dir = 'rank_test'

    testing_set = testing_set_Si_sw.get_testing_set_Si()

    configuration = PyposmatConfigurationFile()
    configuration.qois = testing_set['qoi_db'].qois
    configuration.structures = testing_set['structure_db']

    qoi_manager = QoiManager(
            qoi_database=configuration.qois,
            fullauto=False
    )
    qoi_manager.configure()
    qoi_manager.determine_tasks()

    print('qoi_manager.tasks')
    print(len('qoi_manager.tasks')*'-')
    for k,v in qoi_manager.tasks.items():
        print(k,v)

    task_manager = TaskManager(base_directory=simulation_dir)
    task_manager.configure(
            tasks = qoi_manager.tasks,
            structures = testing_set['structure_db']
    )
    task_managger.evaluate_tasks()
    
    qoi_manager.calculate_qois(
            task_results=task_manager.results
    )
    qoi_manager.qois
Пример #2
0
    def _initialize_task_manager(self):

        self.task_manager = TaskManager(
                base_directory=self.base_directory)
        self.task_manager.configure(
                tasks=self.qoi_manager.tasks,
                structures = self.structures)
Пример #3
0
    def configure_task_manager(self):
        # <-------- local variables
        _base_directory = self.base_directory
        _tasks = self.qoi_manager.tasks
        _structures = self.structures

        # <-------- configure task manager
        self.task_manager = TaskManager(base_directory=_base_directory)
        self.task_manager.configure(tasks=_tasks, structures=_structures)
def test__calculate_stacking_fault(potential,qoi_db,structure_db):
    simulation_directory = 'rank_test'

    configuration = PyposmatConfigurationFile()
    configuration.qois = qoi_db.qois
    configuration.structures = structure_db

    qoi_manager = QoiManager(qoi_database=configuration.qois,fullauto=False)
    qoi_manager.configure()
    qoi_manager.determine_tasks()

    task_manager = TaskManager(base_directory='rank_test')
    task_manager.configure(tasks=qoi_manager.tasks,structures=structure_db)
    task_manager.evaluate_tasks(parameters=potential,potential=potential)

    qoi_manager.calculate_qois(
            task_results=task_manager.results)
    qoi_manager.qois
Пример #5
0
    qoi_manager = QoiManager(
            qoi_database=configuration.qois,
            fullauto=False)
    qoi_manager.configure()
    qoi_manager.determine_tasks()

    print(80*'-')
    print('{:^80}'.format('TASKS DATABASE'))
    print(80*'-')
    for k,v in qoi_manager.tasks.items():
        tsk_name = k
        tsk_type = v['task_type']
        tsk_structure = v['task_structure']
        print(tsk_name,tsk_type,tsk_structure,tsk_structure)

    task_manager = TaskManager(base_directory='rank_test')
    task_manager.configure(
            tasks=qoi_manager.tasks,
            structures=structure_db
        )
    task_manager.evaluate_tasks(
            parameters=potential_definition,
            potential=potential_definition)

    print(80*'-')
    print('{:^80}'.format('TASK RESULTS'))
    print(80*'-')
    print(str__task_results_to_table(task_manager.results))

    print(80*'-')
    print('{:^80}'.format('INTERMEDIATE CALCULATIONS'))
 def configure_task_manager(self,task_directory,tasks,structures):
     self.task_manager = TaskManager(base_directory=task_directory)
     self.task_manager.configure(tasks=tasks,
                                 structures=structures)
        ('Ni_fcc_esf', 'Ni_fcc_esf.vasp'), 
        ('Ni_fcc_vac', 'Ni_fcc_sc_333_vac.vasp'), 
        ('Ni_fcc_o_int', 'Ni_fcc_sc_333_o_int.vasp'), 
        ('Ni_fcc_i_int', 'Ni_fcc_sc_333_t_int.vasp')]))
    ])


a0=3.52
r0=1/(2**0.5)*a0

parameters = OrderedDict()
parameters['p_NiNi_phi0'] = 1.0
parameters['p_NiNi_gamma'] = 2.0
parameters['p_NiNi_r0'] = r0
parameters['d_Ni_rho0'] = 1.0
parameters['d_Ni_beta'] = 4.0
parameters['d_Ni_r0'] = r0
parameters['e_Ni_latticetype'] = 'fcc'
parameters['e_Ni_ecoh'] = -4.45
parameters['e_Ni_B']= 188.
parameters['e_Ni_a0'] = a0

task_manager = TaskManager(base_directory=_base_directory)
task_manager.configure(
        tasks=_tasks,
        structures=_structures)
results = task_manager.evaluate_tasks(
        parameters=parameters,
        potential=pot_definition)
print(results)