SAMBA-ilum 1.1.0.113__tar.gz → 1.1.0.115__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/PKG-INFO +1 -1
  2. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/SAMBA_ilum.egg-info/PKG-INFO +1 -1
  3. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/__main__.py +1 -1
  4. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/HeteroStructure_Generator.py +39 -28
  5. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/cell_check.py +1 -1
  6. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/setup.py +1 -1
  7. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/LICENSE.txt +0 -0
  8. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/README.md +0 -0
  9. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/SAMBA_ilum.egg-info/SOURCES.txt +0 -0
  10. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/SAMBA_ilum.egg-info/dependency_links.txt +0 -0
  11. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/SAMBA_ilum.egg-info/entry_points.txt +0 -0
  12. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/SAMBA_ilum.egg-info/requires.txt +0 -0
  13. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/SAMBA_ilum.egg-info/top_level.txt +0 -0
  14. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/__init__.py +0 -0
  15. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/BZ_2D.py +0 -0
  16. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/Hubbard_U_values.txt +0 -0
  17. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/INCAR_a-scan +0 -0
  18. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/INCAR_bader +0 -0
  19. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/INCAR_bader.SO +0 -0
  20. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/INCAR_bands +0 -0
  21. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/INCAR_bands.SO +0 -0
  22. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/INCAR_dos +0 -0
  23. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/INCAR_dos.SO +0 -0
  24. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/INCAR_relax +0 -0
  25. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/INCAR_scf +0 -0
  26. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/INCAR_scf.SO +0 -0
  27. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/INCAR_xy-scan +0 -0
  28. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/INCAR_xyz-scan +0 -0
  29. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/INCAR_z-scan +0 -0
  30. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/SAMBA_HeteroStructure.input +0 -0
  31. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/SAMBA_WorkFlow.input +0 -0
  32. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/inputs_VASProcar/input.vasprocar.bands +0 -0
  33. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/inputs_VASProcar/input.vasprocar.chgcar +0 -0
  34. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/inputs_VASProcar/input.vasprocar.dos +0 -0
  35. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/inputs_VASProcar/input.vasprocar.location +0 -0
  36. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/inputs_VASProcar/input.vasprocar.locpot +0 -0
  37. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/inputs_VASProcar/input.vasprocar.orbitals +0 -0
  38. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/inputs_VASProcar/input.vasprocar.spin +0 -0
  39. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/INPUTS/vdw_kernel.bindat +0 -0
  40. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/_info_pseudo.py +0 -0
  41. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/a-scan.py +0 -0
  42. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/a-scan_analysis.py +0 -0
  43. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/bader +0 -0
  44. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/bader_poscar.py +0 -0
  45. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/bader_update.py +0 -0
  46. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/charge_transfer.py +0 -0
  47. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/chgsum.pl +0 -0
  48. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/contcar_update.py +0 -0
  49. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/data-base_json.py +0 -0
  50. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/data-base_union.py +0 -0
  51. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/energy_scan.py +0 -0
  52. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/hubbard_correction.py +0 -0
  53. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/job.py +0 -0
  54. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/kpoints.py +0 -0
  55. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/lattice_plot3d.py +0 -0
  56. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/make_files.py +0 -0
  57. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/output.py +0 -0
  58. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/poscar_fix_direct_coord.py +0 -0
  59. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/potcar.py +0 -0
  60. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/vdW_DF.py +0 -0
  61. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/xy-scan.py +0 -0
  62. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/xy-scan_analysis.py +0 -0
  63. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/xyz-scan.py +0 -0
  64. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/xyz-scan_analysis.py +0 -0
  65. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/z-scan.py +0 -0
  66. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/samba_ilum/src/z-scan_analysis.py +0 -0
  67. {samba_ilum-1.1.0.113 → samba_ilum-1.1.0.115}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: SAMBA_ilum
3
- Version: 1.1.0.113
3
+ Version: 1.1.0.115
4
4
  Summary: ...
5
5
  Author: Augusto de Lelis Araujo
6
6
  Author-email: augusto-lelis@outlook.com
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: SAMBA_ilum
3
- Version: 1.1.0.113
3
+ Version: 1.1.0.115
4
4
  Summary: ...
5
5
  Author: Augusto de Lelis Araujo
6
6
  Author-email: augusto-lelis@outlook.com
