## Introducing MATLAB, its advantages and disadvantages

# The Matlab programming platform is a platform for engineers, scientists, and science activists. The beating heart of this platform is the MATLAB programming language, which is a matrix-based language that is naturally for mathematical calculations.

The MATLAB programming language actually derives its name from the combination of the word Matrix Laboratory. In fact, the MATLAB programming language was written during the LINPACK and EISPACK projects to provide easy access to matrix software development.

## Applications of MATLAB programming language

In general, users of these domains, using the Matlab programming language, can do things like the following:

- Data analysis
- Development of algorithms
- Create models and applications

The MATLAB programming language, platform, and application, as well as its math functions, all go hand in hand so that users can find engineered solutions to problems they face in math, science, and science. And provide logic. In fact, Matlab programming language allows its users to present the results of their studies and research in the form of applications based on the structure of mathematics and logic to their work community. These applications can be in the form of software or applications or in the form of a device designed to be available to others.

### Who uses Matlab programming language?

Millions of mathematicians, engineers, and scientists around the world use MATLAB in the industrial or academic field. You can use MATLAB for a huge range of applications. Applications such as:

- deep learning

- machine learning
- Signal and communication processing
- Image and video processing
- System control
- Testing and measuring
- Financial calculations and biological calculations

### More familiarity with MATLAB programming language

The MATLAB programming language is in the category of high-level programming languages and, so it is for technical calculations. In fact, this programming language integrates mathematical calculations, intuitive and visual data, as well as the programming structure in a way that provides a simple environment for users to use.

An environment where users can easily review and conclude their problems and solutions. So if we want to go into more detail about all the basic things that can be done with the Matlab programming language, we need to provide a more detailed list as follows:

- All matters related to mathematics and numerical calculations
- All matters related to the development of algorithms and data
- Types of modeling, simulation, and prototyping
- Data analysis, visualization, and exploration matters
- Graphics of specialized sciences and engineering
- Application development and things like UI design

The Matlab programming language is essentially a communication system. So It elements and data are arrays that do not require dimensioning. This type of structure allows users to explore the most difficult math and logic topics in the easiest way possible and provide practical solutions.

Especially mathematical problems that involve matrices and vector formulas. Therefore, using this programming language allows users to write a program with non-interactive numeric time such as C or Fortran in a fraction of the time.

### MATLAB evolving

Over the years of using MATLAB programming language by countless users worldwide, this programming language has been able to grow and evolve in its current form.

Matlab programming language and its platform is a highly professional, standard, and approved tool for use in advanced academic courses in prestigious universities around the world. Also in the industry, the position of this programming language in the fields of mathematics, specialized sciences, and computing has become a professional and proven position.

MATLAB platform provides its users with a complete set of features and efficient tools in this field. So This set of tools, called toolboxes, allows users to learn and use special and advanced technologies.

In fact, toolboxes are a comprehensive collection of functions in Matlab. Areas in which toolboxes can operate include the following:

- signal processing
- Control systems
- Neural Networks
- Fuzzy Logic
- Visual cases

### Familiarity with MATLAB system

In general, what is called a MATLAB system includes the following:

- Matlab content is actually a large library of internal functions that support mathematical operations such as filtering, optimization, Fourier analysis, linear algebra, statistics, numerical integrals, and differential equations.
- MATLAB work environment, which is a platform space, tools and facilities for working with MATLAB are collected and available. In fact, entering information, outputting it, programming and working on problems and issues that we intend to provide solutions to, finding bugs and debugging processes, and many of these things happen in this environment. They fall.
- Handle graphics, which is basically the same Matlab graphics system. Commands or commands of the high-level programming language for 2D and 3D visual design, image and video processing, animation, and other issues related to the field of graphics fall into this category. Low-level commands are also available for tasks such as UI design.
- MATLAB also supports developers with support for iterative environments, iterative exploration, problem identification, and design.
- Matlab functional mathematical library, which contains all the main and secondary operations in the world of mathematics to perform all kinds of calculations. Operations such as addition, multiplication, division, subtraction, percentage, fraction, square root, belonging to the world of trigonometries such as sine, cosine, and many other things that we need to solve mathematical problems.
- The API, or Matlab Application Program Interface, is essentially a library that allows users to write programs in C and Fortran. Programs that have the ability to interact with MATLAB.

### Advantages and disadvantages of this programming language

According to the user experience published by Matlab contacts and users in Internet groups and IT magazines, some of the most obvious advantages and disadvantages of this programming language and its platform are as follows.

#### Advantages of Matlab programming language:

1- MATLAB is a very easy system for users to use.

2- You can access any of the other programming languages using MATLAB.

3- MATLAB supports GPU.

4- MATLAB is a high-level fourth-generation programming language.

5- There are many different toolboxes for use in the MATLAB system.

6-Unlike C and C ++ languages, which require a compiler to run, MATLAB itself is a standalone compiler whose code will be executed one by one.

7- MATLAB rich and internal language library has neural network, power system, communication, fuzzy logic, hydraulic mechanics, Simulink simulation tool, electromagnet, and electricity. Therefore, it is possible to develop and implement any scientific simulation with these tools. Of course, you can control the mentioned tools using internal codes, thus preventing any manual intervention in the simulated model.

8-Data can also be in variables using very simple commands; These commands can be easily used by storing numbers in a vector or matrix when no duplicate loops are needed.

9- MATLAB provides a lot of communication for its users. So many math and logic questions of users can be easy and very quick to answer.

#### And More…

10- Matlab has very convenient and significant support for its users.

11- Matlab UI and the graphic system is a suitable and valuable appearance and system among the programming languages available in this course.

12-MATLAB Compiler is a powerful compiler for converting written programs to machine language and P-code.

13- MATLAB also allows developers to use the graphical user interface (GUI) through add functions and dropbox capabilities. The proper functions of a code are automatically generated from the program using a graphical user interface. In addition, it is very easy to compile the code where the program is compiled so that it can be run on any other system…

14- This system has rich and powerful commands to work on all kinds of images.

15-The MatLab language also provides developers with many toolboxes and functions. That will be very helpful in solving the problems of CFD equations, fluid flow, and heat transfer.

16-The interactive REPL programming environment (reading, evaluation, print, and loop) for mathematical calculations and data visualization in it.

17-To analyze previous data, developers can import and export data from a text or Excel file and export (Export) using a single command. It also allows programmers to save data in an Excel or .mat file.

18- Its language supports functions written by the user and allows programmers to save them in separate files. This will prevent re-coding and wasting time.

19-The length of the code in it is similar (or shorter) to the C and C ++ languages, and for this reason, it will also support the loop.

20-Complex mathematical calculations such as adding and multiplying matrices can be with a single code.

### Disadvantages of this programming language:

1- One of the most obvious disadvantages of it is that it is in the category of interpretive programming languages. Hence it may be that the programming language is compiled slightly slower at runtime than the programming languages.

2- The cost of preparing the original version and FULL-PACK of it along with benefiting from advantages such as support and other monetary facilities for the system is high.

3- Very poor programming methods in this language also cause it to be too slow.

4- To use this, users must purchase each of its modules separately. In addition, the cost of using this language license is very high.

5- It is not able to deploy installation files when installing an application.

6- It is for scientific research and will not be suitable for user-specific development activities.

7- Cross-compilation or dual translation of code in other languages is very difficult and identifying existing errors will require a high level of knowledge and expertise in this language.