SAMBA-ilum 1.0.0.542__tar.gz → 1.0.0.544__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.0.0.542 → samba_ilum-1.0.0.544}/PKG-INFO +1 -1
  2. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/SAMBA_ilum.egg-info/PKG-INFO +1 -1
  3. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/SAMBA_ilum.egg-info/SOURCES.txt +1 -0
  4. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/__main__.py +19 -7
  5. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/cell_check.py +1 -1
  6. samba_ilum-1.0.0.544/samba_ilum/src/poscar_fix_direct_coord.py +117 -0
  7. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/setup.py +1 -1
  8. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/LICENSE.txt +0 -0
  9. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/README.md +0 -0
  10. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/SAMBA_ilum.egg-info/dependency_links.txt +0 -0
  11. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/SAMBA_ilum.egg-info/entry_points.txt +0 -0
  12. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/SAMBA_ilum.egg-info/requires.txt +0 -0
  13. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/SAMBA_ilum.egg-info/top_level.txt +0 -0
  14. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/__init__.py +0 -0
  15. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/BZ_2D.py +0 -0
  16. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/HeteroStructure_Generator.py +0 -0
  17. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/Hubbard_U_values.txt +0 -0
  18. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/INCAR_a-scan +0 -0
  19. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/INCAR_bader +0 -0
  20. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/INCAR_bader.SO +0 -0
  21. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/INCAR_bands +0 -0
  22. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/INCAR_bands.SO +0 -0
  23. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/INCAR_dos +0 -0
  24. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/INCAR_dos.SO +0 -0
  25. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/INCAR_relax +0 -0
  26. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/INCAR_scf +0 -0
  27. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/INCAR_scf.SO +0 -0
  28. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/INCAR_xy-scan +0 -0
  29. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/INCAR_xyz-scan +0 -0
  30. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/INCAR_z-scan +0 -0
  31. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/SAMBA_HeteroStructure.input +0 -0
  32. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/SAMBA_WorkFlow.input +0 -0
  33. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/inputs_VASProcar/input.vasprocar.bands +0 -0
  34. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/inputs_VASProcar/input.vasprocar.chgcar +0 -0
  35. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/inputs_VASProcar/input.vasprocar.dos +0 -0
  36. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/inputs_VASProcar/input.vasprocar.location +0 -0
  37. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/inputs_VASProcar/input.vasprocar.locpot +0 -0
  38. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/inputs_VASProcar/input.vasprocar.orbitals +0 -0
  39. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/inputs_VASProcar/input.vasprocar.spin +0 -0
  40. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/INPUTS/vdw_kernel.bindat +0 -0
  41. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/_info_pseudo.py +0 -0
  42. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/a-scan.py +0 -0
  43. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/a-scan_analysis.py +0 -0
  44. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/bader +0 -0
  45. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/bader_poscar.py +0 -0
  46. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/bader_update.py +0 -0
  47. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/charge_transfer.py +0 -0
  48. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/chgsum.pl +0 -0
  49. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/contcar_update.py +0 -0
  50. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/data-base_json.py +0 -0
  51. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/data-base_union.py +0 -0
  52. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/energy_scan.py +0 -0
  53. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/hubbard_correction.py +0 -0
  54. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/job.py +0 -0
  55. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/kpoints.py +0 -0
  56. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/lattice_plot3d.py +0 -0
  57. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/make_files.py +0 -0
  58. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/output.py +0 -0
  59. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/potcar.py +0 -0
  60. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/vdW_DF.py +0 -0
  61. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/xy-scan.py +0 -0
  62. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/xy-scan_analysis.py +0 -0
  63. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/xyz-scan.py +0 -0
  64. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/xyz-scan_analysis.py +0 -0
  65. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/z-scan.py +0 -0
  66. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/samba_ilum/src/z-scan_analysis.py +0 -0
  67. {samba_ilum-1.0.0.542 → samba_ilum-1.0.0.544}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: SAMBA_ilum
3
- Version: 1.0.0.542
3
+ Version: 1.0.0.544
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.0.0.542
3
+ Version: 1.0.0.544
4
4
  Summary: ...
5
5
  Author: Augusto de Lelis Araujo
6
6
  Author-email: augusto-lelis@outlook.com
@@ -31,6 +31,7 @@ samba_ilum/src/kpoints.py
31
31
  samba_ilum/src/lattice_plot3d.py
32
32
  samba_ilum/src/make_files.py
33
33
  samba_ilum/src/output.py
34
+ samba_ilum/src/poscar_fix_direct_coord.py
34
35
  samba_ilum/src/potcar.py
