TDCRPy 1.6.0__py3-none-any.whl → 1.6.2__py3-none-any.whl

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.

Potentially problematic release.


This version of TDCRPy might be problematic. Click here for more details.

@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: TDCRPy
3
- Version: 1.6.0
3
+ Version: 1.6.2
4
4
  Summary: TDCR model
5
5
  Home-page: https://github.com/RomainCoulon/TDCRPy
6
6
  Author: RomainCoulon (Romain Coulon)
@@ -1,6 +1,6 @@
1
- tdcrpy/TDCRPy.py,sha256=5imzxtIfyzkRWbfOTOvrbbyMWnjnfPIOFoWoBYN6j00,57307
1
+ tdcrpy/TDCRPy.py,sha256=02OJKQnFA3E1x4txLYNiomiDCvH_pmogosoy2vOyMC0,57647
2
2
  tdcrpy/TDCRPy1.py,sha256=ZS4riwGPyITxkg0RHxTO59yzue7uLSFa9S7UrM8NGOI,38777
3
- tdcrpy/TDCR_model_lib.py,sha256=dJ6fj-QGZazLsyKkuAV9rsNbEkeerjECtD3EOlPPJH0,75156
3
+ tdcrpy/TDCR_model_lib.py,sha256=wkVoZ8Afb-DEVDfYzpxDFZCT2xfzn-PBMw81TG6mYBs,75627
4
4
  tdcrpy/TDCRoptimize.py,sha256=Mo5vEULS1_FCEzIVyv0C6Yte6qo072HLRWETNyIs7SU,4552
5
5
  tdcrpy/__init__.py,sha256=pxZ5gMTFSEzeGQLzeRjy-Imu7bZIfhg9eqloOq5FTM4,130
6
6
  tdcrpy/config.toml,sha256=mWDY-Fm3SxO9zsYzkjt9iQGWwzOH7z4CuCN1I8ASOYA,1542
@@ -68,8 +68,8 @@ tdcrpy/docs/_build/html/source/modules.html,sha256=gJrhuEaMQHkYGewGHPWGmgVsPgVV6
68
68
  tdcrpy/docs/_build/html/source/tdcrpy.html,sha256=VZV_LFdrCCIvYBXzsZE9mZx8iGa7ZjhEsXtE8BqqU9g,90373
69
69
  tdcrpy/test/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
70
70
  tdcrpy/test/test_tdcrpy.py,sha256=dWZpfvarkr8lr_K_zUakt2AOcF0FfCOjBOQPl4vnTWc,4116
