Skip to main content
Log in

An MPI-accelerated Monte Carlo algorithm for estimating the reflectance and transmittance properties of a wind-driven sea surface

  • Regular Paper
  • Published:
Optical Review Aims and scope Submit manuscript

Abstract

The Preisendorfer and Mobley Monte Carlo model is a classical photon-rough sea surface interaction model that is used to study the reflectance and transmittance properties of the wind-driven sea surface. In this paper, we develop a computational framework and the implementation for parallel processing of this model by using Message Passing Interface. We then analyze the correspondence between serial and parallel results and the speedup of the proposed algorithm on a single personal computer and computers cluster. The results indicate that achieved speedup is slightly lower than the linear speedup, and the parallel efficiency is slowly decreased by increasing the number of processes. Compared to a serial code, the relative differences of irradiance are all lower than 2.5%, and the relative differences of radiance are below 2.5% for air-incident source and below 10% for underwater source.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18

Similar content being viewed by others

References

  1. Mobley, C.D.: Light and water: radiative transfer in natural waters. Academic Press, San Diego (1994)

    Google Scholar 

  2. Cashwell, E. D.: A practical manual on the Monte Carlo method for random walk problems: Report (Los Alamos Scientific Laboratory of the University of California, 1957).

  3. Xu, Z.J.: Monte Carlo method. Shanghai Scientific and Technical Publishers, Shanghai (1985)

    Google Scholar 

  4. Kroese, D.P., Taimre, T., Botev, Z.I.: Handbook of Monte Carlo methods. Wiley, Hoboken (2011)

    Book  Google Scholar 

  5. Plass, G.N., Kattawar, G.W.: Monte Carlo calculations of light scattering from clouds. Appl. Opt. 7(3), 415–419 (1968). https://doi.org/10.1364/AO.7.000415

    Article  ADS  Google Scholar 

  6. Kirk, J.T.O.: “Monte Carlo procedure for simulating the penetration of light into natural waters”, CSIRO Aust. Div. Plant Ind. Tech. Pap. 36, 1–16 (1981)

    Google Scholar 

  7. Preisendorfer, R.W., Mobley, C.D.: “Unpolarized irradiance reflectances and glitter patterns of random capillary waves on lakes and seas, by monte carlo simulation”, NOAA Technical Memorandum ERL PMEL-63. Pacific Marine Environmental Laboratory, Seattle (1985)

    Google Scholar 

  8. Leathers, R.A., Downes, T.V., Davis, C.O., Mobley, C.D.: “Monte Carlo radiative transfer simulations for ocean optics: a practical guide”, NRL/MR/5660–04–8819. Naval Research Laboratory, Washington, D.C. (2004)

    Book  Google Scholar 

  9. Wang, L., Jacques, S., Zheng, L.: MCML-Monte Carlo modeling of light transport in multi-layered tissues. Comput. Meth. Prog. Biol. 47(2), 131–146 (1995). https://doi.org/10.1016/0169-2607(95)01640-F

    Article  Google Scholar 

  10. Piskozub, J., Stramski, D., Terrill, E., Melville, W.K.: Small-scale effects of underwater bubble clouds on ocean reflectance: 3-D modeling results. Opt. Express 17(14), 11747–11752 (2009). https://doi.org/10.1364/OE.17.011747

    Article  ADS  Google Scholar 

  11. Plass, G.N., Kattawar, G.W., Guinn, J.A.: Radiative transfer in the earth’s atmosphere and ocean: influence of ocean waves. Appl. Opt. 14(8), 1924–1936 (1975). https://doi.org/10.1364/AO.14.001924

    Article  ADS  Google Scholar 

  12. Zhou, Y.H., Zhang, Z.M.: Radiative properties of semitransparent silicon wafers with rough surfaces. J. Heat Transfer 125(3), 462–470 (2003). https://doi.org/10.1115/1.1565089

    Article  Google Scholar 

  13. Lee, H.J., Lee, B.J., Zhang, Z.M.: Modeling the radiative properties of semitransparent wafers with rough surfaces and thin-film coatings. J. Quant. Spectrosc. Radiat. Transfer 93(1–3), 185–194 (2005). https://doi.org/10.1016/j.jqsrt.2004.08.021

    Article  ADS  Google Scholar 

  14. Macaskill, C.: Geometric optics and enhanced backscatter from very rough surfaces. J. Opt. Soc. Am. A. 8(1), 88–96 (1991). https://doi.org/10.1364/JOSAA.8.000088

    Article  ADS  Google Scholar 

  15. Tang, K., Buckius, R.O.: The geometric optics approximation for reflection from two dimensional random rough surfaces. Int. J. Heat Mass Tran. 41(13), 2037–2047 (1998). https://doi.org/10.1016/S0017-9310(97)00227-5

    Article  Google Scholar 

  16. Sathe, P.V., Sathyendranath, S.: A fortran-77 program for monte carlo simulation of upwelling light from the sea. Comput. Geosci. 18(5), 487–507 (1992). https://doi.org/10.1016/0098-3004(92)90090-E

    Article  ADS  Google Scholar 

  17. Kirk, J. T. O.: Notes for course on Monte Carlo modeling of radiative transfer in the ocean, Ocean Optics Conference XVII, Fremantle, WesternAustralia (2004).

  18. Saunders, P.M.: Shadowing on the ocean and the existence of the horizon. J. Geophys. Res. 72(18), 4643–4649 (1967). https://doi.org/10.1029/JZ072i018p04643

    Article  ADS  Google Scholar 

  19. Ottaviani, M., Spurr, R., Stamnes, K., Li, W., Su, W., Wiscombe, W.: Improving the description of sunglint for accurate prediction of remotely sensed radiances. J. Quant. Spectrosc. Ra. 109(14), 2364–2375 (2008). https://doi.org/10.1016/j.jqsrt.2008.05.012

    Article  ADS  Google Scholar 

  20. Chami, M., Lafrance, B., Fougnie, B., Chowdhary, J., Harmel, T., Waquet, F.: OSOAA: a vector radiative transfer model of coupled atmosphere-ocean system for a rough sea surface application to the estimates of the directional variations of the water leaving reflectance to better process multi-angular satellite sensors data over the ocean. Opt. Express 23(21), 27829–27852 (2015). https://doi.org/10.1364/OE.23.027829

    Article  ADS  Google Scholar 

  21. D’Alimonte, D., Zibordi, G., Kajiyama, T., Cunha, J.C.: Monte Carlo code for high spatial resolution ocean color simulations. Appl. Opt. 49(26), 4936–4950 (2010). https://doi.org/10.1364/AO.49.004936

    Article  ADS  Google Scholar 

  22. D’Alimonte, D., Kajiyama, T.: Effects of light polarization and waves slope statistics on the reflectance factor of the sea surface. Opt. Express 24(8), 7922–7942 (2016). https://doi.org/10.1364/OE.24.007922

    Article  ADS  Google Scholar 

  23. Hieronymi, M., Macke, A.: On the influence of wind and waves on underwater irradiance fluctuations. Ocean Sci. 8(4), 455–471 (2012). https://doi.org/10.5194/os-8-455-2012

    Article  ADS  Google Scholar 

  24. Ramon, D., Steinmetz, F., Jolivet, D., Compiègne, M., Frouin, R.: Modeling polarized radiative transfer in the ocean-atmosphere system with the GPU-accelerated SMART-G Monte Carlo code. J. Quant. Spectrosc. Radiat. Transfer 222, 89–107 (2019). https://doi.org/10.1016/j.jqsrt.2018.10.017

    Article  ADS  Google Scholar 

  25. Tulldahl, H.M., Steinvall, K.O.: Simulation of sea surface wave influence on small target detection with airborne laser depth sounding. Appl. Opt. 43(12), 2462–2483 (2004). https://doi.org/10.1364/AO.43.002462

    Article  ADS  Google Scholar 

  26. Mobley, C.D.: Polarized reflectance and transmittance properties of wind-driven sea surfaces. Appl. Opt. 54(15), 4828–4849 (2015). https://doi.org/10.1364/AO.54.004828

    Article  ADS  Google Scholar 

  27. D’Alimonte, D., Kajiyama, T., Zibordi, G., Bulgarelli, B.: Sea-surface reflectance factor: replicability of computed values. Opt. Express 29(16), 25217–25241 (2021). https://doi.org/10.1364/OE.424768

    Article  ADS  Google Scholar 

  28. Hieronymi, M.: Polarized reflectance and transmittance distribution functions of the ocean surface. Opt. Express 24(14), A1045–A1068 (2016). https://doi.org/10.1364/OE.24.0A1045

    Article  ADS  Google Scholar 

  29. Preisendorfer R.W.: Hydrologic optics: vol. 6: surfaces. Pacific Mar. Environ. Lab/NOAA, Seattle, (1976)

  30. Gropp, W., Lusk, E., Thakur, R.: Using MPI-2 advanced features of the message-passing interface. MIT Press, Cambridge (1999)

    Book  Google Scholar 

  31. Luo, Q.M., Ming, Z., Liu, G., Mao, R.: OpenMP compilation principle and implementation technology. Tsinghua University Press, Beijing (2012)

    Google Scholar 

  32. Alerstam, E., Svensson, T., Andersson-Engels, S.: Parallel computing with graphics processing units for high-speed Monte Carlo simulation of photon migration. J. Biomed. Opt. (2008). https://doi.org/10.1117/1.3041496

    Article  Google Scholar 

  33. Fang, Q., Boas, D.A.: Monte Carlo simulation of photon migration in 3D turbid media accelerated by graphics processing units. Opt. Express 17(22), 20178–20190 (2009). https://doi.org/10.1364/OE.17.020178

    Article  ADS  Google Scholar 

  34. Mobley, C.D.: “A numerical model for the computation of radiance distributions in natural waters with wind-roughened surfaces, part ii: users’ guide and code listing”, NOAA Technical Memorandum ERL PMEL-81. Pacific Marine Environmental Laboratory, University of California Libraries, California (1988)

    Book  Google Scholar 

  35. Cox, C., Munk, W.: Measurement of the roughness of the sea surface from photographs of the Sun’s glitter. J. Opt. Soc. Am. 44(11), 838–850 (1954). https://doi.org/10.1364/JOSA.44.000838

    Article  ADS  Google Scholar 

  36. Mobley C.D.: “How well does hydrolight simulate wind-blown sea surfaces?” Hydrolight Tech. Note (2002).

  37. Mobley C. D., “Modeling sea surfaces: a tutorial on Fourier transform techniques,” Tech. Rep. Sequoia Scientific, Inc., (2014)

  38. Mobley, C.D., Preisendorfer, R.W.: “A numerical model for the computation of radiance distributions in natural waters with wind-roughened surfaces”, NOAA Technical Memorandum ERL PMEL-75. Pacific Marine Environmental Laboratory, Seattle (1988)

    Google Scholar 

  39. https://www.open-mpi.org/doc/current/man3/MPI_Reduce.3.php. Accessed 25 June 2020

  40. Quan, X.H., Fry, E.S.: Empirical equation for the index of refraction of seawater. Appl. Opt 34(18), 3477–3480 (1995). https://doi.org/10.1364/AO.34.003477

    Article  ADS  Google Scholar 

  41. Knuth, D.E.: The art of computer programming, volume 2: seminumerical algorithms. Addison-Wesley, Boston (1997)

    Google Scholar 

  42. Podlozhnyuk, V.: Parallel mersenne twister. NVIDIA Corp., Santa Clara (2007)

    Google Scholar 

