virtual lab waves and diffraction