VirtualPhotonics / VTS

Virtual Tissue Simulator
https://virtualphotonics.org
Other
34 stars 9 forks source link

Feature/165 increase the spectral range for major chromophores #166

Closed janakarana closed 1 month ago

janakarana commented 1 month ago

Spectral data of the spectral panel had a limited range. The following changes were made to HbO2, Hb, H2O, Fat and Melanin spectral data. -Hb and HbO2 spectral data ranges were extended from 250nm-1000 nm to 250nm-1600 nm -Existing H2O spectral data by two sources was replaced by a single source (https://omlc.org/spectra/water/data/segelstein81.txt). This data overlaps with many H2O data. -Fat spectral data range was extended from 600nm-1000nm to 429nm-1600nm. -Melanin spectral data range was extended from 600nm-1000nm to 250nm-1600nm. Many unit tests used the optical properties of liver. As water and fat spectra were slightly different, decimal places of the unit test were corrected accordingly.

janakarana commented 1 month ago

-Existing H2O spectral data was replaced by https://omlc.org/spectra/water/data/pope97.txt and https://omlc.org/spectra/water/data/kou93b.txt

janakarana commented 1 month ago

Fat spectral data range was extended from 600nm-1000nm to 400nm-1600nm.

janakarana commented 1 month ago

hayakawa16, Spectral panel references will be updated as

Hb,HbO2: 250 nm -1000 nm: https://omlc.org/spectra/hemoglobin/summary.html (Compiled by Scott Prahl using data from W. B. Gratzer, Med. Res. Council Labs, Holly Hill, London and N. Kollias, Wellman Laboratories, Harvard Medical School, Boston) 1001 nm - 1600 nm: https://doi.org/10.1364/BOE.2.000600 (Nachabe et. al, Biomedical Optics Express 2(3) (2011))

H2O: 400 nm - 720 nm: https://omlc.org/spectra/water/data/pope97.txt (R. M. Pope and E. S. Fry, "Absorption spectrum (380-700nm) of pure water. II. Integrating cavity measurements," Appl. Opt., 36, 8710--8723, (1997)) 721 nm - 1600 nm: https://omlc.org/spectra/water/data/kou93b.txt (L. Kou and D. Labrie and P. Chylek, " Refractive indices of water and ice in the 0.65- to 2.5-μm spectral range," Appl. Opt., 32, 3531--3540, (1993))

Fat: 400 nm - 440 nm: https://doi.org/10.1097/RLI.0b013e318237527b (Nachabe et. al, Investigative Radiology 47(4) (2012)) 450 nm – 1049 nm: https://omlc.org/spectra/fat/fat.txt (R.L.P. van Veen et. al, OSA Annual BIOMED Topical Meeting, 20042004) https://doi.org/10.1364/BIO.2004.SF4 1050 nm - 1600 nm: https://doi.org/10.1117/1.3454392 (Nachabe et. al., Journal of Biomdical Optics 15(3) (2010))

Melanin (Skin): 250 nm - 1600 nm:https://omlc.org/spectra/melanin/mua.html Jacques McAuliffe plot data

Nigrosin: 600 nm - 1000 nm: Sigma-Aldrich Handbook of Chemical Dyes

hayakawa16 commented 1 month ago

Looks great!

dcuccia commented 1 month ago

Excellent :)

lmalenfant commented 1 month ago

Hi @janakarana, I am getting 12 failing unit tests when I pull the code locally. I thought we had this check in the action checks but it appears that it only runs the tests to get code coverage and if they fail it doesn't fail. I will fix that separately but if you could fix those unit tests, that would be great. Thanks!

janakarana commented 1 month ago

Let me fix it.

lmalenfant commented 1 month ago

@janakarana I'm not sure why and it could be unrelated but since we added the action to build on all 3 platforms, it looks like the tests are failing on Mac on your branch. Since you have a Mac, are you able to run the unit tests there?

janakarana commented 1 month ago

@lmalenfant, I will check

janakarana commented 1 month ago

All unit tests are passing on my Mac.

sonarcloud[bot] commented 1 month ago

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
0.0% Coverage on New Code
0.0% Duplication on New Code

See analysis details on SonarCloud

hayakawa16 commented 1 month ago

This post is just for informational purposes. On linux:

  1. pulled a clean clone: git clone https://github.com/VirtualPhotonics/vts.git
  2. cd vts
  3. checkout branch: git checkout -b feature/165-increase-the-spectral-range-for-major-chromophores
  4. pull branch: git pull origin feature/165-increase-the-spectral-range-for-major-chromophores
  5. started powershell: pwsh
  6. ran ./BuildTestReleaseMCCL All unit tests run fine.