[stat633]
Provided here are some sample script files (MATLAB and R) for running them on Brazos. Each example contains two files: one the actual matlab/r script and the other, a TORQUE script that manages the execution on the cluster. Read the brazos documentation for more details about the cluster, its resources, and usage.
- serial job - generate samples from the posterior distribution - normal distrbution in this case - under a simple setting
- eg1.m (MATLAB file) and runEg1M.pbs (TORQUE scheduling wrapper). To run eg1.m, copy these two files in a new directory stat633 (of course, you can change these option in the .pbs file) and execute the following command on the brazos head node -
qsub runEg1M.pbs
- eg1.R (R-file) and runEg1R.pbs (TORQUE scheduling wrapper). To run eg1.R, follow the same procedure as above
- embarassingly parallel job
- eg2.m (MATLAB file) implements a simple parallel tempering algorithm to sample from a three component mixture of bivariate normal distributios with well separated modes. Local moves in a chain are performed in parallel and moves across the states (temperatures) are perfomred sequentially (as they require communication among the states). This algorithm demonstrates the use of parallelization - achieve speed and improve mixing in the context of MCMC.
- eg2.R (R file) implements eg1.R but uses the snow package and REvolution computing's doSNOW and foreach packages. While this algorithm is not optimized or even close to being one, it only demonstrates their usage
- compiled MATLAB
- occasionally you can run into trouble when using MATLAB due to lincesing issues. If your program is emabarrasingly parallelizable, then you can simply compile the MATLAB code into a stand-alone executable and run it as many times as you want and on as many nodes as you want, all this WIHOUT needing MATLAB. The following zip folder has few example and a intro document describing them. Get it [now]
- distributed job - under testing
Note: To take advantage of the parallel computing environment, you need parallel computing toolbox (and distributed computing server) for MATLAB. You can use Rmpi, snow, doSNOW, doRMPI, foreach packages in R.
Download all the files [here]
[EE]&dagger
- Time-frequency modeling using the EM algorithm: It models a time-frequency distribution of a signal under analysis as a Gaussian Mixture. The parameters are estimated by the EM algorithm. Time-frequency regions are indicated by the individual densities which in turn are used to synthesize corresponding time-domain signal by means of time-frequency projection filters. Later, regionally optimized-kernel time-frequency distributions are applied on the synthesized signal. Download the zip file from here. This suit is developed by Dr. Mark J Coates while he was at thesignal processing group, Univ. of Cambridge working on his Ph.D thesis. I am thankful to him for letting me distribute it for educational purposes. It has many interesting small subroutines like:
- arc-cosine distance between two normal densities
- functional merging
- time-frequency projection filters (by W. Kozek)
- regionally-optimized kernel design (richb et al)
Note: You needtime-frequency toolbox (which is also free for non-commercial use)! All the software comes with no warranty and you may distribute the code for non-profit/ non-commercial purposes and duely acknowledge the authors whereever necessary. Otherwise, the copyrights are with the respective authors.
     [here]
- Numerical Integration using Gauss-Hermite quadrature if the kernel is normal: Download the zip file from
     [here]
- Visualize a bi-variate normal density: It plots the ellipse centered around the mean with minor and major axis aligned along the eigen-vectors of the covariance matrix and their lengths proportional to the corresponding eigen-values. Get the m-file from here
     [here]
- Integrate MATLAB with R andwinBUGS: example code is given to connect to R from MATLAB and also to export data, perform MCMC analysis using winBUGS and import the data back to MATLAB environment for further analysis. Download the zip file fromhere
     [here]
- M-ary PSK: (generation, detection and BER performance)
Implements: generation, modulation and detection of a M-ary PSK Digital Modulation technique. Obtains BER performance at different SNRs. Prof. Wangs implementation of this is very succinct and crisp as compared to mine.
     [here]
- Modulation using Instantaneous Frequency: (for even number of symbols) It tries to use Instantaneous Frequency as the modulation method as against phase or frequency or amplitude or pulse position etc.. The basic waveform chosen, can, in fact, model any such modulation (please see corresponding document inrecords section). You need "Discrete TFDs" suit that can be downloaded frommathtools
     [here]
- Spectral estimation: (Capon's, Periodogram, Min-Norm, MUSIC, and frequency estimation using ESPIRIT and root-MUSIC algorithms)
Simulates different number of complex exponentials in complex white additive Guassian noise. Different classical spectral estimation techniques like Periodogram, Capon's, Minimum Norm, MUSIC are implemented. The frequencies of the sinusoids are estimated using root-MUSIC and ESPIRIT methods.
     [here]
- Wavelet Packet Pruning: (using Coding-Gain as the tree-pruning criteria)
An algorithm for pruning a completely grown wavelet-tree is implemented. However, coding-gain (defined as the ratio of arithmeic mean of the subband variances to that of geometric mean) is used to merge the nodes of the tree. Pruning based on this coding-gain and entrpoy (MATLAB) can be compared (please see corresponding document in records section). Several variations are possible like top-down approach, a hybrid approach (which appear to be obvious tree managing methods).
     [here]
- Time-recursive implementation of time-frequency representations (Wigner-Ville and Short-time Fourier transform)
This MATLAB suite implements time-recursive algorithms for time-frequency distribution. Some of these algorithms are outcome of my research at Master's level at IIT- Madras. Any bugs, please report them tosoma@ieee.org
- wvd.m: main function for computing Wigner-Ville distribution (WVD)
- rw_wvd.m: main function for computing running-windowed WVD
- outer_matrix.m: computes instantaneous auto-correlation matrix (IACF)
- rearr_outer_matrix.m:computes a re-arranged IACF
- stft.m:recursive impementation of short-time Fourier transform
&dagger phased-out