@@ -16,7 +16,7 @@ dir_samba = os.path.dirname(os.path.realpath(__file__))
16
16
  print(f'{dir_samba}')
17
17
  #--------------------
18
18
 
19
- version = '1.1.0.113'
19
+ version = '1.1.0.115'
20
20
 
21
21
  print(" ")
22
22
  print("=============================================================")
@@ -651,8 +651,8 @@ for s in range(len(files)):
651
651
  if (rot_angle_calc == 'A2'):
652
652
  V1 = 0.5*B1
653
653
  V2 = 0.5*B2
654
- #----------------------------------------------------------------------------
655
- angle_V12 = np.arctan2(np.cross(V2, V1), np.dot(V2, V1)) # angle in radians
654
+ #-------------------------------------------------------------------------------
655
+ angle_V12 = np.arctan2(np.cross(V2, V1)[2], np.dot(V2, V1)) # angle in radians
656
656
  angle0 = np.degrees(angle_V12)
657
657
  if (abs(angle0) == 0.0): angle0 = 0.0
658
658
  #-------------------------------------
@@ -777,8 +777,8 @@ if (n_Lattice == 3):
777
777
  #--------------------------------------------
778
778
  # Criterion: area mismatch ------------------
779
779
  #--------------------------------------------
780
- A1 = np.array([A1x[i], A1y[i]]); B1 = np.array([B1x[i], B1y[i]]); area_cell1 = np.linalg.norm(np.cross(A1, B1))
781
- A3 = np.array([A3x[j], A3y[j]]); B3 = np.array([B3x[j], B3y[j]]); area_cell3 = np.linalg.norm(np.cross(A3, B3))
780
+ A1 = np.array([A1x[i], A1y[i], 0.0]); B1 = np.array([B1x[i], B1y[i], 0.0]); area_cell1 = np.linalg.norm(np.cross(A1, B1))
781
+ A3 = np.array([A3x[j], A3y[j], 0.0]); B3 = np.array([B3x[j], B3y[j]]); area_cell3 = np.linalg.norm(np.cross(A3, B3))
782
782
  var_area_cell1 = ((area_cell3 -area_cell1)/area_cell1)*100; var_area_cell1 = round(var_area_cell1, 4)
783
783
  var_area_cell3 = ((area_cell1 -area_cell3)/area_cell3)*100; var_area_cell3 = round(var_area_cell3, 4)
784
784
  #-------------------------------------------------------------------------------
@@ -793,7 +793,7 @@ if (n_Lattice == 3):
793
793
  if (rot_angle_calc == 'A2'):
794
794
  V1 = 0.5*B1
795
795
  V3 = 0.5*B3
796
- angle_V13 = np.arctan2(np.cross(V3, V1), np.dot(V3, V1)) # angle in radians
796
+ angle_V13 = np.arctan2(np.cross(V3, V1)[2], np.dot(V3, V1)) # angle in radians
797
797
  angle2 = np.degrees(angle_V13)
798
798
  if (abs(angle2) == 0.0): angle2 = 0.0
799
799
  #-----------------------------------------------------------------
@@ -1105,23 +1105,23 @@ if (n_test == 1):
1105
1105
  poscar1 = open(diret + 'Lattice1' + '/' + dir_temp_m + '/' + '/POSCAR_' + str(i+1) + '.vasp', "r")
1106
1106
  poscar2 = open(diret + 'Lattice2' + '/' + dir_temp_m + '/' + '/POSCAR_' + str(i+1) + '.vasp', "r")
1107
1107
  if (n_Lattice == 3): poscar3 = open(diret + 'Lattice3' + '/' + dir_temp_m + '/' + '/POSCAR_' + str(i+1) + '.vasp', "r")
1108
- #----------------------------------------------------------------------------------------------
1108
+ #-----------------------------------------------------------------------------------------------------------------------
1109
1109
  VTemp = poscar1.readline()
1110
1110
  VTemp = poscar1.readline(); param = float(VTemp)
1111
- A = poscar1.readline().split(); A1 = np.array([ float(A[0])*param, float(A[1])*param ])
1112
- B = poscar1.readline().split(); B1 = np.array([ float(B[0])*param, float(B[1])*param ])
1113
- #--------------------------------------------------------------------------------------
1111
+ A = poscar1.readline().split(); A1 = np.array([float(A[0])*param, float(A[1])*param, 0.0])
1112
+ B = poscar1.readline().split(); B1 = np.array([float(B[0])*param, float(B[1])*param, 0.0])
1113
+ #-----------------------------------------------------------------------------------------
1114
1114
  VTemp = poscar2.readline()
