Sunteți pe pagina 1din 18

What Is MATLAB?

MATLAB is a high-performance language for technical computing. It integrates computation, visualization, and programming in an easy-to-use environment where problems and solutions are expressed in familiar mathematical notation. Typical uses include:

Math and computation Algorithm development Modeling, simulation, and prototyping Data analysis, exploration, and visualization Scientific and engineering graphics Application development, including Graphical User Interface building

MATLAB is an interactive system whose basic data element is an array that does not require dimensioning. This allows you to solve many technical computing problems, especially those with matrix and vector formulations, in a fraction of the time it would take to write a program in a scalar noninteractive language such as C or Fortran. The name MATLAB stands for matrix laboratory. MATLAB was originally written to provide easy access to matrix software developed by the LINPACK and EISPACK projects, which together represent the state-of-the-art in software for matrix computation. MATLAB has evolved over a period of years with input from many users. In university environments, it is the standard instructional tool for introductory and advanced courses in mathematics, engineering, and science. In industry, MATLAB is the tool of choice for highproductivity research, development, and analysis. MATLAB features a family of application-specific solutions called toolboxes. Very important to most users of MATLAB, toolboxes allow you to learn and apply specialized technology. Toolboxes are comprehensive collections of MATLAB functions (M-files) that extend the MATLAB environment to solve particular classes of problems. Areas in which toolboxes are available include signal processing, control systems, neural networks, fuzzy logic, wavelets, simulation, and many others.

The MATLAB System


The MATLAB system consists of five main parts: The MATLAB language. This is a high-level matrix/array language with control flow statements, functions, data structures, input/output, and object-oriented programming features. It allows both "programming in the small" to rapidly create quick and dirty throw-away programs, and "programming in the large" to create complete large and complex application programs.

The MATLAB working environment. This is the set of tools and facilities that you work with as the MATLAB user or programmer. It includes facilities for managing the variables in your workspace and importing and exporting data. It also includes tools for developing, managing, debugging, and profiling M-files, MATLAB's applications. Handle Graphics. This is the MATLAB graphics system. It includes high-level commands for two-dimensional and three-dimensional data visualization, image processing, animation, and presentation graphics. It also includes low-level commands that allow you to fully customize the appearance of graphics as well as to build complete Graphical User Interfaces on your MATLAB applications. The MATLAB mathematical function library. This is a vast collection of computational algorithms ranging from elementary functions like sum, sine, cosine, and complex arithmetic, to more sophisticated functions like matrix inverse, matrix eigenvalues, Bessel functions, and fast Fourier transforms. The MATLAB Application Program Interface (API). This is a library that allows you to write C and Fortran programs that interact with MATLAB. It include facilities for calling routines from MATLAB (dynamic linking), calling MATLAB as a computational engine, and for reading and writing MAT-files.

Matllab tool boxes:


ADCPtools - acoustic doppler current profiler data processing.

AFDesign - designing analog and digital filters AIRES - automatic integration of reusable embedded software Air Sea - air-sea flux estimates in oceanography Animation - developing scientific animations. ARfit - estimation of parameters and eigenmodes of multivariate autoregressive methods ARMASA - power spectrum estimation AR-Toolkit - computer vision tracking Auditory - auditory models b4m - interval arithmetic Bayes Net - inference and learning for directed graphical models Binaural Modeling - calculating binaural cross-correlograms of sound Bode Step - design of control systems with maximized feedback Bootstrap - for resampling, hypothesis testing and confidence interval estimation

BrainStorm - MEG and EEG data visualization and processing BSTEX - equation viewer CALFEM - interactive program for teaching the finite element method Calibr - for calibrating CCD cameras Camera Calibration Captain - non-stationary time series analysis and forecasting CHMMBOX - for coupled hidden Markov modeling using maximum likelihood EM Classification - supervised and unsupervised classification algorithms CLOSID Cluster - for analysis of Gaussian mixture models for data set clustering Clustering - cluster analysis ClusterPack - cluster analysis COLEA - speech analysis CompEcon - solving problems in economics and finance Complex - for estimating temporal and spatial signal complexities Computational Statistics Coral - seismic waveform analysis DACE - kriging approximations to computer models DAIHM - data assimilation in hydrological and hydrodynamic models Data Visualization DBT - radar array processing DDE BIFTOOL - bifurcation analysis of delay differential equations Denoise - for removing noise from signals DiffMan - solving differential equations on manifolds Dimensional Analysis DIPimage - scientific image processing Direct - Laplace transform inversion via the direct integration method DirectSD - analysis and design of computer controlled systems with process-oriented models DMsuite - differentiation matrix suite DMTTEQ - design and test time domain equalizer design methods DrawFilt - drawing digital and analog filters DSFWAV - spline interpolation with Dean wave solutions DWT - discrete wavelet transforms EasyKrig EigTool - graphical tool for nonsymmetric eigenproblems EMSC - separating light scattering and absorbance by extended multiplicative signal correction

Engineering Vibration FastICA - fixed-point algorithm for ICA and projection pursuit FDC - flight dynamics and control FDtools - fractional delay filter design FlexICA - for independent components analysis FMBPC - fuzzy model-based predictive control ForWaRD - Fourier-wavelet regularized deconvolution FracLab - fractal analysis for signal processing FSBOX - stepwise forward and backward selection of features using linear regression GABLE - geometric algebra tutorial GAOT - genetic algorithm optimization Garch - estimating and diagnosing heteroskedasticity in time series models GCE Data - managing, analyzing and displaying data and metadata stored using the GCE data structure specification GCSV - growing cell structure visualization GEMANOVA - fitting multilinear ANOVA models Genetic Algorithm Geodetic - geodetic calculations GHSOM - growing hierarchical self-organizing map glmlab - general linear models GPIB - wrapper for GPIB library from National Instrument GTM - generative topographic mapping, a model for density modeling and data visualization GVF - gradient vector flow for finding 3-D object boundaries HFRadarmap - converts HF radar data from radial current vectors to total vectors HFRC - importing, processing and manipulating HF radar data Hilbert - Hilbert transform by the rational eigenfunction expansion method HMM - hidden Markov models HMMBOX - for hidden Markov modeling using maximum likelihood EM HUTear - auditory modeling ICALAB - signal and image processing using ICA and higher order statistics Imputation - analysis of incomplete datasets IPEM - perception based musical analysis JMatLink - Matlab Java classes Kalman - Bayesian Kalman filter Kalman Filter - filtering, smoothing and parameter estimation (using EM) for linear dynamical systems KALMTOOL - state estimation of nonlinear systems Kautz - Kautz filter design Kriging LDestimate - estimation of scaling exponents LDPC - low density parity check codes LHS - Latin Hypercube Sampling, an efficient Monte Carlo method LISQ - wavelet lifting scheme on quincunx grids LKER - Laguerre kernel estimation tool

LMAM OLMAM - Levenberg Marquardt with Adaptive Momentum algorithm for training feedforward neural networks Low-Field NMR - for exponential fitting, phase correction of quadrature data and slicing LPSVM - Newton method for LP support vector machine for machine learning problems LSDPTOOL - robust control system design using the loop shaping design procedure LS -SVMlab LSVM - Lagrangian support vector machine for machine learning problems Lyngby - functional neuroimaging MARBOX - for multivariate autogressive modeling and cross-spectral estimation MatArray - analysis of microarray data Matrix Computation - constructing test matrices, computing matrix factorizations, visualizing matrices, and direct search optimization MCAT - Monte Carlo analysis MDP - Markov decision processes MESHPART - graph and mesh partioning methods MILES - maximum likelihood fitting using ordinary least squares algorithms MIMO - multidimensional code synthesis Missing - functions for handling missing data values M_Map - geographic mapping tools MODCONS - multi-objective control system design MOEA - multi-objective evolutionary algorithms MS - estimation of multiscaling exponents Multiblock - analysis and regression on several data blocks simultaneously Multiscale Shap Analysis Music Analysis - feature extraction from raw audio signals for content-based music retrieval MWM - multifractal wavelet model NetCDF Netlab - neural network algorithms NiDAQ - data acquisition using the NiDAQ library NEDM - nonlinear economic dynamic models NMM - numerical methods in Matlab text NNCTRL - design and simulation of control systems based on neural networks NNSYSID - neural net based identification of nonlinear dynamic systems NSVM - newton support vector machine for solving machine learning problems NURBS - non-uniform rational B-splines N-way - analysis of multiway data with multilinear models OpenFEM - finite element development PCNN - pulse coupled neural networks Peruna - signal processing and analysis PhiVis - probabilistic hierarchical interactive visualization, i.e. functions for visual analysis of multivariate continuous data Planar Manipulator - simulation of n-DOF planar manipulators PRTools - pattern recognition psignifit - testing hyptheses about psychometric functions PSVM - proximal support vector machine for solving machine learning problems

Psychophysics - vision research PyrTools - multi-scale image processing RBF - radial basis function neural networks RBN - simulation of synchronous and asynchronous random boolean networks ReBEL - sigma-point Kalman filters Restore Tools Robot - robotics functions, e.g. kinematics, dynamics and trajectory generation Robust Calibration - robust calibration in stats RRMT - rainfall-runoff modelling SAM - structure and motion Schwarz-Christoffel - computation of conformal maps to polygonally bounded regions SDH - smoothed data histogram SeaGrid - orthogonal grid maker SEA-MAT - oceanographic analysis SLS - sparse least squares SolvOpt - solver for local optimization problems SOM - self-organizing map SOSTOOLS - solving sums of squares (SOS) optimization problems Spatial and Geometric Analysis Spatial Regression Spatial Statistics Spectral Methods SPM - statistical parametric mapping SSVM - smooth support vector machine for solving machine learning problems STATBAG - for linear regression, feature selection, generation of data, and significance testing StatBox - statistical routines Statistical Pattern Recognition - pattern recognition methods Stixbox - statistics SVM - implements support vector machines SVM Classifier Symbolic RoboDynamics TEMPLAR - wavelet-based template learning and pattern classification TextClust - model-based document clustering TextureSynth - analyzing and synthesizing visual textures TfMin - continous 3-D minimum time orbit transfer around Earth Time-Frequency - analyzing non-stationary signals using time-frequency distributions Tree-Ring - tasks in tree-ring analysis TSA - uni- and multivariate, stationary and non-stationary time series analysis TSTOOL - nonlinear time series analysis T_Tide - harmonic analysis of tides UTVtools - computing and modifying rank-revealing URV and UTV decompositions Uvi Wave - wavelet analysis varimax - orthogonal rotation of EOFs VBHMM - variation Bayesian hidden Markov models VBMFA - variational Bayesian mixtures of factor analyzers

VMT - VRML Molecule Toolbox, for animating results from molecular dynamics experiments VOICEBOX VRMLplot - generates interactive VRML 2.0 graphs and animations VSVtools - computing and modifying symmetric rank-revealing decompositions WAFO - wave analysis for fatique and oceanography WarpTB - frequency-warped signal processing WAVEKIT - wavelet analysis WaveLab - wavelet analysis Weeks - Laplace transform inversion via the Weeks method WetCDF - NetCDF interface WHMT - wavelet-domain hidden Markov tree models WInHD - Wavelet-based inverse halftoning via deconvolution WSCT - weighted sequences clustering toolkit XMLTree - XML parser YAADA - analyze single particle mass spectrum data ZMAP - quantitative seismicity analysis

Advantages:
Matlab is an interpreted language for numerical computation. It allows one to perform numerical calculations, and visualize the results without the need for complicated and time consuming programming. Matlab allows its users to accurately solve problems, produce graphics easily and produce code effeciently.

Disadvantage
Matlab is an interpreted language. The main disadvantage of interpreted languages is execution speed. When a language is compiled, all of the code is analyzed and processed efficiently, before the programmer distributes the application. With an interpreted language, the computer running the program has to analyze and interpret the code (through the interpreter) before it can be executed (each and every time), resulting in slower processing performance.

Applications

Data Exploration ,Acquisition ,Analyzing &Visualization Engg drawing and Scientific graphics Analyzing of algorithmic designing and development Mathematical functions and Computational functions Simulating problems prototyping and modeling

1. Title: to generate sine waveform


Code: >> x=-2*pi:pi/20:2*pi; >> y=sin(x); >> plot(x,y); >> title(`plot of sin(x) vs x'); >> grid on;

2. Title: to generate cosine waveform


Code: >> x=0:pi/20:2*pi; >> y=cos(x); >> plot(x,y); >> title('plot of cos(x) vs x'); >> grid on;

3. Title: tan waveform


Code: >> x=-2*pi:pi/20:2*pi; >> y=tan(x); >> plot(x,y); >> title('plot of tan(x) vs x'); >> grid on;

4. Object: To find the roots of quadratic equation


s^6+s^5+4s^4-19s^3+4s^2+50s^1-20

>> roots([1 1 4 -19 4 50 -20]) ans = -1.4942 + 2.9302i -1.4942 - 2.9302i -1.4866 1.5324 + 0.8268i 0.4102 - 0.8268i 0.4102

5. OBJECT: To design a 2*2 &3*4 matrixes


>> a=[1 2;3 4] a= 1 3 2 4

>> a=[1 2 3 4;5 6 7 8;10 11 12 13] a= 1 10 2 6 3 7 4 8

10 11 12 13

5. OBJECT: to design an identity matrix of 4*4 & 8*8


>> eye(4) ans = 1 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0

>> eye(8) ans = 1 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1

6. Object: to find the diagonals of a 3*4 matrix


>> a=[1 2 3 4;5 6 7 8;10 11 12 13] a= 1 5 2 6 3 7 4 8

10 11 12 13 >> diag(a) ans = 1 6 12 >> diag(a)' ans = 1 6 12

>> rand(4) ans = 0.8147 0.6324 0.9575 0.9572 0.9058 0.0975 0.9649 0.4854

0.1270 0.2785 0.1576 0.8003 0.9134 0.5469 0.9706 0.1419 >> round(a) ans = 1 5 2 6 3 7 4 8

10 11 12 13 >> c= rand(5) c= 0.4218 0.0357 0.7431 0.0318 0.6948 0.9157 0.8491 0.3922 0.2769 0.3171 0.7922 0.9340 0.6555 0.0462 0.9502 0.9595 0.6787 0.1712 0.0971 0.0344 0.6557 0.7577 0.7060 0.8235 0.4387 >> round(c) ans = 0 1 1 0 1 1 1 0 1 0 0 0 1 0 1

1 1

1 1

0 1

0 1

0 0

>> a=[1 3 5;3 4 6]

a=

1 3

3 4

5 6

>> b=[5 7 11;6 8 12]

b= 5 6 >> c=a.*b c= 5 21 55 18 32 72 >> a=[1 2;2 4] a= 7 11 8 12

1 2

2 4

>> b=[5 6;7 8] b= 5 7 >> c=a.*b c= 5 12 14 32 6 8

>> >> a=[1 2 3 4;5 6 7 8;9 10 11 12;13 14 15 16] a= 1 5 2 6 3 7 4 8

9 10 11 12 13 14 15 16 >> a(3:4,2:4)

ans = 10 11 12 14 15 16 >> a(:,5)=a(:,1) a= 1 5 2 6 3 7 4 8 1 5 9

9 10 11 12

13 14 15 16 13

>> x=0:pi/100:pi; >> y1=sin(x); >> y2=sin(3*x); >> plot(x,y1,'b-',x,y2,'r--'); >> legend('sin(x)','sin(3*x)') >> gridon

S-ar putea să vă placă și