35
36
  samba_ilum/src/vdW_DF.py
36
37
  samba_ilum/src/xy-scan.py
@@ -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.0.0.542'
19
+ version = '1.0.0.544'
20
20
 
21
21
  print(" ")
22
22
  print("=============================================================")
@@ -125,12 +125,17 @@ if (tarefa == 1):
125
125
  separacao2 = separation_2
126
126
 
127
127
 
128
- #======================================================
129
- # Checking the structure of POSCAR files, regarding the
130
- # rotation angle in relation to the z-axis ============
131
- #======================================================
128
+ #=============================================================
129
+ # Fixing the coordinates of POSCAR files in direct form ======
130
+ #=============================================================
131
+ dir_files_in = dir_poscar
132
+ exec(open(dir_codes + '/poscar_fix_direct_coord.py').read())
133
+ #=============================================================
134
+ # Checking the structure of POSCAR files, regarding the ======
135
+ # rotation angle in relation to the z-axis ===================
136
+ #=============================================================
132
137
  exec(open(dir_codes + '/cell_check.py').read())
133
- #======================================================
138
+ #=============================================================
134
139
 
135
140
 
136
141
  if (loop_ht == 1):
@@ -283,8 +288,15 @@ if (tarefa == 2):
283
288
  if (type[j] == 'com_SO'): rot = '.SO'
284
289
  if (tasks[i] != 'a-scan' and tasks[i] != 'z-scan' and tasks[i] != 'xy-scan' and tasks[i] != 'xyz-scan' and tasks[i] != 'relax'): task.append(tasks[i] + rot)
285
290
  #--------------------------------------------------------------------------------------------------------------------------------------------------------------------
291
+
292
+ #=============================================================
293
+ # Fixing the coordinates of POSCAR files in direct form ======
294
+ #=============================================================
295
+ dir_files_in = 'Structures'
296
+ exec(open(dir_codes + '/poscar_fix_direct_coord.py').read())
297
+ #=============================================================
286
298
  exec(open(dir_codes + '/make_files.py').read())
287
- #----------------------------------------------
299
+ #=============================================================
288
300
 
289
301
 
290
302
  if (tarefa == 3): shutil.copytree(dir_codes + '/INPUTS', dir_files + '/WorkFlow_INPUTS')
@@ -177,7 +177,7 @@ for name in files0:
177
177
  menor_0 = min(angulos_z) if angulos_z else 0.0
178
178
  menor_1 = min(angulos_z_na_origem) if angulos_z_na_origem else 0.0
179
179
  #--------------------------------------------------------------------
180
- # If there is a difference, calculate, correct and save the new file.
180
+ # If there is a difference, the rotation angle position is fixed ----
181
181
  #--------------------------------------------------------------------
182
182
  if (menor_0 != menor_1 and menor_0 != 0.0):
183
183
  axis_correction += 1