1115
1115
  VTemp = poscar2.readline(); param = float(VTemp)
1116
- A = poscar2.readline().split(); A2 = np.array([ float(A[0])*param, float(A[1])*param ])
1117
- B = poscar2.readline().split(); B2 = np.array([ float(B[0])*param, float(B[1])*param ])
1118
- #--------------------------------------------------------------------------------------
1116
+ A = poscar2.readline().split(); A2 = np.array([float(A[0])*param, float(A[1])*param, 0.0])
1117
+ B = poscar2.readline().split(); B2 = np.array([float(B[0])*param, float(B[1])*param, 0.0])
1118
+ #-----------------------------------------------------------------------------------------
1119
1119
  if (n_Lattice == 3):
1120
1120
  VTemp = poscar3.readline()
1121
1121
  VTemp = poscar3.readline(); param = float(VTemp)
1122
- A = poscar3.readline().split(); A3 = np.array([ float(A[0])*param, float(A[1])*param ])
1123
- B = poscar3.readline().split(); B3 = np.array([ float(B[0])*param, float(B[1])*param ])
1124
- #-----------------------------------------------------------------------------------------
1122
+ A = poscar3.readline().split(); A3 = np.array([float(A[0])*param, float(A[1])*param, 0.0])
1123
+ B = poscar3.readline().split(); B3 = np.array([float(B[0])*param, float(B[1])*param, 0.0])
1124
+ #--------------------------------------------------------------------------------------------
1125
1125
  if (rot_angle_calc == 'center_cell'):
1126
1126
  V1 = 0.5*A1 + 0.5*B1; V2 = 0.5*A2 + 0.5*B2
1127
1127
  if (n_Lattice == 3): V3 = 0.5*A3 + 0.5*B3
@@ -1133,8 +1133,8 @@ if (n_test == 1):
1133
1133
  if (rot_angle_calc == 'A2'):
1134
1134
  V1 = 0.5*B1; V2 = 0.5*B2
1135
1135
  if (n_Lattice == 3): V3 = 0.5*B3
1136
- #-------------------------------------------------------
1137
- angle_V12 = np.arctan2(np.cross(V2, V1), np.dot(V2, V1)) # angle in radians
1136
+ #-------------------------------------------------------------------------------
1137
+ angle_V12 = np.arctan2(np.cross(V2, V1)[2], np.dot(V2, V1)) # angle in radians
1138
1138
  angle0 = np.degrees(angle_V12)
1139
1139
  if (abs(angle0) == 0.0): angle0 = 0.0
1140
1140
  #-----------------------------------------------------------------
@@ -1155,7 +1155,7 @@ if (n_test == 1):
1155
1155
  angle1 = round(angle1, 4)
1156
1156
  #=================================================================
1157
1157
  if (n_Lattice == 3):
1158
- angle_V13 = np.arctan2(np.cross(V3, V1), np.dot(V3, V1)) # angle in radians
1158
+ angle_V13 = np.arctan2(np.cross(V3, V1)[2], np.dot(V3, V1)) # angle in radians
1159
1159
  angle2 = np.degrees(angle_V13)
1160
1160
  if (abs(angle2) == 0.0): angle2 = 0.0
1161
1161
  #-----------------------------------------------------------------
@@ -1241,12 +1241,12 @@ if (n_test == 1):
1241
1241
  #----------------------------------------------------------------------------------------------------------------
1242
1242
  # Aligning the cells of the different lattices ------------------------------------------------------------------
1243
1243
  #----------------------------------------------------------------------------------------------------------------
1244
- theta = angle_V12; rotation_matrix = np.array([[np.cos(theta), -np.sin(theta)], [np.sin(theta), np.cos(theta)]])
1244
+ theta = angle_V12; rotation_matrix = np.array([ [np.cos(theta), -np.sin(theta), 0], [np.sin(theta), np.cos(theta), 0], [0, 0, 1] ])
1245
1245
  A2_rotated = np.dot(rotation_matrix, A2)
1246
1246
  B2_rotated = np.dot(rotation_matrix, B2)
