Você está na página 1de 6

The Language of Technical Computing

MATLAB® is a high-level language and


interactive environment for numerical com- Key Features
putation, visualization, and programming.
Using MATLAB, you can analyze data, • High-level language for numerical • Built-in graphics for visualizing data
computation, visualization, and ap- and tools for creating custom plots
develop algorithms, and create models and
plication development
applications. The language, tools, and built- • Development tools for improving
in math functions enable you to explore • Interactive environment for iterative code quality and maintainability
multiple approaches and reach a solution exploration, design, and problem and maximizing performance
faster than with spreadsheets or traditional solving
• Tools for building applications with
programming languages, such as C/C++ or • Mathematical functions for linear custom graphical interfaces
Java™. algebra, statistics, Fourier analysis,
• Functions for integrating MATLAB
filtering, optimization, numerical
You can use MATLAB for a range of appli- based algorithms with external ap-
integration, and solving ordinary
cations, including signal processing and plications and languages such as C,
differential equations
communications, image and video process- Java, .NET, and Microsoft ® Excel®
ing, control systems, test and measurement,
computational finance, and computational
biology. More than a million engineers and
scientists in industry and academia use
MATLAB, the language of technical
computing.

MATLAB Overview 2:04

Analyzing and visualizing data using the MATLAB


desktop. The MATLAB environment also lets you write
programs and develop algorithms and applications.
Numeric Computation
MATLAB provides a range of numerical
computation methods for analyzing data,
developing algorithms, and creating
models. The MATLAB language includes
mathematical functions that support
common engineering and science opera-
tions. Core math functions use processor-
optimized libraries to provide fast
execution of vector and matrix
calculations.
Available methods include:
• Interpolation and regression
• Differentiation and integration
• Linear systems of equations Refinement of gridded data using 2-D cubic interpolation.
• Fourier analysis
• Eigenvalues and singular values
Data Analysis and Visualization You can also document and share your
• Ordinary differential equations (ODEs)
results through plots and reports or as
• Sparse matrices MATLAB provides tools to acquire, ana-
published MATLAB code.
lyze, and visualize data, enabling you to
MATLAB add-on products provide func-
gain insight into your data in a fraction of Acquiring Data
tions in specialized areas such as statistics,
the time it would take using spreadsheets
optimization, signal analysis, and machine MATLAB lets you access data from files,
or traditional programming languages.
learning. other applications, databases, and external
devices. You can read data from popular
file formats such as Microsoft Excel; text
or binary files; image, sound, and video
files; and scientific files such as netCDF
and HDF. File I/O functions let you work
with data files in any format.
Using MATLAB with add-on products,
you can acquire data from hardware
devices, such as your computer’s serial port
or sound card, as well as stream live, mea-
sured data directly into MATLAB for ana-
lysis and visualization. You can also
communicate with instruments such as
oscilloscopes, function generators, and
signal analyzers.

A mixed numeric and text file for import into MATLAB using the Import Tool. MATLAB automatically generates a
script or function to import the file programmatically.

mathworks.com/matlab
Fitting a surface to data Analyzing Data
with a custom model
using MATLAB and MATLAB lets you manage, filter, and pre-
Curve Fitting Toolbox.
process your data. You can perform
exploratory data analysis to uncover
trends, test assumptions, and build
descriptive models. MATLAB provides
functions for filtering and smoothing,
interpolation, convolution, and fast Fourier
transforms (FFTs). Add-on products pro-
vide capabilities for curve and surface fit-
ting, multivariate statistics, spectral
analysis, image analysis, system identifica-
tion, and other analysis tasks.

Visualizing Data

MATLAB provides built-in 2-D and 3-D


plotting functions, as well as volume visu-
Editing the title of a sur-
alization functions. You can use these
face contour plot using functions to visualize and understand data
the MATLAB interactive
and communicate results. Plots can be cus-
plotting environment.
tomized either interactively or
programmatically.
The MATLAB plot gallery provides exam-
ples of many ways to display data graphi-
cally in MATLAB. For each example, you
can view and download source code to use
in your MATLAB application.

Documenting and Sharing Results

You can share results as plots or complete


reports. MATLAB plots can be customized
to meet publication specifications and
saved to common graphical and data file
formats.
You can automatically generate a report
when you execute a MATLAB program.
The report contains your code, comments,
and program results, including plots.
Reports can be published in a variety of
formats, such as HTML, PDF, Word, or
LaTeX.

Analyzing and Visualizing Data with


MATLAB 3:26

mathworks.com/matlab
Programming and Algorithm
Development
MATLAB provides a high-level language
and development tools that let you quickly
develop and analyze algorithms and
applications.

The MATLAB Language

The MATLAB language provides native


support for the vector and matrix opera-
tions that are fundamental to solving engi-
neering and scientific problems, enabling
fast development and execution.
A communications algorithm that generates 1024 random bits, converts the vector to a transmitted signal, adds
With the MATLAB language, you can complex Gaussian noise, and plots the result in nine lines of MATLAB code.

write programs and develop algorithms