@@ -0,0 +1,117 @@
1
+ # SAMBA_ilum Copyright (C) 2025 - Closed source
2
+
3
+
4
+ import numpy as np
5
+ import shutil
6
+ import glob
7
+ import sys
8
+ import os
9
+
10
+
11
+ #------------------------------------------------------
12
+ # Function to delete hidden files ---------------------
13
+ #------------------------------------------------------
14
+ def delete_hidden_files(target_directory):
15
+ search_files = os.path.join(target_directory, '.*')
16
+ for item in glob.glob(search_files):
17
+ try:
18
+ if os.path.isfile(item): os.remove(item)
19
+ except OSError: pass
20
+
21
+
22
+ #------------------------------------------------------
23
+ # Listing files inside the "dir_files_in" directory ---
24
+ #------------------------------------------------------
25
+ poscar_dir_path = os.path.join(dir_files, dir_files_in)
26
+ #-----------------------------------
27
+ delete_hidden_files(poscar_dir_path)
28
+ files0 = [name for name in os.listdir(poscar_dir_path) if os.path.isfile(os.path.join(poscar_dir_path, name))]
29
+
30
+
31
+ #======================================================
32
+ # Checking/Correcting POSCAR files ====================
33
+ #======================================================
34
+ poscar_backup_dir_path = os.path.join(dir_files, 'POSCAR_Backup_temp')
35
+ os.rename(poscar_dir_path, poscar_backup_dir_path)
36
+ os.makedirs(poscar_dir_path, exist_ok=True)
37
+ #------------------------------------------
38
+ files1 = [name for name in os.listdir(poscar_backup_dir_path) if os.path.isfile(os.path.join(poscar_backup_dir_path, name))]
39
+ for file_in in files1:
40
+ #-------------------
41
+ type_poscar = 'none'
42
+ poscar_in = open(poscar_backup_dir_path + '/' + file_in, "r")
43
+ for i in range(8): VTemp = poscar_in.readline().split()
44
+ if (VTemp[0][0] == 'D' or VTemp[0][0] == 'd'): type_poscar = 'direct'
45
+ if (VTemp[0][0] == 'C' or VTemp[0][0] == 'c'): type_poscar = 'cartesian'
46
+ if (VTemp[0][0] == 'S' or VTemp[0][0] == 's'): type_poscar = 'selective'
47
+ poscar_in.close()
48
+ #----------------
49
+
50
+ if (type_poscar != 'cartesian'): shutil.copy2(poscar_backup_dir_path + '/' + file_in, poscar_dir_path + '/' + file_in)
51
+
52
+ if (type_poscar == 'cartesian'):
53
+ #-------------------------------------------------------------
54
+ poscar_in = open(poscar_backup_dir_path + '/' + file_in, "r")
55
+ poscar_out = open(poscar_dir_path + '/' + file_in, "w")
56
+ #------------------------------------------------------
57
+ VTemp = poscar_in.readline()
58
+ poscar_out.write(f'{VTemp}')
59
+ #------------------------------------------------------------
60
+ VTemp = poscar_in.readline().split(); param = float(VTemp[0])
61
+ poscar_out.write(f'1.0 \n')
62
+ #-----------------------------------
63
+ VTemp = poscar_in.readline().split()
64
+ A1x = float(VTemp[0])*param
65
+ A1y = float(VTemp[1])*param
66
+ A1z = float(VTemp[2])*param
67
+ poscar_out.write(f'{A1x:.16} {A1y:.16} {A1z:.16} \n')
68
+ #----------------------------------------------------
69
+ VTemp = poscar_in.readline().split()
70
+ A2x = float(VTemp[0])*param
71
+ A2y = float(VTemp[1])*param
72
+ A2z = float(VTemp[2])*param
73
+ poscar_out.write(f'{A2x:.16} {A2y:.16} {A2z:.16} \n')
74
+ #----------------------------------------------------
75
+ VTemp = poscar_in.readline().split()
76
+ A3x = float(VTemp[0])*param
77
+ A3y = float(VTemp[1])*param
78
+ A3z = float(VTemp[2])*param
79
+ poscar_out.write(f'{A3x:.16} {A3y:.16} {A3z:.16} \n')
80
+ #----------------------------------------------------
81
+ VTemp = poscar_in.readline()
82
+ poscar_out.write(f'{VTemp}')
83
+ #---------------------------
84
+ nions = 0
85
+ VTemp = poscar_in.readline()
86
+ poscar_out.write(f'{VTemp}')
87
+ VTemp = VTemp.split()
88
+ for i in range(len(VTemp)): nions += int(VTemp[i])
89
+ #-------------------------------------------------
90
+ VTemp = poscar_in.readline()
91
+ poscar_out.write(f'Direct \n')
92
+ #-----------------------------
93
+ a = np.array([A1x, A1y, A1z])
94
+ b = np.array([A2x, A2y, A2z])
95
+ c = np.array([A3x, A3y, A3z])
96
+ T = np.linalg.inv(np.array([a, b, c]).T) # Defines the transformation matrix
97
+ #---------------------------------------
98
+ for i in range(nions):
99
+ #-----------------------------------
100
+ VTemp = poscar_in.readline().split()
101
+ x = float(VTemp[0])*param
102
+ y = float(VTemp[1])*param
103
+ z = float(VTemp[2])*param
104
+ #------------------------
105
+ r = np.array([x, y, z]) # Defines the Cartesian position of the atom
106
+ f = np.dot(T, r) # Calculates fractional position
107
+ f = f % 1.0
108
+ #-------------------------------------------------------
109
+ poscar_out.write(f'{f[0]:.16} {f[1]:.16} {f[2]:.16} \n')
110
+ #-----------------------------------------------------------
111
+ poscar_in.close()
112
+ poscar_out.close()
113
+ #-----------------
114
+
115
+ #===============================
116
+ os.rmdir(poscar_backup_dir_path)
117
+ #===============================
@@ -6,7 +6,7 @@ import json
6
6
 
7
7
  setup(
8
8
  name = "SAMBA_ilum",
9
- version = "1.0.0.542",
9
+ version = "1.0.0.544",
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