mea con blip thrm-diff-mfe.mfe page 1 - intrel

22
OMD Photon Noise Suppression via Thermal Diffusion Mechanical Expansion Amplifier (US Patent 7,707,896) mea_con_blip_thrm-diff-mfe, mea_con_blip (Also as: mea_con_noise_photon-diff-mfe) By James A. Kuzdrall Copyright 2009 Intrel Service Company Some rights reserved Box 1247 http://www.intrel.com/copyright Nashua NH 03061 Change Log : 01-Jan-10: correct thermal diffusion time constant (original/2) 18-Dec-09: random seed for gauss() 14-Dec-09: narrower detector spans pole-zero range 07-Dec-09: combine 8 runs via average; width in file name; block functions 14-Nov-09: use power spectrum 17-Jul-09: created 20-Dec-09 Overview The thermal-expansion-based radiometer explored herein uses the MEA (Mechanical Expansion Amplifier) technology prior to electronic amplification. The OMD (Opto-Mechanical Detector) which results has very high sensitivity and, supprisingly, attenuates the photon noise that limits other infrared detectors. The outputs of all detectors include a noise generated by the statistical variation in the arrival of photons from warm bodies in their view. All bodies exchange radiant energy with their surroundings, even when at the same temperature (thermal equilibrium). For the OMD, the entire bowing strip is subject to this noise, including the surface facing the substrate. To the great advantage of the OMD, it responds much less to the photon noise than does a conventional detector. The attenuation results from two cooperating characteristics of the system: 1) the bowing strip must expand across its entire width to register a signal, and 2) the photon arrival is both temporally and spatially random. While a conventional detector's response to broadband noise is smoothed by just a temporal averaging, the OMD response is smoothed by both the temporal averaging and an analogous spatial averaging. Two mechanisms suppress the photon noise: 1) slow thermal diffusion across the bowing strip width, and 2) thermal conduction from the bowing strip to the substrate before the temperature change can propagate the full width of the strip. The notebook mea_con_blip_tek-cond-mfe documents the second mechanism, which requires a rarfied gas conductor for operation. The first mechanism, covered herein, operates both in vacuum and in rarefied gas. The investigation begins by characterizing the effect of spatially random noise photons. Using a bulk material model rather than a quantum model, the photon is absorbed at point on the strip where its energy converts to heat (temperature rise). From there, the heat spreads to the rest of the strip by thermal conduction. Questions addressed : (See also Results section): C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 1 Intrel Service Company 9/6/111 Page 1

Upload: others

Post on 02-Jun-2022

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

OMD Photon Noise Suppression via Thermal DiffusionMechanical Expansion Amplifier (US Patent 7,707,896)

mea_con_blip_thrm-diff-mfe, mea_con_blip(Also as: mea_con_noise_photon-diff-mfe)

By James A. KuzdrallCopyright 2009 Intrel Service CompanySome rights reserved Box 1247http://www.intrel.com/copyright Nashua NH 03061

Change Log:01-Jan-10: correct thermal diffusion time constant (original/2)18-Dec-09: random seed for gauss()14-Dec-09: narrower detector spans pole-zero range07-Dec-09: combine 8 runs via average; width in file name; block functions14-Nov-09: use power spectrum17-Jul-09: created

20-Dec-09Overview

The thermal-expansion-based radiometer explored herein uses the MEA (Mechanical Expansion Amplifier) technology prior to electronic amplification. The OMD (Opto-Mechanical Detector) which results has very high sensitivity and, supprisingly, attenuates the photon noise that limits other infrared detectors.

The outputs of all detectors include a noise generated by the statistical variation in the arrival of photons from warm bodies in their view. All bodies exchange radiant energy with their surroundings, even when at the same temperature (thermal equilibrium). For the OMD, the entire bowing strip is subject to this noise, including the surface facing the substrate.

To the great advantage of the OMD, it responds much less to the photon noise than does a conventional detector. The attenuation results from two cooperating characteristics of the system: 1) the bowing strip must expand across its entire width to register a signal, and 2) the photon arrival is both temporally and spatially random. While a conventional detector's response to broadband noise is smoothed by just a temporal averaging, the OMD response is smoothed by both the temporal averaging and an analogous spatial averaging.

Two mechanisms suppress the photon noise: 1) slow thermal diffusion across the bowing strip width, and 2) thermal conduction from the bowing strip to the substrate before the temperature change can propagate the full width of the strip. The notebook mea_con_blip_tek-cond-mfe documents the second mechanism, which requires a rarfied gas conductor for operation. The first mechanism, covered herein, operates both in vacuum and in rarefied gas.

The investigation begins by characterizing the effect of spatially random noise photons. Using a bulk material model rather than a quantum model, the photon is absorbed at point on the strip where its energy converts to heat (temperature rise). From there, the heat spreads to the rest of the strip by thermal conduction.

Questions addressed:

(See also Results section):

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 1

Intrel Service Company 9/6/111 Page 1

Page 2: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

1) What is the size of the initial local heating area?A square area of wavelength2, using the dominant wavelength of thebackground thermal radiation seems reasonable.

2) What is the most promising calculation model?An OMD operating in a vacuum can be approximated as embedded section within an infinite slab. The numeric solution for a slab is well known.

3) The numeric thermal solution is in the time domain. How is the frequencyspectrum obtained?Calculate enough temporal solutions, using independent random photonenergy inputs, to get a statistically valid sample. Take the FastFourier Transform (FFT) of the ensemble.

4) How is an analytic solution for the photon noise attenuation obtainedfrom the spectral response?A proposed attenuation versus frequency profile is visually fit to the spectrum.

5) What shape is the photon noise attenuation curve?The frequency-dependent noise gain has a low frequency pole and a highfrequency zero.

6) How is the low frequency asymptote obtained?A plausible physical argument determines the low frequency photon noise. The OMD has the same noise resoponse as an ordinary detector at very low frequencies.

7) How can the analytic pole and zero locations be determined?Plausible physical arguments support the choice of the visually fit poleand zero.

8) Why isn't signal response attenuated along with photon noise response?The signal must be uniform irradiation flux densities which evenly covers the detector. Since the flux density changes by the same amount in every area (cell), there is no need to propagate by thermal conduction. Theresponse to an average flux density change is instant.

9) How does the material's thermal diffusivity affect its photon noise suppression?As the diffusivity gets small (slow heat spread), the pole frequency at which suppression starts decreases. Since the zero location remains fixed (based on the dominant background radiation wavelength), the maximum depth of suppression increases.