1247
1247
  #---------------------------------------
1248
1248
  if (n_Lattice == 3):
1249
- theta = angle_V13; rotation_matrix = np.array([[np.cos(theta), -np.sin(theta)], [np.sin(theta), np.cos(theta)]])
1249
+ theta = angle_V13; rotation_matrix = np.array([ [np.cos(theta), -np.sin(theta), 0], [np.sin(theta), np.cos(theta), 0], [0, 0, 1] ])
1250
1250
  A3_rotated = np.dot(rotation_matrix, A3)
1251
1251
  B3_rotated = np.dot(rotation_matrix, B3)
1252
1252
  #-------------------------------------------------------
@@ -1275,7 +1275,7 @@ if (n_test == 1):
1275
1275
  mod_A_int = np.linalg.norm(A_int)
1276
1276
  mod_B_int = np.linalg.norm(B_int)
1277
1277
  Area_int = np.linalg.norm(np.cross(A_int, B_int))
1278
- angle_int = np.arctan2(np.cross(A_int,B_int), np.dot(A_int,B_int))
1278
+ angle_int = np.arctan2(np.cross(A_int,B_int)[2], np.dot(A_int,B_int))
1279
1279
 
1280
1280
  #-----------------------------------------------------------------------------------------------------------
1281
1281
  # Use of temporary vectors (A,B) to estimate the deformation applied to the original cells -----------------
@@ -1881,13 +1881,6 @@ while n_exclusion_cont != 2:
1881
1881
  n_structures = len(files)
1882
1882
  #------------------------
1883
1883
 
1884
- print(f'=================================')
1885
- print(f'{n_exclusion} cells were filtered/excluded')
1886
- print(f'---------------------------------')
1887
- if (n_structures == 1): print(f'Only one cell was found')
1888
- if (n_structures > 1): print(f'{n_structures} cells were found')
1889
- print(f'=================================')
1890
-
1891
1884
  if (n_exclusion != 0): n_exclusion_cont = 0
1892
1885
  if (n_exclusion == 0): n_exclusion_cont += 1
1893
1886
  if (n_structures == 1): n_exclusion_cont = 2
@@ -1995,8 +1988,25 @@ for i in range(len(files)):
1995
1988
  #------------------------------------------------------
1996
1989
  with open(new_name, 'w') as file: file.writelines(line)
1997
1990
  #------------------------------------------------------
1991
+ nions = int(n_ion.replace("atoms",""))
1992
+ if (nions < ions_crit_i or nions > ions_crit_f):
1993
+ n_exclusion_cont += 1
1994
+ os.remove(new_name)
1995
+
1996
+ #-------------------------
1997
+ files = os.listdir(diret2)
1998
+ n_structures = len(files)
1999
+ #------------------------
2000
+
2001
+ #==========================================
2002
+ print(f'---------------------------------')
2003
+ print(f'{n_exclusion} cells were filtered/excluded')
2004
+ if (n_structures == 1): print(f'Only one cell was found')
2005
+ if (n_structures > 1): print(f'{n_structures} cells were found')
2006
+ #==========================================
1998
2007
 
1999
2008
 
2009
+ """
2000
2010
  #=====================================================================
2001
2011
  # Adjusting direct coordinates of lattices ===========================
2002
2012
  #=====================================================================
@@ -2124,6 +2134,7 @@ print(f"\rProgress completed !{' ' * 60}")
2124
2134
  shutil.rmtree(dir1)
2125
2135
  os.rename(dir2,dir1)
2126
2136
  #-------------------
2137
+ """
2127
2138
 
2128
2139
 
2129
2140
  print(f' ')
@@ -4,7 +4,7 @@
4
4
  print("==================================")
5
5
  print("Wait a moment ====================")
6
6
  print("==================================")
7
- print("")
7
+ # print("")
8
8
 
9
9
 
10
10
  from pymatgen.io.vasp import Poscar
@@ -6,7 +6,7 @@ import json
6
6
 
7
7
  setup(
8
8
  name = "SAMBA_ilum",
9
- version = "1.1.0.113",
9
+ version = "1.1.0.115",
10
10
  entry_points={'console_scripts': ['samba_ilum = samba_ilum:main']},
11
11
  description = "...",
12
12
  author = "Augusto de Lelis Araujo",
File without changes
File without changes