in general , cdsd is a spectrum identification technique based on similarities between an established set of spectral signatures and an unknown spectrum to be tested . it is used to discriminate between very similar spectral signatures of non - reacting chemicals within a limited spectral band , and allows for the estimation of the chemical components in a mixture or the presence of unmixed chemicals in a spectrally “ cluttered ” background environment . referring now specifically to fig1 , in one exemplary embodiment , the cdsd system 10 of the present invention includes an active illuminator 12 , such as a laser or other light source , including beam projection optics that are capable of illuminating a “ field ” or cell 14 . the cdsd system 10 also includes light collection optics 16 that are capable of collecting light from the “ field ” or cell 14 . these light collection optics 16 may include , for example , optical systems of lenses and windows ( made from materials like sapphire ( al 2 o 3 ), zinc sulfide ( zns ), zinc selenide ( znse ), silicon ( si ), and / or germanium ( ge )) used in non - imaging configurations . the collected light is run through a plurality of optical broadband beam splitters 18 , such as a plurality of optical plates , with specific optical reflections ( e . g ., 5 - 15 %) and transmissions ( e . g ., 85 - 95 %), made from calcium fluoride ( caf 2 ), silicon ( si ), zinc selenide ( znse ), and / or fused silica ( sio 2 ), that feed a plurality of optical low - resolution filters 20 ( n - optical transmission filters of finite but limited band ), such as a plurality of glass filters , made of silicon ( si ), zinc selenide ( znse ), and / or quartz , and a plurality of associated optical detection elements 22 , such as a plurality of thermal detectors ( such as bolometers , pyroelectrics , thermopiles , or golay cells ) or photon detectors ( such as photoconductors , photovoltaics , or photodiodes ). finally , an unfiltered reference detector 24 is provided . the cdsd technique requires first having a collection of well characterized spectra from the desired “ target ” chemical or chemicals to be identified ( see fig2 ). using the set of optical low - resolution filters 20 , the total detectable spectral power within the filter bandwidth is collected by the set of n detectors 22 , resulting in a list of values representing the total integrated spectral response of the target signatures under the optical filter limits . this list of values is then used to construct n - dimensional vectors of unit magnitude within the n - spectral filter orthonormal configuration space , which has no statistical or physical interpretation ( see fig3 ). it is equivalent only to the relative response of the target spectrum to the optical filter band - pass . for a group of m - chemical targets , there are m normalized vectors of n - dimensions , each uniquely representing a target chemical . these are called “ base ” or “ target ” vectors . the m base vectors define a polygon in the n - dimension configuration space . any test spectrum signature that is collected through the existing optical low - resolution filters 20 , can be expressed as a normalized - magnitude test vector in the same configuration space . if the test vector is a linear combination of any , or all , of the base vectors , it has definite geometrical relations with the base vector polygon &# 39 ; s sides and surface normals . more specifically , if the test vector is only a linear combination of the existing base vectors , then it lies within the polygon volume . further , it has projections to all surface normals of the polygon &# 39 ; s sides ( see fig4 ). if the test vector lies outside the polygon volume , it may be expressed as a linear combination of components internal and external to the polygon . however , it will not have projections to all side surface normals , as it is not possible to be orthogonal to all of them . these orthogonality criteria serve as the discrimination rules for the test vectors ( i . e ., chemicals ). the test vectors are compared to the polygon side surface normal and , based on the comparison results , a “ truth ” table is assembled . the truth table has three possible value entries : 0 , 1 and & gt ;& gt ; 1 ( see fig5 ). in the case of a 0 outcome , the test vector does not have a component within the polygon side defined by the particular base vectors . in the case of a 1 outcome , the possibility exists that the test vector is made of a linear combination of the two base vectors acting as the edges of the polygon side . for an outcome & gt ;& gt ; 1 , there is no possibility that the test vector is made by any component of the base set . the results of the truth table are further compared within the possible outcomes , to discriminate for cases of contradiction in result . at the end of the comparative step between the table outcomes , a likelihood of detection is the output . the operations reduce the possibilities to a binary outcome , of “ yes ” or “ no ” concerning the presence of any of the m target chemicals in the test material . the cdsd method is based on the initial collection of the spectral absorption signal from a set of “ pure ” chemical vapors of interest that have similar absorption bands and therefore strongly overlapping spectra . it then uses optical functions as broad - wavelength extent band - pass filters and computes the overlap of the vapor spectrum with the filter set ( see fig6 ). the filters are not only broadband , but also can be overlapping with each other as well . the resulting numbers form a set of unit vectors in an abstract configuration space , each representing a pure vapor , which is then used to define a volume through the triple vector product operation : a × b × c . the method takes advantage of the fact that any test vapor unit vector ( of a mixture or a pure chemical outside the original set ), will either be inside this volume or outside of it . if the test vector is inside the volume , and can be expressed by a linear combination of the three chosen pure unit vectors , it will have specific vector product relations with the defined volume . if the test vector is not inside the volume , it will have different product relations . the method uses the vector and scalar product operations of the test vector with the pure vapor vectors in order to identify the test vector as a part of the volume or external to it . below are results from experimental measurements of pure and mixed vapors , as well as tests with vapors outside the chosen set . one embodiment of the computer program flow is shown schematically in fig6 . the computer algorithm calculations are based on the following analysis . considering the ir light absorption of as - received chemical vapors , or a mixture of non - reacting vapors from different substances , the spectral signal can be “ filtered ” in wave - vector space using a windowing function f 1 ( k , k 1 , δk 1 ), such that : v ℓ ⁡ ( t ) = ∫ δ ⁢ ⁢ k ⁢ [ f ❘ ℓ ⁡ ( k , k ℓ , δ ⁢ ⁢ k ℓ ) ⁢ s ⁡ ( k , δ ⁢ ⁢ k , t ) ] ⁢ dk ≥ 0 ( 1 ) where s ( k , δk , t ) is the absorption signal in the 2500 - 3500 cm − 1 spectral range , δk , at time t , and v 1 ( t ) is the resulting spectral - filter overlap integral value ; with index 1 identifying the filtering window from a predetermined set of such filters . the filter window function f 1 ( k , k 1 , δk 1 ) can be of arbitrary complexity , as long as it is finite and positive over all wave - vectors , and δk 1 & lt ; δk , i . e ., the spectral extent of filter 1 ( δk 1 ) is smaller than the collected spectral signal extent . the filter window function location within δk is identified by the wave - number k 1 , which is the midpoint of its extent δk 1 . as mentioned above , the original spectral signal sets collected could be changing in time , as gases move through the detection apparatus , or as evaporation changes the finite mixture contents under test . the maximum value of the filtering window function is normalized to unity , with the result v 1 ( t ) as the area under the filtered spectral signal , bounded by the shape of the filter f 1 ( k , k 1 , δk 1 ). the shape of each filtering window function is chosen so that no two filters are identical , even though they could overlap with each other , and also to allow for different broad spectral extents , δk 1 . the cdsd method utilizes an abstract 1 - dimensional orthonormal configuration space , where the basis unit vectors are the filter windowed responses to a uniform background spectrum of unit value over the range δk , i . e ., s ( k , δk , t )= 1 . the area under each filtering window operation generates a set of non - unique values , which are then used to create a configuration space vector for each vapor ( or vapor mixture ) analyzed . in the present case , a set of three windowing filter functions ( f 1 , f 2 , f 3 ) are constructed , so that the result of the spectral “ filtering ” using eq . 1 , at a certain absorption spectrum from an instance t , is expressed as the vector : v m ( t )= v 1m ( t )| 1 + v 2m ( t )| 2 + v 3m ( t )| 3 ( 2 ) where v m ( t ) is the configuration - space v representing the three windowed responses v 1m ( t ) in the basis ( f 1 , f 2 , f 3 ) for vapor m . this representation is abstract , since the configuration space has no physical meaning other than the response of the signal windowed by the chosen filters . it can be considered as a specific “ cataloging fingerprint ” of the vapors tested , representing a set of values with no limitations to the number of filters one can use to construct it . the imposed condition is that the basis unit vectors are purposely constructed with directions that obey vector orthonormality conditions . the cdsd method requires at least three overlapping filter windows , to investigate three chemicals , such as : acetone , hexanes , and fuel oil . further , each vector represents a chemical vapor from the set : acetone , hexanes and fuel oil , and should be uniquely identifiable . since the component values of the vector can only be positive , due to the choice of only positive windowing functions , v m ( t ) exist only in the space of positive values of v 1m ( t ). such a vector is depicted in fig3 a . temporal changes of the spectral signal s m ( k , δk , t ) of a chemical vapor m can be separable from the spectrum , indicating that the spectrum is a scaled function of time t ( t ), such that : since the filter windowing function is chosen to be time independent , this implies that the resulting filtered spectral vector components , v 1m , are also time independent . in the case of a flowing system detecting a specific vapor , t ( t ) could be an exponential decaying function , or an increasing function , completely dependent on the evaporation rate of the chemical and experimental conditions . in the case of a closed stationary gas system , the value of the scaling function can be set to unity , as it is constant . eq . 3 implies that , for data from vapors of chemical m , the time evolution of the representative v m ( t ) can be separated from the components of the vector describing the vapor . therefore , time scaling affects only the magnitude of the vector , and not its direction in the configuration space . if one normalizes the vectors with respect to the maximum magnitude within the set of spectra collected , time evolution is represented as a contraction or expansion of v m ( t ), with a maximum value of 1 . this non - interacting vapor vector normalization allows the removal of scaling differences between different sets of collected data , taken under different conditions , involving the same chemical m . when one uses the vector operation of the scalar triple - product to define a set of selection rules , relating the uniqueness of the as - received chemical vapor vectors for different sets of experiments , the vapors from the three exemplary chemicals tested are stable mixtures of non - interacting components , and are non - interacting between them as well . the set of vapor vectors selected should be unique to identify each as - received chemical vapor , from mixtures of these vapors with each other . for a set of three non - identical normalized vapor vectors a n , f n , and h n , corresponding respectively to acetone , fuel oil , and hexanes , the scalar triple - product is : a n ·( f n × h n )= h n ·( a n × f n )= f n ·( h n × a n )≠ 0 ( 4 ) eq . 4 is geometrically depicted as the volume defined by the three vapor vectors in the configuration space of filters ( f 1 , f 2 , f 3 ) in fig3 b . the volume is bound by the three vectors and eq . 4 is a sufficient condition to imply that the vectors are not co - planar . therefore , one can use the set of predetermined filter windows from eq . 1 to generate the volume by eq . 4 and test measured spectral vectors to determine if they are included inside this volume , or reside outside of it . if a test vapor vector is used as part of the projection operation ( dot product ) into the vector cross products of eq . 4 , the result discriminates with respect to the constituents of the cross product . the terms inside the parentheses of eq . 4 define a geometric surface in configuration space . if the test vector is not contained within this surface , the triple product results in a non - zero value less than unity , indicating that the vector is inside the abstract volume . if the test vector is outside the volume , and by consequence not on any of the surfaces bounding the volume , the projection will be greater than unity or negative . computing the properties of the vapor representing normalized vectors a n , f n , and h n , one finds the orthonormal unit - vector representing each of the surfaces as n ml ( see fig4 ): the vector projections of a n , f n , and h n on each one of the above normal unit vectors result in the discrimination table : the table indicates that the unit normal to each surface , defined by its respective vectors , is perpendicular to both of these vectors and not to the third . eqs . 6 can be viewed as a logical table , where normal vectors discriminate with respect to their generators , but not to another non - identical vector . if a test vapor vector u n contains a linear combination of mixed vapor vectors a n , f n , and h n , such that : u n = α ( t ) a n + β ( t ) h n + γ ( t ) f n ( 7 ) where α ( t ), β ( t ), γ ( t ) are time varying scaling coefficients , the discrimination operation corresponding results can be computed using the normalized projection of the vector set : if all three of the vapors are present in the test measurements , and there are no vapors detected other than from the selected un - mixed vapor group , there may be instances t 0 when α ( t 0 )+ β ( t 0 )+ γ ( t 0 )= 1 . this depends on the vapor reservoir and evaporation properties . however , if the above sum of the scaling coefficients is greater than unity , then the discrimination operation indicates that the projections of the vapor vector under test are outside the configuration volume defined by eq . 4 , and therefore are not a match to some of the members of the group a n , f n , and h n . in the case that any one of the above coefficients α , β , γ , is greater than 1 , and the overall sum is between 0 and 1 , there must be at least another one which will be negative in value , and therefore both are non - matches for the given group . in general the operational vector construct outlined above will not yield absolute zero results in operations like that of eq . 6 . the detection system and the choice of the spectrally filtered vapor vector set will include some experimental uncertainty . this uncertainty will produce matching or mismatching errors . optimizing the functional form of f 1 ( k , k 1 , δk 1 ), meaning : the filter / window extent δk 1 , the position of the filter / window ( k 1 ) in the spectral range of interest ( δk ), and the relative position of the filters with respect to each other , will result in well - defined un - mixed vapor vectors , and this in turn will make the discrimination operations more precise . the ability of the cdsd method to differentiate the presence of any one vapor from a select group was tested as well . to include the effects of the discriminating coefficients sum - result in the computed individual discriminating coefficient values , we chose to display a sum - weighted value for each coefficient , i . e ., normalizing the coefficients to their sum : α _ = α α + β + γ ; β _ = α α + β + γ ; γ _ = α α + β + γ ( 9 ) where α , β , γ are the normalized coefficients of acetone , hexanes , and fuel oil , respectively . this ratio guarantees that the computed results will be a fraction of the total operation calculation , and that large sum values will suppress individual coefficients , thus indicating no matches with the selected un - mixed vapor . in one trial , we used acetone alone and in the other fuel oil alone . the system was thoroughly purged between runs , flowing dry nitrogen through it for a number of hours . the results of the matching indicator ( α + β + γ ) and of each weighted discriminating coefficients ( eq . 9 ) in the test are shown in fig7 . for the first 180 s ( 10 absorption spectra ) of the experiment , cdsd 10 identified one of the as - received chemical vapors present , and from 200 s and beyond it indicated no matches to any of the vapors from the original set . in the fuel oil trial , the indicator was present from 80 s and beyond , whereas no vapor was present earlier . the coefficients did not vary significantly after 360 s , indicating that the vapors flowing through the system had reached a steady state . the individual discriminating coefficients are plotted as fractions to their overall sum for each instance . this allows for clear comparisons between the operations at each instance and through the entire measurement interval . for the acetone trial displayed in fig8 a , the corresponding coefficient ( α ) shows initially a high fractional value , which decays with time to zero . the other two coefficients have in all instances values much lower than α , with the fuel oil coefficient ( γ ) actually taking negative values initially , which further indicates complete absence from this trial . the hexanes coefficient ( β ) shows positive values for the first 80 s of the experiment , however , the comparative ratio to acetone is never higher than 1 : 10 . after 200 s the finite initial volume of acetone vapor has moved through the detection system , and the discrimination results α , β , γ become zero . in the case of fuel oil ( γ ), shown in fig7 b , we observe an initial absence of all detectable vapors , followed by a gradual increase in the detection of fuel oil . this result is reasonable , since the evaporation rate constant for fo is 0 . 04 , whereas the corresponding constant for acetone is 14 . 4 . the data clearly shows that it takes 60 s from the start of the experiment for the fo vapors to reach the detecting cell , and then another 140 s to reach the maximum vapor concentration . for the rest of the data collected the slow evaporation rate is enough to maintain the presence of fo in the cell . the discrimination results show clearly the time evolution of the event , identifying fo and not any of the other vapors in the group . mixtures of acetone , hexanes , and fo vapors from solutions containing 50 % fo with 50 % acetone or hexanes were measured as well . due to their relative evaporation rate differences , and the observations from the un - mixed vapor trials , the expectation was that , if the discriminating comparison was sensitive to each component from the mixture , the system flow - through dynamics should be noticeable . the trial with the mixture of acetone and fo , clearly identified the time evolution of the test . acetone is present from the initial observation , with α decaying thereafter , where fo is steadily increasing its presence in the flowing cell , peaking in value at 120 s . in the first 60 s of the time sequence , the hexanes signal ( β ) is not zero , and after 140 s it becomes negative . this small value of β within the first 80 s of the experiment is attributed to the weak overall signal due to the slow evaporation of the fuel oil . because the signal is weak , the system decides that this “ something ” may be hexanes ( β ) or fuel oil ( γ ) and registers as such . as the experiment progresses , the relative strength of the signal arising from the fuel oil increases ( as more fuel oil evaporates and enters the ftir ) and the system begins to clearly identify the second component present as fuel oil . thus , the value for γ increases while the value for β decreases ( until it reaches zero around t = 100 s ) indicating that the system has clearly identified fuel oil as being present and hexanes as not present . this can be considered as signal “ crosstalk ”, and is related to the minimum discrimination levels ( detectivity ) for the signals measured . fig8 b shows the results from a trial with a mixture of hexanes and fo . the discrimination operation clearly identifies hexanes ( β ) initially peaking in signal , and then decaying to zero after 250 s of observation . during the same interval , fo ( γ ) is simultaneously detected , and its signal persists to a time longer than 400 s . acetone ( α ) is clearly absent . this result , when compared to the acetone / fo mixture is also reasonable , since the evaporation rate constant for hexanes is much greater than fo . further , optimization of the filter windowing functions minimizes the detection uncertainty . the cdsd method of the present invention has high significance in the field of chemical sensing , as it is capable of determining the presence or absence of particular target vapors , even in the presence of highly similar spectral absorption vapors ( interferants ), with only a single spectrum , collected in 10 - 20 seconds . the system used to test out the method consisted of a finite quantity of vapors forced through a gas line , not a static sample cell , and the results clearly identified vapor types at different stages of evaporation and transition . a key aspect is the extension of the configuration space , and the vector operations within it , in contrast to the vector projection methods used by lda or kromoscopy . this new approach allows for simpler computations , in a larger configuration space , instead of a determination of the maximum deviation of projections that lda or kromoscopy are based on . the results can be obtained quickly , with high accuracy and low uncertainty , in a dynamically changing gaseous environment . detectivity of chemical vapors are possible with target presence lower than 1 part - per - million ( ppm ). the operations are limited to finite matrix multiplications , which simplifies the demands for computational power on small , handheld , and portable systems for chemical sensing applications . although the present invention is illustrated and described herein with reference to preferred embodiments and specific examples thereof , it will be readily apparent to those of ordinary skill in the art that other embodiments and examples may perform similar functions and / or achieve like results . all such equivalent embodiments and examples are within the spirit and scope of the present disclosure , are contemplated thereby , and are intended to be covered by the following claims .