Repository: tschoonj/xraylib (language: python)

Issue:
Update parameters
- [x] [Experimental evidence for onset of L 1–L 3 M 5 transition at Z= 75 through measurements of fluorescence and Coster–Kronig yields for W and Re](https://pubs.rsc.org/en/content/articlehtml/2021/ja/d0ja00455c?casa_token=OZ59URZb8jUAAAAA:GSGjEAxhpR2yjObHAmfPnjfHnKXKUx7KOGApnC-MacNAaLUoHgjEbjBNS5GAMVEmYkutuz89cJmeBQ)
- [x] [Experimental validation of theoretically predicted cut-off of L1-L3M4,5 transitions at Z = 50 through measurements of fluorescence and Coster-Kronig yields for Sn and Sb](https://iopscience.iop.org/article/10.1088/1681-7575/abe988/meta?casa_token=C_fdqNgWAI8AAAAA:TVgSMxNqd-4TFmKwdiuIKHfKINojybh14SMqjsHoPtcAC_Pk-qxf61agMbTnh0MHNC6X_mr_)
- [ ] [Overview and calculation of X-ray K-shell transition yields for comprehensive data libraries](https://analyticalsciencejournals.onlinelibrary.wiley.com/doi/abs/10.1002/xrs.3123)


Discussion / hints:

Fix patch:
diff --git a/data/coskron.dat b/data/coskron.dat
index 595ba504..b316c3d4 100644
--- a/data/coskron.dat
+++ b/data/coskron.dat
@@ -884,3 +884,15 @@
 90	F13	  0.620
 91	F13	  0.620
 92	F13	  0.620
+74  F12   0.109
+74  F23   0.137
+74  F13   0.360
+75  F12   0.103
+75  F23   0.113
+75  F13   0.428
+50  F12   0.070
+50  F23   0.118
+50  F13   0.405
+51  F12   0.079
+51  F23   0.124
+51  F13   0.297
\ No newline at end of file
diff --git a/data/fluor_yield.dat b/data/fluor_yield.dat
index c0356a73..d238193e 100644
--- a/data/fluor_yield.dat
+++ b/data/fluor_yield.dat
@@ -1551,3 +1551,15 @@
 96 K   0.9717
 97 K   0.9720
 98 K   0.9722
+74 L1  0.130
+74 L2  0.295
+74 L3  0.255
+75 L1  0.085
+75 L2  0.201
+75 L3  0.179
+50 L1  0.036
+50 L2  0.070
+50 L3  0.067
+51 L1  0.040
+51 L2  0.084
+51 L3  0.081
diff --git a/doc/xraydoc.txt b/doc/xraydoc.txt
index 12bf1dcc..08553805 100644
--- a/doc/xraydoc.txt
+++ b/doc/xraydoc.txt
@@ -153,7 +153,15 @@ Taken from http://physics.nist.gov/cgi-bin/Star/compos.pl using the nist-compoun
 Fluorescence yields and Coster-Kronig transition probabilities
 ==============================================================
 
-Some of the values have been replaced by those from Campbell's paper "Fluorescence yields and Coster–Kronig probabilities for the atomic L subshells. Part II: The L1 subshell revisited", Atomic Data and Nulear Data Tables (2009)
+Initial data taken from:
+
+M. Krause, C. Nestor Jr., C. Sparks Jr., and E. Ricci. X-ray fluorescence cross sections for K and L X-rays of the elements ORNL-5399. Technical report, Oak-Ridge National Laboratory, 1978.
+
+Some of the values have been replaced with newer values from
+
+* J. Campbell. Fluorescence yields and Coster–Kronig probabilities for the atomic L subshells. Part II: The L1 subshell revisited. At. Data Nucl. Data Tables, 95(1):115–124, 2009.
+* V. Ayri, S. Kaur, A. Kumar, M. Czyzycki, A. Karydas, and S. Puri. Experimental evidence for onset of l 1–l 3 m 5 transition at z= 75 through measurements of fluorescence and coster–kronig yields for w and re. Journal of Analytical Atomic Spectrometry, 36(2):380–389, 2021.
+* S. Kaur, V. Ayri, A. Kumar, M. Czyzycki, A. G. Karydas, and S. Puri. Experimental validation of theoretically predicted cut-off of L1-L3M4,5 transitions at Z= 50 through measurements of fluorescence and coster-kronig yields for Sn and Sb. Metrologia, 2021.
 
 Radionuclides
 =============
diff --git a/python/xraylib_np.pyx b/python/xraylib_np.pyx
index d3dbd4ee..bb91e8cb 100644
--- a/python/xraylib_np.pyx
+++ b/python/xraylib_np.pyx
@@ -92,7 +92,7 @@ def __send_google_analytics_launch_event():
 
     try:
         data = urllib.parse.urlencode(payload).encode()
-        connection = http.client.HTTPSConnection('www.google-analytics.com')
+        connection = http.client.HTTPSConnection('www.google-analytics.com', port=443, key_file=None, cert_file=None, timeout=1)
         connection.request('POST', '/collect', data)
         response = connection.getresponse()
     except:
diff --git a/src/xraylib.i b/src/xraylib.i
index cc0b95f2..82f9bfea 100644
--- a/src/xraylib.i
+++ b/src/xraylib.i
@@ -109,7 +109,7 @@ def __send_google_analytics_launch_event():
 
     try:
         data = urllib.parse.urlencode(payload).encode()
-        connection = http.client.HTTPSConnection('www.google-analytics.com')
+        connection = http.client.HTTPSConnection('www.google-analytics.com', port=443, key_file=None, cert_file=None, timeout=1)
         connection.request('POST', '/collect', data)
         response = connection.getresponse()
     except:


Test patch:
diff --git a/java/tests/TestCosKron.java b/java/tests/TestCosKron.java
index 3363da5c..b61b5349 100644
--- a/java/tests/TestCosKron.java
+++ b/java/tests/TestCosKron.java
@@ -19,7 +19,8 @@ public class TestCosKron {
 	static Stream<Arguments> goodValuesProvider() {
 		return Stream.of(
 			arguments(92, Xraylib.FL13_TRANS, 0.620),
-			arguments(75, Xraylib.FL12_TRANS, 1.6E-1),
+			arguments(75, Xraylib.FL12_TRANS, 1.03E-1),
+			arguments(51, Xraylib.FL23_TRANS, 1.24E-1),
 			arguments(86, Xraylib.FM45_TRANS, 6E-2),
 			arguments(109, Xraylib.FM45_TRANS, 1.02E-1),
 			arguments(92, Xraylib.FM45_TRANS, 0.088)
diff --git a/java/tests/TestFluorYield.java b/java/tests/TestFluorYield.java
index 7f0472c3..4182ad20 100644
--- a/java/tests/TestFluorYield.java
+++ b/java/tests/TestFluorYield.java
@@ -20,6 +20,8 @@ public class TestFluorYield {
 	static Stream<Arguments> goodValuesProvider() {
 		return Stream.of(
 			arguments(82, Xraylib.K_SHELL, 1.0 - Xraylib.AugerYield(82, Xraylib.K_SHELL)),
+			arguments(74, Xraylib.L3_SHELL, 0.255),
+			arguments(50, Xraylib.L1_SHELL, 0.036),
 			arguments(82, Xraylib.M3_SHELL, 0.0050475)
 		);
 	}
diff --git a/tests/test-coskron.c b/tests/test-coskron.c
index 3c28738e..d6a92a4e 100644
--- a/tests/test-coskron.c
+++ b/tests/test-coskron.c
@@ -31,7 +31,11 @@ int main(int argc, char **argv) {
 
 	coskron = CosKronTransProb(75, FL12_TRANS, &error);
 	assert(error == NULL);
-	assert(fabs(coskron - 1.6E-1) < 1E-6);
+	assert(fabs(coskron - 1.03E-1) < 1E-6);
+
+	coskron = CosKronTransProb(51, FL23_TRANS, &error);
+	assert(error == NULL);
+	assert(fabs(coskron - 1.24E-1) < 1E-6);
 
 	coskron = CosKronTransProb(86, FM45_TRANS, &error);
 	assert(error == NULL);
diff --git a/tests/test-fluor_yield.c b/tests/test-fluor_yield.c
index a7ab6715..8af92637 100644
--- a/tests/test-fluor_yield.c
+++ b/tests/test-fluor_yield.c
@@ -32,6 +32,14 @@ int main(int argc, char **argv) {
 	assert(error == NULL);
 	assert(fabs(yield - 0.0050475) < 1E-6);
 	
+	yield = FluorYield(74, L3_SHELL, &error);
+	assert(error == NULL);
+	assert(fabs(yield - 0.255) < 1E-6);
+	
+	yield = FluorYield(50, L1_SHELL, &error);
+	assert(error == NULL);
+	assert(fabs(yield - 0.036) < 1E-6);
+	
 	yield = FluorYield(-35, K_SHELL, &error);
 	assert(yield == 0.0);
 	assert(error != NULL);