skinoptics 0.0.1b5__py3-none-any.whl → 0.0.1b7__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.
skinoptics/__init__.py CHANGED
@@ -1,5 +1,5 @@
1
1
  '''
2
- Copyright (C) 2024 Victor Lima
2
+ Copyright (C) 2024-2025 Victor Lima
3
3
 
4
4
  | This program is free software: you can redistribute it and/or modify
5
5
  | it under the terms of the GNU General Public License as published by
@@ -17,18 +17,15 @@ Copyright (C) 2024 Victor Lima
17
17
  | Victor Lima
18
18
  | victorporto\@ifsc.usp.br
19
19
  | victor.lima\@ufscar.br
20
+ | victorportog.github.io
20
21
 
21
- | Release Date:
22
- | October 2024
23
- | Last Modification:
22
+ | Release date:
24
23
  | October 2024
24
+ | Last modification:
25
+ | March 2025
25
26
 
26
27
  | Version History:
27
- | 0.0.1b1 - release date: 2024 October 10
28
- | 0.0.1b2 - release date: 2024 October 18
29
- | 0.0.1b3 - release date: 2024 October 18
30
- | 0.0.1b4 - release date: 2024 October 18
31
- | 0.0.1b5 - release date: 2024 October 18
28
+ | available at <https://pypi.org/project/skinoptics/#history>
32
29
  '''
33
30
 
