Skip to content
MathWorks - Mobile View
  • Sign In to Your MathWorks AccountSign In to Your MathWorks Account
  • Access your MathWorks Account
    • My Account
    • My Community Profile
    • Link License
    • Sign Out
  • Products
  • Solutions
  • Academia
  • Support
  • Community
  • Events
  • Get MATLAB
MathWorks
  • Products
  • Solutions
  • Academia
  • Support
  • Community
  • Events
  • Get MATLAB
  • Sign In to Your MathWorks AccountSign In to Your MathWorks Account
  • Access your MathWorks Account
    • My Account
    • My Community Profile
    • Link License
    • Sign Out

Videos and Webinars

  • MathWorks
  • Videos
  • Videos Home
  • Search
  • Videos Home
  • Search
  • Contact sales
  • Trial software
4:32 Video length is 4:32.
  • Description
  • Full Transcript
  • Related Resources

Programming and Developing Algorithms with MATLAB

Write programs and develop algorithms using the high-level language and development tools in MATLAB®.

MATLAB provides a high-level language and development tools that let you quickly write MATLAB programs, develop and analyze algorithms, and build applications. MATLAB is a matrix-based language. It natively supports vector and matrix operations that are fundamental to engineering and scientific problems.

For example, you can operate on all of the elements in a matrix with a single command without having to write a for loop. As a result, one line of MATLAB code often replaces several lines of C or C++ code.

MATLAB provides features of traditional programming languages, including flow control, such as while and for loops; error handling, such as try catch blocks which allow us to execute statements and catch the resulting errors; and object-oriented programming. Here you can see a class defined in MATLAB together with its properties and methods.

The MATLAB environment is well suited for algorithm design and exploration. In this example, we're developing an algorithm to identify the center of a hurricane. Because MATLAB is a high-level language there's no need to perform low-level administrative tasks, such as declaring variables, specifying data types, and allocating memory.

Using the Command window, you can execute commands one at a time, providing you with immediate results. This interactive approach makes it easy to quickly explore multiple options and iterate to an optimal solution.

You can create a MATLAB script or function from the commands you've already entered. This makes it easy to reuse and automate your work. MATLAB provides built-in algorithms for signal processing and communications, image and video processing, control systems, and many other domains. Here, we're using a function from Image Processing Toolbox™ to identify and measure properties of connected regions in an image.

MATLAB provides development tools that help you implement your algorithms efficiently and optimize their performance. The MATLAB editor is where you create and edit programs. The editor provides debugging features. You can set breakpoints, examine variable values, and step through individual lines of code.

The Code Analyzer automatically checks code in the MATLAB editor for problems. When you hover over underlined code fragments, the Code Analyzer provides an explanation of the problem and suggestions on how to fix it. The MATLAB Profiler measures the overall performance of MATLAB programs and identifies areas of code to focus on for improvement. The Profile Summary report gives information about the functions called, including the time each function took to run, how many times each function was called, and which lines of code took the most processing time.

You can integrate your MATLAB applications with those written in other languages, such as C, C++, Java, and .NET. Here we have C code for a 2D Gaussian function. This code was compiled into a MEX function, or MATLAB executable, and can be called directly from within MATLAB. Similarly, you can call MATLAB code directly from your C, C++, or FORTRAN applications.

MATLAB uses processor-optimized libraries for fast execution of matrix and vector computations. Many linear algebra and numerical functions are multi-threaded, allowing them to run faster on multicore computers. You can use the high-level constructs found in the parallel computing products to parallelize your applications with only minor code changes. This allows you to take further advantage of multicore desktops and other resources, such as GPUs and clusters. With MATLAB you can easily transform your ideas into algorithms and complex applications.

For more information about MATLAB, see the product page or watch one of the other videos.

Related Products

  • MATLAB

3 Ways to Speed Up Model Predictive Controllers

Read white paper

A Practical Guide to Deep Learning: From Data to Deployment

Read ebook

Bridging Wireless Communications Design and Testing with MATLAB

Read white paper

Deep Learning and Traditional Machine Learning: Choosing the Right Approach

Read ebook

Hardware-in-the-Loop Testing for Power Electronics Control Design

Read white paper

Predictive Maintenance with MATLAB

Read ebook

Electric Vehicle Modeling and Simulation - Architecture to Deployment : Webinar Series

Register for Free

How much do you know about power conversion control?

Start quiz

Feedback

Featured Product

MATLAB

  • Request Trial
  • Get Pricing

Up Next:

32:43
Developing Algorithms for ADAS Systems with MATLAB and...

Related Videos:

48:12
Object-Oriented Programming in MATLAB
27:32
Fostering Independent Learning and MATLAB Programming...
1:40
Industrial Robot Programming with MATLAB and Simulink
1:02:06
What's New for Object-Oriented Programming in MATLAB

View more related videos

MathWorks - Domain Selector

Select a Web Site

Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .

  • Switzerland (English)
  • Switzerland (Deutsch)
  • Switzerland (Français)
  • 中国 (简体中文)
  • 中国 (English)

You can also select a web site from the following list:

How to Get Best Site Performance

Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.

Americas

  • América Latina (Español)
  • Canada (English)
  • United States (English)

Europe

  • Belgium (English)
  • Denmark (English)
  • Deutschland (Deutsch)
  • España (Español)
  • Finland (English)
  • France (Français)
  • Ireland (English)
  • Italia (Italiano)
  • Luxembourg (English)
  • Netherlands (English)
  • Norway (English)
  • Österreich (Deutsch)
  • Portugal (English)
  • Sweden (English)
  • Switzerland
    • Deutsch
    • English
    • Français
  • United Kingdom (English)

Asia Pacific

  • Australia (English)
  • India (English)
  • New Zealand (English)
  • 中国
    • 简体中文Chinese
    • English
  • 日本Japanese (日本語)
  • 한국Korean (한국어)

Contact your local office

  • Contact sales
  • Trial software

MathWorks

Accelerating the pace of engineering and science

MathWorks is the leading developer of mathematical computing software for engineers and scientists.

Discover…

Explore Products

  • MATLAB
  • Simulink
  • Student Software
  • Hardware Support
  • File Exchange

Try or Buy

  • Downloads
  • Trial Software
  • Contact Sales
  • Pricing and Licensing
  • How to Buy

Learn to Use

  • Documentation
  • Tutorials
  • Examples
  • Videos and Webinars
  • Training

Get Support

  • Installation Help
  • MATLAB Answers
  • Consulting
  • License Center
  • Contact Support

About MathWorks

  • Careers
  • Newsroom
  • Social Mission
  • Customer Stories
  • About MathWorks
  • Select a Web Site United States
  • Trust Center
  • Trademarks
  • Privacy Policy
  • Preventing Piracy
  • Application Status

© 1994-2022 The MathWorks, Inc.

  • Facebook
  • Twitter
  • Instagram
  • YouTube
  • LinkedIn
  • RSS

Join the conversation