CHANGES SINCE ORIGINAL RELEASE (BY FILE) ---------------------------- File: Data/fitBackground.m ---------------------------- -- Revision 1.9 Updated copyright notices to match last-modified dates. -- Revision 1.8 If SD fitting not used, make average phase as well as average amplitude match between theory and experiment. -- Revision 1.7 Cleaned up figure handling and multi-frequency handling Fixed stray "&&" (should be "&" in Matlab) Sets size of Medium.Muao/Medium.Muspo correctly now. -- Revision 1.6 Don't compute angle cost unless this is RF data. ---------------------------- File: Data/fitSD.m ---------------------------- -- Revision 1.10 Updated copyright notices to match last-modified dates. -- Revision 1.9 Improve handling of complex-valued data fits. -- Revision 1.8 Clean up a problem with complex amplitude bleeding between RF and non-RF measurements (just takes real of solution for non-RF measurements). -- Revision 1.7 Added debugging output. Corrected handling of complex data in fitSD.m Routines now understand that SD.SrcAmp/SD.DetAmp have #freq as third index. -- Revision 1.6 SD.SrcAmp/DetAmp are now nsrc by nwavl by nfreq tables, changed fitSD's to reflect this. ---------------------------- File: Data/fitSDAmp.m ---------------------------- -- Revision 1.8 Updated copyright notices to match last-modified dates. -- Revision 1.7 Added debugging output. Corrected handling of complex data in fitSD.m Routines now understand that SD.SrcAmp/SD.DetAmp have #freq as third index. -- Revision 1.6 SD.SrcAmp/DetAmp are now nsrc by nwavl by nfreq tables, changed fitSD's to reflect this. ---------------------------- File: Data/fitSDPhs.m ---------------------------- -- Revision 1.8 Updated copyright notices to match last-modified dates. -- Revision 1.7 Fixed mis-named variable -- Revision 1.6 Added debugging output. Corrected handling of complex data in fitSD.m Routines now understand that SD.SrcAmp/SD.DetAmp have #freq as third index. ---------------------------- File: Data/newFitBackground.m ---------------------------- -- Revision 1.4 Forgot to remove some old debugging code. -- Revision 1.3 Now modifies amplitude jacobian to remove rank-deficiency. Also puts up a warning (and then clears the matrix) if there is exactly one source or detector (without multiple combinations, there is no unique solution). Switch from CG minimization to Tikhonov regularized inverse. ---------------------------- File: Data/readPMIData.m ---------------------------- -- Revision 1.13 Updated copyright notices to match last-modified dates. -- Revision 1.12 Improve handling of partial frames of data. -- Revision 1.11 Now a little smarter about data types - avoids some unnecessary conversions to double when reading (faster input and less memory consumption). -- Revision 1.10 DataType field, if present, was being checked incorrectly which lead to incorrect complaints about undefined/overdefiend fields. Fixed PMI spec a while back to give cells instead of strings, but I must have forgotten to update the loader. -- Revision 1.9 Improved handling of SD.DataType fields. Now included in SD as a cell array instead of limiting the field to exactly one string value. ---------------------------- File: Data/writePMIData.m ---------------------------- -- Revision 1.3 Went back through and re-verified code to match PMI data spec. ---------------------------- File: Doc/PMIDataFormat.tex ---------------------------- -- Revision 1.6 Updated .tex version of the documentation. Added copyright notices to all files. -- Revision 1.5 Added pdfLaTeX-specific flags (inside an \if\fi block so it will be compatible with traditional latex) that set the PDF document fields (visible under document preferences). -- Revision 1.4 Still working on the documentation ---------------------------- File: Doc/PMI_Example.m ---------------------------- -- Revision 1.5 Update example to reflect older changes to toolbox ---------------------------- File: Doc/PMI_Intro.tex ---------------------------- -- Revision 1.8 Updated .tex version of the documentation. Added copyright notices to all files. -- Revision 1.7 Updated copyright notices to match last-modified dates. -- Revision 1.6 SD.SrcAmp/SD.DetAmp now n_optode by n_wvl * n_freq, changed documentation to match. -- Revision 1.5 Added pdfLaTeX-specific flags (inside an \if\fi block so it will be compatible with traditional latex) that set the PDF document fields (visible under document preferences). -- Revision 1.4 Still working on the documentation -- Revision 1.3 Cleaned up TeX a bit, make changes to bring the documentation back in sync with the rest of the toolbox. ---------------------------- File: Doc/index.html ---------------------------- -- Revision 1.3 XHTML code now passes cleanly through the validator. ---------------------------- File: Doc/pmi-gpl.xhtml ---------------------------- -- Revision 1.3 Fixed all the questionable points detected by the HTML validator. ---------------------------- File: Forward/Pert_Grad.m ---------------------------- -- Revision 1.9 Voxels no longer need to be completely uniformly spaced. The only requirement now is that it must be possible to generate the gridding using the matlab ndgrid function (i.e. outer product of three lists of coordinates) -- Revision 1.8 Improved documentation -- Revision 1.7 The step in x, y, and z for the gradient was not defined. This is fixed, but we assume that the voxel size is uniform throughout the grid. ---------------------------- File: Forward/calcDelMuA.m ---------------------------- -- Revision 1.10 Fixed minor syntax error in checking for index of refraction warning message. -- Revision 1.9 Added warning about Object{:}.idxRefr, which are ignored by the current code (\delta{n} perturbations have not been implemented). ---------------------------- File: Forward/calcDelMuSp.m ---------------------------- -- Revision 1.10 Fixed minor syntax error in checking for index of refraction warning message. -- Revision 1.9 Added warning about Object{:}.idxRefr, which are ignored by the current code (\delta{n} perturbations have not been implemented). ---------------------------- File: Forward/genJacobianFrom2pts.m ---------------------------- -- Revision 1.8 Repack Jacobian to match packing of Born forward matrices. ---------------------------- File: Forward/genMuJacobian.m ---------------------------- -- Revision 1.10 Updated copyright notices to match last-modified dates. -- Revision 1.9 More efficient sparse matrix handling. -- Revision 1.8 Took out redundant loop over wavelengths. Now handles sparse data allocations more intellegently for faster calculations. -- Revision 1.7 Improved program documentation -- Revision 1.6 Multiple wavelengths are now handled properly. -- Revision 1.5 The mua and musp Jacobians were stacked wrongly. ---------------------------- File: Forward/genPosJacobian.m ---------------------------- -- Revision 1.10 Improved comments. -- Revision 1.9 Updated copyright notices to match last-modified dates. -- Revision 1.8 Convert from Born to Rytov outside loop over measurements for faster execution. -- Revision 1.7 Quiet down warnings about slab thickness changing unless Debug enabled. -- Revision 1.6 Now return Jacobians as sparse matrices. -- Revision 1.5 Removed redundant "data" argument - never referenced, so no need to pass it. Perturbations in the Z direction for slab geometries should work. Perturbations in the Z direction for semi-infinite geometries should (correctly) fail with an error message. -- Revision 1.4 I think I modified the code correctly to change the slab boundary thickness when src or det Z is changed. ---------------------------- File: Forward/genSDJacobian.m ---------------------------- -- Revision 1.13 Improved comments. -- Revision 1.12 Updated copyright notices to match last-modified dates. -- Revision 1.11 SD.SrcAmp/DetAmp are now nsrc by nwavl by nfreq tables, changed Jacobian to reflect this. -- Revision 1.10 Now return Jacobians as sparse matrices. -- Revision 1.9 The size of the Jacobian was potentially one element short. This didn't matter if all detectors were being used, but with only a subset it was causing problems. ---------------------------- File: Forward/isFD.m ---------------------------- -- Revision 1.8 Updated copyright notices to match last-modified dates. -- Revision 1.7 Now check for presence of FD/TD elements. Will return TRUE even on mixed-data imagers now (i.e. being a TD imager is no longer assumed to be mutually exclusive to being an FD imager). -- Revision 1.6 Fixed typo -- Revision 1.5 Fixed the fixes. -- Revision 1.4 Streamlined checks - now only consideres the measurement list. May think about removing redundant arguments in the future. ---------------------------- File: Forward/isTD.m ---------------------------- -- Revision 1.7 Updated copyright notices to match last-modified dates. -- Revision 1.6 Now check for presence of FD/TD elements. Will return TRUE even on mixed-data imagers now (i.e. being a TD imager is no longer assumed to be mutually exclusive to being an FD imager). -- Revision 1.5 Fixed the fixes. -- Revision 1.4 Streamlined checks - now only consideres the measurement list. May think about removing redundant arguments in the future. ---------------------------- File: Forward/Born/DPDWHelmholtz.m ---------------------------- -- Revision 1.7 Updated copyright notices to match last-modified dates. -- Revision 1.6 Improved TD vs FD logic (goes with updated isTD.m and isFD.m routines) ---------------------------- File: Forward/Born/genBornData.m ---------------------------- -- Revision 1.17 Scattering perturbations were not being calculated correctly. The perturbation is \delta\mu_s', but the forward matrix needs \delta D/D. Cleaning up FullBorn code; FB matrices are not packed the same as First-Born/Rytov matrices. Work on sparse/full matrix handling to improve efficiency. -- Revision 1.16 Updated copyright notices to match last-modified dates. -- Revision 1.15 Added sanity check -- Revision 1.14 Fixed bug when both Mua and Musp perturbations desired -- Revision 1.13 Cleaned up code, deleted some (commented out) obsolete sections. Changed arguments to getMuPert() - no need to pass objects when it's included in the Medium structure. Similaryly, calcDelMuA() and calcDelMuSp() are passed Medium.Object directly. -- Revision 1.12 1) Is the FullBorn scattering perturbation '-' or '+'? 2) For BornN I fixed the convergence check for a scattering perturbation. 3) Fixen BornN to use MethodParam1 as the order. ---------------------------- File: Forward/Born/genBornMat.m ---------------------------- -- Revision 1.17 Improved function documentation. -- Revision 1.16 Updated copyright notices to match last-modified dates. -- Revision 1.15 spdiags() was giving wrong results for conversion from Born to Rytov, go back to a simple for-loop. -- Revision 1.14 Improved conversion from Born to Rytov form with sparse matrices. -- Revision 1.13 Improved handling of sparse matrices -- Revision 1.12 Fixed a typo with HlmFullBornNB ---------------------------- File: Forward/Born/FrequencyDomain/FD2pt.m ---------------------------- -- Revision 1.10 Updated copyright notices to match last-modified dates. -- Revision 1.9 Took out some pointless error checks. ---------------------------- File: Forward/Born/FrequencyDomain/FD3pt.m ---------------------------- -- Revision 1.14 Updated copyright notices to match last-modified dates. -- Revision 1.13 Improved checking for MEX files, now OS independent. -- Revision 1.12 Explicitly check for 'repackBornFwdMat.mexglx' instead of just 'repackBornFwdMat' since Matlab seems to be getting confused by the help file (which has a .m extension but isn't actually an executable Matlab function). -- Revision 1.11 Cleaned up matrix block-packing code. Fixed some minor bugs. Now uses sparse matrices for 2-wavelength arrays as well. -- Revision 1.10 Clear temporary variables a little more agressively, may help in low-memory situations. -- Revision 1.9 Now uses external (MEX) routine to block-pack the forward matrix. -- Revision 1.8 Fixed BornSB that wasn't changed to Born1SB. ---------------------------- File: Forward/Born/FrequencyDomain/FD_GF.m ---------------------------- -- Revision 1.7 Updated copyright notices to match last-modified dates. -- Revision 1.6 Don't be so permissive about input arguments. Since this is usally called as the innermost function of a loop, eliminating useless argument checks can still give a significant speed boost. ---------------------------- File: Forward/Born/FrequencyDomain/Hlm2ptNB.m ---------------------------- -- Revision 1.10 Updated copyright notices to match last-modified dates. -- Revision 1.9 OOPS - forgot about the frequency dependence of amplitude coefficients. -- Revision 1.8 With positional calibration, there are few or no duplicate fiber separations, so I'm not seeing any significant speed-up. Since I'm not gaining anything, I may as well go back to the simpler (and easier to debug) way of doing things. -- Revision 1.7 Trying to improve performance by only calculation Phi0 at unique source-detector separations. Next thing to try will be interpolation. ---------------------------- File: Forward/Born/FrequencyDomain/Hlm2ptSB.m ---------------------------- -- Revision 1.17 Updated copyright notices to match last-modified dates. -- Revision 1.16 OOPS - forgot about the frequency dependence of amplitude coefficients. -- Revision 1.15 With positional calibration, there are few or no duplicate fiber separations, so I'm not seeing any significant speed-up. Since I'm not gaining anything, I may as well go back to the simpler (and easier to debug) way of doing things. -- Revision 1.14 Fixed misleading error message ---------------------------- File: Forward/Born/FrequencyDomain/Hlm2ptZB.m ---------------------------- -- Revision 1.12 Updated copyright notices to match last-modified dates. -- Revision 1.11 OOPS - forgot about the frequency dependence of amplitude coefficients. -- Revision 1.10 With positional calibration, there are few or no duplicate fiber separations, so I'm not seeing any significant speed-up. Since I'm not gaining anything, I may as well go back to the simpler (and easier to debug) way of doing things. Removed dependance on Medium.Slab_Thickness. Because the fibers all sit at Z=0, the problem has mirror symmetry about Z=0, so it doesn't matter which sign I use for the calculation. -- Revision 1.9 Trying to improve performance by only calculation Phi0 at unique source-detector separations. Next thing to try will be interpolation. ---------------------------- File: Forward/Born/FrequencyDomain/Hlm3ptBorn1NB.m ---------------------------- -- Revision 1.13 Updated copyright notices to match last-modified dates. -- Revision 1.12 Be more aggressive about clearing temporary variables. May help in low-memory situations. -- Revision 1.11 Dramatically improve calculation speed by calculating each half (src/det) just once and building up the matrix by taking appropriate products in a single pass. -- Revision 1.10 Significantly improved speed of matrix calculation by pre-computing the necessary 2-pt functions and then multiplying just these cached vectors together to get the 3pt functions. Down side is that it increases the storage requirements while the matrix is being generated. ---------------------------- File: Forward/Born/FrequencyDomain/Hlm3ptBorn1SB.m ---------------------------- -- Revision 1.19 Updated copyright notices to match last-modified dates. -- Revision 1.18 Re-arranged code slightly for better performance (there's no need to move sources one scattering length into the medium if no measurements use that particular src/wvl/frq combination). -- Revision 1.17 Be more aggressive about clearing temporary variables. May help in low-memory situations. -- Revision 1.16 Dramatically improve calculation speed by calculating each half (src/det) just once and building up the matrix by taking appropriate products in a single pass. -- Revision 1.15 Significantly improved speed of matrix calculation by pre-computing the necessary 2-pt functions and then multiplying just these cached vectors together to get the 3pt functions. Down side is that it increases the storage requirements while the matrix is being generated. ---------------------------- File: Forward/Born/FrequencyDomain/Hlm3ptBorn1ZB.m ---------------------------- -- Revision 1.15 When re-arranging loops, missed one line of code. -- Revision 1.14 Updated copyright notices to match last-modified dates. -- Revision 1.13 Re-arranged code slightly for better performance (there's no need to move sources one scattering length into the medium if no measurements use that particular src/wvl/frq combination). -- Revision 1.12 Be more aggressive about clearing temporary variables. May help in low-memory situations. -- Revision 1.11 Dramatically improve calculation speed by calculating each half (src/det) just once and building up the matrix by taking appropriate products in a single pass. -- Revision 1.10 Significantly improved speed of matrix calculation by pre-computing the necessary 2-pt functions and then multiplying just these cached vectors together to get the 3pt functions. Down side is that it increases the storage requirements while the matrix is being generated. ---------------------------- File: Forward/Born/FrequencyDomain/HlmFullBornNB.m ---------------------------- -- Revision 1.7 Repack as sparse when the number of wavelengths is >1, not >2 as before. -- Revision 1.6 Added self-energy terms to all the FullBorn/NthBorn routines. -- Revision 1.5 added self-voxel contribution for absorption. The scattering self-voxel contribution is equal to zero. -- Revision 1.4 slabS had v and Thickness mis-ordered in the function argument list. ---------------------------- File: Forward/Born/FrequencyDomain/HlmFullBornSB.m ---------------------------- -- Revision 1.15 Repack as sparse when the number of wavelengths is >1, not >2 as before. -- Revision 1.14 Added self-energy terms to all the FullBorn/NthBorn routines. -- Revision 1.13 slabS had v and Thickness mis-ordered in the function argument list. ---------------------------- File: Forward/Born/FrequencyDomain/HlmFullBornZB.m ---------------------------- -- Revision 1.6 Repack as sparse when the number of wavelengths is >1, not >2 as before. -- Revision 1.5 Added self-energy terms to all the FullBorn/NthBorn routines. -- Revision 1.4 slabS had v and Thickness mis-ordered in the function argument list. ---------------------------- File: Forward/Born/FrequencyDomain/MLtoFB.m ---------------------------- -- Revision 1.2 Added copyright notice ---------------------------- File: Forward/Born/FrequencyDomain/MEX/FD_GF.c ---------------------------- -- Revision 1.5 Updated copyright notices to match last-modified dates. -- Revision 1.4 Added copyright notice -- Revision 1.3 Fixed serious bug where, for Nx3 arguments (N>1), the matrix was being accessed in the wrong order (as if it were 3xN). This, of course, led to completely bogus results. ---------------------------- File: Forward/Born/FrequencyDomain/MEX/Makefile ---------------------------- -- Revision 1.3 All configuration variables are now set by the top-level Makefile. Makefiles lower down have sensible defaults as a development aid, but the top-level values will take precedence if available. ---------------------------- File: Forward/Born/MEX/Makefile ---------------------------- -- Revision 1.2 All configuration variables are now set by the top-level Makefile. Makefiles lower down have sensible defaults as a development aid, but the top-level values will take precedence if available. ---------------------------- File: Forward/Born/MEX/repackBornFwdMat.c ---------------------------- -- Revision 1.4 Updated copyright notices to match last-modified dates. -- Revision 1.3 Added support for simultaneous absorbing and scattering reconstructions. ---------------------------- File: Forward/Born/TimeDomain/TD2pt.m ---------------------------- -- Revision 1.10 Updated copyright notices to match last-modified dates. -- Revision 1.9 Changed checks for local mex files to explictly accept only MEX files. The old code was getting confused by the existance of the help files (which are .m files, but are not executable functions). ---------------------------- File: Forward/Born/TimeDomain/TD3pt.m ---------------------------- -- Revision 1.14 Updated copyright notices to match last-modified dates. -- Revision 1.13 Changed checks for local mex files to explictly accept only MEX files. The old code was getting confused by the existance of the help files (which are .m files, but are not executable functions). -- Revision 1.12 Improved block-packing of matrix. -- Revision 1.11 Now uses external (MEX) routine to block-pack the forward matrix. -- Revision 1.10 The mextd3pt* routines no longer generate A transposed, but instead generate A correctly ordered. Fixed code to match. ---------------------------- File: Forward/Born/TimeDomain/TD_2ptSB.m ---------------------------- -- Revision 1.16 Updated copyright notices to match last-modified dates. -- Revision 1.15 Changed checks for local mex files to explictly accept only MEX files. The old code was getting confused by the existance of the help files (which are .m files, but are not executable functions). ---------------------------- File: Forward/Born/TimeDomain/TD_2ptZB.m ---------------------------- -- Revision 1.14 Updated copyright notices to match last-modified dates. -- Revision 1.13 Changed checks for local mex files to explictly accept only MEX files. The old code was getting confused by the existance of the help files (which are .m files, but are not executable functions). ---------------------------- File: Forward/Born/TimeDomain/TD_3ptBorn1SB.m ---------------------------- -- Revision 1.16 Updated copyright notices to match last-modified dates. -- Revision 1.15 Changed checks for local mex files to explictly accept only MEX files. The old code was getting confused by the existance of the help files (which are .m files, but are not executable functions). ---------------------------- File: Forward/Born/TimeDomain/TD_3ptBorn1ZB.m ---------------------------- -- Revision 1.15 Updated copyright notices to match last-modified dates. -- Revision 1.14 Changed checks for local mex files to explictly accept only MEX files. The old code was getting confused by the existance of the help files (which are .m files, but are not executable functions). ---------------------------- File: Forward/Born/TimeDomain/MEX/Makefile ---------------------------- -- Revision 1.10 All configuration variables are now set by the top-level Makefile. Makefiles lower down have sensible defaults as a development aid, but the top-level values will take precedence if available. -- Revision 1.9 Moved to new development computer, local paths changed and converted to more generic compiler flags at the same time. ---------------------------- File: Forward/Born/TimeDomain/MEX/mextd3pt.c ---------------------------- -- Revision 1.9 Previous, the mextd3pt routines returned the transpose of the matrix since it was easier to generate that way. The code now allocates one temporary matrix column for storage and copies back into the correct matrix order. Thus, it's no longer necessary to transpose the data at the end (which can suck up an enormous amount of memory if A is large). ---------------------------- File: Forward/Sphere/exactSphere.m ---------------------------- -- Revision 1.4 Call isTD() to insure that this is a FD forward problem. ---------------------------- File: Forward/Sphere/genSphereData.m ---------------------------- -- Revision 1.5 Call isTD() to insure that this is a FD forward problem. ---------------------------- File: Forward/tFDimg/PMItoFD.m ---------------------------- -- Revision 1.3 Optical properties now (correctly) printed as /mm instead of /cm. ---------------------------- File: Forward/tMCimg/PMItoMC.m ---------------------------- -- Revision 1.5 Optical properties now (correctly) printed as /mm instead of /cm. ---------------------------- File: Forward/tMCimg/loadMC2pt.m ---------------------------- -- Revision 1.5 Updated copyright notices to match last-modified dates. -- Revision 1.4 Understands TWOPT_T of float and double (flag needs to be changed in program to match tMCimg compile options however). Promotes data when and if necessary. -- Revision 1.3 Trying to make code agree with reality (scale factors, etc.) ---------------------------- File: Forward/tMCimg/readMCHis.m ---------------------------- -- Revision 1.7 Updated copyright notices to match last-modified dates. -- Revision 1.6 Removed stray "keyboard" command. -- Revision 1.5 Error messages and help messages referred to readMCHis by older names, fixed text to match actual file name. Changed definition of complex wave-vector K to match rest of toolbox, doesn't change return values though. Improved comments. -- Revision 1.4 Trying to make code agree with reality (scale factors, etc.) ---------------------------- File: Noise/addElecNoise.m ---------------------------- -- Revision 1.5 Updated copyright notices to match last-modified dates. -- Revision 1.4 Redefined "signal" to be RMS signal value - more appropriate with complex-valued data. Explicitly checks for missing Phi0 input. Added some more comments. ---------------------------- File: Noise/addShotNoise.m ---------------------------- -- Revision 1.6 I think complex-value data is being handled correctly again. -- Revision 1.5 Updated copyright notices to match last-modified dates. -- Revision 1.4 Added extra comments and debugging code. It's not clear what the right way to define shot noise for complex-valued sources is, so I've limited the code to work with real-valued data only. -- Revision 1.3 Fixed handling of complex-valued data. Vectorized loop over data, runs much faster that way. ---------------------------- File: Recon/art.m ---------------------------- -- Revision 1.6 Added hooks for positivity constraint ---------------------------- File: Recon/fbp.m ---------------------------- -- Revision 1.3 Reconstruction uses variance of data, not covariance. Changed variable names and function documentation to reflect this. -- Revision 1.2 Changed order of arguments for consistance with other routines in this directory. Covariance matrice were being mis-applied, now ignore them if present. ---------------------------- File: Recon/sirt.m ---------------------------- -- Revision 1.9 Updated copyright notices to match last-modified dates. -- Revision 1.8 Added debugging code -- Revision 1.7 Trying to speed up the code a bit -- Revision 1.6 Added hooks for positivity constraint ---------------------------- File: Recon/tcgls.m ---------------------------- -- Revision 1.7 Updated copyright notices to match last-modified dates. -- Revision 1.6 Suppres status message if there's only one iteration count asked for. -- Revision 1.5 Improved handling of sparse forward matrices -- Revision 1.4 Tries to avoid expensive transpose operations ---------------------------- File: Recon/tik.m ---------------------------- -- Revision 1.4 1./x is not inv(x) for a diagonal matrix. Duh. -- Revision 1.3 Reconstruction uses variance of data, not covariance. Changed variable names and function documentation to reflect this. -- Revision 1.2 Changed order of arguments to match other functions. Conversion from covariance vector to diagonal matrix didn't work, fixed. ---------------------------- File: Recon/tsvd.m ---------------------------- -- Revision 1.2 Changed order of arguments to match other functions. ---------------------------- File: Util/SetOptode.m ---------------------------- -- Revision 1.6 Improved documentation -- Revision 1.5 I fixed this to take the Z position of the optode. ---------------------------- File: Util/genMeasList.m ---------------------------- -- Revision 1.9 Even if the fields SD.EmissionWavelength or SD.CorrelationTime are defined, they should not generate measurement list entries since these are obsolete names (SD.Lambda and SD.DelayTime are the correct places for this information). SD.DataType will not generate measurement list entries either. Since all three are currently unsupported by the toolbox, this has no real user impact. -- Revision 1.8 Updated copyright notices to match last-modified dates. -- Revision 1.7 Can now include all sources with separation r1 <= r < r2. Uses calcSep() to compute separations instead of doing it explicitly. ---------------------------- File: Util/mergeSD.m ---------------------------- -- Revision 1.5 Updated copyright notices to match last-modified dates. -- Revision 1.4 Improving reliability ---------------------------- File: Util/rowscale.m ---------------------------- -- Revision 1.5 Replaced for loop with sparse (diagonal) matrix multiply. Should be much faster and give the same result in the end. ---------------------------- File: Visualize/ishowVolume.m ---------------------------- -- Revision 1.2 Plot limits not being computed correctly for non-double data. User can now click and drag in 4th plot to move in Z. ---------------------------- File: Visualize/plotData.m ---------------------------- -- Revision 1.11 Check a little better for empty lists. May be redundant. -- Revision 1.10 Updated copyright notices to match last-modified dates. -- Revision 1.9 Changed color of 'X' marking optode position to magenta. Should show up on any color background (works better than the old gray50 did at least). -- Revision 1.8 Now only includes source/detector locations in Measurment list when computing plot limits (used to use all sources/detectors). -- Revision 1.7 Improved colormap handling ---------------------------- File: Visualize/plotDimensions.m ---------------------------- -- Revision 1.3 Cleaned up code and extended dimensions up to n=64. ---------------------------- File: Visualize/showImage.m ---------------------------- -- Revision 1.11 Updated copyright notices to match last-modified dates. -- Revision 1.10 Improved plot labeling Previously, showImage would give an error if you tried to plot a constant value (since min(data)==max(data) in this case). Trying to work around this problem. -- Revision 1.9 Subplot labeling wasn't working due to format string ('\mu' vs '\\mu'). ---------------------------- File: Visualize/showVolume.m ---------------------------- -- Revision 1.5 Updated copyright notices to match last-modified dates. -- Revision 1.4 Plot limits not being computed correctly for non-double data ---------------------------- File: Contents.m ---------------------------- -- Revision 1.4 Now that we have documentation, Contents.m should refer to it. ---------------------------- File: pmipath.m ---------------------------- -- Revision 1.14 Updated copyright notices to match last-modified dates. -- Revision 1.13 Added (currently empty) Forward/Born/Fluroescence and Forward/Born/Correlation directories to search path. -- Revision 1.12 Shuffled search order. Goal is to allow MEX functions to transparently over-ride Matlab PMI functions by giving them the same name. -- Revision 1.11 Added the new "Local" directory to the path. -- Revision 1.10 Added /Forward/Sphere to path