10) Does the size of the detector matter?Yes. The time constant increases (frequency decreases) as the square of the detector width. Lower frequencies increase the photon noise suppression.

11) How does the OMD photon noise compare to that of a conventional detector?For materials with high thermal diffusivity, such as glass or plastic, the low frequency attenuation typically begins well below 1Hz. The photon noise decreases with frequency until an ultimate limit is reached. The attenuation limit is typically more than 80db. (See theequations below.)

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 2

Intrel Service Company 9/6/111 Page 2

Page 3: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

Index to calculation sections:

1. Initial Photon Heating Area (Cell Size)2. Computation Setup

2a. Basic Formulas and Parameters2b. Material-specific parameters 2c. File Names

3. Define Subroutines3a. Define: Cell-Line Noise vs. Time 3b. Define: Cell-Line Noise vs. Frequency3c. Calculate Noise Spectrum3d. Optional Scaling Check, Frequency and Amplitude

4. Parameter and Result Summary5. Spectrum Data File6. Visual Spectrum Fit

6a. Spectrum Fit Equation6b. Spectrum Fit, Starting Assumptions6c. Generate Spectrum Curves6d. Graphing

7. Equation Summary (total surface) 8. Amplitude and Frequency Calibration Check

20-Dec-09Results and Conclusions:

A) Photon noise vs. frequency: (W/sqrt(Hz)):omd_det(f):= noise_flux_dens*sqrt(area)*(f/f_zero + 1)/(f/f_pole + 1)

B) Pole frequency for photon noise attenuation:f_pole:alpha_bs/(8*%pi*bs_wid^2)

C) Zero frequency for photon noise attenuation:f_zero: sqrt(2)*alpha_bs/(%pi*lambda^2)

D) Bowing strip thermal diffusivity, alpha_bs:alpha_bs: k_bs/(cpm_bs*dens_bs)

E) Photon noise flux density:sqrt(8*area*emis*stefan_boltz*k_boltz*temp_bb^5)

The equations below give the response to thermal background photon noise power, a temporally and spatially random flux. The equations shown are for a photon (conventional) detector and for the new OMD detector. The noise response of the OMD decreases with frequency whereas that of the photon detector stays constant. (f_zero >> f_pole)

alpha_bs thermal diffusivity of the OMD material (m 2/s) area usually bs_wid2 (m2)bs bowing strip, a Mechanical Expansion Amplifier elementbs_wid width of the square detector surface (m)cpm_bs detector sheet heat capacity (J/(g* oK))dens_bs detector sheet density (g/m3)emis emissivity of the blackbody backgroundf_pole frequency above which photon noise decreases with frequency (Hz)f_zero in this case, frequency above which photon noise is constant (Hz)k_boltz Boltzmann constant, 1.38d-23 J/ oKk_bs detector sheet thermal conductivity (W/(m* oK))lambda dominant wavelength of the background thermal emission (m)

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 3

Intrel Service Company 9/6/111 Page 3

Page 4: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

noise_flux_dens background blackbody photon noise irradiance sqrt(W 2/m2)stefan_boltz Stefan-Boltzmann constant, 5.6686d-8 W/m 2/oK4temp_bb temperature of blackbody background ( oK)

(d27)

Photon noise response results (normalized):

Conventional detector: area noise_flux_dens

OMD with photon noise suppression:

area

f

f_zero + 1

noise_flux_dens

f

f_pole + 1

OMD pole location (Hz): alpha_bs

8 π bs_wid2

OMD zero location (Hz):2 alpha_bs

π λ2

Thermal diffusivity:k_bs

cpm_bs dens_bs

Photon noise flux density: 2 2 area emis k_boltz stefan_boltz temp_bb5

15-Jul-09Constants and Design Parameters

Document mea_con_definitions-mfe defines the parameters used in these calculations. Generally useful data and functions have been copied from other documents in this series. Only some of the information will be used here.

This program is written for Macsyma 2.2 which is no longer available. See http://maxima.sourceforge.net/ for a public version.

References:

Ref 1) "MEA Parameter Definitions", James A. Kuzdrall 2009, Intrel Service Company, mea_con_definitions-mfe

Ref 2) "Elements of Infrared Technology", Kruse, McGlauchlin, McQuistan,Wiley 1962, 1963.

Ref 3) "Principles of Heat Transfer, 3rd Edition", Frank Kreith, Harper & Row 1973, ISBN 0-352-07019-0

Ref 4) "Information Transmission, Modulation, and Noise", Mischa Schwartz, McGraw-Hill 1959 LCCN 59-9993

Program Options

use_previous Load power spectrum data from previous run that was saved in a file.

do_cal_marker The amplitude calibration check is done only once at high resolution; the file is saved for reprocessing.

time_steps Calculate the temporal response for the line of cells for time_steps*1024 time step intervals. Find the corresponding frequency response.

ave_runs Produce ave_runs of the frequency responses. Average them in

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 4

Intrel Service Company 9/6/111 Page 4

Page 5: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

_ _ to smooth the data for curve fitting.

file_location where computation results are saved and retrieved mat_bs assures that a material has been selected

(c1)

(kill(all), mat_bs:"None", use_previous:true, do_cal_marker:false, time_steps:64, /* *1024, must be power of 2 */ ave_runs:8, IF do_cal_marker=true THEN use_previous:true, file_location:"C:\\@files\\Math\\mea\\concept\\blip\\", t:timedate())

(d0) Tuesday, September 6, 2011, 8:16am

(c1) ( /* produce a random start for gauss() using the time */ FOR i:1 STEP 1 UNLESS getchar(t,i)=false DO len:i, len, seed:eval_string(concat(getchar(t,len-2),getchar(t,len-3),getchar(t,len-5))))

(d1) 416

(c2) ( /* Physical constants 02-Dec-09 ---------------------- */ e0:8.854d-12, k_boltz:1.38d-23, stefan_boltz:5.6686d-8, /* Constants for Rayleigh's resonance method: */ reso_alpha:22.5, reso_beta=.535, reso_gamma=.405, timedate())

(d2) Tuesday, September 6, 2011, 8:17am

Set the base-line constants for BLIP computations as follows:Temperatures: 300 degKBowing strip width: (mm) .32, .64, 1.0, 2.0, 4.0Bowing strip material: preferred- "TaFD5 glass"