Download references

Acknowledgements

My special thanks to Mobley for the Serial Fortran 77 of code of Preisendorfer and Mobley Monte Carlo (PMMC) model and his enthusiastic help.

Funding

National Natural Science Foundation of China (NSFC) (Grant No. 61871457, 61431010); Foundation for Innovative Research Groups of the National Natural Science Foundation of China (Grant No. 61621005); and Scientific Research Program Funded by Shaanxi Provincial Education Department (Program No. 15JK1366).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Lixin Guo.

Ethics declarations

Conflict of interest

The authors declare no conflicts of interest.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendix A

Appendix A

Parallel random number for MPI-accelerated PMMC

Generating random numbers is a very important step in a Monte Carlo simulation. The commonly used random number algorithms are: linear congruential generator, lagged Fibonacci generator, and Mason rotation algorithm, see, e.g., [4, 5]. In PMMC, Mobley used linear congruential generator to generate uniformly distributed random numbers. This random numbers generation method was described, e.g., by Knuth in detail [41]. When the i-th number of a pseudo-random sequence is given, the i + 1st number can be generated from the equation x(i + 1) = (A × x(i) + C) MOD M, where M = 222 = 4,194,304, C = 1731, MOD is the remainder function, and A is the multiplier. The multiplier A and random number x are both represented in double precision as two 11-bit words. The constants are chosen so that the period is the maximum possible, 4,194,304. Mobley also fixed the seeds of random numbers. Every time the last generated random number is called as the new initial value in the linear congruential formula to generate a new random number, a random number sequence is generated. Using this method to generate random numbers, the calculation results of PMMC are the same every time which is convenient for comparison with analytical methods. However, this method cannot be directly used in MPI parallel Monte Carlo simulation, because each process needs different random numbers.

Two schemes can be used to generate random numbers for MPI parallel requirements with multiple processes. One scheme is to use the same random number generator with processes each have different seeds. The second scheme is to use a random number generator specially developed for parallel applications, such as Parallel Mersenne Twister for GPU [42]. For simplicity, the former is adopted in this paper, and the key is to select different seeds for each process. Figure 

Fig. 19
figure 19

Fortran code for subroutine Init_Random_Seed()

19 provides the Fortran code to show the process of selecting different random number seeds for MPI multiple processes by using random number subroutine, RANDOM_NUMBER(), in Intel Visual Fortran Compiler. Note that the random number generator used in the subroutine, RANDOM_NUMBER (), uses two independent Linear congruential generators which can generate uniformly distributed random numbers between 0 and 1, with a period of 1018.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Yang, Y., Guo, L. An MPI-accelerated Monte Carlo algorithm for estimating the reflectance and transmittance properties of a wind-driven sea surface. Opt Rev 29, 34–50 (2022). https://doi.org/10.1007/s10043-022-00721-8

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10043-022-00721-8

Keywords

Navigation