375 Pages 32 Color & 164 B/W Illustrations
    by CRC Press

    375 Pages 32 Color & 164 B/W Illustrations
    by CRC Press

    Optics is an enabling science that forms a basis for our technological civilization. Courses in optics are a required part of the engineering or physics undergraduate curriculum in many universities worldwide. The aim of Understanding Optics with Python is twofold: first, to describe certain basic ideas of classical physical and geometric optics; second, to introduce the reader to computer simulations of physical phenomena. The text is aimed more broadly for those who wish to use numerical/computational modeling as an educational tool that promotes interactive teaching (and learning). In addition, it offers an alternative to developing countries where the necessary equipment to carry out the appropriate experiments is not available as a result of financial constraints. This approach contributes to a better diffusion of knowledge about optics. The examples given in this book are comparable to those found in standard textbooks on optics and are suitable for self-study. This text enables the user to study and understand optics using hands-on simulations with Python. Python is our programming language of choice because of its open-source availability, extensive functionality, and an enormous online support. Essentials of programming in Python 3.x, including graphical user interface, are also provided. The codes in the book are available for download on the book’s website.

    • Discusses most standard topics of traditional physical and geometrical optics through Python and PyQt5

    • Provides visualizations and in-depth descriptions of Python’s programming language and simulations

    • Includes simulated laboratories where students are provided a "hands-on" exploration of Python software

    • Coding and programming featured within the text are available for download on the book’s corresponding website.

    "Understanding Optics with Python by Vasudevan Lakshminarayanan, Hassen Ghalila, Ahmed Ammar, and L. Srinivasa Varadharajan is born around a nice idea: using simulations to provide the students with a powerful tool to understand and master optical phenomena. The choice of the Python language is perfectly matched with the overall goal of the book, as the Python language provides a completely free and easy-to-learn platform with huge cross-platform compatibility, where the reader of the book can conduct his or her own numerical experiments to learn faster and better."
    — Costantino De Angelis, University of Brescia, Italy

    "Teaching an important programming language like Python through concrete examples from optics is a natural and, in my view, very effective approach. I believe that this book will be used by students and appreciated greatly by instructors. The topic of modelling optical effects and systems where the students should already have a physical background provides great motivation for students to learn the basics of a powerful programming language without the intimidation factor that often goes with a formal computer science course."
    — John Dudley, FEMTO-ST Institute, Besançon, France

    Introduction to Python. GUI Programming with Python and Qt. Electromagnetic Waves. Radiometry and Photometry. Fermat’s Principle, Reflection, and Refraction. Lenses and Mirrors. Thick Lenses and Lens Systems. Polarization. Interference. Coherence. Diffraction. Fresnel Integrals.

    Biography

    VL (Ph.D., UC Berkeley) is currently at University of Waterloo, where he is a professor of vision science, physics, electrical and computer engineering and systems design engineering. He has been a KITP Scholar at the Kavli Institute for Theoretical Physics at UC Santa Barbara, an associate of the Michigan Center for Theoretical Physics and has held research and teaching positions (as well as visiting professorships) at UC Irvine, UC Berkeley, the Indian Institute of Technology at Delhi and Madras, the University of Michigan and the University of Missouri amongst others. He is a fellow of a number of professional societies such as the American Physical Society, AAAS, Optical Society of America, SPIE – the International Society for Optical Engineering,, Institute of Physics (UK), etc.,  a AAAS Science and Technology Policy Fellowship finalist, and has worked in a number of areas ranging from quantum physics and spectroscopy, to bioengineering, mathematical optics, image processing, optometry, ophthalmology and cognitive science.  He has published over 300 papers, chapters, etc. as well as a editor/coauthor of about 15 books, and is the recipient of a number of awards including the SPIE Optics educator award (2011) and the Esther Beller Hoffman medal of OSA (2013). He serves as a consultant for the medical devices branch of the US FDA.  He is a member of various panels of the National Institutes of Health, as well as the editorial boards of a number of journals including Journal of Modern Optics published by Taylor and Francis. He is a founding member of the UNESCO ALOP project and is on the optics advisory committee of the Abdus Salam International Center for Theoretical Physics. He is also the chief scientist of an educational technology start up in Hamilton, Ontario

    Hassen Ghalila is a Professor of Physics in the Laboratoire de Spectroscopie Atomique Moléculaire et Applications (LSAMA) in the Department of Physics - Faculty of Sciences of Tunis - Tunis El Manar University. He received his Ph.D. from Orsay-Paris XI on numerical codes for plasma physics and microwave tubes. Since 2005 he has been the leader of the Experimental and Numerical and Simulations modeling team at LSAMA laboratory. Most of his publications are in topics ranging from laboratory plasma spectroscopy to ionospheric plasma. He is currently the local coordinator of the International Space Weather Initiative (ISWI) program. He is also the general secretary of the Tunisian Optical Society (STO) which is dedicated to outreach program in the field of optics. 

    Ahmed Ammar is a PhD graduate in Physics at the Laboratoire de Spectroscopie Atomique Moléculaire et Applications (LSAMA) in the Department of Physics - Faculty of Sciences of Tunis - Tunis El Manar University. His PhD research focuses on studying ionospheric disturbances through radio-VLF waves propagation, such as effect of solar flares and solar eclipses on the ionospheric D-region. His activities on many science-outreach programs in Tunisia led him to his research topic. Indeed, he has been an amateur astronomer since 2006 and currently he is the scientific director at the Astronomical Society of Tunisia (SAT) and member of steering committee of the Tunisian Optical Society (STO). He is a Python developer and participated in many workshops in the use of Python as a suitable and efficient programming language to teach and learn Physics and specifically Optics simulation. He is also member of the Experimental, Numerical and Simulations modeling team at LSAMA laboratory and member of the Tunisian team of the ISWI program (International Space Weather Initiative).

    L. Srinivasa Varadharajan (Rajan) is a Research Scientist at the L V Prasad Eye Institute in Hyderabad, India. A physicist turned vision scientist, Rajan studies various low level visual functions using psychophysical techniques. He is a two time recipient of of the Best Junior Faculty award at his earlier employments. He was a founding member and the Optics curriculum coordinator for what is now known as the Common Minimum Optometry Curriculum for India (2009) which is used as the gold standard for Optometric education in India. He also served as the a member of the task force constituted by the Ministry of Women and Family Welfare, Government of India, that deals with setting standards for the profession of Optometry in India. He has supervised a large number of undergraduate and postgraduate student research projects and has published widely in the fields of spatial vision, visual psychophysics, signal processing, etc. 

    "Understanding Optics with Python by Vasudevan Lakshminarayanan, Hassen Ghalila, Ahmed Ammar and Srinivasa Varadharajan is born around a nice idea: using simulations to provide the students with a powerful tool to understand and master optical phenomena. The choice of the python language is perfectly matched with the overall goal of the book, as the python language provides a completely free and easy to learn platform with huge cross platform compatibility, where the reader of the book can conduct his own numerical experiments to learn faster and better."
    — Costantino De Angelis, University of Brescia, Italy

    "Teaching an important programming language like Python through concrete examples from optics is a natural and, in my view, very effective approach. I believe that this book will be used by students and appreciated greatly by instructors. The topic of modelling optical effects and systems where the students should already have a physical background provides great motivation for students to learn the basics of a powerful programming language without the intimidation factor that often goes with a formal computer science course."
    — John Dudley, FEMTO-ST Institute, Besançon, France

    "This book is unusual in that it serves two purposes: teaching the students to program using a simple, open-access programing environment, and learning optics along the way. The list of topics in optics covered by the book is quite broad. The first part of the book focuses more on the Python side, introducing methodically and clearly the different aspects of programming in this language. However, even from some of the early examples, basic concepts and functions in optics start to be used. This way, the student practices her/his programming skills but at the same time gets familiar with the mathematical tools that will be useful when the book transitions into optics. This book would be very well fit for an advanced undergraduate course or even a first year graduate course."
    Miguel Alonso, University of Rochester, New York, USA

    "This highly recommended textbook provides an innovative approach to learning geometrical and physical optics. The book simultaneously solves two pedagogical requirements: how to code with Python and how to simulate optical phenomenon. A bibliography and an index are provided, and the book’s website contains all of the codes and programs. It is suitable for undergraduate and graduate students."

    Barry R. Masters, Fellow of AAAS, OSA and SPIE