optional- "Mylar, metalize-down","304 Stainless",

(remove apostrophe from block to activate)Gap material: Vacuum

(Note that an apostrophe before a function prevents it from being executed. Two apostrophes substitute what it represents (points to), i.e. a formula. )

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 5

Intrel Service Company 9/6/111 Page 5

Page 6: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

(c3)

( /* MEA Parameters 21-Apr-11 */ /* Ambient ------------------------------------------- */ tmp_amb:300.0, wav_len_sig:10.0d-6,

/* Bowing strip geometry ----------------------------- */ bs_gap:6.0d-6, bs_len0:30.0d-3, bs_thk:5.0*25.4d-6, bs_wid:2.0d-3, bs_tmp:300.0,

/* Bowing strip material ----------------------------- */ 'block(mat_bs:"304 Stainless", cpm_bs:.500, dens_bs:8.02d6, die_bs:1.0, elast_bs:193.0d9, emis_bs:.8, k_bs:14.2, tec_bs:15.9d-6 ), 'block(mat_bs:"BK-7 Glass", cpm_bs:.858, dens_bs:2.51d6, die_bs:5.8, elast_bs:81.0d9, emis_bs:.8, k_bs:1.114, tec_bs:7.1d-6, bs_thk:max(bs_thk,50.0d-6) ), 'block(mat_bs:"TaFD5 Glass", cpm_bs:.502, dens_bs:4.92d6, die_bs:7.2, elast_bs:126.0d9, emis_bs:.8, k_bs:.959, tec_bs:6.4d-6, bs_thk:max(bs_thk,50.0d-6) ), 'block(mat_bs:"Mylar, metalize-down", cpm_bs:1.61, dens_bs:7.75d6, die_bs:3.4, elast_bs:3.17d9, emis_bs:.8, k_bs:.288, tec_bs:59.6d-6, bs_thk:max(bs_thk,4*25.4d-6) ), block(mat_bs:"Aluminum 1145-H19", cpm_bs:.904, dens_bs:2.7d6, die_bs:1.0, elast_bs:69.0d9, emis_bs:.04, k_bs:225.0, tec_bs:25.5d-6), 'block(mat_bs:"Aluminum 6061-T6", cpm_bs:.895, dens_bs:2.7d6, die_bs:1.0, elast_bs:70.0d9, emis_bs:.4, k_bs:167.0, tec_bs:22.5d-6), 'block(mat_bs:"Aluminum 7075-T6", cpm_bs:.960, dens_bs:2.8d6, die_bs:1.0, elast_bs:71.7d9, emis_bs:.5, k_bs:130.0, tec_bs:23.6d-6), 'block(mat_bs:"Corundum", /* Al2O3 */ cpm_bs:.777, dens_bs:3.987d6, die_bs:8.9, elast_bs:400.0d9, emis_bs:.9, k_bs:46.0, tec_bs:6.77d-6), " ")

(d3)

(c4)

( /* Bowing gap material ------------------------------- */ gap_mat:block( gap_ix:0, array(gap_mats,6), atm:1.e0, pressure:" ", gap_mats[0]:[0,"Vacuum",0], gap_mats[1]:[1,"Xenon",.00569], gap_mats[2]:[2,"Air",.01516*1.729577], a:gap_mats[gap_ix], IF gap_ix > 0 THEN pressure:concat(" @ ",atm," atm"), return([a[1],concat(a[2],pressure),a[3]*atm])), k_gap:gap_mat[3], mat_gap:gap_mat[2],

/* Bowing strip capacitor (derived) ------------------ */ cp_area:bs_wid^2, cp_gap:bs_gap0, cp_emis:emis_bs, cp_ref:ev(epsilon*cp_area/cp_gap), cp_side:bs_wid, /* Instrumentation ----------------------------------- */ /* From mea_app_pop_blum_cir-op Table 2 23-Mar-09 */ res_br:.3d-9, br_dsn:"Blumlein, Opamp, 300K_deg", /* gap control feedback LaPlace zero (s) */ f_bp_lo:1.0d0, tc_gap_fb:dfloat(1/(2*%pi*f_bp_lo)), /* dominant of representative radiation wavelength */ wav_len:2893.0e-6/tmp_amb, timedate() )

(d4) Tuesday, September 6, 2011, 8:17am

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 6

Intrel Service Company 9/6/111 Page 6

Page 7: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

(c5)

( /* Functions and derived constants */

/* Emissivity control, note array starts at 0, list start at 1 */ em_top:1, em_bot:1, array(em_dat,4), em_dat[0]:[0,"bare",emis_bs], em_dat[1]:[1,"gold",.01], em_dat[2]:[2,"aluminum",.02], em_mat:concat(ev(em_dat[em_top][2]),"/",ev(em_dat[em_bot][2])), em_net:ev( (cp_emis*cp_area + em_dat[em_top][3]*(bs_len0*bs_wid-cp_area) + em_dat[em_bot][3]*bs_len0*bs_wid)/(2*bs_len0*bs_wid)),

/* functions: ---------------------------------------- */ lines(ans):=block([a,dim,ix,mx], dim:length(ans), mx:mat_ones(dim/2,2), for a:1 step 2 thru dim do( ix:(a+1)/2, mx[ix,1]:ans[a], mx[ix,2]:ans[(a+1)]),mx ), sho(x):=string_downcase(string(sfloat(x))), timedate() )

(d5) Tuesday, September 6, 2011, 8:17am

(c6) IF mat_bs="None" THEN (pause("No material selected. Press any key:", "Go back and fix it!","Go back and fix it!"),abort())

(d6) false

01-Nov-091. Initial Photon Heating Area (Cell Size)

The size of the initial hot spot is significant. Its size determines the attenuation and frequency dependence (response pole and zero locations). A reasonable suggestion relates the smallest spot to the dominant wavelength of the blackbody radiation.

Macsyma: ceil(): smallest integer that is not smaller than the argumentconcat(): primary output string generatorlines(): my function to organize output report

(c12)

( /* "derived constants" above calculates the blackbody dominant wavelength */ /* width of bowing strip in grids */ grids_per_width:ceil(bs_wid/wav_len), /* thermal diffusivity of this material */ t:ev(k_bs/(cpm_bs*dens_bs)), /* summarize parameters of present experiment */ descr_strip:concat(mat_bs,", coating: ",em_mat," "), descr_gap:concat("Gap: ",mat_gap), lines([ descr_strip, descr_gap, "Thermal diffusivity: ", concat(sho(t),"m^2/s"), "Background blackbody temperature: ",concat(sho(tmp_amb)," K"), "Dominant background radiation: ",concat(sho(wav_len*1.0e6)," um"), "Bowing strip width: ", concat(sho(bs_wid*1000)," mm"), "Grid squares, one wavelength per side:"," ", "Across bowing strip width: ", sho(grids_per_width), "Along bowing strip length: ", sho(ceil(bs_len0/wav_len)), "Grid square area: ",concat(sho(wav_len^2)," m^2")]))

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 7

Intrel Service Company 9/6/111 Page 7

Page 8: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

(d12)

Aluminum 1145-H19, coating: gold/gold Gap: Vacuum Thermal diffusivity: 9.2183e-5m^2/sBackground blackbody temperature: 300.0 KDominant background radiation: 9.64333 umBowing strip width: 2.0 mmGrid squares, one wavelength per side:

Across bowing strip width: 208.0Along bowing strip length: 3111.0Grid square area: 9.29943e-11 m^2

21-Dec-092. Computation Setup

The first executable section above, "Program Options", has several options to save computation time. They must be set before beginning the computation. The first section includes instructions for setting the options.

22-Dec-092a. Basic Formulas and Parameters

The formulas for the thermal diffusivity (alpha), cell size (cell), number of cells in across width (n_cell), and time step (t_stp) are shown here for clarity. These formulas are appropriate for all sensing sheet materials.

The number of independent line computations (samples) determines the frequency range of the rms expansion spectrum. It must be a power of 2 for the fft algorithm.

The pole-to-zero frequency spread requires at least zero/pole samples to span the range, or 4 times that number to get sufficiently beyond the low frequency pole. For the thermally optimum strip width, 2mm, the samples should be 4*zero/pole= 4*1879/.0038= 1.98e6-> 2^21 samples

Macsyma on Windows 98 produces a memory error if the samples (array sizes) exceed 64K for some widths, 128K for others. Later sections work around this shortcoming.

(c13)

/* setup parameters */ ( /* term-cancelling coefficient for numerical method */ alpha_eq:'k_bs/('cpm_bs*'dens_bs), cell:wav_len, n_cell:grids_per_width, t_stp_eq:rhs(solve('t_stp*'alpha/'cell^2=1/2,'t_stp)[1]), /* sample size and maximum indices (time_steps from first section) */ sample_mult:time_steps, IF do_cal_marker=true THEN sample_mult:64, max_cnt:1024*sample_mult, /* Macsyma array indices from 0 to n; list indices from 1 to n */ samples:max_cnt-1, max_pwr_ix:max_cnt/2, lines(["Thermal diffusivity: ", alpha_eq, "Integration time step:", t_stp_eq, " ", " ", "Samples: ",sho(max_cnt), "Last run on: ",timedate() ]) )

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 8

Intrel Service Company 9/6/111 Page 8

Page 9: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

(d13)

Thermal diffusivity: k_bs

cpm_bs dens_bs

Integration time step:cell

2

2 α

Samples: 65536.0Last run on: Tuesday, September 6, 2011, 8:19am

21-Dec-092b. Material-Specific Parameters

In the simulation formula, the only material-related parameter is the thermal diffusivity. It acts as a scaling parameter, since the ratio of pole to zero is independent of the material. Consequently, there is no point in running more than one material. Use flint glass as the example material:

Flint glass: Leaded heavy flint glass (TaFD5) has a medium thermal diffusivity (388e-9 m2/s ) and a large elastic constant (81e9 Pa), both helpful in reducing total OMD noise.

(c8)

( /* material-specific parameters */ /* material tags */ file_tag:"None", IF mat_bs="TaFD5 Glass" THEN ( marker_freq: 20.0, file_tag:"glass" ), IF file_tag="None" THEN (pause("No file name created. Press any key:", "Make one for this material!","Make one for this material!"),abort()), /* calculate material-dependent parameters */ alpha_bs:ev(alpha_eq,eval), t_stp:ev(t_stp_eq, alpha:alpha_bs, eval), /* graph title */ gtitle:concat(mat_bs,"-based, ",sho(1000*bs_wid),"mm wide OMD"), gtitle_lf:concat("\\\n"), /* summary */ lines(["For this run: ", " ", "Material: ",mat_bs, "Thermal diffusivity:",concat(sho(alpha_bs)," m^2/s"), "Time step: ", concat(sho(t_stp*1.0e6)," us"), "Lowest frequency:",concat(sho(1/(t_stp*max_cnt))," Hz"), "Highest frequency:", concat(sho(.001/(2*t_stp))," KHz"), "Marker frequency: ", concat(sho(marker_freq)," Hz"), "When: ",timedate()]))

(d8)

For this run: Material: TaFD5 GlassThermal diffusivity: 3.88286e-7 m^2/sTime step: 119.75 usLowest frequency: 0.12742 HzHighest frequency: 4.17537 KHzMarker frequency: 20.0 Hz

When: Friday, January 1, 2010, 6:15am

21-Dec-092c. File Names

Save the expansion spectrum and time sample arrays on disk for repeat

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 9

Intrel Service Company 9/6/111 Page 9

Page 10: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

analysis and plotting. The file names reflect the strip width and sample size.

The width is multiplied by 10K to make an integer from tenths of millimeters. Windows 98 does not allow "." in file names except as a separator.

Random noise produces wide point-to-point amplitude spreads in the data. To reduce the spread somewhat, several runs are averaged. For 8 runs, the rms fluctuation is reduced by sqrt(8). (Only 8? The runs can take up to an hour to compute.)

(c9)

( /* prepare file names for time and frequency domain results */ w:floor(1.0e4*bs_wid), a:concat(file_location,"blip_"), b:concat(string(sample_mult),"Kave",ave_runs,".txt"), fname:concat(a,"glass",w,"_nexp_",b), fname_t:concat(a,"glass",w,"_ntim_",b), fname_cal:concat(a,"cal_64.txt"), IF do_cal_marker=true THEN ( purpose:"Amplitude calibration spectrum", fname:fname_cal) ELSE purpose:"Photon noise power spectrum", lines(["File type: ", purpose, " ","<path>blip_<type><width*10K>_nexp_<samples>ave<runs>.txt", "File name:", fname, " ",timedate()]))

(d9)

File type: Photon noise power spectrum <path>blip_<type><width*10K>_nexp_<samples>ave<runs>.txt

File name: C:\@files\Math\mea\concept\blip\blip_glass20_nexp_64Kave1.txt Friday, January 1, 2010, 6:15am

21-Dec-093. Define Subroutines

Macsyma has a subroutine-like structure called a block(). It groups computation lines and allows private variables to be declared in a list [..] at the beginning. The code for both the numerical transient solution and fft conversion is too long for a Macsyma/Win98 section to handle gracefully. It produces scroll bars in the program, but will not print the complete section. This work-around breaks the computation int two parts by using blocks.

21-Dec-093a. Define Subroutine: Cell-Line Noise vs. Time, Many Samples

The first block computes a new heat distribution along the line of cells based on the previous one. It does one calculation for each of the n_cell "slabs" (variable k) in the infinite plate model.

The line calculation produces a net normalized expansion (temperature) for the line. The net expansion calculation is repeated for each sample, max_cnt samples in all (variable i). On exit, the result is in the array fftdat.

Since the previous data must be present to calculate the present, two cell arrays are used, designated even and odd.

The gauss() function adds a random noise to each cell after computing its present temperature. It simulates the noise photon input for this interval.

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 10

Intrel Service Company 9/6/111 Page 10

Page 11: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

The end cells are set equal to their neighbors latest temperature after it is computed. Since their temperatures will be equal on the next iteration, no heat will flow, thereby simulating no loss at the ends of the cell line (end of the strip width).

(c10)

/* Part 1, thermal transcient along line of cells (see text) */ ( /* need arrays: line_o, line_e, fftdat allocated prior */ line_vs_time():=block( [i,cnt,k,n,m],

/* calculate parameters for thermal spread numeric method */ cnt:0, /* calculate new from old in pairs max_cnt/2 */ FOR i:1 STEP 1 THRU max_cnt/2 DO ( /* odd iteration from last even result */ FOR k:1 STEP 1 THRU n_cell-2 DO ( line_o[k]:(line_e[k-1]+line_e[k+1])/2 +gauss(0.0d0,1.0d0)), /* fix end values for no loss */ line_o[0]:line_o[1], line_o[n_cell-1]:line_o[n_cell-2], /* even iteration from last odd result */ FOR k:1 STEP 1 THRU n_cell-2 DO ( line_e[k]:(line_o[k-1]+line_o[k+1])/2 +gauss(0.0d0,1.0d0)), /* fix end values for no loss */ line_e[0]:line_e[1], line_e[n_cell-1]:line_e[n_cell-2],

/* save results of 2 line averages */ cnt:cnt+2, fftdat[cnt-2]:sum(line_o[n],n,0,n_cell-1)/n_cell, fftdat[cnt-1]:sum(line_e[m],m,0,n_cell-1)/n_cell ) /* end of DO loop, fftdata is filled with data */ ), /* end of block */ timedate())

(d10) Friday, January 1, 2010, 6:15am

21-Dec-093b. Define Subroutine: Cell-Line Photon Noise vs. Frequency

The list of max_cnt net-line-expansions is a function of time. Each calculation is separated by t_stp seconds. Convert the time variation to a frequency spectrum using the fft algorithm.

When only real data is supplied, there is no phase data to complete the spectrum. Calculating the power spectrum implies zero phase shift between samples, which is appropriate for this model. The power spectrum is calculated as shown. The block exits with the power spectrum in the pwr_spec array.

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 11

Intrel Service Company 9/6/111 Page 11

Page 12: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

(c11)

/* Part 2, convert net-line-temperature vs time to vs frequency */ ( line_vs_freq():=block( [n_sqr,k,i], /* calculate FFT at double precision */ fourier_dprec:true, fft('real,1,fftdat),

/* calculate power spectrum */ n_sqr:max_cnt^2, pwr_spec[0]:fftdat[0]^2/n_sqr, FOR k:1 STEP 1 THRU max_pwr_ix-2 DO ( pwr_spec[k]:(fftdat[k]^2+fftdat[max_cnt-k]^2)/n_sqr), /* end of DO, pwr_spec values filled */ pwr_spec[max_pwr_ix-1]:fftdat[max_pwr_ix-1]^2/n_sqr, /* correct by 2x because only positive frequencies in sum */ FOR i:0 THRU max_pwr_ix-1 DO pwr_spec[i]:2*pwr_spec[i]

/* leave with power spectrum calculation result in pwr_spec */ ), timedate())

(d11) Friday, January 1, 2010, 6:15am

21-Dec-093c. Calculate and Average Many Spectrums to Smooth Curves

Use the subroutine blocks above to produce several (ave_runs) of the line expansion spectra. Average them to a final array. Since this is a power spectrum, take the square root to get the expansion magnitude back. (Don't do the calculation if a calibration marker was requested.)

Macsyma quirk: The fft() is allocated enough memory for a 128K double-float array when the math engine (server) is reinitialized. It never gives memory back to the pool or reuses it. Consequently, the limits are one 128K or 64K fft; 4 32K ffts; 8 16K ffts. The math engine must be reinitialized after each run by starting another notebook and checking the "Reinitialize" box in the pop-up menu.

On Window 98 running under VMware on a Lenovo T-60 laptop (dual core, 1.66 GHz): ave_runs=1 max_cnt=64K takes ~(16*width_in_mm) minutes.

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 12

Intrel Service Company 9/6/111 Page 12

Page 13: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

(c12)

IF (use_previous=false AND do_cal_marker=false) THEN ( start_time:timedate(), /* get and initialize data storage */ array(pwr_spec, float, max_pwr_ix+2), array([line_o, line_e], float, n_cell+2), array(fftdat, float, samples), array(pwr_spec_ave, float, max_pwr_ix+1), FOR i:0 THRU max_pwr_ix-1 DO pwr_spec_ave[i]:0.0, /* random start for gauss (seed obtained from date in section 2) */ FOR i:0 THRU seed DO gauss(0.0d0,1.0d0), /* sum the expansion vs frequency spectrums as they are produced */ FOR loop:1 THRU ave_runs DO ( line_vs_time(), line_vs_freq(), /* add new to sum for average */ FOR i:0 THRU max_pwr_ix-1 DO pwr_spec_ave[i]:pwr_spec_ave[i]+pwr_spec[i] ), /* divide each sum by ave_runs for average; sqrt for power -> expansion */ FOR i:0 THRU max_pwr_ix-1 DO pwr_spec_ave[i]:sqrt(pwr_spec_ave[i]/ave_runs), /* save under prepared file name */ a:write_data_to_file(fname, pwr_spec_ave), kill(line_o, line_e, fftdat, pwr_spec_ave, pwr_spec), end_time:timedate(), lines(["Done:", concat("Wrote pwr_spec_ave to ",a), "Start:",start_time, "Finish:",end_time]) )

(d12) false

(d12) Done: Wrote pwr_spec_ave to C:\@files\Math\mea\concept\blip\blip_glass20_nexp_64Kave1.txtStart: Monday, December 21, 2009, 11:02amFinish: Monday, December 21, 2009, 11:42am

29-Nov-093d. Optional: Calibration Sine Wave vs. Time

Calculate line temperature change from a uniform sinusoidal photon flux over all cells in the line versus time for a large number of samples.

When this spectrum is plotted, it should show an amplitude spike with a peak amplitude of one at 20Hz. The amplitude and frequency confirms that the scaling of the FFT is correct.

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 13

Intrel Service Company 9/6/111 Page 13

Page 14: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

(c13)

IF do_cal_marker=true THEN ( /* get temporary array */ array(fftmark, float, samples),

/* calculate parameters for thermal spread numeric method */ cnt:0, sin_arg:2*%pi*t_stp*marker_freq, start_thermal:timedate(), /* calculate new from old in pairs */ FOR i:1 STEP 1 THRU max_cnt/2 DO ( cnt:cnt+2, fftmark[cnt-2]:dfloat(sqrt(2)*sin(sin_arg*cnt)), fftmark[cnt-1]:dfloat(sqrt(2)*sin(sin_arg*(cnt+1))) ), /* end of DO loop, fftmark is filled with data */ /* calculate FFT */ start_fft:timedate(), fft('real, 1, fftmark),

/* calculate power spectrum */ start_pwr:timedate(), n_sqr:max_cnt^2, array(pwr_spec_mrk,float,max_pwr_ix), pwr_spec_mrk[0]:fftmark[0]^2/n_sqr, FOR k:1 STEP 1 THRU max_pwr_ix-1 DO ( pwr_spec_mrk[k]:(fftmark[k]^2+fftmark[max_cnt-k]^2)/n_sqr ), /* end of DO, pwr_spec mid-values filled */ pwr_spec_mrk[max_pwr_ix]:fftmark[max_pwr_ix]^2/n_sqr,

/* correct by 2x for only positive frequencies in sum */ FOR i:0 THRU max_pwr_ix-1 DO pwr_spec_mrk[i]:2*pwr_spec_mrk[i],

/* save the power spectrum calculation */ done_calcs:timedate(), remarray(fftmark), a:write_data_to_file(fname_cal, pwr_spec_mrk), remarray(pwr_spec_mrk), concat("Wrote pwr_spec_mrk to ",a) )

(d13) false

21-Dec-094. Parameter and Results Summary

The summary provides a check that the parameters are as expected.

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 14

Intrel Service Company 9/6/111 Page 14

Page 15: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

(c14)

( dat_list:[concat(mat_bs,"-based OMD"), " ", "Purpose:",purpose], IF use_previous=false THEN dat_list:append(dat_list, ["Start calculations:",start_thermal, "Start FFT: ",start_fft, "Start power spectrum: ",start_pwr, "Done calculations: ",done_calcs]), dat_list:append(dat_list,[ "Detector width: ", concat(sho(bs_wid*1000)," mm"), "Cell size: ",concat(sho(cell*1.0e6)," um"), "Cells per line: ", sho(n_cell), "Time step: ", concat(sho(t_stp*1.0e6)," us"), "Samples: ",sho(max_cnt), "Highest frequency: ", concat(sho(.001/(2*t_stp))," KHz"), "Lowest frequency: ", concat(sho(1/(max_cnt*t_stp))," Hz"), "Marker frequency: ", concat(sho(marker_freq)," Hz"), "Thermal diffusivity: ",concat(sho(alpha_bs)," m^2/s"), "Thermal time constant: ", concat(sho(2*(bs_wid)^2/alpha_bs)," s") ]), lines(dat_list) )

(d14)

TaFD5 Glass-based OMD Purpose: Photon noise power spectrum

Detector width: 2.0 mmCell size: 9.64333 um

Cells per line: 208.0Time step: 119.75 usSamples: 65536.0

Highest frequency: 4.17537 KHzLowest frequency: 0.12742 HzMarker frequency: 20.0 HzThermal diffusivity: 3.88286e-7 m^2/s

Thermal time constant: 20.6035 s

21-Dec-095. Spectrum Data File

Read the calculated spectrum data into an array for graphing. A log-log plot is required to accommodate the wide frequency and amplitude ranges.

The fft frequency comes from the time step as shown. The minimum frequency starts at an index of 1 whereas the array index starts at zero.

(c15)

( /* get power spectrum from data from file */ ( IF probefile(fname)=false THEN (pause("No file by that name found. Press any key:", "Go back and fix it!","Go back and fix it!"),abort()), /* read data from file */ array([noise_dat,log_noise,log_freq_axis],float,max_pwr_ix), read_num_data_to_array(fname,noise_dat), /* log abscissa and data for graphing */ FOR i:0 THRU max_pwr_ix-1 DO ( freq_axis[i]:(i+1)/(2*t_stp*max_cnt), log_freq_axis[i]:log10(freq_axis[i]), log_noise[i]:log10(noise_dat[i])), /* report */ lines(["Read from file:",fname, "to noise_dat array on ",timedate()])))

Go back and fix it!

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 15

Intrel Service Company 9/6/111 Page 15

Page 16: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

21-Dec-096. Visual Spectrum Fit

As will be seen in the plots, the spectrum derived from noise is very noisy itself. Attempts to find a best-fit line through it were unsuccessful.

Since the general shape of the suppressed noise is hinted by the physics, overlay a proposed curve to see how well it appears to fit.

21-Dec-096a. Spectrum Fit Equation

The overlay equation is shown below, omd_noise_fit(i). It has the form of a low frequency pole and a high frequency zero. It creates a straight line on a log-log plot for the midrange portion between the pole and zero. (The pole-zero terminology comes from Laplace root locus analysis in feedback circuits.)

(c16) omd_noise_fit(i):=lf_asympt*(1+freq_axis[i]/zero)/(1+freq_axis[i]/pole)

(d16) omd_noise_fit(i) :=

lf_asympt

1 +

freq_axisi

zero

1 +

freq_axisi

pole

21-Dec-096b. Spectrum Fit Starting Assumptions

Low frequency asymptote: The low frequency asymptote of the spectrum is the same as that of a conventional detector, giving a known starting point: sqrt(area)*1.0 = sqrt(n_cell), where the response to the photon noise per cell area has been normalized to 1.0 units rms.

Pole frequency estimates: The photon noise response pole is likely to be associated with the slab's thermal diffusion time constant (or Fourier modulus, see Ref 3 (Kreith) page 144). The section below calculates the time constant, tc_th_diff and the corresponding frequency pole_th_dif.

Assume the pole frequency relates to the thermal diffusion time constant through a single multiplicative numeric constant.

Frequency estimates for the zero: Assume the zero is associated with the cell width, lambda. To start, use the cell width as the significant length of the thermal diffusion time constant (or Fourier modulus, see Ref 3 (Kreith) page 144). Try integer scaling since the simple calculation model is unlikely to produce a more sophisticated value.

The zero is not a function of the detector width. The pole is related to the width through the time constant. Can a single constant be found which serves all widths well?

21-Dec-096c. Generate Spectrum Fit Curves

Overlay curves: Adjust the curves to show one above and one below the optimum found.

Data limits: The longest possible arrays are needed to reach low

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 16

Intrel Service Company 9/6/111 Page 16

Page 17: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

frequencies. The Macsyma graphing function is limited to 8K, however. The g_scale parameter skips intermediate point to reduce the data size. (The array sizes from the calcualtion section above are assumed to be 8K or longer.

Adjusting the fit: The adjustment coefficients are pmul and zdiv.

Pole range: One 4x lower in frequency and one 4x higher in frequency than the nominal. Gauge the change needed to bring the center curve to match from the outside curves.

(c17)

( /* Adjust pole & zero for best visual fits on graph */ /* data limits: reduce array size to graphing limit, 8K points */ graph_siz_lim: 8*1024, g_scale: max_pwr_ix/graph_siz_lim, IF g_scale <1 THEN (pause("FFT array must be 8192 or longer. Press any key:", "Go back and fix it!","Go back and fix it!"),abort()), /* graph() prefers lists, not arrays */ fit0:makelist(0,i,1,graph_siz_lim), fit1:copylist(fit0), fit2:copylist(fit0), /* base pole estimates on slab diffusion time constant */ therm_dif_tcp_eq:('bs_wid^2)/'alpha_bs,

/* base the zero on instant-heating-width as a slab */ therm_dif_tcz_eq:('lambda^2)/'alpha_bs, zdiv:sqrt(8), omd_zero_tc_eq: therm_dif_tcz_eq/zdiv, omd_zero_freq_eq:1/(2*%pi*omd_zero_tc_eq), zero:ev(omd_zero_freq_eq, lambda:cell, eval),

/* low frequency asymptote has been established by physical reasoning */ lf_asympt:sqrt(n_cell), asympt:dfloat(floor(lf_asympt*10)/10), /* trials */ pmul:dfloat(4.0), /* ref0 */ pole_tc:ev(therm_dif_tcp_eq,eval)*4*pmul, pole:dfloat(ev(1/(2*%pi*pole_tc))), pole0:floor(pole*10000)/10000, FOR i:g_scale STEP g_scale THRU max_pwr_ix DO fit0[i/g_scale]:dfloat(log10(omd_noise_fit(i-1))), /* ref1 */ pole_tc:ev(therm_dif_tcp_eq,eval)*pmul, pole:dfloat(ev(1/(2*%pi*pole_tc))), pole1:floor(pole*10000)/10000, FOR i:g_scale STEP g_scale THRU max_pwr_ix DO fit1[i/g_scale]:dfloat(log10(omd_noise_fit(i-1))), /* ref2 */ pole_tc:ev(therm_dif_tcp_eq,eval)*pmul/4, pole:dfloat(ev(1/(2*%pi*pole_tc))), pole2:floor(pole*10000)/10000, FOR i:g_scale STEP g_scale THRU max_pwr_ix DO fit2[i/g_scale]:dfloat(log10(omd_noise_fit(i-1))), timedate())

(d17) Tuesday, December 22, 2009, 7:11pm

01-Jan-106d. Graphing

The Macsyma limitation on array length causes a problem in curve fitting.

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 17

Intrel Service Company 9/6/111 Page 17

Page 18: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

With the low frequencies gone, the lowest frequency point of the FFT does not include the attenuation produced at frequencies still lower.

To match the curve shapes, it is necessary to restore the missing low frequency attenuation. This is attemped by estimating the attenuation at the lowest fft frequency from the fit function being tested. That is, if the low frequency pole is at .1Hz and the lowest fft frequency is 1.0Hz, the fft amplitude should be a factor of ten lower than that calculated.

Note that this fudging has nothing to do with the physics. It is a work-around for a deficiency in the available analysis tools. If the curve fits the offset noise calculation, it proves its high frequency validity regardless of how the offset was determined. If the offset can be determined from the fit equation itself, the confidence in the low frequency model increases.

Two factors compete in selecting the most representative curve. As the width gets smaller, the fft is better able to span the pole-zero separation. However, as the width gets smaller, the heat reaches the edge before the local heating (cell temperature) is fully spread. That is, there is no low frequency at which the cells can be approximated as fully independent temperature fluctuations.

The best compromise is the .6mm width, being the widest strip for which a 128K spectrum can be computed. (I wish I had time to write an independent fft program in C.)

Further adjustments: The above approach would be fine if the fft itself introduced no frequency singularities. Unfortunately, it has an essential zero at zero Hz and a pole at some low frequency where it begins to get full amplitude response of the Fourier components.

The fft zero appears as a frequency term in the numerator. When evaluated at lo_freq, it is lo_freq. The pole is some multiple of lo_freq, dx. It becomes a constant at lo_freq. The best value found for the constant dx is 3. All simulations match fairly well except 4.0mm which would like dx to be 8. Best: (2.8, 3.6, 3.0, 2.3, 8.0).

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 18

Intrel Service Company 9/6/111 Page 18

Page 19: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

(c21)

( /* show noise spectrum with family of proposed noise suppression functions */ freq_axis_g: makelist(0,i,1,graph_siz_lim), log_noise_g: copylist(freq_axis_g), /* skip points to meet graph maximum size requirement */ FOR i:g_scale STEP g_scale THRU max_pwr_ix DO ( freq_axis_g[i/g_scale]:log_freq_axis[i-1], log_noise_g[i/g_scale]:log_noise[i-1]), /* Low frequency loss compensation:attn at at fft min freq */ lo_freq:10^freq_axis_g[1], dx:2.3, noise_fix: log10(dfloat( lf_asympt*lo_freq*dx/((1+lo_freq/pole1)) )), FOR i:1 THRU 8192 DO log_noise_g[i]:log_noise_g[i]+noise_fix,

/* graph data */ plot_size:100, gn_title:concat("Photon Noise Density: ",gtitle,gtitle_lf, "Scaling: zero/",sho(zdiv),", pole*",sho(floor(pmul*10)/10), ", Asymptote: ", sho(asympt),"\\nZero: ",sho(floor(zero)),", Poles (Hz): ", "red=",sho(pole0),", blue=",sho(pole1),", green=",sho(pole2),gtitle_lf, "dx*lf_asympt*lo_freq/(1+lo_freq/pole1), dx=",sho(dx)), graph( freq_axis_g, [fit0, fit2, log_noise_g, fit1], [900,902,04,901], "log10(Frequency (Hz))","log10(Noise)",gn_title ))$

Photon Noise Density: TaFD5 Glass-based, 2.0mm wide OMDScaling: zero/5.65685, pole*2.0, cell*t_scale, Asymptote: 14.4

Zero: 1879.0, Poles (Hz): red=9.0e-4, blue=0.0038, green=0.0154dx*lf_asympt*lo_freq/(1+lo_freq/pole1), dx=2.3

-0.59 < X < 3.3; -4.9 < Y < -8.38d-2

log10(Noise)

log10(Frequency (Hz))

-5.00

-4.50

-4.00

-3.50

3.20 3.25 3.30

22-Dec-097. Equation Summary (total surface)

The equations which follow give the response to photon noise power for a photon (conventional) detector and for the new OMD detector. The noise response of the OMD decreases with frequency whereas that of the photon detector does not.

Summing the lines: The photon noise response has been studied for a single line of cells across the width of the detector surface to accommodate the method of mechanical amplification. Whether for the photon or OMD detector, the lines can be considered random, independent reactions to the photon noise. As such, they sum in rss fashion. The equations which follow include that summation.

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 19

Intrel Service Company 9/6/111 Page 19

Page 20: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

The phot_n_flux_dens is the background blackbody photon noise irradiance sqrt(W2/m2). It is equal to

Pole: The thermal diffusion time constant for the complete slab thickness matches the simulation well if multiplied by 2.

Zero: A time constant based on the width of a single cell matches the simulation well if divided by the square root of 32.

Both the pole and zero may contain factors related to the simulation method. However, with the simulation showing photon noise suppression as high as 80db, the conclusion remains: the OMD suppresses photon noise.

(c27)

( /* equation and parameter summary */ /* recreate the BLIP suppression function */ conv_eq:sqrt(area)*noise_flux_dens, omd_eq:sqrt(area)*noise_flux_dens*(1+'f/'f_zero)/(1+'f/'f_pole), noise_dens: sqrt(8*area*emis*'stefan_boltz*'k_boltz*temp_bb^5), /* base pole estimates on slab diffusion time constant */ therm_dif_tcp_eq:2*('bs_wid^2)/'alpha_bs, pmul:2, omd_pole_tc_eq:therm_dif_tcp_eq*pmul, omd_pole_freq_eq:1/(2*%pi*omd_pole_tc_eq),

/* base the zero on instant-heating-width as a slab */ therm_dif_tcz_eq:2*('lambda^2)/'alpha_bs, zdiv:sqrt(32), omd_zero_tc_eq: therm_dif_tcz_eq/zdiv, omd_zero_freq_eq:1/(2*%pi*omd_zero_tc_eq), lines( [ "Photon noise response results (normalized):", " ", "Conventional detector: ",conv_eq ," "," ", "OMD with photon noise suppression:",omd_eq, " "," ", "OMD pole location (Hz): ",omd_pole_freq_eq, " "," ", "OMD zero location (Hz):", omd_zero_freq_eq, " "," ", "Thermal diffusivity:", alpha_eq, " "," ", "Photon noise flux density:",noise_dens]))

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 20

Intrel Service Company 9/6/111 Page 20

Page 21: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

(d27)

Photon noise response results (normalized):

Conventional detector: area noise_flux_dens

OMD with photon noise suppression:

area

f

f_zero + 1

noise_flux_dens

f

f_pole + 1

OMD pole location (Hz): alpha_bs

8 π bs_wid2

OMD zero location (Hz):2 alpha_bs

π λ2

Thermal diffusivity:k_bs

cpm_bs dens_bs

Photon noise flux density: 2 2 area emis k_boltz stefan_boltz temp_bb5

25-Nov-098. Amplitude and Frequency Calibration Check

The marker sine wave plotted below experienced the same processing steps as the photon noise. Since its rms amplitude was set to 1.0, the peak amplitude in the power spectrum should be 1. The frequency should be 20Hz for glass and Mylar, 1000Hz for steel.

(c12)

( /* make graph title, file names for material and experiment */ gc_title:concat("Normalization Marker: ", sho(marker_freq),"Hz, 1.0 degrees rms"), /* get data from file */ mrkr_dat:read_numerical_data(fname_cal), /* scale data */ freq_axis: makelist((i/(2*t_stp*max_cnt)),i,1,max_pwr_ix), noise:makelist(sqrt(mrkr_dat[i]),i,1,max_pwr_ix), /* graph data */ graph(freq_axis,noise,"Frequency (Hz)","Noise",gc_title ))$

Normalization Marker: 20.0Hz, 1.0 degrees rms

6.37d-2 < X < 2.09d+3; 3.06d-6 < Y < 0.99

Noise

Frequency (Hz)

0.00

0.25

0.50

0.75

1.00

0.00 20.00 40.00

(c28)

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 21

Intrel Service Company 9/6/111 Page 21

Page 22: mea con blip thrm-diff-mfe.mfe Page 1 - Intrel

(c22) (c16) (c5) C:\Macsyma\Macsyma2\system\init.lsp being loaded.

Batching the file C:\@Files\Math\User\mac-init.mac

(c14)

C:\@files\Math\mea\concept\blip\mea_con_blip_thrm-diff-mfe.mfe Page 22

Intrel Service Company 9/6/111 Page 22