faster than with traditional languages one line of MATLAB code can often structures, or you can define custom data
because you do not need to perform low- replace several lines of C or C++ code. types.
level administrative tasks such as declaring
MATLAB provides features of traditional You can produce immediate results by
variables, specifying data types, and allo-
programming languages, including flow interactively executing commands one at a
cating memory. In many cases, the support
control, error handling, and object-orient- time. This approach lets you quickly
for vector and matrix operations elimi-
ed programming (OOP). You can use fun- explore multiple options and iterate to an
nates the need for for-loops. As a result,
damental data types or advanced data optimal solution. You can capture interac-
tive steps as scripts and functions to reuse
and automate your work.
MATLAB program
(left) published as MATLAB add-on products provide built-
HTML (right) using the in algorithms for signal processing and
MATLAB Editor. Results
that display in the communications, image and video pro-
Command Window or cessing, control systems, and many other
as plots are captured
and included, and domains. By combining these algorithms
the code comments with your own, you can build complex
are turned into section
headings and body programs and applications.
text in the HTML.

mathworks.com/matlab
Development Tools

MATLAB includes a variety of tools for


efficient algorithm development,
including:
Command Window – Lets you interactive-
ly enter data, execute commands and pro-
grams, and display results
MATLAB Editor – Provides editing and
debugging features, such as setting break-
points and stepping through individual
lines of code
Code Analyzer – Automatically checks
code for problems and recommends modi-
fications to maximize performance and
maintainability
MATLAB Profiler – Measures perfor- MATLAB program running in debug mode to diagnose problems.

mance of MATLAB programs and identi-


fies areas of code to modify for Performance You can take further advantage of multi-
improvement core desktop and other high-performance
MATLAB uses processor-optimized librar-
Additional tools compare code and data computing resources such as GPUs and
ies for fast execution of matrix and vector
files, and provide reports showing file clusters with add-on parallel computing
computations. For general-purpose scalar
dependencies, annotated reminders, and products. These products provide high-
computations, MATLAB uses its just-in-
code coverage. level constructs that let you parallelize
time (JIT) compilation technology to pro-
applications with only minor changes to
vide execution speeds that rival those of
Integration with Other Languages and MATLAB code.
traditional programming languages.
Applications
To take advantage of multicore and multi-
You can integrate MATLAB applications Programming and Developing
processor computers, MATLAB provides
with those written in other languages. Algorithms with MATLAB 4:35
many multithreaded linear algebra and
From MATLAB, you can directly call code
numerical functions. These functions auto-
written in C, C++, Java, and .NET. Using
matically execute on multiple computa-
the MATLAB engine library, you can call
tional threads in a single MATLAB
MATLAB code from C, C++, or Fortran
session, enabling them to execute faster on
applications.
multicore computers.

mathworks.com/matlab
Application Development and
Deployment GUIDE layout of a wind
analysis GUI (left) and
MATLAB tools and add-on products pro- the completed interface
vide a range of options to develop and (right).
deploy applications. You can share individ-
ual algorithms and applications with other
MATLAB users or deploy them royalty-
free to others who do not have MATLAB.

Designing Graphical User Interfaces

Using GUIDE (Graphical User Interface


Development Environment), you can lay out,
design, and edit custom graphical user inter-
faces. You can include common controls such
as list boxes, pull-down menus, and push
buttons, as well as MATLAB plots. Graphical MATLAB code (left)
and code generation
user interfaces can also be created program- report (right) showing
matically using MATLAB functions. generated C code.

Deploying Applications

To distribute an application directly to other


MATLAB users, you can package it as a
MATLAB app, which provides a single file
for distribution. Apps automatically install
in the MATLAB apps gallery for easy access.
To share applications with others who do
not have MATLAB, you can use applica-
tion deployment products. These add-on
products automatically generate stand- production systems, enabling you to incor- engineers for developing algorithms as com-
alone applications, shared libraries, and porate numerical analytics in web, data- ponents of larger systems. This code can be
software components for integration in C, base, and enterprise applications. used for standalone execution, for integra-
C++, Java, .NET, and Excel environments. tion with other software applications, or as
The executables and components can be Generating C Code part of an embedded application.
distributed royalty-free. You can use MATLAB Coder™ to generate
MATLAB Production Server™ lets you run standalone C code from MATLAB code.
Developing and Deploying Applications
MATLAB programs packaged with MATLAB Coder supports a subset of the 4:17
MATLAB Compiler™ within your MATLAB language typically used by design

Resources Sales Training Services


mathworks.com/contactsales mathworks.com/training
Product Details, Demos, and System
Requirements
Technical Support Third-Party Products and Services
mathworks.com/matlab
mathworks.com/support mathworks.com/connections
Trial Software
Online User Community Worldwide Contacts
mathworks.com/trialrequest
mathworks.com/matlabcentral mathworks.com/contact

© 2012 The MathWorks, Inc. MATLAB and Simulink are registered trademarks of The MathWorks, Inc. See www.mathworks.com/trademarks for a list of additional
trademarks. Other product or brand names may be trademarks or registered trademarks of their respective holders.

91199v02 09/12

Você também pode gostar