Skip to content

functionalize

esta.general.functionalize

functionalize(attach_to_atoms_list, pos, label, fdist=None)

functionalize the atoms in poscar file format according to the list of atoms given in attach_to_atoms_list

Parameters:

  • attach_to_atoms_list

    list of atoms to be functionalized, a pair of atoms in a list is input; the first atom in the list is functionalised, and the second atom in the list provide a sense of direction for the functionalization; for example: attach_to_atoms_list = [ ['8','28'], ['15','2'], ['16','1'], ['23','4'] ]

  • cell

    cell lattice vectors of the shape (3,3); e.g. np.array([lv1, lv2, lv3]) lv1 is lattice vector of length 3, similary lv2, lv3!!

  • pos

    atomic positions in the initial poscar file

  • label

    atomic labelols in the poscar file

  • fdist

    functionalixation distance (default is 0.65 Ang)

Returns:

  • new_pos ( array of rank2 ) –

    new atomic positions with additional atoms

  • new_label ( list of str ) –

    atomic labelols with additional ones in the poscar file

functionalize_with_direction(attach_to_atoms_list, pos, label, fun_atoms=None, fdist=None)

functionalize the atoms in poscar file format according to the list of atoms given in attach_to_atoms_list

Parameters:

  • attach_to_atoms_list

    list of atoms to be functionalized the first atom in the list is functionalised, and the second list element in the sense of direction for the functionalization; for example: [ ['1','z'], ['8','z']] what about this -- [ ['1,2,3,4','z'], ['8','z']] .. to do!!

  • cell

    cell lattice vectors of the shape (3,3); e.g. np.array([lv1, lv2, lv3]) lv1 is lattice vector of length 3, similary lv2, lv3!!

  • pos

    atomic positions in the initial poscar file

  • label

    atomic labelols in the poscar file

  • fun_atoms

    list of atoms to be functionalized; e.g ['H'] only one type of atom is implementor; for something like ['H', 'F', 'Cl'] ... todo!!

  • fdist (float(optional), default: None ) –

    distance of functionalization (default is 0.99 Ang)

Returns:

  • new_pos ( array of rank2 ) –

    new atomic positions with additional atoms

  • new_label ( list of str ) –

    atomic labelols with additional ones in the poscar file