Waves¶
This module has all the classes and functions related to waves in optics.
Contains
TWave
-
class
sympy.physics.optics.waves.
TWave
(amplitude, frequency=None, phase=0, time_period=None, n=n)[source]¶ This is a simple transverse sine wave travelling in a one-dimensional space. Basic properties are required at the time of creation of the object, but they can be changed later with respective methods provided.
It is represented as \(A \times cos(k*x - \omega \times t + \phi )\), where \(A\) is the amplitude, \(\omega\) is the angular velocity, \(k\) is the wavenumber (spatial frequency), \(x\) is a spatial variable to represent the position on the dimension on which the wave propagates, and \(\phi\) is the phase angle of the wave.
- Raises
ValueError : When neither frequency nor time period is provided
or they are not consistent.
TypeError : When anything other than TWave objects is added.
Arguments
- amplitudeSympifyable
Amplitude of the wave.
- frequencySympifyable
Frequency of the wave.
- phaseSympifyable
Phase angle of the wave.
- time_periodSympifyable
Time period of the wave.
- nSympifyable
Refractive index of the medium.
Examples
>>> from sympy import symbols >>> from sympy.physics.optics import TWave >>> A1, phi1, A2, phi2, f = symbols('A1, phi1, A2, phi2, f') >>> w1 = TWave(A1, f, phi1) >>> w2 = TWave(A2, f, phi2) >>> w3 = w1 + w2 # Superposition of two waves >>> w3 TWave(sqrt(A1**2 + 2*A1*A2*cos(phi1 - phi2) + A2**2), f, atan2(A1*cos(phi1) + A2*cos(phi2), A1*sin(phi1) + A2*sin(phi2))) >>> w3.amplitude sqrt(A1**2 + 2*A1*A2*cos(phi1 - phi2) + A2**2) >>> w3.phase atan2(A1*cos(phi1) + A2*cos(phi2), A1*sin(phi1) + A2*sin(phi2)) >>> w3.speed 299792458*meter/(second*n) >>> w3.angular_velocity 2*pi*f
-
amplitude
¶ Returns the amplitude of the wave.
Examples
>>> from sympy import symbols >>> from sympy.physics.optics import TWave >>> A, phi, f = symbols('A, phi, f') >>> w = TWave(A, f, phi) >>> w.amplitude A
-
angular_velocity
¶ Returns the angular velocity of the wave, in radians per second.
Examples
>>> from sympy import symbols >>> from sympy.physics.optics import TWave >>> A, phi, f = symbols('A, phi, f') >>> w = TWave(A, f, phi) >>> w.angular_velocity 2*pi*f
-
frequency
¶ Returns the frequency of the wave, in cycles per second.
Examples
>>> from sympy import symbols >>> from sympy.physics.optics import TWave >>> A, phi, f = symbols('A, phi, f') >>> w = TWave(A, f, phi) >>> w.frequency f
-
phase
¶ Returns the phase angle of the wave, in radians.
Examples
>>> from sympy import symbols >>> from sympy.physics.optics import TWave >>> A, phi, f = symbols('A, phi, f') >>> w = TWave(A, f, phi) >>> w.phase phi
-
speed
¶ Returns the propagation speed of the wave, in meters per second. It is dependent on the propagation medium.
Examples
>>> from sympy import symbols >>> from sympy.physics.optics import TWave >>> A, phi, f = symbols('A, phi, f') >>> w = TWave(A, f, phi) >>> w.speed 299792458*meter/(second*n)
-
time_period
¶ Returns the temporal period of the wave, in seconds per cycle.
Examples
>>> from sympy import symbols >>> from sympy.physics.optics import TWave >>> A, phi, f = symbols('A, phi, f') >>> w = TWave(A, f, phi) >>> w.time_period 1/f
-
wavelength
¶ Returns the wavelength (spatial period) of the wave, in meters per cycle. It depends on the medium of the wave.
Examples
>>> from sympy import symbols >>> from sympy.physics.optics import TWave >>> A, phi, f = symbols('A, phi, f') >>> w = TWave(A, f, phi) >>> w.wavelength 299792458*meter/(second*f*n)
-
wavenumber
¶ Returns the wavenumber of the wave, in radians per meter.
Examples
>>> from sympy import symbols >>> from sympy.physics.optics import TWave >>> A, phi, f = symbols('A, phi, f') >>> w = TWave(A, f, phi) >>> w.wavenumber pi*second*f*n/(149896229*meter)