34
31
  __all__ = ['utils', 'dataframes',
@@ -39,10 +36,10 @@ __all__ = ['utils', 'dataframes',
39
36
  __version__major = '0'
40
37
  __version__minor = '0'
41
38
  __version__micro = '1'
42
- __version__suffix = 'b5'
39
+ __version__suffix = 'b7'
43
40
 
44
41
  __author__ = "Victor Lima"
45
- __copyright__ = "Copyright (c) 2024 Victor Lima"
42
+ __copyright__ = "Copyright (c) 2024-2025 Victor Lima"
46
43
  __license__ = "GNU General Public License v3.0"
47
44
  __maintainer__ = "Victor Lima"
48
45
  __version__ = '.'.join((__version__major, __version__minor, __version__micro)) + __version__suffix
@@ -1,6 +1,6 @@
1
1
  '''
2
2
  | SkinOptics
3
- | Copyright (C) 2024 Victor Lima
3
+ | Copyright (C) 2024-2025 Victor Lima
4
4
 
5
5
  | This program is free software: you can redistribute it and/or modify
6
6
  | it under the terms of the GNU General Public License as published by
@@ -18,10 +18,11 @@
18
18
  | Victor Lima
19
19
  | victorporto\@ifsc.usp.br
20
20
  | victor.lima\@ufscar.br
21
+ | victorportog.github.io
21
22
 
22
- | Release Date:
23
+ | Release date:
23
24
  | October 2024
24
- | Last Modification:
25
+ | Last modification:
25
26
  | October 2024
26
27
 
27
28
  | References:
@@ -482,8 +483,8 @@ def molarext_bil_Li(lambda0):
482
483
  r'''
483
484
  | The molar extinction coefficient of BILIRUBIN in chloroform as a function of wavelength.
484
485
  | Linear interpolation of experimental data obtained with a Cary 3 by J. Li on 1997,
485
- | scaled to match 55,000 cm^-1 M^-1 at 450.8 nm [AF90] and publicly available by S. Jacques and
486
- | S. Prahl at <https://omlc.org/spectra/PhotochemCAD/html/119.html>.
486
+ | scaled to match 55,000 cm^-1 M^-1 at 450.8 nm [AF90] and publicly available by S. Prahl
487
+ | at <https://omlc.org/spectra/PhotochemCAD/html/119.html>.
487
488
  | The data is also available at PhotochemCAD [TL23]
488
489
  | <https://www.photochemcad.com/databases/common-compounds/oligopyrroles/bilirubin>.
489
490
 
@@ -539,8 +540,7 @@ def mua_wat_Hale(lambda0):
539
540
  r'''
540
541
  | The absorption coefficient of WATER as a function of wavelength.
541
542
  | Linear interpolation of data from Hale & Querry 1973 [HQ73] collected and processed
542
- | by S. Jacques and S. Prahl and publicly available at
543
- | <https://omlc.org/spectra/water/abs/index.html>.
543
+ | by S. Prahl and publicly available at <https://omlc.org/spectra/water/abs/index.html>.
544
544
 
545
545
  wavelength range: [200 nm, 200 μm]
546
546
 
@@ -560,8 +560,7 @@ def mua_wat_Segelstein(lambda0):
560
560
  r'''
561
561
  | The absorption coefficient of WATER as a function of wavelength.
562
562
  | Linear interpolation of data from D. J. Segelstein's M.S. Thesis 1981 [S81],
563
- | collected by S. Jacques and S. Prahl and publicly available at
564
- | <https://omlc.org/spectra/water/abs/index.html>.
563
+ | collected by S. Prahl and publicly available at <https://omlc.org/spectra/water/abs/index.html>.
565
564
 
566
565
  | wavelength range: [10 nm, 10 m].
567
566
 
@@ -1,6 +1,6 @@
1
1
  '''
2
2
  | SkinOptics
3
- | Copyright (C) 2024 Victor Lima
3
+ | Copyright (C) 2024-2025 Victor Lima
4
4
 
5
5
  | This program is free software: you can redistribute it and/or modify
6
6
  | it under the terms of the GNU General Public License as published by
@@ -18,10 +18,11 @@
18
18
  | Victor Lima
19
19
  | victorporto\@ifsc.usp.br
20
20
  | victor.lima\@ufscar.br
21
+ | victorportog.github.io
21
22
 
22
- | Release Date:
23
+ | Release date:
23
24
  | October 2024
24
- | Last Modification:
25
+ | Last modification:
25
26
  | October 2024
26
27
 
27
28
  | References:
@@ -60,7 +61,7 @@
60
61
 
61
62
  | [D03] Draine 2003.
62
63
  | Scattering by Interstellar Dust Grains. I. Optical and Ultraviolet.
63
- | https://doi.org/10.48550/arXiv.astro-ph/0304060
64
+ | https://doi.org/10.1086/379118
64
65
 
65
66
  | [F11] Frisvad 2011.
66
67
  | Importance sampling the Rayleigh phase function.
@@ -162,9 +163,9 @@ def ptheta_TTHG(theta, g1, g2, gamma):
162
163
 
163
164
  :math:`p_{TTHG}(\theta, g_1, g_2, \gamma) = \gamma \mbox{ } p_{HG}(\theta, g_1) + (1 - \gamma) \mbox{ } p_{HG}(\theta, g_2)`
164
165
 
165
- :math:`g_1` characterises the shape and the strength of the forward scattering peak
166
+ :math:`g_1` characterizes the shape and the strength of the forward scattering peak
166
167
 
167
- :math:`g_2` characterises the shape and the strength of the backward scattering peak
168
+ :math:`g_2` characterizes the shape and the strength of the backward scattering peak
168
169
 
169
170
  :param theta: scattering angle [degrees]
170
171
  :type theta: float or np.ndarray
@@ -234,9 +235,9 @@ def ptheta_TTRM(theta, g1, g2, alpha1, alpha2, gamma):
234
235
 
235
236
  :math:`p_{TTRM}(\theta, g_1, g_2, \alpha_1, \alpha_2, \gamma) = \gamma \mbox{ } p_{RM}(\theta, g_1, \alpha_1) + (1 - \gamma) \mbox{ } p_{RM}(\theta, g_2, \alpha_2)`
236
237
 
237
- :math:`g_1` characterises the shape and the strength of the forward scattering peak
238
+ :math:`g_1` characterizes the shape and the strength of the forward scattering peak
238
239
 
239
- :math:`g_2` characterises the shape and the strength of the backward scattering peak
240
+ :math:`g_2` characterizes the shape and the strength of the backward scattering peak
240
241
 
241
242
  :param theta: scattering angle [degrees]
242
243
  :type theta: float or np.ndarray
@@ -308,7 +309,7 @@ def ptheta_D(theta, g, alpha):
308
309
 
309
310
  :math:`p_{D}(\theta, g, \alpha) = 3\frac{1 + \alpha \cos^2\theta}{3 + \alpha (1 + 2g^2)} \mbox{ } p_{HG}(\theta, g)`
310
311
 
311
- | For :math:`\alpha = 1` and :math:`g = 0` it reduces to the Rayleigh phase function.
312
+ | For :math:`\alpha = 1` and :math:`g = 0` it reduces to the Rayleigh scattering phase function.
312
313
  | For :math:`\alpha = 0` it reduces to the Henyey-Greenstein scattering phase function.
313
314
  | For :math:`\alpha = 1` it reduces to the Cornette-Shanks scattering phase function
314
315
 
@@ -363,9 +364,9 @@ def ptheta_TTU2(theta, g1, g2, gamma):
363
364
 
364
365
  :math:`p_{TTU2}(\theta, g_1, g_2, \gamma) = \gamma \mbox{ } p_{U2}(\theta, g_1) + (1 - \gamma) \mbox{ } p_{U2}(\theta, g_2)`
365
366
 
366
- :math:`g_1` characterises the shape and the strength of the forward scattering peak
367
+ :math:`g_1` characterizes the shape and the strength of the forward scattering peak
367
368
 
368
- :math:`g_2` characterises the shape and the strength of the backward scattering peak
369
+ :math:`g_2` characterizes the shape and the strength of the backward scattering peak
369
370
 
370
371
  :param theta: scattering angle [degrees]
371
372
  :type theta: float or np.ndarray
@@ -402,9 +403,9 @@ def theta_R_from_RND(n_RND = int(1E6)):
402
403
 
403
404
  | :math:`\theta_{R} = \mbox{arccos}(\sqrt[3]{u + v} + \sqrt[3]{u - v})`
404
405
  | with
405
- | :math:`u = -2(2 \chi - 1)`
406
- | :math:`v = \sqrt{4(2 \chi - 1)^2 + 1}`
407
- | in which :math:`\chi` is a random number in the interval [0, 1)
406
+ | :math:`u = -2(2 \xi - 1)`
407
+ | :math:`v = \sqrt{4(2 \xi - 1)^2 + 1}`
408
+ | in which :math:`\xi` is a random number in the interval [0, 1)
408
409
 
409
410
  :param n_RND: number of random numbers [-] (default to int(1E6))
410
411
  :type n_RND: int
@@ -429,11 +430,11 @@ def theta_HG_from_RND(g, n_RND = int(1E6)):
429
430
 
430
431
  :math:`\theta_{HG} =
431
432
  \left \{ \begin{matrix}
432
- \mbox{arccos}(2 \chi - 1) , & \mbox{if } g = 0 \\
433
- \mbox{arccos}\left\{\frac{1}{2g} \left[1 + g^2 - \left(\frac{1 - g^2}{1 - g + 2g \chi}\right)^2\right]\right\}, & \mbox{if } g \ne 0
433
+ \mbox{arccos}(2 \xi - 1) , & \mbox{if } g = 0 \\
434
+ \mbox{arccos}\left\{\frac{1}{2g} \left[1 + g^2 - \left(\frac{1 - g^2}{1 - g + 2g \xi}\right)^2\right]\right\}, & \mbox{if } g \ne 0
434
435
  \end{matrix} \right.`
435
436
 
436
- in which :math:`\chi` is a random number in the interval [0, 1)
437
+ in which :math:`\xi` is a random number in the interval [0, 1)
437
438
 
438
439
  In this particular model :math:`g` is the anisotropy factor.
439
440
 
@@ -465,9 +466,9 @@ def theta_U2_from_RND(g, n_RND = int(1E6)):
465
466
  | scattering phase function.
466
467
  | For details please check section 4.4.2 from Baes, Camps & Kapoor 2022 [BCK22].
467
468
 
468
- :math:`\theta_{U2} = arccos\left[\frac{(1 + g)^2 - 2 \chi (1 + g^2)}{(1 + g)^2 - 4g \chi}\right]`
469
+ :math:`\theta_{U2} = arccos\left[\frac{(1 + g)^2 - 2 \xi (1 + g^2)}{(1 + g)^2 - 4g \xi}\right]`
469
470
 
470
- in which :math:`\chi` is a random number in the interval [0, 1)
471
+ in which :math:`\xi` is a random number in the interval [0, 1)
471
472
 
472
473
  | In this model :math:`g` is NOT the anisotropy factor.
473
474
 
@@ -535,9 +536,9 @@ def costheta_TTHG(g1, g2, gamma):
535
536
 
536
537
  :math:`\langle \cos\theta \rangle_{TTHG}(g_1, g_2, \gamma) = \gamma \mbox{ } g_1 + (1 - \gamma) \mbox { } g_2`
537
538
 
538
- :math:`g_1` characterises the shape and the strength of the forward scattering peak
539
+ :math:`g_1` characterizes the shape and the strength of the forward scattering peak
539
540
 
540
- :math:`g_2` characterises the shape and the strength of the backward scattering peak
541
+ :math:`g_2` characterizes the shape and the strength of the backward scattering peak
541
542
 
542
543
  :param g1: parameter :math:`g_1` [-] (must be in the range [0, 1])
543
544
  :type g1: float
@@ -670,9 +671,9 @@ def costheta_TTRM(g1, g2, alpha1, alpha2, gamma):
670
671
 
671
672
  :math:`\langle \cos\theta \rangle_{TTRM}(g_1, g_2, \alpha_1, \alpha_2, \gamma) = \gamma \mbox{ } \langle \cos\theta \rangle_{RM}(g_1, \alpha_1) + (1 - \gamma) \mbox{ } \langle \cos\theta \rangle_{RM}(g_2, \alpha_2)`
672
673
 
673
- :math:`g_1` characterises the shape and the strength of the forward scattering peak
674
+ :math:`g_1` characterizes the shape and the strength of the forward scattering peak
674
675
 
675
- :math:`g_2` characterises the shape and the strength of the backward scattering peak
676
+ :math:`g_2` characterizes the shape and the strength of the backward scattering peak
676
677
 
677
678
  :param g1: parameter :math:`g_1` [-] (must be in the range [0, 1])
678
679
  :type g1: float
@@ -760,7 +761,7 @@ def costheta_CS(g):
760
761
  | scattering phase function.
761
762
  | For details please check Cornette & Shanks 1992 [CS92].
762
763
 
763
- :math:`\langle \cos\theta \rangle_{CS}(g) = g\frac{3(4 + g^2)}{5(2 + g^2)}`
764
+ :math:`\langle \cos\theta \rangle_{CS}(g) = \frac{3(4 + g^2)}{5(2 + g^2)} \mbox{ } g`
764
765
 
765
766
  :param g: parameter :math:`g` [-] (must be in the range [-1, 1])
766
767
  :type g: float
@@ -788,7 +789,7 @@ def costheta_D(g, alpha):
788
789
  | scattering phase function.
789
790
  | For details please check Draine 2003 [D03].
790
791
 
791
- :math:`\langle \cos\theta \rangle_{D}(g, \alpha) = g\frac{1 + \alpha(3 + 2g^2)/5}{1 + \alpha(1 + 2g^2)/3}`
792
+ :math:`\langle \cos\theta \rangle_{D}(g, \alpha) = \frac{1 + \alpha(3 + 2g^2)/5}{1 + \alpha(1 + 2g^2)/3} \mbox{ } g`
792
793
 
793
794
  :param g: parameter :math:`g` [-] (must be in the range [-1, 1])
794
795
  :type g: float
@@ -849,9 +850,9 @@ def costheta_TTU2(g1, g2, gamma):
849
850
 
850
851
  :math:`\langle \cos\theta \rangle_{TTU2}(g_1, g_2, \gamma) = \gamma \mbox{ } \langle \cos\theta \rangle_{U2}(g_1) + (1 - \gamma) \mbox{ } \langle \cos\theta \rangle_{U2}(g_2)`
851
852
 
852
- :math:`g_1` characterises the shape and the strength of the forward scattering peak
853
+ :math:`g_1` characterizes the shape and the strength of the forward scattering peak
853
854
 
854
- :math:`g_2` characterises the shape and the strength of the backward scattering peak
855
+ :math:`g_2` characterizes the shape and the strength of the backward scattering peak
855
856
 
856
857
  :param g1: parameter :math:`g_1` [-] (must be in the range [0, 1])
857
858
  :type g1: float
skinoptics/colors.py CHANGED
@@ -1,6 +1,6 @@
1
1
  '''
2
2
  | SkinOptics
3
- | Copyright (C) 2024 Victor Lima
3
+ | Copyright (C) 2024-2025 Victor Lima
4
4
 
5
5
  | This program is free software: you can redistribute it and/or modify
6
6
  | it under the terms of the GNU General Public License as published by
@@ -18,10 +18,11 @@
18
18
  | Victor Lima
19
19
  | victorporto\@ifsc.usp.br
20
20
  | victor.lima\@ufscar.br
21
+ | victorportog.github.io
21
22
 
22
- | Release Date:
23
+ | Release date:
23
24
  | October 2024
24
- | Last Modification:
25
+ | Last modification:
25
26
  | October 2024
26
27
 
27
28
  | References:
skinoptics/dataframes.py CHANGED
@@ -1,6 +1,6 @@
1
1
  '''
2
2
  | SkinOptics
3
- | Copyright (C) 2024 Victor Lima
3
+ | Copyright (C) 2024-2025 Victor Lima
4
4
 
5
5
  | This program is free software: you can redistribute it and/or modify
6
6
  | it under the terms of the GNU General Public License as published by
@@ -18,38 +18,39 @@
18
18
  | Victor Lima
19
19
  | victorporto\@ifsc.usp.br
20
20
  | victor.lima\@ufscar.br
21
+ | victorportog.github.io
21
22
 
22
- | Release Date:
23
- | October 2024
24
- | Last Modification:
23
+ | Release date:
25
24
  | October 2024
25
+ | Last modification:
26
+ | March 2025
26
27
 
27
28
  | Example:
28
- | wps_dataframe (respective to datasets/colors/wps.txt)
29
-
30
- +--------------+------------+---------+---------+---------+
31
- | illuminant | observer | Xn[-] | Yn[-] | Zn[-] |
32
- +==============+============+=========+=========+=========+
33
- | A | 2o | 1.0985 | 1 | 0.3558 |
34
- +--------------+------------+---------+---------+---------+
35
- | D50 | 2o | 0.9641 | 1 | 0.8250 |
36
- +--------------+------------+---------+---------+---------+
37
- | D55 | 2o | 0.9568 | 1 | 0.9214 |
38
- +--------------+------------+---------+---------+---------+
39
- | D65 | 2o | 0.9504 | 1 | 1.0888 |
40
- +--------------+------------+---------+---------+---------+
41
- | D75 | 2o | 0.9497 | 1 | 1.2257 |
42
- +--------------+------------+---------+---------+---------+
43
- | A | 10o | 1.1114 | 1 | 0.3520 |
44
- +--------------+------------+---------+---------+---------+
45
- | D50 | 10o | 0.9671 | 1 | 0.8141 |
46
- +--------------+------------+---------+---------+---------+
47
- | D55 | 10o | 0.9580 | 1 | 0.9093 |
48
- +--------------+------------+---------+---------+---------+
49
- | D65 | 10o | 0.9481 | 1 | 1.0733 |
50
- +--------------+------------+---------+---------+---------+
51
- | D75 | 10o | 0.9442 | 1 | 1.2060 |
52
- +--------------+------------+---------+---------+---------+
29
+ | Lab_Alaluf2002_dataframe (respective to datasets/colors/Lab_Alaluf2002.txt)
30
+
31
+ +------------------------------------------+------------------+------------------+------------------+
32
+ | group(body_location) | L*(D65,10o)[-] | a*(D65,10o)[-] | b*(D65,10o)[-] |
33
+ +==========================================+==================+==================+==================+
34
+ | european(photoprotected_volar_upper_arm) | 65 | 7.1 | 13.3 |
35
+ +------------------------------------------+------------------+------------------+------------------+
36
+ | chinese(photoprotected_volar_upper_arm) | 62.1 | 8.4 | 16.3 |
37
+ +------------------------------------------+------------------+------------------+------------------+
38
+ | mexican(photoprotected_volar_upper_arm) | 61.9 | 8.3 | 15.3 |
39
+ +------------------------------------------+------------------+------------------+------------------+
40
+ | indian(photoprotected_volar_upper_arm) | 53.7 | 10.3 | 17.9 |
41
+ +------------------------------------------+------------------+------------------+------------------+
42
+ | african(photoprotected_volar_upper_arm) | 49.2 | 10.2 | 18.4 |
43
+ +------------------------------------------+------------------+------------------+------------------+
44
+ | european(photoexposed_dorsal_forearm) | 53.94 | 12.57 | 19.23 |
45
+ +------------------------------------------+------------------+------------------+------------------+
46
+ | chinese(photoexposed_dorsal_forearm) | 51.38 | 12.69 | 19.18 |
47
+ +------------------------------------------+------------------+------------------+------------------+
48
+ | mexican(photoexposed_dorsal_forearm) | 50.42 | 12.69 | 19.58 |
49
+ +------------------------------------------+------------------+------------------+------------------+
50
+ | indian(photoexposed_dorsal_forearm) | 43.71 | 12.89 | 17.15 |
51
+ +------------------------------------------+------------------+------------------+------------------+
52
+ | african(photoexposed_dorsal_forearm) | 38.14 | 12.66 | 15.04 |
53
+ +------------------------------------------+------------------+------------------+------------------+
53
54
  '''
54
55
 
55
56
  import os
@@ -92,7 +93,6 @@ folder2 = os.path.join(folder0, 'datasets', 'colors')
92
93
  rspds_A_D50_D65_dataframe = pd.read_csv(os.path.join(folder2, 'rspds_A_D50_D65.txt'), sep = ' ')
93
94
  rspds_D55_D75_dataframe = pd.read_csv(os.path.join(folder2, 'rspds_D55_D75.txt'), sep = ' ')
94
95
  cmfs_dataframe = pd.read_csv(os.path.join(folder2, 'cmfs.txt'), sep = ' ')
95
- wps_dataframe = pd.read_csv(os.path.join(folder2, 'wps.txt'), sep = ' ')
96
96
 
97
97
  Lab_Alaluf2002_dataframe = pd.read_csv(os.path.join(folder2, 'Lab_Alaluf2002.txt'), sep = ' ')
98
98
  Lab_Xiao2017_dataframe = pd.read_csv(os.path.join(folder2, 'Lab_Xiao2017.txt'), sep = ' ')
@@ -1,6 +1,6 @@
1
1
  '''
2
2
  | SkinOptics
3
- | Copyright (C) 2024 Victor Lima
3
+ | Copyright (C) 2024-2025 Victor Lima
4
4
 
5
5
  | This program is free software: you can redistribute it and/or modify
6
6
  | it under the terms of the GNU General Public License as published by
@@ -18,11 +18,12 @@
18
18
  | Victor Lima
19
19
  | victorporto\@ifsc.usp.br
20
20
  | victor.lima\@ufscar.br
21
+ | victorportog.github.io
21
22
 
22
- | Release Date:
23
- | October 2024
24
- | Last Modification:
23
+ | Release date:
25
24
  | October 2024
25
+ | Last modification:
26
+ | March 2025
26
27
 
27
28
  | References:
28
29
 
@@ -64,31 +65,31 @@ from scipy.interpolate import interp1d
64
65
  from skinoptics.utils import *
65
66
  from skinoptics.dataframes import *
66
67
 
67
- def n_Cauchy(lambda0, A0, A1, A2, A3):
68
+ def n_Cauchy(lambda0, A, B, C, D):
68
69
  r'''
69
70
  The Cauchy's equation.
70
71
 
71
- :math:`n(\lambda) = A_0 + \frac{A_1}{\lambda^2} + \frac{A_2}{\lambda^4} + \frac{A_3}{\lambda^6}`
72
+ :math:`n(\lambda) = A + \frac{B}{\lambda^2} + \frac{C}{\lambda^4} + \frac{D}{\lambda^6}`
72
73
 
73
74
  :param lambda0: wavelength [nm]
74
75
  :type lambda0: float or np.ndarray
75
76
 
76
- :param A0: coefficient :math:`A_0` [-]
77
- :type A0: float
77
+ :param A: coefficient :math:`A` [-]
78
+ :type A: float
78
79
 
79
- :param A1: coefficient :math:`A_1` [nm^2]
80
- :type A1: float
80
+ :param B: coefficient :math:`B` [nm^2]
81
+ :type B: float
81
82
 
82
- :param A2: coefficient :math:`A_2` [nm^4]
83
- :type A2: float
83
+ :param C: coefficient :math:`C` [nm^4]
84
+ :type C: float
84
85
 
85
- :param A3: coefficient :math:`A_3` [nm^6]
86
- :type A3: float
86
+ :param D: coefficient :math:`D` [nm^6]
87
+ :type D: float
87
88
 
88
89
  :return: - **n** (*float or np.ndarray*) – refractive index [-]
89
90
  '''
90
91
 
91
- return A0 + A1/np.power(lambda0, 2., dtype = 'float64') + A2/np.power(lambda0, 4., dtype = 'float64') + A3/np.power(lambda0, 6., dtype = 'float64')
92
+ return A + B/np.power(lambda0, 2., dtype = 'float64') + C/np.power(lambda0, 4., dtype = 'float64') + D/np.power(lambda0, 6., dtype = 'float64')
92
93
 
93
94
  def n_Cornu(lambda0, A, B, C):
94
95
  r'''
@@ -1,6 +1,6 @@
1
1
  '''
2
2
  | SkinOptics
3
- | Copyright (C) 2024 Victor Lima
3
+ | Copyright (C) 2024-2025 Victor Lima
4
4
 
5
5
  | This program is free software: you can redistribute it and/or modify
6
6
  | it under the terms of the GNU General Public License as published by
@@ -18,10 +18,11 @@
18
18
  | Victor Lima
19
19
  | victorporto\@ifsc.usp.br
20
20
  | victor.lima\@ufscar.br
21
+ | victorportog.github.io
21
22
 
22
- | Release Date:
23
+ | Release date:
23
24
  | October 2024
24
- | Last Modification:
25
+ | Last modification:
25
26
  | October 2024
26
27
 
27
28
  | References:
skinoptics/utils.py CHANGED
@@ -1,6 +1,6 @@
1
1
  '''
2
2
  | SkinOptics
3
- | Copyright (C) 2024 Victor Lima
3
+ | Copyright (C) 2024-2025 Victor Lima
4
4
 
5
5
  | This program is free software: you can redistribute it and/or modify
6
6
  | it under the terms of the GNU General Public License as published by
@@ -18,10 +18,11 @@
18
18
  | Victor Lima
19
19
  | victorporto\@ifsc.usp.br
20
20
  | victor.lima\@ufscar.br
21
+ | victorportog.github.io
21
22
 
22
- | Release Date:
23
+ | Release date:
23
24
  | October 2024
24
- | Last Modification:
25
+ | Last modification:
25
26
  | October 2024
26
27
 
27
28
  | References:
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: skinoptics
3
- Version: 0.0.1b5
3
+ Version: 0.0.1b7
4
4
  Summary: SkinOptics: a python package with tools for building human skin computational models for Monte Carlo simulations of light transport
5
5
  Author-email: Victor Lima <victorporto@ifsc.usp.br>
6
6
  Project-URL: Homepage, https://github.com/victorportog/skinoptics
@@ -10,9 +10,10 @@ Classifier: Operating System :: Microsoft :: Windows :: Windows 10
10
10
  Requires-Python: >=3.8
11
11
  Description-Content-Type: text/markdown
12
12
  License-File: LICENSE.txt
13
- Requires-Dist: numpy <2.0.0,>=1.26.4
14
- Requires-Dist: scipy <2.0.0,>=1.13.0
15
- Requires-Dist: pandas <3.0.0,>=2.2.2
13
+ Requires-Dist: numpy<2.0.0,>=1.26.4
14
+ Requires-Dist: scipy<2.0.0,>=1.13.0
15
+ Requires-Dist: pandas<3.0.0,>=2.2.2
16
+ Dynamic: license-file
16
17
 
17
18
  SkinOptics
18
19
  ==========
@@ -21,7 +22,7 @@ SkinOptics
21
22
  models for Monte Carlo simulations of light transport, as well as tools for analyzing simulation
22
23
  outputs. It can also be used for teaching and exploring about Optical Properties and Colorimetry.
23
24
 
24
- **SkinOptics** is under continuos development.
25
+ **SkinOptics** is under continuous development.
25
26
 
26
27
  New features may be available in the future.
27
28
 
@@ -1,17 +1,16 @@
1
- skinoptics/__init__.py,sha256=EQPYN3evyAnf20nVdMFbtxo1Bx-ONs04c9fsEopSGsE,1687
2
- skinoptics/absorption_coefficient.py,sha256=SzTqwUopk2pXic0AOFKGO20rBr5zOSxFZJxrGzh8AJY,36320
3
- skinoptics/anisotropy_factor.py,sha256=kR4EYjww_z7_aLuMCc5QZE8phkwJ7itzjLA6kUOdgf8,37927
4
- skinoptics/colors.py,sha256=xRYlsX4WIfibACAYnY_jIqcO6VORgsSsewXCr_j0mn8,56728
5
- skinoptics/dataframes.py,sha256=x_Fs11aRszkp_tBu-ZLo-arSq4UX7Z-6-Y_LLoT7XO4,5542
6
- skinoptics/refractive_index.py,sha256=Xc0XHtKZ5fSUAjoftEl0lheK33Vuh6T0xoIRjEV8XR0,14997
7
- skinoptics/scattering_coefficient.py,sha256=w7mAmR3P5CoEvhg_7cqwZh1TSAN1mUtfat1uYIR6i2Q,15214
8
- skinoptics/utils.py,sha256=H53ZxsTErP8gpgR5VK1j-DuoO7JTFK1qpW7NYpq9QWw,10868
1
+ skinoptics/__init__.py,sha256=_UWhMASRUKozbt0nPNNydK6WBolnYI018yYYCNW4UKQ,1572
2
+ skinoptics/absorption_coefficient.py,sha256=f5mKTqgEiXKk0MDhPyL6t3w3jPDriJqI3R65U8mZNy8,36292
3
+ skinoptics/anisotropy_factor.py,sha256=tMRDLT5DpAI4CEATo9qigjrfSuHVKOTPz-fLnJJ8IVA,37963
4
+ skinoptics/colors.py,sha256=mUAQOyLiwM-PnLjDLNSz7Lt57iRBawXutsDxDwNMY4g,56759
5
+ skinoptics/dataframes.py,sha256=EMN1Cr0gJu0TM5fZJTP5qk8Dfu5VqvhnxUq5mcS2zQQ,6485
6
+ skinoptics/refractive_index.py,sha256=1zuSNIjy3KkbPH30YNbkPosASENTBtkxym8IML0Uy0A,14994
7
+ skinoptics/scattering_coefficient.py,sha256=3rsbwkqD2OeHfmu9z8bEGCBJ1RTjKzPV9fSu78gtrco,15244
8
+ skinoptics/utils.py,sha256=qjBM3B9mTIPsYZNvt4u32rd96mnn4bovOoZfA6Y7aNA,10899
9
9
  skinoptics/datasets/colors/Lab_Alaluf2002.txt,sha256=PEmAPud84qe7U7V0kQliYvPwng3NuT-9qKLqabQWMYo,610
10
10
  skinoptics/datasets/colors/Lab_Xiao2017.txt,sha256=fx7y84PN5OFSDH6Z4rUNML6U8QOnHDr7MTWoxvNFBRs,903
11
11
  skinoptics/datasets/colors/cmfs.txt,sha256=q4Veg2SoCipCBRj2DL5pSzEH5RW4YORUmXxyVytB7KE,44381
12
12
  skinoptics/datasets/colors/rspds_A_D50_D65.txt,sha256=eV5hU07TI1wJZpLy0F54VYd--_Bh-WJ7XCWhca27YyA,15978
13
13
  skinoptics/datasets/colors/rspds_D55_D75.txt,sha256=UGljPp6-OiJewAEuSRptJ6Iof1IkioFndfBe6g_l8Xw,1974
14
- skinoptics/datasets/colors/wps.txt,sha256=Cs6kn-mSQYCzMC2-aAqdYDX-41F2UiT6FpNccZgN2_o,318
15
14
  skinoptics/datasets/optical_properties/DE_Salomatina.txt,sha256=pNGNevgAaj_h8PaWP1zqOEO0WEQG-a4k1rbDt5AdmXU,24624
16
15
  skinoptics/datasets/optical_properties/DE_Shimojo.txt,sha256=g847CsdYbbOqqnoyPJs1XYVaiyEnPZWZHnEK-zzRfPo,281
17
16
  skinoptics/datasets/optical_properties/EP_Salomatina.txt,sha256=87UjyYbKBP0k__g_N1j3NuBvZybnEJZ7bKDYSsfxJkM,22791
@@ -38,8 +37,8 @@ skinoptics/datasets/optical_properties/n_and_k_wat_Segelstein.txt,sha256=EZIS515
38
37
  skinoptics/datasets/optical_properties/oxy_and_deo_Bosschaart.txt,sha256=eF96Ao44TDUYRo6-8p0L7I9Q8h6wLNpEUyrcbo7FySA,24972
39
38
  skinoptics/datasets/spectra/Xiao2016/skindatabaseSpectra/readmeSpectra.docx,sha256=ren4htGe154BIlBridkvBvbc8AYY1RRmp4CVICYwDvc,15147
40
39
  skinoptics/datasets/spectra/Xiao2016/skindatabaseSpectra/skin spectra data.xlsx,sha256=z7shS1rZzqpaRGi_Ji0nYcSzIxEmADQOtaJ_Uwcotcc,1434709
41
- skinoptics-0.0.1b5.dist-info/LICENSE.txt,sha256=IwGE9guuL-ryRPEKi6wFPI_zOhg7zDZbTYuHbSt_SAk,35823
42
- skinoptics-0.0.1b5.dist-info/METADATA,sha256=2UGxasD3fe7BDjOB8EHXCupWTszJStZs3UgpJR1AnfI,1303
43
- skinoptics-0.0.1b5.dist-info/WHEEL,sha256=OVMc5UfuAQiSplgO0_WdW7vXVGAt9Hdd6qtN4HotdyA,91
44
- skinoptics-0.0.1b5.dist-info/top_level.txt,sha256=4NYJW3uliYlvbd-Zywg2MxJOGe4wYA7Oz_I5EZF4YEQ,11
45
- skinoptics-0.0.1b5.dist-info/RECORD,,
40
+ skinoptics-0.0.1b7.dist-info/licenses/LICENSE.txt,sha256=IwGE9guuL-ryRPEKi6wFPI_zOhg7zDZbTYuHbSt_SAk,35823
41
+ skinoptics-0.0.1b7.dist-info/METADATA,sha256=JJqS041oF-pt4t6Tj4SUFLTIylvKdi8_evaBC80f0jM,1324
42
+ skinoptics-0.0.1b7.dist-info/WHEEL,sha256=1tXe9gY0PYatrMPMDd6jXqjfpz_B-Wqm32CPfRC58XU,91
43
+ skinoptics-0.0.1b7.dist-info/top_level.txt,sha256=4NYJW3uliYlvbd-Zywg2MxJOGe4wYA7Oz_I5EZF4YEQ,11
44
+ skinoptics-0.0.1b7.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.2.0)
2
+ Generator: setuptools (77.0.3)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,11 +0,0 @@
1
- illuminant observer Xn[-] Yn[-] Zn[-]
2
- A 2o 1.0985 1.0000 0.3558
3
- D50 2o 0.9641 1.0000 0.8250
4
- D55 2o 0.9568 1.0000 0.9214
5
- D65 2o 0.9504 1.0000 1.0888
6
- D75 2o 0.9497 1.0000 1.2257
7
- A 10o 1.1114 1.0000 0.3520
8
- D50 10o 0.9671 1.0000 0.8141
9
- D55 10o 0.9580 1.0000 0.9093
10
- D65 10o 0.9481 1.0000 1.0733
11
- D75 10o 0.9442 1.0000 1.2060