The disclosure pertains to ray tracing methods.
Sophisticated computer-aided design systems are currently used by optical engineers in the design and analysis of optical systems. Even designs with complex optical surfaces such as diffractive or aspheric surfaces are relatively straightforward to evaluate. Evaluation of the polarization properties of optical system designs can be done using conventional Jones and Mueller matrices. Available methods are generally unsuitable for evaluation using incoherent light, or for optical systems in which scattering is of interest. Methods and apparatus for use in polarization ray tracing with incoherent light are needed.
Optical design systems comprise a memory that stores a plurality of polarization ray tracing tensors and parameters characterizing an optical system. A processor is coupled to the memory and configured to determine an output coherence matrix based on at least one polarization ray tracing tensor and an input coherence matrix. In some cases, the processor is configured to transform a polarization ray tracing tensor from a local coordinate system to a global coordinate system, wherein the local coordinate system is based on an s-polarization direction, a p-polarization direction, and an incident propagation direction. In typical embodiments, the processor is configured to cascade a plurality of polarization ray tracing tensors to form a cascaded polarization ray tracing tensor. The output coherence matrix is then determined as a product of the cascaded ray tracing tensor and the input coherence matrix. Polarization ray tracing tensors can be determined based on surface characteristics and associated Fresnel reflection or transmission coefficients, Mueller matrices, scattering functions, polarization ray tracing matrices. Polarization ray tracing tensors can be obtained in local or global coordinate systems and transformed between coordinate systems. For collimated rays, individual polarizing ray tracing tensors can be added, and the summed tensor applied to the input coherence matrix to obtain the output coherence matrix.
These and other features are set forth below with reference to the accompanying drawings.
As used in this application and in the claims, the singular forms “a,” “an,” and “the” include the plural forms unless the context clearly dictates otherwise. Additionally, the term “includes” means “comprises.” Further, the term “coupled” does not exclude the presence of intermediate elements between the coupled items.
The systems, apparatus, and methods described herein should not be construed as limiting in any way. Instead, the present disclosure is directed toward all novel and non-obvious features and aspects of the various disclosed embodiments, alone and in various combinations and sub-combinations with one another. The disclosed systems, methods, and apparatus are not limited to any specific aspect or feature or combinations thereof, nor do the disclosed systems, methods, and apparatus require that any one or more specific advantages be present or problems be solved. Any theories of operation are to facilitate explanation, but the disclosed systems, methods, and apparatus are not limited to such theories of operation.
Although the operations of some of the disclosed methods are described in a particular, sequential order for convenient presentation, it should be understood that this manner of description encompasses rearrangement, unless a particular ordering is required by specific language set forth below. For example, operations described sequentially may in some cases be rearranged or performed concurrently. Moreover, for the sake of simplicity, the attached figures may not show the various ways in which the disclosed systems, methods, and apparatus can be used in conjunction with other systems, methods, and apparatus. Additionally, the description sometimes uses terms like “produce” and “provide” to describe the disclosed methods. These terms are high-level abstractions of the actual operations that are performed. The actual operations that correspond to these terms will vary depending on the particular implementation and are readily discernible by one of ordinary skill in the art.
In some examples, values, procedures, or apparatus' are referred to as “lowest”, “best”, “minimum,” or the like. It will be appreciated that such descriptions are intended to indicate that a selection among many used functional alternatives can be made, and such selections need not be better, smaller, or otherwise preferable to other selections.
As used herein, light refers to propagating electromagnetic radiation in a wavelength range of interest such as visible, infrared, ultraviolet or other range or ranges.
In the disclosed examples, polarization ray tracing methods are described with reference to polarization-based parameters arranged as vectors (one-dimensional matrices), square matrices, tensors, or other arrangements. Polarization ray tracing can be conveniently performed and implemented in various types of computation hardware such as personal computers, lap tops, hand held communication devices, tablets or other devices. However, the same or similar polarization ray tracing can be produced using corresponding linear combinations of polarization-based parameters, without arrangement in a particular fashion such as, for example, as a square matrix. In addition, in the examples, full tensors, matrices, and vectors are generally used, but in some applications, only portions are needed to evaluate the optical arrangements of interest.
The calculation of the phase and optical path length of wavefronts through an optical system is an example of coherent ray tracing, ray tracing which determines the phase of the resulting light. If the calculation is capable of determining the phase of coherent light, then it is also suitable for determining the propagation and image formation of incoherent light through the optical system as well.
For some optical system simulations, the phase of the light is not needed or may not even be well defined. In many illumination systems, the light is polychromatic. The light may take many different paths to a particular point on the illuminated surface. The effects of interference between the different polychromatic beams are not observable because the optical path length differences are many waves. The illuminated spot is well approximated by the sum of intensities rather than the sum of amplitudes, or when polarization is considered, by the sum of Stokes parameters rather than the sum of Jones vectors.
A similar situation occurs in the stray light simulation. Consider a telescope in orbit looking at the surface of the earth. The sun is outside the field of view, but some sunlight may enter the telescope tube. By simulating the light scattering from the telescope baffles and other mechanical structures, as well as the reflections and refractions of the optical elements, the stray light due to the sun can be estimated at the focal plane, typically by Monte Carlo methods. The optical path lengths of the stray light rays incident on a particular pixel may vary by centimeters, even meters. Thus, even though the optical path lengths and phases of the rays may be calculated, the individual phases of a randomly generated set of rays is not particularly useful for simulating stray light measurements of the telescopes. By replacing the sun with a laser shining into the telescope barrel, a speckle pattern will result at the focal plane instead. Although this speckle pattern depends on the phases of all the light converging on a point, the speckle pattern cannot be simulated in detail since the speckle distribution depends on the roughness of all the baffles' surfaces. The detailed topography of the mechanical surfaces will never be known to an accuracy of a tenth of a wave. So even for this coherent laser light, the incoherent ray trace is appropriate for determining the flux levels at the focal plane.
Coherent ray tracing and incoherent ray tracing refer to the coherence and incoherence of the calculation respectively, and not the coherence and incoherence of the light. A coherent ray trace calculates phases and wavefronts, and can simulate image formation and point spread functions. An incoherent calculation may not necessarily calculate the phase of the ray path; sometimes only a bidirectional reflectance distribution function or a Mueller matrix may be known for a scattering surface, and the phase change is not known or calculated at ray intercepts.
Polarization ray tracing methods that can be used with coherent or incoherent light and that are suitable for stray light calculations are disclosed. For non-polarizing optical systems, eight independent parameters—amplitude, phase, three for diattenuation, and three for retardance—are required to describe polarization characteristics of ray paths through an optical system. One common representation is the Jones matrix to relate incident and exiting polarization states. The general case, with depolarizing elements or scattering, requires sixteen independent parameters—amplitude, three for diattenuation, three for retardance, and additional nine degrees of freedom for depolarization—for a complete polarization characterization of the system.
To provide mathematical description of the polarization properties of light, a coherence matrix of an electric field vector in global coordinates is used. A polarization ray tracing tensor is defined. Algorithms to calculate the tensor from surface amplitude coefficients defined in local coordinates, a Mueller matrix defined in its local coordinates, and a three-by-three polarization ray tracing matrix defined in global coordinates are derived. The polarization ray tracing tensor is defined in global coordinates and is used to ray trace incoherent light through optical systems with depolarizing surfaces. The polarization ray tracing tensor operates on the incident electric field's coherence matrix and returns the exiting coherence matrix in global coordinates. Therefore, such methods are suitable for scattered light ray tracing and incoherent addition of light.
For the case of parallel entering and parallel exiting beams of light, polarization ray tracing tensors can be added to get the exiting coherence matrix. Therefore, the combined polarization ray tracing tensor is defined for a specific incident propagation vector but not restricted by the exiting propagation vector. Polarization ray tracing tensor calculus through a volume of scattering particles is presented as an example.
The coherence matrix 3Φ of a light beam contains all the measurable 2nd order correlation information about the state of polarization, including intensity, of an ensemble of electromagnetic waves at a point. This positive semidefinite Hermitian 3×3 matrix is defined as
where E(t) is the instantaneous electric field vector; E†(t) is the transpose conjugate of E(t); stands for the Kronecker product; Ei*(t) is the complex conjugate of Ei(t); i=x, y, z; the brackets indicate the time average of the components
Under the assumption that the Ei(t) are stationary and ergodic, the brackets can alternatively be considered as ensemble averaging of E(t)E†(t).
In general, the time of measurement T is much larger than the coherence time for the partially coherent electromagnetic waves. Therefore, 3Φ is suited to describe coherency of quasimonochromatic, partially polarized light.
Conventional, two-dimensional (2D) Stokes parameters are defined on a plane perpendicular to the propagation vector of the light, using specific local coordinates. For a plane wave propagating along the z-axis
Thus the Stokes parameters associated with this plane wave are
S
0=φxx+φyy, S1=φxx−φyy, S2=φxy+φyx, S3=i(φyx−φxy), (1.2.4)
and the degree of polarization (DoP) for this plane wave is
Similar relations can be developed for plane waves propagating in other directions.
The three-dimensional degree of polarization 3DoP is defined by using the coherence matrix
wherein the Euclidean norms are
∥3Φ∥0=Tr(3Φ)=φxx+φyy+φzz,
∥3Φ∥2=√{square root over ((Σi,j=13|φi,j|2))}. (1.2.7)
The 3D degree of polarization 3DoP takes into account not only the degree of polarization of the mean polarization ellipse but also the stability of the plane that contains the instantaneous components of the electric field of the wave. Unpolarized light with a fixed propagation vector direction has 2D degree of polarization DoP=0 with 3DoP=0.5. Further discussions on 3DoP can be found in J. J. Gil, “Polarimetric characterization of light and media,” Eur. Phys. J. Appl. Phys. 40, pp. 1-47 (2007), which is incorporated herein by reference.
1.3 Projection of the Coherence Matrix onto Arbitrary Planes
To understand the 2nd order correlations that result when two wavefronts with two different electric fields overlap at a point, each electric field vector is converted to a coherence matrix 3Φ,
3Φ1=<E1(t)E1†(t)>, 3Φ2=<E2(t)
E2†(t)>. (1.3.1)
Coherence matrices can be added since the addition operator and integral operator commute. Therefore, the total coherence matrix of the two wavefronts is
3ΦTotal=3Φ1+3Φ2=<E1(t)E1†(t)>+<E2(t)
E2†(t)>. (1.3.2)
The advantage of 3ΦTotal is that it provides incoherent addition of two wavefronts in global coordinates with complete polarization information along all three axes. Therefore, this method is particularly useful for incoherent addition of multiple wavefronts with different propagation directions. Scattered light wavefronts do not follow law of reflection, refraction or diffraction but have various distributions of propagation directions depending on the type of scattering at the ray intercept. Since each coherence matrix 3Φi is defined in global coordinates, simple summation of coherence matrices provides the incoherent addition of wavefronts with different propagation directions. 3D electric field vectors or the coherence matrices contain full information along x, y, and z directions. However, polarization state is defined on a 2D plane and majority of polarization analysis or intensity measurements are done on a 2D plane. Therefore, an algorithm to find a projection of the coherence matrix 3Φ onto an arbitrary plane is necessary.
Projecting 3ΦTotal onto an arbitrary plane of interest is done by using proper local coordinates on the plane {circumflex over (x)}Loc and ŷLoc, which are perpendicular to the plane's surface normal {circumflex over (η)}={ηx, ηy, ηz}
{circumflex over (x)}
Loc⊥{circumflex over (η)} and ŷLoc={circumflex over (η)}×{circumflex over (x)}Loc. (1.3.3)
Then, projected 3ΦTotal onto a plane spanned by {circumflex over (x)}Loc and ŷLoc is
This matrix is written in its local coordinates as Jones matrices are often written in s and p local coordinates. Using Eq. (1.4.13), 3ΦProj.Loc can be written in global coordinates,
3ΦProj=R3ΦProj.LocR−1. (1.3.5)
The coherence matrix 3Φ is defined in global coordinates and thus allows incoherent addition of light by simple addition. Therefore, an operator which deals with 3Φ in global coordinates can provide a new tool for incoherent ray tracing through depolarizing optical systems.
A Polarization Ray Tracing Tensor (T=ti,j,k,l) is a 3×3×3×3 tensor which describes a depolarizing or non-depolarizing polarization interaction at a ray intercept or surface, or propagation through a sequence of depolarizing or non-depolarizing interactions,
T operates on the incident coherence matrix
(3ΦOut)i,j=Σk,lti,j,k,l(3ΦIn)k,l (1.4.2)
yielding the output coherence matrix where i, j, k, l=x, y, z, i.e.,
The coordinates for the input and output coherence matrices may be either local or global coordinates.
One significant advantage of the polarization ray tracing tensor T over a polarization ray tracing matrix P is that T can describe depolarizing optical systems. Therefore having an index that indicates how depolarizing a given tensor is can be meaningful. Analogous to how the Mueller depolarization index is defined, the depolarization index (DI) of the T can be defined when the T tensor is associated with a single exiting propagation vector. This DI is defined as
where the Euclidean distance between TID and T is the sum of each of the Euclidean distances of ti,j's,
|T−TID|=Σi,j=13SVDi,j,
and SVDi,j is the maximum singular value of (T−TID)i,j. The Euclidean distance between TID and the zero tensor is
For a ray propagating through an optical system with multiple surfaces, each surface in the system contributes a polarization ray tracing tensor. A cumulative polarization ray tracing tensor is obtained for that particular ray by multiplying the sequence of tensors.
Considering the primary property of the polarization ray tracing tensor shown in Eq. (1.4.2) and its dimensions (1×3×3×3), cascading two polarization ray tracing tensors T1 and T2 is
(Ttotal)i,j,m,n=Σk,l=13t2,i,j,k,lt1,k,l,m,n, (1.4.4)
and the exiting coherence matrix after the TTotal is
Similarly, the (i, j, v, w) component of the TTotal for a ray propagating through N ray intercepts can be calculated by cascading summations,
(TTotal)i,j,v,w=Σk,l=13Σm,n=13 . . . Σr,s=13Σt,u=13tN,i,j,k,ltN-1,k,l,m,n . . . t3,p,q,r,st2,r,s,t,ut1,t,u,v,w. (1.4.6)
When a collimated N-by-N grid of rays with a propagation vector {circumflex over (k)}In enters an optical system with N surfaces, each ray's cumulative polarization ray tracing tensor can be added to get the exiting coherence matrix for the incoherent addition of the exiting rays,
(3ΦOut)i,j=Σv,w=13{(Σq=1N
where q stands for the ray index, q=1, 2, 3, . . . , N2. Since all the rays in the incident grid have the same 3ΦIn, all the cumulative polarization ray tracing tensors can be added and then applied to 3ΦIn to get 3ΦOut. Note that the combined polarization ray tracing tensor (Σq=1N
If the incident grid of rays were not collimated, then the exiting coherence matrix of each ray is calculated using Eq. (1.4.2) and then added incoherently in order to get the incoherent addition of the exiting rays,
φOut,i,j=Σq=1N
Although the main purpose of using the polarization ray tracing tensor T is incoherent ray tracing through depolarizing optical systems, T can be used for the incoherent ray tracing through non-depolarizing optical systems. In this section, two ways of calculating the tensor are presented; one is using amplitude coefficients, defined in the surface local coordinates. The other is using the three-by-three polarization ray tracing matrix, defined in global coordinates.
1.5.2 A Polarization Ray Tracing Tensor from Surface Amplitude Coefficients
If surface reflection or transmission coefficients are given in {ŝIn, {circumflex over (p)}In} local coordinates defined based on propagation direction, and s- and p-polarization directions for the light propagating along {circumflex over (k)}In, the exiting electric field vector projected onto the local coordinate plane perpendicular to {circumflex over (k)}Out is
Therefore, the exiting coherence matrix in the local coordinates (3ΦOut.Loc) is
φOut.Loc,1,1=αssαss*φIn,ss+αssαps*φIn,sp+αpsαss*φIn,ps+αpsαps*φIn,pp,
φOut.Loc,1,2=αssαsp*φIn,ss+αssαpp*φIn,sp+αpsαsp*φIn,ps+αpsαpp*φIn,pp,
φOut.Loc,2,1=αspαss*φIn,ss+αspαps*φIn,sp+αppαss*φIn,ps+αppαps*φIn,pp,
φOut.Loc,2,2=αspαsp*φIn,ss+αspαpp*φIn,sp+αppαsp*φIn,ps+αppαpp*φIn,pp,
φOut.Loc,1,3=φOut.Loc,2,3=φOut.Loc,3,1=φOut.Loc,3,2=φOut.Loc,3,3=0, (1.4.10)
Eq. (1.4.10) can be written in terms of the polarization ray tracing tensor in local {ŝIn, {circumflex over (p)}In, {circumflex over (k)}In} and {ŝOut, {circumflex over (p)}Out, {circumflex over (k)}Out} coordinates, TLoc,
The polarization ray tracing tensor in global coordinates (T) can be calculated by applying proper coordinate transformation from the local coordinates to global coordinates using rotation matrices. Using unit vectors ŝIn, {circumflex over (p)}In, and {circumflex over (k)}In along s-polarization direction, p-polarization direction, and direction of propagation vectors defined as basis vectors of the rotation matrices, the incident coherence matrix (3ΦIn) in global coordinates is
3ΦIn=RIn3ΦIn.LocRIn−1, (1.4.12)
where RIn={ŝIn, {circumflex over (p)}In, {circumflex over (k)}In}t. Thus, the incident coherence matrix in local coordinates (3ΦIn.Loc) can be written as a function of φIn,i,j'S
Similarly, the exiting coherence matrix in local coordinates (3ΦOut.Loc) is
3ΦOut.Loc=ROut−13ΦOutROut, (1.4.14)
where ROut={ŝOut, {circumflex over (p)}Out, {circumflex over (k)}Out}t.
Inserting Eq. (1.4.13) and (1.4.14) to Eq. (1.4.11),
(ROut−13ΦOutROut)i,j=Σk,ltLoc,i,j,k,l(RIn−13ΦInRIn)k,l. (1.4.15)
Therefore, the exiting coherence matrix in global coordinates is
(3ΦOut)i,j=[ROut{Σk,ltLoc,i,j,k,l(RIn−13ΦInRIn)k,l}ROut−1]i,j. (1.4.16)
Comparing Eq. (1.4.2) and (1.4.16), the components of the polarization ray tracing tensor in global coordinates (ti,j,k,l) are the corresponding coefficients of (3ΦIn)k,l for (3ΦOut)i,j using Eq. (1.4.16). Table 1 shows the polarization ray tracing tensor (T) in global coordinates as a function of amplitude coefficients in local coordinates and the incident and exiting local coordinate basis vectors for,
ŝ
In
={s
In,x
,s
In,y
,s
In,z
}, {circumflex over (p)}
In
={p
In,x
,p
In,y
,p
In,z
}, ŝ
Out
={s
Out,x
,s
Out,y
,s
Out,z
}, {circumflex over (p)}
Out
={p
Out,x
,p
Out,y
,p
Out,z},
c
x,1=(αpppIn,x+αpssIn,x), cx,2=(αsppIn,x+αsssIn,x), cy,1=(αpppIn,y+αpssIn,y), cy,2=(αsppIn,y+αsssIn,y), cz,1=(αpppIn,z+αpssIn,z), cz,2=(αsppIn,z+αsssIn,z),
d
x,1=(pOut,xαpp*+sOut,xαsp*), dx,2=(pOut,xαps*+sOut,xαss*), dy,1=(pOut,yαpp*+sOut,yαsp*), dy,2=(pOut,yαps*+sOut,yαss*), dz,1=(pOut,zαpp*+sOut,zαsp*), dz,2=(pOut,zαps*+sOut,zαss*). (1.4.17)
In Mathematica, the tensor can be found by using the following command
t
i,j,k,l=Coefficient[φOut,i,j,φIn,k,l], (1.4.18)
where φOut,i,j is calculated from Eq. (1.4.16).
This section presents an algorithm to calculate the polarization ray tracing tensor T that corresponds to a three-by-three polarization ray tracing matrix P. This conversion is straightforward since the P matrix is already defined in global coordinates. The exiting electric field vector from the P matrix is
Using Eq. (1.2.1), 3ΦOut can be calculated and comparing the result with Eq. (1.4.2), the relationship of the polarization ray tracing tensor to the P matrix is
t
i,j,k,l
=P
i,k
P*
j,l, (1.4.20)
where i, j, k, l=1, 2, 3. Again, a set of Ts can be added for a collimated grid of incident rays using Eq. (1.4.7).
If a polarization ray tracing tensor T is associated with a single {{circumflex over (k)}In, {circumflex over (k)}Out} pair and is representing a non-depolarizing incoherent ray trace, an associated three-by-three polarization ray tracing matrix P can be uniquely defined to within an unknown absolute phase φ0. Since the tensor T is associated with intensity values of the electric field vector while the P matrix is associated with the amplitude values of the electric field vector, the absolute phase of the P matrix is lost when transforming P into T. First, the norm of each element in P matrix is calculated. Then, the phase of each element is calculated relative to φ0. Expressing P's elements in polar coordinates, the matrix becomes
From Eq. (1.4.20), diagonal elements in the tensor gives the norm of the P matrix elements
t
i,i,j,j
=P
i,j
P
i,j
*=|p
i,j|2, (1.4.22)
therefore,
p
i,j=√{square root over (ti,i,j,j)}. (1.4.23)
The phase of Pi,j can be calculated by choosing a reference; if pi,j≠0 for a particular i and j, its phase can be set to the absolute phase, φi,j=φ0 and all the other phases are defined relative to the absolute phase. From Eq. (1.4.20)
For example, if p1,1≠0
Using Eq. (1.4.23) and (1.4.24), the P matrix is uniquely defined with the absolute phase φ0.
This section provides a non-depolarizing example tensor calculation where incident light propagating along an axis 206 reflects from an aluminum coated surface 204 with the following parameters (shown in
where n is Aluminum's refractive index at 500 nm. The reflected light propagates along an axis 208. Input and reflected beams are described with reference to coordinating systems 202, 210 that are based on s- and p-polarization directions with respect to an arbitrary coordinating system 200. The corresponding amplitude reflection coefficients αi,j's are the Fresnel reflection coefficients,
The polarization ray tracing tensor in local coordinates is
Since the incident propagation vector is along the z-axis, any incident electric field vector can be written as EIn={EIn,x, EIn,y, 0}. Therefore, the incident coherence matrix in local coordinates and the one in global coordinates are the same
Using Eq. (1.4.16),
Therefore, the polarization ray tracing tensor in global coordinates is
Using the algorithm in Three-dimensional polarization ray-tracing calculus I: definition and diattenuation, G. Yun, K. Crabtree, and R. Chipman, Appl. Opt. 50, 2855-2865 (2011), which is incorporated herein by reference, a three-dimensional polarization ray tracing matrix can be calculated for this example,
and the exiting electric field vector is
which gives the same 3ΦOut as in Eq. (1.4.30).
1.6.1 A Polarization Ray Tracing Tensor for a Ray Intercept with Scattering
In order to ray trace through optical systems with scattering surfaces or depolarizing surfaces, Fresnel coefficients or amplitude coefficients do not provide sufficient information to describe polarization characteristics of such interactions. In general, a Mueller matrix or a Mueller matrix bidirectional reflectance distribution function BRDF is used to describe depolarizing optical surfaces (see, for example, Depolarization of diffusely reflecting manmade objects, B. DeBoo, J. Sasian, R. Chipman, Applied Optics, vol. 44, no. 26, pp. 5434-5445 (Sep. 10, 2005)), which is incorporated herein by reference. In this section, a method to transform the Mueller matrix into a polarization ray tracing tensor when the incident and exiting propagation vector, a Mueller matrix, and its local coordinates for the incident and exiting space are given. The logic is analogous to the previous section and Eq. (1.4.2) and (1.4.18) still holds. The only differences are the intermediate steps in getting a relationship between 3ΦOut and 3ΦIn.
As shown in Eq. (1.2.4), 2D Stokes parameters are related to the coherence matrix elements. Similar to Jones vectors, 2D Stokes parameters are defined in local coordinates. Therefore, the tensor can be calculated by representing the incident and exiting Stokes vectors in global coordinate coherence matrix elements. 2D Mueller calculus shows
The incident Stokes vector has a coherence matrix in the incident local coordinates {{circumflex over (x)}In, ŷIn, {circumflex over (k)}In},
and the exiting Stokes vector has a coherence matrix in the exiting local coordinates {{circumflex over (x)}Out, ŷOut, {circumflex over (k)}Out},
and each local coordinate basis vectors form right-handed local coordinates, i.e., {circumflex over (x)}i⊥{circumflex over (k)}i and ŷi={circumflex over (k)}i×{circumflex over (x)}i where i=In, Out.
Using the inverse of Eq. (1.4.12) 3ΦIn.Loc can be written as a function of φIn,i,j's in global coordinates
3ΦIn.Loc=RIn−13ΦInRIn, (1.5.4)
where RIn={{circumflex over (x)}In, ŷIn, {circumflex over (k)}In}t. Eq. (1.5.4) provides relationship between SIn,i's and φIn,i,j's.
Similarly,
3ΦOut=ROut3ΦOut.LocROut−1, (1.5.4)
where Rout={{circumflex over (x)}Out, ŷOut, {circumflex over (k)}Out}t.
Using Eq. (1.5.2) and (1.5.4), SIn can be written as a function of φIn,i,j's. Then using Eq. (1.5.3), SOut,i can be written as a function of φIn,i,j and mk,l where i, j=x, y, z and k, l=0, 1, 2, 3. Then SOut can be written as 3φOut by using Eq. (1.5.5) i.e., 3φOut can be written as a function of φIn,i,j and mk,l.
Again, the components of the tensor ti,j,k,l are the coefficients of φIn,k,l for φOut,i,j.
In this section, the example in Section 1.5.3 is revisited; the incident and exiting propagation vectors and a Mueller matrix, which is defined in the incident and exiting local coordinates are the given parameters,
Using Eq. (1.5.4)
From the Mueller matrix and Eq. (1.5.8)
Using Eq. (1.5.5), the exiting coherence matrix in global coordinates is
and the polarization ray tracing tensor is
which are the same as Eq. (1.4.30) and (1.4.31).
An example of the incoherent scattering of light from a scattering volume is now provided to further explain the methods. Most clouds have various particles with different scattering properties, sizes, refractive indices, etc. In this section, a simple and tractable but also realistic cloud model is set up in order to understand some aspects of the complex phenomena of cloud polarization. The polarization ray tracing tensor calculus is implemented to ray trace through a simplified cloud model and the PRTTs are incoherently added for the data analysis. The scattering particles are spherical water droplets such as droplet 302 shown in
The geometry of the volume scattering calculation is shown in
Twenty seven scattering volumes of water droplets are positioned in a cubic grid. The position vectors {x,y,z} are x=1, 2, 3, y=1, 2, 3, and z=1, 2, 3. Each water droplet is numbered from 1 to 27 starting from {1,1,1} to {3,3,3}. A collimated beam of light (for example from the sun) is incident on the scattering volume along {circumflex over (k)}In. A polarimeter views the volume along the x-axis ({circumflex over (k)}Out) which is chosen to allow easy summation of many different ray paths,
{circumflex over (k)}
In={1,1,1}/√{square root over (3)}, {circumflex over (k)}Out={1,0,0}. (1.6.1)
No absorption or extinction is assumed along the ray paths. The majority of the ray paths experience two scattering events and the remainder experience a single scattering event. Ray paths with single scattering event are called path1 and ray paths with two scattering events are called path2. There are 27 path1 and 702 path2 ray paths. By fixing the viewing angle of the polarimeter along {circumflex over (k)}Out, only the scattered light along {circumflex over (k)}Out after the first scattering for path1, and after the second scattering for path2, get detected by the polarimeter.
A polarization ray tracing tensor is calculated for each scattering event and for each ray path using the reflection coefficients calculated from the Mie scattering function at a given scattering angle as shown in
Then tensors representing ray paths that scatter from the qth water droplet toward the polarimeter are added
T
Sum,q=Σr=127Tq,r. (1.6.2)
wherein q=1, 2, 3, . . . , 27. Each TSum,q now contains depolarization effects from scattering.
The last step is adding the tensors from the same colored water droplets (along the x-axis) and calculating Tpixel,n,
T
pixel,n=Σq=3n-23nTSum,q (1.6.3)
where n=1, 2, 3, . . . , 9. This step creates a nine-by-nine grid of polarization ray tracing tensors as shown in
The polarization ray tracing tensors corresponding to detector pixels are
For an electric field vector {Ex, Ey, Ez} with a coherence matrix
the exiting coherence matrix (3ΦOut,j) after propagating through a volume of scatterers and detected at jth pixel can be calculated from Eq. (1.4.2) and Tj in Eq. (1.6.4). For example, 3ΦOut,s is
3ΦOut,5,1,1=27(φxx+φxy+φxz+φyx+φyy+φyz+φzx+φzy+φzz),
3ΦOut,5,2,2=0.0409(φxx+φyx+φzx)−0.0453(φxy+φyy+φzy)+0.0044(φxz+φyz+φzz),
3ΦOut,5,1,3=0.0361(φxx+φyx+φzx)−0.0195(φxy+φyy+φzy)+0.0555(φxz+φyz+φzz)
3ΦOut,5,2,1=0.0409(φxx+φyx+φzx)−0.0453(φxy+φyy+φzy)+0.0044(φzx+φzy+φzz),
3ΦOut,5,1,2=0.001(7φxx−8φxy+φxz−8φyx+9φyy−φyz+φzx−φzy),
3ΦOut,5,2,3=0.001(5φxx+3φxy−8φxz−6φyx−3φyy+φyz+φzy−φzz),
3ΦOut,5,3,1=−0.0361(φxx+φxy+φxz)−0.0195(φyx+φyy+φyz)+0.0555(φzx+φzy+φzz)
3ΦOut,5,3,2=0.001(5φxx−6φxy+φxz+3φyx−3φyy−8φzx+φzy−φzz)
3ΦOut,5,3,3=0.001(5φxx+2φxy−7φxz+2φyx+2φyy−4φyz−7φzx−4φzy+φzz) (1.6.5)
The coherence matrix of unpolarized light is
and the 3DOP=0.5. This light is equivalent to a 2D Stokes vector {1, 0, 0, 0} with the propagation vector {circumflex over (k)}In. The exiting coherence matrix at each pixel on the detector is calculated from tensors in Eq. (1.6.4)
Note that none of the exiting coherence matrices have x-electric field components since the exiting propagation vector is along the x-axis. The 3D degree of polarization of each exiting coherence matrix indicates that the exiting light is mostly unpolarized.
Each exiting coherence matrix can be reduced to 2D Stokes vectors in its local coordinates on the detector plane,
where the local coordinates are
2D degree of polarization can be calculated for each 2D Stokes vector and is plotted in
Both 2D and 3D degree of polarization of pixels 1, 2, 3, 4, and 7 are the same values. The pixels 1, 2, and 3 are aligned with the bottom row (the smallest z-value) of the water droplets and the pixels 3, 4, and 7 are aligned with the left most column (the smallest y-values) of the water droplets, which are the closest water droplets from the collimated incident plane wave. Therefore, most of the path2 exiting from the water droplets that are aligned with pixels 1, 2, 3, 4, and 7 come from the backward scattering (scattering angles >90°) whereas other water droplets have more forward scatterings than backward scatterings. All the single scattering paths path1 are equally distributed among nine pixels. As shown in
However, the diattenuation along the s-polarization for the backward scattering is greater than that of the forward scattering as shown in
For rays following path1, polarization of the scattered light is s-polarized since they experience single scattering. The s-polarization for this example is
ŝ={circumflex over (k)}
Out
×{circumflex over (k)}
In={0,−1,1}/√{square root over (0)}. (1.6.10)
The s-polarization is linearly polarized light at 45° in the detector's local coordinates. Therefore, S2 components of the 2D Stokes vectors in Eq. (1.6.8) provide how much of s-polarization exists in the exiting light.
However, SOut at each pixel is incoherent addition of exiting vectors from path1 and path2. Therefore, the polarization of the exiting light is not purely s-polarized.
This example can be extended to describe the larger cubical cloud by using more scattering water droplets. Similar example can be setup with different scattering volumes by choosing different refractive index of the scattering particles and the atmosphere. The incident light properties as well as the camera/detector viewing angle can be changed. All the tensor calculation methods that have been used in this example are general and can be modified depending on the assumptions and other conditions of the applications.
Referring to
With reference to
The illustrated device 1700 can include a controller or processor 1710 (e.g., signal processor, microprocessor, ASIC, or other control and processing logic circuitry) for performing such tasks as signal coding, data processing, input/output processing, power control, and/or other functions. An operating system 1712 can control the allocation and usage of the components 1702 and support for one or more application programs 1714. The application programs can include common mobile computing applications (e.g., email applications, calendars, contact managers, web browsers, messaging applications), or any other computing application. The application programs can include programs or program components 1714A-1714D are provided for defining polarization ray tracing tensors, calculating of coherence matrices, ray tracing, tensor cascading, and other operations.
The illustrated device 1700 can include memory 1720. Memory 1720 can include non-removable memory 1722 and/or removable memory 1724. The non-removable memory 1722 can include RAM, ROM, flash memory, a hard disk, or other well-known memory storage technologies. The removable memory 1724 can include flash memory or a Subscriber Identity Module (SIM) card, which is well known in GSM communication systems, or other well-known memory storage technologies, such as “smart cards.” The memory 1720 can be used for storing data and/or code for running the operating system 1712 and the applications 1714. Example data can include web pages, text, images, sound files, video data, or other data sets to be sent to and/or received from one or more network servers or other devices via one or more wired or wireless networks. Typically, optical system definitions and the results of ray trace operations are stored in the memory 1720 along with computer-executable instructions for the application programs 1714.
The device 1700 can support one or more input devices 1730, such as a touchscreen 1732, microphone 1734, camera 1736, physical keyboard 1738 and/or trackball 1740 and one or more output devices 1750, such as a speaker 1752 and a display 1754. Other possible output devices (not shown) can include piezoelectric or other haptic output devices. Some devices can serve more than one input/output function. For example, touchscreen 1732 and display 1754 can be combined in a single input/output device. The input devices 1730 can include a Natural User Interface (NUI). An NUI is any interface technology that enables a user to interact with a device in a “natural” manner, free from artificial constraints imposed by input devices such as mice, keyboards, remote controls, and the like. Examples of NUI methods include those relying on speech recognition, touch and stylus recognition, gesture recognition both on screen and adjacent to the screen, air gestures, head and eye tracking, voice and speech, vision, touch, gestures, and machine intelligence. Other examples of a NUI include motion gesture detection using accelerometers/gyroscopes, facial recognition, 3D displays, head, eye, and gaze tracking, immersive augmented reality and virtual reality, systems, all of which provide a more natural interface, as well as technologies for sensing brain activity using electric field sensing electrodes (EEG and related methods). Thus, in one specific example, the operating system 1712 or applications 1714 can comprise speech-recognition software as part of a voice user interface that allows a user to operate the device 1700 via voice commands. Further, the device 1700 can comprise input devices and software that allows for user interaction via a user's spatial gestures, such as detecting and interpreting gestures.
A wireless modem 1760 can be coupled to an antenna (not shown) and can support two-way communications between the processor 1710 and external devices, as is well understood in the art. The modem 1760 is shown generically and can include a cellular modem for communicating with the mobile communication network 1704 and/or other radio-based modems (e.g., Bluetooth 1764 or Wi-Fi 1762).
The device can further include at least one input/output port 1780, a power supply 1782, a satellite navigation system receiver 1784, such as a Global Positioning System (GPS) receiver, an accelerometer 1786, and/or a physical connector 1790, which can be a USB port, IEEE 1394 (FireWire) port, and/or RS-232 port. The illustrated components 1702 are not required or all-inclusive, as any components can be deleted and other components can be added.
In example environment 1800, various types of services (e.g., computing services) are provided by a cloud 1810. For example, the cloud 1810 can comprise a collection of computing devices, which may be located centrally or distributed, that provide cloud-based services to various types of users and devices connected via a network such as the Internet. The implementation environment 1800 can be used in different ways to accomplish computing tasks. For example, some tasks (e.g., processing user input and presenting a user interface) can be performed on local computing devices (e.g., connected devices 1830, 1840, 1850) while other tasks (e.g., storage of data to be used in subsequent processing) can be performed in the cloud 1810. Polarization ray tracing operations, data storage, user inputs and outputs can be distributed throughout the connected computing devices.
In example environment 1800, the cloud 1810 provides services for connected devices 1830, 1840, 1850 with a variety of screen capabilities. Connected device 1830 represents a device with a computer screen 1835 (e.g., a mid-size screen). For example, connected device 1830 could be a personal computer such as desktop computer, laptop, notebook, netbook, or the like. Connected device 1840 represents a device with a mobile device screen 1845 (e.g., a small size screen). For example, connected device 1840 could be a mobile phone, smart phone, personal digital assistant, tablet computer, or the like. Connected device 1850 represents a device with a large screen 1855. For example, connected device 1850 could be a television screen (e.g., a smart television) or another device connected to a television (e.g., a set-top box or gaming console) or the like. One or more of the connected devices 1830, 1840, 1850 can include touchscreen capabilities. Touchscreens can accept input in different ways. For example, capacitive touchscreens detect touch input when an object (e.g., a fingertip or stylus) distorts or interrupts an electrical current running across the surface. As another example, touchscreens can use optical sensors to detect touch input when beams from the optical sensors are interrupted. Physical contact with the surface of the screen is not necessary for input to be detected by some touchscreens. Devices without screen capabilities also can be used in example environment 1800. For example, the cloud 1810 can provide services for one or more computers (e.g., server computers) without displays.
Services such as ray tracing services can be provided by the cloud 1810 through service providers 1820 such as ray tracing provider 1870, or through other providers of services such as a n optical fabricator 18770. Some cloud services can be customized to the screen size, display capability, and/or touchscreen capability of a particular connected device (e.g., connected devices 1830, 1840, 1850).
In example environment 1800, the cloud 1810 provides the technologies and solutions described herein to the various connected devices 1830, 1840, 1850 using, at least in part, the service providers 1820. For example, the service providers 1820 can provide a centralized solution for various cloud-based services. The service providers 1820 can manage service subscriptions for users and/or devices (e.g., for the connected devices 1830, 1840, 1850 and/or their respective users).
With reference to
A computing system may have additional features. For example, the computing environment 1900 includes storage 1940, one or more input devices 1950, one or more output devices 1960, and one or more communication connections 1970. An interconnection mechanism (not shown) such as a bus, controller, or network interconnects the components of the computing environment 1900. Typically, operating system software (not shown) provides an operating environment for other software executing in the computing environment 1900, and coordinates activities of the components of the computing environment 1900.
The tangible storage 1940 may be removable or non-removable, and includes magnetic disks, magnetic tapes or cassettes, CD-ROMs, DVDs, or any other medium which can be used to store information in a non-transitory way and which can be accessed within the computing environment 1900. The storage 1940 stores instructions for the software 1980 implementing one or more innovations described herein.
The input device(s) 1950 may be a touch input device such as a keyboard, mouse, pen, or trackball, a voice input device, a scanning device, or another device that provides input to the computing environment 1900. For video encoding, the input device(s) 1950 may be a camera, video card, TV tuner card, or similar device that accepts video input in analog or digital form, or a CD-ROM or CD-RW that reads video samples into the computing environment 1900. The output device(s) 1960 may be a display, printer, speaker, CD-writer, or another device that provides output from the computing environment 1900.
The communication connection(s) 1970 enable communication over a communication medium to another computing entity. The communication medium conveys information such as computer-executable instructions, audio or video input or output, or other data in a modulated data signal. A modulated data signal is a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media can use an electrical, optical, RF, or other carrier.
Any of the disclosed methods can be implemented as computer-executable instructions stored on one or more computer-readable storage media (e.g., one or more optical media discs, volatile memory components (such as DRAM or SRAM), or nonvolatile memory components (such as flash memory or hard drives)) and executed on a computer (e.g., any commercially available computer, including smart phones or other mobile devices that include computing hardware). The term computer-readable storage media does not include communication connections, such as signals and carrier waves. Any of the computer-executable instructions for implementing the disclosed techniques as well as any data created and used during implementation of the disclosed embodiments can be stored on one or more computer-readable storage media. The computer-executable instructions can be part of, for example, a dedicated software application or a software application that is accessed or downloaded via a web browser or other software application (such as a remote computing application). Such software can be executed, for example, on a single local computer (e.g., any suitable commercially available computer) or in a network environment (e.g., via the Internet, a wide-area network, a local-area network, a client-server network (such as a cloud computing network), or other such network) using one or more network computers.
For clarity, only certain selected aspects of the software-based implementations are described. Other details that are well known in the art are omitted. For example, it should be understood that the disclosed technology is not limited to any specific computer language or program. For instance, the disclosed technology can be implemented by software written in C++, Java, Perl, JavaScript, Adobe Flash, or any other suitable programming language. Likewise, the disclosed technology is not limited to any particular computer or type of hardware. Certain details of suitable computers and hardware are well known and need not be set forth in detail in this disclosure.
It should also be well understood that any functionality described herein can be performed, at least in part, by one or more hardware logic components, instead of software. For example, and without limitation, illustrative types of hardware logic components that can be used include Field-programmable Gate Arrays (FPGAs), Program-specific Integrated Circuits (ASICs), Program-specific Standard Products (ASSPs), System-on-a-chip systems (SOCs), Complex Programmable Logic Devices (CPLDs), etc.
Furthermore, any of the software-based embodiments (comprising, for example, computer-executable instructions for causing a computer to perform any of the disclosed methods) can be uploaded, downloaded, or remotely accessed through a suitable communication means. Such suitable communication means include, for example, the Internet, the World Wide Web, an intranet, software applications, cable (including fiber optic cable), magnetic communications, electromagnetic communications (including RF, microwave, and infrared communications), electronic communications, or other such communication means.
The disclosed methods, apparatus, and systems should not be construed as limiting in any way. Instead, the present disclosure is directed toward all novel and nonobvious features and aspects of the various disclosed embodiments, alone and in various combinations and subcombinations with one another. The disclosed methods, apparatus, and systems are not limited to any specific aspect or feature or combination thereof, nor do the disclosed embodiments require that any one or more specific advantages be present or problems be solved.
Algorithms for the incoherent polarization ray tracing through depolarizing and non depolarizing optical systems are described. A coherence matrix of the incident ray's electric field vector (3ΦIn) and a coherence matrix of the exiting ray's electric field vector (3ΦOut) at qth ray intercept are related by a polarization ray tracing tensor, Tq by Eq. (1.4.2). By cascading the polarization ray tracing tensors as shown in Eq. (1.4.6), the electric field vector's coherence matrix at the exit pupil or a detector can be calculated from the coherence matrix of the incident electric field vector at the entrance pupil or the source. Since 3ΦIn, 3ΦOut, and Tq are defined in global coordinates, incoherent addition of the coherence matrices or polarization ray tracing tensors are more straightforward, and therefore much less error prone, than adding 2D Stokes parameters or Mueller matrices, where each vector or matrix is described in different local coordinates. As shown in Eq. (1.4.7), the polarization ray tracing tensor is not restricted by a single {circumflex over (k)}Out, which is a critical characteristic for dealing with scattering or stray light analysis.
This application claims the benefit of U.S. Provisional Patent Application 61/848,116, filed Dec. 21, 2012 which is incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
61848116 | Dec 2012 | US |