home *** CD-ROM | disk | FTP | other *** search
/ Hacker Chronicles 2 / HACKER2.BIN / 445.ANALYSIS.DOC < prev    next >
Text File  |  1993-03-31  |  19KB  |  547 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.           __________________________________________________
  11.  
  12.                              ANALYSIS (v4.0)
  13.           __________________________________________________
  14.  
  15.               Copyright 1992, 1993 by Gene V. Wallenstein
  16.                           All rights reserved.
  17.  
  18.                         Last revision: 03/31/93
  19.  
  20.                                    -
  21.  
  22.  
  23.                   Software for Science and Engineering
  24.  
  25.                     Gene V. Wallenstein
  26.                     5990 Pine Cone Court #406d1
  27.                     Lake Worth, Florida 33463 USA
  28.  
  29.                     CompuServe 75110,77
  30.                     Telephone  (407) 750-3527
  31.                     Internet - Wallenstein@Walt.ccs.fau.edu
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68. T A B L E   O F  C O N T E N T S
  69.  
  70. 1. Introduction
  71.  
  72. 2. Registration
  73.    2.1. What you get when you register
  74.         2.1.1 Upgrades - What's next?
  75.         2.1.2 User's Manual and Tutorial
  76.         2.1.3 Direct Support
  77.    2.2. Registration Form
  78.    2.3. Legal Stuff
  79.  
  80. 3. ANALYSIS Tools
  81.    3.1. Fast Fourier Transform (FFT)
  82.    3.2. Wavelet Analysis
  83.    3.3. Autocorrelation
  84.    3.4. Crosscorrelation
  85.    3.5. Coherence Analysis
  86.    3.6. Moments and the Distribution
  87.    3.7. Wigner-Ville Analysis
  88.    3.8. Digital Filtering
  89.    3.9. Graphics (2D and 3D)
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117. 1.  Introduction and System Requirements
  118.  
  119. ANALYSIS is a time-series analysis package which includes a
  120. wide diversity of transformations and other techniques to
  121. locate and quantify patterns in a data set. Even though you
  122. may not be analyzing time-series data, ANALYSIS can still
  123. give the same kinds of information as might be extracted
  124. from time dependent events, however, the interpretation
  125. changes. The only requirement is that you simply have the
  126. data in ASCII single column format. Some types of analyses
  127. also require that you specify two data sets. You will easily
  128. know which modules require this by the directions on the
  129. first menu screen for each type of analysis. If you are
  130. required to import two data sets, you must concatenate them
  131. into a single file which is of course twice as long as each
  132. original file.
  133.  
  134. There are two other general requirements to use this
  135. package.
  136.  
  137. 1)  The first is simply that you should have installed the
  138. ANSI.SYS in your CONFIG.SYS file. This was probably already
  139. done for you depending on your version of DOS, but just the
  140. same take a peak at the CONFIG.SYS file. This is a normal
  141. text file, so if you have to edit it be sure to save the
  142. file in text mode and avoid any special control characters
  143. that a word processor might put in it. Check to see if you
  144. have in your CONFIG.SYS file, a line which reads:
  145.  
  146. DEVICE=ANSI.SYS
  147.  
  148. if you don't, edit the file and add this line to it. You can
  149. still run ANALYSIS without ANSI.SYS, but the cursor control
  150. used by this package is dependent on the ANSI standard and
  151. will probably behave a bit strange without it.
  152.  
  153. 2)  The second requirement is that your screen be at least
  154. 640 by 480. As with the ANSI.SYS requirement, ANALYSIS will
  155. still run on smaller screens, but some of the graphic
  156. displays may clip on screens much smaller than this. Give it
  157. a try.
  158.  
  159.  
  160. 2.  Registration
  161.  
  162. ANALYSIS is distributed through a unique marketing concept
  163. called "shareware". The idea behind shareware is that you
  164. get the software and try it for a short grace period and if
  165. you intend to use it beyond that you register your copy with
  166. the author. The entire concept is based on an honor system
  167. among programmers and users, which has led to an outstanding
  168. base of high quality software without the high price usually
  169. associated with it. Also, shareware users are in the unique
  170. position of being able to contact the authors of the
  171. software they are using and get direct support in the form
  172. of manuals, phone help, and possible further customization
  173. of the software. Please read the list of added features you
  174. will receive when you become a registered user of ANALYSIS.
  175.  
  176.  
  177. 2.1.  What do I get when I register ANALYSIS?
  178.  
  179. Most authors of shareware offer further features to
  180. registered users. Below is a list of the additional items
  181. provided to registered users of ANALYSIS.
  182.  
  183. 2.1.1.  Upgrades - What's next?
  184.  
  185. Registered users of ANALYSIS pay a one time registration
  186. price and receive all upgrades free. The only cost is a
  187. minimal fee to cover the postage and handling of the disk.
  188. As a registered user you will receive notifications through
  189. the mail for updates of ANALYSIS.
  190.  
  191. Several users have asked what is in store for new versions
  192. of ANALYSIS. Since in general we update ANALYSIS every 8-10
  193. months, I will simply provide a broad sketch of planned
  194. upgrades.
  195.  
  196. Most users have commented that, above all, they would like
  197. to see more "number crunching" routines with as much
  198. flexibility as possible. In light of this, the following
  199. additions will be made to the next version(s) of ANALYSIS:
  200.  
  201. 1) WAVELET - Additions to the wavelet module have already
  202. begun. These include a broader family of "mother wavelets",
  203. which can be viewed prior to use. We are also looking into
  204. algorithms for allowing the user to define their own "mother
  205. wavelet".
  206.  
  207. 2) NON-LINEAR ANALYSIS - Several routines have already been
  208. written to estimate quantities such as the correlation
  209. dimension and Lyapunov exponents of an attractor. These are
  210. quantities used to characterize the geometry and dynamics of
  211. a system's attractor. They can thus be used to determine if
  212. a system is chaotic or not.
  213.  
  214. 3) MODELING - Both linear and nonlinear modeling in the form
  215. of ordinary differential equations (ODEs). The idea here is
  216. to specify a general form of the ODEs and solve for the
  217. parameters by using optimality constraints on the fit and
  218. stability of the equations.
  219.  
  220. 4) STATISTICAL TESTS - Some users have requested the
  221. inclusion of various statistical tests such as ANOVA and T-
  222. tests. We did not plan to incorporate much in the way of
  223. statistics beyond the first four moments and distribution,
  224. but considering the feedback obtained from our users, a
  225. general section for additional statistics will be added in
  226. the future.
  227.  
  228. We encourage all our users to provide feedback about
  229. ANALYSIS along with any ideas they may have for future
  230. releases. This is the primary means by which we guide our
  231. updates.
  232.  
  233. 2.1.2.  User's Manual and Tutorial
  234.  
  235. A laser-printed user's manual and tutorial which is actually
  236. and expanded version of section 3 of this file will be given
  237. to all registered users. This manual includes various
  238. examples of data analysis and explains which techniques are
  239. best in certain circumstances and the type of information
  240. which can be obtained from such methods. Several graphic
  241. examples are also used to assist the reader in the
  242. interpretation of the results obtained from using ANALYSIS,
  243. along with an extended list of references for future
  244. reading.
  245.  
  246. 2.1.3.  Direct Support
  247.  
  248. All registered users of ANALYSIS will receive full support
  249. either over the telephone, internet, or via the regular
  250. mail, by using one of the contact points on the cover of
  251. this document. This information is also listed on the first
  252. information screen of the program as well. Typical support
  253. consists of addressing any problems which are encountered
  254. while running ANALYSIS on certain machines. NOTE: The
  255. leading cause of reported problems is simply not using the
  256. proper file format. Please refer to the screen accompanying
  257. the particular module you are using for any additional
  258. requirements on file format beside those already stated.
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.  
  274. 2.2.  ANALYSIS Registration Form
  275.  
  276. There is a separate form in the file REGISTER.DOC, which is
  277. the registration form. To get a hardcopy of the file you can
  278. "copy" it to your printer by using C:>COPY REGISTER.DOC
  279. PRN. This command prints out the document assuming the
  280. REGISTER.DOC file is in the C:\ directory. You do not have
  281. to use this form, but try to include the following
  282. information when registering ANALYSIS:
  283.  
  284. Name________________________________________________________
  285.  
  286. Address_____________________________________________________
  287.  
  288. City/State/Zip______________________________________________
  289.  
  290. Disk Size  5.25_________  3.5__________
  291.  
  292. Where did you find ANALYSIS?________________________________
  293.  
  294.  
  295. The following fees apply to registration:
  296.  
  297. 1) Single user - $25.00
  298.  
  299. 2) Institution (under 10 machines) - $150.00
  300.  
  301. 3) Institution (over 10 machines) - $300.00
  302.  
  303. Send check or money order to:
  304.  
  305. Gene V. Wallenstein
  306. 5990 Pine Cone Court #406d1
  307. Lake Worth, Florida 33463 USA
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328. 2.3.  Legal Stuff
  329.  
  330. 1)  License - The user is granted the right (and encouraged)
  331. to copy this unregistered version and distribute it with no
  332. charge assuming it is unaltered . The user is also granted a
  333. grace period of 30 days in which to decide to register the
  334. software or not. During this grace period the software may
  335. be used free of charge.
  336.  
  337. 2)  Copyright - ANALYSIS is protected under United States
  338. copyright law and international treaty provisions. Copyright
  339. 1993 by Gene V. Wallenstein; All rights reserved.
  340.  
  341. 3)  Reverse Engineering - Any form of reverse engineering
  342. such as reverse compiling or disassembly is strictly
  343. prohibited.
  344.  
  345. 4)  Disclaimer of Warranty - This software and manual are
  346. distributed "as is" and without warranties as to performance
  347. of merchantability or any other warranties whether expressed
  348. or implied. Because of the various hardware and software
  349. environments into which this program may be placed, no
  350. warranty of fitness for a particular purpose is offered.
  351. Good data processing procedure dictates that any program be
  352. thoroughly tested with non-critical data before relying on
  353. it. The user must assume the entire risk of using the
  354. program. Any liability of the seller will be limited
  355. exclusively to product replacement or refund of purchase
  356. price.
  357.  
  358.  
  359. 3.  ANALYSIS Tools
  360.  
  361. The following is a brief description of the tools used by
  362. ANALYSIS. It is by no means exhaustive in its description
  363. but is merely intended to get the reader "up and running". A
  364. more detailed description of the techniques as well as a
  365. tutorial is provided to registered users (section 2.1.).
  366.  
  367. 3.1.  Fast Fourier Transform (FFT)
  368.  
  369. The Fast Fourier Transform (FFT) is a technique used to
  370. locate regularities in a data set. It is a way of
  371. representing a very complicated data pattern in terms of its
  372. linear projection onto sinusoids of various frequency. Thus
  373. the data can be seen as the sum of many simple periodic
  374. patterns each with a specific frequency. The POWER SPECTRUM
  375. is a power by frequency graph (uses a Parzen window) which
  376. shows quantitatively how much of the original pattern is
  377. composed by each of the frequencies.
  378.  
  379. A second quantity which can be derived from the FFT is the
  380. phase angle. Since the original signal can be represented as
  381. a sum of periodic patterns, it may be important to know the
  382. temporal relationship among each of the simpler patterns.
  383. That is, if they are time-shifted with respect to one
  384. another or not. The PHASE SPECTRUM tells the user the phase
  385. angle at each frequency. Generally, the user is only
  386. interested in those frequencies containing relatively large
  387. amounts of the total power in the spectrum. Therefore,
  388. one may compare for instance the phase angle for numerous
  389. data sets at a specific frequency and its higher harmonics.
  390.  
  391. In general, the FFT is a good method to decompose a data set
  392. which has multiple frequencies embedded in it.
  393.  
  394. 3.2.  Wavelet Analysis
  395.  
  396. Wavelet analysis is fairly new to mainstream signal
  397. processing. It is a projective technique similar to the FFT,
  398. however, rather than simply decomposing the signal into
  399. sinusoids of varying frequency, the data is represented as
  400. projections onto the affine group (translations and
  401. dilations). This means the data set can be represented as
  402. time translations of the mother wavelet (a basis function)
  403. and/or time dilations (i.e. shrinking or expanding the time
  404. scale of observation). ANALYSIS uses what is called the
  405. Mexican Hat as the mother wavelet (the function looks like a
  406. slice through a sombrero). The TRANSLATION SPECTRUM plots
  407. the relative magnitude of the original signal when projected
  408. onto the mother wavelet under various translations. The
  409. DILATION SPECTRUM is the same thing, only now the projection
  410. is onto dilations of the mother wavelet.
  411.  
  412. Typically, wavelet analysis is an excellent method for
  413. locating short-lived, high frequency patterns. This is
  414. because it avoids the time vs. frequency resolution problem
  415. inherent in Fourier analysis.
  416.  
  417. 3.3.  Autocorrelation
  418.  
  419. The autocorrelation function of a signal is a time dependent
  420. plot of the correlation of the signal with itself at
  421. different time lags. If the signal is periodic, the
  422. autocorrelation of the signal will also be. The initial
  423. value in the autocorrelation should be 1, since this is the
  424. first time point in the signal correlated with itself (zero
  425. time lag). Following this, a time lag of one point is
  426. introduced each time a correlation is computed until the
  427. final lag of (n-1) time points. The range of the
  428. autocorrelation signal is thus 1 to -1.
  429.  
  430. Another use for the autocorrelation is to see where the
  431. signal loses all correlation with itself (i.e. Markov
  432. processes). This can be seen as the first zero crossing of
  433. the autocorrelation. Consequently, even a periodic signal
  434. will have a zero crossing in the autocorrelation function.
  435. By examing the autocorrelation function of a signal, one can
  436. tell when in time the signal is correlated with itself and
  437. to what degree.
  438.  
  439. 3.4.  Crosscorrelation
  440.  
  441. The crosscorrelation is similar to the autocorrelation
  442. function except it describes the correlation between two
  443. signals shifted in time. To use the crosscorrelation module
  444. in ANALYSIS, you must concatenate the two files into one in
  445. single column format. Thus the two original files must be of
  446. exactly the same number of points. This module is very
  447. useful for extracting information about the temporal
  448. dependency of one signal on another.
  449.  
  450. 3.5.  Coherence Analysis
  451.  
  452. Coherence is a frequency dependent measure which quantifies
  453. the magnitude of shared power between two signals. To use
  454. this module, the data must be in the same format as that
  455. used by the crosscorrelation analysis. Similar to the FFT,
  456. the POWER SPECTRUM is a magnitude by frequency graph, which
  457. in the case of coherence is normalized between 0 and 1. Thus
  458. if two signals have exactly the same amount of a given
  459. frequency in their composition, the coherence at that
  460. frequency will be 1. If they have little in common at a
  461. given frequency, the coherence magnitude is 0.
  462.  
  463. A second quantity of the coherence measure is the relative
  464. phase angle between the two signals at a given frequency.
  465. The measure of relative phase between two signals yields
  466. information about the synchrony of the signals at a specific
  467. frequency. The two signals may be in perfect synchrony (a
  468. relative phase of 0 degrees) or be exactly out of phase or
  469. perfect syncopation (180 degrees). This analysis provides a
  470. means of quantifying the relative degree of synchrony
  471. between any two signals at each of the frequencies of
  472. interest.
  473.  
  474.  
  475. 3.6.  Moments and the Distribution
  476.  
  477. This module returns the first four moments of the data set
  478. (the mean, variance, skew, and kurtosis) and generates a
  479. graph showing its distribution. This information is of use
  480. when attempting to get a general feel for the data set and
  481. its characteristics. The information can also of course be
  482. used as a means to statistically quantify the data set in
  483. comparison with other data.
  484.  
  485. 3.7.  Wigner-Ville Analysis
  486.  
  487. The Wigner-Ville method of analysis is a technique which has
  488. similarities to both the FFT and Wavelet methods. It is a
  489. projection of a data signal onto a family of sinusoids as
  490. is the case of the FFT, however, it also depends on time
  491. translations of the signal. The Wigner-Ville method is
  492. particularly good at uncovering periodic patterns in data
  493. sets where the signal is not stationary (i.e. the data may
  494. have a strong trend). By using the Wigner-Ville analysis,
  495. the data signal can be decomposed into its frequency
  496. components which are of varying temporal duration.
  497.  
  498. When using the TRANSLATION SPECTRUM of this module, one must
  499. specify which frequency of interest to calculate the time
  500. dilation across, or if the interest is in the FREQUENCY
  501. SPECTRUM, the user must specify the time dilation to
  502. calculate across each frequency.
  503.  
  504. If you are dealing with a data set which has slow trends
  505. which shift the moments of the signal dramatically in time,
  506. the Wigner-Ville can be used as a check on the FFT
  507. calculation.
  508.  
  509. 3.8.  Digital Filtering
  510.  
  511. The digital filtering module in ANALYSIS is a general
  512. purpose tool for filtering data sets at prescribed band
  513. widths. For example, if the user wishes to create a new data
  514. signal consisting of only the 8.0 to 12.0 Hz frequency
  515. components, one simply needs to specify the high-pass (8.0),
  516. the low-pass (12.0), and the sampling rate of the original
  517. data set. The resulting output can be viewed and sent to a
  518. file for further analysis. Digital filtering is often the
  519. best way to "clean up" a signal so that its true structure
  520. can be viewed more easily. This, for example, is often the
  521. case when the signal contains a large amount of higher
  522. frequency noise. The user wishing to get rid of this could
  523. simply use this module and set the high-pass to 0.0 Hz and
  524. the low-pass setting to whatever is sufficient to eliminate
  525. the "noise". However, caution must obviously be taken when
  526. deciding what does and does not constitute noise in a
  527. signal.
  528.  
  529. 3.9.  Graphics (2D and 3D)
  530.  
  531. The graphics routines in ANALYSIS will plot data in two and
  532. three dimensions. The 2D routine simply takes the single
  533. column of data and plots it with time as the X axis. The 3D
  534. routine takes the single column of data and breaks it down
  535. in such a way that the first three numbers represent the
  536. first point in 3 dimensional space, the next three the
  537. second point, and so on. For the 3D routine, the user is
  538. asked whether a connected plot or circles are desired to
  539. represent the data. Also, the user specifies the desired
  540. rotation in the polar and azimuthal directions. A polar
  541. rotation of 0 degrees would be looking directly down at the
  542. data from the north pole. A 90 degree polar rotation would
  543. place the line of view directly at the equator. A rotation
  544. in the azimuthal direction would be like a walk around the
  545. equator. Try an initial polar rotation of 65 degrees and an
  546. azimuthal rotation of about 35 degrees.
  547.