Пример #1
0
def test_fleurinp_modifier2(create_fleurinp, inpxml_etree):
    """Tests if fleurinp_modifier with various other modifations methods,
    the detailed tests for method functionality is tested elsewhere."""
    from aiida_fleur.tools.xml_util import eval_xpath
    fleurinp_tmp = create_fleurinp(inpxmlfilefolder)
    etree = inpxml_etree(inpxmlfilefolder)

    fm = FleurinpModifier(fleurinp_tmp)

    actions = fm.get_avail_actions()
    assert isinstance(actions, dict)

    new_tag = eval_xpath(etree, '/fleurInput/calculationSetup/scfLoop')
    fm.delete_tag('/fleurInput/calculationSetup/scfLoop')
    fm.replace_tag('/fleurInput/calculationSetup/cutoffs', new_tag)
    fm.delete_att('/fleurInput/calculationSetup/soc', 'theta')
    fm.create_tag('/fleurInput/calculationSetup/soc', 'theta')
    fm.xml_set_all_text('/fleurInput/cell/symmetryOperations/symOp/row-1', 'test text')
    fm.xml_set_text_occ('/fleurInput/cell/symmetryOperations/symOp/row-1', 'test text')
    fm.xml_set_text('/fleurInput/cell/symmetryOperations/symOp/row-1', 'test text')
    fm.xml_set_all_attribv('/fleurInput/calculationSetup/soc', 'theta', 12)
    fm.xml_set_first_attribv('/fleurInput/calculationSetup/soc', 'theta', 12)
    fm.xml_set_attribv_occ('/fleurInput/calculationSetup/soc', 'theta', 12)
    fm.set_species_label('                 222', {'mtSphere': {'radius': 3.333}})
    fm.set_atomgr_att_label(attributedict={'force': [('relaxXYZ', 'FFF')]}, atom_label='                 222')
    fm.set_atomgr_att(attributedict={'force': [('relaxXYZ', 'TFF')]}, species='Fe-1')

    fm.set_nkpts(500, gamma='T')
    fm.set_kpath({'gamma': (0, 0, 0), 'L': (0.1, 0.1, 0.1)}, 300)
    fm.add_num_to_att('/fleurInput/calculationSetup/soc', 'theta', 4)
    #fm.set_species1
    fm.show()
Пример #2
0
change_dict = {'dos': True, 'ndir' : -1, 'minEnergy' : -0.8,
               'maxEnergy' : 0.8, 'sigma' : 0.005}

fleurmode.set_inpchanges(change_dict)
if tria:
    change_dict = {'mode': 'tria'}
    fleurmode.set_inpchanges(change_dict)
if nkpts:
    fleurmode.set_nkpts(count=nkpts)

'''
fleurmode.set_species('W-1', {'radius' : 3.5})
fleurmode.change_atom('forces', True, position=(0.0, 0.0, 0.0))
fleurmode.set_xpath('/fleurinput/@dos', True)
'''
'''
name = 'Na-1'
xpathn = '/fleurInput/atomSpecies/species[@name = "{}"]/mtSphere'.format(name)# 'radius':
attributename = 'radius'
attribv = 0.0000
fleurmode.xml_set_all_attribv(xpathn, attributename, attribv)

xpathn = '/fleurInput/atomSpecies/species/mtSphere'
xpathn = '/fleurInput'
#attribv = [0.0000, '1.2', 3.4]
#fleurmode.xml_set_all_attribv(xpathn, attributename, attribv)


#fleurmode.xml_set_attribv_occ(xmltree, xpathn, attributename, attribv, occ=[0])
#fleurmode.xml_set_first_attribv(xmltree, xpathn, attributename, attribv)
xpathn = '/fleurInput/atomSpecies/species[@name = "{}"]/mtSphere/@radius'.format(name)# 'radius':