📄 sparsearch.tex
字号:
have (graphics, sound, etc.). Omit if the function has no side effects.\item[6.] {\it Description}. Here, describe what the function does in as muchdetail as possible.\item[7.] {\it Examples}. Here, list examples of how the function is called inpractice. This field is optional.\item[8.] {\it Algorithm}. Here, describe the algorithm used by the function.This field is optional.\item[9.] {\it See Also}. Here, mention other routines which this routine callsor which call this one, or routines with a special relationship to thisfunction. This field is optional.\item[10.] {\it References}. Here, list references from which the user mayobtain further information about the function. This field is optional.\end {itemize}%---------------------------------------------------------\section[Documentation Directory]{Documentation Directory}\label{docdir}The directory \DocDir\ contains a variety of information about \WaveLab. Thereare a number of general files, which describe various terms and conditions andgoals. The contents of any of these files may be examined by typing its name.\begin{verbatim}% ADDINGNEWFEATURES - How to Add New Features to SparseLab% BUGREPORT - How to report bugs about SparseLab% COPYING - SparseLab Copying Permissions% DATASTRUCTURES - Basic data structures in SparseLab% FEEDBACK - Give feedback about SparseLab% GETTINGSTARTED - Ideas for getting started with SparseLab% INSTALLATION - Installation of SparseLab% LIMITATIONS - SparseLab known limitations% PAYMENT - No Charge for SparseLab Software% REGISTRATION - SparseLab Registration% SUPPORT - SparseLab Support% THANKS - Thanks to contributors% VERSION - Part of SparseLab Version v$VERSION$% WARRANTY - No Warranty on SparseLab software\end{verbatim}To add or modify the first group of files, very little is required. Simply addnew files. The second group of files, being automatically generated at buildtime, should not ordinarily be modified. Instead, modify the source from whichthey are automatically compiled.Because of the automatic build process, it is important to maintainthe integrity of certain files. These include: \begin{itemize}\item Contents files. Every directory should have a \Contents\ file. Whenadding a new function to a directory, be sure to add it to the directory'sContents file as well.\item H1 Lines of Help documents. Every \dotm\ file should contain a helpheader, and the {\tt H1} line of the help header should follow the rulesspecified above.\item \$VERSION\$ marker. Every \Contents\ file has, in the {\tt H1}line, a description of what the directory contains, as well as a version marker.The text \$VERSION\$ is replaced, automatically upon build, by the currentversion number.\end{itemize}%---------------------------------------------------------\section[Examples Directory]{Examples Directory}\label{workdir}Another useful component of the system documentation is the {\tt/Examples} directory, which contains scripts that exercise thesoftware in various ways.The user can look through the graphics generated by thisdocumentation and, upon seeing something interesting, inspect thecorresponding script to see how the graphic was created.Currently, the {\tt /Workouts} directory contains threesubdirectories:\begin{verbatim} nnfEx Non-negative Matrix Factorization reconstrutionEx Signal Reconstruction RegEx Model Selection in Regression TFDecompEx Time Frequency Decomposition\end{verbatim}%---------------------------------------------------------\section[\TeX\ Documents]{\TeX\ Documents}\label{doctex}The system also comes with several documents, written in \TeX, whichfunction as manuals for system-maintenance people.The file {\tt SparseMacros.tex} within {\tt SparseLab Documentation}contains macros that define the current version of \WaveLab,filenames, file sizes, file locations, etc. This file should bemodified appropriately for new releases of \WaveLab. It is includedby all the documents described below.\subsection{About SparseLab}{\it About SparseLab} helps a new user with installing and gettingstarted with \WaveLab. The corresponding pdf and postscriptdocuments are available at:\\ {\tt \AboutWLAddress}. The source iswritten in \LaTeX. It is contained within the {\tt About SparseLab}folder {\tt Documentation}.%---------------------------------------------------------\subsection{Architecture}You are currently reading the {\it SparseLab Architecture} document.It contains system-level information about the \WaveLab\distribution. The corresponding postscript document is available via{\tt \WLArchitectureAddress}. The source is written in \LaTeX. Itis contained within the {\tt SparseLab Architecture} folder in {\ttSparseLab Documentation}.%=============================================% Chapter 8%=============================================\chapter[Utilities]{Utilities}\label{utilsec}Several utilities are available in \WaveLab\ mainly for the purpose ofcentralizing various programming idioms. If \WaveLab\ is ever to be ported toOctave, for example, these allow one to modify only the utilities to the newplatform and achieve the desired effect of platform-independent scripts.The current \Contents\ file for \UtilDir\ goes as follows:\begin{verbatim}% Contents.m - This file% aconv.m - Convolution Tool for Two-Scale Transform% AutoImage.m - Automatic Scaling for Image Display% DownDyadHi.m - Hi-Pass Downsampling operator (periodized)% DownDyadLo.m - Lo-Pass Downsampling operator (periodized)% dyad.m - Index entire j-th dyad of 1-d wavelet xform% dyadlength.m - Find length and dyadic length of array% FWT_PO.m - Forward Wavelet Transform (periodized, orthogonal)% FWT_TI.m - translation invariant forward wavelet transform% iconv.m - Convolution Tool for Two-Scale Transform% IWT_PO.m - Inverse Wavelet Transform (periodized, orthogonal)% IWT_TI.m - translation invariant forward wavelet transform% LockAxes.m - Version-independent axis command% lshift.m - Circular left shift of 1-d signal% MakeONFilter.m - Generate Orthonormal QMF Filter for Wavelet Transform% MirrorFilt.m - Apply (-1)^t modulation% Noisemaker.m - Add Noise to Signal% NormNoise.m - Estimates noise level, Normalize signal to noise level 1% packet.m - Packet table indexing% PlotSpikes.m - Plot 1-d signal as baseline with series of spikes% PlotWaveCoeff.m - Spike-plot display of wavelet coefficients% RegisterPlot.m - Add legend with file name, date, flag% reverse.m - Reverse order of elements in 1-d signal% rshift.m - Circular right shift of 1-d signal% ShapeAsRow.m - Reshape 1d vector as row% ShapeLike.m - Reshape first argument like second argument% TIDenoise.m - Translation invariant denoising of a 1-D signal% twonorm.m - Computes ||v||_2% UnlockAxes.m - Version-independent axis command% UpDyadHi.m - Hi-Pass Upsampling operator; periodized% UpDyadLo.m - Lo-Pass Upsampling operator; periodized% UpSample.m - Upsampling operator\end{verbatim}The functions of these utilities can be loosely classified into the categories: {\it Graphics},{\it Random Numbers}, {\it Shaping Arrays}, and {\it Scripting}.%=============================================% Chapter 9%=============================================\chapter[Source and Build]{Source and Build}\label{srcbld}This chapter describes how \WaveLab\ source is compiled into archives fordistribution.%---------------------------------------------------------\section[Development System]{Development System}\label{devsys}\begin{itemize}\item[1]The source for \WaveLab\ development has several components indifferent directories:\item[2] {\it TeX Source} in a directory named {\tt Documentation} inside the{\tt SparseLab100\} folder.\item[3] {\it Shell Source} in a directory named {\tt shell\_tools} inside the{\tt SparseLab100\} folder.\end{itemize}\section[Shell Tools]{Shell Tools}\label{shelltools}Here is an up-to-date list of the high-level files:\begin{verbatim} append_footer.sh - Appends a footer to all non-Contents .m files SparseLab_Footer.txt - the footer that gets appended\end{verbatim}These can be used outside of the Master build process.%---------------------------------------------------------\section[Standard Release]{Standard Release}\label{stdrel}The process of building a ``standard'' release involves:\begin{itemize}\item[1.] Appending copyright notices and date-of-modification information toall files in the library;\item[2.] Adding the Matlab Source files to a zip file. This .zipfile is the final version that will be made available on the WWWsites.\end{itemize}%---------------------------------------------------------\section[Compiling \dotps]{Compiling \dotps}\label{compps}The {\tt Documentation} directory within {\tt SparseLab\_Master}contains one folder for each of the \WaveLab\ documents: {\it AboutSparseLab} and {\it SparseLab Architecture}. These folders containthe \LaTeX\ code for the documents, which are compiled into \dotps\and .pdf files. These \dotps\ and .pdf files are then madeavailable on the WWW sites.%---------------------------------------------------------\section[Distribution]{Distribution}\label{distribution}The uniform download process is chosen for Sparselab. By uniform download process we mean that allthe users, independent of the platforms they are using, download the file SparseLabvers.zip inwhich vers is replaced by the version of the Sparselab. Then during the installation processSparselab will recognize their platform. Therefore, there is no need for releasing different filesfor different platforms anymore. The only thing that the distributor should do is just putting theSparseLabvers.zip on the WWW site.Because of the size of some of the precomputed data files included in SparseLab, two separatedownload packages, SparseLabvers\_DataSupplementExtCS.zip andSparselabvers\_DataSupplementStOMP.zip (where vers is replaces by the appropriate version number)are created for download. Optimally, all three .zip files should be downloaded and installedtogether.%=============================================% Chapter 10%=============================================\chapter[Distribution and Maintenance]{Distribution and Maintenance}\label{dist}This chapter describes how \WaveLab\ is distributed and maintained.%---------------------------------------------------------\section[Archive Directory]{Archive Directory}\label{devarch}The {\tt Archive} directory within {\tt SparseLab} is a depository for old versions of the softwareand documentation.%---------------------------------------------------------\section[SparseLab Account]{SparseLab Account}\label{slacct}An account named {\tt SparseLab} is maintained on the leland system at stanford.edu, as is thewebsite. The account serves several varied purposes:\begin{enumerate}\item[1.] The sub-directory {\tt WWW} holds the files used to maintainour Web page.\item[3.] The current version of \WaveLab\ is always present on this account inthe sub-directory {\tt SparseLab}.\item[4.] Feedback -- questions, comments, suggestions, etc. -- may be sent tothe development team by e-mailing \eWaveLab.\end{enumerate}%---------------------------------------------------------\section[Web Page]{Web Page}\label{webpage}The URL of the \WaveLab\ WWW page is \WLWEB. The html files for the home page are stored in theDocumentation subdirectory of SparseLab100/. The home page is constantly changing and evolving.New versions and updates are always announced on the home page.\end{document}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -