matlab



matlab

matlab

MATLAB

MATLAB 6.5 being used to manipulate a bitmap image.
Maintainer: The MathWorks
Latest release: R2006b / September 1, 2006
OS: Cross-platform (list)
Use: Technical computing
License: Proprietary
Website: MATLAB product page

MATLAB is a numerical computing environment and programming language. Created by The MathWorks, MATLAB allows easy matrix manipulation, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs in other languages. Although it specializes in numerical computing, an optional toolbox interfaces with the Maple symbolic engine, making it a full computer algebra system. It is used by more than one million people in industry and academia. Generally speaking, MATLAB is intended for "perform[ing] computationally intensive tasks faster than with traditional programming languages such as C, C++, and Fortran." [1] A North American individual commercial license costs US$1900 (MATLAB only), while a license for student use costs US$99 (MATLAB, Simulink and Symbolic Math). [2]

Contents

  • 1 History
  • 2 Syntax
    • 2.1 Variables
    • 2.2 Vectors/Matrices
    • 2.3 Semicolon
  • 3 Code Snippets
  • 4 Criticism
  • 5 See also
  • 6 References
  • 7 External links

History

Short for "MATrix LABoratory", MATLAB was invented in the late 1970s by Cleve Moler, then chairman of the computer science department at the University of New Mexico. He designed it to give his students access to LINPACK and EISPACK without having to learn Fortran. It soon spread to other universities and found a strong audience within the applied mathematics community. Jack Little, an engineer, was exposed to it during a visit Moler made to Stanford University in 1983. Recognizing its commercial potential, he joined with Moler and Steve Bangert. They rewrote MATLAB in C and founded The MathWorks in 1984 to continue its development. These rewritten libraries were lovingly known as JACKPAC. MATLAB was first adopted by control design engineers, Little's specialty, but quickly spread to many other domains. It is now also used in education, in particular the teaching of linear algebra and numerical analysis, and is the de facto choice for scientists involved with image processing.

Syntax

MATLAB's M-code (or simply M) is primarily value oriented. Unlike languages such as Java and C++, M is not statically typed, meaning that variables themselves do not have types, only the runtime values stored in those variables have types, as in PHP or Javascript.

Variables

Variables are defined with the assignment operator, '='. For instance:

x = 17

defines a variable named x, and assigns it a value of 17. Values can come from literal values such as string constants or numeric immediates, or from the values of other variables, or from the output of a function.

Vectors/Matrices

MATLAB is the "Matrix Laboratory", and so provides many convenient ways for creating arrays of various dimensions. In the MATLAB vernacular, a vector refers to a one dimensional (1×N or N×1) matrix, commonly referred to as an array in other programming languages. a matrix generally refers to a multi-dimensional matrix, that is, a matrix with more than one dimension, for instance, an N×M, an N×M×L, etc., where N, M, and L are greater than 1. In other languages, such a matrix might be referred to as an array of arrays, or array of array of arrays, etc.

MATLAB provides a simple way to define simple arrays using the syntax: init:increment:terminator. For instance:

array = 1:2:9
array = 
        1 3 5 7 9

defines a variable named array (or assigns a new value to an existing variable with the name array) which is an array consisting of the values 1, 3, 5, 7, and 9. That is, the array starts at 1, the init value, and each value increments from the previous value by 2 (the increment value), and stops once it reaches but not exceeding 9 (9 being the value of the terminator).

array = 1:3:9
array = 
        1 4 7

the increment value can actually be left out of this syntax (along with one of the colons), to use a default value of 1.

ari = 1:5
ari = 
      1 2 3 4 5 

assigns to the variable named ari an array with the values 1, 2, 3, 4, and 5, since the default value of 1 is used as the incrementer.

Semicolon

The semicolon (';') has somewhat unexpected use in m; it is not required to terminate commands as in Java, C++ and others. Nor is it a clause separator, as in Engish. Instead, the semicolon is included to prevent the output of the line from being echoed to the standard out, which is what happens if you don't include the semicolon at the end of the line.

Code Snippets

This code, excerpted from the function magic.m, creates a magic square M for odd values of n.

[J,I] = meshgrid(1:n);
A = mod(I+J-(n+3)/2,n);
B = mod(I+2*J-2,n);
M = n*A + B + 1;

Note that this code performs operations on vectors and matrices without the use of "for" loops. Idiomatic MATLAB programs usually operate on whole arrays at a time. The MESHGRID utility function above creates arrays like these:

J =

     1     2     3
     1     2     3
     1     2     3

I =

     1     1     1
     2     2     2
     3     3     3

Most scalar functions can also be used on arrays, and will apply themselves in parallel to each element. Thus mod(2*J,n) will (scalar) multiply the entire J array with 2, before reducing each element modulo n.

MATLAB does include standard "for" and "while" loops, but using MATLAB's vectorized notation often produces code that is easier to read and faster to execute.

Criticism

MATLAB is a proprietary product of The MathWorks, so users are subject to vendor lock-in.

The language shows a mixed heritage with a sometimes erratic syntax. For example, MATLAB uses parentheses, e.g. y = f(x), for both indexing into an array and calling a function. Although this ambiguous syntax can facilitate a switch between a procedure and a lookup table, both of which correspond to mathematical functions, a very careful reading of the code is required to establish the original intent.

Though other datatypes are available, the default is a matrix of doubles. This array of numbers is devoid of important attributes required by real world data such as engineering units or sampling rates. Although time and date markers were added in R14SP3 with the time series object, the lack of sample rate information is a serious shortcoming for signal processing applications, where data is typically sampled at a constant interval. These attributes must be managed by the user with custom programming, which is error-prone and time-consuming.

Array indexing is one-based, which is inconvenient for expressing many mathematical ideas, especially those related to digital signal processing. For instance, the DFT (or FFT) are defined with the DC component in bin #1 instead of bin #0 which is contrary to the standard definition of the DFT. In addition, this one-based indexing is hard wired into MATLAB, making it impossible for any user to define their own zero-based or negative indexed arrays to concisely model an idea needing non-positive indices.

MATLAB doesn't support references, which makes it very difficult to implement data structures which contain indirections, such as open hash tables, linked lists, trees, and various other common computer science data structures. In addition, it makes the use of objects cumbersome, because every change in the object creates a new object instead of changing the current one ("this" or "self" is Copy-On-Write). The only way to change an object property is to "overwrite" the old object by the new object that was created after the property change, like this:

  obj = do_something(obj);

instead of the more common idioms in other languages:

  obj.do_something();

Despite these shortcomings, MATLAB continues to be employed in many technical computing applications, though several viable competitors are emerging.

See also

  • For a list of programs similar to MATLAB, see the list of numerical analysis software.
  • Toolboxes and other add-ons:
    • Simulink
    • Stateflow

References

  1. ^ MathWorks, MATLAB® - The Language of Technical Computing, accessed 17 August 2006.
  2. ^ MathWorks, The MathWorks - Online Store - Buy MATLAB, Simulink and other products, accessed 27 September 2006.

External links

Wikibooks Programming has more about this subject:
MATLAB
  • The MATLAB product page at The MathWorks
  • MATLAB Central the MATLAB user community
  • The MATLAB category at the Open Directory Project
  • Additional information about the history of and inspiration for MATLAB, written by Cleve Moler
  • comp.soft-sys.matlab
  • Share MATLAB code snippets online
  • MATLAB Syntax Colorizer
  • MATLAB at literateprograms.org
Search Term: "MATLAB"
matlab news and matlab articles

Here's our top rated matlab links for the day:

The Mathworks Introduces Interactive Parallel Application Development for MATLAB 

LinuxElectrons - Nov 13 8:23 PM
NATICK , Mass. – The MathWorks has introduced Distributed Computing Toolbox 3, which represents a major breakthrough for parallel algorithm development by enabling engineers and scientists to prototype and develop parallel algorithms in MATLAB® interactively and without the need to program message passing.

The Mathworks Introduces Interactive Parallel Application Development for MATLAB 
[Press Release] Business Wire via Yahoo! Finance - Nov 13 5:00 AM
NATICK, Mass.----The MathWorks today introduced Distributed Computing Toolbox 3, which represents a major breakthrough for parallel algorithm development by enabling engineers and scientists to prototype and develop parallel algorithms in MATLAB® interactively and without the need to program message passing.

Bio-IT Briefs 
Bio-IT World - Nov 15 1:33 AM
November 15, 2006 | " The Case for Personalized Medicine ," a comprehensive review assessing the state of personalized medicine and the evidence that it will become an integral part of the healthcare system, was presented Tuesday by Edward Abrahams, executive director of the Personalized Medicine Coalition , at the 2nd Annual Burrill Personalized Medicine Meeting in San Francisco.

Thank you for viewing the matlab page matlab torrent. 

metlab

 

Ever wondered what others are searching for in relation to matlab? Now you can see.  Below is a listing of  what everyone else is searching for in regard to matlab.

1. matlab torrent
2. matlab
3. adaboost.m2 matlab
4. matlab tutorial
5. solving ode with matlab
6. matlab software
7. matlab download
8. matlab help
9. free matlab
10. matlab free
11. lagrange interpolation polynomial matlab
12. matlab signal processing toolbox
13. software related to matlab
14. version demo de matlab
15. wavelet network matlab
16. matlab dynamic system first order
17. matlab routh
18. basic 3d plotting for matlab
19. digital signal processing using matlab solution manual
20. use matlab to plot global maxima and minima
21. box matlab processing signal tool
22. computer based exercises for signal processing using matlab
23. digital signal processing with matlab
24. image processing with matlab
25. toolbox matlab
26. math software matlab
27. arma moving average andnot matlab mathematica
28. matlab 64
29. matlab animation toolbox
30. matlab scrip en labview 7
31. set up matlab agilent 54622a
32. tutorial matlab download
33. antenna and em modeling with matlab
34. digital image restoration + matlab codes
35. matlab license for sale
36. matlab read binary example
37. matlab satellite simulations
38. matlab silent install
39. matlab student version
40. signal processing matlab
41. subplot and num2str and matlab
42. design digital butterworth filter using matlab
43. free download matlab software
44. generating gold code matlab
45. matlab signal processing tool box free
46. matlab training
47. reading and plotting binary data matlab
48. satellite simulators and matlab
49. applications of matlab in signal processing
50. digital signal processing with examples in matlab
51. eval and matlab
52. finding the global maxima and minima on a plot in matlab
53. free matlab software
54. fuzzy + matlab
55. geometric random variable matlab code
56. make a matlab scrip executable
57. matlab free download
58. matlab image processing ppt
59. matlab r2006
60. matlab satellite communications
61. matlab signal processing
62. matlab torrent linux
63. matlab tutorial ecg signal processing
64. pure pursuit matlab
65. digital filter design using matlab
66. download matlab service pack 1
67. educational math free matlab software
68. excel dates into matlab
69. fundamentals of digital signal processing using matlab with
70. image process with matlab
71. image processing matlab quantification enhancement
72. java matlab tutorial
73. matlab 13 service pack 1
74. matlab and matlab signal processing toolbox
75. matlab dted error
76. matlab for mimo
77. matlab kvl ac
78. matlab moving average filter using loop
79. matlab tomography
80. matlab tutorial for signal processing
81. power supply compensation matlab
82. psychoacoustic model 1, matlab codes
83. cdma channel optimization in matlab
84. connecting matlab agilent 54622a
85. digital signal processing using matlab
86. download matlab
87. free download of matlab software
88. image compression matlab
89. matlab 6 0 full free download
90. matlab agilent 54622a
91. matlab code for text independent speaker recognition
92. matlab convert avi wmv
93. matlab download warez
94. matlab for doa estimation
95. matlab for esprit algorithm
96. matlab gauss - seidel sample
97. matlab m file
98. matlab mode s
99. matlab pid
100. matlab price
101. matlab program for car audio
102. matlab program for ldpc codes
103. matlab r2006b
104. mode s, matlab codes
105. model laser matlab
106. molecular dynamics matlab
107. paint grid matlab
108. simple matlab trajectory animation
109. slps matlab
110. use matlab fft function for spectral analysis
111. 1up science links directory math software matlab
112. advantages of matlab
113. automatic control digital matlab tutorial
114. buy matlab
115. channel assignment implementation in matlab
116. cvar code matlab
117. digital image processing + pdf + matlab + lecture
118. ecuaciones con coeficientes constantes en matlab
119. electric circuit in matlab
120. graphical user interface implementation on matlab neural
121. gui matlab code
122. image enhancement matlab measurement statistic
123. image matlab processing signal toolboxes
124. image processing matlab optimisation optimization
125. laser scattering matlab equations
126. learning matlab graphical user interface
127. load cell simulation in matlab
128. matlab 6 download version
129. matlab add legend bode plot
130. matlab agilent 54622a programing
131. matlab code square wave
132. matlab control systems
133. matlab files
134. matlab fractal koch
135. matlab gps waypoint editor
136. matlab gui
137. matlab legend subplot
138. matlab m files
139. matlab octave writing midi
140. matlab program project
141. matlab programming
142. matlab read binary example16 bit
143. matlab revenue
144. matlab script mark w. brown
145. matlab size linprog
146. matlab sound effect
147. matlab text recognition
148. matlab trial version
149. matlab user interface
150. matlab vehicle animation
151. matlab visualizacion grafica
152. matlab xpc multiple processor
153. plot cos function in matlab
154. plot ellipse matlab
155. plot in matlab
156. powergui in matlab
157. read data using matlab
158. sample time in matlab
159. simulation transition resonance vibration matlab
160. spectrogram matlab
161. spectrogram matlab kaeferstein
162. subplot and eval and matlab
163. subplot and matlab
164. the eight-point algorithm example matlab
165. voice recognition using matlab
166. waypoint follow matlab
167. 2's complement sign extended value matlab
168. add picture matlab graphic user interface
169. arcgis matlab gmt
170. area of intersection matlab
171. audio signal processing in matlab
172. calculation lagrange multiplier matlab contact force
173. clearing values in a gui in matlab
174. code matlab
175. colored waterfall plot matlab
176. computational statistics handbook with matlab ebook
177. coordinate path tracking matlab
178. criterio di routh matlab
179. demodulation- matlab code
180. digital image processing + pdf + matlab + report + teach
181. digital signal processing proakis matlab
182. digital signal processing project tone decoder in matlab
183. download matlab software
184. engineering analysis in matlab
185. enlazar visual basic net y matlab
186. equations with constant coefficients in matlab
187. facs optical flow matlab
188. flexlm matlab license crack
189. free digital filters signal processing with matlab exercises
190. free download matlab 6 1
191. free source code for image enhancement in matlab
192. how to start a turbo codec project in matlab
193. interfacing mapobjects and visual basic and matlab
194. interpolation of data for matlab fft
195. j2000 true-of-date conversion matlab
196. lattice matlab
197. matlab & voice activated & motor
198. matlab .edu
199. matlab 2006a serial
200. matlab 3-level laser
201. matlab 5.3 download
202. matlab 7
203. matlab 7 freeware propagation model
204. matlab 7.0 version software
205. matlab bode add legend subplot
206. matlab bode legend upper subplot
207. matlab code library
208. matlab code p orbitals
209. matlab code simulated annealing
210. matlab code,psychoacoustic, audio
211. matlab codes for ofdm
212. matlab com
213. matlab dead reckoning
214. matlab example square root algorithm
215. matlab example square root example
216. matlab examples
217. matlab follow simulator
218. matlab for dsp
219. matlab for maximum-likelihood source location estimation
220. matlab ftdi
221. matlab function explained
222. matlab linux hpc
223. matlab neurolucida
224. matlab ode examples
225. matlab plane projection
226. matlab plot of a function
227. matlab plp
228. matlab programs
229. matlab r2006 download
230. matlab ray tracing tomography
231. matlab simulink jpl
232. matlab stereo investigator
233. matlab structure
234. matlab target xpc error system halt
235. matlab three-level laser
236. matlab to mathcad conversion
237. matlab tracking simulation
238. matlab trajectory animation
239. matlab trajectory path simulation
240. matlab trorent
241. matlab wavread mp3
242. matlab waypoint path following
243. matlab waypoint simulator
244. matlab xpc can synchronization
245. matlab xpc target shared memory
246. modelling of reactive distillation using matlab
247. modular analysis matlab
248. mutation genetic matlab
249. national instrument data acquisition for matlab
250. north east coordinate path tracking matlab
251. parameters matlab agilent 54622a
252. pi in matlab
253. projective geometry matlab
254. projects on mobile communications using matlab code
255. pure pursuit tracking matlab
256. python matlab
257. radar signal processing using matlab
258. shareware matlab software
259. signal matlab 16 bit eeg
260. simulation diagram for ac/dc buck boost converter in matlab
261. simulation transient vibration matlab
262. solve transcendental equation matlab
263. svm matlab
264. svmlight matlab
265. using linear interpolation in matlab
266. watermarking - matlab code
267. antenna matlab source code
268. applied numerical analysis using matlab
269. apriori matlab code
270. asset paths with jumps in matlab
271. axis in matlab
272. bilinear interpolation by matlab source code
273. binaural interaction model, psychoacoustic, matlab
274. checksum in matlab
275. circular convolution galois field matlab
276. code for calculating pi in matlab
277. communication matlab m files
278. conditional distribution functions matlab codes
279. cvar matlab
280. digital signal processing laboratory using matlab
281. dmt modulation program in matlab
282. download matlab programs for free
283. ece projects using matlab
284. ellipse intersection matlab
285. equations with non numerical coefficients in matlab
286. etter matlab syllabus
287. finding derivative through matlab s-function
288. for loops in matlab
289. free matlab sensor interfacing
290. hardy cross method matlab
291. how do i access the fuzzy logic toolkit in matlab
292. hyperbolic functions and matlab
293. ibm thinkpad iseries 1400 matlab
294. ica lab for signal processing matlab
295. image post-processing matlab optimization evaluation
296. image processing matlab
297. implementing convolution encoder using matlab
298. integration in matlab
299. intersection 2 ellipses matlab
300. j2000 ephemeris conversion matlab
301. making a scientific calculator gui in matlab
302. mathematical explorations with matlab torrent
303. matlab 5.0 free
304. matlab 6.0 download
305. matlab and fpga
306. matlab animation
307. matlab as a research atool
308. matlab chapter 1 solutions
309. matlab code for doa
310. matlab code square root
311. matlab code, overlap, psychoacoustic
312. matlab demodulation
313. matlab differential equations
314. matlab dted
315. matlab dted 'half a cell offset'
316. matlab dted legend half
317. matlab evaluation copy
318. matlab for doa
319. matlab free software install
320. matlab functions
321. matlab fuzzy logic add-in
322. matlab fuzzy logic toolkit
323. matlab handle magnitude bode plot
324. matlab hydrology
325. matlab iso
326. matlab jaxb
327. matlab lab using neural network
328. matlab laser graph
329. matlab legend bode problem
330. matlab level laser
331. matlab lithography
332. matlab mcc windows executable
333. matlab mechanical vibration analysis
334. matlab modulation transfer function sound
335. matlab moving average filter sample
336. matlab neural
337. matlab optimization m files
338. matlab pid iteration
339. matlab plp r2006a
340. matlab programms for analog communications
341. matlab ray tracing
342. matlab reading midi
343. matlab resize large images
344. matlab simulink
345. matlab software price
346. matlab solve simultaneous equations non-linear first order
347. matlab speech hmm many utterances
348. matlab technical analysis
349. matlab tiff
350. matlab tutorials
351. matlab xpc boot compact flash
352. matlab xpc target scramnet
353. open excel from matlab
354. pure pursuit matlab tracking
355. reliability of matlab
356. samples of matlab code for demodulation
357. science math software matlab
358. short matlab tutorial
359. sidelobe level matlab program for yagi antenna
360. signal matlab 16 bit
361. simple pop push function matlab
362. simulation transient vinration matlab
363. sistemas lineales en matlab
364. ss7 matlab modelling
365. type 2 compensation analysis matlab
366. using fuzzy logic in matlab
367. using matlab code for speech processing pitch
368. using matlab graphics
369. variations with repetition matlab
370. voice recognition code matlab
371. volume intersection matlab
372. water leakage & fft & matlab
373. win32com matlab
374. yagi antenna design in matlab
375. 3-level laser cavity matlab q-switch
376. 3-level laser matlab q-switch
377. 3d projection matlab
378. about matlab
379. abstraction facilities of matlab
380. abstraction of matlab
381. autocorrelation matlab
382. automatic image registration using matlab
383. basic matlab tutorials
384. beamforming matlab code simulation
385. bilinear transformation matlab
386. binary reader matlab
387. buck matlab
388. c++ compiler for matlab
389. cd learn matlab
390. cdma using matlab
391. centroid calculations in matlab
392. channels for mimo matlab
393. circle with matlab
394. clockwise data matlab polygons
395. codificador voz matlab
396. codigo fuente en matlab
397. cokrigeage with matlab
398. communications using matlab
399. components of speed to vector matlab
400. computer network simulation using matlab
401. condicion de fejer en matlab
402. control no lineal   matlab
403. control precision of double matlab
404. create excel worksheets from matlab
405. creating animation using matlab
406. curve fitting matlab
407. data analysis in matlab
408. degraph, matlab
409. delta de heaviside en matlab
410. deplot, matlab
411. descartes rule of signs in matlab
412. design audio equalizer using iir filters in matlab
413. design mems in matlab
414. different colormaps on one plot matlab
415. digital image processing + pdf + matlab
416. digital image processing + pdf + matlab + lecture notes
417. digital image processing + pdf + matlab + report
418. discrete convolution using for loop in matlab code
419. dmt in matlab
420. error concealment source code matlab
421. euler 12-3 transformation find angle rotating matlab code
422. euler's constant, matlab
423. example code for bisection method using matlab
424. excel text into matlab
425. factor polynomial matlab
426. fillmiss, matlab
427. finding derivative through matlab s-funcction
428. form table using matlab
429. free download matlab latest version
430. functions in matlab
431. funnel algorithm matlab
432. fuzzy controller for uav landing in matlab
433. fuzzy logic controller on matlab
434. fzero in matlab
435. geometric center of triangle matlab
436. global matlab
437. gui scatterplot matlab
438. hashtable matlab
439. heath computer problems scientific computing matlab
440. how to add a picture to matlab graphic user interface
441. how to design a turbo codec project in matlab
442. how to use matlab
443. incremental adc matlab
444. introduction to matlab
445. kalman-levy filter matlab
446. la fucion suma efectua suamtoria de terminos en matlab
447. log scale plot graph matlab 3d
448. lpc digital signal processing matlab toobox user s guide
449. m files matlab examples
450. m-files in matlab
451. mathworks matlab r2006a
452. matlab & voice activated program
453. matlab & xsl
454. matlab + mathworks
455. matlab 14