71
- TDCRPy-1.6.0.dist-info/LICENCE.md,sha256=fuYzrZRiOAjJBzA1tsGQwojCgGROArb2Ec48GDTjlWM,1086
72
- TDCRPy-1.6.0.dist-info/METADATA,sha256=rQ_NR-_ell_qDpnqRQo-mau6Ukl4l8oVRjBqAD6tLMM,15929
73
- TDCRPy-1.6.0.dist-info/WHEEL,sha256=AtBG6SXL3KF_v0NxLf0ehyVOh0cold-JbJYXNGorC6Q,92
74
- TDCRPy-1.6.0.dist-info/top_level.txt,sha256=VgPJa9YJ7fi8wrr9qDJPLhu3tK1BcFRIP6Ib4r3BEfs,7
75
- TDCRPy-1.6.0.dist-info/RECORD,,
71
+ TDCRPy-1.6.2.dist-info/LICENCE.md,sha256=fuYzrZRiOAjJBzA1tsGQwojCgGROArb2Ec48GDTjlWM,1086
72
+ TDCRPy-1.6.2.dist-info/METADATA,sha256=9RbYa5ZGqZvWXlF4JiXYq2BwLNXbWRG6B5eT8zyvsMw,15929
73
+ TDCRPy-1.6.2.dist-info/WHEEL,sha256=AtBG6SXL3KF_v0NxLf0ehyVOh0cold-JbJYXNGorC6Q,92
74
+ TDCRPy-1.6.2.dist-info/top_level.txt,sha256=VgPJa9YJ7fi8wrr9qDJPLhu3tK1BcFRIP6Ib4r3BEfs,7
75
+ TDCRPy-1.6.2.dist-info/RECORD,,
tdcrpy/TDCRPy.py CHANGED
@@ -45,9 +45,17 @@ def relaxAtom(daughter_relax,particle_vec,energy_vec,rad,Display=False,uncData=F
45
45
  particle_vec[i_part] = "Atom_L"
46
46
  tf1,ef1 = tl.relaxation_atom(daughter_relax,rad,'Atom_L',uncData=uncData)
47
47
  particle_vec.append(tf)
48
- particle_vec.append(tf1)
49
48
  energy_vec.append(ef)
49
+ particle_vec.append(tf1)
50
50
  energy_vec.append(ef1)
51
+ if tf1 == 'Auger L':
52
+ particle_vec.append("Atom_M")
53
+ particle_vec.append("Atom_M")
54
+ energy_vec.append(0)
55
+ energy_vec.append(0)
56
+ else:
57
+ particle_vec.append("Atom_M")
58
+ energy_vec.append(0)
51
59
  relaxation = True
52
60
  elif tf == "Auger KLX":
53
61
  particle_vec[i_part] = "Atom_L"
tdcrpy/TDCR_model_lib.py CHANGED
@@ -1410,6 +1410,8 @@ def read_ENSDF(rad, *, z=z_ensdf):
1410
1410
  prob_augerK = [] # enregistrer les résultats (prob d'électron auger K) d'une fille
1411
1411
  Type_augerK = []
1412
1412
  type_augerK = []
1413
+ energie_augerK = []
1414
+ Energie_augerK = []
1413
1415
 
1414
1416
  for i in range(len(posi)-1):
1415
1417
  start = posi[i]+1
@@ -1422,6 +1424,7 @@ def read_ENSDF(rad, *, z=z_ensdf):
1422
1424
  prob_str_b = [] # enregistrer les résultats (proba en str) d'un bloc
1423
1425
  prob_augerK_b = [] # enregistrer les résultats (prob d'électron auger K) d'un bloc
1424
1426
  type_augerK_b = []
1427
+ energie_augerK_b = []
1425
1428
 
1426
1429
  if start==end: # sauter les lignes blaches et continues
1427
1430
  continue
@@ -1442,7 +1445,8 @@ def read_ENSDF(rad, *, z=z_ensdf):
1442
1445
  prob_str_b.append(p1[3])
1443
1446
  continue
1444
1447
  elif '|]' in p1: # traiter un bloc qui comprend |]
1445
- if 'AUGER' in p1: # block of electron Auger
1448
+ if 'AUGER' in p1: # block of electron Auger
1449
+ energie_augerK_b.append(float(p1[2]))
1446
1450
  type_b.append('Auger K') # for electron Auger, only the block of electron Auger K has |]
1447
1451
  if len(p1)>7: # repérer la ligne qui comprend la proba totale et l'incertitude
1448
1452
  prob_str_b.append(p1[5])
@@ -1485,6 +1489,7 @@ def read_ENSDF(rad, *, z=z_ensdf):
1485
1489
  if len(prob_augerK_b)!=0: # si l'électron Auger K, enregistrer les proba dans la liste pour un noyau fils
1486
1490
  prob_augerK = prob_augerK_b
1487
1491
  type_augerK = type_augerK_b
1492
+ energie_augerK = energie_augerK_b
1488
1493
  elif len(e)==len(prob_b) and len(e)>=1: # enregistrer les valeurs au cas où sans |] et valeurs complètes
1489
1494
  for i in range(len(e)):
1490
1495
  energy.append(e[i])
@@ -1495,6 +1500,7 @@ def read_ENSDF(rad, *, z=z_ensdf):
1495
1500
  if len(prob_augerK_b)!=0: # si l'électron Auger, enregistrer les proba dans la liste pour un noyau fils
1496
1501
  prob_augerK = prob_augerK_b # pour certains cas spécifiques qui n'ont qu'un seul type d'électron Auger
1497
1502
  type_augerK = type_augerK_b
1503
+ energie_augerK = energie_augerK_b
1498
1504
  if end in index_end or end+1 in index_end: # enregistrer les résultats à la fin d'une fille
1499
1505
  Energy.append(energy)
1500
1506
  Prob.append(prob)
@@ -1503,6 +1509,7 @@ def read_ENSDF(rad, *, z=z_ensdf):
1503
1509
  Prob_str.append(prob_str)
1504
1510
  Prob_augerK.append(prob_augerK)
1505
1511
  Type_augerK.append(type_augerK)
1512
+ Energie_augerK.append(energie_augerK)
1506
1513
  energy = []
1507
1514
  prob = []
1508
1515
  type_ = []
@@ -1510,9 +1517,9 @@ def read_ENSDF(rad, *, z=z_ensdf):
1510
1517
  prob_str = []
1511
1518
  prob_augerK = []
1512
1519
  type_augerK = []
1520
+ energie_augerK = []
1513
1521
 
1514
- return daug_name,Energy,Prob,Type,Incertitude,Prob_str,Prob_augerK,Type_augerK
1515
-
1522
+ return daug_name,Energy,Prob,Type,Incertitude,Prob_str,Prob_augerK,Type_augerK,Energie_augerK
1516
1523
 
1517
1524
 
1518
1525
  def incer(prob,incer):
@@ -1581,7 +1588,7 @@ def relaxation_atom(daugther,rad,lacune='defaut',uncData=False):
1581
1588
  Energy : corresponding energy in keV.
1582
1589
 
1583
1590
  """
1584
- daug_name,Energy,Prob,Type,Incertitude,prob_str,Prob_K,Type_K = read_ENSDF(rad) # tirer les vecteurs de rad d'Ensdf
1591
+ daug_name,Energy,Prob,Type,Incertitude,prob_str,Prob_K,Type_K,Energie_augerK = read_ENSDF(rad) # tirer les vecteurs de rad d'Ensdf
1585
1592
  incertitude = incer(prob_str,Incertitude)
1586
1593
 
1587
1594
  index_daug = daug_name.index(daugther) # repérer l'indice de fille correspondante
@@ -1592,6 +1599,7 @@ def relaxation_atom(daugther,rad,lacune='defaut',uncData=False):
1592
1599
  prob_augerK = Prob_K[index_daug] # tirer le vecteur de prob 'électron auger K
1593
1600
  type_augerK = Type_K[index_daug]
1594
1601
  u_probability = np.array(incertitude[index_daug])
1602
+ energie_augerK = np.array(Energie_augerK[index_daug])
1595
1603
 
1596
1604
  if len(probability) > 0: # le cas où le vecteur de proba/energie/type n'est pas vide
1597
1605
  if 'L' in lacune: # traiter le transition de couche L
@@ -1653,6 +1661,7 @@ def relaxation_atom(daugther,rad,lacune='defaut',uncData=False):
1653
1661
  index_K = sampling(prob_AugerK)
1654
1662
  type_K = type_augerK[index_K]
1655
1663
  type_fin = 'Auger K' + type_K[1:]
1664
+ energie_fin = energie_augerK[index_K]
1656
1665
 
1657
1666
  else:
1658
1667
  # print("pas de transition de rayon X ni d'électron Auger pour cette lacune: ",lacune)
File without changes